《集成测试【优秀4篇】》
《集成测试【优秀4篇】》由精心整编,希望在【集成测试】的写作上带给您相应的帮助与启发。
集成测试范文 篇1
文章编号:1671-489X(2014)18-0094-03
集成电路测试是集成电路产业不可或缺的一个重要环节,其贯穿了集成电路设计、生产与应用的整个过程。集成电路测试技术的发展相对滞后于其他环节,这在一定程度上制约了集成电路产业的发展。集成电路测试产业不但对测试设备依赖严重,对测试技术人员的理论基础和实践能力也有着较高要求。为应对上述挑战,加强电子类学生的就业竞争力,就要求学生在掌握集成电路工艺、设计基础知识的同时,还需具备集成电路测试与可测性设计的相关知识[1-2]。
目前,国内本科阶段开设集成电路测试与可测性设计课程的高校较少,学过的学生也多数反映比较抽象,不知如何学以致用。究其原因,主要是教学环节存在诸多问题[3]。为了提高该课程教学质量,本文对该课程教学内容、方法进行了初步的探索研究,以期激发学生的学习主动性,加深对该课程的理解和掌握。
1 理论教学结合实际应用
在理论教学中结合实际应用,有助于学生明确学习目的,提升学习兴趣。因此,讲授测试重要性时可以结合生活中的应用实例来展开。如目前汽车中的ABS电路如果不通过测试,将会造成人员和汽车的损伤;远程导弹中的制导电路不通过测试,将无法精确命中目标;制造业中的数控机床控制电路,交通信号灯的转向时间显示电路,家电产品中的MP3、MP4解码电路等,均需进行测试等。通过这些介绍,可以使学生了解测试的重要性,从而能更加主动地去掌握所学知识。
2 合理安排教学内容
针对集成电路测试与可测性设计的重要性,电子类专业在本科生三年级时开设集成电路测试与可测性设计课程。该课程的教材采用以中文教材《VLSI测试方法学和可测性设计》(雷绍允著)为主、以英文原版教材《数字系统测试与可测性设计》(Miron Abramovici著)为辅的形式,结合国外高校的授课内容和可测性设计在工业界的应用,对课程内容进行设计。课程定为48学时,课程内容大致分为集成电路测试、可测性设计和上机实验三个部分。
集成电路测试 这部分内容安排20个学时,主要讲解集成电路的常用测试设备、测试方法、集成电路的失效种类、常用的故障模型以及故障检测的方法。组合逻辑电路测试着重讲解测试图形生成方法,主流EDA软件核心算法,包括布尔差分法、D算法、PODEM以及FAN算法等。时序电路测试讲解时序电路的测试模型和方法,介绍时序电路的初始化、功能测试以及测试向量推导方法。
集成电路可测性设计 这部分内容安排16个学时,主要讲解集成电路专用可测性设计方法如电路分块、插入测试点、伪穷举、伪随机等一些较为成熟的可测性设计方法。同时讲解工业界较为流行的可测性设计结构。
上机实验 这部分内容安排12学时。目前主流测试与可测性设计EDA软件Synopsys属于商业软件,收费较高,难以在高校普及使用。为此,本课程选取开源软件ATALANTA和FSIM并基于ISCAS85标准电路,进行故障测试图形生成实验。此外,通过在实验手册中编排基于Quartus软件的电路可测性结构设计等内容,将实验和理论讲解有机结合。
3 培养学生举一反三的能力
创设问题情境,启发学生自主利用已学知识,积极思考、探索。如在讲授组合逻辑故障测试向量生成时,以较为简单的组合逻辑为例,对图1提出以下问题[4]。
1)为了能够反映在电路内部节点所存在的故障,必须对故障节点设置正常逻辑值的非量,这个步骤称为故障激活。对应于图1,如何激活故障G s-a-1?
2)为了能够将故障效应G传播到输出I,则沿着故障传播路径的所有门必须被选通,也就是敏化传播路径上的门。对应图1,如何传播故障G s-a-1?
3)根据激活和敏化故障的要求,如何设置对应的原始输入端的信号值?
通过提问思考和共同探讨,问题得以解决,学生印象深刻,对后续理解各种测试向量生成算法奠定基础。
4 实例讲解
集成电路测试与可测性设计是一门理论化较强的课程,学生在学习过程中可能会产生“学以何用”的疑问。为消除这些疑问,加强学生学习兴趣,明确学习目的,需要授课教师在课程讲解过程中穿插一些测试实例。为此,本课程以科研项目中所涉及的部分测试实例为样本,结合学生的掌握和接受能力加以简化,作为课堂讲解实例。
下面以某个整机系统中所涉及的一款数字编码器为例,进行功能和引脚规模的简化,最终形成图2所示的简化编码器原理图。针对该原理图和具体工作原理,讲解该编码器的基本测试方法和过程。
图2所示编码器有四个地址输入引脚(A0~A3),一个电源引脚VDD(5 V),一个时钟输入引脚CLK,一个输出引脚DOUT和一个接地引脚GND。在地址端(A0~A3)输入一组编码,经过编码器编码,在DOUT端串行输出。编码的规律如图3所示,编码输出顺序(先左后右):A0编码A1编码A2编码A3编码同步位。
该测试实例主要围绕功能测试来进行具体讲解。功能测试通过真值表(测试图形)来验证编码器功能是否正确。编码器输入引脚可接三种状态:高电平(1)、低电平(0)和悬空(f)。本实例只列举三组真值表来对该编码器进行测试,即输入引脚分别为1010、0101、ffff。真值表中的每一行代表一个时钟周期(T)。H(高电平)和L(低电平)代表编码器正确编码时DOUT引脚的输出电平。针对1010的输入,参照图3编码规律和表1编码顺序,DOUT输出按A0 A1 A2 A3(1010)顺序实现编码,具体真值表如图4所示。
图4中Repeat n(n为自然数)代表重复验证该行n个时钟。该测试图形通过测试系统的开发环境编译器编译成测试机控制码,发送给测试系统控制器。测试系统发出被测电路所需的各种输入信号并捕获被测电路的输出引脚DOUT信号。当实际测试采样DOUT引脚所得信号与测试图形中的期望输出完全相符时,表示被测电路功能正确,测试通过。反之,则提示有错,编码器功能失效。同样,当输入分别为0101和ffff时,测试图形如图5、图6所示。
实际数字集成电路测试的过程远比上述过程复杂,本例中所讲解的功能测试是一种不完全测试,测试的故障覆盖率和测试效果有待商榷。然而,无论多复杂的功能测试,其主要测试原理基本类似。通过这样的测试实例讲解,能够让学生了解测试图形的功能,熟悉数字电路测试的大体过程和基本原理,加深对理论知识的理解。
5 重视与相关学科的交叉衔接
作为电子类的专业课,本课程横跨计算机软件技术、电路设计技术、数学、物理等多个领域。有鉴于此,在教学中应尽可能地体现集成电路测试与可测性设计与其他课程的关系,在教学中为后续课程打下基础。
集成测试范文 篇2
关键词:PC机;C语言;单片机;硬件;集成块;数字集成电路测试仪
中图分类号:TN431文献标识码:A文章编号:1009-2374(2009)20-0035-02
在数字电路实验室,集成块是常见的,由于它的体积较小,性能的好坏很难判断。因此,这里提出运用了单片机原理、C语言、通信原理、低频电路、数字电路等基本知识,设计了一台基于PC机的数字集成电路通用测试仪。这里主要探讨硬件电路构思与设计。
该测试仪主要是运用单片机的接口与显示程序和C语言的串行通讯程序来测试14管脚、16管脚的74Ls系列的集成块好坏。主要用到单片机CPU集成块89C51、驱动器集成块164、通信集成块232。该测试仪运用发光二极管实测灯与标准灯的发光情况相比较,来判断其好坏。该方法简单方便,是实验室不可缺少的工具之一。
一、想法的来源
一块小小的集成块,如何才能判断它的好坏呢?当然,有一些集成块在工作时是可以用万用表测量其管脚电压来判断它的好坏,但是比较麻烦。
“数字集成电路通用测试仪”,目的是能够简单而且方便地测试集成块的好坏。它主要是运用单片机的汇编语言和C语言来编程,还要用到通信原理、数字电路等知识。
该测试仪可以单拍测试,也可以连续测试,通过串行通讯送过来的数据,用发光二极管的发光情况来判断。用实测灯(绿色二极管)与标准灯(红色二极管)的亮暗来比较,如果两者发光情况一致,则表示通过,说明集成块是好的;如果不一致,则表示通不过,说明有管脚坏了。
有了这种测试仪,我们可以很方便地判断集成块的好坏,减少了实验室人员的工作量,具有很强的实用性。
二、总体设计
(一)技术指标
1.测试管脚数≤16PIN;
2.测试速度
3.测试品种可任意更换。
(二)技术要求
1.能对各种数字集成电路进行功能测试。
2.可连续测试,连续测试时,每按一次按钮,可全部测完,发光二极管上给出合格(失败)判断,并将测试结果在PC机上显示。
3.也可单拍测试,单拍测试时,每按一次按钮,进行一个节拍的测试并在显示器显示节拍号。
4.通过键盘操作,可将盘上的品种程序调入测试仪,测试结果通过串口回送PC机,PC机在屏幕上能显示合格管脚图形及实测管脚图形。
(三)硬件设计
对于生活在现代科技发达的社会技术人员来说,软件已经成为一种时尚,有了软件,提高了现代人生存的速度,但是,有些软件的应用必须在硬件的基础上才能够使用。对硬件电路的设计不但要熟练掌握低频电路原理、高频电路原理、数字电路原理、还得熟练掌握电子设计自动化(EDA)的技术。
(四)软件设计
软件设计和硬件设计必须结合进行。在本次课题设计中,主要是运用LCAW软件和C语言进行编程,用PROTEL软件画原理图。
基于PC机的数字集成电路通用测试仪设计时所用到的元件比较多,设计时必须根据原理图仔细安装,熟练掌握有关软件的使用,并且特别要注意软、硬件的结合使用。
三、硬件电路的设计
如一般的计算机系统一样,单片机的应用系统由硬件和软件所组成。硬件由单片机、扩展的存储器、输入/输出设备等硬部件组成的机器,软件是各种工作程序的总称。硬件和软件只有紧密结合、协调一致,才能组成高性能的单片机应用系统。在系统的研制过程中,软硬件的功能总是不断地调整,以便于相互适应。硬件设计的任务是根据总体设计要求,在所选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的电路原理图,必要时做一些部件实验,以验证电路图的正确性,以及工艺加工的设计加工、印制板的制作、样机的组装。
(一)硬件设计要点
一个设计确定后,经过详细调研,可能产生多种设计方案,在众多的设计方案中怎样选择?为使硬件设计尽可能合理,应重点考虑以下几点:
1.尽可能选择功能强的芯片,以简化电路。
2.留有余地。在设计硬件电路时,要考虑到将来修改、扩展的方便。ROM空间、RAM空间、I/O端口,在样机研制出来后进行现场试用时,往往会发现一些被忽略的问题,而这些问题是不能单靠软件措施来解决的。如有些新的信号需要采集,就必须增加输入检测端,有些物理量需要控制,就必须增加输出端。如果在硬件设计之初就多设计出一些I/O端口,这个问题就会迎刃而解;A/D和D/A通道和I/O端口同样的原因留出一些A/D和D/A通道,将来可能会解决大问题。
3.以软代硬。单片机和数字电路本质的区别就是它具有软件系统。很多硬件电路能做到的,软件也能做到。原则上,只要软件能做到的就不用硬件。硬件多了不但增加成本,而且系统故障率也提高了。以软代硬的实质是以时间代空间,软件执行过程需要消耗时间,因此,这种代替带来的不足就是实时性下降,在实时性不高的场合,以软代硬是很合算的。
4.工艺设计。包括机箱、面板、配线、接插件等。必须考虑到安装、调试、维修的方便。另外,硬件抗干扰措施也必须在硬件设计时一并考虑进去。
(二)所用芯片介绍
硬件设计的步骤中的第一步就是查找可能涉及的芯片的资料。这是一步非常重要的步骤。它是硬件电路设计正确性和可靠性的基础。
1.89C51芯片的简介。AT89C51是一种低功耗、高性能内含4K字节闪电存储(Flash memory)的8位CMOS微控制器。片内闪电存储器的程序代码或数据可在线写入,亦可通过常规的编程器编程。AT89C51芯片内部具有下列硬件资源:4K字节闪电存储器,128字节RAM ,32条I/O线,两个16位定时/计数器,五源两级中断结构,全双工串行口,片内震荡器及时钟电路等。AT89C51片内含三个封锁位,若封锁位LB1已被编程,则EA引脚上的逻辑电平在芯片复位时被采样并锁存。但如果该器件上电时无复位,那么相应锁存器便被初始化为随机值,此值将保持到复位时止。片内闪电存储器的编程,AT89C51片内存储器售后通常处于擦除状态,即每一地址单元内容均为FFH,人们随时可对其编程,编程电压有高压12V的,也有低压5V的低压编程方式为在用户系统内对AT89C51进行编程提供了方便;而高压编程方式则与常规的闪电存储器或EPROM编程器相兼容。
2.RS-232芯片的简介。RS-232是美国电气工业协会推广使用的一种串行通信总线标准,是DCE(数据通信设备,如微机)和DTE(数据终端设备,如CRT)间传输串行数据的总线。TC232内部有两个发送器和两个接受器,还有一个电源变换器,是一种廉价RS232电平转换器, RS232C虽共有25根信号线,但在近程通信不需要调制解调器的情况下,一般只用少量信号线。若采用直接通信,则通常只用TXD和RXD及地信号线。
3.164芯片的简介。方式0是外接移位寄存器的工作方式,用以扩展I/O接口。输出时将发送数据缓冲器中的内容串行地址到外部的移位寄存器,输入时将外部移位寄存器内容移入内部的移位寄存器,然后写入内部的接受数据缓冲器。在以方式0工作时,数据由RXD串行地输入/输出,TXD输出移位脉冲,使外部的移位寄存器移位。方式0输出时,串行口上外接74LS164串行输入并行输出移位寄存器的接口。TXD端输出的移位脉冲将RXD端输出的数据移入74LS164。CPU发送数据缓冲器SPUF写入一个数据,就启动串行口发送,对SBUF的写信号在S6P2时把1写入输出移位寄存器的第9位,并使发送控制电路开始发送。内部的定时逻辑在对SBUF写和SEND被激活(高电平)之间有一个完整的机器周期。在SEND有效时,输出移位寄存器中输出位内容送RXD端输出,移位脉冲由TXD端输出,它使RXD端的输出数据移入到外部的移位寄存器。
(三)硬件电路的设计
硬件电路的设计如下图所示:
参考文献
[1]张友德,赵志英,涂时亮。单片微型机原理/应用与实验[M].上海:复旦大学出版社,1996.
[2]周仲。国内外常用集成电路互换手册[M].上海:上海科学技术文献出版社,2001.
集成测试范文 篇3
【 关键词 】 安全测试;软件设计;统一建模语言;安全模式
1 引言
随着信息技术的快速发展,计算机网络及信息系统广泛地应用于政府机关、军事部门、商业企业等各个领域,极大地改善了人们的生产条件和生活水平,深刻改变并持续地影响着人们对未来的认识。与此同时,非法访问、恶意攻击、信息窃取、木马病毒等各种针对计算机网络和信息系统的攻击手段层出不穷,给各行各业造成了巨大的损失。其中,由于软件脆弱性原因而导致的重大安全事件屡见不鲜。软件脆弱性是指在软件的需求分析、设计、编码和运行期间存在的漏洞,利用该漏洞可能危害系统的安全。经验证明,防止软件脆弱性的最佳实践就是在软件的设计阶段引入安全设计,将安全特性应用在软件的每一个方面,而不是在事后作为补救措施来添加安全特性。
传统意义上的软件开发更关注软件设计上是否满足功能、性能和操作等业务需求,忽略甚至无视软件的安全需求,从而导致软件存在可以被攻击者非法利用的安全隐患。因此,本文提出一种以安全模式为基础,通过扩展统一建模语言支持安全测试的软件设计方法。
2 相关概念
2.1 UML的扩展机制
统一建模语言(Unified Modeling Language, UML)是一种通用的可视化建模语言,适用于软件生命周期的各个阶段。尽管UML已经提供了丰富的建模元素和符号,可满足大多数情况下对软件的建模需要,但缺少必要的对软件进行安全建模的要素。使用UML的profile应用扩展机制自定义安全特性要素可实现软件安全特定领域建模。
2.2 安全模式
在信息安全领域公认原则是,使用标准的、经过长期时间检验的解决方案来保证软件在其生命周期内安全、有效和稳定地运行。安全模式描述了在特定场景下重复发生的问题,并为这些问题提供了经过实践被证明是安全的通用解决方案。
3 集成安全测试的软件开发方法
开发人员在软件设计阶段就要时刻有安全观念,考虑软件安全需求,定义软件安全目标,了解网络常用攻击技术、方法及应对措施,对软件面临的安全威胁进行建模,编写满足安全目标的测试用例,引入安全模式进行软件架构设计并评审,及早发现安全问题。
3.1 需求分析
一般情况下,在软件需求分析阶段,软件设计人员最常见的一种错误就是只注重软件的业务需求,往往忽略了软件的安全需求。“安全的软件开发生命周期(SDL)”描绘了一种结构化的方法,用以贯彻和实现软件的安全开发。遵守SDL,安全问题可以在软件生命周期的早期得以评估和解决。
在软件需求分析阶段,除了功能、性能、操作等需求外,设计者还要考虑几个问题。
1) 安全需求和原则
在需求分析阶段,设计者就必须考虑安全原则及规则,创建一份系统范围的规范,编写系统涉及到的安全需求。安全需求可能是明确的(包含在业务需求内),也可能是模糊的、含混的甚至是没有说明的。OWASP(开放式Web应用程序安全计划组织)制定了一些安全标准和指南用以指导软件设计者遵循安全设计原则来开发软件。据此,设计者可以对软件的安全性做出概要说明,阐述软件在所设计的运行环境中面临的安全威胁有哪些。
2) 安全目标
安全目标是指为使软件在所设计的运行环境中能够有效运行,防止、缓解外部攻击对系统可能造成的危害而采取的措施和必须达到的要求。安全目标的制定可以减少软件的“特性蔓延”,防止添加不必要的特性而导致软件脆弱性的出现。安全目标与需求相关。对于明确的安全需求,
3) 威胁模型
威胁模型的基本观点是,如果不对系统所面临的威胁进行评估,以及采取措施降低威胁风险,那么就无法建立起安全的系统。威胁模型有助于设计者更好地理解所开发的系统,发现较高层次的设计问题,判断出系统最具风险的“安全关键点”,确定系统的风险区域和采取的技术手段。
4) 安全策略
为了防止、缓解威胁模型所描述的系统威胁,必须制定系统的安全策略,采用必要的安全技术和手段。安全模式描述了在特定场景下重复发生的问题,并为这些问题提供了经过实践被证明是安全的通用解决方案。以安全模式为基础,分析威胁模型所发现的问题,制定安全策略,可以建立安全的、有效地系统解决方案,防止使用临时的、随意的系统解决方案。
3.2 软件设计
3.2.1 软件功能形式化分解
从业务需求的角度出发,软件被划分为多个功能,每个功能的实现都是由单个或多个组件(模块)来完成的。软件功能形式化分解的任务是确定软件中相对独立功能的边界或作用范围。一般来说,软件脆弱性的产生通常是由于对数据不正确的处理造成的,特别是当数据从不可信任区域进入可信任区域时。使用数据流图(DFD,Data Flow Diagram)以数据为核心,对软件功能进行形式化分解,根据数据传递的方向和作用范围,设定可信任区域和不可信任区域之间的边界。
在图2中,假设软件功能A是由模块1和模块2共同完成,其中模块2接收并储存模块1传递的数据。
3.2.2威胁建模
软件功能形式化分解把软件功能的内部实现分为可信任区域和不可信任区域。处于不可信任区域的组件(模块)是威胁建模的设定目标,注重分析其运行过程中可能面临的安全威胁有哪些。本文使用STRIDE安全模型进行分类:身份欺骗(Spoofing identity)、篡改数据(Tampering with data)、否认(Repudiation)、信息泄露(Information disclosure)和拒绝服务(Denial of service)。经分析,模块1的安全威胁主要有身份欺骗(S)、篡改数据(T)和否认(R)3类,模块2无安全威胁。因此,模块1是非可信任的,模块2是可信任的。通过威胁建模,实现软件某个独立功能的内部模块被分为可信模块和非可信模块。
3.2.3 UML的安全测试扩展
为使UML提供安全测试支持,满足安全策略要求,本文把非可信模块定义为一个类,利用UML的profile扩展机制构建如下构造型:
“构造型securityTest 继承自Class”。
其语义是:它代表了系统中一个非可信模块所面临的安全威胁等信息。其中,安全需求来自于威胁建模形成的安全需求文档;威胁模型说明该模块可能面临的安全威胁;STRIDE对安全威胁进行分类;安全模式是指为解除威胁在模块实现时要采用的安全模式;安全测试用例描述攻击者面对此类问题通常采用的技术和手段;安全验证标记用来标识模块是否已通过安全测试。
属性:该构造型的属性信息如表1所示。
约束:(1)安全需求来自于威胁建模形成的安全需求文档;(2)Stride限制为身份欺骗(S)、篡改数据(T),否认(R)、信息泄露(I)、拒绝服务(D)和特权提升(E)6类,Stride是这6类的组合;(3)解除威胁的安全模式来自于安全模式库;(4)安全测试用例对应于软件测试中的安全测试用例文档;(5)只有通过全部安全测试用例,安全验证标识才可以设为True。
3.2.4 非可信模块的安全测试
UML安全测试扩展标记了非可信模块的安全需求和安全测试用例。对于设计者来说,首先要依据业务需求设计非可信模块的概要类图,确定类与类之间的关系。其次,根据安全需求从安全模式库中检索符合要求的安全模式,在概要类图的上下文环境中选择合适的安全模式应用于模块的实现。再次,把实现安全模式和数据处理的类标记为安全关键类。
安全关键类是实现非可信模块功能、抵御网络攻击、缓解安全威胁的核心,具有十分重要的作用。传统的单元测试侧重于验证类提供的接口及其实现是否正确,缺少对类提供接口的安全测试。通过分解安全测试用例,将安全测试用例转化为对安全关键类的单元安全测试。
只有在安全关键类完成单元安全测试后,才能对非可信模块进行安全测试,验证所采用的安全模式是否可以真正防止或缓解威胁模型中描述的安全威胁。如果采用的安全模式无法通过安全验证,需要重新选择安全模式。
4 软件安全设计方法
软件安全工程从软件开发生命周期的角度在软件开发的每一个阶段都考虑安全因素。如微软的SDL定义了一系列的活动来支持安全开发,在设计阶段主张遵循常见的安全设计原则,降低软件受到的攻击面。OWASP的CLASP方法在设计阶段实施风险分析和威胁建模,并且建议使用安全相关信息注解类图。UMLSec扩展的核心思想是为UML模型元素定义构造型,与模型关联时,构造型为这些模型元素增加安全相关信息。POAD方法提出构建模式库,通过模式合成进行软件设计。
5 结束语
软件安全问题是一个系统性问题,必须在软件开发的每一个阶段都予以重视。本文提出在软件设计阶段使用DFD以数据传递与处理为核心,将软件功能进行形式化分解,把功能内部实现划分为可信模块和不可信模块,采用安全模式解决不可信模块面临的安全威胁,设计模块实现的安全关键类,分解安全测试用例,对安全关键类进行安全单元测试,验证在非可信模块实现时所采用的安全模式是否可以解除安全威胁,从而将软件的安全测试提前到了设计的早期,减低了后期维护的风险和成本。下一步的工作,需要深入研究不同领域软件系统存在的典型安全问题,设计具有通用性的单元安全测试方法和规范,并将该方法应用到更多的软件项目中。
参考文献
[1] http:///.
[2] Thomas H, Koen Y, Riccardo S. An Analysis of the Security Patterns Landscape [C] Proc.of the 3rd International Workshop on Software Engineering for Secure System. Washington D.C, USA: IEEE Computer Society, 2007.
[3] http:///security/sdl/.
[4] http:///zh-com/magazine/cc163519.aspx.
[5] 张明德,郑雪峰,蔡翌。应用安全模型研究[J].信息网络安全,2012,(08):121-125.
[6] 常艳,王冠。网络安全渗透测试研究[J].信息网络安全,2012,(11):3-4.
[7] 魏为民,袁仲雄。网络攻击与防御技术的研究与实践[J].信息网络安全,2012,(12):53-56.
集成测试范文 篇4
集成电路(Ic)的静电放电(ESD)强固性可藉多种测试来区分。最普遍的测试类型是人体模型(HBM)和充电器件模型(CDM)。这两种EsD测试类型旨在揭示包含基本EsD控制的制造环境下,电路在EsD应力下的存续情况如何。HBM是应用最久的EsD测试,但工厂EsD控制专家普遍认为,在现代高度自动化的组装运营中,CDM是更重要的ESD测试。CDM应力的大小会随着器件的尺寸而变化。有关CDM的“传统智慧”更认为不需要测试尺寸极小的集成电路,因为峰值电流快速变小直至消失。我们在此前的文童中曾指出,极小器件的峰值电流并不像通常认为的那样快速变小直至消失。高速示波器测量显示,即使脉冲宽度变得很窄,极小器件的峰值电流仍令人吃惊地保持高电平。过去,由于这些大峰值电流被忽略,因为使用了场致CDM测试标准所提倡的1GHz示波器,而场致CDM测试是最普及的CDM测试形式。
测试小器件时面临的问题
观测到极小集成电路超出预料的峰值电流,对负责测试极小器件(尺寸仅为较小的个位数毫米等级)的ESD测试工程师而言可不是什么好消息。图1显示了置于场致CDM测试装置上的8球栅(ball)芯片级封装。必须接触每个被测引脚的探针(的尺寸)占到整个集成电路尺寸的不小比例。显而易见,移动被测器件并不需要太多的探针接触:只是要求反复调整器件的位置。
在场致CDM测试期间、按惯例要使用真空来固持(hoId)被测器件(DUT)的位置。真空通常不能非常安全地固持极小的器件。此外,真空孔(的截面积)占到被测器件尺寸的不小比例,可能会影响器件应力。当真空孔尺寸超过被测器件面积的18%时,应力的大小就开始下降。图2比较了置于真空孔与不置于真空孔上的器件在峰值电流或完整电荷(total charge)条件下测量得到的应力大小。
在CDM测试期间使用真空来固持器件,由此带来两个问题。首先,它不起作用,即便起作用,也会开始影响测试结果。业界已经尝试使用两种方法来改善小器件的可测试性――将小封装贴在某类夹具(holder)上,或以支撑结构或模板来固持器件的位置。
使用夹具固持小器件
已经在三种条件下使用6uSMD裸片来进行cDM测试:仅器件本身、器件贴装在14DIP转换板上,以及在36LLP替代板(Surrogate Board)上,如图3所示。图4显示了这三种条件下以500 v电压采用8 GHz示波器所获得的CDM测试波形。这些结果显示,贴装在电路板上会增加施加给集成电路的应力。36LLP替代板上应力的增加颇为适度,可以视为易于操作性与更可靠测试结果之间的最佳折衷。贴装在14DIP转换板上的应力增加更为严重,大概不是一个可接受的折衷办法。好消息是36LLP替代板实际上比测试期间会移动的14DIP转换板更易于操作。
支持模板
第二种处理小型集成电路的方法是使用支持模板。业界存在关于支持模块这种方法的顾虑:由于小器件周围有介电常数较高的材料,介电的存会在多大程度上改变集成电路与场板(6ddplate)之间的电容?被测器件与场板之间的电容是被测器件上应力大小的决定因素。图s显示了固定在CDM装置中一个模板内的6usMD封装。此时被测器件位于绝缘体中精心加工的孔,而绝缘于cDM装置使用真空的场板中。图6显示了6LLP封装使用与不使用FR4支持模板时以8GHz示波器捕获的波形。此图显示这模板在测试条件下仅为集成电路增加极小的应力。