4. 测试基础

芯片测试是集成电路产业链中承上启下的关键环节。其核心目标是在最短时间内、以最低成本,筛选出功能、性能、可靠性满足设计规格的芯片,同时剔除由于制造缺陷导致的失效芯片。本章将系统阐述测试的三大基石:测试目的、测试类型划分以及测试覆盖率这一核心度量指标。

📌 核心观点: 测试不是“为了测而测”,而是为了在可接受的成本下,量化并保证交付给客户的芯片质量(Defective Parts Per Million, DPPM)。测试覆盖率是衡量测试质量的关键桥梁。

4.1 测试的根本目的

芯片测试的目的可以归纳为以下四个层次,从最基本的电气验证到最终的质量与成本平衡:

  1. 功能验证(Functional Verification): 确认芯片的逻辑功能是否完全符合设计规格书(Specification)。例如,一个加法器是否在所有输入组合下都能输出正确结果。
  2. 性能筛选(Performance Screening): 确认芯片在指定的工作电压、温度和频率下,能否达到设计要求的时序、功耗和信号完整性指标。
  3. 缺陷剔除(Defect Screening): 识别并剔除由于制造过程中的颗粒污染、光刻偏差、工艺波动等引入的物理缺陷(如桥接、断路、栅氧击穿)。
  4. 良率与成本控制(Yield & Cost Control): 通过测试数据反馈,指导工艺改进和设计优化(DFT/DFM),在保证质量的前提下提升良率,降低单颗芯片的测试成本。
芯片测试目的层次结构 ④ 良率与成本控制 ③ 缺陷剔除(制造缺陷) ② 性能筛选(时序/功耗/信号) ① 功能验证(逻辑正确性) 质量层次 由低到高

4.2 测试类型分类

根据测试目的和应用阶段,芯片测试通常分为三大类:功能测试、结构测试和参数测试。这三者在测试内容、方法和覆盖目标上各有侧重。

测试类型 核心目标 典型方法 覆盖对象 测试成本
功能测试 验证逻辑功能正确性 定向测试向量、ATPG模式 功能路径、状态机 中
结构测试 检测制造缺陷(桥接/断路) 扫描链、BIST、IDDQ 门级网表、互连线 低~中
参数测试 验证电气性能指标 DC/AC参数测试、OS测试 I/O电平、时序、功耗 高

4.2.1 功能测试(Functional Test)

功能测试是最直观的测试方式。测试机(ATE)向芯片施加预先设计好的激励向量,并比对输出响应是否与预期一致。其优点是直接对应设计规格,但缺点是测试向量数量随电路复杂度指数增长,难以达到高覆盖率。

4.2.2 结构测试(Structural Test)

结构测试不关心芯片的“功能”是什么,而是关注芯片的“结构”是否完好。它基于故障模型(如固定故障模型、跳变故障模型)生成测试向量。结构测试是DFT(可测性设计)的核心应用领域,通过扫描链和BIST(内建自测试)实现高自动化、高覆盖率的测试。

💡 实践要点: 在现代SoC设计中,结构测试(特别是扫描测试和MBIST)是量产测试的主力。功能测试通常只用于小批量验证或特定IP的快速测试。

4.2.3 参数测试(Parametric Test)

参数测试用于测量芯片的电气特性,包括直流参数(如漏电流、输出驱动能力、阈值电压)和交流参数(如建立时间、保持时间、传输延迟)。参数测试对测试机精度要求高,测试时间长,通常只抽样进行(如CP测试中的WAT测试)。

三大测试类型关系图 功能测试 验证逻辑行为 向量量大 覆盖率难保证 结构测试 检测制造缺陷 扫描链/BIST 高覆盖率 参数测试 电气性能测量 DC/AC参数 成本高/抽样 功能+结构 (ATPG模式) 结构+参数 (IDDQ测试)

4.3 测试覆盖率概念

测试覆盖率(Test Coverage)是衡量测试向量对芯片潜在缺陷检测能力的量化指标。它直接决定了测试质量(DPPM)与测试成本之间的平衡点。覆盖率越高,漏测的缺陷越少,但测试向量数量和测试时间也会增加。

4.3.1 常用覆盖率度量

覆盖率类型 英文缩写 定义 典型目标值
固定故障覆盖率 SAF Coverage 检测到的固定为0/1故障数 / 总故障数 > 98%
跳变故障覆盖率 TAF Coverage 检测到的慢上升/慢下降故障数 / 总故障数 > 90%
桥接故障覆盖率 BF Coverage 检测到的短路故障数 / 总故障数 > 85%
IDDQ覆盖率 IDDQ Coverage 可被静态电流测试检测的故障比例 > 80%
代码覆盖率(功能) Code Coverage RTL代码中被执行的行/分支/条件比例 > 95%

4.3.2 覆盖率与良率的关系

测试覆盖率与良率(Yield)是两个不同的概念,但存在紧密联系:

  • 良率:制造过程中,合格芯片占所有生产芯片的比例。它反映的是工艺线的制造水平。
  • 测试覆盖率:测试向量能检测到的缺陷比例。它反映的是测试向量的“完备性”。
  • 缺陷水平(Defect Level):DL = 1 - Y^(1 - TC),其中Y为良率,TC为测试覆盖率。可见,即使良率很高,如果测试覆盖率不足,缺陷水平仍然可能很高。
⚠️ 常见误区: 不要将“功能仿真通过”等同于“测试覆盖率达标”。功能仿真只能验证设计意图,无法覆盖制造缺陷。结构测试(如扫描链)才是量产测试覆盖率的主要来源。
测试覆盖率 vs 缺陷水平 测试覆盖率 (TC) % 0% 100% 缺陷水平 (DL) 高 低 TC=50% TC=90% TC=98% 当TC从90%提升到98% 缺陷水平可降低约10倍

4.4 测试覆盖率提升策略

在实际项目中,提升测试覆盖率需要从设计、测试向量生成和DFT架构三个维度协同推进:

  1. 设计阶段(DFT Insertion):
    • 插入全扫描链(Full Scan),将时序元件转化为可控可观测的扫描单元。
    • 对存储器模块插入MBIST(Memory BIST)控制器,实现自动化测试。
    • 对高速接口插入LBIST(Logic BIST)或IEEE 1687(IJTAG)网络。
  2. 测试向量生成阶段(ATPG):
    • 使用自动测试向量生成工具(如Synopsys TetraMAX、Mentor TestKompress)生成高覆盖率向量。
    • 结合压缩技术(Test Compression)减少测试数据量和测试时间。
  3. 测试流程优化:
    • 在CP(晶圆测试)阶段使用结构测试快速筛选,在FT(最终测试)阶段补充功能测试和参数测试。
    • 利用良率分析工具(如PDF Solutions)反馈测试覆盖率盲区,迭代优化。
📊 行业参考: 对于先进工艺(7nm及以下),量产测试通常要求固定故障覆盖率 > 98.5%,跳变故障覆盖率 > 92%,同时配合至少一种基于IDDQ或电压降的缺陷筛选方法,才能将DPPM控制在100以内。