芯片验证与失效分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
芯片验证测试及失效分析1
檀彦卓韩银和李晓维
摘要本文对验证测试与失效分析技术进行了系统介绍,包括验证测试的一般流程、常用的分析方法以及基于验证测试的失效分析。通过分析集成电路设计和制造工艺的发展给测试带来的影响,简要介绍了验证测试面临的挑战以及未来关注的若干问题。
1 芯片的验证测试
在现代集成电路制造工艺中,芯片加工需要经历一系列化学、光学、冶金、热加工等工艺环节。每道工艺都可能引入各种各样的缺陷。与此同时由于特征尺寸的不断缩小,各类加工设施成本也急剧上升。例如有人估计90nm器件的一套掩模成本可能超过130万美元。因此器件缺陷造成的损失代价极为高昂。在这种条件下,通过验证测试,分析失效原因,减少器件缺陷就成为集成电路制造中不可少的环节。
验证测试(Verification Test , Design Debug)是实现“从设计到测试无缝连接”的关键。在0.18微米以下的制造工艺下,芯片验证测试变得更加至关重要。它的主要任务是验证设计和测试程序(Test Programs)的正确性,确定芯片是否符合所有的设计规范([2], pp.21)。它通过合理的失效分析(Failure Analysis)不仅为探求设计的关键参数所决定的特性空间奠定基础,还为设计人员改进设计及时反馈有效的数据依据,并为优化整体测试流程、减小测试开销以及优化后期的生产测试(Production Test)开拓了便利途径。
对芯片最显著的改进不仅仅在设计流程中产生,而且在芯片调试和验证流程中反复进行。尤其是在高性能芯片研制过程中,随着芯片复杂度的提高,对验证测试的要求更加严格,与设计流程的交互更加频繁。因此,从某种意义上说,“设计”与“验证测试”是一个非常密切的“交互过程”。对于设计工程师而言,关于芯片功能和性能方面的综合数据是关键的信息。他们通常根据设计规范预先假设出关于芯片各项性能大致的参数范围,提交给验证测试人员,通过验证测试分析后,得出比较真实的性能参数范围或者特定值。设计工程师再根据这些值进行分析并调整设计,使芯片的性能参数达到符合设计规范的范围。往往这样的交互过程不只一次。通常一个健全的验证测试策略包含很多详细的信息。它一般以数据文件的形式(Data Sheet)为设计人员和测试人员在修复或者完善设计的交互过程中提供有效的数据依据,主要包括芯片的CMOS工艺等的特征描述、工作机理的描述、电气特征(DC参数,AC参数,上/拉电阻,电容,漏电,温度等测试条件,等等)、时序关系图、应用信息、特征数值、芯片电路图、布局图等等([3],pp.24 )。将芯片在验证测试流程中经过参数测试、功能性测试、结构性测试后得出的测试结果与上述数据信息比较,就会有针对性地反映芯片性能方面存在的种种问题。依据这些问题,设计工程师可以对设计做出相应的改进。
随着芯片速度与功能的不断提高,超大规模集成电路尤其是集成多核的芯片系统(System-On-a- Chip, SOC)的出现使得芯片迅速投入量产过程难度增加,由此验证测试变
1本文摘自中国科学院计算技术研究所内部刊物—信息技术快报 2004 年第 9 期
得更加必要。目前,开发低成本高效率的全面验证测试策略成为芯片制造商的关注点。能够在早期(如初次样片测试阶段)全面地获取芯片品质鉴定的信息变得至关重要。
2 验证测试流程及方法
为了能够较全面地检测芯片各项指标,验证测试一般需要综合多种测试分析方法,并将每种测试分析方法对应的测试向量作为失效分析流程中的“测试任务”或“测试项目”,然后根据每个测试任务的作用以及实际工程的需要,建立一个实际可行的验证测试分析流程。
2.1 建立有效的验证测试流程
“芯片验证的成功起始于设计” 。改进传统的验证测试流程是一个突破点。传统的验证测试开发流程采用串行方式(图1.a)。第一片样片加工出来之前,设计人员获得的芯片性能方面的反馈信息很少,甚至没有。串行的测试流程中验证测试要等待获得样片后才能开始进行。这种传统的测试流程延缓了产品面市的速度。对于设计和测试,这种串行模式的效率很低。采用验证测试和生产测试并发进行的测试流程是目前比较通用的测试策略。验证测试和生产测试两者的测试要求不同,互为补充。故设计和测试人员可以分别考虑两种测试,从而同时加快工作进程,从总体上缩短芯片开发时间。采用这种并行进行的方法使两者相辅相成,既可以共享设计仿真方面的信息,又可以在投片之前完全调试好测试向量和相关设置,继而顺利启动验证测试,这样大大提高了测试进度。
如图1.b所示,在整体开发过程中,验证测试和生产测试两者并行进行,用来满足各自不同的测试需要。验证测试通过样片调试(Debugging)和失效分析两种常用方式进行。高效的芯片调试在加速从设计到量产的过程中起到非常关键的作用。为了进行调试、提高成品率和进行失效分析,验证测试人员往往采用假设分析方法,以求获得更详细的数据,从而找到特定的错误或被测芯片全面的性能特征。采用假设分析方法有助于设计和生产工程师探查芯片的“真正潜力”,从而找到机会突破设计局限,扩展芯片的功能以及提高性能。与生产测试相比,验证分析通常注重的不是成品率而是Shmoo图、位图(Bitmaps)、测试项目的多样化和全面的调试能力。测试项目很可能包括更多短小的测试向量,用于找出芯片的特定行为并且明确芯片的性能。为降低调试成本,测试开发人员还常将相关的探测系统与验证系统
配合起来,以更精确地定位设计等方面的问题。作为生产测试的补充,验证测试可以提供详细的验证结果用以进行失效分析。例如,可以与散射显微镜、非侵入式探测设备等紧密配合。验证测试设备可以提供必要的激励,然后通过探测设备捕获芯片内部节点的波形来查出失效原因。这些原因可能是设计或者工艺差异方面的,有时候还可以查出生产测试程序中的错误。当前,一些大的测试开发公司已经研制出各种成熟的测试软件工具。它们不仅可以根据设计与仿真数据自动产生测试向量、测试程序,还可以在投片之前模拟测试仪的环境,提前进行测试程序与芯片之间的交互过程,大大节省了样片验证测试花费的时间,使测试人员集中在调试方面,从而更快速完成调试工作。
2.2 常用的验证测试分析方法
0.13µm甚至更低尺寸的超深亚微米工艺和IP集成技术的发展要求综合多种测试分析方法,互为补充,以满足验证分析芯片不同性能指标的要求,确定芯片失效的原因。当前主要采用的测试分析方法大致分为三类:
2.2.1 基于参数的验证测试分析方法
该方法已经比较成熟,测试对象一般针对芯片的电气特性,主要包括直流参数(DC)和交流参数(AC)的测试([2],pp21,30)。设计者可以较方便地估计出芯片工艺、性能及设计方面的缺陷,进行相应的调整和完善。这种方法测试速度快、测试开销较低,是高效的失效分析途径。
在如今的纳米级制造工艺下,与速度或频率相关的缺陷(Speed-Related Defects)开始成为主导,其中时延故障表现最为突出[4]。纯粹的交流参数测试并不能有效地检测时延故障。针对与速度或频率相关的缺陷, A.L.Crouch et.al.[4]提出了基于扫描的AC-Scan技术,基于跳变时延故障(Transition Delay Faults)和通路时延故障(Path Delay Faults)模型,采用高速的系统时钟作为Capture时钟,实现所谓的“真速捕获”响应。与传统的功能性测试方法相比较,AC-Scan技术具有测试速度快、成本低等优势。G.Aldrich[5]指出AC-Scan技术将是非常有前景的测试方法。AC-Scan技术应用到实际验证测试分析实验中,测试覆盖率也很可观[6,7]。然而,AC-Scan也有缺点。其局限性在于它对设计有更多的要求。为避免增加设计难度,也可以采用非Scan的时延故障测试。
2.2.2 基于功能的验证测试分析方法
功能性测试分析方法通过输入测试数据验证芯片是否正确执行设计规范所设定的逻辑功能,以确定芯片能否正常工作。全面的功能性测试通常考虑检测芯片性能的所有方面,包括电源电压、输入/输出电平与电流、输入/输出信号时序、测试频率、输入信号波形等等[8]。因此输入的测试数据就包含测试向量文件(指令或激励)、输入信号时序(信号跳变信息)、输入信号波形、输入电流等等信息。测试人员通常使用一系列专门设计的较短的测试向量来激励特定的电路单元和被测电路网络。当捕获到的输出响应与期望值不吻合时,就表明芯片在该功能性测试向量上失效了。通过对芯片电路各组成部分逐一分析,设计人员就能对单个子系统能否正常工作进行确认,或将精力集中在芯片组成部分的缺陷调试方面。
功能测试通常与真速测试结合(At-Speed Test),称为真速功能测试(At-Speed Functional Test)。真速功能测试在失效分析中也很重要,是验证芯片能否在工作频率下正常运行的有效方法[9]。
随着集成电路复杂度的提高,一个芯片系统可以由上亿个晶体管组成。这种高度集成的复杂性导致功能性测试分析方法耗时费力,效率低下,且不能达到预期目标。真速功能性测