1. E-GAS 功能安全软件架构:
- E-GAS(Standardized E-Gas Monitoring Concept for Gasoline and Diesel Engine Control Units)是当前使用最为广泛的一个安全软件架构方案
- 软件分为 Level 1~3 总共三层,Level1是功能实现层(function level)、Level2 是功能监控层(function monitoring level)、Level3 是控制器监控层(controller monitoring level)
- 该架构形成了很好的分层监视框架,并有效实现了功能安全分解,通常采用 QM(ASIL X) + ASIL X(ASIL X)的安全分解策略,即将功能实现软件(Level1)按照 QM 等级开发,功能冗余软件或安全措施(Level2、Level3)按照最高的要求等级 ASIL X(ASIL X)进行开发
Level 1 功能实现层
Level1 是功能实现层,完成具体的功能实现,比如对于电机控制器来说,这一层实现了将请求的扭矩转换为电机的扭矩输出。
Level 2 功能监控层
Level2 是功能监控层,用于监控 Level1 功能的运行是否正常。Level2 的核心是设计一套方法去判断Level1 的运行是否正常。
E-GAS Level 1+Level 2举例:
Level3 是控制器监控层,主要由三部分功能构成。
- 电子电气系统硬件诊断:监控电子电气系统硬件故障(控制器的 CPU 核故障、RAM 故障、ROM 故障等)
- 独立监控:控制器相关的故障发生后,此时控制器已经无法可靠地执行安全相关逻辑,为了保证安全性,需要外部额外的独立监控模块,来确保即使 MCU 发生严重故障后,依然能够进入安全状态。这个额外的独立监控模块,通常是集成看门狗的电源管理芯片(PMIC-TLF35584)。
- 应用程序流检查:监控 Level1 和 Level2 的监控程序是否运行正常。该监控功能通过将程序流检查和看门狗喂狗绑定实现:如果 Level1 和 Level2 相关的监控程序没有按照设定的顺序运行,或者没有在规定的时间内执行,则程序流检查失败,无法正常喂狗,从而进入系统安全状态。
E-GAS Level3 架构:
下图仅是Fault Reaction Controller Monitoring of Level 3 with µC-internal HW-Monitoring, Gasoline and Diesel
2. 基于 TC397 与 AUTOSAR 的 SafeTpack Level-3架构:
- SafeTpack 包含以下软件模块:
- SafeTpack-Basic:包 含 TC397 ESMs/SMCs 的测试模块。
- SafeTpack-WD:包含 Logical and Temporal 监控的看门狗模块。
- SafeTpack-TLF35584 Tests:包含 TLF35584 的 Startup Tests 模块。
- SafeTpack-PFM:包 含 Program Flow Monitoring 模块。
- SafeTpack在 AutoSAR 环境中作为复杂驱动程序,包含三类复杂驱动:
1. MCU 硬件安全机制自检复杂驱动。下图是TC397提供的硬件安全机制
2.安全看门狗结合程序流监控复杂驱动。举例,基于AUTOSAR的WdgM,实现多核看门狗机制
当任意一个核运行异常,比如在执行某个函数的时候发生野指针,State Combiner 的状态为 NOT OK,硬件狗就会复位 MCU。
3.SMU ( safety management Unit)模块结合 TLF35584Test 关断路径检查复杂驱动,功能狗机制:
主要功能是监控系统的运行状态,以确保系统在预定的功能范围内正常工作。TLF35584能够以预定的周期进行喂狗,就是正常状态,否则执行停止喂狗,报告异常。
- SafeTpack 包括两个检测阶段:启动阶段和运行阶段。在 AutoSAR 架构中的 EcuM 模块中触发 SafeTpack 的启动测试。 OS 周期性任务中执行 SafeTpack 的运行阶段,进行单点故障测试。