2. 数字IC测试基础

数字IC测试的本质是回答两个问题:芯片里是否存在制造缺陷?以及这些缺陷是否会导致功能失效?要回答这两个问题,我们必须先建立一套“缺陷的语言”——即故障模型。故障模型是连接物理缺陷与逻辑行为的桥梁,它决定了测试向量生成的策略、测试覆盖率的计算方式,以及最终产品良率与DPPM(Defective Parts Per Million,百万分之缺陷率)的评估。本章将系统讲解三大核心故障模型、可测性设计(DFT)的基本概念,以及测试覆盖率与DPPM之间的量化关系,为后续学习TestMAX工具的具体实现打下坚实的理论基础。

数字IC测试基础:故障模型 → DFT → 覆盖率 → DPPM 链路 物理缺陷 晶圆工艺偏差 金属桥接/断裂 故障模型抽象 固定故障(SAF) 跳变故障(TF) / 桥接故障(BF) DFT设计 扫描链插入 ATPG向量生成 覆盖率 故障覆盖率 测试覆盖率 测试覆盖率(TC) TC = 检测到的故障 / 总故障 缺陷水平(DL) DL = 1 - Y^(1-TC) DPPM DPPM = DL × 10⁶ 案例示意:某SoC芯片(100万门) • 插入扫描链后,固定故障总数 = 2,000,000(每个节点SA0/SA1) • ATPG生成向量 1,200 条,检测到 1,960,000 个故障 → TC = 98% • 假设良率 Y = 95%,则 DL = 1 - 0.95^(1-0.98) ≈ 0.00103 → DPPM ≈ 1030 • 若需 DPPM < 500,则 TC 需提升至 99% 以上(需增加向量或改进DFT)

上图展示了从物理缺陷到DPPM的完整工程链路。物理缺陷(如金属桥接、栅氧击穿)通过故障模型抽象为逻辑级故障,DFT设计(扫描链、BIST等)使这些故障可被测试向量激励和观测,最终通过覆盖率计算和DPPM量化产品质量。下面我们逐一深入每个环节。

2.1 核心故障模型:固定故障、跳变故障与桥接故障

2.1.1 固定故障(Stuck-At Fault, SAF)

核心原理:固定故障是最经典、最基础的故障模型,它假设电路中某个信号线永久性地固定在逻辑0(SA0)或逻辑1(SA1)上。这种模型对应了制造过程中诸如金属线断裂(导致浮空或固定电平)、晶体管短路或开路等物理缺陷。SAF模型的关键优势在于其简单性和可计算性——每个节点只需考虑两种故障状态,使得故障列表规模可控,ATPG(自动测试向量生成)算法可以高效处理。

判断方法:在TestMAX ATPG中,固定故障的检测需要满足两个条件:激励(Stimulus)——测试向量必须将故障节点的正常值设置为与故障值相反的逻辑;传播(Propagation)——故障效应必须能够通过组合逻辑路径传播到至少一个可观测的输出端(如扫描触发器或主输出)。例如,对于节点N的SA0故障,测试向量必须使N在正常逻辑下为1,并且该1值的变化能通过后续逻辑传递到输出。

故障类型物理缺陷对应检测条件故障数量
SA0金属线对地短路、NMOS管栅极开路节点正常值为1,且可传播每节点1个
SA1金属线对电源短路、PMOS管栅极开路节点正常值为0,且可传播每节点1个
SAF总集——2 × 节点数
经验提醒:在深亚微米工艺下,SAF模型虽然简单,但仍是测试覆盖率考核的“及格线”。TestMAX默认将SAF作为基础故障集,通常要求SAF覆盖率≥98%。如果SAF覆盖率不足,优先检查扫描链完整性、未约束的异步复位/置位信号,以及时钟门控逻辑。

2.1.2 跳变故障(Transition Fault, TF)

核心原理:跳变故障用于检测时序电路中的延迟缺陷,它模拟的是信号在时钟沿到来时无法在规定的时序窗口内完成从0→1(上升跳变)或1→0(下降跳变)的转换。这种故障通常由晶体管驱动能力不足、互连线电阻电容(RC)延迟过大或电压降(IR Drop)引起。与SAF不同,TF需要两个连续的测试向量:第一个向量(初始化向量)将节点设置为初始状态,第二个向量(启动向量)在时钟沿触发跳变,并在下一个时钟沿捕获结果。

判断方法:TF的检测需要满足三个条件:① 初始化——第一个向量将节点设置为跳变的起始值;② 启动——第二个向量在时钟沿使节点发生目标跳变;③ 捕获——跳变后的值在下一个时钟沿被扫描触发器捕获并传播到输出。TestMAX中通常使用“Launch-on-Capture”(LOC)或“Launch-on-Shift”(LOS)两种时序方案来实现TF测试。

案例拆解:假设一个2输入与非门(NAND2)的输出节点Z存在上升跳变故障(Z从0→1变慢)。初始化向量设置A=0,B=1,使Z=1(此时Z被预充电为1)。启动向量切换为A=1,B=1,理论上Z应从1跳变为0。如果Z的下降跳变延迟超过时钟周期,则在捕获沿时Z仍为1,测试失败,从而检测到该TF故障。实际工程中,TestMAX会为每个节点生成上升和下降两个TF故障,故障总数 = 2 × 节点数。

2.1.3 桥接故障(Bridging Fault, BF)

核心原理:桥接故障模拟的是两条相邻信号线之间意外短路的情况,这在先进工艺中尤为常见(金属线间距缩小导致桥接概率上升)。桥接故障的行为比SAF复杂得多,因为两个节点的逻辑值会相互影响。根据短路电阻和驱动强度的不同,可能表现为“线与”(Wired-AND)、“线或”(Wired-OR)或“主导型”(Dominant)行为。BF的故障空间极大(O(n²)),因此工程上通常采用提取关键邻居对的方法,只对物理布局上相邻且可能桥接的线对进行建模。

判断方法:TestMAX支持基于版图提取的桥接故障列表,也可以使用“邻居模型”自动生成候选桥接对。检测BF需要使两个节点被驱动为相反的逻辑值,然后观察短路后的实际逻辑是否偏离预期。例如,对于线与桥接,两个节点一个为1、一个为0时,短路后两个节点都被拉低为0,从而可被检测。

风险提示:桥接故障覆盖率通常不作为量产测试的硬性指标,但它在系统级测试(如功能测试)中经常暴露问题。如果芯片在系统测试中偶发失效,而SAF/TF覆盖率均达标,应怀疑桥接故障,建议在TestMAX中启用“桥接故障仿真”模式进行补充分析。

2.2 可测性设计(DFT)基本概念

核心原理:可测性设计(Design for Testability)的核心思想是在芯片设计阶段就考虑测试需求,通过增加额外的测试逻辑和测试端口,使内部节点变得可控(Controllability)和可观测(Observability)。没有DFT的芯片,内部节点只能通过复杂的组合逻辑路径间接控制,测试向量生成难度呈指数级增长。DFT的三大支柱是:扫描链(Scan Chain)、内建自测试(BIST)和测试访问端口(TAP)。

操作流程:在TestMAX DFT Compiler中,典型的DFT插入流程包括:① 定义测试时钟和测试复位信号;② 指定扫描触发器类型(如mux-D型);③ 设置扫描链数量与长度(平衡链长以优化测试时间);④ 插入扫描链并连接扫描使能(Scan Enable)和扫描输入/输出端口;⑤ 生成SPF(STIL Protocol File)文件供ATPG使用。

DFT结构目的面积开销测试时间影响
全扫描(Full Scan)所有触发器可串行移位约5-10%测试时间与触发器数量成正比
部分扫描(Partial Scan)仅关键路径触发器约2-5%覆盖率可能下降
BIST(Logic/Memory)片上自测试,无需外部向量约10-15%测试时间短,但覆盖率受限
边界扫描(JTAG)板级互连测试约1-3%用于系统级调试
实战经验:扫描链设计时,务必注意时钟域交叉问题。不同时钟域的触发器不能直接串联在同一扫描链中,否则在移位阶段可能出现亚稳态。TestMAX支持“时钟域分组”功能,自动为每个时钟域创建独立的扫描链,并在跨域路径上插入同步器。

2.3 测试覆盖率与DPPM的量化关系

核心原理:测试覆盖率(Test Coverage, TC)定义为被测试向量检测到的故障数占故障总数的比例。而DPPM(Defective Parts Per Million)是衡量出厂芯片中缺陷芯片比例的指标。两者通过Williams-Brown模型建立数学联系:DL = 1 - Y^(1-TC),其中Y为制造良率(Yield),DL为缺陷水平(Defect Level)。DPPM = DL × 10⁶。这个公式揭示了关键规律:当良率固定时,测试覆盖率越高,逃逸的缺陷芯片越少。

判断方法:在实际项目中,我们通常先设定DPPM目标(如消费级芯片要求DPPM < 500,车规级要求DPPM < 10),然后反推所需的测试覆盖率。例如,若良率Y=95%,目标DPPM=500,则DL=0.0005,解得TC = 1 - ln(1-DL)/ln(Y) ≈ 1 - ln(0.9995)/ln(0.95) ≈ 0.989,即需要98.9%的测试覆盖率。

案例闭环:某通信芯片项目,门数约500万,采用28nm工艺。初始DFT设计插入8条扫描链,每条链长2000个触发器。TestMAX ATPG生成向量后,SAF覆盖率为96.5%,对应DPPM估算约1200(良率Y=92%)。但客户要求DPPM < 300。分析发现覆盖率瓶颈在于:① 一个异步FIFO的读写指针逻辑未被扫描;② 时钟门控单元(ICG)的测试点不足。解决方案:① 将FIFO指针寄存器改为可扫描版本;② 在ICG输出端增加观测触发器。修改后重新综合,SAF覆盖率提升至98.8%,DPPM估算降至约280,满足客户要求。代价是面积增加约3%,测试向量增加200条,测试时间延长15%。
常见误区:不要盲目追求100%覆盖率。当覆盖率超过98%后,每提升0.1%所需的向量数量可能增加30%以上,导致测试成本急剧上升。工程上应基于DPPM目标反推覆盖率要求,并留出1-2%的裕量即可。此外,DPPM估算依赖良率假设,实际良率需通过量产数据持续校准。

2.4 总结与复盘

本章的核心逻辑链是:物理缺陷 → 故障模型(SAF/TF/BF)→ DFT设计(扫描链/BIST)→ ATPG向量 → 测试覆盖率 → DPPM。SAF是基础,TF覆盖时序缺陷,BF处理版图相关短路。DFT是提升可控性和可观测性的关键手段,而覆盖率与DPPM的量化关系为测试策略的制定提供了数学依据。在实际项目中,务必先明确DPPM目标,再反推覆盖率要求,最后决定DFT结构和ATPG向量数量。TestMAX工具链提供了从DFT插入、ATPG到故障仿真的完整流程,但工具只是手段,深刻理解故障模型和覆盖率原理才是做出正确工程决策的基础。