2. AURIX安全架构与故障监控基础

AURIX TC3xx 的安全架构不是单一模块,而是一套从“故障产生”到“系统进入安全状态”的纵向链路。理解这条链路,是后续配置 SMU、ALARM、端口和安全管理单元的前提。本节围绕锁步核、SMU、安全管理单元、安全域与安全状态、故障分类与安全机制映射五个核心概念展开,并给出可落地的观察与判断方法。

锁步核:故障检测的第一道防线

AURIX 的 CPU 采用锁步(Lockstep)结构:一个主核(Master Core)和一个校验核(Checker Core)执行相同的指令流,但两者在物理上独立、布局错开,以降低共因失效。每个时钟周期,比较逻辑将两核的关键输出(如地址、数据、控制信号)进行比对。若不一致,比较器立即产生一个故障信号,送入 SMU。锁步核能覆盖 CPU 内部的瞬态与永久故障,但它本身不决定系统如何响应,只负责“发现异常”。

工程上需要关注两个参数:一是锁步比较的延迟,通常在几个周期内;二是故障信号的类型,例如指令比较错误、数据比较错误、地址比较错误。这些信号在 SMU 中对应不同的 ALARM 组,后续可分别映射到不同的安全反应。

SMU:故障的汇聚与分发中心

SMU(Safety Management Unit)是 AURIX 安全架构的中枢。它接收来自锁步核、SRAM/Flash ECC、总线监控、时钟监控、电压监控等数十个故障源,按严重程度和来源分组为若干 ALARM 组。每个 ALARM 组可独立配置反应方式:

  • 内部反应:触发中断、复位、进入安全状态;
  • 外部反应:通过 SMU 的 FSP(Fault Signaling Protocol)引脚输出到外部安全芯片或系统电源管理;
  • 状态记录:将故障写入 SMU 状态寄存器,供软件读取和诊断。

SMU 的关键配置对象是 ALARM 配置寄存器(如 AGC、AGF、CMD 等)。以 TC3xx 为例,每个 ALARM 组可设置“报警反应”为:无反应、中断、复位、或触发 FSP。实际项目中,通常将 CPU 锁步错误、ECC 不可纠正错误等归为高严重度组,配置为立即复位或触发外部安全状态;将可纠正 ECC 错误归为低严重度组,仅记录并产生中断,由软件决定是否降级运行。

安全管理单元与安全域

安全管理单元(Safety Management Unit,部分文档也称 SMU 的扩展管理逻辑)负责将 SMU 的报警信号进一步映射到具体的安全域。安全域是 AURIX 中一组具有相同安全目标的功能集合,例如:

  • 安全域 0:与车辆动力、制动相关的关键功能;
  • 安全域 1:与车身、舒适相关的非关键功能;
  • 安全域 2:诊断与通信功能。

不同安全域可以配置不同的安全状态。安全状态不是“停机”,而是系统在故障后仍能维持最低安全能力的运行模式。例如,动力域进入安全状态时,可能关闭电机输出但保留通信与诊断;车身域进入安全状态时,可能仅关闭相关执行器。安全状态的定义必须与整车功能安全目标(如 ASIL 等级)一致。

故障分类与安全机制映射

AURIX 将故障按来源和可恢复性分类,并映射到对应的安全机制。常见分类如下:

故障类别典型来源安全机制典型反应
瞬态故障宇宙射线、电磁干扰锁步比较、ECC重试、纠正、记录
永久故障硬件老化、短路锁步比较、BIST复位、进入安全状态
时钟故障晶振失效、PLL失锁时钟监控切换备用时钟、复位
电压故障电源跌落、过压电压监控触发 FSP、关闭输出
通信故障总线错误、CRC错误总线监控、ECC重发、降级、报警

映射的核心原则是:故障的严重度决定反应的强度。可纠正故障优先纠正并记录;不可纠正但可隔离的故障,隔离故障模块并降级;不可隔离且影响安全目标的故障,立即进入安全状态或复位。

从故障到安全状态的完整链路

下面用一张信号链图展示 AURIX 从故障产生到安全状态响应的纵向路径。图中左侧为故障源,中间为 SMU 的汇聚与分发,右侧为安全域与安全状态。该图对应本节的核心知识结构,便于在配置时快速定位每个环节的寄存器与信号。

故障源 锁步核比较错误 指令/数据/地址不一致 SRAM/Flash ECC 可纠正/不可纠正 时钟/电压监控 PLL失锁、欠压/过压 总线/通信监控 CRC错误、超时 SMU 安全管理单元 故障汇聚 · 分组 · 反应配置 ALARM 组 0(高严重度) 锁步错误 · ECC不可纠正 ALARM 组 1(中严重度) 时钟失锁 · 电压异常 ALARM 组 2(低严重度) 可纠正ECC · 总线重发 状态寄存器 / 诊断记录 供软件读取与故障追溯 安全域与安全状态 安全域 0:动力/制动 反应:立即复位 / 触发 FSP 外部安全状态 安全域 1:车身/舒适 反应:降级运行 / 关闭相关执行器 安全域 2:诊断/通信 反应:记录故障 / 保持通信 / 上报 DTC 安全状态定义(示例) • 安全状态 ≠ 停机:系统在故障后仍维持最低安全能力 • 动力域安全状态:关闭电机 PWM 输出,保留 CAN 通信与诊断 • 车身域安全状态:关闭车窗/座椅执行器,保留门锁与照明

配置与观察要点

在实际工程中,配置 SMU 通常按以下顺序进行:首先使能各故障源的报警输出,例如在锁步核配置寄存器中打开比较错误报警;然后在 SMU 中为每个 ALARM 组设置反应类型,高严重度组建议配置为“复位”或“FSP 触发”;接着配置 FSP 引脚的行为,包括极性、脉冲宽度和外部安全芯片的握手协议;最后在软件中实现故障中断服务程序,读取 SMU 状态寄存器并记录故障码。

观察结果时,可通过读取 SMU 的 ALARM 状态寄存器确认故障是否被捕获,通过 FSP 引脚示波器波形确认外部反应是否触发,通过安全域的状态寄存器确认系统是否进入预期的安全状态。若故障未被捕获,应检查报警使能位和 ALARM 组映射;若反应不符合预期,应检查 ALARM 组配置和 FSP 协议设置。

锁步核负责“发现”,SMU 负责“分发”,安全管理单元负责“映射到安全域”,安全域负责“执行安全状态”。四者缺一不可,配置时建议按此顺序逐级验证。