ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

820_AUTOSAR_TPS_BSWModuleDescriptionTemplate16_标定对于快速原型的支持

2021-09-22 22:32:22  阅读:173  来源: 互联网

标签:RTE AUTOSAR BSWModuleDescriptionTemplate16 访问 TPS 缓冲区 原型 McDataInstance 数据


       全部学习汇总: GitHub - GreyZhang/hack_autosar: learning autosar documents, aha, very hard!

       继续学习AUTOSAR的文档,看一下《AUTOSAR_TPS_BSWModuleDescriptionTemplate》。

       10.5 用于快速原型的 McSupportData

       AUTOSAR 元模型支持软件系统的描述,其中包括应用软件组件的快速原型场景。 这种描述的高级部分是在元类 RapidPrototypingScenario 的帮助下完成的,有关文档,请参见 [6]。

       到目前为止,快速原型的这种“高级”描述不是 BSMWDT 的主题。然而,一些用于快速原型设计的特殊解决方案需要直接访问 RTE 内部数据缓冲区,这些缓冲区用于保存软件组件之间通信的数据:

       • 快速原型设计实现(可以在外部 ECU 上运行或作为复杂驱动程序运行在相同的 ECU) 可以直接访问RTE 数据缓冲区,其访问方式与从MCD 系统中访问的方式类似(例如,通过XCP 驱动程序)

       • 快速原型设计功能可以嵌入到RTE 本身中。 在这种情况下,需要外部数据访问来监控数据以及在特定数据访问点的 RTE 的“原型设计”和“原始”行为之间切换。

       小结:这部分在之前看其他文档的时候也有涉及。

       为了配置根据上述解决方案工作的快速原型系统,必须以与 MCD 访问类似的方式向外部工具提供有关 RTE 内部数据缓冲区的一些知识。 因此,McSupportData 下面的元类也用于此目的。 这些用例需要对这些元类进行一些扩展。

       用于快速原型设计的 McDataInstance 的详细信息

       特别是对于具有隐式通信的 RunnableEntity 的原型设计,通常需要访问多个 RTE 内部缓冲区,并且需要描述哪种数据访问以及与每个缓冲区关联的 RTE 事件。

       可以通过设置 McDataInstance.mcDataAccessDetails 中的引用来提供(例如生成)此信息。 这些引用的基础应该是 ECU 提取,RTE 实现也属于 McSupportData 所指的(另请参见下面的约束)。

       除此之外,属性 McDataInstance.role 可用于添加有关此数据实例的特定角色的更多信息。注意这个属性的内容没有标准化。

       McDataAccessDetails 指的是一个 ECU提取

       在一个给定的 McDataAccessDetails 中,作为任何 McDataAccessDetails.roleMcDataAccessDetails 的基础或作为任何 McDataAccessDetails.roleMcDataAccessDetails 的基础引用的所有 System 实例都应相同且属于 ECU_EXTRACT。

       表格给出了MC数据访问的一些细节信息。

       该元类允许将有关 RTE 使用数据缓冲区的详细信息附加到相应的 McDataInstance。

       用例:直接内存访问 RTE 内部缓冲区以进行快速原型设计。 在隐式通信的情况下,需要识别与 RTE 事件和可变访问点相关的各种任务本地缓冲区。

       需要注意,SwComponentPrototype、RunnableEntity 和 VariableDataPrototype 是隐式给出的 RTEEvent 和 VariableAccess 的引用实例。

       McDataInstances 之间的关系

       在 RTE 中嵌入快速原型的情况下,需要多个相互关联的 McDataInstance。 例如,可能有一个缓冲区保存“原始”数据,一个缓冲区保存来自原型实现的“替换”数据,以及一个保存“开关”的数据实例,用于在正常功能和替换功能之间进行切换。

       元类 RoleBasedMcDataAssignment 提供了正式表达此类关联 RTE 数据之间的关系并将它们用作配置外部软件的输入的可能性。需要注意,此时元模型是相当通用的,以允许项目特定的用例。 因此,属性 RoleBasedMcDataAssignment.role 的值没有标准化,除了一个:      • 该属性的值 mainInstance 应用于表征与表示此数据缓冲区主要实例的特定 McDataInstance 的关系 - 即通常情况下 在 MCD 系统中显示。

       小结:这个里面介绍到的开关数据应该是一个什么使用场景呢?

       这个元类允许定义指定单个 McDataInstances 之间逻辑关系的链接。 关于此类链接的存在和语义的细节没有标准化。

       可能的用例:快速原型解决方案,其中在 RTE 中实现了额外的通信缓冲区和开关,允许在原始缓冲区和旁路缓冲区的使用之间进行切换。不同的缓冲区和开关可以用相互关联的 McDataInstances(为了被 MC 工具访问)表示。

       在 McSupportData 的不同用例之间拆分

       需要注意的是,McSupportData 对 McDataInstance 的聚合是可拆分的。 这允许将 MCD 用例和快速原型用例的数据描述保存在单独的工件中,并在不同的时间点生成它们。

       这样,关于测量与标定功能相关的模板部分的内容就看完了。这部分涉及到的一些信息我工作中接触过,因此这里看得细致点,原本也是希望从这种有点熟悉的地方打开一个缺口能够深入进去。整个基础软件描述模板部分,内容还是很多的。原来计划直接跳过,现在看来还是慢慢看看好一些。

标签:RTE,AUTOSAR,BSWModuleDescriptionTemplate16,访问,TPS,缓冲区,原型,McDataInstance,数据
来源: https://blog.csdn.net/grey_csdn/article/details/120424402

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有