可测试性基础:故障模型、测试覆盖率与缺陷-故障辨析

在数字IC设计中,可测试性设计(DFT)的核心目标是以可控的成本检测出芯片制造过程中引入的物理缺陷。然而,物理缺陷种类繁多且难以直接观测,工程上必须通过故障模型将其抽象为逻辑层面的行为变化,再据此生成测试向量并评估测试质量。本章将系统讲解固定故障、跳变故障、桥接故障等核心故障模型,深入剖析测试覆盖率的计算方法与工程意义,并厘清“缺陷”与“故障”这两个极易混淆但本质不同的概念。理解这些基础,是后续学习扫描链设计、ATPG(自动测试向量生成)和BIST(内建自测试)的基石。

缺陷 → 故障模型 → 测试覆盖率 映射关系图 物理缺陷(Defect) 制造过程中的物理异常 • 硅片划伤 / 颗粒污染 • 金属桥连 / 介质击穿 • 掺杂浓度偏移 / 接触孔失效 抽象 故障模型(Fault Model) 逻辑级行为描述 • 固定故障(SA0/SA1) • 跳变故障(Slow-to-Rise/Fall) • 桥接故障(AND/OR型) • 开路故障 / 延迟故障 量化 测试覆盖率(Coverage) 故障列表中被检测比例 • 故障覆盖率 = 检测数/总数 • 测试向量质量评估 • 缺陷水平(DL)估算 关键工程关系: 1. 一个物理缺陷可能对应多个故障模型(如金属桥连既可能表现为固定故障,也可能表现为桥接故障)。 2. 故障覆盖率 ≠ 缺陷覆盖率:故障模型是近似,无法覆盖所有物理缺陷。 3. 工程目标:在合理成本下,使故障覆盖率 ≥ 98%(固定故障)或 ≥ 90%(跳变故障)。 4. 缺陷水平(DL)与良率(Y)和故障覆盖率(FC)的关系:DL ≈ 1 - Y^(1-FC)。 5. 测试质量最终以DPPM(百万分之缺陷率)衡量,而非单纯覆盖率。

上图清晰地展示了从物理缺陷到故障模型,再到测试覆盖率的工程映射链路。在实际DFT流程中,我们首先需要理解芯片制造过程中可能出现的物理缺陷类型,然后将其抽象为逻辑故障模型,最后通过故障仿真计算覆盖率来评估测试向量的有效性。下面我们将逐一深入剖析各个核心概念。

2.1 缺陷与故障的本质区别

核心原理:从物理世界到逻辑世界的映射

缺陷(Defect)是指芯片制造过程中引入的物理层面的异常,例如硅片表面的颗粒污染、光刻过程中的对准偏差、金属层之间的介质击穿、掺杂浓度的不均匀等。缺陷是客观存在的物理现象,具有随机性和多样性,无法被直接枚举或建模。而故障(Fault)则是将缺陷对电路逻辑行为的影响进行抽象后的表示,是逻辑层面的概念。例如,一根金属线因为颗粒污染而断裂,在逻辑上可能表现为该信号线固定为逻辑0(Stuck-At-0)或固定为逻辑1(Stuck-At-1)。

理解这一区别至关重要:故障模型是对缺陷的近似,而非精确描述。一个物理缺陷可能对应多个故障模型,而一个故障模型也可能由多种不同的物理缺陷引起。例如,一个晶体管的源漏极短路,既可能表现为固定故障,也可能表现为桥接故障。因此,DFT工程师必须清楚,基于故障模型生成的测试向量,其实际缺陷检测能力取决于模型与真实缺陷的匹配程度。

工程经验:在65nm及以下工艺节点,固定故障模型已不足以覆盖所有缺陷类型。例如,金属桥接缺陷在先进工艺中占比显著上升,必须引入桥接故障模型和跳变故障模型来补充测试。这也是为什么现代DFT流程中,除了传统的SA(Stuck-At)测试,还必须进行TDF(Transition Delay Fault)测试和桥接故障测试的原因。

判断方法:缺陷与故障的工程区分

维度 缺陷(Defect) 故障(Fault)
物理层级 硅片、金属层、介质层中的物理异常 逻辑节点、门级电路的行为异常
可观测性 需通过物理失效分析(PFA)观测 通过逻辑仿真或ATE测试观测
建模方式 无法直接建模,具有随机性 可枚举、可仿真、可计算覆盖率
工程处理 通过工艺改进和良率提升来减少 通过DFT结构和测试向量来检测
典型示例 金属桥连、栅氧化层击穿、接触孔空洞 SA0、SA1、Slow-to-Rise、桥接AND型

案例拆解:一个金属桥连缺陷的故障建模过程

假设在28nm工艺的某芯片中,两条相邻的金属线(信号A和信号B)之间由于刻蚀残留形成了桥连。在物理层面,这是一个典型的桥接缺陷。在逻辑层面,我们需要将其抽象为故障模型:

  1. 初始现象:芯片在ATE测试中,特定测试向量下输出逻辑错误,但并非所有向量都能触发。
  2. 关键输入数据:通过扫描链诊断(Scan Diagnosis)定位到某组合逻辑区域,涉及信号A和信号B。
  3. 分析判断过程:如果桥接电阻较低,信号A和B会被强制为相同逻辑值。根据逻辑门类型,可能表现为“线与”(Wired-AND)或“线或”(Wired-OR)行为。若A和B驱动同一与非门,则可能表现为固定故障SA0或SA1,但更精确的建模是桥接故障。
  4. 实际操作步骤:在ATPG工具中,将桥接故障模型(4-way bridging fault)加入故障列表,重新生成测试向量。对比SA模型,桥接模型需要额外的测试向量来覆盖A=0,B=1和A=1,B=0两种冲突状态。
  5. 结果对比:加入桥接故障模型后,测试向量数量增加约15%,但缺陷检测率(DPPM)显著改善,良率损失降低。
  6. 复盘经验:在先进工艺中,桥接故障模型不可忽略。DFT工程师应在项目初期就评估工艺相关的缺陷类型,选择合适的故障模型组合。

2.2 核心故障模型详解

固定故障(Stuck-At Fault)

固定故障是最经典、最基础的故障模型,假设电路中某个信号线永久固定为逻辑0(SA0)或逻辑1(SA1)。该模型主要针对直流(DC)缺陷,如金属线断裂、晶体管短路等。固定故障的检测原理是:通过施加适当的输入向量,使故障点的正常逻辑值与其故障值相反,并将该差异传播到主输出或扫描触发器。

固定故障的故障列表大小为2 × 节点数(每个节点有SA0和SA1两种可能)。在ATPG中,通常使用D算法、PODEM或FAN算法生成测试向量。固定故障覆盖率是衡量测试质量的最基本指标,业界普遍要求达到98%以上。

关键点:固定故障测试是“静态”测试,只关注逻辑值,不关注时序。它无法检测与时间相关的缺陷,如信号跳变过慢。

跳变故障(Transition Delay Fault)

跳变故障模型用于检测时序相关的缺陷,即信号在规定时间内无法完成从0到1或从1到0的跳变。该模型假设每个节点存在两种故障:慢上升(Slow-to-Rise)和慢下降(Slow-to-Fall)。检测跳变故障需要两个连续的测试向量:第一个向量将节点初始化到目标值,第二个向量使节点发生跳变,并在捕获沿(Capture Edge)采样结果。

跳变故障测试通常需要高速ATE和扫描链的时序控制。在可测性设计中,跳变故障测试依赖于扫描触发器的“沿敏感”捕获能力。跳变故障覆盖率一般要求达到90%以上,对于高性能芯片(如CPU、GPU)要求更高。

桥接故障(Bridging Fault)

桥接故障模拟两条或更多信号线之间意外短路的情况。根据桥接电阻和逻辑门类型,桥接故障可表现为:

  • Wired-AND:桥接后,两个信号被强制为两者中的低电平(0)。
  • Wired-OR:桥接后,两个信号被强制为两者中的高电平(1)。
  • Dominant-AND/OR:其中一个信号占主导地位,强制另一个信号跟随。

桥接故障的检测比固定故障更复杂,因为需要同时控制两个信号到相反逻辑值,并观察其影响。在深亚微米工艺中,桥接缺陷是导致DPPM超标的主要因素之一。现代ATPG工具支持4-way桥接故障模型(考虑两个节点之间的四种组合),但故障列表会显著增大,测试向量数量也会增加。

其他故障模型

除了上述三种主要模型,还有开路故障(Open Fault)、延迟故障(Path Delay Fault)、IDDQ故障等。开路故障指信号线断裂但未完全断开,可能表现为间歇性逻辑错误;路径延迟故障关注整个关键路径的时序裕量;IDDQ故障通过监测静态电流来检测物理缺陷。在实际工程中,DFT工程师需要根据芯片类型、工艺节点和客户要求选择合适的故障模型组合。

2.3 测试覆盖率:定义、计算与工程意义

核心原理:覆盖率是测试质量的量化指标

测试覆盖率(Fault Coverage, FC)定义为:FC = 被检测到的故障数 / 故障列表中的故障总数 × 100%。覆盖率越高,意味着测试向量能够检测到越多的潜在故障,芯片出厂后的缺陷水平越低。但覆盖率并非越高越好,因为覆盖率提升需要增加测试向量数量,从而增加测试时间和测试成本。

工程上,覆盖率与缺陷水平(Defect Level, DL)之间存在数学关系:DL ≈ 1 - Y^(1-FC),其中Y为制造良率。例如,若良率为90%,固定故障覆盖率为98%,则DL ≈ 1 - 0.9^(0.02) ≈ 0.21%,即每百万颗芯片中约有2100颗存在缺陷。若覆盖率提升到99.5%,DL降至约0.05%,即500 DPPM。

判断方法:覆盖率计算流程

  1. 故障列表生成:使用ATPG工具读取网表,根据所选故障模型生成完整的故障列表。
  2. 故障仿真:将测试向量施加到电路,仿真每个故障是否被检测到。
  3. 覆盖率统计:工具自动计算检测到的故障数与总数的比值。
  4. 未检测故障分析:对未检测到的故障进行分类,判断是冗余故障(不影响逻辑功能)还是需要增加测试向量。
  5. 迭代优化:增加测试向量或调整DFT结构(如增加可观测点),提升覆盖率至目标值。
常见误区:不要将“测试覆盖率”与“缺陷覆盖率”混为一谈。故障模型是近似,即使固定故障覆盖率达到100%,也无法保证检测出所有物理缺陷。例如,桥接缺陷在SA模型中可能表现为可检测,但在实际物理中可能因电阻值不同而无法被ATE捕获。因此,现代DFT流程必须采用多模型覆盖策略。

案例拆解:覆盖率与测试成本的权衡

某通信芯片项目,目标DPPM为500。初始SA覆盖率98.2%,TDF覆盖率88.5%。在ATE上测试时间为12秒/颗。为了降低DPPM,DFT团队决定将TDF覆盖率提升至92%。

  • 关键输入数据:增加TDF测试向量后,测试时间增加至14.5秒,但覆盖率提升至92.3%。
  • 分析判断过程:根据DL公式,SA覆盖率98.2% + TDF覆盖率92.3%的综合缺陷水平估算降至约400 DPPM,满足目标。
  • 实际操作步骤:在ATPG工具中增加TDF向量生成约束,优化扫描链时序,减少测试时间开销。
  • 结果对比:测试时间增加20.8%,但DPPM从约700降至400,客户验收通过。
  • 复盘经验:覆盖率提升存在边际效应,当SA覆盖率超过98%后,每提升0.1%所需的测试向量增量显著增加。DFT工程师应基于DPPM目标反推覆盖率需求,避免过度测试。

2.4 常见误区与工程复盘

误区一:追求100%覆盖率

100%覆盖率在理论上可行,但工程上不现实。冗余故障(如冗余逻辑中的故障)不影响电路功能,无法被检测。此外,某些故障需要极大的测试向量数量才能覆盖,成本过高。业界标准是SA覆盖率≥98%,TDF覆盖率≥90%,高性能芯片可适当提高。

误区二:忽略故障模型的选择

不同工艺节点和电路类型对故障模型的敏感度不同。例如,模拟/混合信号电路更关注IDDQ和桥接故障,而高速数字电路更关注跳变故障。DFT工程师应在项目规划阶段就确定故障模型组合,而不是在测试阶段才发现覆盖率不足。

误区三:将覆盖率作为唯一指标

覆盖率是重要指标,但不是唯一指标。测试时间、测试功耗、测试向量存储量、ATE通道数等都需要综合考虑。例如,增加测试向量可以提升覆盖率,但也会增加测试时间和功耗,可能导致芯片在测试过程中过热。

总结复盘:可测试性设计的基础在于对故障模型的深刻理解。固定故障是基石,跳变故障补充时序维度,桥接故障覆盖先进工艺缺陷。测试覆盖率是量化测试质量的工具,但必须结合DPPM目标和成本约束来设定合理阈值。缺陷与故障的区别提醒我们,任何模型都是近似,DFT工程师需要保持对物理缺陷的敏感度,不断优化测试策略。