配置AUTOSAR运行的执行顺序
AUTOSAR经典平台包含多个可运行的软件组件,AUTOSAR时间扩展规范定义了执行顺序约束。这些约束指定的执行顺序运行的实体在一个组件。您可以查看和操作组件级别的限制,或者在AUTOSAR架构模型,在虚拟函数总线(VFB)水平。
在仿真金宝app软件®,您可以:
进口组件,VFB-level ARXML文件的执行顺序约束。
打开一个AUTOSAR组件或体系结构模型和使用时间表编辑器来修改可运行的执行顺序。
出口组件——和VFB-level执行顺序约束ARXML文件。
组件模型,更新执行顺序约束通过导入ARXML变化。
AUTOSAR的软件组件模型,使用时间表编辑器执行顺序的安排并指定属于该组件的可运行。时间表编辑器显示分区模型,它们之间的数据连接,这些分区的顺序。AUTOSAR组件模型,分区对应于运行的实体,独立执行。在编辑器中,您可以:
查看图形表示分区的可运行一个AUTOSAR组件。
创建分区并将它们映射到AUTOSAR可运行。
直接指定可运行的执行顺序。
时间表编辑器支持多种建模方式,包括率和导金宝app出功能建模。有关更多信息,请参见使用时间表编辑器和创建分区。您还可以使用AUTOSAR的时间表编辑器体系结构建模。看到配置AUTOSAR调度与仿真。
在一个独立的AUTOSAR组件模型,打开时间表编辑器,打开建模选项卡并选择时间表编辑器。AUTOSAR的可运行的组件模型,最初时间表编辑器显示隐含分区,创建基于组件建模风格。您可以查看和配置或创建显式隐式分区分区并将它们映射到新的或现有的AUTOSAR可运行。
查看和配置隐含分区:
开放AUTOSAR示例模型
autosar_swc_expfcns
,它使用AUTOSAR r金宝appunnable模型导出的函数模型。openExample (“autosar_swc_expfcns”);
打开建模选项卡并选择时间表编辑器。时间表编辑器显示定期导出函数,映射到AUTOSAR runnable,隐式分区。
使用编辑器控件重新排序的分区。例如,在订单部分,单击箭头或拖动表条目。
以AUTOSAR软件组件创建一个明确的分区:
在AUTOSAR示例模型
mAutosarMultitasking.slx
周期可运行,有多个样本率建模。最初,从一个时间表编辑器的角度来看,模型包含隐式分区D1、D2、D3、D4。
创建一个分区,打开块魔法石,第1章子系统参数对话框。与治疗作为原子单元选择,设置参数计划是来
周期性的分区
。指定分区名称,如P1和样本时间1。点击应用。更新模型图。打开建模选项卡并选择时间表编辑器。时间表编辑器显示明确的周期分区模型中。
在模型窗口,打开代码映射编辑器并选择功能选项卡。P1的配分函数映射到一个AUTOSAR可运行。
如果配置不包含地图的AUTOSAR runnable,添加一个可运行。打开AUTOSAR字典,可运行视图,并单击添加按钮。对于这个示例,创建可运行
Runnable_P1
。然后选择可运行和创建一个定时事件。在功能选项卡,P1到地图
Runnable_P1
。
构建一个AUTOSAR模型包含执行顺序限制出口组件计时信息。如果你设置AUTOSAR字典XML选项导出的XML文件的包装来模块化
,时间信息导出到文件中
。这个ARXML代码显示了运行的执行顺序限制出口modelname
_timing.arxmlmAutosarMultitasking
根据时间表编辑器配置。
< SWC-TIMING UUID = "……" > <字>mAutosarMultitasking<EXECUTION-ORDER-CONSTRAINTUUID = "……" > <字>转换端< /字> < ORDERED-ELEMENTS > < EOC-EXECUTABLE-ENTITY-REF UUID =“……”> <字>Runnable_Step< /字> < EXECUTABLE-REF DEST = " RUNNABLE-ENTITY " > / pkg swc / mAutosarMultitasking / IB / Runnable_Step < / EXECUTABLE-REF > < SUCCESSOR-REFS > < SUCCESSOR-REF DEST = " EOC-EXECUTABLE-ENTITY-REF " > /时间/ mAutosarMultitasking /转换端/ Runnable_P1 < / SUCCESSOR-REF > < / SUCCESSOR-REFS > < / EOC-EXECUTABLE-ENTITY-REF > < EOC-EXECUTABLE-ENTITY-REF UUID = "……" > <字>Runnable_P1< /字> < EXECUTABLE-REF DEST = " RUNNABLE-ENTITY " > / pkg swc / mAutosarMultitasking / IB / Runnable_P1 < / EXECUTABLE-REF > < SUCCESSOR-REFS > < SUCCESSOR-REF DEST = " EOC-EXECUTABLE-ENTITY-REF " > /时间/ mAutosarMultitasking /转换端/ Runnable_Step1 < / SUCCESSOR-REF > < / SUCCESSOR-REFS > < / EOC-EXECUTABLE-ENTITY-REF > < EOC-EXECUTABLE-ENTITY-REF UUID = "……" > <字>Runnable_Step1< /字> < EXECUTABLE-REF DEST = " RUNNABLE-ENTITY " > / pkg swc / mAutosarMultitasking / IB / Runnable_Step1 < / EXECUTABLE-REF > < SUCCESSOR-REFS > < SUCCESSOR-REF DEST = " EOC-EXECUTABLE-ENTITY-REF " > /时间/ mAutosarMultitasking /转换端/ Runnable_Step2 < / SUCCESSOR-REF > < / SUCCESSOR-REFS > < / EOC-EXECUTABLE-ENTITY-REF > < EOC-EXECUTABLE-ENTITY-REF UUID = "……" > <字>Runnable_Step2< /字> < EXECUTABLE-REF DEST = " RUNNABLE-ENTITY " > / pkg swc / mAutosarMultitasking / IB / Runnable_Step2 < / EXECUTABLE-REF > < SUCCESSOR-REFS > < SUCCESSOR-REF DEST = " EOC-EXECUTABLE-ENTITY-REF " > /时间/ mAutosarMultitasking /转换端/ Runnable_Step3 < / SUCCESSOR-REF > < / SUCCESSOR-REFS > < / EOC-EXECUTABLE-ENTITY-REF > < EOC-EXECUTABLE-ENTITY-REF UUID = "……" > <字>Runnable_Step3< /字> < EXECUTABLE-REF DEST = " RUNNABLE-ENTITY " > / pkg swc / mAutosarMultitasking / IB / Runnable_Step3 < / EXECUTABLE-REF > < / EOC-EXECUTABLE-ENTITY-REF > < / ORDERED-ELEMENTS > < / EXECUTION-ORDER-CONSTRAINT > < /定时要求> < BEHAVIOR-REF DEST = " SWC-INTERNAL-BEHAVIOR " > / pkg swc mAutosarMultitasking / IB < / BEHAVIOR-REF > < / SWC-TIMING >