功能测试理论_第1页
功能测试理论_第2页
功能测试理论_第3页
功能测试理论_第4页
功能测试理论_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

功能测试理论1.基础术语摘要:本章节包含以下内容,功能测试简介u功能测试要求u输入/输出信号的建立U功能测试的一些方法u基础术语功能测试包含一些新的术语,这里先简单介绍一下:OutputMask输出屏蔽,一种在功能测试期间让测试通道的输出比较功能打开或关闭的方法,可以针对单独的pin在单独的周期实施。OutputSampling输出采样,在功能测试中,DUT的输出信号在周期内的某个时间点被评估的过程。PE卡上的比较电路会将输出电压和预先设定的逻辑1(VOH)和逻辑0(VOL)相比较,然后测试系统做出pass或fail的判断。OutputSampling也称为“Strobing"。TestPattern测试向量(国内很多资料将其译为“测试模式”),是器件一系列所设计的逻辑功能的输入输出状态的描述。输入数据由测试系统提供给DUT,输出数据则用于和DUT的输出响应相比较。在功能测试期间,测试向量施加到DUT并运行,当其中的一个期望输出与器件的实际输出不匹配时,一个failure就产生了。Testpattern也称为“TestVectors"或“TruthTables(真值表)"。TestVectors的说法更强调时序性,指逻辑电平的一系列0、1序列或其他表征。SignalFormat信号格式,PE驱动电路提供的输入信号的波形。功能测试功能测试是验证DUT是否能正确实现所设计的逻辑功能,为此,需生成测试向量或真值表以检测DUT中的错误,真值表检测错误的能力可用故障覆盖率衡量,测试向量和测试时序组成功能测试的核心。当执行功能测试时,必须考虑DUT性能的所有方面,必须仔细检查下列项的准确值:VDDMin/MaxDUT电源电平VIL/VIH输入电平VOL/VOH输出电平IOL/IOH输出电流负载VREFIOL/IOH切换点TestFrequency测试频率/周期InputSignalTimings时钟/建立时间/保持时间/控制信号InputSignalFormats输入波形OutputTimings周期内何时采样VectorSequencing向量文件的起始/终止点从上表可以看出,在功能测试中需要利用测试系统的大部分资源,所有的功能测试都有两个不同的部分组成,主测试程序中的测试向量文件和指令集。测试向量文件代表需测试的DUT的输入输出逻辑状态,测试程序包括控制测试硬件产生必需的电压、波形和时序需要的信息。FunctionalTestingVectorDataInputandOutput

(miingandFormatting

ControlsPinEle匚tronic:*

(PE)CardsInputStates

(1110010100)

10Control

(Driver0nOff)TimeSetSelect(TS1,TS2?TS3)0utputStates(LZHLHZLHHL)OutputMasking(LHXXHXXLXH?Driver/□Svjtch图5-1.功能测试TimeSetControlOutputControlandStrobeTimingVectorDataInputandOutput

(miingandFormatting

ControlsPinEle匚tronic:*

(PE)CardsInputStates

(1110010100)

10Control

(Driver0nOff)TimeSetSelect(TS1,TS2?TS3)0utputStates(LZHLHZLHHL)OutputMasking(LHXXHXXLXH?Driver/□Svjtch图5-1.功能测试TimeSetControlOutputControlandStrobeTimingInplitTiming,FormatsandI/OControlFormattedInpi_rtTimingandFormatData执行功能测试时,测试系统给DUT提供输入数据并逐个周期、逐个管脚监测DUT的输出,如果任何管脚输出逻辑状态、电压、时序与期望的不符,则功能测试就无法通过。2.测试周期及输入数据测试周期测试周期(testcycle或testperiod)是基于器件测试过程中的工作频率而定义的每单元测试向量所持续的时间,其公式为:T=1/F,T为测试周期,F为工作频率。每个周期的起始点称为timezero或TO,为功能测试建立时序的第一步总是定义测试周期的时序关系。输入数据输入数据由以下因素的组合构成:测试向量数据(给到DUT的指令或激励)输入信号时序(信号传输点)•输入信号格式(信号波形)•输入信号电平(VIH/VIL)

时序设置选择(如果程序中有不止一套时序)最简单的输入信号是以测试向量数据形式存储的一个逻辑0或逻辑1电平,而代表逻辑0或逻辑1的电平则由测试头中的VIH/VIL参考电平产生。大部分的输入信号要求设置为包含唯一格式(波形)和时序(时沿设定)的更为复杂的数据形式,主程序中会包含这些信息并通过相应的代码实现控制和调用。一些老的测试机是资源分享结构,这意味着测试硬件可同时提供的输入时序、格式、电平都是有限的这增加了测试程序开发的难度;而拥有perpin结构的测试系统则使程序开发大大简化,因为每个管脚都可以拥有自己的时序、格式和电平。输入信号格式信号的格式很重要,使用得当可以保证规格书定义的所有AC参数均被测试。信号格式与向量数据、时沿设定及输入电平组合使用可以确定给到DUT的输入信号波形。图5-2给出了一些信号格式的简单描述,有心的朋友应该熟悉并记住他们。InputSignalCreationTODataFromNRZDNRZRZROTODataFromNRZDNRZRZROSBCControlfor

FETSwitch

OnPECandTimingMarkersILouie0I1111Prom111LattCvcls111!:111i11图5-2.信号格式NRZNonReturntoZero,不返回,代表存储于向量存储器的实际数据,它不含有时沿信息,只在每个周期的起始(TO)发生变化。DNRZDelayedNonReturntoZero,延迟不返回,顾名思义,它和NRZ一样代表存储于向量存储器的数据,只是周期中数据的转变点不在TO。如果当前周期和前一周期的数据不同,DNRZ会在预先定义的延时点上发生跳变。RZReturntoZero,返回0,当数据为1时提供一个正向脉冲,数据为0时则没有变化。RZ信号含有前(上升)沿和后(下降)沿这两个时间沿。当相应管脚的所有向量都为逻辑1时,用RZ格式则等于提供正向脉冲的时钟。一些上升沿有效的信号,如片选(CS)信号,也会要求使用RZ格式。ROReturntoOne,返回1,与RZ相反,当数据为0时提供一个负向脉冲,数据为1时则保持。RO信号也有前(下降)沿和后(上升)沿。当相应管脚的所有向量都为逻辑0时,RO格式提供了负向脉冲的时钟。一些下降沿有效的信号,如始能(OE/)信号,会要求使用RO格式。SBCSurroundByComplement,补码环绕,当前后周期的数据不同时,它可以在一个周期内提供3个跳变沿,信号更为复杂:首先在T0翻转电平,等待预定的延迟后,在定义的脉冲宽度内表现真实的向量数据,最后再次翻转电平并在周期内剩下的时间保持。SBC是运行测试向量时唯一能同时保证信号建立(setup)和保持(hold)时间的信号格式,也被称为XOR格式。ZDZ(Impendance)Drive,高阻驱动,允许输入驱动在同一周期内打开和关闭。当驱动关闭,测试通道处于高阻态;当驱动打开,则根据向量给DUT送出逻辑0或1。输入信号时序一旦决定了测试周期,周期内各控制信号的布局及时沿位置也就可以确定了。通常来说,输入信号有两类控制信号和数据信号。数据信号在控制信号决定的时间点提供数据读入或锁定到器件内部逻辑。第一个要决定的是控制信号的有效时沿和数据信号的建立和保持时间,这些信息将决定周期内各输入信号时间沿的位置。

接下来决定各输入信号的格式。时钟信号通常使用RZ(正脉冲)或RO(负脉冲)格式;上升沿有效的信号如片选(CS)或读(READ)常使用RZ格式;下降沿有效的信号如输出始能(0E/)常使用RO格式;拥有建立和保持时间要求的数据信号常使用SBC格式;其他的输入信号则可以使用NRZ或DNRZ格式。输入信号由测试系统各区域提供的数据组合创建,最后从测试头输出的信号波形是测试向量、时沿设置、信号格式及VIH/VIL设置共同作用的结果,如图5-3。InputSignalCreataonTimingEd口ej

PlacemeritFormat

Definition101100001101lluuulLyacllrigTrailingTimingEd口ej

PlacemeritFormat

Definition101100001101lluuulLyacllrigTrailingRS/RONIlS/DNIlESECMJIHl=2.UVUILzLu.8VTOH23.5VVIL20.ov'■^ItageLeveJ£STLllLIJJU]UJJU]>JJVectorI;ataEdgeTimingRZFermatRCiFormat£HCFermat图5-3.输入信号的创建功能测试(3)——输出数据输出数据输出部分的测试由以下组合:测试向量数据(期望的逻辑状态)采样时序(周期内何时对输出进行采样)VOL/VOH(期望的逻辑电平)IOL/IOH(输出电流负载)

测试输出功能测试期间,程序会为每个输出管脚在测试周期内指定一个输出采样时间,在这个时间点上,比较单元会对输出进行采样,再将采样到的DUT输出信号电平和VOL/VOH参考电平相比较。测试向量含有每个管脚的期望逻辑状态。如果期望是逻辑0当采样进行时,DUT的输出电平必须小于或等于VOL;如果期望时逻辑1,则必须大于或等于VOH。部分测试系统还拥有测试高阻态的能力。图5-4显示了测试普通输出管脚时,DUT输出和VOH/VOL之间pass/fail/pass的关系。FunctionalTestingof

V^lidOutputLevelsPASSLogicOne—VOHLe\el—VOHLe\el—VOLLa^lPASSLogicZeroComparatorlogicforvalidoutputlevels图5-4.功能测试的输出电平测试高阻态输出高阻态的输出管脚也可以进行功能性的测试,在这类测试中,将比较器逻辑翻转以得到非有效的逻辑。高阻状态(电平)定义为高于VOL和低于VOH的电压(见图7-5)。DUT的外部电压需将高阻状态拉到非有效(中间)的电压,通过接到参考电压的负载可以做到。通常使用2V的参考电压代表中间级或高阻态。当输出进入高阻态时,将不能输出电压和电流。高阻态输出将会保持其最后的逻辑状态直至器件外部的因素引起输出改变。负载将输出拉到特定的参考电压。图5-5表示测试高阻抗输出时,DUT输出和VOL/VOH值之间的fail/pass/fail的关系。

FunctionalTestingof

HighImpedanceLevelsPASSHighZState—V10HLmvdPASSHighZState—V10HLmvd一VIOLLe\elComparatorlogicforHighImpedanceLevels.图5-5.高阻逻辑输出电流负载在功能测试中,DUT输出可能会用到电流负载。PE卡上配置有可编程电流负载(也叫动态电流负载)电路,可以在测试程序中进行设定。如果测试系统不支持可编程负载,则可能需要在外围硬件电路上加上电阻。电流负载的作用是运行功能测试时在输出端施加合适的IOL和IOH电流。通过施加指定的IOL/IOH电流而测试VOL/VOH电压,输出电流和电压的参数在功能测试运行过程中得以验证,这比用PMU实施相同的测试快得多。输出信号时序输出信号的传输通常由时钟和控制信号的时间沿进行控制,要理解这一点,需要察看器件的时序图,确定引起输出信号发生变化的时钟有效沿和控制信号,以及输出达到有效逻辑电平前所需要的延迟时间,这些都是为了确定特定信号采样点在周期内的位置。测试系统硬件的能力允许的话,采样形式可以是边沿模式或窗口模式。边沿模式只在周期内特定的时间点采集并比较一次数据,而窗口模式则在周期内特定的一段时间都对输出进行采样和比较。通常来讲,好的测试时序会使输出的变化和测试系统的检测发生在相同的周期内,这样就可以在测试周期内准确地测量输出延迟,保证在测试周期结束前有足够的时间输出准确的结果。一些器件的输出端存在比其他的需要更长的时间达到它们的最终值,在降低的频率上测试能发现传输延迟的问题。还需要认识到的是一些测试系统对输出采样距测试周期内的始端或末端(如T0)距离的问题考虑得不多。OutputSignalTesting时姑j:山応也DUTOutputSignalsVOLVOH——VectorDataOUTOutputStrobe!qr-fr aTimingFunctionalComparatorst>Strobe

liningOutput

MaskingL斗I时姑j:山応也DUTOutputSignalsVOLVOH——VectorDataOUTOutputStrobe!qr-fr aTimingFunctionalComparatorst>Strobe

liningOutput

MaskingL斗IISampleOutputH«raVector[Jatat。口tputLogicLMwisk(IgnoreOutput]LagicHNoTestI• Cycle 1-VOHVOL图5-6.输出测试如图5-6所示,一些因素综合影响着什么时候怎样精确测试输出信号,包括:向量数据决定期望的逻辑状态;VOL/VOH参考电平决定期望的输出电压;输出采样时序决定着周期内输出信号的测试点;输出比较屏蔽(mask)控制决定了输出结果是用以判断pass/fail还是忽略。功能测试(4)——OutputLoadingforACTestAC测试的输出负载器件的规格书可能会标示进行AC时序测试时器件输出管脚上需要施加的电流性负载。这些负载通常是电阻、电容、二极管以及他们的网络,用以模仿器件最终应用条件下(比如电脑或手机上)的负载状态,这类负载往往伴随有TTL电路在其中。图5-7是AC测试中给逻辑0输出施加负载的一个例子。TTLOutputLoadforACTestingVCC=-5.0VGND"gRL=20000CL=15pFDiodes^1N3064图5-7.AC负载起始,VCC设置为5.0V而节点A悬空,此状态下节点A与B会呈现约2.1V电压,施加在RL(2Kohm)上的电压为2.9V,则会有1.45mA流经RL和3个二极管流向GND。当节点A连接到某个器件驱动逻辑0(0.4V)的输出上,经过二极管D4,将节点B拉低至1.1V,那么现在施加在RL上的电压就变成了3.9V,而经过RL流向器件的电流,即当输出为逻辑0时的负载电流为1.95mA。当节点A连接的是驱动逻辑1(2.4V)的输出,D4反向截止,就消除了电流负载的影响。(注:图中的电容CL不是物理存在的,它代表测试机台通道自身带有的寄生电容,往往比15pF还大,比如我们常用的J750就达到了60pF.)功能测试(5)VectorData向量数据测试向量文件包含DUT运行一系列功能的真值表,包括必须施加到DUT输入端的逻辑状态和期望在输出端出现的逻辑状态。向量数据通常包含如下字符:VectorCharactersitemlogicDrvstateCprstatetype0=logic0driveroncomparatoroffinput1=logic1driveroncomparatoroffinputL=logic0driveroffcomparatoronoutputH=logic1driveroffcomparatoronoutputZ=floatdriveroffcomparatoronoutputX=don'tcaredriveroffcomparatoroffignore向量文件还可能包含一些供测试系统识别的标识。如果DUT拥有I/O管脚,向量文件就需要控制测试系统的输入驱动电路何时打开和关闭。I/O切换可以发生在任何需要的周期,将DUT的某个I/O管脚从输入状态变为输出状态或反之。测试向量可能还含有部分输出管脚的屏蔽信息。屏蔽用于控制一个输出管脚的测试与否:当输出管脚处于已知的逻辑状态,输出可以被测试;而当输出处于未知的逻辑状态或者我们在某个条件下不理会它的状态,它就可以不被测试,这时我们就可以用“X来忽略输出管脚上的状态,通常可以基于独立的管脚和独立的周期进行。如果测试系统支持复合时序设置,则向量还可能含有时序设置方面的信息。复合时序设置用于在向量运行时改变测试时序,举例来说,测试一款典型的RAM时,将数据写入RAM的时间比从中读出数据的时间要少,这种情况下,就可能有一套包含写入数据时序的时序设置和另一套包含读出数据时序的时序设置。时序设置可以控制周期的长短、输入信号的时序和格式、以及输出采样的时序。向量会包含根据具体的向量功能(如写入或读出)选择相应的时序设置的控制状态,具体信息我们在后面相关章节中再详述。运行功能测试运行功能测试要求以下步骤:定义VDD电平;定义输入、输出电平(VIL/VIH/VOL/VOH);定义输出电流负载(IOL/IOH/VREF);定义测试周期;为所有输入信号定义输入时序和信号格式;为所有输出信号定义输出采样时序;为向量存储器定义向量的起始和终止点;运行测试。功能测试(6)——FunctionalSpecifications功能测试参数定义验证器件的功能是否符合器件规格书通常有两种方法。第一种方法是将所有的输入、输出和时序参数都设置成最差(规格书中会定义)的情况,然后运行功能向量序列。这种方式能最快地判断器件是否符合其设计规范,缺点在于如果有fail发生,无法直观地知道是什么参数引起的。另一种方法是单独地设置各个参数,例如,开始只按照规格书定义的最差情形设置VIL/VIH,其他的参数则放宽。如果有fail发生在这个地方,则马上可以判断是VIL或VIH电平引起。然后再设置下一组参数,知道所有参数都被单独验证。如果良率出现问题,此方式可以让我们直观地获取更多具体的信息,代价是测试时间的增加。宽松的参数放宽某个参数意味着按照一定的方式调整其参数值使DUT更容易正确地满足功能要求。例如,如果规格书定义VIL为0.8V,我们可以将它放宽到0.4V,通过降低VIL使得DUT判读输入信号为逻辑0更加不易出错。要放宽输入,可以降低VIL,提高VIH;要放宽输出,则可以提高VOL,降低VOH,最宽松的情况是设置VOL=VOH=1.5V,此时比较器会将所有低于1.5V的电平判为逻辑0而将所有高于1.5V的电平判为逻辑1(注意:在测试Z态电平时,不能采用此情况);要方宽时序,降低测试频率,增加建立(setup)和保持(hold)时间并增加输出传输延迟。时序参数通过提供合适的信号波形给DUT,可以实现AC时序参数的验证。建立时间、保持时间、最小脉宽、传输延迟都必须测试。在某些情况下,可以一次设定所有极限条件,以使器件通过一次测试就能满足所有参数要求,复杂的功能时序则需要在不同的条件下多次重复测试。最小/最大电压器件规格书通常定义VDD的工作电压范围。例如VDD=5.0±10%表示对于VDD为5.0V的器件,在4.5V—5.5V之间它必须能正常工作。这个电压范围通常叫做VDDMIN和VDDMAX。功能测试必须在器件参数的整个范围内测试,所以功能测试向量序列必须执行两次,一次是VDD设为VDDMIN,另一次是设为VDDMAX。一些器件参数(VIL/VIH/VOL/VOH)可以按VDD的百分比定义。当改变VDD的值时,这些参数也必须调整。功能测试(7)——GrossFunctionalTestandEquationBasedTiming总功能测试指使用最宽松的条件去运行的功能测试,频率、时序、电压、电流负载等条件都被放宽,也成为基础功能测试(BasicFunctiontest)或摆动测试(WiggleTest)。实施理由总功能测试相当于功能测试的前提测试,它检验器件是否能够进行功能测试,通俗地讲,就是器件能否“动”起来。当测试程序基本建立,常用总功能测试的相关条件验证全部向量集所需测试的功能是否基本正确。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论