测试基础概念:良率、故障模型、测试覆盖率、DPPM 与 ATE
各位同学,欢迎来到量产测试的第二课。今天我们要聊的这几个概念,可以说是整个测试行业的“黑话”基础。你出去面试,跟同行聊天,要是这几个词说不利索,那基本就露怯了。
我个人习惯,讲概念之前先给个全景图。你想想看,我们做测试,最终目的是什么?说白了就两件事:把坏的挑出来,别把好的误杀了。而良率、故障模型、测试覆盖率、DPPM 这些指标,就是用来衡量我们这件事干得怎么样的尺子。
核心逻辑: 故障模型告诉我们“测什么”,测试覆盖率告诉我们“测了多少”,良率和 DPPM 告诉我们“测完的结果好不好”,而 ATE 就是干活的工具。
1. 故障模型 (Fault Model)
故障模型,听起来很学术,其实就是给芯片可能出的毛病“建模”。芯片内部几亿个晶体管,出问题的方式千奇百怪,我们不可能每种都去测。所以,工程师们总结了几种最常见的“坏法”,把它们抽象成模型。
最常见的两个模型,你必须要记住:
- 固定故障模型 (Stuck-at Fault Model):假设某个节点要么 stuck-at-0,要么 stuck-at-1。这是最经典的模型,覆盖了大部分物理缺陷,比如短路、断路。
- 过渡故障模型 (Transition Fault Model):假设某个节点从 0 变 1 或者从 1 变 0 时,速度太慢,跟不上时钟。这主要用来抓“时序”相关的问题。
我的经验: 刚入行时,我总觉得固定故障模型就够了。直到有一次,一颗芯片在常温下全好,一跑到高温就挂。查了半天,是某个路径的上升沿慢了半拍。从那以后,我对过渡故障模型再也不敢轻视。
还有其他模型,比如 IDDQ 故障模型(测静态电流)、桥接故障模型(测两根线短路),但在量产测试中,固定和过渡是绝对的主力。
2. 测试覆盖率 (Test Coverage)
覆盖率,就是你的测试向量到底测到了多少潜在的故障。通常用百分比表示。
公式很简单:
测试覆盖率 = (被检测到的故障数 / 总故障数) × 100%
举个例子,你的芯片有 100 万个可能的固定故障点,你的测试向量只覆盖了 95 万个,那覆盖率就是 95%。
注意: 覆盖率不是越高越好。从 95% 提到 99%,测试向量可能要翻倍,测试时间也会暴涨。量产测试讲究“性价比”。我个人习惯,对于消费类芯片,固定故障覆盖率做到 97% 以上就算合格;车规级芯片,那得往 99.5% 以上走。
覆盖率跟良率有什么关系?我见过不少新人搞混。记住一句话:覆盖率低,你可能会把坏的芯片放过去(测试逃逸);良率低,说明你的制造过程有问题。两码事。
3. 良率 (Yield)
良率,就是所有生产出来的芯片里,经过测试后,好的芯片占多少。
公式:
良率 = (测试通过的数量 / 总投入测试的数量) × 100%
良率是工厂的命根子。良率每掉 1%,对于月产百万颗芯片的工厂来说,可能就是几百万的损失。
良率通常分几种:
| 类型 | 定义 | 关注点 |
|---|---|---|
| 晶圆良率 | 晶圆切割前,探针卡测试的通过率 | 工艺缺陷、光刻问题 |
| 封装良率 | 封装完成后,最终测试的通过率 | 封装工艺、焊接质量 |
| 最终良率 | 从晶圆到成品,总的通过率 | 整体制造水平 |
避坑指南: 我曾经遇到过一个项目,晶圆良率很高,但封装良率惨不忍睹。一开始以为是封装厂的问题,后来查出来是晶圆测试时,某些引脚在探针卡上没扎好,导致“坏品”流到了封装环节。所以,良率要分阶段看,不能只看总数。
4. DPPM (Defective Parts Per Million)
DPPM,百万分之缺陷率。这是衡量交付给客户的产品质量的指标。
公式:
DPPM = (客户退回的坏品数 / 总交付数) × 1,000,000
举个例子,你交付了 10 万颗芯片,客户退回 5 颗坏的,那 DPPM 就是 50。
良率和 DPPM 有什么区别?良率是“出厂前”的指标,DPPM 是“出厂后”的指标。良率 99% 听起来很高,但算一下 DPPM:
DPPM = (1 - 0.99) × 1,000,000 = 10,000
也就是说,每 100 万颗芯片里,有 1 万颗是坏的。对于手机、电脑来说,这个水平勉强能接受。但对于汽车、医疗设备,DPPM 通常要求低于 100,甚至低于 10。
我的建议: 做量产测试,一定要盯着 DPPM 看。良率再高,如果 DPPM 下不来,客户迟早会找你麻烦。我见过一个团队,良率做到 99.5%,但 DPPM 高达 5000,结果被客户罚了上百万。
5. ATE (Automatic Test Equipment)
ATE,自动测试设备。说白了,就是一台专门用来测芯片的“超级电脑”。
ATE 的核心组成:
- 测试头 (Test Head):装测试板卡的地方,负责产生信号、测量响应。
- 探针台/分选机 (Prober/Handler):负责把芯片送到测试头下面,或者把芯片从托盘里抓起来。
- 测试程序 (Test Program):跑在 ATE 上的软件,告诉 ATE 怎么测。
市面上主流的 ATE 厂商,比如 Teradyne、Advantest、Chroma,各有各的生态。我个人最早接触的是 Teradyne 的 J750,后来用过 Advantest 的 V93000。不同平台,指令集、波形编辑器都不一样,但核心逻辑是相通的。
注意: ATE 不是万能的。它只能测你写在测试程序里的东西。如果你的测试程序没覆盖某个故障模式,ATE 再贵也测不出来。所以,测试程序的质量,直接决定了 ATE 的测试效果。
好了,这一课的概念就讲到这里。这几个词,你以后每天都会跟它们打交道。多想想它们之间的关系,慢慢就能建立起自己的测试思维框架。