1. Scan测试概述Scan测试(扫描测试)是一种用于检测芯片数字逻辑部分制造缺陷的方法。它基于扫描链(Scan Chain)技术,将芯片内部的寄存器连接成一条或多条串行链,利用这些链路来执行结构化测试,从而提高故障检测能力,特别是对时序故障、短路/开路故障、互连问题等的检测效果。 在CP(晶圆测试)阶段,Scan测试的主要目的是确保芯片的数字逻辑部分没有重大缺陷,以便尽早筛除有问题的芯片,避免不良芯片进入封装阶段,从而降低后续FT(成品测试)的成本。 2. Scan测试的执行流程 Scan测试通常由ATE(自动测试设备)执行,具体流程如下: (1) 进入Scan模式 芯片通常有一个测试模式控制引脚(Test Mode Enable),当ATE将该引脚拉高(或低)时,芯片进入Scan测试模式。这时,原本独立的寄存器被连接成一条或多条Scan Chain。 (2) Scan Chain加载(Scan Shift) · ATE通过扫描输入端(Scan in),依次将测试数据(Test Pattern)串行地移入Scan Chain。 · 每个时钟周期,数据向前移动一位,直到所有寄存器都被写入测试数据。 (3) 施加功能时钟(Capture) · 在所有Scan Chain寄存器加载完测试数据后,测试系统施加一个或多个功能时钟脉冲,使被测逻辑电路运行一小步。 · 这一步的目的是模拟芯片在正常工作状态下的逻辑响应。 (4) Scan Chain读取(Scan Out) · 施加功能时钟后,ATE将所有寄存器的值串行地移出,通过扫描输出端(Scan Out)读取。 · ATE将读取的数据与预期值(Golden Pattern)进行比对,判断芯片是否有缺陷。 (5) 结果分析 · 通过比较实际扫描输出与预期值,如果发现错误,可能意味着: a. 制造缺陷(如金属层短路/断路) b. 寄存器问题(如DFF故障) c. 互连问题(如信号完整性问题) 3. Scan测试的关键技术 (1) Scan Chain 设计 在芯片设计阶段,工程师会在RTL中插入DFT(Design for Test)逻辑,将所有可扫描寄存器(Scan Flip-Flops, Scan FFs)连接成链。 Scan Chain有以下几种形式: · 单Scan Chain:所有Scan FFs连接成一条链,数据串行输入/输出。 · 多Scan Chain:多个Scan链同时工作,提高测试并行度,加快Scan测试速度。 · 压缩Scan Chain(Compression Scan):使用数据压缩和解压缩 · 技术,减少测试数据量,提高Scan测试效率。 (2) ATPG(Automatic Test Pattern Generation) ATPG工具会根据芯片的结构信息和故障模型(如Stuck-at、Transition Fault、Path Delay Fault)生成Scan测试向量。这些向量用于测试不同的逻辑路径,确保芯片的功能完整性。 (3) Scan Chain Diagnosis 当Scan测试失败时,ATE会记录失败的Scan Chain ID,并结合芯片的布局信息,帮助工程师快速定位故障位置。常见的Scan Chain问题包括: · Scan Chain断裂:信号未能传递到下一级。 · Scan Chain短路:某些寄存器始终保持某个固定值,可能是短路问题。 · 时序问题:由于制造工艺偏差,Scan Chain的时序可能出现异常,导致错误数据被采样。 4. Scan测试的应用与优势 (1) 发现制造缺陷 · 通过Scan测试,可以检测芯片逻辑部分的短路、开路、互连问题,提前筛除不良芯片。 (2) 降低测试成本 · 由于Scan测试可以在CP阶段发现大部分数字逻辑缺陷,避免有缺陷的芯片流入FT阶段,减少后续的测试成本。 (3) 提高良率分析能力 · Scan Chain失败数据可以用于Bin Fail分析,结合Wafer Map,帮助识别工艺异常点,提高良率优化能力。 (4) 结合Shmoo Plot进行时序优化 · Scan测试可以结合Shmoo Plot分析不同电压、频率条件下的失败率,帮助优化时序裕量(Timing Margin)。 5. 总结 Scan测试是CP测试的重要组成部分,它通过Scan Chain和ATPG测试向量,在早期阶段发现芯片逻辑缺陷,提高良率并降低测试成本。Scan测试的执行包括Scan Chain加载、功能时钟施加、Scan Chain读取和数据分析,结合ATE和故障诊断工具,可以有效筛查芯片的制造缺陷。 |