全部学习汇总: https://github.com/GreyZhang/hack_autosar

       继续学习AUTOSAR,看一下官方文档。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_配置文件

       根据 [19],以下约束适用于 EndToEndProtection 的属性(请注意,附加 M1 约束适用于 [19] 中所述):

       EndToEndDescription 中类别的值

       EndToEndDescription 的属性类别可以具有以下值:

       • NONE

       • PROFILE_01

       • PROFILE_02

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_autosar_02

       EndToEndDescription 的类别

       [constr_1110] 中提到的 EndToEndDescription 类别的值已标准化并保留用于以 AUTOSAR 标准预见的方式使用。 此外,绝对可以使用类别的标准化值以外的值。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_数据_03

       这方面将在 AUTOSAR 标准的后续修订版中得到更详细的说明。目前需要注意的是,使用非标准化值不应与未来的标准化值产生名称冲突。 这可以通过使用例如类值的公司特定前缀或后缀。

       类的语义是:

       NONE

       这表明 E2E 框架应分别为给定的发送方/接收方和给定的 iSignalIPdu 启用。 应生成包装器代码,但不应调用 E2E 库保护例程。  E2E 包装器用作传递。

       这可以在给定系统中尚未选择配置文件选择或配置文件选项时使用,但要求可以在考虑 E2E 库的情况下成功构建系统。 这也适用于从/向具有/不具有 E2E 保护的系统迁移。

       类别设置为 NONE

       如果属性存在且类别设置为 NONE,则属性将被忽略。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_autosar_04

       PROFILE_01

       这表示 E2E 配置文件 1(使用 SAE CRC8、隐式 16 位数据 ID 和 4 位活动计数器)的设置适用。

       PROFILE_01 中存在属性

       PROFILE_01,应存在以下属性:

       • dataLength

       • dataId

       请注意,属性 maxDeltaCounterInit 也是 PROFILE_01 的一部分,但它不一定必须存在,前提是 ReceiverComSpec.maxDeltaCounterInit 存在。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_it技术_05

       EndToEndDescription 拥有的属性 maxDeltaCounterInit 的解释

       如果 EndToEndProtection.endToEndProtectionVariablePrototype.receiver 与 RPortPrototype.requiredComSpec.dataElement 相同,并且定义了 RPortPrototype.requiredComSpec.maxDeltaCounterInit,则 RPortPrototype.requiredComSpec.maxDeltaCounterInit 的值应优先于 EndToEndProtection.maxDeltaCounterInit 的值。

       如果 EndToEndDescription 的 category 值设置为 PROFILE_01 并且未满足所描述的有关引用的 VariableDataPrototype 的对应规则或未定义 RPortPrototype.requiredComSpec.maxDeltaCounterInit,则应存在 EndToEndProtection.endToEndProfile.maxDeltaCounterInit。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_数据_06

       PROFILE_01 中 dataId 的约束

       在 PROFILE_01 中,集合中应只有一个元素,适用的取值范围为 [0 .. 65535]。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_数据_07

       PROFILE_01 中 dataIdMode 的约束

       在 PROFILE_01 中,dataIdMode 的适用值范围是 [0 .. 3]。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_配置文件_08

       PROFILE_01 中 crcOffset 的约束

       在 PROFILE_01 中,crcOffset 的适用值范围是 [0 .. 65535]。 对于该属性的值,约束值 mod 4 = 0 适用。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_未定义_09

       PROFILE_01 中 counterOffset 的约束

       在 PROFILE_01 中,counterOffset 的适用值范围是 [0 .. 65535]。 对于该属性的值,约束值 mod 4 = 0 适用。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_it技术_10

       PROFILE_01 中 dataLength 的约束

       在 PROFILE_01 中,dataLength 的适用值范围是 [0 .. 240]。 对于该属性的值,约束值 mod 8 = 0 适用。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_autosar_11

       PROFILE_01 中 maxDeltaCounterInit 的约束

       在 PROFILE_01 中,EndToEndDescription.maxDeltaCounterInit 和 ReceiverComSpec.maxDeltaCounterInit 的适用值范围是 [0 .. 14]。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_autosar_12

       PROFILE_01 中 maxNoNewOrRepeatedData 的约束

       在 PROFILE_01 中,EndToEndDescription.maxNoNewOrRepeatedData 和 ReceiverComSpec.maxNoNewOrRepeatedData 的适用值范围是 [0 .. 14]。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_it技术_13

       PROFILE_01 中 syncCounterInit 的约束

       在 PROFILE_01 中,EndToEndDescription.syncCounterInit 和 ReceiverComSpec.syncCounterInit 的适用值范围是 [0 .. 14]。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_autosar_14

       解析 PROFILE_01 中 EndToEndDescription 拥有的属性 maxNoNewOrRepeatedData

       如果 EndToEndProtection.endToEndProtectionVariablePrototype.receiver 与 RPortPrototype.requiredComSpec.dataElement 相同,并且定义了 RPortPrototype.requiredComSpec.maxNoNewOrRepeatedData,则 RPortPrototype.requiredComSpec.maxNoNewOrRepeatedData 的值应优先于 EndToendToEndProteedProtofile.RepeatedData 的值。

       如果 EndToEndDescription 的 category 值设置为 PROFILE_01 并且未满足所描述的有关引用的 VariableDataPrototype 的对应规则或未定义 RPortPrototype.requiredComSpec.maxNoNewOrRepeatedData,则 EndToEndProtection.endToEndProfile.maxNoNewOrRepeatedData 应存在。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_未定义_15

       PROFILE_01中EndToEndDescription拥有的属性syncCounterInit的解释

       如果 EndToEndProtection.endToEndProtectionVariablePrototype.receiver 与 RPortPrototype.requiredComSpec.dataElement 相同且定义了 RPortPrototype.requiredComSpec.syncCounterInit,则 RPortPrototype.requiredComSpec.syncCounterInit 的值应优先于 EndToEndProtection.endToCounterInit.sync 的值。

       如果EndToEndDescription 的category 的值设置为PROFILE_01 并且未满足所描述的有关引用的VariableDataPrototype 的对应规则或未定义RPortPrototype.requiredComSpec.syncCounterInit,则应存在EndToEndProtection.endToEndProfile.syncCounterInit。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_autosar_16

       EndToEndDescription.dataIdNibbleOffset 适用性

       只有当 EndToEndDescription.dataIdMode 设置为值 3 并且同时 EndToEndDescription.category 设置为 PROFILE_01 时,才应使用 EndToEndDescription.dataIdNibbleOffset。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_配置文件_17

       EndToEndDescription.dataIdNibbleOffset 的默认值

       如果 EndToEndDescription.dataIdMode 设置为值 3,同时 EndToEndDescription.category 设置为值 PROFILE_01 且未指定 EndToEndDescription.dataIdNibbleOffset,则应为属性 EndToEndDescription.dataIdNibbleOffset 假定默认值 12(位)  .

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_autosar_18

       PROFILE_02 这表示 E2E 配置文件 2 的设置适用。

       PROFILE_02 中存在属性

       在 PROFILE_02 中,仅应存在以下属性:

       • dataLength

       • dataId

       请注意,属性 maxDeltaCounterInit 也是 PROFILE_01 的一部分,但它不一定必须存在,前提是 ReceiverComSpec.maxDeltaCounterInit 存在。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_it技术_19

       EndToEndDescription的属性maxDeltaCounterInit解读

       如果 EndToEndProtection.endToEndProtectionVariablePrototype.receiver 与 RPortPrototype.requiredComSpec.dataElement 相同,并且定义了 RPortPrototype.requiredComSpec.maxDeltaCounterInit,则 RPortPrototype.requiredComSpec.maxDeltaCounterInit 的值应优先于 EndToEndProtection.maxDeltaCounterInit 的值。

       如果 EndToEndDescription 的 category 值设置为 PROFILE_02 并且未满足所描述的有关引用的 VariableDataPrototype 的对应规则或未定义 RPortPrototype.requiredComSpec.maxDeltaCounterInit,则应存在 EndToEndProtection.endToEndProfile.maxDeltaCounterInit。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_未定义_20

       批注:跟前面的内容有一些类似了,这个是PROFILE_02里面的一部分数值约束的说明。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_数据_21

       解析 PROFILE_02 中 EndToEndDescription 拥有的属性 maxNoNewOrRepeatedData

       如果 EndToEndProtection.endToEndProtectionVariablePrototype.receiver 与 RPortPrototype.requiredComSpec.dataElement 相同,并且定义了 RPortPrototype.requiredComSpec.maxNoNewOrRepeatedData,则 RPortPrototype.requiredComSpec.maxNoNewOrRepeatedData 的值应优先于 EndToendToEndProteedProtofile.RepeatedData 的值。

       如果EndToEndDescription 的category 的值设置为PROFILE_02 并且未满足所描述的有关引用的VariableDataPrototype 的对应规则或未定义RPortPrototype.requiredComSpec.maxNoNewOrRepeatedData,则EndToEndProtection.endToEndProfile.maxNoNewOrRepeatedData 应存在。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_配置文件_22

       PROFILE_02中EndToEndDescription拥有的属性syncCounterInit解读

       如果 EndToEndProtection.endToEndProtectionVariablePrototype.receiver 与 RPortPrototype.requiredComSpec.dataElement 相同且定义了 RPortPrototype.requiredComSpec.syncCounterInit,则 RPortPrototype.requiredComSpec.syncCounterInit 的值应优先于 EndToEndProtection.endToCounterInit.sync 的值。

       如果EndToEndDescription 的category 的值设置为PROFILE_02 并且没有满足所描述的有关引用的VariableDataPrototype 的对应规则或未定义RPortPrototype.requiredComSpec.syncCounterInit,则EndToEndProtection.endToEndProfile.syncCounterInit 应存在。

       批注:这一部分其实也可以拿前面的PROFILE_01来类比看了,都是差不多的。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_未定义_23

       这表示收集 EndToEndProtectionInformation 的容器。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_数据_24

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_it技术_25

       该元类代表描述特定端到端保护的能力。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_数据_26

       可以保护软件组件之间交换的数据。 为此,对于每个要保护的通信,用户定义一个单独的 EndToEndProtection(指定一组保护设置)并引用作为发送方角色的 variableDataPrototype 和作为接收方角色的一个或多个 variableDataPrototypes。 有关详细信息,请参阅 EndToEnd 库。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_it技术_27

       请注意,使用端到端保护明确支持一个发送方可以对应一个或多个接收方。

920_AUTOSAR_TPS_SoftwareComponentTemplate25_E2E端对端保护2_配置文件_28

       EndToEndProtectionVariablePrototypes 由 EndToEndProtection 聚合

       由同一个 EndToEndProtection 聚合的所有 EndToEndProtectionVariablePrototypes 应指代相同的发送者。

       这部分,把端对端的保护部分看完了。对我来说,这是一个较为陌生的模块,而这部分在未来的工作中倒可能会是一个热点。