第7章可测试性设计_第1页
第7章可测试性设计_第2页
第7章可测试性设计_第3页
第7章可测试性设计_第4页
第7章可测试性设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、12ATPG :Automatic Test Pattern GenerationATE:Automated Test EquipmentBIST :Built In Self TestBSC:Boundary Scan CellBSDC:Boundary Scan Design CompilerCUT:Chip/Circuit Under TestDC:Design CompilerDFT:Design For TestabilityDRC:Design Rule CheckingHDL:Hardware Description LanguageJTAG :Joint Test Action

2、 Group LSSD :level-sensitive scan designPI:Primary InputPO:Primary OutputTC:Test Compiler37.1 7.1 引言引言 为了提高电子系统整机运行的可靠性,降低设计成本,为了提高电子系统整机运行的可靠性,降低设计成本,测试是必不可少的。测试是必不可少的。 一套电子系统的高可靠性是基于构成该系统的各个基本一套电子系统的高可靠性是基于构成该系统的各个基本单元的高可靠性,然而随着系统使用的单元的高可靠性,然而随着系统使用的ASICASIC电路规模的电路规模的增大、复杂程度的提高,芯片的引脚相对门数减少,使增大、复杂程

3、度的提高,芯片的引脚相对门数减少,使得电路的可控性和可观测性系数降低,电路测试变得十得电路的可控性和可观测性系数降低,电路测试变得十分复杂和困难,测试生成的费用也呈指数增长,单凭改分复杂和困难,测试生成的费用也呈指数增长,单凭改进和研究测试生成方法已无法满足对测试的要求。进和研究测试生成方法已无法满足对测试的要求。 解决解决IC IC 测试问题的根本方法是在作系统设计时就充分考测试问题的根本方法是在作系统设计时就充分考虑到测试的要求,即在设计阶段就开始考虑如何对电路虑到测试的要求,即在设计阶段就开始考虑如何对电路进行测试,并将一些实用的可测性技术引入到芯片设计进行测试,并将一些实用的可测性技术

4、引入到芯片设计中,以降低测试生成的复杂性,也就是进行可测性设计。中,以降低测试生成的复杂性,也就是进行可测性设计。47.2 DFT7.2 DFT的基本概念的基本概念 测试是通过控制和观察电路中的信号,以确定电路是否正常测试是通过控制和观察电路中的信号,以确定电路是否正常工作的过程。工作的过程。 因此,电路的可测试性涉及因此,电路的可测试性涉及可控制性可控制性和和可观察性可观察性两个最基本两个最基本的概念。的概念。 可测性设计(可测性设计(Design For TestabilityDesign For Testability)技术就是试图增加)技术就是试图增加电路中信号的可控制性和可观察性,以

5、便及时、经济地产生电路中信号的可控制性和可观察性,以便及时、经济地产生一个成功的测试程序。一个成功的测试程序。 在可测试设计技术发展的早期在可测试设计技术发展的早期 ,大多采用,大多采用特定(特定(Ad HocAd Hoc)方法方法。 Ad Hoc Ad Hoc 技术技术可用于特殊的电路和单元设计,对具体电路进行可用于特殊的电路和单元设计,对具体电路进行特定的测试设计十分有效,但它不能解决成品电路的测试生特定的测试设计十分有效,但它不能解决成品电路的测试生成问题。成问题。5 因此,从因此,从70 70 年代中后期起,人们开始采用年代中后期起,人们开始采用结构化的测试设计结构化的测试设计方法方法

6、,即研究如何设计容易测试的电路,进而又考虑在芯片,即研究如何设计容易测试的电路,进而又考虑在芯片内部设计起测试作用的结构内部设计起测试作用的结构。 这种方法的另外一个优点是能与这种方法的另外一个优点是能与EDAEDA工具结合,以进行自动设工具结合,以进行自动设计。计。7.2.1 Ad Hoc 7.2.1 Ad Hoc 技术技术 Ad Hoc Ad Hoc 技术是一种早期的技术是一种早期的DFT DFT 技术,它是针对一个已成型的技术,它是针对一个已成型的电路设计中的测试问题而提出的。该技术有电路设计中的测试问题而提出的。该技术有分块、增加测试分块、增加测试点、利用总线结构点、利用总线结构等几种

7、主要方法等几种主要方法。 分块法分块法的提出是基于测试生成和故障模拟的复杂程度正比于的提出是基于测试生成和故障模拟的复杂程度正比于电路逻辑门数的三次方,因此,如果将电路分成若干可分别电路逻辑门数的三次方,因此,如果将电路分成若干可分别独立进行测试生成和测试的子块,可以大大缩短测试生成和独立进行测试生成和测试的子块,可以大大缩短测试生成和测试时间,从而降低测试费用。测试时间,从而降低测试费用。 6这种方法采用的技术有机械式分割、跳线和选通门等。这种方法采用的技术有机械式分割、跳线和选通门等。机械式分割是将电路一分为二,这样虽然使测试生成机械式分割是将电路一分为二,这样虽然使测试生成和故障模拟的工

8、作量减少了和故障模拟的工作量减少了7 78 8,但却不利于系统的,但却不利于系统的集成,费用也大大地增加;采用跳线的方法会引入大集成,费用也大大地增加;采用跳线的方法会引入大量的量的I IO O 端口;而选通门的方法需要大量的额外原端口;而选通门的方法需要大量的额外原始输入、原始输出以及完成选通所必需的模块。始输入、原始输出以及完成选通所必需的模块。引入测试点引入测试点是引进电路可测性最直接的方法。其基本是引进电路可测性最直接的方法。其基本方法是将电路内部难于测试的节点引出,作为测试节方法是将电路内部难于测试的节点引出,作为测试节点,在测试时由原始输入端直接控制并由原始输出端点,在测试时由原始

9、输入端直接控制并由原始输出端直接观察。如果测试点用作电路的原始输入,则可以直接观察。如果测试点用作电路的原始输入,则可以提高电路的可控性;如果测试点用作电路的原始输出,提高电路的可控性;如果测试点用作电路的原始输出,则可以提高电路的可观察性。在某些情况下,一个测则可以提高电路的可观察性。在某些情况下,一个测试点可以同时用作输入和输出。但由于管脚数的限制,试点可以同时用作输入和输出。但由于管脚数的限制,所能引入的测试点是非常有限的。所能引入的测试点是非常有限的。 7总线结构总线结构类似于分块法,在专用类似于分块法,在专用IC IC 可测性设计中十可测性设计中十分有用,它将电路分成若干个功能块,并

10、且与总线相分有用,它将电路分成若干个功能块,并且与总线相连。可以通过总线测试各个功能块,改进各功能块的连。可以通过总线测试各个功能块,改进各功能块的可测性。但这种方法不能检测总线自身的故障。可测性。但这种方法不能检测总线自身的故障。特定技术特定技术的一个主要困难在于它需要在电路中每个测的一个主要困难在于它需要在电路中每个测试点附加可控的输入端和可观察的输出端,因此增加试点附加可控的输入端和可观察的输出端,因此增加了附加的连线。了附加的连线。而后期的而后期的DFT DFT 技术技术结构化设计方法结构化设计方法则不同,则不同,它对电路结构作总体上的考虑,可以访问电路内部节它对电路结构作总体上的考虑

11、,可以访问电路内部节点;按照一定的设计规则进行电路设计,只增加了用点;按照一定的设计规则进行电路设计,只增加了用于测试的内部逻辑电路,因而具有通用性。于测试的内部逻辑电路,因而具有通用性。 87.2.2 7.2.2 结构化设计技术结构化设计技术 结构化设计结构化设计的目的是减少电路的时序复杂性,减轻测试生成的目的是减少电路的时序复杂性,减轻测试生成和测试验证的困难程度。和测试验证的困难程度。 结构化设计方法可以应用到所有的设计中去,并且通常具有结构化设计方法可以应用到所有的设计中去,并且通常具有一套设计规则,主要有一套设计规则,主要有扫描技术扫描技术和和内建自测试内建自测试(Built In

12、Built In Self Test BISTSelf Test BIST)两种技术。)两种技术。7.2.2.1 7.2.2.1 扫描技术扫描技术 “扫描扫描”是指将电路中的任一状态移进或移出的能力,其特是指将电路中的任一状态移进或移出的能力,其特点是测试数据的串行化。点是测试数据的串行化。 通过将系统内的寄存器等时序元件重新设计,使其具有扫描通过将系统内的寄存器等时序元件重新设计,使其具有扫描状态输入的功能,可使测试数据从系统一端经由移位寄存器状态输入的功能,可使测试数据从系统一端经由移位寄存器等组成的数据通路串行移动,并在数据输出端对数据进行分等组成的数据通路串行移动,并在数据输出端对数据

13、进行分析,以此提高电路内部节点的可控性和可观察性,达到测试析,以此提高电路内部节点的可控性和可观察性,达到测试芯片内部的目的。芯片内部的目的。 97.2.2.1.1 7.2.2.1.1 全扫描技术(全扫描技术(Full ScanFull Scan) 全扫描设计就是将电路中的所有触发器用特殊设计的具有扫全扫描设计就是将电路中的所有触发器用特殊设计的具有扫描功能的触发器代替描功能的触发器代替,使其在测试时链接成一个或几个,使其在测试时链接成一个或几个移位移位寄存器寄存器,这样,电路分成了可以分别进行测试的,这样,电路分成了可以分别进行测试的纯组合电路纯组合电路和和移位寄存器移位寄存器,电路中的所有

14、状态可以直接从原始输入和输,电路中的所有状态可以直接从原始输入和输出端得到控制和观察。出端得到控制和观察。 这样的设计将时序电路的测试生成简化成组合电路的测试生这样的设计将时序电路的测试生成简化成组合电路的测试生成,由于组合电路的测试生成算法目前已经比较完善,并且成,由于组合电路的测试生成算法目前已经比较完善,并且在测试自动生成方面比时序电路的测试生成容易得多,因此在测试自动生成方面比时序电路的测试生成容易得多,因此大大降低了测试生成的难度。大大降低了测试生成的难度。 已有的全扫描测试设计技术包括:已有的全扫描测试设计技术包括:1 1、19751975年由日本年由日本NECNEC公司开发的采用

15、多路数据触发器结构的扫描公司开发的采用多路数据触发器结构的扫描通路法(通路法(Scan PathScan Path),其中的时序元件为可扫描的无竞争),其中的时序元件为可扫描的无竞争D D型触发器。采用扫描通路法测试的芯片,必须采用同步时序。型触发器。采用扫描通路法测试的芯片,必须采用同步时序。 102 2、由、由IBM IBM 公司在公司在19771977年开发的级敏扫描双锁存器设计法年开发的级敏扫描双锁存器设计法(LSSDLSSD)。这是一种被广泛采用的扫描测试技术,主要优点)。这是一种被广泛采用的扫描测试技术,主要优点是系统时钟和数据之间不存在冒险条件,这是由严格的是系统时钟和数据之间不

16、存在冒险条件,这是由严格的LSSD LSSD 设计规则所保证的。它用了比单个锁存器复杂得多的移位寄设计规则所保证的。它用了比单个锁存器复杂得多的移位寄存锁存器(存锁存器(Shift Register Latch SRLShift Register Latch SRL),并需要附加多),并需要附加多达达4 4个的输入输出管脚,其中两个用于测试模式的时钟,一个的输入输出管脚,其中两个用于测试模式的时钟,一个用于扫描数据的输入,一个用于扫描数据的输出。个用于扫描数据的输入,一个用于扫描数据的输出。3 3、由日本富士通公司于、由日本富士通公司于19801980年开发的随机存取扫描法(年开发的随机存取扫

17、描法(Random Random Access ScanAccess Scan)。在随机存取扫描技术中,)。在随机存取扫描技术中,SRLSRL和和RAMRAM阵列相阵列相类似,即用类似,即用X-YX-Y地址对每个锁存器进行编码,并直接通过地址地址对每个锁存器进行编码,并直接通过地址选择变化的选择变化的SRLSRL,加快了测试过程。但为了保证,加快了测试过程。但为了保证X-YX-Y编码器的编码器的正确,在系统的集成度上要花更高的代价。正确,在系统的集成度上要花更高的代价。114 4、由、由Sperry-Univac Sperry-Univac 公司在公司在1977 1977 年开发的扫描置入法(

18、年开发的扫描置入法(ScanScanSetSet),其中的移位寄位器不在数据通路上,因此不与所有系),其中的移位寄位器不在数据通路上,因此不与所有系统触发器共享。从时序网络内部采样统触发器共享。从时序网络内部采样n n点后,将采样值用一个点后,将采样值用一个时钟脉冲送到时钟脉冲送到n n位移位寄存器中。数据置入后就开始移位,数位移位寄存器中。数据置入后就开始移位,数据通过扫描输出端扫描输出。同时,移位寄存器中的据通过扫描输出端扫描输出。同时,移位寄存器中的n n位数据位数据也可置入系统触发器中,用于控制不同的通路,以简化测试。也可置入系统触发器中,用于控制不同的通路,以简化测试。这就要求系统中

19、有适当的时钟结构。这就要求系统中有适当的时钟结构。 虽然全扫描设计可以显著地减少测试生成的复杂度和测试费虽然全扫描设计可以显著地减少测试生成的复杂度和测试费用,但这是以面积和速度为代价的。近年来,部分扫描用,但这是以面积和速度为代价的。近年来,部分扫描(Partial ScanPartial Scan)方法因为只选择一部分触发器构成移位寄)方法因为只选择一部分触发器构成移位寄存器,降低了扫描设计的硬件消耗和测试响应时间而受到重存器,降低了扫描设计的硬件消耗和测试响应时间而受到重视。视。 127.2.2.1.2 7.2.2.1.2 部分扫描技术(部分扫描技术(Partial ScanPartia

20、l Scan) 由于部分扫描方法只选择一部分触发器构成移位寄存器,因由于部分扫描方法只选择一部分触发器构成移位寄存器,因此其关键技术在于如何选取触发器。此其关键技术在于如何选取触发器。80 80 年代起,对部分扫描年代起,对部分扫描的研究主要集中在如何减小芯片面积、降低对电路性能的影的研究主要集中在如何减小芯片面积、降低对电路性能的影响、提高电路的故障覆盖率和减小测试矢量生成的复杂度等响、提高电路的故障覆盖率和减小测试矢量生成的复杂度等方面的算法研究,大致可分为以下几类:方面的算法研究,大致可分为以下几类:1 1、利用可测性测量值选择扫描触发器(一种经验性可测性设计、利用可测性测量值选择扫描触

21、发器(一种经验性可测性设计方法)。该方法利用触发器链入移位寄存器前后的电路的可方法)。该方法利用触发器链入移位寄存器前后的电路的可测性差异(测性差异(Testability DifferenceTestability Difference)来选取对电路的可测)来选取对电路的可测性影响大的触发器组成移位寄存器,从而获得较高的故障覆性影响大的触发器组成移位寄存器,从而获得较高的故障覆盖率和对难测故障的覆盖。盖率和对难测故障的覆盖。2 2、根据要求的故障覆盖率选取触发器(针对目标故障的最少触、根据要求的故障覆盖率选取触发器(针对目标故障的最少触发器的选取方法)。该方法将未被功能测试矢量测试的电路发器

22、的选取方法)。该方法将未被功能测试矢量测试的电路组合部分中的故障定义为目标故障,以覆盖全部可测的目标组合部分中的故障定义为目标故障,以覆盖全部可测的目标故障为目的,采用频率方法和距离方法来选取最少的触发器。故障为目的,采用频率方法和距离方法来选取最少的触发器。 133 3、根据简化测试矢量生成来选取触发器。部分扫描设计与全扫、根据简化测试矢量生成来选取触发器。部分扫描设计与全扫描设计的主要差异在于部分扫描设计只利用了电路的部分触描设计的主要差异在于部分扫描设计只利用了电路的部分触发器构成移位寄存器,因此,移位寄存器之外的电路仍是时发器构成移位寄存器,因此,移位寄存器之外的电路仍是时序的,这部分

23、电路的测试可以采用时序电路的序的,这部分电路的测试可以采用时序电路的ATPGATPG(自动测(自动测试矢量生成)。但时序电路试矢量生成)。但时序电路ATPGATPG的难易程度与时序电路的时的难易程度与时序电路的时序深度和反馈回路有关,序深度和反馈回路有关,Rajesh Gupta Rajiv Rajesh Gupta Rajiv 等人提出一种等人提出一种时序电路的平衡结构时序电路的平衡结构BB结构的概念,并给出了如何选取触结构的概念,并给出了如何选取触发器来构造发器来构造B B结构的算法。应用此算法后得到的剩余电路是一结构的算法。应用此算法后得到的剩余电路是一种平衡结构,可以用改进的组合电路的

24、种平衡结构,可以用改进的组合电路的ATPGATPG产生测试矢量,产生测试矢量,减少了测试矢量生成的复杂度,同时可获得较高的故障覆盖减少了测试矢量生成的复杂度,同时可获得较高的故障覆盖率。率。7.2.2.1.3 7.2.2.1.3 边界扫描技术(边界扫描技术(Boundary ScanBoundary Scan) 边界扫描法是各边界扫描法是各IC IC 制造商支持和遵守的一种扫描设计标准,制造商支持和遵守的一种扫描设计标准,主要用于对印刷电路板的测试,它通过提供一个标准的芯片主要用于对印刷电路板的测试,它通过提供一个标准的芯片板测试接口简化了印刷电路板的测试,如图板测试接口简化了印刷电路板的测试

25、,如图1 1 所示。所示。 14 边界扫描结构的标准协议是边界扫描结构的标准协议是1988 1988 年由年由IEEE IEEE 和和JTAG JTAG 合作制定合作制定的,即的,即1149.1 1149.1 标准。它是在标准。它是在IC IC 的输入输出引脚处放上边界的输入输出引脚处放上边界扫描单元(扫描单元(BSCBSC),并把这些扫描单元依次连成扫描链,然后),并把这些扫描单元依次连成扫描链,然后运用扫描测试原理观察并控制元件边界的信号。运用扫描测试原理观察并控制元件边界的信号。 在正常工作状态下,通过边界扫描寄存器(在正常工作状态下,通过边界扫描寄存器(BSRBSR)的扫描单元)的扫描

26、单元并行地输入、输出信号。测试时,由并行地输入、输出信号。测试时,由BSRBSR串行地存储和读出测串行地存储和读出测试数据。扫描单元也可以串、并行混合地接收和输出数据。试数据。扫描单元也可以串、并行混合地接收和输出数据。 边界扫描电路主要用于板级测试,检测印刷电路板在加工时边界扫描电路主要用于板级测试,检测印刷电路板在加工时产生的短路、开路、虚焊、漏焊,以及芯片的错焊、漏焊和产生的短路、开路、虚焊、漏焊,以及芯片的错焊、漏焊和故障芯片的检测等故障的检测。并可对板上简单的组合逻辑故障芯片的检测等故障的检测。并可对板上简单的组合逻辑电路部分的故障进行检测,如图电路部分的故障进行检测,如图2 2所示

27、。所示。 边界扫描电路也可用于对板上芯片进行故障检测,但由于这边界扫描电路也可用于对板上芯片进行故障检测,但由于这种测试方法要将所有的并行输入种测试方法要将所有的并行输入/ /输出数据串行化,测试向量输出数据串行化,测试向量将十分长,故此方法一般只用于在板级系统调试时对怀疑失将十分长,故此方法一般只用于在板级系统调试时对怀疑失效的集成电路的测试。效的集成电路的测试。 15Test Access Port (TAP)controls all testsTDOTDITCKTMSBoundary Scan Cellsattached to every pinFour pin interfacedri

28、ves all testsCorelogicTAP图图1 1 具有边界扫描结构的具有边界扫描结构的IC IC 16TAPCorelogicTAPCorelogicTAPCorelogicTAPCorelogicShort toVccSolderBridgeCombinationLogicJTAG TAPTDOTDITMSTCKPCB图图2 2 边界扫描电路用于板级芯片测试边界扫描电路用于板级芯片测试 177.2.2.2 7.2.2.2 内建自测试技术内建自测试技术 虽然扫描技术可简化测试生成问题,但由于数据的串行操作,虽然扫描技术可简化测试生成问题,但由于数据的串行操作,对电路进行初始化、读出

29、内部状态时需要较长的时间(特别对电路进行初始化、读出内部状态时需要较长的时间(特别对于较大的电路),导致测试速度较电路正常工作速度慢,对于较大的电路),导致测试速度较电路正常工作速度慢,对电路的正常性能和芯片可靠性的影响较大。为了将每个测对电路的正常性能和芯片可靠性的影响较大。为了将每个测试序列加到被测电路上,取得并分析每个试序列加到被测电路上,取得并分析每个CUT CUT 响应,需要用响应,需要用复杂的复杂的ATE ATE 存贮庞大的测试激励信号和电路响应,而且扫描存贮庞大的测试激励信号和电路响应,而且扫描技术仅提供静态测试,不能检测出电路中的时序信号;技术仅提供静态测试,不能检测出电路中的

30、时序信号;VLSI VLSI 芯片行为的复杂和每个管脚上带有的众多门数使得扫描技术芯片行为的复杂和每个管脚上带有的众多门数使得扫描技术的测试效率并不高。为了弥补扫描技术的不足,提出了内建的测试效率并不高。为了弥补扫描技术的不足,提出了内建自测试的方法。自测试的方法。 对数字电路进行测试的过程分为二个阶段:把测试信号发生对数字电路进行测试的过程分为二个阶段:把测试信号发生器产生的测试序列加到器产生的测试序列加到CUTCUT,然后由输出响应分析器检查,然后由输出响应分析器检查CUT CUT 的输出序列,以确定该电路有无故障。如果的输出序列,以确定该电路有无故障。如果CUT CUT 具有自已产具有自

31、已产生测试信号、自己检查输出信号的能力,则称该电路具有内生测试信号、自己检查输出信号的能力,则称该电路具有内建自测试(建自测试(BISTBIST)功能。其一般结构如图)功能。其一般结构如图3 3所示。所示。 18输入逻辑激励待测逻辑输出逻辑接口响应控制器开关接口图图3 BIST 3 BIST 的一般结构的一般结构 19 BISTBIST主要完成测试序列生成和输出响应分析两个任务,通过分析主要完成测试序列生成和输出响应分析两个任务,通过分析CUTCUT的响应输出,判断的响应输出,判断CUTCUT是否有故障。因此,对数字电路进行是否有故障。因此,对数字电路进行BISTBIST测试,需要增加三个硬件

32、部分:测试序列生成器、输出响应分析器测试,需要增加三个硬件部分:测试序列生成器、输出响应分析器和测试控制部分。和测试控制部分。 在测试序列生成中,有确定性测试生成、伪穷举测试生成和伪随机在测试序列生成中,有确定性测试生成、伪穷举测试生成和伪随机测试生成等几种方法。测试生成等几种方法。 确定性方法是一种确定性方法是一种Ad HocAd Hoc(特定设计)方法,虽然可以得到高的故(特定设计)方法,虽然可以得到高的故障覆盖率,但硬件开销较大,仅在测试码的个数较少时适用。障覆盖率,但硬件开销较大,仅在测试码的个数较少时适用。 穷举法是把所有可能输入均加以分析计算的测试方法,它的最大特穷举法是把所有可能

33、输入均加以分析计算的测试方法,它的最大特点是故障覆盖率可达点是故障覆盖率可达100%100%,但其计算量与输入端子数成幂次方关系,但其计算量与输入端子数成幂次方关系,因此计算量很大。因此计算量很大。 如果将电路分为多个原始输入变量互相独立的块,则测试量将大大如果将电路分为多个原始输入变量互相独立的块,则测试量将大大减少,伪穷举法即是这样一种压缩测试量的方法。伪穷举测试方法减少,伪穷举法即是这样一种压缩测试量的方法。伪穷举测试方法也具有非常高的故障覆盖率(只要不引起时序行为,将得到也具有非常高的故障覆盖率(只要不引起时序行为,将得到100100的故障覆盖率),但伪穷举测试方法对电路进行划分比较困

34、难,而的故障覆盖率),但伪穷举测试方法对电路进行划分比较困难,而且由于引入了附加硬件,可能对电路性能产生负效应。且由于引入了附加硬件,可能对电路性能产生负效应。 伪随机测试是一种广泛使用的、可对伪随机测试是一种广泛使用的、可对CUTCUT施加大量测试码的方法,施加大量测试码的方法,其最大的优点是测试电路的硬件开销小,同时仍具有较高的故障覆其最大的优点是测试电路的硬件开销小,同时仍具有较高的故障覆盖率。盖率。 20 实现输出响应分析的方法有实现输出响应分析的方法有ROMROM与比较逻辑、多输入特征寄存与比较逻辑、多输入特征寄存器(器(MISRMISR)和跳变计数器等。)和跳变计数器等。 与确定性

35、测试生成类似,与确定性测试生成类似,ROMROM与比较逻辑方法将正确的响应存与比较逻辑方法将正确的响应存贮在芯片上的贮在芯片上的ROMROM中,在测试时,将其与实际响应进行比较,中,在测试时,将其与实际响应进行比较,但这种方法会因占用太多的硅面积而毫无实用价值。但这种方法会因占用太多的硅面积而毫无实用价值。 MISRMISR方法通过将方法通过将CUTCUT中各节点的响应序列输入,得到与响应序中各节点的响应序列输入,得到与响应序列等长的输出特征序列,然后与无故障电路各节点的响应序列等长的输出特征序列,然后与无故障电路各节点的响应序列的特征相比较,如果二者一致,说明电路正常,否则表明列的特征相比较

36、,如果二者一致,说明电路正常,否则表明CUTCUT中有故障存在,此方法主要有分析单个响应序列的串行输中有故障存在,此方法主要有分析单个响应序列的串行输入特征分析器(入特征分析器(Serial input Signature Analyzer SSASerial input Signature Analyzer SSA)和分析多个响应序列的并行输入特征分析器(和分析多个响应序列的并行输入特征分析器(Parallel Parallel input Signature Analyzer PSAinput Signature Analyzer PSA)两种形式。)两种形式。 跳变计数器方法通过比较输出

37、响应中的跳变计数器方法通过比较输出响应中的0 0到到1 1和和1 1到到0 0的跳变总的跳变总数,判断出数,判断出CUTCUT是否正常。因此仅需要存贮和比较跳变次数,是否正常。因此仅需要存贮和比较跳变次数,并使所需的存贮量与测试时间得以大幅度减少。如果并使所需的存贮量与测试时间得以大幅度减少。如果t t是输出是输出序列的长度,则仅需要比较序列的长度,则仅需要比较log2tlog2t。 217.3 7.3 基于基于ATPGATPG的扫描测试的扫描测试 7.3.1 7.3.1 扫描测试的基本原理扫描测试的基本原理 当设计中的当设计中的ICIC规模较大时,手工操作的测试设计时间会超过规模较大时,手工

38、操作的测试设计时间会超过实际器件的设计时间。使用自动测试模式发生软件可消除实际器件的设计时间。使用自动测试模式发生软件可消除(至少明显地降低)测试生成中所需的人工干预,从而增加(至少明显地降低)测试生成中所需的人工干预,从而增加对设计的可测性。对设计的可测性。 扫描链的合成及内建自测试(扫描链的合成及内建自测试(BISTBIST)技术,配合以自动测试)技术,配合以自动测试图案生成(图案生成(ATPGATPG)技术可生成简洁、高故障覆盖率的测试向)技术可生成简洁、高故障覆盖率的测试向量。简洁的测试向量意味着缩短生产测试的测试时间,而高量。简洁的测试向量意味着缩短生产测试的测试时间,而高故障覆盖率

39、则可降低出厂芯片的故障率。故障覆盖率则可降低出厂芯片的故障率。 “扫描扫描”是指将电路中的任一状态移进或移出的能力,其特是指将电路中的任一状态移进或移出的能力,其特点是测试数据的串行化。通过将系统内的寄存器等时序元件点是测试数据的串行化。通过将系统内的寄存器等时序元件重新设计,使其具有扫描状态输入的功能,可使测试数据从重新设计,使其具有扫描状态输入的功能,可使测试数据从系统一端经由移位寄存器等组成的数据通路串行移动,并在系统一端经由移位寄存器等组成的数据通路串行移动,并在数据输出端对数据进行分析,以此提高电路内部节点的可控数据输出端对数据进行分析,以此提高电路内部节点的可控性和可观察性,达到测

40、试芯片内部的目的。性和可观察性,达到测试芯片内部的目的。 下图为用扫描类型触发器替换前后电路结构示意图:下图为用扫描类型触发器替换前后电路结构示意图: 22D QRRCombinationLogic2D QI1I2I3ClkRstD QRCombinationLogic1O1O2O3F1F2F3SISEDICPD QRSISEDICPD QRQCombinationLogic1SISEDICPRQPI1SEClkRstSI1SO1PO1PO2CombinationLogic2D QPI2badcF1F2F3图图4 4 A Design Before Insert Scan 图图5 5 The

41、Design after Insert Scan 23如上图所示:对于如上图所示:对于Combination Logic Block1Combination Logic Block1来说,来说,在扫描设计之前其输入在扫描设计之前其输入a a 非原始输入,而是由触发器非原始输入,而是由触发器F1 F1 的输出端控制,输出端的输出端控制,输出端c c 也非原始输出端,此也非原始输出端,此Block Block 的可控性和可观察性都较差。的可控性和可观察性都较差。在扫描替换之后,电路中的所有触发器都用具有扫描在扫描替换之后,电路中的所有触发器都用具有扫描功能的触发器代替,此类型触发器与普通触发器的不

42、功能的触发器代替,此类型触发器与普通触发器的不同之处在于其数据输入端增加了一同之处在于其数据输入端增加了一2 2 选选1 MUX1 MUX,通过,通过测试状态控制信号测试状态控制信号SESE进行输入选择。当电路处于测试进行输入选择。当电路处于测试状态时状态时SE SE 选择扫描输入选择扫描输入SI SI 作为触发器的输入数据,作为触发器的输入数据,触发器链接成一个移位寄存器链(如上图中红色链触发器链接成一个移位寄存器链(如上图中红色链路)。这样,电路分成了可以进行分别测试的纯组合路)。这样,电路分成了可以进行分别测试的纯组合电路电路Combination Logic1Combination L

43、ogic1、Combination Logic2Combination Logic2,和,和移位寄存器链移位寄存器链F1F1、F2F2、F3F3。 24以上图为例,对于移位寄存器链以上图为例,对于移位寄存器链F1F1、F2F2、F3F3的测试只的测试只需从需从SI1 SI1 端加入端加入0_1_00_1_0这样十分简短的测试这样十分简短的测试Pattern Pattern 便可保证覆盖完全;对于纯组合电路便可保证覆盖完全;对于纯组合电路Combination Logic1Combination Logic1来说,其所有输入信号的状态可来说,其所有输入信号的状态可以直接从原始输入(以直接从原始输

44、入(PI2PI2)和移位寄存器)和移位寄存器F1 F1 输出端输出端(F1/QF1/Q)加以控制,其所有输出信号的状态可以直接)加以控制,其所有输出信号的状态可以直接从原始输出(从原始输出(PO1PO1)和移位寄存器)和移位寄存器F2 F2 输入端(输入端(F2/DIF2/DI)观察到。而其测试生成则可用目前已经比较完善的组观察到。而其测试生成则可用目前已经比较完善的组合电路测试生成算法,通过合电路测试生成算法,通过EDA EDA 软件的软件的ATPGATPG工具自动工具自动生成高覆盖率的测试生成高覆盖率的测试Pattern Pattern ;同样可完成对组合电;同样可完成对组合电路路Comb

45、ination Logic2 Combination Logic2 的测试。的测试。 257.3.2 7.3.2 扫描测试的主要阶段扫描测试的主要阶段 在对上述纯组合电路部分进行扫描测试时,先将一个测试在对上述纯组合电路部分进行扫描测试时,先将一个测试Pattern Pattern 的激励信号通过移位寄存器串行移入及通过原始输的激励信号通过移位寄存器串行移入及通过原始输入端(入端(PI2PI2)并行加载,再将此组合电路部分的响应通过移位)并行加载,再将此组合电路部分的响应通过移位寄存器串行移出及通过原始输出端(寄存器串行移出及通过原始输出端(PO1PO1)并行输出。一个)并行输出。一个Patt

46、ern Pattern 的测试步骤如图的测试步骤如图6 6所示。所示。 各步骤的功能如下:各步骤的功能如下: 1 1)Scan-In PhaseScan-In Phase:此阶段数据串行移入扫描链。:此阶段数据串行移入扫描链。2 2)Parallel MeasureParallel Measure:此:此CycleCycle的初始阶段通过原始输入端加入的初始阶段通过原始输入端加入并行测试数据,此并行测试数据,此CycleCycle的末段检测原始输出端的并行输出数的末段检测原始输出端的并行输出数据。在此据。在此CycleCycle中时钟信号保持无效。中时钟信号保持无效。3 3)Parallel

47、CaptureParallel Capture:扫描寄存器捕获组合逻辑部分的输出信:扫描寄存器捕获组合逻辑部分的输出信号状态。号状态。4 4)First Scan-OutFirst Scan-Out:此阶段无时钟信号,测试机采样扫描链输:此阶段无时钟信号,测试机采样扫描链输出值,检测第一位出值,检测第一位Scan-OutScan-Out数据。数据。5 5)Scan-Out PhaseScan-Out Phase:扫描寄存器捕获到的数据串行移出,测试:扫描寄存器捕获到的数据串行移出,测试机在每一机在每一CycleCycle检测扫描链输出值。检测扫描链输出值。 26AB C DEExecuting

48、 a SinglePatternF Fi iv ve e P Ph ha as se es sA . Scan-InB . Parallel MeasureC . Parallel CaptureD . First Scan-OutE . Scan-OutTester CyclesParallelSerialOne CycleLegend:图图6 6 一个测试一个测试Pattern Pattern 的执行步骤的执行步骤 27 由图中可看出:对一个由图中可看出:对一个Pattern Pattern 的测试过程中,的测试过程中,Parallel Parallel Measure Measure 和

49、和Parallel Capture Parallel Capture 仅用了两个测试周期,而仅用了两个测试周期,而Scan Scan Shift Shift 占用了绝大多数测试时间,当扫描链较长时更是如此。占用了绝大多数测试时间,当扫描链较长时更是如此。因此,为提高测试效率必需尽量缩短扫描链的长度,采用多因此,为提高测试效率必需尽量缩短扫描链的长度,采用多条扫描链同时扫描数据。条扫描链同时扫描数据。 实际的测试过程中,前一实际的测试过程中,前一Pattern Pattern 的的Scan-Out Scan-Out 阶段于后一阶段于后一Pattern Pattern 的的Scan-In Scan

50、-In 阶段是相互交叠的,如下图所示:阶段是相互交叠的,如下图所示:Scan ShiftTester CyclesScan In Pattern n andScan Out Pattern (n-1)nthPattern(n-1) thPattern图图7 7 前后前后PatternPattern的的Scan-Out Scan-In Scan-Out Scan-In 阶段相互交叠阶段相互交叠 287.3.3 7.3.3 扫描测试的基本时序扫描测试的基本时序 扫描测试是基于扫描测试是基于Cycle Cycle 的测试过程,典型的测试时序如下:的测试过程,典型的测试时序如下:SIClkSOStro

51、beSE0ns 50ns 100nsScan BitScanning EnabledSO PortStrobed图图8 Scan-Shift Cycle8 Scan-Shift Cycle29 Scan-Shift Scan-Shift 阶段阶段Scan-In Scan-In 与上一与上一Pattern Pattern 的的Scan-out Scan-out 相互相互交叠,待测芯片的测试状态控制信号交叠,待测芯片的测试状态控制信号SESE(Scan EnableScan Enable)一直)一直处于有效状态。处于有效状态。First Scan-Out First Scan-Out 阶段时钟信号

52、保持无效,测阶段时钟信号保持无效,测试机采样串行输出端试机采样串行输出端SOSO的状态;之后每一的状态;之后每一Scan-Shift Cycle Scan-Shift Cycle 都有一时钟信号,测试机也会采样一次都有一时钟信号,测试机也会采样一次SOSO的状态;在最后一的状态;在最后一个个Scan-Shift Cycle Scan-Shift Cycle 用于产生并行输出(用于产生并行输出(POPO)的有效数据被)的有效数据被捕获到各触发器中。与此同时,扫描数据位串行地加载于相捕获到各触发器中。与此同时,扫描数据位串行地加载于相应的应的SI SI 输入端口,当时钟信号有效时扫描数据位移入链中

53、。输入端口,当时钟信号有效时扫描数据位移入链中。 Parallel Measure Parallel Measure 阶段待测芯片的测试状态控制信号阶段待测芯片的测试状态控制信号SE SE 处处于无效状态,芯片处于正常工作模式。此时已通过扫描链完于无效状态,芯片处于正常工作模式。此时已通过扫描链完成相应组合逻辑模块一部分输入信号的加载,测试机再通过成相应组合逻辑模块一部分输入信号的加载,测试机再通过原始输入端并行加载其它部分输入信号。经过一段稳定时间原始输入端并行加载其它部分输入信号。经过一段稳定时间后测试机采样(后测试机采样(StrobeStrobe)并行输出信号()并行输出信号(POPO)

54、。见下图:)。见下图:30InputsClkOutputsStrobeSEParallelInputsScanning DisabledParallelOutputsStrobedClockInactive0ns 50ns 100ns图图9 Parallel Measure Cycle9 Parallel Measure Cycle31 Parallel Capture Parallel Capture 阶段待测芯片仍处于正常工作模式。当测阶段待测芯片仍处于正常工作模式。当测试时钟有效时,组合逻辑的输出信号状态被捕获到相应的扫试时钟有效时,组合逻辑的输出信号状态被捕获到相应的扫描触发器中,等待

55、描触发器中,等待First Scan-Out First Scan-Out 阶段到来后将捕获数据移阶段到来后将捕获数据移出。见下图:出。见下图:InputsClkOutputsStrobeSEInputsMaintainedScanning DisabledNoStrobeClockActive0ns 50ns 100ns图图10 10 Parallel Capture Cycle 327.3.4 7.3.4 扫描设计的注意事项扫描设计的注意事项 扫描设计技术大大增加了电路的可控制性和可观察性。然而,扫描设计技术大大增加了电路的可控制性和可观察性。然而,任何事情都要付出代价,在扫描替换之后,电路中的所有触任何事情都要付出代价,在扫描替换之后,电路中的所有触发器都用具有扫描功能的触发器代替,此类型触发器较普通发器都用具有扫描功能的触发器代替,此类型触发器较普通触发器增加了一触发器增加了一2

温馨提示

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

评论

0/150

提交评论