1.基本概述
在讲Safety之前,需要搞清楚Safety和Security分别指的是什么?
从架构图可以看到,Safety和Security分别对应SMU和HSM,使用的功能也也不一样;
Safety:功能安全,主要参考标准ISO26262、预期功能安全分析ISO 21448(新的 ISO 21448 其实是 ISO 26262 的补充,它填补了老标准中的空缺)。AutoSAR里面涉及到功能安全的模块,例如:E2E、SafeWDG、SafeOS、硬件本身涉及的功能安全
Secrurity:网络信息安全,ISO 21434。例如HSM模块等
功能安全与信息安全技术视角不同,前者是为了保障功能按照设计要求正常进行,尽量减少因系统设计问题导致的功能失效,同时也尽可能的保证功能按照预期功能实现。
信息安全主要防止外界黑客攻击,更注重抵御外界攻击,使得系统正常运行,不产生财产损失,同时不会对个人的隐私和安全造成一定的影响。
2. TC3xx SMU feature list
- 收集功能安全机制生成的每个alarm信号
- Alarm的标志可以存放在诊断寄存器,该寄存器只会在Power-on reset的时候重置
- 提供alarm模拟设施,诊断功能能够发布与硬件警报相同属性的警报条件
- 具备访问保护功能、具备Safety ENDINIT Mode保护配置寄存器功能
- 具备 Fault Signaling Protocol上报内部错误给外部ECU
- Power-on reset之后FSP失能;需要软件通过PortControlRegister激活FSP;通过FSP_STATUS寄存器来观察FSP的值
- 每个单独的alarm都可以配置激活FSP
- 两个SMU实例:SMU_core和SMU_stdby
- 由SMU_core处理的alarm可以配置如下内部动作
- 请求中断给任何一个CPU,或者配置为并发请求给多个CPU
- 生成NMI(Non-Maskable Interrupt)请求给SCU(System Control Unit)
- 生成reset请求给SCU
- 生成CPU reset请求
- 生成Port Emergency Stop信号用于控制输出的安全状态
- 电压、温度相关的alram,core和stdby都有不同的处理方式
- 当alram触发时,core没有按照配置进行触发处理时,会生成一个SMU ALIVE alram
- 复位后除看门狗超时报警外,所有alarm reaction均被禁用
- 锁机制可用来保护SMU配置
- 内部watchdog超时预警功能
- 提供恢复计时器的内部监督程序,以监视关键软件错误处理程序的执行。看门狗由硬件根据可配置的alram自动启动
SMU_core和SMU_stdby的设计方式和计时方式各不相同。它们之间存在物理隔离,位于不同的时钟和power域。频率fSPB生成的alarm由SMU_core处理,频率fBACK生成的alarm由SMU_stdby处理;为了检测SMU_core中的错误,smu_core_alive从SMU_core发送到SMU_stdby。SMU结合嵌入式安全机制,能够在容错时间间隔内检测和报告微控制器99%以上的关键故障模式。SMU可以配置容错时间间隔的时序特性。
SMU接口
SMU内部架构