根因分析方法论:5Why分析法、鱼骨图、故障树分析、失效模式与影响分析

各位工程师朋友,大家好。我是你们的老朋友,一个在流片失败中摸爬滚打多年的芯片设计老兵。

今天咱们聊聊根因分析。说白了,就是芯片流片回来,发现有问题了,怎么找到那个「罪魁祸首」?

我见过太多团队,一上来就拍脑袋:「肯定是电源问题!」「不对,我觉得是时序!」结果折腾几个月,发现是某个库文件版本搞错了。嗯,这种冤枉路,我走过不止一次。

所以,掌握一套靠谱的分析方法,比什么都重要。下面这四种方法,是我个人习惯用的「组合拳」。你想想看,它们各有各的脾气,用好了,事半功倍。

1. 5Why分析法:追问到底

这个方法最简单,也最容易被低估。不就是问五个「为什么」吗?

但我在项目中遇到过,很多人问了两三个「为什么」就停了,觉得找到原因了。其实不然。

核心逻辑: 针对一个故障现象,连续追问「为什么」,直到找到根本原因。通常问五次,但次数不固定,关键是找到那个「可采取行动」的根因。

举个例子:

现象:芯片上电后,核心电压VDD_CORE只有0.6V,正常应该是1.0V。

为什么1?—— 因为LDO输出偏低。
为什么2?—— 因为LDO的反馈电阻分压不对。
为什么3?—— 因为反馈电阻R1的阻值比设计值大了20%。
为什么4?—— 因为BOM清单中R1的料号写错了,用的是高阻值型号。
为什么5?—— 因为BOM审核流程中,没有对关键电阻值做二次核对。

你看,到第五个「为什么」,我们找到了流程上的漏洞。这才是根因。如果停在第三个「为什么」,你只会换电阻,下次还会犯同样的错。

我的小技巧: 每次问完「为什么」,都反问自己一句:「这个原因,我能采取什么具体行动来防止它再次发生?」如果答案是否定的,那就继续往下问。

2. 鱼骨图(因果图):把问题「解剖」开

鱼骨图,也叫因果图。这玩意儿特别适合头脑风暴。当问题原因不明确,或者涉及多个方面时,用它来梳理思路,非常直观。

我曾经处理过一个芯片功耗异常的问题。团队里七嘴八舌,有人说工艺问题,有人说设计问题,有人说测试问题。吵得不可开交。

后来我画了一张鱼骨图,把「功耗异常」这个鱼头放在右边,然后画出几根大骨头:人、机、料、法、环、测(这是制造业常用的分类,芯片设计也适用)。

每根骨头上,再细分小骨头。比如「法」这根骨头下,有「时钟门控策略」、「电源域划分」、「工艺角选择」等。这么一画,大家就清楚了,原来问题可能出在「时钟门控策略」上。后来一查,果然是某个模块的时钟门控没做好,导致动态功耗翻倍。

鱼骨图的关键: 不是画得漂亮,而是分类要合理。我建议你从「设计、验证、工艺、测试、环境」这五个维度去切。每个维度下,再深挖。

3. 故障树分析(FTA):自上而下的「侦探」

FTA,听起来很学术,其实就像侦探破案。从最终的「故障事件」出发,一步步往下推,找出所有可能的原因组合。

它和5Why有点像,但更系统。5Why是线性追问,FTA是树状展开,而且能处理「与门」和「或门」的逻辑关系。

举个例子,芯片功能测试失败:

  • 可能是「逻辑功能错误」(或门,只要有一个成立,故障就发生)
  • 也可能是「时序不满足」(或门)
  • 还可能是「测试向量错误」(或门)

然后每个分支再往下拆。比如「逻辑功能错误」下面,可能是「RTL代码bug」或「综合工具bug」或「后端物理实现错误」。这样一层层拆下去,直到拆到最基本的「底事件」。

我记得有一次,一个芯片的某个接口在高温下老是出错。我们用FTA一分析,发现「高温失效」这个顶事件,下面有两条路径:一条是「金属迁移」,另一条是「阈值电压漂移」。最后定位到是「阈值电压漂移」导致的,因为那个接口的驱动能力设计余量不足。

注意: FTA的难点在于,你要把所有可能的原因都列出来,不能有遗漏。否则,你分析得再漂亮,漏掉的那个原因就是真正的「凶手」。我建议你做完FTA后,再用FMEA(下面会讲)来交叉验证一下。

4. 失效模式与影响分析(FMEA):防患于未然

前面三种方法,都是「事后诸葛亮」。FMEA不一样,它是「事前诸葛亮」。在芯片设计阶段,就提前想好:哪些地方可能出问题?出了问题会有什么影响?有多严重?

FMEA的核心是三个指标:

指标 含义 评分(1-10)
严重度(S) 失效对系统的影响程度 1(无影响)~ 10(灾难性)
发生度(O) 失效发生的可能性 1(极低)~ 10(极高)
探测度(D) 现有手段能发现失效的概率 1(一定能发现)~ 10(极难发现)

然后计算风险优先数(RPN)RPN = S × O × D。RPN越高,越需要优先处理。

我举个例子。在设计一个电源管理芯片时,我们做FMEA,发现「LDO输出过压」这个失效模式,严重度是9(可能烧毁后级电路),发生度是3(不太常见),探测度是8(很难在测试中复现)。RPN = 9×3×8 = 216,很高。

于是我们加了一个过压保护电路,把发生度降到了1,探测度也降到了2。RPN变成了18。你看,这就是FMEA的价值——在流片前就把风险扼杀在摇篮里。

我的建议: FMEA不要一个人做。拉上设计、验证、测试、工艺的同事一起做。不同视角能看到不同风险。我曾经一个人闷头做FMEA,结果漏掉了一个工艺相关的失效模式,后来流片回来果然中招了。嗯,从那以后,我再也不单干了。

一张图看懂四种方法的关系

下面这张SVG图,是我自己画的。它把这四种方法的关系和适用场景串了起来。你一看就明白。

根因分析方法论 · 知识体系 流片失败根因分析 5Why分析法 追问到底 · 线性深挖 鱼骨图(因果图) 头脑风暴 · 多维度梳理 故障树分析(FTA) 自上而下 · 逻辑组合 FMEA 防患未然 · 风险量化 适用场景对比 方法 最佳适用场景 典型问题类型 5Why 单一故障,原因链清晰 流程漏洞、操作失误 鱼骨图 多因素交织,需要团队讨论 设计、工艺、测试综合问题 FTA 复杂系统,多路径失效 安全关键系统、多模块交互 FMEA 设计阶段,预防为主 新设计、新工艺、高风险模块

这张图你看懂了吗?简单来说:

  • 5Why 适合追查单一链条上的根因,比如某个电阻值错了。
  • 鱼骨图 适合团队一起梳理,看看问题到底出在哪个大方向上。
  • FTA 适合分析复杂系统,比如多个模块之间的交互失效。
  • FMEA 是「预防针」,在设计阶段就把风险点找出来,提前打补丁。

我个人习惯,在流片前做一次FMEA,流片后如果出了问题,先用鱼骨图做头脑风暴,再用5Why或FTA深挖。这套组合拳打下来,基本上没有找不到的根因。

好了,这一章就到这里。记住,方法只是工具,真正重要的是你面对问题时的态度——不放过任何一个疑点,不轻易接受「可能是」这样的结论。嗯,下次咱们聊聊具体怎么用这些方法去分析一个真实的流片失败案例。


专注资料整理