DFT(Design For Test),即"为了测试的设计"。它不是芯片设计的附属品,而是与功能设计同等重要的一环。本文带你理清 DFT 的来龙去脉。
一、为什么要有DFT?
自芯片诞生之日起,如何测试就成了芯片行业绕不过去的问题。一颗芯片流片回来,摆在工程师面前的是两个灵魂拷问:
1. 如何筛选出出错的芯片?——出厂前必须把坏片挑出来,否则成品率不可控。 2. 如何定位到出错的位置?——测试失败后,要能快速 debug 到具体是哪个环节、哪个节点出了问题。
这两个问题的答案,就是 DFT。
DFT: Design For Test,为了测试的设计。 它不是事后补丁,而是在设计阶段就为"可测试性"铺路。
二、从 Ad Hoc 到 Structured:DFT 的两次进化
2.1 早期:Ad Hoc DFT(特定目标可测性设计)
针对一个已经成型的电路设计,遇到测试问题时,通过添加新的测试点和管脚,用类似"引出飞线"的方式直接测电路节点。
它把原来"穷举排列的电路状态测试",转化为"对电路不同节点的针对性测试"。这种思路直白,但缺点同样明显——侵入性强、不可复用,如今已是淘汰技术。
2.2 摩尔定律逼出来的 Structured DFT
摩尔定律说:芯片上的晶体管数量每 18-24 个月翻一番。集成度越来越高,测试的复杂度呈指数级上升——靠人工加测试点已经不可能了。
于是结构化可测性设计(Structured DFT)成为主流。什么叫"结构化"?两个关键特征:
• a. 不需要 DFT 人员深度理解整体设计——工具按规则自动处理,与人无关; • b. 不需要增加大量的 I/O 接口——复用有限的管脚完成测试。
这正是它能规模化落地的根本原因。
三、DFT 的目的:Yield vs Quality
DFT 的核心指标有两个,一个是钱,一个是命:
• Yield(成品率):能出货的好片比例,直接决定毛利; • Quality(质量):交付给客户的产品可靠性,直接决定口碑与返修成本。
DFT 做的所有事,本质都是在 Yield 与 Quality 之间找平衡:测试太严,好片误杀(yield 下降);测试太松,坏片漏出(quality 崩掉)。
四、DFT 流程概况:参与越早,成本越低
DFT 有两种典型参与方式:
结论很直接:芯片越复杂,DFT 越要提前介入。早期参与(Early DFT Involvement)可以让测试架构与设计同步演进,避免后期返工。
五、芯片结构决定测试手段
芯片内部结构无非两类:
• Memory(存储器)——记忆作用; • 组合逻辑 + 时序逻辑电路——运算及传输作用。
针对不同的结构,DFT 演化出了三大主流技术。
5.1 SCAN:逻辑电路的"串行化"测试
要测试电路内部某个节点,需要回答两个问题:需要控制谁?需要观察谁?
SCAN 的思路非常优雅:
1. 把电路中原有的一般触发器,替换成可观测、可控制的 scan cell; 2. 将这些 scan cell 串联,构成 scan chain(扫描链)。
这样原本需要大量 IO 才能控制/观察的内部寄存器,只需要几个专用管脚(SI/SO/SE)就能串行搬进搬出。

那 ATE 怎么知道该输入什么激励?靠 ATPG(Automatic Test Pattern Generation,自动向量生成):
测试向量由程序自动生成,按顺序加载到器件输入脚上,收集输出并与预期向量比对,从而判断测试结果。ATPG 有效性是衡量测试错误覆盖率的重要指标。
生成向量的本质就是两件事:①生成对测试电路输入的向量;②生成对测试电路输出的期望。

5.2 MBIST:存储器的"自建自测"
存储器成千上万个存储单元,用测逻辑的方法去测既不现实也不经济。MBIST(Memory Build-In Self Test)的思路是:
将测试相关的功能器件内嵌进芯片内部,外部只需要提供"开始测试"信号,接收"测试完成"信号与测试结果。
典型应用还包括 Fuse and repair system(保险修复系统)——测出坏单元后熔断 fuse,用冗余单元替换,实现自修复。

5.3 BSD:边界扫描(IEEE 1149.1 / JTAG)
测试时我们不需要接管全部 IO,边界扫描(Boundary Scan Design) 在芯片 PAD 与内部电路之间增加边界扫描单元,连成扫描通路,由 TAP(Test Access Port) 统一调度。
BSD 基于 JTAG(Joint Test Action Group),即 IEEE 1149.1 标准,专为解决现代 IC 设计复杂度与引脚密度不断提高的问题而生。

六、常用工具链一览

小结
• DFT 的起点是"筛坏片"与"定位错误"两个测试难题; • Ad Hoc 已成历史,结构化 DFT 是当前主流; • DFT 的本质是在 Yield 与 Quality 之间做工程权衡; • 芯片越复杂,DFT 越要前期参与; • 三大技术支柱:SCAN(逻辑)、MBIST(存储)、BSD(边界),各有分工。
下一篇我们进入 SCAN 的世界:故障模型到底是什么?Stuck-at、Transition、IDDQ 这些名词背后的物理含义是什么?敬请期待。
本文为 ChipLord 原创,基于 DFT 工程实践整理。
推荐: