共因失效 (CCF) — DFA 量化 + lockstep 三重缓解 + 反模式
本质与导读
本质 CCF = 单 root cause 同步打中多个本应独立的元件,凡声称"两通道独立 / lockstep 等于 ASIL D"都得先证它不在场;它与无共因的 cascading 完全不同,FFI 只挡 cascading,真 Independence = FFI + CCF 免疫。算账的硬约束是"先减后乘":λ_CCF = β·λ 单独算,(1-β)·λ 才是独立部分,die-level 残余只能靠架构双 MCU 根治。
1. 一图看懂 CCF
CCF 和 Cascading 的区别是 DFA 的入门第一关 — 工程师反复混淆"两通道一起挂了"这件事到底是哪种。两者完全不同:CCF 的本质是一个 root cause 同步打中多个 victim(共时性 Δt ≈ 0),Cascading 的本质是一个 victim 把另一个 victim 拖下水(链式,Δt > 0,无共因)。下图把两者并排画出来,关键在于看时间戳和 root cause 的位置。
为什么这个区分这么重要?因为 FFI (Freedom from Interference) 只覆盖 cascading,完全不覆盖 CCF。OEM 评审会反复退回的就是"声称 independent 但只证了 FFI" — partition / WD / memory protection 这些 FFI 手段只解链式蔓延,对共因(共电源 / 共时钟 / 共算法)毫无防御。Independence 必须同时论证 FFI(覆盖 CF)+ CCF 免疫,两件事。
2. 标准锚点 — ISO 26262 vs IEC 61508
CCF 的工程化要查两套标准 — ISO 26262(汽车域)+ IEC 61508(通用域)。两者覆盖范围有差异、量化哲学有冲突,但实战必须混用 — 用 ISO 找 DFI(定性),用 IEC 算 β(定量)。
2.1 核心条款锚点
ISO 26262 把 DFA 分散在 part 9 + part 11 两层:part 9 §7 + Annex C 给出通用方法学和 7 类 DFI 清单,part 11 §8 是 2018 版新加的 16 页半导体专章,把方法学落到 die 级。IEC 61508 则用 part 6 Annex D 的 37 题评分表给出 β factor 的反查方法。
2.2 两套体系的哲学冲突
ISO 26262 倾向"监测共享资源"(定性 — 看是否有共因路径 + 有没有相应安全机制),IEC 61508 倾向"β 评分量化"(定量 — 给 β 一个数值,直接进 PFD 公式)。ISO 不强推 β factor 的原因是评分主观性强 — 37 题答案靠工程师判断,不同人打分差异大。但 FMEDA 实战还是绕不开 β(否则没法算 PFD),通常折中:用 ISO Annex C 列 DFI,用 IEC Annex D 量化 β,两套都进 DFA Report。
来源:ADI EngineerZone — ISO 26262 part 11 / Lorit Consultancy — 量化 DFA
3. 7 类 DFI — ISO 26262-9 Annex C
DFA 的核心是有一张完整的 DFI 清单对照查 — 否则就是"凭感觉",评审一问就漏。ISO 26262-9 Annex C 给出 7 类 coupling factor / DFI,适用 system / hardware / software / semiconductor 各层,Lorit 咨询把它和 IEC 61508 的 37 题做了映射:
7 类中最易漏的 3 类(图中 ★ 标):
- ⑤ Shared Resource — 5 大物理源(电源 / 时钟 / 复位 / 内存 / 总线)都在这,工程师以为查了电源就完事,其实时钟 + 复位 + 内存 + 总线必须全查
- ⑥ Systematic Coupling — 同一 software lib / 同一 OS / 同一算法,"软件 copy" 不算冗余的根因就在这一类
- ⑦ Environmental Immunity — 温度 / 振动 / EMI / 湿度,共腔体冗余系统(同 cabinet)在这里最容易翻车
下面按 5 大物理源切分(都映射到 ⑤ Shared Resource,但每个的工程对策不同),逐个讲清。
3.1 共享电源 — SBC 双 rail 看似独立其实共 die
工程师最常踩的坑是"我用了双 LDO 就独立了" — 真相是即使两路 5V 是独立 rail,同一颗 SBC die 内的 bandgap reference / charge pump / OV 比较器 是单点。一次 bandgap drift 同时让两路输出失准。Infineon TLF35584 的解法是提供"独立 reference 的 UV/OV 监测",把 reference 路径物理隔开 — 但这只是部分缓解,die-level 共因仍在。真双独立必须两颗不同 vendor 的 PMIC。
3.2 共享时钟 — 主 XTAL 单点 / 同 PLL 锁相 drift
主时钟单点是最经典的 CCF — 一颗 XTAL 失效全 MCU 死。但更阴险的是同 PLL 锁相:即使 dual core,共用一个 PLL 的话 frequency drift / jitter / glitch 同步发生,lockstep 比较器看不出问题。AURIX TC3xx 的对策是要求独立 backup clock(LP OSC vs main XTAL),关键路径用 LP OSC 兜底。
3.3 共享复位 — checker reset 必须独立 WD 驱动
Reset domain 重叠是另一类隐蔽 CCF — 主 MCU 的 PORST 拉低把 checker MCU 也拉死。工程对策是 checker core 的 reset 必须由独立 watchdog 驱动,主 MCU PORST 不能进入 checker reset domain。
3.4 共享内存总线 — 双核访问同 RAM 的 ECC 风险
双核访问同 RAM = 一次 ECC double-bit error 同时阻塞双 core。AURIX 的解法是 lockstep CPU 不复制 RAM 本体,但把 PMI/DMI 接口 + ECC encode/decode 全放在 area of duplication 内 — 接口级冗余,RAM cell 共享但 ECC 路径双份。
3.5 共享算法 / 软件库 — 软件 copy 不算冗余
这是 7 类 DFI 中最被低估的一类。同一 PWM scheduler / 同一 motor control lib / 同一 CRC 实现 = 一个 bug 同时坏两通道。ISO 26262-9 明确把软件共因列为 DFI 第 ⑥ 类(Systematic Coupling),OEM 评审会直接问:"diverse software 证据在哪?"工程对策是软件多样性 — 不同团队 / 不同语言 / 不同算法实现同一功能,典型如一条通道 FOC + 另一条通道直接转矩。
4. CCF / CF / FFI / Independence 四角关系
四个概念混用是评审被拒的重灾区。下图把它们的覆盖关系画清楚 — 关键陷阱在于:Independence 不等于 FFI,FFI 只是 Independence 的一半。
四角关系一句话总结:
- Dependent Failure = CF + CCF 的并集(失效概率 ≠ 独立元件概率乘积的总集合)
- FFI = 只覆盖 CF,通过 partition / WD / memory protection 实现
- Independence = FFI + CCF 免疫的交集
- ASIL 分解的 "sufficiently independent" 必须用 DFA 量化论证,不是声明
5. CCF 量化 — β factor / α factor / FMEDA 集成
DFA 的定性查完之后必须进入定量阶段 — 否则没法算 PFD/PFH,也没法做 ASIL 分解的数学证明。这一节给出 β factor 公式 + 典型范围 + FMEDA 集成的正确顺序。
5.1 β factor 的基本公式
β factor 把单通道总失效率 λ 拆成两部分 — 共因部分 + 独立部分:
PFD 双通道(1oo2)公式必须先减后乘:
独立项平方衰减(两通道概率相乘),CCF 项线性衰减(冗余无效)。这就是为什么 CCF 即使 β 很小,也常常是 PFD 的主导贡献。
5.2 β 典型范围
β 不是凭感觉拍,标准给出明确范围:
- 可编程电子(IEC 61508-6 Annex D):0.005 – 0.05
- 现场设备(传感器 / 执行器):0.01 – 0.1
- 良好工程实践:0.001 – 0.05
- 差工程实践:可达 0.25
- exSILentia 工具默认值:0.1(非常保守)
5.3 α factor — 3 通道以上用
β factor 是 2 通道模型,3 通道以上必须用 α factor(2oo3 表决 / TMR 三模冗余)。 表示 n 个元件中刚好 k 个失效的占总失效率比例,可以表达"3 个全挂"vs"3 个挂 2 个"的不同概率,比 β 更细。其他常用模型族:Multiple Greek Letter (MGL)、Binomial Failure Rate、Alpha Factor。
5.4 FMEDA 集成的两个易错点
易错 错法 ①:用 λ 不是 (1−…
易错 错法 ①:用 不是 算独立项 → CCF 部分被双重计算 错法 ②:完全忽略 β → PFD 严重低估,可差 10× 正确:先减再乘 — 进平方项, 进线性项
5.5 SFF 公式作为旁支
虽然 SFF 不直接含 β,但 FMEDA 输出表里必含:
CCF 部分通常进 (危险未检出),除非有专门的 CCF 检测机制 — 这是为什么"双 watchdog 真独立 vs 假独立"会影响 SFF。
6. IEC 61508-6 Annex D 评分表
β 的具体数值怎么定?IEC 61508-6 Annex D 给出 37 题评分流程 — 俗称 "beauty contest":每个工程对策能加分,累计分越高 β 越小,然后查表反推。
37 题分布在 5 大维度:物理隔离 / 功能独立 / 多样性 / 维护测试 / 人员培训。每个维度有 5-10 题,典型问题如"两通道是否物理分离 ≥10cm"、"是否用 diverse compiler"、"维护人员是否独立两班倒"。每题答 yes 加固定分,累加后查表反推 β。
ISO 26262 不强推 β 的核心理由 — 评分主观性强:同一系统不同评审给的累计分能差 30+ 分,β 差 5-10×。所以 ISO 推"监测共享资源"作为补充 — 即使 β 估错了,只要有 runtime 监测能在 CCF 发生时报警进 safe state,残余风险可控。工程实战是两套混用:Annex D 给 β 初值,Annex C 7 类 DFI 给监测清单。
来源:Lorit Consultancy — 量化 DFA / ADI — Quantify CCF
7. AURIX TC3xx Lockstep — 3 重 CCF 缓解 + 残余风险
Lockstep core 是 ASIL D 的金牌方案,但 lockstep 自身有 die-level CCF — 两个 core 在同一颗硅片上,共时钟、共电源、共 wafer。Infineon 在 AURIX TC3xx 用了三重对策,但工程师必须知道哪些 CCF 是 lockstep 解不了的。
7.1 三重缓解机制
三重缓解分别打时间相关性 / 空间相关性 / 信号方向相关性三种共因机制 — 三个维度上让 master 和 checker 在同一时刻看到的世界不一样,任何"同步影响两核"的干扰都会被比较器捕获:
7.2 残余风险 — lockstep 解不了的 CCF
三重缓解之外仍有不可消除的 die-level CCF:
- 同 die wafer defect — 一颗硅片局部缺陷,两核同位置都中招
- 同 fab lot 系统性失效 — 同批次工艺漂移
- 同时钟 PLL drift — 即使 backup clock,PLL 锁相期内仍同步
- 同 power rail UV/OV — 整片掉电没法靠 lockstep 检测
这些必须靠架构层冗余 — 双 MCU + 双 PMIC + 不同 fab。所以**"lockstep = ASIL D"是反模式**:lockstep 只解 random HW fault,不解 systematic,也不解 die-level CCF。要做 fail-operational EPS / 主驱,必须双独立 MCU。
7.3 AURIX Safety Manual 怎么记录 CCF assumption
Infineon 在 TC3xx Safety Manual 里把每条 dependent failure cause 配一个 adequate safety measure,典型 assumption 条目:
- "Avoid adjacent pins for digital acquisition" — 防 pin / package 物理共因
- "Use independent Backup Clock" — 防时钟共因
- "Use independent reference for UV/OV monitoring" — 防 reference 共因
集成商必须把这些 assumption 落到 system level Assumption of Use (AoU) 文档,DFA Report 交叉引用。
来源:Infineon AURIX TC3xx AN1001
8. SBC 双 watchdog 真独立 — 3 方案对比
双 watchdog 是"看似冗余实则共因"的典型 — 同 die 上塞两个 WD 不算真冗余。下图把三档方案的 CCF 缓解程度并排,工程实战 ASIL D 单 ECU 选方案 ②,fail-operational EPS 必上方案 ③。
三档方案差异:
- 方案 ① TLE9471 — 单 die 内置 window WD + timeout WD,只解软件 hang(给两种 timeout 算法),不解 die-level 共因。来源:Infineon TLE9471-3ES
- 方案 ② TLF35584 — flexible Q&A watchdog(question/answer 协议)+ 独立 reference 的 UV/OV monitor。逻辑独立(Q&A 不是简单超时)+ 物理独立(reference 路径单独走线),但仍同 die 同 fab。来源:Infineon TLF35584QKVS2
- 方案 ③ 真双 PMIC — 主 SBC + 外置独立 WD chip,不同 vendor / 不同 fab / 不同电源拓扑,所有 CCF 维度都隔开
方案 ② 是 ASIL D 单 ECU 的实战折中,够用但 die-level 残留;方案 ③ 是 fail-operational(EPS / 主驱)必上的架构,成本高但 CCF 全维度免疫。
9. EPS B(D)+B(D) 双通道 — 5 维 CCF 红线
ASIL 分解的 B(D)+B(D) 是 EPS / 主驱主流方案(见 ASIL 分解 deep §5),但合规性的关键不在"两通道"而在"5 维 CCF 全独立"。下图给出一个标准实施 — 每一维都对应 DFA Report 里一项独立性论证。
5 维 CCF 红线对应 DFA 论证条目:
| 维度 | 红线要求 | DFA Report 证据 |
|---|---|---|
| ① PMIC | 不同 vendor | BOM + 独立电源拓扑图 |
| ② MCU | 不同型号 + 不同 OS | 软件架构图 + AoU |
| ③ 软件 | diverse 算法 | 代码分支 + 算法对比文档 |
| ④ 传感器 | 不同物理原理 | sensor data sheet + 极对数差异 |
| ⑤ 执行链 | 三相绕组 + 栅驱 + STO 全独立 | 原理图 + 独立 supply trace |
来源:ADI — dual AMR for safety / Impedyme — 6-phase PMSM
10. DFA 工作流 + Report 模板
DFA 不是 review 表打钩,而是结构化的分析流程。工作流分两条路径 — Top-down(架构期)+ Bottom-up(设计稳定后),最后产出统一的 DFA Report。
10.1 两条工作路径
DFA 不是单向流程,而是 deductive(顶向下)+ inductive(底向上)双向扫描,各自负责不同生命周期阶段 — 架构期没有完整的 DFI 实体只能从 SG 倒推,设计稳定后底层 DFI 清单完整就可以正向扫:
- Top-down (deductive) — 从顶层 safety goal violation 倒推可能的 CCF / CF 路径,架构期用
- Bottom-up (inductive) — 从 7 类 DFI 清单出发,正向推可能 fail,设计稳定后用
实战通常两套并用:架构期 top-down 锁定关键 CCF 路径,设计稳定后 bottom-up 查漏。
10.2 DFA Report 必含条目
DFA Report 是 safety case 的硬证据之一,缺一项评审都会打回 — 评审看的是结构完整性 + 量化数据 + 验证闭环三件套同时齐全:
- CCF 分析:7 类 DFI 逐项 + 缓解措施 + 残余风险
- CF 分析:cascading 路径 + FFI 措施 + 验证证据
- 量化:β factor(IEC 61508-6 Annex D 累计分 + 反查表)+ FMEDA 集成
- Verification cross-ref:每条 DFA 论证指向 verification plan 的具体 test case
- Assumption of Use:供应商 SEooC 的 CCF assumption 接住清单
评审红线 DFA Report 没指…
评审红线 DFA Report 没指向 verification plan 的 cross-ref = 必被打回。OEM/TÜV 评审最常问的是"这条独立性论证的 test evidence 在哪条 testing record?"
11. 5 个 CCF 反模式
工程师反复踩的 5 个坑 — 都是 OEM/TÜV 评审会直接拒的:
| 反模式 | 真相 | 评审会拒的话术 |
|---|---|---|
| "DFA 走过场" | 没量化 / 没 verification 闭环 | DFA Report 没有指向 verification plan 的 cross-ref |
| "假独立" 共 PMIC/共 XTAL | root cause path 单点 | 独立性声明在哪条 DFI 上量化论证 |
| "软件 copy 算冗余" | systematic coupling 满分 | diverse software 证据在哪 |
| "Lockstep = ASIL D" | 只解 random HW,不解 die-level | wafer defect 怎么缓解 |
| "β = 0.05 默认通用" | 不查 Annex D 评分 | 37 题评分表请出示 |
12. 与其它 Part 关联
CCF 不是 Part 9 §7 独自负责,而是横跨多个 Part 的协同活动 — 每个 Part 都在 DFA 链条上贡献证据。
- Part 3 (HARA) — Safety Goal ASIL 决定 DFA 严格程度
- Part 5 §9 (HW metrics) — PMHF 计算必须含
- Part 6 §7 (软件架构) — 软件多样性论证 + Systematic Coupling 缓解
- Part 9 §5 (ASIL 分解) — 独立性论证依赖 DFA
- Part 9 §7 + Annex C (本主战) — DFA 方法学 + 7 类 DFI
- Part 11 §8 (半导体) — die-level DFA assumption 落地
- IEC 61508-6 Annex D — β 量化反查表
- IEC 61508-2 §7.4.4(7.4.4.2/7.4.4.3,Table 2/3) — HFT + SFF 架构约束(Route 1H)
核心要点
- CCF 是"一因多果同步"(共因 root),CF 是"因果链条"(无共因) — FFI 只覆盖 CF 不覆盖 CCF,Independence = FFI + CCF 免疫两者必须分开论证
- 7 类 DFI 必查(ISO 26262-9 Annex C):Shared Information / Communication / Identical Type / Unintended Interface / Shared Resource / Systematic Coupling / Environmental Immunity — 后三类最易漏
- 5 大物理源 全在 Shared Resource:电源 / 时钟 / 复位 / 内存 / 总线 — 双 LDO 看似独立但 die 内 bandgap 共因
- β factor 先减后乘: 进平方项, 进线性项 — 直接加是双重计算,忽略 β 是低估 10×
- β 典型范围 0.005-0.05(可编程电子),差工程可达 0.25;IEC 61508-6 Annex D 37 题评分反推;ISO 26262 不强推 β 推共享资源监测
- AURIX TC3xx lockstep 三重缓解:2-cycle 延时 + 信号反相 + 物理错位 — 但 die-level CCF 必须架构层双 MCU 才能根治
- ASIL 分解 B(D)+B(D) 五维红线:不同 PMIC vendor / 不同 MCU + OS / diverse 软件算法 / 不同传感器物理原理 / 完全独立的执行链
- DFA Report 必交叉引用 verification plan,否则评审退回 — 这是反模式 "走过场" 的根因
缩写表
只列本页用到的工业标准缩写;通用英语…
只列本页用到的工业标准缩写;通用英语 / 单位 / 月份 / 我们的
层/Lxtag 不列。覆盖不到的术语见正文 inline 注释。
| 缩写 | 全称 | 中文 / 备注 |
|---|---|---|
| CCF | Common Cause Failure | 共因失效 |
| DFA | Dependent Failure Analysis | 相关失效分析(ISO 26262-9) |
| DFI | Dependent Failure Initiator | 相关失效起因 |
| ASIL | Automotive Safety Integrity Level | ISO 26262 安全完整性等级 QM→A→B→C→D |
| ISO | International Organization for Standardization | 国际标准化组织 |
| IEC | International Electrotechnical Commission | 国际电工委员会 |
| AURIX | AUtomotive Realtime Integrated neXt generation architecture | Infineon TriCore 多核车规 MCU 系列 |
| ADI | Analog Devices | 亚德诺半导体 |
| FMEDA | Failure Modes, Effects and Diagnostic Analysis | 含诊断覆盖的 FMEA |
| MCU | Microcontroller Unit | 微控制器(本页多指车规多核 MCU) |
| OEM | Original Equipment Manufacturer | 整车厂 / 主机厂 |
| CF | Cascading Failure | 级联失效 |
| EMI | Electromagnetic Interference | 电磁干扰 |
| SBC | System Basis Chip | 系统基础芯片(电源 + 收发器 + 监控集成) |
| LDO | Low Dropout Regulator | 低压差线性稳压器 |
| PLL | Phase-Locked Loop | 锁相环 |
| PWM | Pulse Width Modulation | 脉冲宽度调制 |
| FOC | Field-Oriented Control | 磁场定向控制 |
| ECU | Electronic Control Unit | 电子控制单元 |
| BOM | Bill of Materials | 物料清单 |
| STO | Safe Torque Off | 安全转矩关闭 (IEC 61800-5-2) |
| SG | Safety Goal | 安全目标(ISO 26262-3) |
| HARA | Hazard Analysis and Risk Assessment | 危害分析与风险评估,part 3 |
| PMHF | Probabilistic Metric for Hardware Failures | 硬件随机失效概率指标 |
| FTA | Fault Tree Analysis | 故障树分析 |
Cross-references
- ← 索引
- ASIL 分解 (Part 9 §5) — 独立性论证的上游
- ASIL D 案例 — EPS / 主驱实战
- AURIX TC3xx ASIL D — lockstep 细节
- 安全机制目录 — 通用安全机制
- FMEDA / SPFM / LFM / PMHF — CCF 量化在 metrics 里的位置
- FTA 顶事件分析 — CCF 在 FTA 里是 common cause basic event
- ISO 26262 V 模型全景 — DFA 在 V 模型的位置
- SEooC — AoU 接住 CCF assumption
- DFA / FMEDA / FTA 三件套 — 分析方法学
- 辅助电源 FMEDA + DFA 深度 — 7 类 DFI × AUX 6 stage 实战矩阵
延伸阅读
权威标准 + 工程实战引用一并列出 — 上半部分是标准原文 / 咨询公司方法学,下半部分是芯片厂商 safety manual 和工程师博客实操记录:
- ISO 26262-9:2018 §7 + Annex C — https://www.iso.org/standard/68391.html
- Lorit Consultancy — Part 11 DFA:https://lorit-consultancy.com/en/2017/07/iso-26262-part-11-blog-post-3-dependent-failure-analysis-dfa/
- Lorit Consultancy — 量化 DFA:https://lorit-consultancy.com/en/2020/06/quantifying-iso-26262-dependent-failures-analysis/
- ADI EngineerZone — Quantify CCF:https://ez.analog.com/b/engineerzone-spotlight/posts/how-to-quantify-common-cause-failures
- ADI EngineerZone — ISO 26262 part 11:https://ez.analog.com/b/engineerzone-spotlight/posts/the-new-iso-26262-part-11
- exida — Independence terms:https://www.exida.com/Blog/iso-26262-independence-and-related-terms
- exida — CCF redundant systems:https://www.exida.com/blog/the-importance-of-considering-common-cause-with-redundant-systems
- Quiddity — FMEDA IEC 61508:https://www.quidditytech.io/post/fmeda-iec61508
- Reliability Space — CCF modelling:https://handbook.reliability.space/en/latest/system/handbook/reliability_prediction/modelling_common_cause_failure.html
- Infineon AURIX TC3xx FuSa AN0001:https://documentation.infineon.com/aurixtc3xx/docs/ztz1745575952703
- Infineon AURIX TC3xx FuSa AN1001:https://documentation.infineon.com/aurixtc3xx/docs/owq1745576218449
- LinkedIn — TriCore AURIX diverse lockstep:https://www.linkedin.com/pulse/tricore-aurix-diverse-lockstep-cpu-khaled-farouk-ojbaf
- Infineon TLE9471-3ES:https://www.infineon.com/cms/en/product/power/power-supply-ics/system-basis-chips-sbc/lite-sbc-family/tle9471-3es/
- Infineon TLF35584QKVS2:https://www.infineon.com/cms/en/product/power/power-management-ics-pmic-system-basis-chips-sbc/optireg-pmic/tlf35584qkvs2/
- ADI dual AMR for safety:https://www.analog.com/en/resources/analog-dialogue/articles/dual-amr-motor-position-sensor-for-safety-critical-applications.html
- Impedyme 6-phase PMSM:https://impedyme.com/resource-center/six-phase-permanent-magnet-synchronous-machine/
- 3SK DFA guide:https://www.3sk.co.uk/3sk-blog/dependent-failure-analysis/
- VerveTronics DFA:https://www.vervetronics.com/dfa-dependent-failure-analysis-in-functional-safety/