按照Autosar规范的要求,E2E存在一系列的Profile(配置)每种配置在计算CRC时有各自的机制、参数、数据格式,具有非常强的灵活性,用户可以根据实际需要选择配置1,或者配置2,目前本人接触的仅有Profile1,所以我们只讨论Profile1 (⊙﹏⊙) Profile1的一些属性:CRC,Counter,Timeout monitoring,Data ID CRC:对数据进行多项式...
3. 当使用 profile4、profile5 和 profile6 保护数据时,如果需要保护的数据较长时,CRC 计算时间会较长,由于 E2E 模块的保护和检测功能都是同步执行的,可能会影响系统的实时性。 4. 每一种profile检测到错误时所采取的措施也是不一样的,至于每一种profile的工作机制大家可以参考官方规范手册《AUTOSAR_SWS_E2ELibr...
2. 保护机制中的Data ID List指的是每一条消息的Data ID由Counter值去确定,所以需要静态定义Data ID和Counter的对应表格,这种机制就叫做Data ID List。3. 当使用 profile4、profile5 和 profile6 保护数据时,如果需要保护的数据较长时,CRC 计算时间会较长,由于 E2E 模块的保护和检测功能都是同步执行的,可能会...
为了满足能够检测出信息交换的11种失效模式,根据功能安全中信息交互的具体需求来,AUTOSAR E2E模块采用了上述的这些机制,设计了5种profile,它们分别是P01、P02、P04、P05和P06 ,每种 Profile 提供不同的保护策略。 在具体E2E的实现过程是: 发送方填写counter,计算出的CRC等信息,发送给接收方,然后接收方需要对接收到...
E2E和Crc的区别 接下来就是Autosar的E2E(End-to-End,可以理解为数据从一个ECU传到另一个ECU)。 刚开始接触的时候,我总没搞明白所谓的E2E和CRC到底有啥区别,因为在开发过程中,只关心两件事:Checksum计算是否正确、Counter的值是否按照要求进行递增并循环。
图5 E2E Profile 1配置示意图 Data ID是一个预先定义的密钥,不会被发送到总线上。整个E2E的过程为: SW-C生成原数据 将Counter和原数据组成待校验数据 使用Data ID进行CRC的校验 将原数据、Counter和CRC值发送给RTE 经过诸如总线通信等路径,原数据、Counter和CRC传递到目标RTE ...
Step1:计算Data ID字段内CRC值 (注:实际初始值为初始值取反)。Step2:计算Byte1~Byte7字段内CRC值(注:实际初始值为上一步校验值取反)。Step3: 将上一步校验值取反,得到最终值。以下是AutoSAR中针对profile1保护机制的原始定义,供参考:5. E2E状态机与配置参数 E2E数据的接收是周期性的,接收方在...
1)- CRC checksum,由CRC库提供; 2)- Sequence Counter 在每次传输请求时递增,在接收端检查该值是否正确递增; 3)- Alive Counter 在每次传输请求时递增,如果它发生变化,则在接收端检查该值,但不检查正确的递增。 4)- A specific ID 通过端口发送的每个端口数据元素的特定ID(全局到系统,其中系统可能包含多个ECU...
Step1:计算DataID字段内CRC值(注:实际初始值为初始值取反)。 Step2:计算Byte1~Byte7字段内CRC值(注:实际初始值为上一步校验值取反)。 Step3:将上一步校验值取反,得到最终值。 以下是AutoSAR中针对profile1保护机制的原始定义,供参考: 5.E2E状态机与配置参数 ...
E2E Profile 1中的“Double Data ID configuration”使用隐式的2字节Data ID,对其进行CRC8计算。由于在两个不同的2字节数字上计算CRC可能会得到相同的CRC值,用户必须采取一些预防措施。请参考UC_E2E_00072和UC_E2E_00073。 E2E Profile 2使用隐式的1字节Data ID,该Data ID是根据计数器的每个值从DataIDList中选...