合成传输器和压实工具以测试基于扫描的集成电路的方法

文档序号:6023491阅读:304来源:国知局
专利名称:合成传输器和压实工具以测试基于扫描的集成电路的方法
合成传输器和压实工具以测试基于扫描的集成电路的方法
技术领域
本发明专利申请是国际申请号为PCT/US03/00(^9,国际申请日为2003年01月16 日,进入中国国家阶段的申请号为03802114. 5,名称为“用于在基于扫描的集成电路中传输扫描图案的方法和装置”的发明专利申请的分案申请。技术领域
本发明通常涉及利用用于测试的设计(DFT)技术的逻辑设计和测试领域。具体的,本发明涉及利用扫描或建立自测试(BIST)技术用于集成电路的逻辑测试和诊断领域。
背景技术
随着集成电路的复杂性的增加,在获得非常高的错误覆盖的同时最小化测试成本变得越来越重要。尽管在过去几十年中用于次百万门设计的传统基于扫描的(scan-based) 方法已非常成功的满足了这些目标,但对于超过现在百万门的基于扫描的设计,在合理的造价下获得这样高的错误覆盖就变得非常困难。这主要是由于它需要将扫描图案存储于自动测试设备(ATE)上的大量测试数据存储量的事实。此外,测试数据存储量的增加还导致与测试实施时间相关的成本相应增加。
解决该问题的传统方法集中于在ATE上添加更多的存储器或截去部分扫描数据图案。但这些方法不能充分地解决该问题。这是因为前一种方法增加了附加的测试成本因而不能满足电路的错误覆盖,而后一种方法则牺牲了电路的错误覆盖来节省测试成本。
为了解决该问题,已经提出了许多现有的用于测试设计的(DFT)技术。这些解决方法集中于增加内部扫描链的数量,以减小测试数据量并因此不增加测试实施时间,并且在一些情况下同时减小或消除外部可达到的扫描链的数量。这消除了内部扫描链的个数上的包装限制,在一些情况下,其可以超过包装探针数量。
这种DFT技术的一个例子是内建自测试(BIST)。见授权McArmey (1985)的美国专利No. 4,503,537。BIST实施片上(on-chip)产生伪随机扫描图案并将其施加于被测电路, 消除了外部到扫描链的全部入口,并因此消除了内部扫描链所能使用个数上的任何限制。 可是,BIST不能确保非常高的错误覆盖并常常必须与扫描ATPG(自动测试图案产生设备) 一起结合使用,以覆盖任何剩余的很难检测的错误。
人们已经提出了几种测试数据传输至被测电路之前用于压缩测试数据的不同方法。见由 Koenemann 等人(1991),Hellebrand 等人(1995),Rajski 等人(1998),Jas 等人 0000),Bayraktaroglu等人Q001)合著的文献以及授予Rajski等人Q001)的美国专利 No. 6,327,687。这些方法基于对测试立方体(也就是将扫描数据图案设置存储进被测电路的扫描链中)的观测,经常包含大量未指定(不必注意)的位置。可以利用基于减压设置的LFSR(线性回馈移位寄存器)对这种测试立方体用较少数量的比特进行编码,然后对它们进行单片减压。每次利用扫描ATPG产生一个测试立方体该设置需要解一组线性方程,。 由于解这些线性方程依赖于测试立方体内的未指定比特的个数,这些以LFSR为基础的解压方案在压实之前不将一个ATPG图案分成几个单独的图案情况下压实ATPG图案常常是有困难的,因此在添加太多的附加扫描图案时,确保非常高的错误覆盖是有困难的。
一种减少测试数据量的不同的DFT技术是基于传播扫描。见由Lee(1999)等人, Hamzaoglu等人(1999)和Pandey等人^00 合著的文献。传输扫描设置直接连接多路扫描链、即所谓的传输通道至一个的扫描输入或者将扫描链分成不同的部分并通过一个扫描输入将相同的图案移进每个部分,在这些设置中,利用线或缓冲器,其中间没有任何逻辑门,比如AND, OR, NAND, NOR, XOR, XNOR, MUX(多路器)或NOT (变换器)可以做到多个和每个扫描输入和它各自传输通道之间的连接。尽管可以实际实现这种设置额外的硬件开支的情况下,但它使扫描链在不同扫描链数据比特之间具有非常大的相关性,这导致了输入限制,该输入限制太强不能获得非常高的错误覆盖。
因此,需要发展一种用于确保非常高的错误覆盖的同时最小化测试数据量和测试实施时间的改进方法和装置。本发明中我们提出的方法基于传输扫描,因此在扫描ATPG之后就不需解任何线性方程的分离步骤。我们还提出了传输扫描重新排序方法以进一步提高电路的错误覆盖。发明内容
因此,本发明的一个首要目标是提供这样一种方法和装置。我们提出的方法基于传输扫描,但添加了一个设置于ate(自动测试设备)输出和被测电路的扫描链输入之间的传输器电路。该传输器能插入单片中或将其设计进ATE中。为了简化,在讨论中我们假设将传输电路设置于ATE和被测集成电路之间,而不具体指定其具体放置位置。下面的描述不考虑实施应用中传输器被插入的位置。
依照本发明的方法,产生一个施加给被测集成电路设计的扫描单元(存储器元件)的传输扫描图案。该处理包括将存储在一个ATE中的虚拟扫描图案转换成利用传输器施加给集成电路的包装扫描输入探针的传输扫描图案。该传输器将虚拟扫描图案构图成用于测试各种错误比如集成电路中的粘连错误、延迟错误、和桥接错误的各种错误的相应传输扫描图案。被测试的集成电路包含多路扫描链,每个扫描链包括大量耦合在一起存储传输扫描图案的扫描单元。
本发明的一个重要方面是传输器电路的设计。该传输器可以如一个组合逻辑电路的网络(组合逻辑网络)一样简单,或者可能包括一个除组合逻辑电路网络之外的虚拟扫描控制器(请参照图4和图6结合附图的详细描述做进一步说明)。添加一个虚拟扫描控制器允许传输器实施的构图根据控制器的内部状态而改变。利用可编程的逻辑阵列也可实施传输器,在这种设置中,通过组合逻辑网络将每个ATE输出连接至扫描链(或扫描部分) 输入的一个子集。如果可以,组合逻辑网络的任何剩余输入可直接连接至虚拟扫描控制器的输出。在扫描测试过程中,首先利用边界扫描或其它外部装置对虚拟扫描控制器装载一个预定值。这用于初始化传输器的功能。随后在测试中,它可能并常常期望将不同的预定值装载入虚拟扫描控制器,从而改变传输器的功能,并且这可重复任意次。这允许传输器的输出实施不同或全部逻辑功能的组合。由于传输器的功能是存储进虚拟扫描控制器中值的可编程功能,因此不会限制能够实施的构图的数量。这缓和了传统传输扫描的强输入限制并增加了产生测试更多和更全的错误传输扫描图案的能力。由于存储进虚拟扫描控制器中的值决定了施加于产生传输扫描图案上的输入限制,因此它是成立的。
尽管由于组合逻辑网络的简化和低成本,组合逻辑网络是传输器的优选实施例。 但在本发明中所描述的传输器也可以包括一个虚拟虚拟扫描控制器和任一组合逻辑网络。 该虚拟虚拟扫描控制器可以是任一通用有限状态机器,比如LFSR(线性反馈移位寄存器), 只要能将预定值装载入有限状态机器的全部存储器元件,比如D触发器或D锁存器中即可。 该组合逻辑网络可以包括一个或多个逻辑门,比如AND,OR, NAND, NOR, XOR, MUX, NOT门,或上述的任意组合。该组合逻辑网络增加了产生测试附加错误的传输扫描图案的机会,比如与传统传输扫描相比抵抗错误的图案。
本发明的另一个方面是形成和产生满足传输器施加的输入限制的传输扫描图案。 当采用组合逻辑网络实现传输器时,传输器施加的输入限制任一时间仅允许扫描单元的一个子集接受一个预定逻辑值,该值等于或与ATE输出互补。不同于仅允许全部为零和全部为一的图案施加给传输器通道的先前文献中的传输器扫描设置,本发明允许逻辑值的不同组合在不同的时间出现在这些通道上。产生这些测试图案仅需要扩大通常采用的ATPG工具,从而实现这些附加输入限制。因此,产生传输扫描图案的过程将利用一组初始输入限制产生图案并分析获得的覆盖。如果获得的错误覆盖不满意,就施加不同的一组输入限制并产生一组新的矢量。重复该过程直至满足预定限制标准。
为了减少获得非常高的错误覆盖所需要的输入限制的数量,本发明可以在ATPG 发生之前包括一个传输扫描链的重新排序的步骤。我们的方法是实施从每个尖峰输出向后 (扫描单元输入)跟踪到所有尖峰输入(扫描单元输出)的输入尖峰分析,然后利用最大覆盖法重新排序全部的尖峰输入(扫描单元输出),从而使在任何移位时钟周期过程中仅有一个限制的扫描单元位于一个传输通道上。如果不能消除的话,这些传输扫描次序限制减少了与一个ATE输出相关联的传输通道之间的数据依赖性。这给了 ATPG工具产生获得目标错误覆盖而不必使用不同的一组输入限制的传输扫描图案的更好机会,从而。需要注意, 这仅仅是应用在仍然处于发展阶段中的集成电路上,因此应该在取出芯片之前实施传输扫描重新排序。
尽管该处理给ATPG处理增加了 CPU时间,但它要比在ATPG之后解成组的线性方程简单得多和计算强度小得多。与基于LFSR的减压/分解设置相比,单步骤“传输ATPG” 处理更容易产生传输扫描图案。此外,有可能利用最大化的动态压缩(其为组合ATPG的必要部分)来填充尽可能多的未指定位置(不关心位置),从而致力于使用单个扫描图案来检测最大可能的错误。这与基于LFSR的减压/分解设置形成强烈对比,它是期望得到未指定 (不必注意)的位置,为了能够解所需的线性方程,获得一个压缩测试图案。需要以一组具有较少压缩量的ATPG矢量开始基于LFSR的减压/分解设置中的基本概念和规律,为了能够产生一组更紧密的矢量。缺点是与一个测试相同错误的一组矛盾减压/分解ATPG矢量相比,这减小了获得的实际的压缩量。并且允许本发明中所述的基于虚拟扫描控制器传输扫描方法比任何基于LFSR的减压/分解设置在每个扫描测试图案覆盖更多的错误。


随着结合下面的描述和附图,本发明的上述和其它目的、优点和特征将变得更加清楚,其中
图1给出了利用自动测试设备(ATE)用于测试基于扫描的集成电路的通用系统的结构图。
图2给出了依照本发明利用ATE用于测试基于扫描的集成电路的传输扫描测试系统的结构图。
图3给出了仅具有单纯线路的现有技术的传输器设计。
图4给出了依照本发明的传输器的结构图,其包括一个组合逻辑网络和一个任意的扫描连接器。
图5A给出了依照本发明图4中所示的传输器的第一实施例,其包括一个组合逻辑网络。
图5B给出了由图5A所示的传输器的实施例施加的输入限制。
图5C给出了依照本发明图4所示的传输器的第二实施例,其包括一个组合逻辑网络和一个扫描连接器。
图5D给出了由图5C所示的传输器的实施例施加的输入限制。
图6给出了依照本发明的传输器的结构图,其包括虚拟一个虚拟扫描控制器、一个组合逻辑网络和一个任意的扫描连接器。
图7给出了依照本发明图6所示的传输器的第一实施例。
图8给出了依照本发明图6所示的传输器的第二实施例。
图9给出了依照本发明图6所示的传输器的第三实施例。
图10给出了依照本发明图6所示的传输器的第四实施例。
图11给出了依照本发明图6所示的传输器的第五实施例。
图12给出了依照本发明图6所示的传输器的第六实施例。
图13给出了依照本发明的压缩工具的结构图,其包括一个掩码网络和一个XOR网络或一个多路输入签名寄存器(MISR)。
图14给出了依照本发明图13所示的压实工具的第一实施例。
图15给出了依照本发明图13所示的压实工具的第二实施例。
图16A给出了依照本发明在用于产生测试更多错误的传输扫描图案重新排序扫描单元或改变扫描链长度之前的方法实施例。
图16B给出了依照本发明在用于产生测试更多错误传输扫描图案重新排序扫描链之后的方法实施例。
图16C给出了依照本发明在用于产生测试更多错误的传输扫描图案改变扫描链长度之后的方法实施例。
图17给出了依照本发明用于错误覆盖提高的重新排序扫描单元的方法流程图。
图18给出了依照本发明用于产生用在测试基于扫描的集成电路中的传输扫描图案的方法流程图。
图19给出了依照本发明用于合成一个传输器和一个压实工具以测试基于扫描的集成电路的方法流程图。
图20给出了依照本发明和可以实施传输扫描测试方法的系统举例。
具体实施方式
目前期望下面的描述作为实施本发明的最佳方式。该描述不是用于限制本发明的,其仅是用于描述本发明的原理。通过参照附加权利要求书将确定本发明的范围。
图1给出了利用ATE用于测试基于扫描的集成电路的通用系统的结构图。系统 101包括一个测试器或外部自动测试设备(ATE) 102以及一个被测电路(CUT) 107,该被测电路包括扫描链109。
ATE102从外部扫描输入探针111以及从外部初级(primary)输入探针113通过扫描链109以扫描模式一个接一个的施加一组完全指定的测试图案103至⑶T107。然后利用施加的测试图案作为输入该CUT进入标准模式,并将对测试图案的响应俘获进入扫描链。该CUT然后再次返回进入扫描模式,而且从外部扫描输出探针112以及外部初级输出探针114通过扫描链将测试响应移出至ATE。然后通过比较器105对移出的测试响应104 和相应预期的测试响应106进行比较以测定CUT中是否存在错误,并通过合格/错误信号 115显示出结果。
在常规的系统101中,⑶T107中扫描链109的数量等于外部扫描输入探针111的或者外部扫描输出探针112的数量。由于一个集成电路中的有限外部探针的数量,因此在通用系统中的扫描链数量也是有限制的。结果,具有大量扫描单元(SC)IOS的大型集成电路常常包括用于扫描测试的非常长的扫描链,这将导致不可接受的大量测试数据和耗时长的测试实施时间。
图2给出了依照本发明利用ATE用于测试基于扫描的集成电路的传输扫描测试系统的结构图。该系统201包括ATE202和一个电路207,该电路207包括一个传输器208、一个⑶T209和一个压实工具213。该⑶T包括扫描链211。
传输器208可以仅包括一个如在图4所示的组合逻辑网络或者一个如图6所示的除组合逻辑网络之外的虚拟扫描控制器。传输器用于将虚拟扫描图案203绘制成传输扫描图案,其中虚拟扫描图案的比特(bits)数通常小于传输扫描图案的比特数。如果传输器仅包含一个组合逻辑网络就固定传输器的构图功能。可是,如果传输器还包含一个虚拟扫描控制器,构图功能就可以改变。在这种情况下,虚拟扫描控制器的输出值能够改变组合逻辑网络实现的构图功能,这样就可以实现了从外部扫描输入探针215到内部扫描链输入219 之间的不同构图关系。压实工具213是一个组合逻辑网络,比如XOR网络,被设计用来将内部扫描链输出220映射至外部扫描输出探针216。在实践中需要注意,外部扫描输入或输出探针的数量小于内部扫描链输入或输出探针的数量。
需要注意的是,可用任一种空间压实工具和一个多路输入签名寄存器(MISR)取代元件213。在这种情况下,可将全部测试响应压实成一个签名,在已经施加全部传输扫描图案之后,与电路207或ATE202中的一个参考信号进行比较。
此外,压实工具213通常包括一个用于阻止几个输出流进入XOR压实网络或MISR 的掩码网络。这在错误诊断中是有用的。
图3给出了仅具有单纯线路的现有技术的传输器设计。该例传输器设计301具有两个传输扫描输入314和315。传输扫描输入314直接连接至扫描链303到307,而传输扫描输入315直接连接至扫描链308到312。尽管该单纯线路传输设计的造价非常低,但由相同的传输扫描输入供给的扫描链中测试图案的依赖性是非常高的。从自动测试图案产生设备(ATPG)的观点来看,该纯粹线传输设计对给扫描链的输入有很强的限制。结果,该设置常常遭受严重的错误覆盖损失。
图4给出了依照本发明的传输器的结构图,其包括一个组合逻辑网络和一个可选的扫描连接器。通过传输器401的传输扫描输入407施加虚拟扫描图案至组合逻辑网络 402。组合逻辑网络执行固定的构图功能,其将一个虚拟扫描图案转换成一个传输扫描图案。然后通过一个任意扫描连接器403,将传输扫描图案施加给CUT404中的全部扫描链 409。
传输器401用于通过少量外部传输扫描输入探针407为大量内部扫描链406提供测试图案。结果,可将CUT404中的所有扫描单元SC405构造成大量的较短的扫描链。这将有助于减少测试数据量和测试实施时间。通过正确设计组合逻辑网络402,就有可能减少由于扫描链的输入探针所施加的额外限制所导致的错误覆盖损失。
图5A给出了依照本发明图4所示的传输器的第一实施例,其包括一个组合逻辑网络。在该例中,通过传输器501将一个3比特的虚拟扫描图案转换成一个8比特传输扫描图案。
传输器501包括一个组合逻辑网络502,该网络包括两个反相器503和507、一个 XOR门504、一个OR门505和一个NOR门506。通过传输扫描输入施加虚拟扫描图案X2 518 至XO 520。组合逻辑网络实施一个固定的构图功能,其将一个虚拟扫描图案转换成一个传输扫描图案。然后通过Y7 521到YO 528,将传输扫描图案施加给CUT508中的全部扫描链 510 至Ij 517。
图5B给出了由图5A所示的传输器的实施例施加的输入限制。
图5A中的传输器501具有三个传输扫描输入X2 518到XO 520。这样,就有如表 531的<X2、X1、X0>下列出的用于传输扫描输入的8种输入组合。这些是对图5A中的组合逻辑网络502的全部可能的输入值组合。因此,作为组合逻辑网络的输出,这里有表531中列出的<Y7、Y6、Y5J4、Y3、Y2、Y1、Y0>下列出的8种值组合。这些是能图5A的扫描链510 到517的输入处出现的全部逻辑值组合,并且它们是ATPG处理的输入限制。
图5C给出了依照本发明图4中所示的传输器的第二实施例,其包括一个组合逻辑网络和扫描连接器。在该例中,通过传输器561将一个3比特虚拟扫描图案转换成一个8 比特传输扫描图案。
传输器561包括一个组合逻辑网络562和一个扫描连接器566,该组合逻辑网络包括一个反相器565、一个M)R门563和一个OR门564。通过传输扫描输入X2581到X0583 施加虚拟扫描图案。组合逻辑网络实施一个固定的构图功能,其将一个虚拟扫描图案转换成一个传输扫描图案。然后通过扫描连接器566,将传输扫描图案施加给所有的扫描链573 到580。扫描连接器包括一个缓冲器567、一个反相器570、一个锁定元件LE569和一个备用单元SC568。通常,利用扫描连接器中的缓冲器、反相器或锁定元件将两个扫描链连接成一个。此外,为了减小不同的扫描链之间的依赖性可将备用单元添加进存在的扫描链中,以改变它的长度,这将有助于改进错误覆盖。
图5D给出了由图5C所示的传输器的实施例施加的输入限制。
图5C中的传输器561具有三个传输扫描输入X2 581到XO 583。这样,就有如表 591中的<X2,X1,X0>下列出的用于传输扫描输入的8种输入组合。这些是图5C中的组合逻辑网络562的全部可能的输入值组合。因此,作出组合逻辑网络的输出,就有表591中的 <Y4,Υ3,Υ2,Yl, Υ0>下列出的8种值组合。这些是ATPG处理中的输入限制。
图6给出了依照本发明的传输器的结构图,其包括一个虚拟扫描控制器、一个组合逻辑网络和一个任意扫描连接器。
传输器601包括一个虚拟扫描控制器602、一个组合逻辑网络603和一个任选的扫描连接器604。通过两种类型的输入探针传输扫描输入608和虚拟扫描输入609施加虚拟扫描图案。传输扫描输入直接连接至组合逻辑网络,而虚拟扫描输入直接连接至虚拟扫描控制器。此外,虚拟扫描控制可以具有任意虚拟扫描输出613。
需要注意,虚拟扫描控制器602可以是比如解码器的组合电路,或者是比如移位寄存器的时序电路。尽管通过传输扫描输入608施加的逻辑值在每个时钟周期中会改变, 但通过虚拟扫描输入609施加的逻辑值在每个时钟周期中是可以或不可以改变的。施加虚拟扫描输入值的作用是改变和存储在虚拟扫描控制器中合适的设置值组合。通过601将该设置值组合施加给组合逻辑网络603,从而改变组合逻辑网络执行的构图功能。由于一个构图功能相应于用于ATPG的一组输入限制因此提供的改变构图功能的能力,将导致用于 ATPG的更加灵活输入限制。结果,由传输设置将被基本上减少错误覆盖误差。
通常,在测试过程中传输器601起到两个作用。一个作用是通过少量外部传输扫描输入探针608和虚拟扫描输入探针609为大量内部扫描链607提供测试图案。结果,可将电路中的全部扫描单元SC606构造成大量较短的扫描链。这将有助于减小测试数据量和测试实施时间。另一个作用是提高从组合逻辑网络603施加给全部扫描链的传输扫描图案的质量,从而获得较高的错误覆盖。这可通过改变装载进虚拟扫描控制器的值而获得。由于该灵活性,组合逻辑网络可以实现不同的构图功能,而不是固定的一种。
图7给出了依照本发明图6中所示的传输器的第一实施例,传输器701包括一个虚拟扫描控制器702和一个组合逻辑网络705。虚拟扫描控制器包括两个反相器703和 704,组合逻辑网络由8个M)R门706到713组成。在该例中,通过传输器将一个4比特虚拟扫描图案转换成一个8比特传输扫描图案。
明显地,虚拟扫描控制器702的输出730和731必须具有互补值。此外,虚拟扫描控制器的输出732和733也必须具有互补值。假设施加给两个传输扫描输入7 和729的值分别是Vl和V2。在这种情况下,在扫描链输入734至743处出现的值将分别是P1、 P1、 P2、 P2、V1、V2、P3、 P3、P4、 P4。在这里,Pl和 Pl是互补的,P2和 P2是互补的, P3和 P3是互补的,P4和 P4是互补的。此外,Pl和P2可以和Vl —样,也可以与Vl互补,同时,P3和P4可以和Vl —样,也可以与V2互补。这就是用于ATPG的输入限制。
图8给出了依照本发明在图6所示的传输器的第二实施例,传输器801包括一个虚拟扫描控制器802和一个组合逻辑网络804。虚拟扫描控制器包括一个2比4的解码器 803,组合逻辑网络由8个M)R门805到812组成。在该例中,通过传输器将一个4比特虚拟扫描图案转换成一个8比特传输扫描图案。
明显地,存在用于2到4个解码器803的输出8 到832的四种可能逻辑值组合。 它们是分别用于输出829到832的1000,0100,0010和0001。假设2到4个解码器的输出值组合是1000。也假设施加给两个传输扫描输入827和828的逻辑值分别是Vl和V2。在这种情况下,在扫描链输入833到842处出现的值将分别是 V1、V1、V1、V1、V1、V2、 V2、 V2、V2、V2。这里的Vl和 Vl是互补的,同时V2和 V2是互补的。这是用于ATPG的输入限制。明显地,通过改变虚拟扫描输入825和826的值,可以得到用于ATPG的不同组输入限制。这将有助于提高错误覆盖。
图9给出了依照本发明在图6所示的传输器的第三实施例。
传输器901包括一个虚拟扫描控制器902和一个组合逻辑网络911。虚拟扫描控制器包括一个具有存储器元件903到910的8级移位寄存器。这里有一个虚拟扫描输入 932,其是移位寄存器的输入。这里有一个任意虚拟扫描输出935,其是移位寄存器的输出。 任意地,可将虚拟扫描输入和虚拟扫描输出分别连接至边界扫描设计中的TDI和TD0。组合逻辑网络由8个M)R门912到919组成。这里有两个传输扫描输入933和934。通过输入 933施加的测试图案被传输至扫描链922到926 ;同时,通过输入934施加的测试图案被传输至扫描链927到931。
从传输扫描输入933和934分别直接装载扫描链拟6和927,同时分别通过XOR门 912到915以及916到919装载扫描链922到925以及扫描链928到931。如果存储器元件903的值是逻辑0,扫描链922就将得到与从传输扫描输入933施加的那些值相等的值。 如果存储器元件903的值是逻辑1,那么扫描链922就将得到与从传输扫描输入933施加的那些值互补的值。对扫描链923到925以及拟8到931施加相同的监测。这意味着通过对虚拟扫描控制器902中的移位寄存器施加一组合适的测定值,可能在任何移位周期中的扫描链922到931施加IOM种逻辑值组合中的任何一种值。结果,通过装载一组合适的测定逻辑值给移位寄存器和通过输入933和934施加传输扫描图案就可以检测到⑶T920中的任何可检测出的错误。
从ATPG的观点来看,其试图产生传输扫描图案以驱动全部扫描链,为了测试 CUT920,由虚拟扫描控制器902的移位寄存器中存储器元件的值决定的传输器结构代表输入限制。假定用于存储器元件903到910的值分别是0、1、0、1、0、1、0、1。在这种情况下,用于⑶T的ATPG将满足这样一种输入限制,即在任何移位周期,扫描链922、拟4和拟6具有相等的值V,扫描链923和925具有相等的值 V,其是V的互补,扫描链927、拟8和930具有相等的值P,扫描链9 和931具有相等的值 P,其是P的互补。
图10给出了依照本发明图6中所示的传输器的第四实施例。
传输器1001包括一个虚拟扫描控制器1002和一个组合逻辑网络1006。虚拟扫描控制器包括一个具有存储器元件1003到1005的3级移位寄存器。这里有一个虚拟扫描输入1023,其是移位寄存器的输入。这里有一个任意虚拟扫描输出1026,其是移位寄存器的输出。任意地,可将虚拟扫描输入和虚拟扫描输出分别连接至边界扫描设计中的TDI和 TDO0组合逻辑网络由4个M)R门1007到1010组成。这里有两个传输扫描输入IOM到 1025。通过输入IOM施加的测试图案被传输至扫描链1013至1017 ;通过输入1025施加的测试图案被传输至扫描链1018和1022。
图9中的传输器901与图10中的传输器1001之间的主要区别在于测试图案被直接传输给一些扫描链而没有通过传输器1001中的M)R门。取代经过传输器1001中的XOR 门直接传输测试图案至一些扫描链。直接驱动由传输扫描输入IOM的扫描链1013、1015 和1017。这意味着在任何移位周期中,扫描链1013、1015和1017将获得相等的值。此外, 直接驱动由传输扫描输入1025的扫描链1018、1020和1022。这意味着在任何移位周期中, 扫描链1018、1020和1022将具有相等的值。结果,通过施加一组合适的测定值给虚拟扫描控制器1002中的移位寄存器,其仅可能在任何移位周期施加64种逻辑值组合的任何一种给扫描链1013到1022。即在给扫描链的输入更强限制的代价下,传输器1001需要较小的硬件造价。
图11给出了依照本发明图6所示的传输器的第五实施例。
传输器1101包括一个虚拟扫描控制器1102和一个组合逻辑网络1106。虚拟扫描控制器包括一个具有存储器元件1103到1105的3级移位寄存器。这里有一个虚拟扫描输入1127,其是移位寄存器的输入。这里有一个任意虚拟扫描输出1130,其是移位寄存器的输出。任意地,可将虚拟扫描输入和虚拟扫描输出分别连接至边界扫描设计中的TDI和 TDO0组合逻辑网络由4个XOR门(1108、1109、1112、1114)、两个反相器(1107、1113)、一个 AND门(1110)和一个OR门(1111)组成。这里有两个传输扫描输入11 和11四。通过输入11 施加的测试图案被传输至扫描链1117至1121 ;通过输入11 施加的测试图案被传输至扫描链1122 M 1126.
传输器1101实现了从传输扫描输入11 和11 到扫描链1117到11 的输入之间的更加复杂的传输构图关系。由分别对应于扫描链1117到11 的输入的<VB,VC,V, VC, V*P,V+P,PCI, PB, PC2,P>代表构图关系的通常形式。在这里,V和P是在任何移位周期中分别从传输扫描输入11 和11 施加的两个逻辑值。VB和PB分别是V和P的互补。 如果存储器元件1103的输出值是逻辑0或1,VC分别等于V或VB。如果存储器元件1104 的输出值是逻辑0或1,PC1分别等于P或PB。如果存储器元件1105的输出值是逻辑0或 1,PC2分别等于P或PB。明显地,通过装载不同组的逻辑值进入虚拟扫描控制器1102中的移位寄存器,改变VC、PCl和PC2,从而可以改变传输构图关系。结果,可对CUTl 115施加交互依赖较少的测试激励,从而可以达到较高的错误覆盖。
从ATPG的观点来看,其为了测试⑶T1115,试图产生传输扫描图案以驱动所有扫描链1117到1126,由虚拟扫描控制器1102的移位寄存器中存储器元件的值决定的传输器结构代表输入限制。其通常形式是<VB,VC,V,VC,V&P,V+P,PC1,PB,PC2,P>。如果在测定存储器元件的值之后转换初始顺序的CUT1115至反映限制的组合电路模型,可以实施该限制的ATPG。
图12给出了依照本发明图6所示的传输器的第六实施例。
传输器1201包括一个虚拟扫描控制器1202、一个组合逻辑网络1203和扫描连接器1207。组合逻辑网络除了包括一个OR门1205之外还包括两个反相器1204和1206。通过传输扫描输入12 和1227以及一个虚拟扫描输入TDI 1224施加虚拟扫描图案。将来自虚拟扫描控制器的一个输出X212^施加给组合逻辑网络,使其能够执行不同的构图功能。然后通过扫描连接器1207然后施加来自于组合逻辑网络的输出值1232到1236给全部扫描链1215到1223。该扫描连接器由一个缓冲器1209 —个反相器1212、一个锁定元件 LE1211、一个备用单元SC1210和一个多路转换器1208组成。通常,通过利用扫描连接器中的缓冲器、反相器或锁定元件可将两个扫描链连接成一体。此外,可将备用单元添加进入存在的扫描链以减少不同扫描链之间的依赖性。这将有助于改进错误覆盖。进一步地,多路转换器可用于将扫描链分离成两部分。如图12所示,如果多路转换器1208的选择信号12 是逻辑1,扫描链1215和1216就将得到不同的输入值流。可是,如果多路转换器1208的选择信号12 是逻辑0,就可将扫描链1215和1216看作成一个扫描链,并且仅有一个输入值流经过它们。明显地,扫描连接器可用于调节CUT中扫描链的长度,从而缩短测试时间或改进错误覆盖。
图13给出了依照本发明的压实工具的结构图,其包括一个掩码网络和一个XOR网络或一个MISR。
响应于施加在⑶T的输入1307上的传输扫描图案⑶T输出1308上的测试响应通过压实工具1304,该压实工具1304包括一个掩码网络1305和一个M)R网络或MISR1306。 MC1311是用于控制掩码网络的信号,其可由ATE施加或由虚拟扫描控制器产生。掩码网络用于遮蔽一些至XOR网络或MISR的输入。这在错误诊断中是有用的。XOR网络用于实施空间压实,也就是减少离开电路的测试响应线的数量。另一方面,MISR用于在区域和时域中压实测试响应。也就是在利用MISR时,不需一个周期接一个周期的检查测试结果。相反, 仅需要比较在整个测试时间结束时获得的信号。可是需要指出,不允许未知值(X’ s)进入 MISR。这意味着将应该遵守允许更严格的设计原则。
图14给出了依照本发明在图13所示的压实工具的第一实施例。
输出1441到1448上的测试响应经过掩码网络1412,然后经过M)R网络1422。掩码网络包括两组AND门1414到1417以及1418到1421,通过由修正的2比4的解码器1413 产生的四个输出控制每一组门。在该诊断模式中,其中模式信号1449是逻辑1时,该解码器构图MC11^9和MC21430上的逻辑值至下述组合中的一个1000,0100,0010和0001。很明显,在这些逻辑组合的任一种下任何一组AND门都将仅允许一个测试响应流到达1431或 1432。明显地,这将有助于错误诊断。在该测试模式中,其中模式信号1449是逻辑0时, 该解码器将产生一个全部为1的逻辑组合,这将允许全部的测试响应流到达1431或1432。 XOR网络1422包括两组4比1的XOR次网络,该4比1的XOR次网络分别包括M)R门1423 到 1425 以及 1426 到 1428。
图15给出了依照本发明图13所示的压实工具的第二实施例。
输出1540到1547上的测试响应经过掩码网络1512,然后经过MISR1525。掩码网络包括两组AND门1517到1520以及1521到15M,通过由存储器元件1513到1516构成的移位寄存器的四个输出控制每一组门。在该诊断模式中,该移位寄存器可从上装载下述组合中的一个1000,0100,0010和0001。很明显,在这些逻辑组合的任一组下任何一组AND门都将仅允许一个测试响应流到达MISR。明显地,这将有助于错误诊断。在该测试模式中,将全部为1的逻辑组合装载进入移位寄存器。这将允许全部的测试响应流到达 MISR。可从TDO 15 移出在测试时间结束时MISR的内容以与预期的信号进行比较。
图16A给出了依照本发明的在重新排序扫描单元或改变扫描链长度之前用于产生测试更多错误的传输扫描图案的方法的实施例。传输器1601具有一个传输扫描输入 1614、该传输扫描输入传输逻辑值给三个扫描链1606、1608和1611。
由于逻辑值通过适当装载虚拟扫描控制器1602中的移位寄存器,并通过M)R门 1604施加给扫描链1611,就可能在任何移位周期施加不同于通过扫描链1606和1608施加的值的任何逻辑值。而在任何周期可将相同的逻辑值装载进入扫描链1606和1608。结果, 扫描单元A3 1607和B3 1610在任何传输测试图案中将具有相同的逻辑值。由于来自于扫描单A31607和B31610的输出连接至相同的组合逻辑块1612,因此就可能由于测试图案依赖性强而不能检测到组合逻辑块中的一些错误。例如,为了检测组合逻辑块中的一些错误, 就可能必须具有逻辑0作为扫描单元A31607的输出以及逻辑1作为扫描单元B31610的输出。明显地,这将不能检测到这些错误。
图16B给出了依照本发明的在用于产生测试更多的错误的传输扫描图案重新排序扫描链之后依照本发明的方法实施例。传输器1601具有一个传输扫描输入1614,该传输扫描输入传输逻辑值给三个扫描链1606、1608和1611。
图16A和图16B之间仅有的不同是在扫描链1608中,扫描单元B21609和B31610 的次序是改变的。现在,尽管扫描单元A31607和B21609的输出在任何移位周期中具有相同的逻辑值,但是扫描单元A31607和B31610的输出也可以具有不同的逻辑值。结果,这就有可能检测到一些以图16A所示的扫描次序检测不到的错误。
图16C给出了依照本发明在用于产生测试更多的错误的传输扫描图案改变扫描链长度之后的方法实施例。传输器1601具有一个传输扫描输入1614,该传输扫描输入传输逻辑值给三个扫描链1606、1608和1611。
图16A和图16C之间仅有的不同是通过一个多路转换器1618将一个备用扫描单元B01617添加给扫描链1608。明显地,如果选择信号1619是逻辑1,就将备用扫描单元添加给扫描链1608。结果,尽管扫描单元A31607和B21609的输出在任何移位周期中具有相同的逻辑值,但扫描单元A31607和B31610的输出也可以具有不同的逻辑值。结果,这就有可能检测到一些以图16A所示的扫描次序检测不到的错误。
图17给出了依照本发明用于错误覆盖提高的重新排序扫描单元的方法流程图。 该方法1700接受用户提供的HDL编码1701以及选择出的铸造库1702。HDL编码代表由图 2所示的传输器、完全扫描CUT和压实工具构成的时序电路。然后将HDL编码和库施加进入一个内部时序电路模型1704,然后该模型转变成一个组合电路模型1706。此后,基于原始扫描次序信息1709和扫描次序限制1710,实施输入尖峰分析1707以识别次序需要改变的扫描单元。然后实施扫描链重新排序。在这之后,产生HDL测试工作台和测试程序1711,同时将全部报告和错误保存进1712。
图18给出了依照本发明用于产生用在测试基于扫描的集成电路中的传输扫描图案的方法流程图。该方法1800接受用户提供的HDL编码1801和选择出的铸造库1802。 HDL编码代表由在图2中给出的传输器、完全扫描DUT和压实工具构成的时序电路。然后将 HDL编码和库施加进入内部时序电路模型1804,然后将其传输进入组合电路模型1806。此后,基于输入限制1810,执行组合错误模拟1807,如果需要,其可用于从错误列表中移出多个随机图案和全部检测错误。在这之后,执行组合ATPG1808以产生从错误列表中移出的虚拟扫描图案和全部检测错误。如果适合预定的限制标准,比如预先选择出的错误覆盖目标, 产生HDL测试工作台和测试程序1811,同时将全部报告和错误保存进数据传送外存储器 1812。如果不适合预定的限制标准,将使用新的输入限制1810。例如可将一组新值装载进入虚拟扫描控制器以规定新的输入限制,在这之后,实施可选择的随机图案错误模拟1807 和ATPG1808。持续这种反复直至适合预定的限制标准。
图19给出了依照本发明用于合成传输器和压实工具以测试基于扫描的集成电路的方法流程图。该方法1900接受用户提供的HDL编码1901和选择出的铸造库1902。HDL 编码代表由在图2中给出的传输器、完全扫描DUT和压实工具构成的时序电路。然后将HDL 编码和库施加进入内部时序电路模型1904,此后,基于传输限制1908和压实限制1909,分别实施传输合成1905和压实合成1906。在这之后,基于缝合限制1910、实施缝合1907以将传输器和压实工具集成到原始电路。最后产生合成HDL编码1911,并将全部报告和错误保存进数据传送外存储器1912。
图20给出了依照本发明在传输扫描测试方法中使用的系统举例。该系统2000包括处理器2002,该处理器和存储器2001 —起工作以运转一组传输扫描测试设计软件。处理器2002可以代表个人计算机、工作站、主机计算机或其它合适的数字处理装置的中央处理单元。该存储器2001可以是电子存储器或磁或任意以磁盘为基础的存储器或各种它们的组合。设计者通过处理器2002结合传输扫描测试设计软件以通过输入装置2003提供合适的输入,输入装置2003可以是键盘、磁盘装置或其它合适的设计信息源。通过输出装置 2004处理器2002对设计者提供输出,输出装置2004可以是显示器、打印机、磁盘驱动器或这些或其它元件的各种组合。
具有了目前给出的本发明的优选实施例,现在已经可以完全获得本发明的目标。 本发明的熟练技术人员可以理解在构造&电路中可有许多改变,而且只要不脱离本发明的精神和范围可以提出本发明的广泛的不同实施例&和应用。在这里的揭示和描述仅是描述性的,其不会限制本发明,通过下面的权利要求优选限定本发明的范围。
权利要求
1.一种合成传输器和压实工具以测试基于扫描的集成电路的方法,所述基于扫描的集成电路包含多路扫描链,每个扫描链包括连续连接的多个扫描单元,扫描链输入连接至传输器并且扫描链输出连接至压实工具,所述方法包括步骤a)将RTL级或者门级模拟的代表所述基于扫描的集成电路的HDL编码编译到时序电路模型中;b)建立对于所述传输器、所述压实工具、以及进行缝合的限制;c)依照规定于所述传输器之上的所述限制合成所述传输器;d)依照规定于所述压实工具之上的所述限制合成所述压实工具;e)依照规定用于缝合的所述限制在所述时序电路模型之上缝合所述传输器和所述压实工具;以及f)产生在RTL或门级水平上模拟的合成HDL编码。
2.权利要求1的方法,其中所述传输器进一步包括从选择出的扫描链移出选择出的扫描单元,并依照规定于所述传输器之上的所述限制重新缝合所述选择出的扫描链中的所述选择出的扫描单元。
3.权利要求1的方法,其中所述传输器是单纯的组合逻辑网络,该组合逻辑网络包括一个或多个逻辑门,该逻辑门包括AND门、OR门、NAND门、NOR门、M)R门、XNOR门、多路转换器、缓冲器、转换器或上面结构的任意组合。
4.权利要求3的方法,其中所述传输器进一步包括使用多个扫描连接器将所述组合逻辑网络的输出连接至在所述基于扫描的集成电路中的选择出的扫描链输入,其中所述多个扫描连接器包括一个或多个缓冲器、反相器、锁定元件,每个锁定元件包括比如D触发器或 D锁存器的反相器和存储器元件、备用扫描单元、多路转换器或上面结构的任一组合。
5.权利要求3的方法,其中所述传输器进一步包括利用虚拟扫描控制器控制所述组合逻辑网络,其中在每个移位周期过程中或在测试期间所述虚拟扫描控制器控制所述传输器的操作。
6.权利要求5的方法,其中所述虚拟扫描控制器进一步包括一个或多个缓冲器或反相ο
7.权利要求5的方法,其中所述虚拟扫描控制器是解码器。
8.权利要求5的方法,其中所述虚拟扫描控制器是包括比如D触发器或D锁存器的一个或多个存储器元件的有限状态机器,其中在测试开始之前对所述有限状态机器装载预定状态。
9.权利要求8的方法,其中所述虚拟扫描控制器是移位寄存器。
10.权利要求1的方法,其中将所述传输器有选择地设置于所述基于扫描的集成电路内部、所述ATE内部,或设置在所述ATE和所述基于扫描的集成电路之间。
11.权利要求1的方法,其中所述压实工具是可选择的M)R网络或多路输入签名寄存器MISR,其中所述多路输入签名寄存器MISR进一步包括多个M)R门和多个存储器元件,比如D触发器或D锁存器。
12.权利要求1的方法,其中所述压实工具进一步包括使用掩码网络允许或禁止测试或诊断选择出的扫描链中的选择出的扫描单元,其中所述掩码网络包括一个或多个AND 门。
13.权利要求1的方法,其中将所述压实工具有选择的设置于所述基于扫描的集成电路内部、所述ATE内部,或设置在所述ATE和所述基于扫描的集成电路之间。
全文摘要
本发明公开了合成传输器和压实工具以测试基于扫描的集成电路的方法,包括用于减少基于扫描集成电路中的ATE(自动测试设备)(202)的测试数据量和测试实施时间。基于扫描集成电路包含多路扫描链、每个扫描链包括连续连接的多个扫描单元。传输器(208)是连接至任意虚拟扫描控制器和任意扫描连接器的组合逻辑网络。虚拟扫描控制器控制传输器的操作。该系统传输存储进ATE(202)中的虚拟扫描图案并通过传输器产生传输扫描图案(219)以用于测试基于集成电路中的测试制造错误。该方法进一步用于重新排序在选择出的扫描链中的扫描单元,以产生传输扫描图案和虚拟扫描图案,并合成在基于扫描集成电路中的传输器和压实工具。
文档编号G01R31/3185GK102495362SQ201110377919
公开日2012年6月13日 申请日期2003年1月16日 优先权日2002年1月16日
发明者K·S·埃布德尔-哈非茨, 叶大嘉, 林仕鸿, 林孟祺, 温晓青, 王信博, 王荣腾, 蔡森炜 申请人:美国华腾科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1