冗余架构与投票表决 — 1oo2 / 2oo3 / lockstep

功能安全L3别名 voting redundancy · 投票冗余 · 1oo2 · 1oo2D · 2oo2 · 2oo3 · 1oo1 · voting architecture · 表决架构 · majority voting · 多数表决 · common cause failure · CCF · beta factor · 共因失效 · lockstep · diverse redundancy · heterogeneous redundancy · 异构冗余 · safety architecture相关[[topic-asil-decomposition]][[topic-dfa-fmeda-fta]][[topic-safety-mechanism-catalog]][[topic-e-gas-architecture]][[topic-iec-61800-5-2-stopping]][[topic-mcu-sbc-asil-d-integration]]

本质与导读

本质 单通道(1oo1)永远无法达到 SIL 2 以上,因为单点失效直接破安全功能。所有 SIL 2-4 / ASIL B-D 系统都必须用冗余架构:多个通道同时执行,通过 voting 逻辑决策输出。但冗余不是"加一个就好" —— 共因失效(CCF) 是真正的天花板:两个独立通道因为同一根本原因(同批 IC errata / 同电源 ripple / 同温度异常)同时失效,绕过整个冗余保护。本页拆解 5 种主流架构(1oo1 / 1oo2 / 1oo2D / 2oo2 / 2oo3)的物理含义 + 数学 PFH_d 公式 + β 因子(CCF 比例)+ 异构(diversity)降 β 的工程手段 + 实际工业 / 汽车 / 航空应用对比。

核心要点

  • 5 种主流架构:1oo1(无冗余)/ 1oo2(任一停)/ 1oo2D(双通道+诊断)/ 2oo2(双通道一致)/ 2oo3(多数表决)
  • 可用性 vs 安全性:2oo2 高可用低安全,1oo2 高安全低可用,1oo2D 兼顾
  • β 因子模型:,β 越小冗余越有效
  • β 典型值:同种 IC 同 PCB 10-20%,异构 + 物理分离 + 异电源 < 1%
  • 降 β 三招:异构(不同 IC / OS)+ 物理分离(PCB / 电源)+ 独立验证(团队 / 测试)
  • SIL 3 PFH_d /h 要求 β < 1%,CCF 是真正天花板
  • 汽车主流 1oo2DAURIX lockstep + SBC,成本与安全的 sweet spot

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

1. 5 种主流架构

冗余架构的命名规则:M out of N(MooN) 表示"N 个通道里至少 M 个同意才输出"。N 是总通道数,M 是触发条件。1oo2 表示"任一通道触发就停",2oo3 表示"3 选 2 多数同意才停"。

5 种冗余架构

1.1 1oo1 — 单通道(无冗余)

最简单,单 MCU 单通道。任何一个失效就完全失效。SIL 1 / ASIL A 上限,不能用于 SIL 2 以上系统。

适用:消费电子、低风险工业、QM 级汽车控制。

1.2 1oo2 — 任一触发(OR-gate)

双通道,任一通道认为危险就触发安全功能。voting 逻辑是 OR-gate。

  • 安全性高:两通道同时失效才漏检 — 概率 ,极低
  • 可用性低:任一误触发都让系统停 — 误停率高
  • 典型应用:工业 STO / E-stop(宁错杀不漏)

1.3 1oo2D — 双通道 + 诊断(降级)

1oo2 的升级版,增加 cross-check 诊断。当两通道结果不一致时:

  • 诊断判断哪通道错(通过自检 / 内置 BIST)
  • 错的通道排除,健康通道继续工作(degraded mode)
  • 报警 + 限时维护(几小时内修复)

1oo2D 的 "D" 表示 Diagnostics(诊断率 > 90%),是 SIL 3 / ASIL D 的主流方案。同时满足高可用 + 高安全。

1.4 2oo2 — 双通道一致(AND-gate)

双通道,两通道都同意才触发。voting 逻辑是 AND-gate。

  • 可用性高:不轻易误停 — 数据中心 / 通信典型
  • 安全性低:两通道协同失效就漏 — 实际 SIL 1
  • 典型应用:UPS、PLC 双热备份(防误停优先)

注意 2oo2 不能替代 1oo2 做安全,它的设计目标是"防误停",不是"防危险"。

1.5 2oo3 — 多数表决

三通道,3 选 2 多数同意才触发(majority voting)。可同时降级到 1oo2D。

  • 单通道失效仍正常(2oo2)
  • 双通道失效自动降到 1oo1(仍能工作)
  • 三通道失效才完全失效

代价:成本 3×,但安全性 + 可用性都最高。SIL 4(航空 / 铁路 / 核电)必需。

1.6 对比表

把上面 5 种架构横向对照,可以一眼看出通道数 / voting 逻辑 / 失效组合 / 可用性 / SIL 范围的对应关系——选型时按 SIL 等级反查右列,再判可用性约束。

架构通道voting安全失效条件可用性SIL 范围
1oo11直通单点SIL 1
1oo22OR两通道同时低(误停多)SIL 2/3
1oo2D2 + 诊断cross-check两通道同时高(降级)SIL 3
2oo22AND两通道协同高(不易停)SIL 1
2oo33majority两通道同时高(降级)SIL 3/4

2. 1oo2D 详解 — SIL 3 / ASIL D 主流

1oo2D 是汽车 EPS / EV 主驱 / 工业高端 servo 的标准方案,因为它同时解决两个根本问题:安全检测(任一不一致就报警) + 服务连续性(降级运行)

1oo2D degradation

2.1 三个状态机

① 正常态(双通道一致)

  • CH-A 和 CH-B 输出一致
  • cross-check 通过 → 输出 = 双通道一致值
  • 系统状态:full operation
  • SIL 3 / ASIL D 满足

② 单 fault(诊断捕获)

  • CH-A 输出漂移 / CH-B 输出正常
  • cross-check 发现不一致 → 启动自检
  • 诊断判断 CH-A 错 → 输出 = CH-B
  • 系统状态:degraded mode
  • SIL 降到 SIL 2(单通道运行)
  • 报警 + 限时维护

③ 双 fault(完全失效)

  • 两通道都漂移
  • 进入 safe state(STO)
  • 系统状态:shutdown
  • 必须修复后重启
  • 概率 ,极低

2.2 异构通道(diversity)

1oo2D 真正起作用的前提是两通道异构:

  • CH-A = AURIX TC3xx,CH-B = NXP S32K3(不同 MCU)
  • CH-A = ARM Cortex-M7,CH-B = Cortex-R5
  • 不同时钟 / 不同电源 / 不同 PCB layer
  • 软件团队也独立,代码独立验证

原因:抗 systematic 失效(同 errata / 同 firmware bug),否则两通道同样的 bug 会同时被触发,冗余形同虚设。

2.3 cross-check 实现

cross-check 是 1oo2D 的灵魂——两通道必须实时互相验证,否则失效就漏检。工程上靠下面 4 个手段叠出 DC > 90%:

  • SPI / CAN 心跳 + checksum
  • 定期 challenge-response(类似 e-GAS Q&A WD)
  • 输出差异 > 容差(典型 + debounce)→ 触发降级
  • DC(诊断覆盖率)目标 —— 这是 "1oo2D" 名字中 D 的来源

2.4 PFH_d 估算

双通道 PFH_d 由两部分构成:

代入典型值:

  • (单 MCU,SIL 2 级)
  • (异构 + 物理分离)
  • (test interval)

得: — SIL 3 阈值 /h 余 10×。

注意:第二项 主导(CCF 是 PFH_d 的瓶颈),这是为什么 β < 1% 是 SIL 3 的硬约束。

3. CCF 与 β 因子 — 冗余的真正天花板

冗余架构的核心敌人是 Common Cause Failure(CCF) —— 两个独立通道因为同一根本原因同时失效。CCF 的概率由 β 因子量化,β = 共因失效率 / 总失效率

CCF 与 β 因子

3.1 CCF 三大类来源

物理 CCF

  • 同批 IC 同 EOS 烧毁(同一根原料 wafer)
  • 同温度异常击穿
  • 同振动 / 冲击疲劳

环境 CCF

  • 同一 EMI 干扰(雷击 / 电机近场)
  • 同一电源 ripple(共用 12V)
  • 同一温度环境(共用 PCB / 机箱)

软件 CCF

  • 同 errata 同时触发
  • 同 firmware bug
  • 同 OS 同 task scheduling

3.2 β 因子模型

IEC 61508-6 Annex C 给出 β 模型:

其中 是独立失效部分(可被冗余抓住), 是共因失效(冗余抓不住)。

典型 β 值:

架构 diversityβ 范围
同种 IC,同 PCB10-20%
同种 IC,异构 PCB5%
异构 IC,同 PCB2-3%
异构 IC,异构 PCB,异构电源0.5-1%
异构 IC + 异构软件团队 + 故障注入验证< 0.5%

3.3 β 决定 SIL 等级

PFH_d 关于 β 的曲线:

  • β = 0.1%:PFH_d ≈ /h → SIL 4
  • β = 1%:PFH_d ≈ /h → SIL 3
  • β = 5%:PFH_d ≈ /h → SIL 2
  • β = 10%:PFH_d ≈ /h → SIL 2 边缘

β > 1% 时 SIL 3 失败,即使两通道完全独立运行也无济于事。

3.4 降 β 的工程手段

β 不是天生固定,工程上有 4 类干预,叠加使用可把 β 从 10% 压到 0.3%——这是 SIL 3 项目的常规组合,缺一条都可能在审计时被挑出来。

手段β 降低说明
异构(diversity)5-10×不同厂商 / 架构 / OS
物理分离3-5×不同 PCB / 机箱 / 电源 / 时钟
独立验证2-3×两团队独立开发 + 独立测试
故障注入测试验证 β主动制造 CCF 场景

实战推荐:三招同用,可把 β 从 10% 降到 0.3%,SIL 跨等级。

4. 实际应用 — 汽车 / 工业 / 航空

不同行业的成本 / 体积 / 寿命要求差异巨大,选择架构有强烈倾向性。

实际应用

4.1 汽车 — 1oo2D 占主流

汽车量产场景 cost 极度敏感,3 颗 MCU 的 2oo3 几乎不可行;1oo2D 用 lockstep + SBC 异构监控就能达 ASIL D,是当前主流方案。三个典型 case:

  • EPS(Electric Power Steering):AURIX TC3xx lockstep(2 个 TriCore 硬件同步)+ SBC TLE9263 异构监控 = 1oo2D(ASIL D)
  • EV inverter 主驱:e-GAS L1+L2 同芯片不同 task + SBC 异构 WD = 1oo2D(ASIL D)
  • BMS / OBC:ASIL D 主路 + ASIL B(D) 备路,ASIL 分解降成本

选 1oo2D 的原因:成本敏感(mass production),3 个 MCU 不划算。AURIX 内部 lockstep core 提供 1oo2 硬件级,SBC 提供 D(诊断)。

4.2 工业 — 1oo2 / 2oo3 看 SIL 等级

工业场景 SIL 等级跨度大(SIL 1-4),架构选择按等级走——SIL 2 用 1oo2 即可,SIL 3+ 化工 ESD 必上 2oo3,数据中心 UPS 偏可用性而非纯安全。

  • 工业 STO(SIL 2):1oo2 双 opto 通道 + 反馈
  • 化工 ESD(SIL 3-4):2oo3 PLC + majority voter
  • 数据中心 UPS:2oo2 + N+1 冗余(高可用优先)

详见 topic-iec-61800-5-2-stopping

4.3 航空 / 铁路 / 核电 — 2oo3 / 高阶

这些行业单价高、寿命长,成本约束几乎消失,可以直接走最高安全等级——异构 + 物理分离 + 多重 voter 全堆,2oo3 是入门,2oo4 / 高阶在核电常见。

  • 航空 FCS(DAL A):3 个异构计算机(不同 CPU + OS + compiler)+ 投票
  • 铁路 ATP(ETCS Level 3, SIL 4):2oo3 + 物理分离 + 异步时钟
  • 核电 SCRAM:2oo4 / 2oo3 多重(IEC 61513 / IEEE 603)

这些行业单价高(数千美元一台),成本不是约束 — 优先选最高安全等级。

4.4 为什么 EPS 选 1oo2D 不是 2oo3?

EPS 卡在量产成本 / PCB 面积约束上——SIL 3 / ASIL D 已达,再叠 2oo3 是 over-engineering。下面 5 维对比看清楚边界:

维度1oo2D EPS2oo3 EPS
MCU1 AURIX + 1 SBC3 AURIX + 仲裁
PCB~ 8 cm²~ 25 cm²
成本~ $25~$75
量产 OK?✗ 不划算
SILSIL 3 / ASIL DSIL 4 over-engineered

EPS 是 mass-production 件,1oo2D 是 sweet spot。

5. lockstep 是 1oo2 还是 1oo2D?

lockstep 是硬件级冗余:两个 CPU core 同步执行同代码,每周期硬件比对结果。AURIX TC3xx 在芯片内部实现,客户看到的是单个 MCU。

维度lockstep等价架构
通道2(同芯)1oo2(硬件)
检测硬件比对1oo2D 的诊断
diversity同 IC 内部β 较高(同 IC errata)
单芯能否 SIL 3?是,但 β 受限+ SBC 才能 ASIL D

实践中:lockstep 提供"硬件层 1oo2",但 β 较高(同 IC errata 是 CCF 来源)。所以汽车 ASIL D 通常 lockstep MCU + 异构 SBC,SBC 提供"芯片间 diversity",β 降到 1% 以下。

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

6. 工程 cheat-sheet

下表组织冗余架构的选型决策。

场景推荐架构关键 SM
QM / ASIL A 控制1oo1单通道 + WDT
工业 STO SIL 21oo2双 opto + 反馈
汽车 ASIL D1oo2Dlockstep MCU + 异构 SBC
化工 SIL 31oo2D双 PLC + diagnostics
航空 DAL A2oo3 异构3 不同 CPU + 投票
铁路 ATP SIL 42oo3异构 + 物理分离
数据中心 UPS2oo2 + N+1高可用
核电 SCRAM2oo4 / 2oo3 多重极度冗余

β 因子降低:异构(diversity) > 物理分离 > 独立验证(按效果排序)。

7. 常见误区

工程实践中遇到的冗余架构陷阱,主要来自"理解 voting 但不理解 CCF"。

  • ❌ "两个 MCU 就 SIL 3 了" — 不对,β 决定,同种 IC 同 PCB β 太高
  • ❌ "lockstep = ASIL D" — 不对,lockstep 是 1oo2 不是 1oo2D,缺诊断 + diversity
  • ❌ "2oo2 比 1oo2 安全" — 反!2oo2 安全性低(协同失效),只是可用性高
  • ❌ "PFH_d 用独立公式 " — 不对,必须加 CCF 项,通常 CCF 主导
  • ❌ "异构很贵,可不可以省" — 不能,SIL 3 / ASIL D 硬要求 β < 1%
  • ❌ "voting 一定要硬件" — 软件 voting 可,但 voter 本身必须高 SIL

8. 自检题

前 3 题考 5 种架构,4-6 考 CCF 与 β,7-10 考实际应用。

  1. 1oo2 和 2oo2 的 voting 逻辑各是什么?哪个安全性高?
  2. "1oo2D" 的 D 表示什么?要求 DC 达到多少?
  3. 单通道 1oo1 能做到什么 SIL?为什么不能更高?
  4. 写出双通道 PFH_d 公式(包含 β 项)
  5. 同种 IC 同 PCB 时 β 约多少?异构 + 物理分离 + 异电源时 β 约多少?
  6. 想做 SIL 3 系统,β 上限是多少?需要哪三类手段?
  7. AURIX TC3xx 内部 lockstep 等价于什么架构?够 ASIL D 吗?
  8. 为什么 EPS 选 1oo2D 而不是 2oo3?
  9. 工业 STO SIL 2 / 化工 ESD SIL 3 / 航空 DAL A 各选什么架构?
  10. 2oo2 适合什么场景?它的设计目标是什么?

Cross-references