FS-B2 — 诊断覆盖率 DC 怎么 claim:为什么 Annex D 表值只是提案、强证据要靠故障注入,以及每多一个 9 的代价

本质与导读

专家养成 · 模块一(功能安全B 阶第 2 讲。上一讲 FS-B1FMEDA 推到底:SPFM / LFM / PMHF 只是一张失效率分账表的三个比值,而那张表的每一格残余坏账都写成 。换句话说,整支概率证据的可信度,全压在一个被反复当输入喂进去、却从没被质疑过的数上:诊断覆盖率 DC。传感器比对凭什么 claim 90%?DESAT 凭什么 99%?今天就拆这个数的 claim 逻辑——它不是一个可以"声明"的百分比,而是一个需要论证的、对失效模式空间的加权命题;ISO 26262-5 Annex D 给的表值只是这个命题的提案,不是它的证明;而从 90% 爬到 99%,验证代价不是线性增加,是十倍

开篇:硬约束——DC 是 FMEDA 唯一无法自证的输入,错了会静默传染整条 Safety Case

回到 FS-B1 那张分账表。表里每颗器件的 、危险占比,都有相对硬的来源: 来自 SN 29500 / 手册的物理失效率,危险占比来自 FMEA 的失效模式分析。唯独 DC 不一样——它不是从器件物理读出来的,而是工程师对"我这个安全机制能逮住多大比例危险失效"的一个断言

为什么这个断言是整套方法最脆弱的一环?因为它的错误是单向且静默的。DC 几乎总是被高估(没人会故意把自己机制说差),而每高估一分, 就少算一分坏账,SPFM / LFM / PMHF 三个数同时虚高,整条概率证据链一起变好看——却没有任何一个 lint、任何一次计算能告诉你它假了。FS-A1 讲过 Safety Case 是单一逻辑链、链断一环即不成立;而 DC 虚高不是把链"断开",是往链里注入一段看不出来的假证据,比断链更危险:断链你知道要补,假证据你以为已经达标。

所以 DC 的硬约束是:它是 FMEDA 里唯一无法由器件物理自证、必须靠独立论证撑住的输入,而它的失真方向是系统性高估。 一个 ASIL D 项目的概率证据是真是假,最终不取决于 SPFM 算得对不对(那是除法,不会错),而取决于喂进去的每一个 DC 站不站得住。这一讲就回答:一个 DC 数字要拿什么才算"站得住"。


中段一:DC 的第一性定义——它是对失效模式空间的加权命题,不是一个百分比

要论证 DC,先看清它到底在量什么。定义式 FS-B1 用过:

右边那个展开式才是要害。 遍历这颗器件所有危险失效模式, 是每个模式的失效率, 表示这个模式会不会被你的 SM 检出。所以 DC 不是一个孤立的百分比,而是对一个被穷举划分的失效模式空间,按失效率加权求"被覆盖"的占比

这个展开式立刻暴露了 claim DC 的真正工作量:你必须先把失效模式空间划分干净,再对每一个模式论证 是 0 还是 1。任何 claim 的偷工,都偷在这两步上。其中最隐蔽、也是评估员第一个攻击的点是划分粒度:

设想电流传感器有两类危险失效——"输出卡死在某个越界值"( FIT)和"输出在量程内慢漂移 5%"( FIT)。范围检查(range check)能逮住前者(),却对后者物理上无能为力——漂移后的值仍在合法量程内,范围检查看不出异常()。正确的 DC 是:

但若工程师把两类笼统合并成"传感器失效"一个模式,凭"范围检查是个有效诊断"直接套个 90%,那 10 FIT 的不可检漂移就被藏进了平均数DC 虚高几乎总是源于失效模式划分太粗——把一个 的高 模式,混进一堆 的模式里稀释掉。 这是第一性原理给出的第一条 claim 纪律:先把失效模式拆到"每一类的可检性都确定"的粒度,再加权;拆不细的 DC 不可信。


中段二:为什么 60 / 90 / 99 三条线对应三种诊断结构——独立观察源是 99% 的物理门槛

Annex D 把 DC 切成 None(<60%)/ Low(60-89%)/ Medium(90-98%)/ High(99%)四档。这三条边界不是行政划线,而是诊断结构的三次质变——每跨一档,你的 SM 必须换一种"看故障"的物理原理,否则数学上够不到。

Low(单变量诊断) 只看一个量的合法性:范围检查、奇偶校验、单门限欠压。它能逮住粗大、越界的失效,但凡是"值仍然合法、只是错了"的失效(量程内漂移、一致的位翻转)它一律看不见。单变量诊断的覆盖天花板,就卡在"合法但错误"这类失效的占比上,通常到不了 90%。

Medium(跨变量 / 编码诊断) 引入第二个信息维度:plausibility(用另一个物理量交叉验证,如转速 vs 反电动势)、ECC / CRC(用编码冗余位检测)。它能逮住"单看一个量合法、但和别的量对不上"的失效,覆盖跳到 90-98%。但它仍有一个共同死角:诊断本身和被诊断对象共享通路或共因——CRC 校验器自己算错、plausibility 的两个量被同一个电源拖垮,这类共模失效它兜不住。

High(99%) 的物理门槛由此而来,也是这一讲最该刻进脑子的因果:任何单通道诊断,无论多精巧,都逃不掉"诊断自己坏"这个死角,而这个死角的失效率给 DC 设了上限。 设诊断电路自身的危险失效率为 ,被诊断对象为 ,则即使诊断对所有目标失效都完美,它也会在自己失效时漏报,可检率上界约为

同量级,单通道 DC 物理上压根摸不到 99%。要突破,只有一条路:引入一个独立的第二观察源(lockstep 双核比对、1oo2D、双路采样),让"诊断坏了"本身也能被另一路发现。所以工程口诀"99% = 必须有第二个独立观察源"不是经验,是 这个上界逼出来的硬结论。99% 这条线的真实含义,是 ISO 26262 在用一个比例阈值强制要求架构冗余——这也呼应了 FS-B1 里 SPFM 99% "禁止裸奔单链"的同一个意图,只是换到了诊断维度。


中段三:核心——为什么 Annex D 表值只是提案,以及强证据的样本量代价

清楚了 DC 是加权命题、99% 要靠独立性,现在回答最实操的问题:一个 DC 数字,拿什么算"证明了"?

ISO 26262-5 Annex D 给每类机制列了"典型可达 DC"(如"ECC = 99%""range check = 60%")。关键认知:这张表是 claim 的提案,不是 claim 的证明。 为什么?因为表里的典型值假设了理想实现 + 完整模式覆盖——它说的是"ECC 这种机制在理想条件下能到 99%",而不是"你这块芯片上这个 ECC、在这个 stress、对你这组实际失效模式,真的到了 99%"。真实实现总有 Annex D 不知道的缺口:消隐窗口、模式覆盖漏洞、诊断延迟超出 FTTI(下段详述)。所以第三方评估只引 Annex D 的弱证据,惯例直接砍 20-30%(把 claim 的 99% 改判 70-80%)——而 FS-B1 已经演示过,DC 从 99% 掉到 80%,SPFM 立刻击穿。

强证据只有一个来源:故障注入(fault injection)——真的往器件里注入故障(stuck-at / SEU / SET / 漂移),数有多少被 SM 逮到。它为什么是 DC 的地面真相?因为 DC 本质是一个对真实失效分布的检出率,而检出率这种经验量,只能靠在那个分布上采样来估计,不能靠查表声明。理论推导给你 的猜测,故障注入给你 的观测。

但故障注入的代价,藏着这一讲最反直觉、也最有用的定量结论:claim 的 DC 每多一个 9,需要的注入次数贵约十倍。 这来自一个统计事实——"三的法则"(rule of three):若注入 次、零漏检,则漏检率(即 )的 95% 置信上界约为 。于是要在 95% 置信下 claim 某个 DC 档,所需最小样本量是

代进三档看代价:

  • claim Medium(,漏检 ): 次零漏检即可。
  • claim High(,漏检 ): 次零漏检。
  • claim 99.9%: 次。

每加一个 9,样本量十倍。 这解释了一个工程现象:Medium DC 的证据几乎是免费的(几十次注入),而 High DC 的故障注入 campaign 动辄上千次、要专门的 fault-injection 平台和数周机时——High DC 贵,不只贵在硬件冗余,更贵在验证它的样本量。

把它接回 FS-B1 那条传感器:B1 里为了把 SPFM 从 93.5% 拉到 99.1%,要求传感器 DC 从 90% 提到 99%。今天这把尺子告诉你这步的真实成本:不仅要把范围检查升级成双通道比对(独立观察源,见上段),还要跑 次零漏检的故障注入才敢把那个 99% 写进 Safety Manual。而且零漏检是硬条件——若 300 次里漏了 1 次,点估计虽是 99.67%,但漏检率的 95% 上界按精确二项跳到约 1.6%,你只能 claim ,掉出 High 档。这就是为什么 High DC 的 campaign 要把 取得比 300 更大留头寸:给"偶尔漏一两次"留容差。


中段四:DC 和 FTTI 是耦合的——"检出但迟到"在记账上等于没检出

还有一个最常被漏掉、却由前面 FS-A3 直接管辖的 claim 纪律:DC 里的 ,隐含了一个时间条件——"在 FTTI 内"检出。一个能逮住故障、但逮得太慢的诊断,对单点度量(SPFM)而言 必须记 0。

因果很直接。FS-A3 论证过:故障到危害之间有一段由物理定死的倒计时 FTTI,。一个诊断若 FDTI 超出这个窗口,等它确认时器件已经热击穿——它"检出"了一具尸体。这种检出对避免危害毫无贡献,计入 DC 就是又一种虚高。所以严格的 FMEDA 里,DC 不是"会不会检出",而是"会不会在 FTTI 内检出";超时的覆盖要从 里划出去,退回

这把 FS-A3(时间轴)和 FS-B1/B2(概率轴)缝在了一起:DC 和 FTTI 不是两个独立指标,是同一个"有效检测"的两个必要条件——既要测得到(),又要测得及时(FDTI 在窗内)。 这也正是 FS-B1 表里看门狗那类慢自检 DC_SPF 很低的根因:上电自检对运行中突发的单点故障,FDTI 是一整个驾驶循环,远超任何 FTTI,所以它对 SPFM 几乎零贡献——它的覆盖只能记在 DC_LFM(慢轴 MPFDTI,见 FS-A3)那一栏。DC_SPF 和 DC_LFM 必须分两列填,根因就是它们各自绑的时间窗(FTTI vs MPFDTI)差几个数量级,同一个机制在两栏的值可以天差地别。只填一列的 FMEDA,评估员第一反应就是返工。


落到工程结论:claim 一个 DC 的五步,与三条准则

把这一讲收成一套能直接执行的 DC claim 流程。要给 FMEDA 里某一格填 DC:

  1. 拆模式到可检性确定的粒度:把这颗器件的危险失效拆细到"每一类的 都能明确判 0/1",别让 的高 模式藏进平均(中段一)。
  2. 按式加权,别凭感觉:,把每个模式的失效率权重摆出来算,而不是对机制拍一个总分。
  3. 判时间窗:对每个 ,核它的 FDTI 是否在 FTTI 内(SPF 用)、或在 MPFDTI 内(LFM 用);超时的退回未检出。SPF / LFM 分两列(中段四)。
  4. 定档与独立性:要 claim 99%,先确认架构里有独立的第二观察源,否则 上界够不到(中段二)。
  5. 配证据强度:Medium 可暂用 Annex D + 设计论证(样本量门槛低);High 必须故障注入, 且零漏检,数据进 Safety Manual(中段三)。

带走三条准则:

  1. DC 是加权命题,不是声明。 任何 DC 争议都回到"失效模式空间拆干净没、每个模式可检性判对没、加权算对没"。拆不细的高 DC 一律可疑——虚高的标准入口就是粗粒度划分。
  2. 每多一个 9,验证代价十倍。 是硬账:Medium 几十次、High 数百次、四个 9 数千次。High DC 贵在样本量,不只贵在冗余硬件——立项排期就要把 High DC 器件的 fault-injection campaign 算进去。
  3. Annex D 是提案,故障注入是判决;DC 还要过 FTTI 这关。 只引表值的弱证据会被砍 20-30%;能逮但逮得慢(FDTI 超 FTTI)的覆盖,对 SPFM 必须记 0。

承上启下:今天把 FS-B1 那个被…

承上启下:今天把 FS-B1 那个被当输入喂进去的 DC 撑住了——它是对失效模式空间的加权命题,99% 要独立观察源兜底,强证据要故障注入采样、且每多一个 9 贵十倍,还得过 FTTI 的时间关。至此概率证据(FMEDA + DC)这一支闭合了。但 FS-A1 说过上行聚合要概率 / 逻辑 / 实测三类证据互补——概率证据是"自底向上逐器件累加",它有个结构性盲区:多个器件失效如何组合成顶事件,加法表达不了。下一讲 FS-B3 转到第二支:FTA(故障树)与最小割集——自顶向下的逻辑证据,它怎么逮住 FMEDA 概率累加看不见的共因与组合路径,两支证据又如何在 Safety Case 里互校。预热可读 DFA / FMEDA / FTA 三证据


延伸阅读