点击上方蓝色字关注?
导语
近期项目中遇到一些E2E的诊断故障,涉及到整车需求和AutoSAR配置,对这个概念重新做了下梳理,与大家交流。由于E2E机制比较成熟,本文章内容更多出自于AutoSAR标准、ISO 26262 和相关文献,这里只捡重点和个例对这个概念做下解读。▼
1. 什么是E2E? 2. 为什么要做E2E? 3. 怎么做E2E? 4. 常用的保护形式有哪些? 5. E2E状态机与配置参数1. 什么是E2E?
首先明确一点,E2E并非只是在汽车领域应用,任何通信领域都会涉及,只不过是AutoSAR对这一协议/机制做了规范。
E2E,全称End to End,中文即端到端的通信保护,是一种针对安全相关数据,为防止通信链路中可能存在的故障(HW/SW),在通信节点之间执行的一种数据保护协议/机制。其适用于多种网络结构:CAN、 CANFD、FlexRay、Ethernet等。
具体,如下图所示,假设有两个ECU:ECU1和ECU2,两节点之间通过CAN总线通信,ECU1要将某一安全信号传输至ECU2,如果采用E2E profile1保护协议(AutoSAR E2E Library),ECU1在对必要信息数据做传递之外,还要补充CRC和Counter信息给至ECU2,ECU2在接收到这帧数据后,会计算CRC,然后与接收到的进行比较,ECU2会根据校验结果执行下一步动作(这就涉及到故障的处理,之前有做过简要概述,可参见文章《电动汽车动力系统的"望闻问切" | 故障诊断》)。
不知道是否注意到,所谓的E2E其实是对两个关键对行为的保护:发送端(sender)和接收端(receiver)。标准中定义如下:
E2E所涉及的所有保护机制都围绕这两个行为展开的。
2. 为什么要做E2E?
通过上述简介,可以get到,E2E保护概念的核心是针对安全相关的数据交换,需要在运行时进行保护,以消除通信链路中可能的失效带来的影响,这就是为什么要做E2E的本质原因。另外,E2E也是汽车动力系统实现ASIL D的必要手段。
那么,数据交换过程中可能的失效模式有哪些呢?关于这个问题ISO26262 中有总结,如下:
● 信息的重复发送 (Repetition of Information),相同的信息被收到了多次
● 信息的丢失 (Loss of Information),整条或者信息的一部分在通信过程中丢失
● 信息的延迟 (Delay of Information),接收信息的时间异于期望的时间
● 信息的插入 (Insertion of Information),多余的内容被插入到信息中
● 假冒的或者不正确的寻址 (Masquerade or Incorrect Addres