4. 测试基础
芯片测试是集成电路产业链中承上启下的关键环节。其核心目标是在最短时间内、以最低成本,筛选出功能、性能、可靠性满足设计规格的芯片,同时剔除由于制造缺陷导致的失效芯片。本章将系统阐述测试的三大基石:测试目的、测试类型划分以及测试覆盖率这一核心度量指标。
📌 核心观点: 测试不是“为了测而测”,而是为了在可接受的成本下,量化并保证交付给客户的芯片质量(Defective Parts Per Million, DPPM)。测试覆盖率是衡量测试质量的关键桥梁。
4.1 测试的根本目的
芯片测试的目的可以归纳为以下四个层次,从最基本的电气验证到最终的质量与成本平衡:
- 功能验证(Functional Verification): 确认芯片的逻辑功能是否完全符合设计规格书(Specification)。例如,一个加法器是否在所有输入组合下都能输出正确结果。
- 性能筛选(Performance Screening): 确认芯片在指定的工作电压、温度和频率下,能否达到设计要求的时序、功耗和信号完整性指标。
- 缺陷剔除(Defect Screening): 识别并剔除由于制造过程中的颗粒污染、光刻偏差、工艺波动等引入的物理缺陷(如桥接、断路、栅氧击穿)。
- 良率与成本控制(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测试)。
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为测试覆盖率。可见,即使良率很高,如果测试覆盖率不足,缺陷水平仍然可能很高。
⚠️ 常见误区: 不要将“功能仿真通过”等同于“测试覆盖率达标”。功能仿真只能验证设计意图,无法覆盖制造缺陷。结构测试(如扫描链)才是量产测试覆盖率的主要来源。
4.4 测试覆盖率提升策略
在实际项目中,提升测试覆盖率需要从设计、测试向量生成和DFT架构三个维度协同推进:
- 设计阶段(DFT Insertion):
- 插入全扫描链(Full Scan),将时序元件转化为可控可观测的扫描单元。
- 对存储器模块插入MBIST(Memory BIST)控制器,实现自动化测试。
- 对高速接口插入LBIST(Logic BIST)或IEEE 1687(IJTAG)网络。
- 测试向量生成阶段(ATPG):
- 使用自动测试向量生成工具(如Synopsys TetraMAX、Mentor TestKompress)生成高覆盖率向量。
- 结合压缩技术(Test Compression)减少测试数据量和测试时间。
- 测试流程优化:
- 在CP(晶圆测试)阶段使用结构测试快速筛选,在FT(最终测试)阶段补充功能测试和参数测试。
- 利用良率分析工具(如PDF Solutions)反馈测试覆盖率盲区,迭代优化。
📊 行业参考: 对于先进工艺(7nm及以下),量产测试通常要求固定故障覆盖率 > 98.5%,跳变故障覆盖率 > 92%,同时配合至少一种基于IDDQ或电压降的缺陷筛选方法,才能将DPPM控制在100以内。