AutoSAR E2E自学笔记

简介: AutoSAR E2E自学笔记

1. 简介

E2E 保护的概念:

保护运行时安全相关的数据交换,免受通信链路内故障的影响。

造成故障可能的原因包括:

  1. 硬件随机故障(CAN Trcv 的寄存器故障)
  2. 硬件EMC干扰
  3. 软件设计/运行故障
    为了保证接收端 能够接收到正确的数据,或者在收到错误的数据时能够进行识别。

f7dab99b4a0c54bdc72eaa60e4042035_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

2. E2E P01 介绍

E2E 模块提供了多种不同的E2E 范式,可以运用在不同的场景下。

  1. 1.E2E P01
  2. 2.E2E P02
  3. 3.E2E P04
  4. 4.E2E P05
  5. 5.E2E P06
  6. 6.E2E P07
  7. 7.E2E P11
  8. 8.E2E P12
    数字越大,可以保护的数据量越大。
    E2E 是通过对数据元素计算CRC 以及Counter 来进行保护,接收方在根据接收到数据来判断是否正确
    f7f5b06203ed9690676e78e2d8a1d665_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png
    以报文DBC为例,在下图中受保护的数据实际是Signal ADCU_ACC_SYS_FAILURE
    但实际报文中还有Counter 以及 CheckSum 和DATA ID(报文ID)
    f2f90867f50877056fe70f593d0dd198_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png
    Counter 值随着报文的发送计数,Checksum 根据 DATA ID +Rollingcnt+ ADCU_ACC_SYS_FAILURE 计算得出。

2.1 P01 特性

P01的主要特性如下

  1. 1.Counter的阈值 是0-14
  2. 2.Timeout 监控
  3. 3.DATA ID 16位
  4. 4.CRC 采用 CRC-8-SAE J1850(非AUOTSAR 标准CRC8, 起始值和异或值都是0x0)
    0f3cf9425470da558d540c12787e393d_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png
    Note: 有些主机厂的规范并不会按照AUTOSAR规范来实施,按需要修改代码即可。

2.2 E2E_P01ConfigType 介绍

E2E P01 通过E2E_P01ConfigType 以适配不同的被保护数据元素,如下图

385ce48edbda402b2409a93dfd932237_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

E2E 保护数据的都是以数组的形式体现(连续的Bit位),如下图

6f4fe04b1e9d937a34e3300f05f74a8c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

因此需要通过E2E_P01ConfigType 来进行对应参数的配置

  1. 1.CounterOffSet Counter 的起始Bit 位
  2. 2.CrcOffset CRC 值的起始Bit 位
  3. 3.DataIDNibbleOffset DataID 的起始Bit 位
  4. 4.DataIDMode ID的CRC计算模式,有如下选项

ec95c238946c022fce1d9aa40cae678c_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

4.1 E2E_P01_DATAID_BOTH DATA ID 两个Byte 都参与CRC计算

4.2 E2E_P01_DATAID_ALT 奇数Counter.Low Byte 参与计算,偶数Counter High Byte 参与计算

4.3 E2E_P01_DATAID_LOW 仅Low Byte 有效

4.4 E2E_P01_DATAID_NIBBLE Low Byte 参与CRC计算,高Byte的半个Byte+Low Byte 随着数据传递

5. MaxDeltaCounterInit 当前后两帧数据的Counter差值大于该值,就被判定为数据接收跳变

5. MaxnoNewOrRepeatedData 当接收到重复数据次数小于该配置参数,则接收端不需要执行数据同步处理

6. SyncCounterInit 当执行数据同步处理时,接收到正确数据次数必须大于该配置参数,才能将状态有同步状态转移到OK状态

2.3 E2E_P01CheckStateType 介绍

f051c94068131339966a0f1fbe8d5184_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

4 E2E 的接口

E2E 主要利用两个接口进行数据的保护和验证

  1. 1.E2E_P01Protect 用于数据发送前的保护
  2. 2.E2E_P01Check 用于数据接收后的校验

5 E2E 故障状态

E2E P01通过 E2E_P01CheckStatusType 来表示当前E2E的状态。

一共有一下几个故障状态

21f4d201a7094a149168d361503f996f_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

7053328924bf69238b922f3827a2e469_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

9dfd0a378ced2b07694c63968510d1da_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

E2E_P01MapStatusToSM

将 E2E_P01CheckStateType 映射成 E2E_P01CheckStateType

0a731ed542e05b31d796541857968641_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

E2E Data Layout

E2E受保护的数据中所有的元素应保证Byte对齐

4c50ed9fd2ce14157ba764a684d05ee3_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

6 E2E 使用示例

E2E 最典型的使用场景就是配合Com Tx /Rx Callout 进行报文的E2E计算与校验。

3298145342101c8108d5da5c9240b0c9_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

ComCallout E2E 发送

462861ebd5b0ad6dfc5102a2c95bc78d_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

ComCallout E2E 接收

0970813eb23a37e620e39c49afa6fbb8_640_wx_fmt=png&wxfrom=5&wx_lazy=1&wx_co=1.png

Com_ReceiveSignalGroup(SignalGroupA);
Com_ReceiveSignal(SignalGroupA_Sig1, &SignalGroupBuffer->sig1Val);
Com_ReceiveSignal(SignalGroupA_Sig2, &SignalGroupBuffer->sig2Val);
Com_ReceiveSingal(SignalGroupA_Sig3, &SignalGroupBuffer->sig3Val);
ret_u8 = E2E_P01Check
                     ( Config_SignalGroupA
                     , State_SignalGroupA
                     , SignalGroupBuffer
                     );

相关文章
|
4月前
信不信?工作这么多年,还有很多网工不知道光模块光衰的正常范围?
信不信?工作这么多年,还有很多网工不知道光模块光衰的正常范围?
445 2
|
4月前
|
网络协议 安全 网络虚拟化
"揭秘!网工爱不释手的Wireshark八大绝技,让复杂网络问题无所遁形,你掌握了吗?"
【8月更文挑战第19天】Wireshark是网络工程师不可或缺的工具,以其卓越的抓包与分析能力闻名,在网络故障排除、性能优化和安全审查方面作用显著。本文精选八大实用技巧,包括精准数据包过滤、序列号排序、时间格式调整、数据包解码、混杂模式使用、数据包标记与导出、自定义显示列以及过滤器的高效应用,助您在网络分析中得心应手,成为解决复杂问题的高手。
69 0
|
7月前
|
存储 安全 区块链
Matic马蹄链Meforce佛萨奇3.0系统开发设计及方案
信大家对智能合约的优点和缺点是什么,以及为什么智能合约很重要,有了一定的了解
|
存储 C# C语言
居民身份证阅读器产品开发学习心得(再谈标准-软件-协议)
居民身份证阅读器产品开发学习心得(再谈标准-软件-协议)
90 1
|
存储 数据管理 人机交互
【软工视频】第九章面向对象技术
【软工视频】第九章面向对象技术
|
算法 UED
陪玩平台源码开发,回声消除技术的三大组成模块
陪玩平台源码开发,回声消除技术的三大组成模块
|
前端开发 SQL 关系型数据库