听闻少年二字,当与平庸相斥。这篇文章主要讲述803_AUTOSAR_TR_GeneralBlueprintsSupplement1_概述以及可视化表达1相关的知识,希望能为你提供帮助。
全部学习汇总: ??GitHub - GreyZhang/hack_autosar: learning autosar documents, aha, very hard!??
继续学习AUTOSAR的文档,近期看这文档看得我有点脑子凌乱,几乎脑仁疼。这一次,看看《AUTOSAR_TR_GeneralBlueprintsSupplement》。
文章图片
1 简介
本技术报告提供了现有蓝图的附加信息。
文章图片
这是目前蓝图包含的信息。
【803_AUTOSAR_TR_GeneralBlueprintsSupplement1_概述以及可视化表达1】
文章图片
2.1 AUTOSAR_MOD_BSWServiceInterfaces_Blueprint
AUTOSAR_MOD_BSWServiceInterfaces_Blueprint 为各种BSW 模块提供了标准化AUTOSAR 接口的蓝图规范,其中包括DataConstrs、CompuMethods、ImplementationDataTypes、ClientServerInterfaces、SenderReceiverInterfaces、ServiceSwComponentTypes 等。 在这些蓝图中,还使用了 BlueprintPolicy。在 [1] 中给出了 BlueprintPolicy 的详细描述。ARXML 文件是基于 BSW UML 模型生成的。
2.2 AUTOSAR_MOD_BswModuleEntrys_Blueprint
AUTOSAR_MOD_BswModuleEntrys_Blueprint 基于[2]提供BswModuleDescriptions 和BswModuleEntrys 的蓝图。
2.3 AUTOSAR_MOD_IFL_RecordLayout_Blueprint
AUTOSAR_MOD_IFL_RecordLayout_Blueprint 基于[3]提供InterpolationRoutineMappingSets 和SwRecordLayouts 的蓝图。
文章图片
2.4 AUTOSAR_MOD_IFX_RecordLayout_Blueprint
AUTOSAR_MOD_IFX_RecordLayout_Blueprint 基于[4]提供InterpolationRoutineMappingSets 和SwRecordLayouts 的蓝图。
2.5 AUTOSAR_MOD_Cube_RecordLayout_Blueprint
AUTOSAR_MOD_Cube_RecordLayout_Blueprint 为cuboids(啥意思?)提供 SwRecordLayouts 的蓝图。
2.6 AUTOSAR_MOD_MemoryMapping_SwAddrMethods_Blueprint
AUTOSAR_MOD_MemoryMapping_SwAddrMethods_Blueprint 提供了基于[5]的SwAddrMethods 蓝图。
2.7 AUTOSAR_MOD_SWCServiceRelatedInterfaces_Blueprint
AUTOSAR_MOD_SWCServiceRelatedInterfaces_Blueprint 提供从NVRAM 管理器的标准化AUTOSAR 接口派生的ClientServerInterfaces 的蓝图[6]。 这些 ClientServerInterfaces 用于 NvBlockSwComponentTypes,如 [7] 中所述。
2.8 AUTOSAR_TR_PredefinedNames_Blueprint
AUTOSAR_TR_PredefinedNames_Blueprint 提供了在 AUTOSAR 模型和文档中使用的各种预定义名称 [8]。 它们可用作基于 AUTOSAR XML 模型的蓝图。 在这个模型中,预定义的名称根据 [1] 表示为关键字。
文章图片
3 SwRecordLayouts 的可视化
SwRecordLayouts 的可视化遵循独特的表示。 使用的图形元素如图 3.1 所示。
文章图片
逻辑视图将最终元素表示为采样点的数量、轴元素和数据值。 数据值根据适用的维度排列。 曲线是一维可视化的(例如,一列,见图 3.7)。map在二维矩阵中可视化,见图 3.18)。
内存表示说明了值在线性内存中的存储。 如果 SwRecordLayout 还将元素定义为采样点和轴元素(蓝色矩形)的数量,则内存表示从这些开始。 随后是数据值的存储(橙色矩形)。 如果 SwRecordLayout 没有将元素定义为采样点和轴元素的数量,则内存表示从数据值的存储开始。
ARXML 表示列出了描述 SwRecordLayout 的 ARXML 文件的重要部分。
文章图片
3.1 记录布局:Distr
本章描述了分布式数据点搜索的记录布局。 这意味着这个 SwRecordLayout 只描述了采样点的数量和轴值。 它不描述任何值。 在这种情况下,多条曲线可以使用相同的轴(分布式数据点),见图 3.3。
逻辑视图:
图 3.2 说明了 SwRecordLayout Distr 的逻辑视图。Nx 表示 SwRecordLayoutV.swRecordLayoutVProp 的标准化值,并记录在 [TPS_SWCT_01489] 中。 在本示例的范围内,使用了值 COUNT。
文章图片
内存表示:
由于采样点数和轴值(此记录布局定义的内容)没有存储在内存中,没有任何曲线定义,因此没有定义内存表示。
ARXML 表示:
从 AUTOSAR_MOD_IFX_RecordLayout_Blueprint.arxml 中提取记录布局 Distr_s16。
文章图片
可以为一种分布分配不同的曲线。
对我来说,这都是工具信息,XML语言暂且不去做详细的解读。
文章图片
图 3.3是一个分配给分布逻辑视图的曲线
两条曲线都使用相同的分布 (AXIS 1),例如,由具有不同值(轴 0)、曲线值(y 值 65 和 15)的紫色虚线(x 值 25)表示。
文章图片
文章图片
这是curve的描述。
文章图片
3.2.2 记录布局:IntCur
本章描述具有集成数据点搜索的曲线的记录布局。
这意味着这个 SwRecordLayout 代表一条完整的曲线,包括采样点数、轴数和值。 它描述了曲线的所有元素。
逻辑视图:图 3.7 说明了 SwRecordLayout IntCur 的逻辑视图。Nx 表示采样点数,由 SwRecordLayoutV.swRecordLayoutVProp 的标准化值给出。 在本示例的范围内,使用了值 COUNT。 带有 shortLabel Val 的 SwRecordLayoutGroup 显示在下部。 它的元素由 [AXIS 1] 从值 (AXIS 1: = 1) 到值 (AXIS 1: = -1) 进行索引,其中 -1 给出最后一个值。
文章图片
相关的表达表述部分,不去细看。
文章图片
文章图片
3.2.3 应该是定点整形curve
本章描述了具有固定轴点的曲线的记录布局。
逻辑视图:图 3.9 说明了 SwRecordLayout FixIntCur 的逻辑视图。 此 SwRecordLayout 中未定义采样点数 (Nx)、Offset 和 shift 值。 带有 shortLabel Val 的 SwRecordLayoutGroup 显示在下部。 它的元素由虚拟 [AXIS 1] 索引,该虚拟 [AXIS 1] 是固定的且未在此 SwRecordLayout 内定义。
具体的实现表达表述不去细看。
文章图片
3.3 maps
3.3.1 索引的定义 要理解 SwRecordLayouts 的可视化,建立对所用索引的共同理解是很重要的。 线性代数和笛卡尔坐标系中的矩阵定义使用了索引。 在线性代数中,矩阵 A(m,n) 由行索引 (m) 和列索引 (n) 定义。
文章图片
这是一个二维查表的功能,解除了建模之后对此可能会有更好的熟悉度。具体的表述不去看了。
文章图片
3.3.2 在内存表示中转换逻辑视图
逻辑视图由 3.3.1 中描述的 m×n 矩阵(二维矩阵)表示。
文章图片
矩阵的每个元素由带有两个下标的索引表示 [AXIS 2, AXIS 1]。 例如,[2,3] 表示矩阵的第二行 (AXIS 2) 和第三列 (AXIS 1) 的元素。 矩阵的索引可以通过两种不同的方式转换为内存表示:
? 在线性内存中以列优先顺序存储数组值 -> COLUMN_DIR
? 在线性内存中以行优先顺序存储数组值 -> ROW_DIR
列主序,线性存储器中的多维数组被组织成列一个接一个地存储。 选择第一列 [1,1] 的第一个元素,然后在该列内所有元素将迭代到最后一个元素 [-1,1](由图 3.14 中的红色箭头指示)。 最后一个元素在 SwRecordLayout 中由“-1”定义。 之后,选择第二列 [1,2] 的第一个元素,并像第一列一样再次开始迭代。
文章图片
此清单说明了在列优先顺序的情况下的两个嵌套 FOR 循环,而外循环在 AXIS 1 上迭代,而内循环在 AXIS 2 上迭代。
文章图片
在行主序中,线性存储器中的多维数组被组织成行一个接一个地存储。 选择第一行 [1,1] 的第一个元素,然后在该行内所有元素将迭代到最后一个元素 [1,-1](由图 3.15 中的蓝色箭头指示)。 然后选择第二行 [2,1] 的第一个元素,并像第一行一样再次开始迭代。
文章图片
类似的,不再去翻译了。
关于蓝图的概述以及基础的介绍,似乎看到的更多是表达对象的一种描述方式。有点积累基础的建模元素的感觉。在嵌入式的设计上,似乎开始贴近于应用软件设计了。
推荐阅读
- 测试一下
- Oracle数据库基本操作第一章
- 国庆高质量出行,可视化开启智慧旅游
- Prometheus监控运维实战十一(Pushgateway)
- word文档如何插入公式编号并对齐
- 自动添加shell首部
- 深入浅出 BPF TCP 拥塞算法实现原理
- 如何在Woocommerce中的商店页面中显示单个产品do_action
- 如何在我的wordpress网站上显示实时访问者计数(计数更改)()