Files
arxml_sdk/spec.md
T
2026-06-08 10:17:44 +08:00

37 KiB
Raw Blame History

AUTOSAR_MOD_GeneralBlueprints 标准模板与基类规范

概述

本文档详细记录 AUTOSAR 4.4.0 Classic Platform 中 AUTOSAR_MOD_GeneralBlueprints 定义的标准化模板和基类。每个基类都提供完整的 ARXML 格式定义作为参考实现。

文档版本: 4.4.0
所属路径: MethodologyAndTemplates/AUTOSAR_MOD_GeneralBlueprints/


1. 基础数据类型 (SW-BASE-TYPE)

1.1 概述

基础数据类型位于 /AUTOSAR/Platform/BaseTypes_Blueprint/ 路径下,定义了 AUTOSAR 标准的基本数据类型。所有实现数据类型必须引用这些基类型。

1.2 标准基类型定义

1.2.1 boolean (布尔类型)

<SW-BASE-TYPE>
  <SHORT-NAME>boolean</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">boolean</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>8</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>BOOLEAN</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>
属性 说明
SHORT-NAME boolean 类型名称
CATEGORY FIXED_LENGTH 固定长度类型
BASE-TYPE-SIZE 8 位大小
BASE-TYPE-ENCODING BOOLEAN 布尔编码

1.2.2 有符号整数类型

<SW-BASE-TYPE>
  <SHORT-NAME>sint8</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">sint8</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>8</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>2C</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>

<SW-BASE-TYPE>
  <SHORT-NAME>sint16</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">sint16</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>16</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>2C</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>

<SW-BASE-TYPE>
  <SHORT-NAME>sint32</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">sint32</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>32</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>2C</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>

<SW-BASE-TYPE>
  <SHORT-NAME>sint64</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">sint64</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>64</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>2C</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>
类型 大小 编码 范围
sint8 8位 2C (二进制补码) -128 ~ 127
sint16 16位 2C -32768 ~ 32767
sint32 32位 2C -2147483648 ~ 2147483647
sint64 64位 2C -9223372036854775808 ~ 9223372036854775807

1.2.3 无符号整数类型

<SW-BASE-TYPE>
  <SHORT-NAME>uint8</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">uint8</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>8</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>NONE</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>

<SW-BASE-TYPE>
  <SHORT-NAME>uint16</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">uint16</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>16</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>NONE</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>

<SW-BASE-TYPE>
  <SHORT-NAME>uint32</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">uint32</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>32</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>NONE</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>

<SW-BASE-TYPE>
  <SHORT-NAME>uint64</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">uint64</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>64</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>NONE</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>
类型 大小 编码 范围
uint8 8位 NONE 0 ~ 255
uint16 16位 NONE 0 ~ 65535
uint32 32位 NONE 0 ~ 4294967295
uint64 64位 NONE 0 ~ 18446744073709551615

1.2.4 浮点类型

<SW-BASE-TYPE>
  <SHORT-NAME>float32</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">float32</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>32</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>IEEE754</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>

<SW-BASE-TYPE>
  <SHORT-NAME>float64</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">float64</L-4>
  </LONG-NAME>
  <CATEGORY>FIXED_LENGTH</CATEGORY>
  <BASE-TYPE-SIZE>64</BASE-TYPE-SIZE>
  <BASE-TYPE-ENCODING>IEEE754</BASE-TYPE-ENCODING>
</SW-BASE-TYPE>
类型 大小 编码 说明
float32 32位 IEEE754 单精度浮点
float64 64位 IEEE754 双精度浮点

2. 实现数据类型 (IMPLEMENTATION-DATA-TYPE)

2.1 平台数据类型

位于 /AUTOSAR/Platform/ImplementationDataTypes_Blueprint/

2.1.1 简单值类型

<IMPLEMENTATION-DATA-TYPE>
  <SHORT-NAME>uint8</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">uint8</L-4>
  </LONG-NAME>
  <CATEGORY>VALUE</CATEGORY>
  <SW-DATA-DEF-PROPS>
    <SW-DATA-DEF-PROPS-VARIANTS>
      <SW-DATA-DEF-PROPS-CONDITIONAL>
        <BASE-TYPE-REF DEST="SW-BASE-TYPE">/AUTOSAR/Platform/BaseTypes_Blueprint/uint8</BASE-TYPE-REF>
      </SW-DATA-DEF-PROPS-CONDITIONAL>
    </SW-DATA-DEF-PROPS-VARIANTS>
  </SW-DATA-DEF-PROPS>
  <TYPE-EMITTER>Platform_Types.h</TYPE-EMITTER>
</IMPLEMENTATION-DATA-TYPE>

CATEGORY 类型说明:

  • VALUE: 直接值类型
  • TYPE_REFERENCE: 类型引用(通过 SW-DATA-DEF-PROPS-CONDITIONAL 引用其他类型)
  • STRUCTURE: 结构体类型
  • DATA_REFERENCE: 数据引用

2.1.2 Std_ReturnType (标准返回类型)

<IMPLEMENTATION-DATA-TYPE>
  <SHORT-NAME>Std_ReturnType</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">Standard Return Type</L-4>
  </LONG-NAME>
  <DESC>
    <L-2 L="EN">This type can be used as standard API return type which is shared between the RTE and the BSW modules.</L-2>
  </DESC>
  <CATEGORY>TYPE_REFERENCE</CATEGORY>
  <SW-DATA-DEF-PROPS>
    <SW-DATA-DEF-PROPS-VARIANTS>
      <SW-DATA-DEF-PROPS-CONDITIONAL>
        <COMPU-METHOD-REF DEST="COMPU-METHOD">/AUTOSAR/Std/CompuMethods_Blueprint/Std_ReturnType</COMPU-METHOD-REF>
        <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR/Platform/ImplementationDataTypes_Blueprint/uint8</IMPLEMENTATION-DATA-TYPE-REF>
      </SW-DATA-DEF-PROPS-CONDITIONAL>
    </SW-DATA-DEF-PROPS-VARIANTS>
  </SW-DATA-DEF-PROPS>
  <TYPE-EMITTER>Std_Types.h</TYPE-EMITTER>
</IMPLEMENTATION-DATA-TYPE>

Std_ReturnType 关联的 COMPU-METHOD:

<COMPU-METHOD>
  <SHORT-NAME>Std_ReturnType</SHORT-NAME>
  <CATEGORY>TEXTTABLE</CATEGORY>
  <COMPU-INTERNAL-TO-PHYS>
    <COMPU-SCALES>
      <COMPU-SCALE>
        <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
        <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
        <COMPU-CONST>
          <VT>E_OK</VT>
        </COMPU-CONST>
      </COMPU-SCALE>
      <COMPU-SCALE>
        <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
        <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
        <COMPU-CONST>
          <VT>E_NOT_OK</VT>
        </COMPU-CONST>
      </COMPU-SCALE>
    </COMPU-SCALES>
  </COMPU-INTERNAL-TO-PHYS>
</COMPU-METHOD>

2.1.3 Std_VersionInfoType (版本信息类型)

<IMPLEMENTATION-DATA-TYPE>
  <SHORT-NAME>Std_VersionInfoType</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">Standard Version Info Type</L-4>
  </LONG-NAME>
  <DESC>
    <L-2 L="EN">This type shall be used to request the version of a BSW module using the &lt;Module name&gt;_GetVersionInfo() function.</L-2>
  </DESC>
  <CATEGORY>STRUCTURE</CATEGORY>
  <SUB-ELEMENTS>
    <IMPLEMENTATION-DATA-TYPE-ELEMENT>
      <SHORT-NAME>vendorID</SHORT-NAME>
      <CATEGORY>TYPE_REFERENCE</CATEGORY>
      <SW-DATA-DEF-PROPS>
        <SW-DATA-DEF-PROPS-VARIANTS>
          <SW-DATA-DEF-PROPS-CONDITIONAL>
            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR/Platform/ImplementationDataTypes_Blueprint/uint16</IMPLEMENTATION-DATA-TYPE-REF>
          </SW-DATA-DEF-PROPS-CONDITIONAL>
        </SW-DATA-DEF-PROPS-VARIANTS>
      </SW-DATA-DEF-PROPS>
    </IMPLEMENTATION-DATA-TYPE-ELEMENT>
    <IMPLEMENTATION-DATA-TYPE-ELEMENT>
      <SHORT-NAME>moduleID</SHORT-NAME>
      <CATEGORY>TYPE_REFERENCE</CATEGORY>
      <SW-DATA-DEF-PROPS>
        <SW-DATA-DEF-PROPS-VARIANTS>
          <SW-DATA-DEF-PROPS-CONDITIONAL>
            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR/Platform/ImplementationDataTypes_Blueprint/uint16</IMPLEMENTATION-DATA-TYPE-REF>
          </SW-DATA-DEF-PROPS-CONDITIONAL>
        </SW-DATA-DEF-PROPS-VARIANTS>
      </SW-DATA-DEF-PROPS>
    </IMPLEMENTATION-DATA-TYPE-ELEMENT>
    <IMPLEMENTATION-DATA-TYPE-ELEMENT>
      <SHORT-NAME>sw_major_version</SHORT-NAME>
      <CATEGORY>TYPE_REFERENCE</CATEGORY>
      <SW-DATA-DEF-PROPS>
        <SW-DATA-DEF-PROPS-VARIANTS>
          <SW-DATA-DEF-PROPS-CONDITIONAL>
            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR/Platform/ImplementationDataTypes_Blueprint/uint8</IMPLEMENTATION-DATA-TYPE-REF>
          </SW-DATA-DEF-PROPS-CONDITIONAL>
        </SW-DATA-DEF-PROPS-VARIANTS>
      </SW-DATA-DEF-PROPS>
    </IMPLEMENTATION-DATA-TYPE-ELEMENT>
    <IMPLEMENTATION-DATA-TYPE-ELEMENT>
      <SHORT-NAME>sw_minor_version</SHORT-NAME>
      <CATEGORY>TYPE_REFERENCE</CATEGORY>
      <SW-DATA-DEF-PROPS>
        <SW-DATA-DEF-PROPS-VARIANTS>
          <SW-DATA-DEF-PROPS-CONDITIONAL>
            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR/Platform/ImplementationDataTypes_Blueprint/uint8</IMPLEMENTATION-DATA-TYPE-REF>
          </SW-DATA-DEF-PROPS-CONDITIONAL>
        </SW-DATA-DEF-PROPS-VARIANTS>
      </SW-DATA-DEF-PROPS>
    </IMPLEMENTATION-DATA-TYPE-ELEMENT>
    <IMPLEMENTATION-DATA-TYPE-ELEMENT>
      <SHORT-NAME>sw_patch_version</SHORT-NAME>
      <CATEGORY>TYPE_REFERENCE</CATEGORY>
      <SW-DATA-DEF-PROPS>
        <SW-DATA-DEF-PROPS-VARIANTS>
          <SW-DATA-DEF-PROPS-CONDITIONAL>
            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR/Platform/ImplementationDataTypes_Blueprint/uint8</IMPLEMENTATION-DATA-TYPE-REF>
          </SW-DATA-DEF-PROPS-CONDITIONAL>
        </SW-DATA-DEF-PROPS-VARIANTS>
      </SW-DATA-DEF-PROPS>
    </IMPLEMENTATION-DATA-TYPE-ELEMENT>
  </SUB-ELEMENTS>
  <TYPE-EMITTER>Std_Types.h</TYPE-EMITTER>
</IMPLEMENTATION-DATA-TYPE>

3. 数据约束 (DATA-CONSTR)

3.1 概述

数据约束定义数值的有效范围,位于各模块的 DataConstrs_Blueprint 子包中。

3.2 约束结构

<DATA-CONSTR>
  <SHORT-NAME>Adc_ChannelRangeSelectType</SHORT-NAME>
  <DATA-CONSTR-RULES>
    <DATA-CONSTR-RULE>
      <INTERNAL-CONSTRS>
        <LOWER-LIMIT>0</LOWER-LIMIT>
        <UPPER-LIMIT>6</UPPER-LIMIT>
      </INTERNAL-CONSTRS>
    </DATA-CONSTR-RULE>
  </DATA-CONSTR-RULES>
</DATA-CONSTR>

3.3 带 Blueprint 值的约束

<DATA-CONSTR>
  <SHORT-NAME>NetworkHandleType</SHORT-NAME>
  <DATA-CONSTR-RULES>
    <DATA-CONSTR-RULE>
      <INTERNAL-CONSTRS>
        <LOWER-LIMIT BLUEPRINT-VALUE="min 0">undefined</LOWER-LIMIT>
        <UPPER-LIMIT BLUEPRINT-VALUE="max 255">undefined</UPPER-LIMIT>
      </INTERNAL-CONSTRS>
    </DATA-CONSTR-RULE>
  </DATA-CONSTR-RULES>
</DATA-CONSTR>

3.4 ComM 模块约束示例

<DATA-CONSTR>
  <SHORT-NAME>ComM_InhibitionStatusType</SHORT-NAME>
  <DATA-CONSTR-RULES>
    <DATA-CONSTR-RULE>
      <INTERNAL-CONSTRS>
        <LOWER-LIMIT>0x00</LOWER-LIMIT>
        <UPPER-LIMIT>0x03</UPPER-LIMIT>
      </INTERNAL-CONSTRS>
    </DATA-CONSTR-RULE>
  </DATA-CONSTR-RULES>
</DATA-CONSTR>

4. 计算方法 (COMPU-METHOD)

4.1 概述

计算方法定义内部值与物理值之间的转换关系,位于各模块的 CompuMethods_Blueprint 子包中。

4.2 TEXTTABLE 类型

<COMPU-METHOD>
  <SHORT-NAME>ComM_InhibitionStatusType</SHORT-NAME>
  <CATEGORY>BITFIELD_TEXTTABLE</CATEGORY>
  <BLUEPRINT-POLICYS>
    <BLUEPRINT-POLICY-NOT-MODIFIABLE>
      <ATTRIBUTE-NAME>COMPU-INTERNAL-TO-PHYS</ATTRIBUTE-NAME>
    </BLUEPRINT-POLICY-NOT-MODIFIABLE>
  </BLUEPRINT-POLICYS>
  <COMPU-INTERNAL-TO-PHYS>
    <COMPU-SCALES>
      <COMPU-SCALE>
        <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
        <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
        <COMPU-CONST>
          <VT>BCM_NO_INHIBITION</VT>
        </COMPU-CONST>
      </COMPU-SCALE>
      <COMPU-SCALE>
        <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
        <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
        <COMPU-CONST>
          <VT>BCM_INHIBIT_ALL</VT>
        </COMPU-CONST>
      </COMPU-SCALE>
      <COMPU-SCALE>
        <LOWER-LIMIT INTERVAL-TYPE="CLOSED">2</LOWER-LIMIT>
        <UPPER-LIMIT INTERVAL-TYPE="CLOSED">2</UPPER-LIMIT>
        <COMPU-CONST>
          <VT>BCM_INHIBIT_WAKEUP</VT>
        </COMPU-CONST>
      </COMPU-SCALE>
      <COMPU-SCALE>
        <LOWER-LIMIT INTERVAL-TYPE="CLOSED">3</LOWER-LIMIT>
        <UPPER-LIMIT INTERVAL-TYPE="CLOSED">3</UPPER-LIMIT>
        <COMPU-CONST>
          <VT>BCM_INHIBIT_BUSY</VT>
        </COMPU-CONST>
      </COMPU-SCALE>
    </COMPU-SCALES>
  </COMPU-INTERNAL-TO-PHYS>
</COMPU-METHOD>

4.3 boolean 类型的 COMPU-METHOD

<COMPU-METHOD>
  <SHORT-NAME>boolean</SHORT-NAME>
  <CATEGORY>TEXTTABLE</CATEGORY>
  <BLUEPRINT-POLICYS>
    <BLUEPRINT-POLICY-NOT-MODIFIABLE>
      <ATTRIBUTE-NAME>COMPU-INTERNAL-TO-PHYS</ATTRIBUTE-NAME>
    </BLUEPRINT-POLICY-NOT-MODIFIABLE>
  </BLUEPRINT-POLICYS>
  <COMPU-INTERNAL-TO-PHYS>
    <COMPU-SCALES>
      <COMPU-SCALE>
        <LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
        <UPPER-LIMIT INTERVAL-TYPE="CLOSED">0</UPPER-LIMIT>
        <COMPU-CONST>
          <VT>FALSE</VT>
        </COMPU-CONST>
      </COMPU-SCALE>
      <COMPU-SCALE>
        <LOWER-LIMIT INTERVAL-TYPE="CLOSED">1</LOWER-LIMIT>
        <UPPER-LIMIT INTERVAL-TYPE="CLOSED">1</UPPER-LIMIT>
        <COMPU-CONST>
          <VT>TRUE</VT>
        </COMPU-CONST>
      </COMPU-SCALE>
    </COMPU-SCALES>
  </COMPU-INTERNAL-TO-PHYS>
</COMPU-METHOD>

4.4 CATEGORY 类型说明

CATEGORY 说明 用途
TEXTTABLE 文本表 离散值的文字描述
BITFIELD_TEXTTABLE 位域文本表 按位定义的离散值
LINEAR 线性转换 物理值 = 系数 × 内部值
RAT_FUNC 有理函数 高级数学转换
IDENTICAL 恒等转换 内部值 = 物理值

5. 单位系统 (UNIT)

5.1 概述

单位定义位于 /AUTOSAR/AUTOSAR_PhysicalUnits/Units_Blueprints/

5.2 单位 ARXML 结构

<UNIT>
  <SHORT-NAME>Volt</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">Volt</L-4>
  </LONG-NAME>
  <DISPLAY-NAME>V</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Len2M1TiNeg3INeg1</PHYSICAL-DIMENSION-REF>
</UNIT>

5.3 常用单位定义

5.3.1 电气单位

<UNIT>
  <SHORT-NAME>Ampr</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Ampere</L-4></LONG-NAME>
  <DISPLAY-NAME>A</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">I1</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>Volt</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Volt</L-4></LONG-NAME>
  <DISPLAY-NAME>V</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Len2M1TiNeg3INeg1</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>Ohm</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Ohm</L-4></LONG-NAME>
  <DISPLAY-NAME>Ω</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Len2M1TiNeg3INeg2</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>Farad</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Farad</L-4></LONG-NAME>
  <DISPLAY-NAME>F</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">LenNeg2MNeg1Ti4I2</PHYSICAL-DIMENSION-REF>
</UNIT>

5.3.2 机械单位

<UNIT>
  <SHORT-NAME>Mtr</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Meter</L-4></LONG-NAME>
  <DISPLAY-NAME>m</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Len1</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>MtrPerSec</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Meter Per Second</L-4></LONG-NAME>
  <DISPLAY-NAME>m/s</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Len1TiNeg1</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>Rpm</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Revolutions Per Minute</L-4></LONG-NAME>
  <DISPLAY-NAME>rpm</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>60.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">TiNeg1_2</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>NwtMtr</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Newtonmeter</L-4></LONG-NAME>
  <DISPLAY-NAME>Nm</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Len2M1TiNeg2</PHYSICAL-DIMENSION-REF>
</UNIT>

5.3.3 时间与频率单位

<UNIT>
  <SHORT-NAME>Sec</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Second</L-4></LONG-NAME>
  <DISPLAY-NAME>s</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Ti1</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>Hz</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Hertz</L-4></LONG-NAME>
  <DISPLAY-NAME>Hz</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">TiNeg1</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>MilliSec</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Millisecond</L-4></LONG-NAME>
  <DISPLAY-NAME>ms</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1000.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Ti1</PHYSICAL-DIMENSION-REF>
</UNIT>

5.3.4 温度单位

<UNIT>
  <SHORT-NAME>DegCgrd</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Degree Celsius (Absolute Temperature)</L-4></LONG-NAME>
  <DISPLAY-NAME>°C</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>-273.15</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">T1</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>KelvinAbslt</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Kelvin (Absolute Temperature)</L-4></LONG-NAME>
  <DISPLAY-NAME>K</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">T1</PHYSICAL-DIMENSION-REF>
</UNIT>

5.3.5 功率与能量单位

<UNIT>
  <SHORT-NAME>Watt</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Watt</L-4></LONG-NAME>
  <DISPLAY-NAME>W</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Len2M1TiNeg3_1</PHYSICAL-DIMENSION-REF>
</UNIT>

<UNIT>
  <SHORT-NAME>Jou</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Joule</L-4></LONG-NAME>
  <DISPLAY-NAME>J</DISPLAY-NAME>
  <FACTOR-SI-TO-UNIT>1.0</FACTOR-SI-TO-UNIT>
  <OFFSET-SI-TO-UNIT>0.0</OFFSET-SI-TO-UNIT>
  <PHYSICAL-DIMENSION-REF BASE="PhysicalDimensions" DEST="PHYSICAL-DIMENSION">Len2M1TiNeg2_1</PHYSICAL-DIMENSION-REF>
</UNIT>

6. 物理维度 (PHYSICAL-DIMENSION)

6.1 概述

物理维度定义位于 /AUTOSAR/AUTOSAR_PhysicalUnits/PhysicalDimensions_Blueprints/

6.2 维度 ARXML 结构

<PHYSICAL-DIMENSION>
  <SHORT-NAME>Len1M1TiNeg2</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Force</L-4></LONG-NAME>
  <LENGTH-EXP>1</LENGTH-EXP>
  <MASS-EXP>1</MASS-EXP>
  <TIME-EXP>-2</TIME-EXP>
  <CURRENT-EXP>0</CURRENT-EXP>
  <TEMPERATURE-EXP>0</TEMPERATURE-EXP>
  <MOLAR-AMOUNT-EXP>0</MOLAR-AMOUNT-EXP>
  <LUMINOUS-INTENSITY-EXP>0</LUMINOUS-INTENSITY-EXP>
</PHYSICAL-DIMENSION>

6.3 标准物理维度定义

维度名称 物理意义 LEN MASS TIME CURRENT TEMP MOLAR LUM
Len1 长度 1 0 0 0 0 0 0
M1 质量 0 1 0 0 0 0 0
Ti1 时间 0 0 1 0 0 0 0
I1 电流 0 0 0 1 0 0 0
T1 绝对温度 0 0 0 0 1 0 0
Amnt1 物质的量 0 0 0 0 0 1 0
Illmn1 发光强度 0 0 0 0 0 0 1
Len1TiNeg1 速度 1 0 -1 0 0 0 0
Len1TiNeg2 加速度 1 0 -2 0 0 0 0
Len2 面积 2 0 0 0 0 0 0
Len2M1TiNeg2 扭矩 2 1 -2 0 0 0 0
Len2M1TiNeg3INeg1 电压 2 1 -3 -1 0 0 0
Len2M1TiNeg3_1 功率 2 1 -3 0 0 0 0
Len3 体积 3 0 0 0 0 0 0
LenNeg1M1TiNeg2 压强 -1 1 -2 0 0 0 0
M1TiNeg1 质量流量 0 1 -1 0 0 0 0
NoDimension 无量纲 0 0 0 0 0 0 0
NoDimension_1 比值/百分比 0 0 0 0 0 0 0
NoDimension_2 角度 0 0 0 0 0 0 0
TiNeg1 频率 0 0 -1 0 0 0 0
TiNeg1_2 转速 0 0 -1 0 0 0 0

6.4 详细 ARXML 示例

<PHYSICAL-DIMENSION>
  <SHORT-NAME>Len1TiNeg1</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Velocity</L-4></LONG-NAME>
  <LENGTH-EXP>1</LENGTH-EXP>
  <MASS-EXP>0</MASS-EXP>
  <TIME-EXP>-1</TIME-EXP>
  <CURRENT-EXP>0</CURRENT-EXP>
  <TEMPERATURE-EXP>0</TEMPERATURE-EXP>
  <MOLAR-AMOUNT-EXP>0</MOLAR-AMOUNT-EXP>
  <LUMINOUS-INTENSITY-EXP>0</LUMINOUS-INTENSITY-EXP>
</PHYSICAL-DIMENSION>

<PHYSICAL-DIMENSION>
  <SHORT-NAME>Len2M1TiNeg2</SHORT-NAME>
  <LONG-NAME><L-4 L="EN">Torque</L-4></LONG-NAME>
  <LENGTH-EXP>2</LENGTH-EXP>
  <MASS-EXP>1</MASS-EXP>
  <TIME-EXP>-2</TIME-EXP>
  <CURRENT-EXP>0</CURRENT-EXP>
  <TEMPERATURE-EXP>0</TEMPERATURE-EXP>
  <MOLAR-AMOUNT-EXP>0</MOLAR-AMOUNT-EXP>
  <LUMINOUS-INTENSITY-EXP>0</LUMINOUS-INTENSITY-EXP>
</PHYSICAL-DIMENSION>

7. BSW 模块条目 (BSW-MODULE-ENTRY)

7.1 概述

BSW 模块条目定义位于 /AUTOSAR/{Module}/BswModuleEntrys_Blueprint/

7.2 模块条目 ARXML 结构

<BSW-MODULE-ENTRY>
  <SHORT-NAME>Adc_DeInit</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">Adc_DeInit</L-4>
  </LONG-NAME>
  <DESC>
    <L-2 L="EN">Returns all ADC HW Units to a state comparable to their power on reset state.</L-2>
  </DESC>
  <SERVICE-ID>0x01</SERVICE-ID>
  <IS-REENTRANT>false</IS-REENTRANT>
  <IS-SYNCHRONOUS>true</IS-SYNCHRONOUS>
  <CALL-TYPE>REGULAR</CALL-TYPE>
  <BSW-ENTRY-KIND>CONCRETE</BSW-ENTRY-KIND>
</BSW-MODULE-ENTRY>

7.3 带参数的模块条目

<BSW-MODULE-ENTRY>
  <SHORT-NAME>Adc_DisableGroupNotification</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">Adc_DisableGroupNotification</L-4>
  </LONG-NAME>
  <DESC>
    <L-2 L="EN">Disables the notification mechanism for the requested ADC Channel group.</L-2>
  </DESC>
  <SERVICE-ID>0x08</SERVICE-ID>
  <IS-REENTRANT>true</IS-REENTRANT>
  <IS-SYNCHRONOUS>false</IS-SYNCHRONOUS>
  <CALL-TYPE>REGULAR</CALL-TYPE>
  <BSW-ENTRY-KIND>CONCRETE</BSW-ENTRY-KIND>
  <ARGUMENTS>
    <SW-SERVICE-ARG>
      <SHORT-NAME>Group</SHORT-NAME>
      <LONG-NAME>
        <L-4 L="EN">Group</L-4>
      </LONG-NAME>
      <DESC>
        <L-2 L="EN">Numeric ID of requested ADC Channel group.</L-2>
      </DESC>
      <DIRECTION>IN</DIRECTION>
      <SW-DATA-DEF-PROPS>
        <SW-DATA-DEF-PROPS-VARIANTS>
          <SW-DATA-DEF-PROPS-CONDITIONAL>
            <IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/AUTOSAR/Adc/ImplementationDataTypes_Blueprint/Adc_GroupType</IMPLEMENTATION-DATA-TYPE-REF>
          </SW-DATA-DEF-PROPS-CONDITIONAL>
        </SW-DATA-DEF-PROPS-VARIANTS>
      </SW-DATA-DEF-PROPS>
    </SW-SERVICE-ARG>
  </ARGUMENTS>
</BSW-MODULE-ENTRY>

7.4 关键属性说明

属性 说明 可能的值
SERVICE-ID 服务标识符 十六进制值 (如 0x01, 0x08)
IS-REENTRANT 是否可重入 true, false
IS-SYNCHRONOUS 是否同步 true, false
CALL-TYPE 调用类型 REGULAR, CYCLIC, ERROR_HOOK, etc.
BSW-ENTRY-KIND 条目类型 CONCRETE, ABSTRACT
DIRECTION 参数方向 IN, OUT, INOUT

8. 客户端-服务器接口 (CLIENT-SERVER-INTERFACE)

8.1 概述

服务接口定义位于 /AUTOSAR/{Module}/ClientServerInterfaces_Blueprint/

8.2 接口 ARXML 结构

<CLIENT-SERVER-INTERFACE>
  <SHORT-NAME>V2xM_GeoMath</SHORT-NAME>
  <LONG-NAME>
    <L-4 L="EN">V2xM Geographic Mathematics Interface</L-4>
  </LONG-NAME>
  <IS-SERVICE>false</IS-SERVICE>
  <POSSIBLE-ERRORS>
    <APPLICATION-ERROR>
      <SHORT-NAME>E_OK</SHORT-NAME>
      <ERROR-CODE>0</ERROR-CODE>
    </APPLICATION-ERROR>
    <APPLICATION-ERROR>
      <SHORT-NAME>E_NOT_OK</SHORT-NAME>
      <ERROR-CODE>1</ERROR-CODE>
    </APPLICATION-ERROR>
  </POSSIBLE-ERRORS>
  <OPERATIONS>
    <CLIENT-SERVER-OPERATION>
      <SHORT-NAME>CalculateDistance</SHORT-NAME>
      <ARGUMENTS>
        <ARGUMENT-DATA-PROTOTYPE>
          <SHORT-NAME>Latitude1</SHORT-NAME>
          <TYPE-TREF DEST="APPLICATION-DATA-TYPE">Latitude</TYPE-TREF>
          <DIRECTION>IN</DIRECTION>
        </ARGUMENT-DATA-PROTOTYPE>
        <ARGUMENT-DATA-PROTOTYPE>
          <SHORT-NAME>Longitude1</SHORT-NAME>
          <TYPE-TREF DEST="APPLICATION-DATA-TYPE">Longitude</TYPE-TREF>
          <DIRECTION>IN</DIRECTION>
        </ARGUMENT-DATA-PROTOTYPE>
        <ARGUMENT-DATA-PROTOTYPE>
          <SHORT-NAME>Latitude2</SHORT-NAME>
          <TYPE-TREF DEST="APPLICATION-DATA-TYPE">Latitude</TYPE-TREF>
          <DIRECTION>IN</DIRECTION>
        </ARGUMENT-DATA-PROTOTYPE>
        <ARGUMENT-DATA-PROTOTYPE>
          <SHORT-NAME>Longitude2</SHORT-NAME>
          <TYPE-TREF DEST="APPLICATION-DATA-TYPE">Longitude</TYPE-TREF>
          <DIRECTION>IN</DIRECTION>
        </ARGUMENT-DATA-PROTOTYPE>
        <ARGUMENT-DATA-PROTOTYPE>
          <SHORT-NAME>Distance</SHORT-NAME>
          <TYPE-TREF DEST="APPLICATION-DATA-TYPE">Distance</TYPE-TREF>
          <DIRECTION>OUT</DIRECTION>
        </ARGUMENT-DATA-PROTOTYPE>
      </ARGUMENTS>
    </CLIENT-SERVER-OPERATION>
  </OPERATIONS>
</CLIENT-SERVER-INTERFACE>

9. 记录布局 (SW-RECORD-LAYOUT)

9.1 概述

记录布局定义位于 /AUTOSAR/GenDef/SwRecordLayouts_Blueprint/

9.2 简单值布局 (ValBlk)

<SW-RECORD-LAYOUT>
  <SHORT-NAME NAME-PATTERN="{blueprintName}">Val_f32</SHORT-NAME>
  <SW-RECORD-LAYOUT-GROUP>
    <SHORT-LABEL NAME-PATTERN="{blueprintName}">Val</SHORT-LABEL>
    <SW-RECORD-LAYOUT-V>
      <BASE-TYPE-REF DEST="SW-BASE-TYPE">/AUTOSAR/Platform/BaseTypes_Blueprint/float32</BASE-TYPE-REF>
      <SW-RECORD-LAYOUT-V-AXIS>0</SW-RECORD-LAYOUT-V-AXIS>
      <SW-RECORD-LAYOUT-V-PROP>VALUE</SW-RECORD-LAYOUT-V-PROP>
    </SW-RECORD-LAYOUT-V>
  </SW-RECORD-LAYOUT-GROUP>
</SW-RECORD-LAYOUT>

9.3 数组值布局 (ValBlk_*)

<SW-RECORD-LAYOUT>
  <SHORT-NAME NAME-PATTERN="ValBlk_{Data}_{Type}">ValBlk_u8_6</SHORT-NAME>
  <SW-RECORD-LAYOUT-GROUP>
    <SHORT-LABEL NAME-PATTERN="{Data}">ValBlk</SHORT-LABEL>
    <CATEGORY>COLUMN_DIR</CATEGORY>
    <NUMBER-OF-AXIS>1</NUMBER-OF-AXIS>
    <SW-RECORD-LAYOUT-V-AXIS-PLUS-PARAM>
      <SW-RECORD-LAYOUT-V-AXIS-PARAM>
        <SHORT-LABEL>axis</SHORT-LABEL>
        <CATEGORY>FIXED_AXIS</CATEGORY>
        <SW-RECORD-LAYOUT-V>
          <BASE-TYPE-REF DEST="SW-BASE-TYPE">/AUTOSAR/Platform/BaseTypes_Blueprint/uint8</BASE-TYPE-REF>
        </SW-RECORD-LAYOUT-V>
        <SW-RECORD-LAYOUT-V-AXIS>1</SW-RECORD-LAYOUT-V-AXIS>
      </SW-RECORD-LAYOUT-V-AXIS-PARAM>
    </SW-RECORD-LAYOUT-V-AXIS-PLUS-PARAM>
    <SW-RECORD-LAYOUT-V>
      <BASE-TYPE-REF DEST="SW-BASE-TYPE">/AUTOSAR/Platform/BaseTypes_Blueprint/uint8</BASE-TYPE-REF>
      <SW-RECORD-LAYOUT-V-AXIS>0</SW-RECORD-LAYOUT-V-AXIS>
      <SW-RECORD-LAYOUT-V-PROP>VALUE</SW-RECORD-LAYOUT-V-PROP>
    </SW-RECORD-LAYOUT-V>
  </SW-RECORD-LAYOUT-GROUP>
</SW-RECORD-LAYOUT>

9.4 立方体布局 (Cuboid)

<SW-RECORD-LAYOUT>
  <SHORT-NAME>Cuboid_s16s16s16_s16</SHORT-NAME>
  <SW-RECORD-LAYOUT-GROUP>
    <SHORT-LABEL>Cuboid</SHORT-LABEL>
    <CATEGORY>INDEX_INCR</CATEGORY>
    <NUMBER-OF-AXIS>1</NUMBER-OF-AXIS>
    <SW-RECORD-LAYOUT-V-AXIS-PLUS-PARAM>
      <SW-RECORD-LAYOUT-V-AXIS-PARAM>
        <SHORT-LABEL>X</SHORT-LABEL>
        <CATEGORY>STANDARD_AXIS</CATEGORY>
        <AXIS-INDEX-DESCR-REF DEST="SW-RECORD-LAYOUT">/AUTOSAR/Ifx/SwRecordLayouts_Blueprint/Curve_X_s16</SW-RECORD-LAYOUT-REF>
        <SW-RECORD-LAYOUT-V>
          <BASE-TYPE-REF DEST="SW-BASE-TYPE">/AUTOSAR/Platform/BaseTypes_Blueprint/sint16</BASE-TYPE-REF>
        </SW-RECORD-LAYOUT-V>
        <SW-RECORD-LAYOUT-V-AXIS>1</SW-RECORD-LAYOUT-V-AXIS>
      </SW-RECORD-LAYOUT-V-AXIS-PARAM>
      <SW-RECORD-LAYOUT-V-AXIS-PARAM>
        <SHORT-LABEL>Y</SHORT-LABEL>
        <CATEGORY>STANDARD_AXIS</CATEGORY>
        <AXIS-INDEX-DESCR-REF DEST="SW-RECORD-LAYOUT">/AUTOSAR/Ifx/SwRecordLayouts_Blueprint/Curve_X_s16</SW-RECORD-LAYOUT-REF>
        <SW-RECORD-LAYOUT-V>
          <BASE-TYPE-REF DEST="SW-BASE-TYPE">/AUTOSAR/Platform/BaseTypes_Blueprint/sint16</BASE-TYPE-REF>
        </SW-RECORD-LAYOUT-V>
        <SW-RECORD-LAYOUT-V-AXIS>2</SW-RECORD-LAYOUT-V-AXIS>
      </SW-RECORD-LAYOUT-V-AXIS-PARAM>
      <SW-RECORD-LAYOUT-V-AXIS-PARAM>
        <SHORT-LABEL>Z</SHORT-LABEL>
        <CATEGORY>STANDARD_AXIS</CATEGORY>
        <AXIS-INDEX-DESCR-REF DEST="SW-RECORD-LAYOUT">/AUTOSAR/Ifx/SwRecordLayouts_Blueprint/Curve_X_s16</SW-RECORD-LAYOUT-REF>
        <SW-RECORD-LAYOUT-V>
          <BASE-TYPE-REF DEST="SW-BASE-TYPE">/AUTOSAR/Platform/BaseTypes_Blueprint/sint16</BASE-TYPE-REF>
        </SW-RECORD-LAYOUT-V>
        <SW-RECORD-LAYOUT-V-AXIS>3</SW-RECORD-LAYOUT-V-AXIS>
      </SW-RECORD-LAYOUT-V-AXIS-PARAM>
    </SW-RECORD-LAYOUT-V-AXIS-PLUS-PARAM>
    <SW-RECORD-LAYOUT-V>
      <BASE-TYPE-REF DEST="SW-BASE-TYPE">/AUTOSAR/Platform/BaseTypes_Blueprint/sint16</BASE-TYPE-REF>
      <SW-RECORD-LAYOUT-V-AXIS>0</SW-RECORD-LAYOUT-V-AXIS>
      <SW-RECORD-LAYOUT-V-PROP>VALUE</SW-RECORD-LAYOUT-V-PROP>
    </SW-RECORD-LAYOUT-V>
  </SW-RECORD-LAYOUT-GROUP>
</SW-RECORD-LAYOUT>

9.5 记录布局属性说明

属性 说明 可能的值
CATEGORY 布局类别 COLUMN_DIR, ROW_DIR, INDEX_INCR
SW-RECORD-LAYOUT-V-AXIS 轴索引 0, 1, 2, 3
SW-RECORD-LAYOUT-V-PROP 值属性 VALUE, CURVE_AXIS
NUMBER-OF-AXIS 轴数量 1, 2, 3

10. 插值算法映射 (INTERPOLATION-ROUTINE-MAPPING-SET)

10.1 概述

插值映射定义位于 /AUTOSAR/Ifl/InterpolationRoutineMappingSets_Blueprint/

10.2 IFL 插值映射

<INTERPOLATION-ROUTINE-MAPPING-SET>
  <SHORT-NAME>Ifl_Mappings</SHORT-NAME>
  <INTERPOLATION-ROUTINE-MAPPINGS>
    <INTERPOLATION-ROUTINE-MAPPING>
      <SHORT-NAME>DPSearch_f32__Distr_f32</SHORT-NAME>
      <INTERPOLATION-ROUTINE-REF DEST="BSW-MODULE-ENTRY">/AUTOSAR/RbaRpm_Ifl/BswModuleEntrys_Blueprint/DPSearch_f32</INTERPOLATION-ROUTINE-REF>
      <SW-RECORD-LAYOUT-REF DEST="SW-RECORD-LAYOUT">/AUTOSAR/Ifl/SwRecordLayouts_Blueprint/Distr_f32</SW-RECORD-LAYOUT-REF>
    </INTERPOLATION-ROUTINE-MAPPING>
    <INTERPOLATION-ROUTINE-MAPPING>
      <SHORT-NAME>IntIpoCur_f32_f32__IntCurve_f32_f32</SHORT-NAME>
      <INTERPOLATION-ROUTINE-REF DEST="BSW-MODULE-ENTRY">/AUTOSAR/RbaRpm_Ifl/BswModuleEntrys_Blueprint/IntIpoCur_f32_f32</INTERPOLATION-ROUTINE-REF>
      <SW-RECORD-LAYOUT-REF DEST="SW-RECORD-LAYOUT">/AUTOSAR/Ifl/SwRecordLayouts_Blueprint/IntCurve_f32_f32</SW-RECORD-LAYOUT-REF>
    </INTERPOLATION-ROUTINE-MAPPING>
    <INTERPOLATION-ROUTINE-MAPPING>
      <SHORT-NAME>IntIpoMap_f32f32_f32__IntMap_f32f32_f32</SHORT-NAME>
      <INTERPOLATION-ROUTINE-REF DEST="BSW-MODULE-ENTRY">/AUTOSAR/RbaRpm_Ifl/BswModuleEntrys_Blueprint/IntIpoMap_f32f32_f32</INTERPOLATION-ROUTINE-REF>
      <SW-RECORD-LAYOUT-REF DEST="SW-RECORD-LAYOUT">/AUTOSAR/Ifl/SwRecordLayouts_Blueprint/IntMap_f32f32_f32</SW-RECORD-LAYOUT-REF>
    </INTERPOLATION-ROUTINE-MAPPING>
  </INTERPOLATION-ROUTINE-MAPPINGS>
</INTERPOLATION-ROUTINE-MAPPING-SET>

11. 接口到模块条目映射

11.1 概述

接口映射定义位于 /AUTOSAR/{Module}/Mapping_Blueprint/

11.2 映射 ARXML 结构

<CLIENT-SERVER-INTERFACE-TO-BSW-MODULE-ENTRY-BLUEPRINT-MAPPING>
  <SHORT-NAME>ClearDTC__Mapping</SHORT-NAME>
  <CLIENT-SERVER-INTERFACE-REF DEST="CLIENT-SERVER-INTERFACE">/AUTOSAR/Dem/ClientServerInterfaces_Blueprint/ClearDTC</CLIENT-SERVER-INTERFACE-REF>
  <OPERATION-MAPPINGS>
    <CLIENT-SERVER-OPERATION-BLUEPRINT-MAPPING>
      <BSW-MODULE-ENTRY-REF DEST="BSW-MODULE-ENTRY">/AUTOSAR/Dem/BswModuleEntrys_Blueprint/Dem_ClearDTC</BSW-MODULE-ENTRY-REF>
      <CLIENT-SERVER-OPERATION-REF DEST="CLIENT-SERVER-OPERATION">/AUTOSAR/Dem/ClientServerInterfaces_Blueprint/ClearDTC/ClearDTC</CLIENT-SERVER-OPERATION-REF>
    </CLIENT-SERVER-OPERATION-BLUEPRINT-MAPPING>
  </OPERATION-MAPPINGS>
</CLIENT-SERVER-INTERFACE-TO-BSW-MODULE-ENTRY-BLUEPRINT-MAPPING>

12. Blueprint 策略

12.1 BLUEPRINT-POLICY-SINGLE

用于单一属性的可衍生规则:

<BLUEPRINT-POLICY-SINGLE>
  <ATTRIBUTE-NAME>SHORT-NAME</ATTRIBUTE-NAME>
  <BLUEPRINT-DERIVATION-GUIDE>
    <P><L-1 L="EN">The name part {safety} shall contain the safety integrity level...</L-1></P>
  </BLUEPRINT-DERIVATION-GUIDE>
</BLUEPRINT-POLICY-SINGLE>

12.2 BLUEPRINT-POLICY-NOT-MODIFIABLE

用于标记不可修改的属性:

<BLUEPRINT-POLICY-NOT-MODIFIABLE>
  <ATTRIBUTE-NAME>COMPU-INTERNAL-TO-PHYS</ATTRIBUTE-NAME>
</BLUEPRINT-POLICY-NOT-MODIFIABLE>

12.3 BLUEPRINT-CONDITION

用于定义条件性 Blueprint

<VARIATION-POINT>
  <BLUEPRINT-CONDITION>
    <VERBATIM>
      <L-5 L="EN">Optional</L-5>
    </VERBATIM>
  </BLUEPRINT-CONDITION>
</VARIATION-POINT>

13. 文件清单

文件名 描述
AUTOSAR_MOD_BswDataTypes_Blueprint.arxml BSW 数据类型 Blueprint
AUTOSAR_MOD_BswModuleEntrys_Blueprint.arxml BSW 模块条目 Blueprint
AUTOSAR_MOD_BswServiceDataTypes_Blueprint.arxml BSW 服务数据类型 Blueprint
AUTOSAR_MOD_BswServiceInterfaces_Blueprint.arxml BSW 服务接口 Blueprint
AUTOSAR_MOD_BswServiceInterfacesMapping_Blueprint.arxml BSW 服务接口映射 Blueprint
AUTOSAR_MOD_CommonDataTypes_Blueprint.arxml 通用数据类型 Blueprint
AUTOSAR_MOD_Cube_SwRecordLayout_Blueprint.arxml 立方体记录布局 Blueprint
AUTOSAR_MOD_IFL_RecordLayout_Blueprint.arxml IFL 记录布局 Blueprint
AUTOSAR_MOD_IFX_RecordLayout_Blueprint.arxml IFX 记录布局 Blueprint
AUTOSAR_MOD_MemoryMapping_SwAddrMethods_Blueprint.arxml 内存映射地址方法 Blueprint
AUTOSAR_MOD_PhysicalDimensions_Blueprint.arxml 物理维度 Blueprint
AUTOSAR_MOD_SWCServiceRelatedInterfaces_Blueprint.arxml SWC 服务相关接口 Blueprint
AUTOSAR_MOD_Units_Blueprint.arxml 单位 Blueprint
AUTOSAR_MOD_ValBlk_SwRecordLayout_Blueprint.arxml 值块记录布局 Blueprint

14. 附录:完整 ARXML 文件结构

14.1 Blueprint 文件模板

<?xml version="1.0" encoding="UTF-8"?>
<AUTOSAR xmlns="http://autosar.org/schema/r4.0" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_00046.xsd">
   <ADMIN-DATA>
      <USED-LANGUAGES>
         <L-10 L="EN" xml:space="default">English</L-10>
      </USED-LANGUAGES>
   </ADMIN-DATA>
   <AR-PACKAGES>
      <AR-PACKAGE>
         <SHORT-NAME>AUTOSAR</SHORT-NAME>
         <AR-PACKAGES>
            <AR-PACKAGE>
               <SHORT-NAME>{Module}</SHORT-NAME>
               <AR-PACKAGES>
                  <AR-PACKAGE>
                     <SHORT-NAME>{BlueprintType}_Blueprint</SHORT-NAME>
                     <CATEGORY>BLUEPRINT</CATEGORY>
                     <ELEMENTS>
                        <!-- 定义的具体元素 -->
                     </ELEMENTS>
                  </AR-PACKAGE>
               </AR-PACKAGES>
            </AR-PACKAGE>
         </AR-PACKAGES>
      </AR-PACKAGE>
   </AR-PACKAGES>
</AUTOSAR>

14.2 常用路径引用

元素类型 路径模式
基础类型 /AUTOSAR/Platform/BaseTypes_Blueprint/{type}
实现类型 /AUTOSAR/Platform/ImplementationDataTypes_Blueprint/{type}
单位 /AUTOSAR/AUTOSAR_PhysicalUnits/Units_Blueprints/{unit}
物理维度 /AUTOSAR/AUTOSAR_PhysicalUnits/PhysicalDimensions_Blueprints/{dim}
记录布局 /AUTOSAR/{package}/SwRecordLayouts_Blueprint/{layout}
BSW 模块条目 /AUTOSAR/{module}/BswModuleEntrys_Blueprint/{entry}