共因失效 (CCF) — DFA 量化 + lockstep 三重缓解 + 反模式

功能安全L2别名 CCF · Common Cause Failure · 共因失效 · Dependent Failure Analysis · DFA · DFI · Beta Factor · alpha factor · Cascading Failure · Freedom from Interference · lockstep CCF

本质与导读

本质 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 的位置。

CCF vs Cascading — 同步多发 vs 因果链条

为什么这个区分这么重要?因为 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 的反查方法。

标准条款关键产出
ISO 26262-9§7 (强制)DFA Report + 缓解措施
ISO 26262-9Annex C7 类 DFI / coupling factor 清单
ISO 26262-11§8 (新增)半导体 die-level DFA assumption
IEC 61508-6Annex D37 题评分 → β 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 类 DFI radar

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

来源:Infineon TLF35584

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 路径双份。

来源:Infineon AURIX TC3xx FuSa AN0001

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 的一半。

CCF / CF / FFI / Independence 四角覆盖关系

四角关系一句话总结:

  • Dependent Failure = CF + CCF 的并集(失效概率 ≠ 独立元件概率乘积的总集合)
  • FFI = 只覆盖 CF,通过 partition / WD / memory protection 实现
  • Independence = FFI + CCF 免疫的交集
  • ASIL 分解的 "sufficiently independent" 必须用 DFA 量化论证,不是声明

来源:exida — Independence terms


5. CCF 量化 — β factor / α factor / FMEDA 集成

DFA 的定性查完之后必须进入定量阶段 — 否则没法算 PFD/PFH,也没法做 ASIL 分解的数学证明。这一节给出 β factor 公式 + 典型范围 + FMEDA 集成的正确顺序。

5.1 β factor 的基本公式

β factor 把单通道总失效率 λ 拆成两部分 — 共因部分 + 独立部分:

PFD 双通道(1oo2)公式必须先减后乘:

独立项平方衰减(两通道概率相乘),CCF 项线性衰减(冗余无效)。这就是为什么 CCF 即使 β 很小,也常常是 PFD 的主导贡献。

FMEDA + CCF — 先减后乘

5.2 β 典型范围

β 不是凭感觉拍,标准给出明确范围:

  • 可编程电子(IEC 61508-6 Annex D):0.005 – 0.05
  • 现场设备(传感器 / 执行器):0.01 – 0.1
  • 良好工程实践:0.001 – 0.05
  • 差工程实践:可达 0.25
  • exSILentia 工具默认值:0.1(非常保守)

来源:exida — CCF 重要性

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。

来源:Reliability Space — CCF modelling

5.4 FMEDA 集成的两个易错点

易错 错法 ①:用 λ 不是 (1−…

易错 错法 ①:用 不是 算独立项 → CCF 部分被双重计算 错法 ②:完全忽略 β → PFD 严重低估,可差 10× 正确:先减再乘 进平方项, 进线性项

5.5 SFF 公式作为旁支

虽然 SFF 不直接含 β,但 FMEDA 输出表里必含:

CCF 部分通常进 (危险未检出),除非有专门的 CCF 检测机制 — 这是为什么"双 watchdog 真独立 vs 假独立"会影响 SFF。

来源:Quiddity — FMEDA IEC 61508


6. IEC 61508-6 Annex D 评分表

β 的具体数值怎么定?IEC 61508-6 Annex D 给出 37 题评分流程 — 俗称 "beauty contest":每个工程对策能加分,累计分越高 β 越小,然后查表反推。

IEC 61508-6 Annex D 评分流程

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 解不了的。

AURIX TC3xx Lockstep — 3 重缓解 + 残余风险

7.1 三重缓解机制

三重缓解分别打时间相关性 / 空间相关性 / 信号方向相关性三种共因机制 — 三个维度上让 master 和 checker 在同一时刻看到的世界不一样,任何"同步影响两核"的干扰都会被比较器捕获:

  • ① Temporal diversity:checker 输入信号延迟 2 clock cycle。一次瞬态干扰打中 master 的瞬间,checker 还在处理 2 cycle 前的输入,两核不会同步出错,比较器能抓到差异
  • ② Spatial separation:checker 物理位置与 master 在 die 上错开布局,避免同一颗 alpha particle 同时穿过两核同一寄存器
  • ③ Signal invert:master core 的 monitor point 反相后再送比较器,降低共模干扰对两个信号同方向影响的概率

来源:LinkedIn — TriCore AURIX diverse lockstep

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 必上方案 ③。

SBC 双 watchdog — 3 方案对比

三档方案差异:

  • 方案 ① 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 里一项独立性论证。

EPS B(D)+B(D) 双通道架构 — 5 维 CCF 红线

5 维 CCF 红线对应 DFA 论证条目:

维度红线要求DFA Report 证据
① PMIC不同 vendorBOM + 独立电源拓扑图
② 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 查漏。

来源:3SK — DFA guide / VerveTronics — DFA

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/共 XTALroot cause path 单点独立性声明在哪条 DFI 上量化论证
"软件 copy 算冗余"systematic coupling 满分diverse software 证据在哪
"Lockstep = ASIL D"只解 random HW,不解 die-levelwafer 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,否则评审退回 — 这是反模式 "走过场" 的根因

缩写表

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

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

缩写全称中文 / 备注
CCFCommon Cause Failure共因失效
DFADependent Failure Analysis相关失效分析(ISO 26262-9)
DFIDependent Failure Initiator相关失效起因
ASILAutomotive Safety Integrity LevelISO 26262 安全完整性等级 QM→A→B→C→D
ISOInternational Organization for Standardization国际标准化组织
IECInternational Electrotechnical Commission国际电工委员会
AURIXAUtomotive Realtime Integrated neXt generation architectureInfineon TriCore 多核车规 MCU 系列
ADIAnalog Devices亚德诺半导体
FMEDAFailure Modes, Effects and Diagnostic Analysis含诊断覆盖的 FMEA
MCUMicrocontroller Unit微控制器(本页多指车规多核 MCU)
OEMOriginal Equipment Manufacturer整车厂 / 主机厂
CFCascading Failure级联失效
EMIElectromagnetic Interference电磁干扰
SBCSystem Basis Chip系统基础芯片(电源 + 收发器 + 监控集成)
LDOLow Dropout Regulator低压差线性稳压器
PLLPhase-Locked Loop锁相环
PWMPulse Width Modulation脉冲宽度调制
FOCField-Oriented Control磁场定向控制
ECUElectronic Control Unit电子控制单元
BOMBill of Materials物料清单
STOSafe Torque Off安全转矩关闭 (IEC 61800-5-2)
SGSafety Goal安全目标(ISO 26262-3)
HARAHazard Analysis and Risk Assessment危害分析与风险评估,part 3
PMHFProbabilistic Metric for Hardware Failures硬件随机失效概率指标
FTAFault Tree Analysis故障树分析

Cross-references


延伸阅读

权威标准 + 工程实战引用一并列出 — 上半部分是标准原文 / 咨询公司方法学,下半部分是芯片厂商 safety manual 和工程师博客实操记录: