Lockstep Core 深度 — dual-CPU + comparator (ASIL D 必备)

功能安全L2别名 lockstep · dual-core lockstep · CPU comparator · DCC · split-lock · Aurix DCC

本质与导读

本质 ASIL D 要求单点 PMHF ≤ 10 FIT,而单核 MCU 物理上做不到 —— 一个 alpha 粒子打中 PC / ALU 引起 SEU,SW 根本侦测不到。Lockstep 用两个完全相同的 CPU 同步跑同一指令流、硬件 comparator 每 cycle 比对输出,不一致即 trap 进 SafeState;Master/Slave 物理隔离 + delay 1-2 cycle 错开防共因失效,把 PMHF 从 ~100 压到 ~10 FIT。

主线坐标:横轨 · 功能安全(跨站) · ↑ 全景主线

1. Lockstep 架构

下图把 dual-CPU + comparator 一次说清:

Lockstep Core — dual-CPU + comparator

3 件结构:

  • Master CPU — 主核,运行 ASIL D 任务,输出对外
  • Slave CPU (mirror) — 完全相同结构,执行同一指令,但输出对外
  • CPU Comparator (CCC) — 硬件对比器,每 cycle 比 PC / GPR / ALU / Bus 输出
  • delay 1-2 cycle — 错开,避免共瞬态 (共因/共模瞬态 CCF — 时间分集, per ISO 26262-9 DFA)

不一致 → Trap (NMI / FIQ) → SafeState 切换。


2. 为什么 ASIL D 必须 lockstep

ASIL D 物理约束推导:

  • 目标:PMHF ≤ 10 FIT (Probabilistic Metric for HW Failures)
  • 单核 SEU FIT:典型 28nm CMOS ≈ 200-500 FIT (alpha + cosmic ray)
  • 单核 SW 检测能力:仅 50-70% (用 CRC + redundancy 算法)
  • 单核 PMHF:200 × (1-0.5) = 100 FIT (远超 10 FIT)
  • lockstep 检测能力:≥ 99%
  • lockstep PMHF:200 × (1-0.99) = 2 FIT ✓

结论:无 lockstep ASIL D 单核 PMHF 物理上做不到。


3. CPU Comparator 比什么

CCC 每 cycle 对比 5 类信号:

3.1 PC (Program Counter)

PC (Program Counter) 的工程特点 + 应用场景:

  • 最关键,PC 不一致 = SEU 翻位
  • 检测概率 ~100%

3.2 GPR (通用寄存器)

GPR (通用寄存器) 的工程特点 + 应用场景:

  • R0-R15 / D0-D15 全部对比
  • ALU 中间结果 + caller-saved register

3.3 ALU 输出

ALU 输出的工程特点 + 应用场景:

  • 加法 / 乘法 / 移位 / 逻辑 结果
  • compare flag (Z/N/C/V)

3.4 Bus 写

Bus 写的工程特点 + 应用场景:

  • Memory / Peripheral 写地址 + 数据
  • 包括 PWM / SPI / CAN

3.5 Trap / interrupt 状态

Trap / interrupt 状态的工程特点 + 应用场景:

  • 中断响应是否一致
  • Trap 时 PC 跳转地址

4. Master 与 Slave 物理布局

Lockstep 防共因失效(CCF):

  • Master / Slave 物理布局隔离 — die 上分开 200μm+(防同 alpha 粒子打中两核)
  • 不同 metal layer routing — 防共线短路
  • 独立 clock tree — Master / Slave 独立 buffer
  • 独立 power gating — Vdd_cpu 分两路
  • 不同 standard cell library 变种 — 部分 MCU 用 mirrored cell (mirror layout)

ISO 26262 Part 9 DFA 6 项独立性的硬件实现。


5. Aurix DCC (Infineon)

Aurix TC397 (主流 EV ASIL D MCU) lockstep:

5.1 架构

Aurix DCC 架构的工程特点 + 应用场景:

  • TC397 6 个用户可见 TriCore CPU (CPU0-CPU5)
  • 最多 4 个 (CPU0-CPU3) 各配一个专用隐藏 checker 核(lockstep partner),对软件不可见、逐 cycle 影子比对 — 启 CPU0 lockstep 消耗 CPU1
  • 非 lockstep 核跑独立任务 (ASIL B 应用)
  • delay = 2 cycle
  • CCC 硬件在 SCU module

5.2 配置 (SCU register)

Aurix DCC 配置的工程特点 + 应用场景:

// 启 lockstep
SCU_DCCEN.B.EN = 1;

// 配 trap handler
SCU_DCCTRAP_PRIO = 0x1F;  // 最高优先级
trap_install(TRAP_DCC, dcc_trap_handler);

// 在 CPU0 上使能 lockstep(engage 其专用隐藏 checker 核,非占用 CPU1)
SCU_CPU0_CTL.B.MODE = LOCKSTEP_EN;

5.3 故障注入测试

故障注入测试的工程特点 + 应用场景:

  • DCC 必须做 fault injection
  • SCU_DCCFI register 可注入假错误
  • 验证 trap handler + SafeState 切换 ≤ 100μs

6. NXP S32K3xx split-lock

S32K3 (国产 EV 主流) lockstep:

  • 架构:Cortex-M7 dual-core,split-lock 切换
  • mode:Split mode (双 ASIL B 独立) vs Lock mode (ASIL D lockstep)
  • 切换时机:reset 时设定,运行中不可改
  • CCC:ARM internal Fault Management Module (FMM)

NXP S32K3 详见 topic-mcu-sbc-asil-d-integration


7. RH850 G3KH (Renesas)

Renesas RH850/U2A (日系 EV) lockstep:

  • 架构:G3KH dual-core,完全相同
  • CCC:Renesas Safety Monitoring Module (SMM)
  • delay = 2 cycle
  • 主用日系 (丰田 / 本田) + 部分中国 (吉利)

8. ARM Cortex-R52 split-lock

ARM Cortex-R52 (新兴 ASIL D core):

  • 架构:dual / quad-core,各 split-lock
  • CCC:ARM Safety Extensions
  • vendor:NXP S32R5 / TI TDA4 / 部分 Renesas

ARM 趋势:逐步取代 TriCore / PowerPC,国产化也跟随 ARM 路线


9. lockstep 故障 5 大模式

lockstep 故障 5 类:

9.1 CCC 内部故障

CCC 内部故障的工程特点 + 应用场景:

  • CCC 本身 SEU
  • 解决:CCC 做 BIST + 周期 self-test
  • ASIL D 必带 LBIST

9.2 transient mismatch (false trigger)

transient mismatch (false trigger) 的工程特点 + 应用场景:

  • 单 cycle 偶发不一致(SEU 自动恢复)
  • SW 处理:统计 + threshold(如 < 3 次/小时 ignore)

9.3 永久 mismatch

永久 mismatch 的工程特点 + 应用场景:

  • 一核坏 → 持续 mismatch
  • 解决:立即 SafeState + 不 retry

9.4 时钟相位偏

时钟相位偏的工程特点 + 应用场景:

  • Master / Slave clock skew → 假 mismatch
  • 解决:严格 clock tree design + 工厂校准

9.5 SafeState 切换失败

SafeState 切换失败的工程特点 + 应用场景:

  • trap handler bug / stack overflow
  • 解决:hardware SafeState fallback (SBC level)

10. lockstep 性能成本

lockstep 的工程取舍:

  • die size +50-80% — 双 CPU 占面积
  • 功耗 +60-80% — 双 CPU 满 dynamic power
  • 价格 +30-50% — MCU 单价上升
  • 性能:单线程性能不变(同步执行)
  • 冗余资源:无(不能做并行计算)

总评:为 ASIL D 必付的代价,没 lockstep ASIL D MCU 物理上做不到


11. 国产 lockstep MCU

国产 ASIL D MCU lockstep 现状:

  • 杰发 AC7840 — Cortex-M4 lockstep,ASIL B+ cert
  • 国民技术 N32G45x — Cortex-M4 lockstep,ASIL B cert
  • 核芯互联 — Cortex-M7 lockstep,ASIL D 在路上
  • 芯擎 ELXi — 自研 multi-core,ASIL D cert

国产差距:lockstep 实现技术已有,但cert 跟不上 + Tier 1 信任度低。


12. 一句话总结

Lockstep core = ASIL D MCU 的物理必要条件 — 单核 PMHF 物理上 ≥ 10 FIT,无 lockstep 凑不齐 ASIL D。Master + Slave + CPU Comparator (CCC) + 2 cycle delay + 物理隔离 + ECC + BIST 6 件套是标配。主流:Aurix DCC (60%+) / S32K3 split-lock (国产 EV) / RH850 G3KH (日系) / Cortex-R52 (新)。新项目 ASIL D 选 MCU 必看 lockstep cert + DCC SW 支持 + Tier 1 经验,国产 ASIL D MCU 仍稀缺


核心要点

  • ASIL D 单核 PMHF 物理上 ≥ 10 FIT,必须 lockstep
  • Master + Slave + CCC + 2 cycle delay + 物理隔离
  • CCC 比 5 类信号 (PC / GPR / ALU / Bus / Trap)
  • Aurix DCC / S32K3 split-lock / RH850 G3KH 三大主流
  • lockstep cost: die +50-80% / 功耗 +60-80% / 价格 +30-50%

缩写表

只列本页用到的工业标准缩写;通用英语…

只列本页用到的工业标准缩写;通用英语 / 单位 / 月份 / 我们的 层/Lx tag 不列。覆盖不到的术语见正文 inline 注释。

缩写全称中文 / 备注
ASILAutomotive Safety Integrity LevelISO 26262 安全完整性等级 QM→A→B→C→D
PMHFProbabilistic Metric for Hardware Failures硬件随机失效概率指标
FITFailures In Time1e9 小时失效率单位 (1 FIT = 1 failure / 1e9 h)
MCUMicrocontroller Unit微控制器(本页多指车规多核 MCU)
NXPNXP Semiconductors恩智浦半导体
ISOInternational Organization for Standardization国际标准化组织
LFMLatent Fault Metric潜伏故障度量
SPFMSingle-Point Fault Metric单点失效度量
PWMPulse Width Modulation脉冲宽度调制
SPISerial Peripheral Interface串行外设接口
CANController Area Network控制器局域网
CCFCommon Cause Failure共因失效
DFADependent Failure Analysis相关失效分析(ISO 26262-9)
EVElectric Vehicle电动车
TITexas Instruments德州仪器
SBCSystem Basis Chip系统基础芯片(电源 + 收发器 + 监控集成)

Cross-references