CN201867811U - 数据处理设备 - Google Patents
数据处理设备 Download PDFInfo
- Publication number
- CN201867811U CN201867811U CN2009201780429U CN200920178042U CN201867811U CN 201867811 U CN201867811 U CN 201867811U CN 2009201780429 U CN2009201780429 U CN 2009201780429U CN 200920178042 U CN200920178042 U CN 200920178042U CN 201867811 U CN201867811 U CN 201867811U
- Authority
- CN
- China
- Prior art keywords
- output
- scan chain
- registers
- group
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318544—Scanning methods, algorithms and patterns
- G01R31/318547—Data generators or compressors
Abstract
本实用新型公开了一种数据处理设备,其包括:集成电路,该集成电路包括压缩测试响应数据的电路系统,该测试响应数据来自受测集成电路中的扫描链,该电路系统包括:第一逻辑门集合,其连接到所述扫描链;多个输出寄存器,其经由第一逻辑门集合,从所述扫描链接收该测试响应数据,所述多个输出寄存器包括利用存储在所述输出寄存器中的数据来处理测试响应数据的第二逻辑门集合和依序元件。
Description
相关申请的交叉引用
本申请是提交于2008年9月22日、美国申请No.12/235,341的部分延续,该美国申请要求对提交于2007年9月21日的美国临时申请No.60/974,388的优先权。以上特别列举的全部申请通过引用将其并入此处。
本申请要求对提交于2008年4月25日的、美国临时申请No.61/048,107的优先权。以上特别列举的全部申请通过引用将其并入此处。
技术领域
本技术涉及集成电路产业中的电子设计自动化。各种实施例涉及集成电路的测试和诊断,并且更具体地,涉及在测试数据量中使用的测试响应压缩,和用于缩减集成电路的测试应用时间。
背景技术
在半导体产业中使用电子设计自动化EDA来虚拟地进行全部设备设计项目。在形成了产品构思后,使用EDA工具来定义特定实施方式。使用EDA工具定义的实施方式来创建掩模数据,该掩模数据用于在已完成的芯片的制造过程中用于光刻的掩模制造,该过程称为流片(tape out)。随后创建了掩模,并且与制造设备一同使用来制造集成电路晶片。测试是要求的步骤用来检测有缺陷的晶片。接下来,应用诊断来确认系统缺陷的根本原因,该系统缺陷用于掩模校正,从而提高产出。最后,将晶片切割、封装和组装从而提供用于分销的集成电路芯片。
使用EDA工具设计的示例过程开始于使用体系结构定义工具的整体系统设计,其描述了使用集成电路要实现的产品的功能。接下来,基于例如Verilog或者VHDL的描述语言使用逻辑设计工具来创建高级描述,并且在迭代过程中使用功能验证工具,来确保高级描述实现了设计目标。接下来,使用合成和测试设计工具将高级描述翻译为网表,针对目标技术而优化网表,以及设计和实现测试,以允许对照网表检查已完成的芯片。
典型的设计流程可能接下来包括设计计划阶段,其中构造和分析用于芯片的整体平面图,从而确保可以在高级别实现用于网表的时间参数。接下来,可以严格地检查网表,以满足时间约束以及使用VHDL或者Verilog在高级别定义的功能定义。在为了实现最终设计而决定网表和将网表映射到单元库的迭代过程后,为定位和路由使用物理实现工具。执行定位的工具将电路元件定位在布局上,执行路由的工具为电路元件定义交差点。
随后通常使用提取工具对经过定位和路由之后定义的组件进行晶体管级的分析,并进行验证,从而确保实现了电路功能并且满足了时间约束。可以以迭代的方式在需要的时候再次访问定位和路由过程。接下来,对设计进行物理验证过程,例如设计规则检查DRC,布局规则检查LRC和布局对照原理LVS检查,上述检查分析可制造性、电气性能、光刻参数和电路正确性。
借助从设计到验证过程的迭代完成了可接受的设计后,如同前面所描述的那些,对设计的结果可以进行分辨率提高技术,该技术提供了布局的几何处理以便改进可制造性。最终,准备好掩模数据并且对其进行流片以便在制造成品中使用。
借助EDA工具进行的该设计过程包括允许成品接受测试的电路。对集成电路的有效测试经常使用用于可测试性(DFT)技术的结构化设计。特别地,这些技术是基于让全部或者一些状态变量(类似电路中的触发器和锁存器的存储器元件)为直接可控或可观察的整体概念。最经常使用的DFT方法是基于扫描链。该过程假设,在测试中,全部(或者几乎全部)存储器元件被连接到一个或多个移 位寄存器。结果是,设计出的逻辑电路具有两个或多个操作模式:普通模式和测试模式或者扫描模式。在普通模式下,存储器元件执行它们的常规功能。在扫描模式下,存储器元件变成扫描单元,其连接形成多个移位寄存器,被称为扫描链。这些扫描链用于将测试激励移送到受测电路(CUT),并且移送出测试响应。应用在测试激励中由扫描组成的测试图案,应用一个或多个功能时钟,并且随后扫描出捕获的测试响应。随后将测试响应与无错测试响应进行对比从而确定CUT工作是否正常。
扫描设计方法已经被广泛应用以便简化测试和诊断。从自动测试图案产生(ATPG)的角度看,扫描电路可以被作为组合或部分组合的电路。目前,ATPG软件工具可以基于不同的故障模型产生完整的测试图案组,该模型包括固定逻辑(stuck-at)、过渡、路径延迟和桥接故障。通常,当ATPG工具标定了电路中的特定潜在故障时,只需要精确确定少量的扫描单元,并且仅需要观察单个的扫描单元以便探测该特定故障。剩余的扫描单元通常填满了随机数值,这样,测试图案被完全精确地确定并且可以探测一些其它的未标定故障。
为了探测每个测试图案的标定故障的一些组,尽管只需要观察少量扫描单元,然而全部扫描链的整体可观察性对于测试和诊断来说都是很有益处的属性,以便实现对未建模缺陷的高度测试覆盖性,以及诊断中缺陷定位的高精度和准确性。
测试图案和扫描链的数量由下述因素限制,例如可用芯片I/O,可用测试器通道和存储器,以及片上路由拥塞。由于集成电路的复杂性和密度不断增长,降低测试数据数量和测试应用时间已经变成了提高质量和降低测试开销的关键因素。通过在扫描链的输入端使用解压缩器电路和在扫描链的输出端使用压缩器电路,可以缓和这些测试限制。一些用于测试数据数量和测试应用时间缩减的DFT技术使用基于编码理论的压缩器设计,来压缩来自扫描链的测试响应。例如,利用异或(XOR)或者同或(XNOR)门构建线性压缩器,从而减少集成电路的测试输出的数量。但是压缩器也可以掩蔽来自集 成电路的测试响应中的错误。例如,XOR(奇偶校验)树的基本特性是在其输入端的奇数个错误的任意组合将传递到它们的输出端,而偶数个错误的任意组合则不能被探测到。
因此,压缩器设计必须满足下面的要求:(1)容易定义和实现,(2)低硬件开销,对集成电路的影响小,(3)对数压缩率,以及(4)用于错误检测和识别的简单且可靠的机制。但是满足所有这些要求很困难。尤其是,需要确保来自有故障和无故障电路的压缩后的测试响应是不同的。该现象已知为错误掩蔽或者混淆。当多个错误存在于来自有故障的CUT中的扫描链时,就会出现错误掩蔽的一个示例。多个错误可以彼此掩蔽,导致压缩的测试响应或者指示与用于无故障电路的指示相同。
未知数值也增加了错误检测和识别中的复杂性。例如,在XOR树的一个或多个输入端上的未知数值在它的输出端产生未知数值,并且因此掩蔽了在其它输入端上的错误的传递。该现象被称作X-掩蔽效应(X-masking effect)。
因此当在测试响应中存在未知数值和/或多个错误时,有效的压缩器应当产生故障指示,并且为了诊断的目的允许对测试响应中的多个错误进行有效和可靠的识别。
实用新型内容
全扫描是广泛使用的用于测试的设计技术,该技术允许为集成电路的测试和诊断两者产生高质量的测试图案。但是由于设计中的扫描触发器的数量不断增加以及缺陷行为的复杂性,扫描测试的开销变得需要被抑制。由于可用测试针脚和测试通道数量是有限的,输入和输出侧可用的带宽受限的事实也混合于前述问题中。并行地加载/卸除多个扫描链的片上压缩器/解压器电路已经解决了增加的测试数据数量和测试应用时间的问题。
大部分输出压缩架构类似线性反馈移位寄存器(LFSR)、多输入移位寄存器(MISR),循环路径和压缩器具有良好的错误掩蔽属 性。但是,这些架构的绝大部分对于压缩具有未知数值(或者X)的测试响应方面存在困难。这些架构中的绝大部分也不允许压缩模式下的有效诊断。
所提出的用于合成新类型压缩器的方法和装置,此处被称为增强型多模式压缩器,它能够在出现大量未知数值时,获得压缩率、可观察性、控制数据数量和诊断属性之间的灵活折衷。增强型多模式压缩器的不同特征是降低和/或完全避免压缩测试响应中的X-掩蔽效应。此外,对构建压缩器的要求是测试响应中的任何单个错误产生S个连续移位循环中的唯一错误指示,该唯一错误指示被计算为故障指示与无故障指示之间的差值。压缩器的范围确定了最大数量的测试响应数据,这样任何单个错误将产生唯一的错误指示。因此,对于组合压缩器S=1,对于依序压缩器(sequential compactor)S>1。结果是,压缩器范围中的任何双位错误和/或任何奇数个错误将产生故障指示。构建依序压缩器的挑战在于,1)最大化压缩器范围;2)减少用于偶数(4个或者多个)个错误的错误掩蔽效应;3)减少或者完全避免为压缩而选择的扫描链中的未知数值,同时最大化可观察性,并且最小化控制数据数量,以及4)允许压缩模式下的有效诊断。
根据本实用新型的一方面,提供一种数据处理设备,其可以包括:集成电路,该集成电路包括压缩测试响应数据的电路系统,该测试响应数据来自受测集成电路中的扫描链。该电路系统包括:第一逻辑门集合,其连接到所述扫描链;多个输出寄存器,其经由第一逻辑门集合,从所述扫描链接收该测试响应数据,所述多个输出寄存器包括利用存储在所述输出寄存器中的数据来处理测试响应数据的第二逻辑门集合和依序元件,(i)其中扫描链连接到所述多个输出寄存器的每个寄存器中的至少一个依序元件上,并且(ii)其中所述扫描链的簇连接到所述多个输出寄存器的输出寄存器上,使得该簇是包括至少两个扫描链的扫描链的子集,并且使得对于包括来自所述多个输出寄存器中的三个寄存器的输出寄存器三元组而言, 所述输出寄存器三元组至少包括第一对输出寄存器对和第二对输出寄存器对,第一对和第二对具有至少一个不同的输出寄存器对,并且其中在第一对的输出寄存器对之间共享扫描链的第一共用簇,并且在第二对的输出寄存器对之间共享扫描链的第二共用簇。
在一个实施例中,在所述多个输出寄存器的寄存器之间共享至少一个扫描链的簇,使得所述多个输出寄存器的第一寄存器的依序元件与所述多个输出寄存器的第二寄存器的依序元件共享一个簇。
在一个实施例中,在连接到所述第一多个输出寄存器的不同寄存器的依序元件上的扫描链之间共享最多一个扫描链。
在一个实施例中,所述多个输出寄存器的寄存器具有依序元件的长度,并且所述多个输出寄存器的至少两个寄存器的长度具有不等于1的最大公约数。
在一个实施例中,该多个输出寄存器的至少一个寄存器具有最多一个反馈回路。
在一个实施例中,该多个输出寄存器的至少两个寄存器彼此串联。
在一个实施例中,该多个输出寄存器的至少两个寄存器彼此串联,并且该多个输出寄存器的所述至少两个寄存器至少具有一个反馈回路。
根据本实用新型的另一方面,提供一种数据处理设备,其可以包括:压缩装置,被配置为压缩来自集成电路和多个输出寄存器的测试响应数据,该测试响应数据包括多个位;映射装置,被配置为将所述多个输出寄存器的输出寄存器的依序元件映射到该测试响应数据的对应位集合,使得该测试响应数据的位属于所述多个输出寄存器的输出寄存器的依序元件的至少一个对应集合,其中满足以下至少一个条件:(i)扫描链组被连接到所述多个输出寄存器的输出寄存器上,使得该组是包含至少两个扫描链的扫描链的子集,并且使得扫描链组的同一组被连接到所述多个输出寄存器的不同输出寄存器的依序元件上;以及(ii)扫描链的簇被连接到所述多个输出寄 存器的输出寄存器上,使得该簇是包括至少两个扫描链的扫描链的子集,并且这样对于包括来自多个输出寄存器中的三个输出寄存器的输出寄存器三元组而言,输出寄存器三元组包括至少第一对输出寄存器对和第二对输出寄存器对,该第一对和第二对具有至少一个不同的输出寄存器对,并且其中在该第一对的输出寄存器对之间共享扫描链的第一共用簇,并且在该第二对的输出寄存器对之间共享扫描链的第二共用簇。
在一个实施例中,在依序元件集合的对应位集合之间共享最多一个位,该依序元件集合包括来自所述多个输出寄存器的输出寄存器的至少一个依序元件。
在一个实施例中,所述多个输出寄存器的依序元件中的错误状态是对应位集合中的下述条件的指示:(1)至少一个未知位,和(2)奇数个错误位,以及该多个输出寄存器的一个寄存器的依序元件中,错误状态的最大数量是对测试响应数据中的位错误的数量的估计。
在一个实施例中,该测试响应数据中的两个错误位产生了错误指示,该设备还包括:分析装置,被配置为分析错误指示从而计算解释错误指示的错误位集合的列表;错误位映射装置,被配置为将错误位集合映射到集成电路中失败的扫描单元的列表;以及获取装置,被配置为基于失败的扫描单元的列表,获得用于诊断的故障候选的初始列表。
在一个实施例中,该设备还包括:第一计算装置,被配置为通过在该集成电路中注入第一故障,为测试图案集合计算错误指示,第一分析装置,被配置为分析错误指示从而计算解释错误指示的错误位集合的列表,以及第一确定装置,被配置为基于解释了第一故障的错误指示的错误位集合的数量,确定是否将错误指示以及指向第一故障的指针存储到故障字典中。
在一个实施例中,该设备还包括:第二计算装置,被配置为通过在该集成电路中注入第二故障,来计算用于测试图案集合的错误指示,其中第一故障和第二故障在同一扇出自由区域;第二分析装 置,被配置为分析错误指示从而计算解释错误指示的错误位集合的列表;量化装置,被配置为量化解释了该第一故障和第二故障的错误指示的错误位集合,以及第二确定装置,被配置为基于解释了该第一故障和第二故障的错误指示的错误位集合的数量,来确定是否将错误指示以及指向同一扇出自由区域的指针存储到故障字典中。
在一个实施例中,该设备还包括:获取装置,被配置为基于故障字典,在压缩模式下获取用于诊断的故障候选的初始列表。
根据本实用新型的另一方面,提供一种数据处理设备,其可以包括:合成装置,被配置为通过至少在组、簇和多个分区之间分割多个扫描链来合成集成电路的压缩器电路,以压缩从受测集成电路的多个扫描链中卸载的测试响应数据,使得对于多个分区的每个分区而言,多个扫描链的扫描链属于至少一个组;以及连接装置,被配置为经由逻辑门将扫描链组连接到多个输出寄存器,使得满足至少一个下述条件:(i)该扫描链组的组被连接到所述多个输出寄存器的不同输出寄存器的依序元件上,使得该组是包括至少两个扫描链的扫描链的子集;并且(ii)扫描链的簇被连接到所述多个输出寄存器的输出寄存器上,使得簇是包括至少两个扫描链的扫描链的子集,并且这样对于包括来自多个输出寄存器中的三个输出寄存器的输出寄存器三元组而言,输出寄存器三元组包括至少第一对输出寄存器对和第二对输出寄存器对,该第一对和第二对具有至少一个不同的输出寄存器对,并且其中在该第一对的输出寄存器对之间共享扫描链的第一共用簇,并且在该第二对的输出寄存器对之间共享扫描链的第二共用簇。
在一个实施例中,所述多个输出寄存器的寄存器具有依序元件的长度,并且至少一对输出寄存器的长度具有不等于1的最大公约数。
在一个实施例中,在该组之间共享簇中的至少一个簇,这样所述多个分区的第一分区的第一组与所述多个分区的第二分区的第二组共享一个共用簇。
在一个实施例中,该设备还包括:应用装置,被配置为向该压缩器电路应用至少一个下述配置:(i)该多个输出寄存器的至少一个输出寄存器具有最多一个反馈回路,(ii)该多个输出寄存器的至少两个寄存器彼此串联,并且(iii)该多个输出寄存器的至少两个寄存器是:(a)彼此串联以及(b)具有至少一个反馈回路。
在一个实施例中,该设备还包括:分配装置,被配置用来为该多个扫描链的每个扫描链分配唯一的至少包括(x,y)的2元组,以及获取装置,被配置为使用至少下述公式从多个分区中获取分区:{x,y,(x+y)mod N},其中(i)每个公式指定定义了所述多个分区中的一个分区的多达N个组,这样使得对于至少包括(x,y)的每个扫描链,x、y都是0到N-1范围内的整数,所述每个公式的数值为所述多个分区的分区定义指定了用于所述每个扫描链的多组中的一组,并且(ii)在所述多个分区的组之间共享簇的共用簇,这样使得所述多个分区的第一分区的每个组与所述多个分区的第二分区的每个组共享共用簇。
在一个实施例中,该设备还包括:注入装置,被配置为在测试响应数据中注入多个错误位,从而对压缩器电路识别注入的多个错误的能力进行量化,以及能力改善装置,被配置为改善压缩器电路识别注入的多个错误的能力。能力改善装置包括:第一增加装置,被配置为增加所述多个分区的分区数量,第二增加装置,被配置为增加所述多个分区中至少一个分区的组的数量,第三增加装置,被配置为增加该多个输出寄存器的至少一个输出寄存器的依序元件的数量,以及改变装置,被配置为改变(a)和(b)之间的映射的装置,其中(a)为多个分区的一个分区中的扫描链组,(b)为多个输出寄存器的一个输出寄存器中的依序元件。
此处公开的技术的各方面至少可以应用为装置、方法和计算机可读介质。
附图说明
图1是带有增强型多模式压缩器(AMC)的集成电路的框图;
图2是使用两个输出映射的AMC(3,3,1,2)的功能说明;
图4是使用单个输出映射的AMC(3,3,1,2)的功能说明;
图5示出了用于AMC(4,4,1,2)的合成过程;
图6示出了用于AMC(4,4,2,3)的合成过程;
图7示出了用于AMC(4,6,3,0)的合成过程;
图8是有限AMC(3,4,2,2)的框图;
图9是无限AMC(4,4,2,3)的框图;
图10是无限AMC(4,4,2,3)情况2的输出寄存器的框图;
图11是无限AMC(4,4,2,3)情况3的输出寄存器的框图;
图12是无限AMC(4,4,2,3)情况4的输出寄存器的框图;
图13是延伸的模式集合的表格;
图14示出了用于控制块的命令结构;
图15是执行电子设计自动化的数据处理系统的简化框图;
图16是显示出例2中的AMC(N,3,1,2)相对于等价完全X-容忍组合压缩器在可观察性方面的改进的图表;
图17是显示出例5中使用了多达7个相互正交的分区构建的空间压缩器相对于基于Steiner三阶系统S(2,3,M)而构建的空间压缩器的相对硬件开销的图表;
图18是例6中的AMC(N,4,2,T)空间压缩器相对于基于Steiner三阶系统S(2,3,M)而构建的空间压缩器的压缩率(输入端数量除以空间压缩器的输出端数量)的图表,其中O是AMC输出端数量,N0N1N2和M是AMC及可选择的空间压缩器的输入端数量,N0=O/4,N1=(O+1)/4,N2=(O+2)/4;
图19是示出当K=4时,例7中的有限AMC(N,4,2,3)相对于模压缩器,在范围上的改进的图表;。
图20是示出当N={3,4...,13}时,例7中的无限AMC(N,4,2,3) 仿真结果的图表;
图21是示出当N={3,4...,13}时,例10中的无限AMC(N,4,2,3)仿真结果的图表。
图22是示出当N={3,4...,13}时,解释了例10中的无限AMC(N,4,2,3)的双位错误的失败扫描单元对的分布的图表。
图23是根据本实用新型的一个实施例的数据处理设备的示意框图。
图24是根据本实用新型的一个实施例的数据处理设备的示意框图。
具体实施方式
图1中给出了具有片上(on-chip)测试功能的集成电路的框图。因此,测试器连接到带有CUT、解压器以及AMC的集成电路,其中AMC充当CUT的测试响应的输出压缩器。CUT具有带有一个或多个扫描单元的W扫描链,所述一个或多个扫描单元通过输入选择器连接到空间压缩器。AMC具有输入选择器、空间压缩器和(优选地)一个或多个输出寄存器。输入选择器和空间压缩器是组合块(包括AND,NAND,OR,NOR,XOR和/或NXOR),并且通过一个控制模块连接到解压器或/和测试器输出。输出寄存器是依序块(包括AND,NAND,OR,NOR,XOR,NXOR门和触发器),并且通过控制块(在图1中未示出)连接到解压器或/和测试器输出。
下面的示例是特定的非限制性的示例,说明了增强型多模压缩器(augmented multimode compactor)合成的各种特征。在所呈现技术的一个实施例中可能只说明了在单独一个示例中的特征的子集。该技术的一个实施例可以包括来自多个示例的特征。
例1
图2示出了具有27个扫描链的CUT的组合AMC的功能说明。因此,扫描链可以被视为3维阵列{r×c×b},并且将三元组(x,y,z)分配给在第x行,第y列,第z块的扫描链,其中,x={0,1,2},y={0,1,2}, 并且z={0,1,2}。同一块和同一列的扫描链形成了簇。输入选择器由两个分区P0和P1构成,使得每个分区分别以每组扫描链在每个簇中最多只具有一个扫描链的方式,指定了扫描链到3组扫描链{G00,G01,G02}和{G10,G11,G12}的映射。因此,分区以这样一种方式将多达N3个扫描链映射到N个组中在此被称为正交,该方式为,对于两个分区来说最多N个扫描链属于同一组。分区将扫描链映射到N个组,使得每个组在每个簇中最多具有一个扫描链在此被称为第一类型。接下来,定义了三个模式M0,M1,和M2,这样可以选择全部扫描链、一组扫描链或者两组扫描链的交集用于压缩。相应地,在模式M0下,选择了全部扫描链用于压缩。在模式M1下,选择了与一个分区相关的一组扫描链用于压缩。在模式M2下,选择了与不同的分区相关的两组扫描链的交集用于压缩。
AMC具有2个输出映射A和B,其通过将空间压缩器的输出分区为三组输出O0,O1,和O2来构成。接下来,每个输出映射指定了三输出集合(a,b,c),该集合被分配用于以下述方式对每个扫描链(x,y,z)进行观察,该方式为,第一输出、第二输出和第三输出分别属于输出组O0,O1,和O2。如果在至少一组输出(O0,O1,和/或O2)中为压缩选择的扫描链的观察而分配的输出集合是不同的,则输出映射是唯一的。相应地,输出映射由分区集合O0,O1,...,OK-1定义,这样分区Oi以下述方式将扫描链映射为N组,即第j组扫描链在对应输出组的第j个输出是可以观察到的,其中i=0,1...,K-1并且j=0,1...,N-1。每个输出映射与一个特定模式M0,M1,和M2相关,并且优化了AMC的特定期望属性。
输出映射A是唯一的,并且关于模式M0进行优化。因此,输出映射A以下述方式定义了分配给每个扫描链的观察的三个输出的唯一集合,该方式为,三个输出中的每一个属于输出O0,O1,或O2的不同组。使用三个与输出O0,O1,和O2的组互相排斥的分区构建输出映射A,该映射以下述方式将扫描链映射为N组,即对于所有分区,最多有一个扫描链属于同一个分区。结果是,当在同一移位 循环中出现任何未知数值时,在AMC的一个或多个输出中,可以观察到为压缩选择的扫描链中的错误。因此,在该模式下,AMC可以容忍一个未知的数值。
输出映射B是唯一的,并且关于模式M1进行优化。在模式M1下,可以为压缩选择与分区P0相关的一组扫描链G00,G01和G02,或者与分区P1相关的一组扫描链G10,G11和G12。因此,输出映射B以下述方式为每个簇定义了属于三个不同输出组O0,O1,或O2的三个输出的唯一集合,该方式为,为一对簇的观察而分配的输出集合最多分享一个共用输出。使用3个相互正交的分区O0,O1,和O2构建输出映射B,上述三个分区以下述方式将扫描链映射到N组,该方式为,对于全部分区,最多有N个扫描链属于同一组。分区将扫描链映射到N组,这样,在每簇中属于同一组的每个簇中的扫描链在此被称为第二类型。显然,任何相互排斥的分区组包括来自两个不同类型的至少三个分区。同样,来自不同类型的一对分区也是正交的。结果是,在输出(例如O0,O1,和/或O2)的最多一个组中,每个未知数值可以掩蔽扫描链中的错误。因此,在这种模式下,当同一组扫描链和同一移位循环中存在任何K-1个未知数值时,可以在AMC的一个或多个输出上,观察到为压缩选定的扫描链中的错误。这样,我们说,对于用于选择P0,P1,...,PT-1的每个分区而言,AMC可以容忍K-1个未知数值。此外,如果为了观察在两组扫描链的交集中的扫描链而分配的输出集合在任何输出组中不共享任何共用输出,则优化输出映射B。这样,这些扫描链之间的X-掩蔽效应不可能出现,并且我们可以认为每个链是两组扫描链的交集中的唯一的扫描链。结果是,在模式M1中,对于用于选择的全部分区和用于观察该链的全部输出而言,在同一移位循环中至少需要T0+T1+2个未知数值来掩蔽扫描链中的错误,其中,T0和T1是对于分区P0+P1而言,AMC可以容忍的未知数值的数量。因此,在该模式下,AMC可以容忍KT-1个未知数值。
输出映射B是唯一的,并且关于模式M2进行优化。更具体地, 输出映射B定义了以下述方式观察每个簇的三个输出的唯一集合,该方式为,在任何输出的组中,两组扫描链的交集中的扫描链不共享任何共用输出。结果是,当全部其它扫描链在同一移位循环中具有未知数值时,在AMC的三个输出上可以观察到为了以模式M2压缩而选择的扫描链中的错误。因此,我们说在该模式下,AMC可以容忍任意个未知数值。
例如,扫描链(0,0,0)以及分别用于分区P0和P1的其它8个扫描链属于扫描链组G00和G10。接下来,三个不交叠的输出集合(0,0,0),(1,1,2)和(2,2,1)被分配用于分别观察扫描链组G00和G10的交集中的扫描链(0,0,0),(0,0,1)和(0,0,2)。因此,不会发生扫描链(0,0,0),(0,0,1)和(0,0,2)之间的X-掩蔽效应。通过排除这3个扫描链,组G00和G10中剩余的6个扫描链是非交叠的,并且在每一个扫描链的这些组中都可以容忍任意2个未知数值。接下来,可以通过选择分区P0或者P1,来进一步降低针对扫描链(0,0,0)的X-掩蔽效应。为了选择用于压缩的扫描链(0,0,0)而对分区(P0或者P1)做出的选择可以基于组G00和G10组中的剩余6个扫描链中的未知数值,并且需要选择具有最多2个未知数值的扫描链组。由于,每个扫描链都可以满足前面提到的条件,则M1模式中可以容忍的未知数值的总数等于5。
当为用于每移位循环的压缩选择扫描链时,ATPG工具按下述顺序应用上述准则:(1)产生用于故障集合的测试图案,并且基于对用于每一移位循环的压缩可以最多选择一组扫描链的假设,确定用于压缩的扫描单元;(2)对测试图案进行仿真并且确定未知数值的分布;(3)对于每移位循环,选择对于为压缩而最初确定的链可以使可观察性最大化并且使X-掩蔽效应最小化的模式。
图3给出了用于N个质数的组合AMC(N,K,Q,T)的一般性说明,其中N是一个分区中扫描链组的数量,K是(待观察分区)输出组的数量,Q是用于观察一个簇中的扫描链的唯一输出组的数量,T是用于选择的分区的数量,K≤N,T≤N并且 典型的AMC (10,3,1,2)具有1000个可以在30个输出观察的扫描链,即压缩比是33,这样可以为模式M1、M2和M3下的压缩分别选择1000、100和10个扫描链。相应地,CUT中的N3个扫描链可以被视为3维阵列(r×c×b),并且将三元组(x,y,z)分配给在第x行,第y列,第z块的扫描链,其中x={0,1,2,...,N-1},y={0,1,2,...,N-1}并且z={0,1,2,...,N-1}。同一块和列中的扫描链构成了簇C0,C1,...,CN-1 2。定义了T个来自第一类型的相互正交的T个分区P0,P1,...,PT-1,使得每个分区指定了从扫描链分别到N组扫描链{G00,G01,...,G0, N-1},{G10,G11,...,G1,N-1},...,{GT-1,0,GT-1,1,...,GT-1,N-1}的映射。相应地,1)每组扫描链在每个簇具有最多一个扫描链,并且2)第一分区中的每组扫描链与每个块中的第二分区中的每个扫描链组共享最多一个扫描链。结果是,来自每个块的最多一个扫描链属于全部分区的同一组。接下来,定义了三种模式M0,M1和M2,使得选用于择全部扫描链、一组扫描链或者两个扫描链的交集为压缩。通过将输出分区为K组输出O0,O1,...,OK-1而构建两个输出映射,并且为每个模式优化特定期望的属性。借助K个相互正交的分区构造输出映射A,使得分区O0来自第一种类型,而K-1个分区O1,...,OK-1来自第二种类型。结果是,在模式M0中,AMC(N,K,Q,T)可以容忍一个未知数值。输出映射B与模式M1和M2相关,并且为每个簇分配用于观察的唯一的K输出集合。如果分配用于观察一对簇的一组输出共享最多一个共用输出,则输出映射B被优化。输出映射B由来自第二类型的K个相互正交的分区O0,O1,...,OK-1而构成。结果是,对于每个分区P0,P1,...,PT-1,AMC(N,K,Q,T)可以容忍K-1个未知数值。此外,如果分配用于观察两组扫描链的交集中的扫描链的输出组不共享任何共用输出时,输出映射B被优化。结果是,在模式M1中,AMC(N,K,Q,T)可以容忍KT-1个未知数值,并且在模式M2中,AMC(N,K,Q,T)可以容忍任意个未知数值。
总而言之,在模式M0下,可以选择全部N3个扫描链用于压缩,并且AMC(N,K,Q,T)可以容忍一个未知数值。在模式M1下,可以 选择与分区P0,P1,...,PT-1相关的N2个扫描链的组用于压缩,并且AMC(N,K,Q,T)可以容忍KT-1个未知数值(每个分区是K-1个未知数值)。在模式M2下,可以选择两组扫描链的交集中的N个扫描链用于压缩,并且AMC(N,K,Q,T)可以容忍任何数量的未知数值。
例2
图4说明了使用单个输出映射构建组合AMC(N,K,Q,T),其中,N=3,K=3,Q=1并且T=2。由来自第一类型的T个相互正交的分区P0,P1,...,PT-1构建输入选择器。由来自第二类型的K-1个相互正交的分区O0,O1,...,OK-1和来自第一类型的一个分区O0构建输出映射。而且,用于选择的分区P0,P1,...,PT-1和用于观察的O0,O1,...,OK-1是相互正交的。这样,在模式M1下,每个分区P0,P1,...,PT-1可以容忍K-1个未知数值。对于输出组O0,两组扫描链的交集中的任何一对扫描链仅共享最多一个共用输出。结果是,在该模式下,AMC(N,K,Q,T)可以容忍T(K-1)个未知数值。最坏的情况是,当在两组扫描链的交集中存在错误和至少一个未知数值的时候。在这种情况下,对于输出组O0,由于两组的交集中扫描链共享一共用输出,则对于该组输出,将会掩蔽掉该错误。通过排除输出组O0,对于用于每个分区P0,P1,...,PT-1的剩余输出组O0,O1,...,OK-1,压缩器还可以容忍至少K-2个未知数值。结果是,考虑到全部分区P0,P1,...,PT-1和剩余的K-1个输出组O0,O1,...,O K-1,需要至少T(K-1)+1个未知数值来掩蔽错误。因此,AMC(N,K,Q,T)可以容忍T(K-1)个未知数值。
总而言之,在模式M0和M2下,使用单个输出映射的AMC(N,K,Q,T)可以分别容忍一个未知数值和任意数量的未知数值。结果是,使用单个输出映射的AMC(N,K,Q,T)简化了压缩器体系结构,但是它比模式M1下能容忍的未知数值少。
例3
图5说明了用于组合AMC(N,K,Q,T)的合成过程,其中,N=4,K=4,Q=1并且T=3。首先,构建水平、垂直和4阶的2个正交的拉 丁正方形。因此,N阶的水平正方形和垂直正方形包括整数0,1,2...,N-1,这样每个整数分别出现在阵列的精确一行和精确一列中。同样,N阶的拉丁正方形是大小为N的正方形阵列,包括整数0,1,2...,N-1,这样每个整数在阵列的每个行和每个列中精确地出现一次。如果一个可以叠加于另一个上时,2个N阶的拉丁正方形被称为正交,并且在阵列的N2个单元中每一个N2对整数(考虑顺序)精确地出现一次。
接下来,如同在图5中示出的从左到右并且从顶到底,每个正方形被安排为一个单列,并且构建阵列{4×16},该阵列被称为第一阵列。第一阵列{4×16}的每一个列将一个分区定义为来自第二类型的N个组,该组分别与输出组O0,O1,O2和O3相关。第一阵列{4×16}的行0,1,2和3对应于块B0,第一阵列{4×16}的行4,5,6和7对应于块B1,第一阵列{4×16}的行8,9,10和11对应于块B2,并且第一阵列{4×16}的行12,13,14和15对应于块B3。同样,第一阵列{4×16}的行0,1,2和3分别对应于块B0的簇C0,C1,C2和C3。接下来,对于i={1,2,...,N-1},簇C4i,C4i+1,....C4i+3被分配给第一阵列{4×16}的块B0中的行,这样取模N后具有同样索引的簇在对应的单元中包含不同的整数。图5示出了在簇和第一阵列{4×16}的行之间的分配关系。结果是,完全地指定了用于模式M1和M2的输出映射。更具体地,由于4个分区相互正交,则第一阵列{4×16}定义了唯一的4输出集合(至多一个来自每组输出),该组被分配用于对每个簇进行观察,这样一对簇在任何输出组中仅共享至多1个共用输出;并且取模N后的具有同样索引的一对簇(即两组扫描链的交集中的簇),不共享任何共用输出。此外,第一阵列{4×16}中的第二、第三和第四列分别将扫描链的三个相互正交的分区P2,P1和P0定义为对全部块有效的扫描链组,即来自第一类型。
最终,定义了用于模式M0的输出映射的第二阵列{4×64}是通过以下述方式将第一阵列{4×16}中的每一行扩展为第二阵列{4×64}中的4行而构建的,该方式为,第一阵列{4×16}中的第二、第三和第 四列限定了对于输出组O1,O2和O3,观察簇中的全部扫描链而分配的3个共用输出;并且第一阵列{4×16}中的第二列限定了对于输出组O0在该簇中为观察扫描链而分配的唯一输出。换言之,使用四个相互正交的分区构建用于模式M0的输出映射,该分区包括来自与输出组O0相关的第一类型的一个分区,和来自与输出组O1,O2和O3相关的第二类型的3个分区。结果是,分配用于观察一个簇中的扫描链的输出集合,在输出组O0中是唯一的,在此处被称为第一类型的输出,并且在输出O1,O2和O3的每个组中共享最多K-Q个共用输出,在此处被称为第二类型的输出。分配用于观察不同簇中的扫描链的输出组共享最多Q个来自第一类型的共用输出和来自第二类型的最多一个共用输出。换言之,分配用于观察每个扫描链的输出组包括Q个来自第一类型的输出,和K-Q个来自第二类型的输出。结果输出映射D是唯一的,并且在模式M0下,AMC可以容忍一个未知数值。当N是奇数时,使用下述公式构建输出映射D:x,y,(y+z)mod N和(y+2z)mod N,其中N是用于每个分区的扫描链组的数量,并且每个公式确定对应的输出组中的输出,该输出组被分配用于观察扫描链(x,y,z)。可以分别使用下述公式构建输入选择器:(x+y)mod N,(x+2y)mod N,其中N是用于每个分区的扫描链组的数量,并且每个公式确定与该分区相关的扫描链组以便选择扫描链(x,y,z)。
总而言之,上述过程是,如果存在至少H个N阶的相互正交的拉丁正方形,就可以使用两个输出映射合成组合AMC(N,K,Q,T)的非正式证明,该组合AMC在模式M0下可以容忍一个未知数值,在模式M1下可以容忍KT-1个未知数值,在模式M2下可以容忍任意数量的未知数值,其中K≤H+2≤N,T≤H+1并且Q=1。
上述过程是如果存在至少H个N阶的相互正交的拉丁正方形,就可以使用单个输出映射合成组合AMC(N,K,Q,T)的非正式证明,该组合AMC在模式M0下可以容忍一个未知数值,在模式M1下可以容忍T(K-1)个未知数值,在模式M2下可以容忍任意数量的未 知数值,其中K+T≤H+1,并且Q=1。
例4
图6示出了用于组合AMC(N,K,Q,T)的合成过程,其中,N=4,K=4,Q=2并且T=3。类似地,基于全部为N阶的水平、垂直和2个正交的拉丁正方形构建第一阵列。定义了用于模式M0的输出映射的第二阵列{4×64}是通过以下述方式将第一阵列{4×16}中的每一行(或列)扩展为4行而构建的,该方式为,在输出组O0和O1中分配用于观察每个簇中的扫描链的输出集合是唯一的,并且与输出组O2和O3共享最多K-Q个共用输出。换言之,定义了两个类型的输出,这样输出组O0和O1与来自第一类型的2个正交分区相关,并且输出组O2和O3与来自第二类型的2个正交分区相关。因此,一个块中的扫描链对于第一类型输出而言共享最多一个输出。而且,不同簇中的扫描链对相对于第二类型的输出仅共享最多一个输出。结果输出映射F是唯一的,在模式M0下,AMC可以容忍2个未知数值。当N是奇数时,使用下述公式构建输出映射F:x,(x+y)modN,(y+z)mod N和(y+2z)mod N,其中N是用于每个分区的扫描链组的数量,并且每个公式确定对应的输出组中的输出,该输出组被分配用于观察扫描链(x,y,z)。
总而言之,上述过程是,如果存在N阶的H个相互正交的拉丁正方形,就可以使用两个输出映射合成组合AMC(N,K,Q,T)的非正式证明,该组合AMC在模式M0下可以容忍2个未知数值;在模式M1下可以容忍KT-1个未知数值;在模式M2下可以容忍任意数量的未知数值,其中K≤H+2≤N,T≤H+1并且
上述过程也是如果存在N阶的H个相互正交的拉丁正方形,就可以使用单个输出映射合成组合AMC(N,K,Q,T)的非正式证明,该组合AMC在模式M0下可以容忍2个未知数值,在模式M1下可以容忍T(K-1)个未知数值,在模式M2下可以容忍任意数量的未知数值,其中K≤H+2≤N,K+T≤H+1并且
例5
图7示出了构建用于模式M0的输出映射,当N=4且K=6时,其可以容忍在一个移位循环中出现两个未知数值。类似地,基于均为4阶的水平正方形和拉丁正方形L(x,y)=x+y构建第一阵列{4×16}。接下来,基于第一阵列{4×16}以下述方式构建第二阵列{4×64},该方式为,为了观察每个簇中的扫描链而分配的输出在输出O0和O1的每一个组中是唯一的,被称为第一类型,并且与输出组O2和O3中的每一个相同,此处被称为第二类型。接下来,在此被称为第三类型的输出组O4和O5是由组合来自第一类型的输出组O1与来自第二类型的输出组O2和O3中的每一个而构建的。结果是,分区集合O0,O1,...,O5相互正交。所得到的输出映射H是唯一的,并且在模式M0下,AMC可以容忍2个未知数值。对于N≥3,可以使用下述公式构建输出映射H:x,(x+y)mod N,y,(y+z)mod N和(x+y+z)mod N,(x+2y+z)mod N,其中N是用于每个分区的扫描链组的数量,并且每个公式确定对应的输出组中的输出,该输出组被分配用于观察扫描链(x,y,z)。类似地,可以使用下述公式构建多达7个相互正交分区的完整组:{x,(x+y)mod N,z,(z+x)mod N,(x+y+z)modN,(2x+y+z)mod N},{y,(y+z)mod N,z,(z+x)mod N,(x+y+z)modN,(x+y+2z)mod N},以及{x,(x+y)mod N,y,(y+z}mod N,z,(z+x)modN,(x+y+z)mod N}。
总而言之,上述过程是在K≥6时,对于任何N≥3,可以使用相互正交的分区合成用于模式M0的输出映射的非正式证明,该输出映射每个循环可以容忍2个未知数值。
为了创建依序压缩器,测试响应中的任何单个错误需要在至少L个连续移位循环中产生唯一的错误指示,其中L是依序压缩器的延迟,其被定义为将错误存储到依序压缩器的依序元件中所需要的最大移位周期,该移位周期或者可以直接从集成电路的输出中观察到,或者具有两个或更多到两个或更多依序元件的反馈回路。因此,构建依序AMC的必须条件是由至少4个相互正交的分区定义输出映射,这样三个分区的至少三个子集也是相互排斥的。
例6
图8示出了当N=3,K=4,Q=2,并且T=2时,有限AMC(N,K,Q,T)的合成。因此,有限AMC(N,K,Q,T)包括三个部分:使用来自第一类型的2个正交分区O0和O1和来自第二类型的2个正交分区O2和O3基于输出映射H构建的空间压缩器,使用来自第三类型的2个正交分区P0和P1构建的输入选择器,以及长度为N的4个输出寄存器R0,R1,R2和R3,上述寄存器连接到空间压缩器的4个独立的输出组O0={o00,o01,o02},O1={o10,o11,o12},...,O3={o30,o31,o32}。
基于公式x,(x+y)mod N,y和(y+z)mod N构建空间压缩器,其中每个公式确定了对应的输出组中的一个输出,该输出组被分配用于观察扫描链(x,y,z)。结果是,有限AMC输入端的任何单个错误将产生唯一的错误指示。使用公式(x+y+z)mod N,和(x+2y+z)mod N,构建输入选择器,其中每个公式确定了用于选择扫描链的对应分区中的一组扫描链。用于选择的分区P0和P1和用于观察的O0,O1,...O3是相互正交的。类似地,在模式M0中,为压缩选择全部扫描链,并且AMC(N,K,Q,T)在一个移位循环中可以容忍2个未知数值。在模式M1中,为压缩选择N2个扫描链组,并且AMC(N,K,Q,T)在一个移位循环中可以容忍4个未知数值。在模式M2中,为压缩选择两组扫描链的交集中的N个扫描链,并且AMC(N,K,Q,T)在一个移位循环中可以容忍任意数量的未知数值。
由于有限AMC(N,K,Q,T)的不同的K组输出连接到长度为N的K个输出寄存器R0,R1,...,RK-1,则可以实现在N个连续移位循环中为压缩选择的扫描链之间的X-掩蔽效应。因此,每个错误具有唯一的提示,则可以在N个连续移位循环中,可以容忍任何未知数值。接下来,通过为选定的移位循环掩蔽全部扫描链,或者通过最小化传入输出寄存器的未知数值的数量来为压缩选择扫描链的方式,可以降低跨越多移位循环的X-掩蔽效应。如同所显示的,串联连接的输出寄存器具有一个或多个共用反馈回路。在存在两个或更多共用反馈回路的情况下,需要通过以下方式构建分区从而完全避 免X-掩蔽效应,该方式为,可以为压缩单独选择每个扫描链。
例7
图9示出了当N=4,K=4,Q=2,并且T=3时,无限AMC(N,K,Q,T)的合成。类似地,无限AMC(N,K,Q,T)包括:1)使用来自第一类型的2个正交分区O0和O1和来自第二类型的2个分别被下述公式限定的正交分区O2和O3构建的空间压缩器,该公式为:x,(x+y)modN,和(y+z)mod N;2)使用分别由下述公式限定的3个相互排斥的分区P0,P1和P2的组构建的输入选择器,该公式为:z,(x+z)mod N,和(x+y+z)mod N;以及3)K=4,长度为N的4个输出寄存器R0,R1,R2和R3,上述寄存器连接到空间压缩器的4个独立的输出组O0={o00,o01,o02},O1={o10,o11,o12},...,O3={o30,o31,o32}。用于观察的全部分区O0,O1,...O3和用于选择的分区P0,P1和P2是相互正交的。因此,如果可以为压缩独立地选择每个扫描链,则分区P0,P1和P2是充足的。该情况保证了即使当在同一移位循环中,全部其它扫描链包括未知数值时,也可以观察每个扫描链。为了实现这个目标,分区P0,P1和P2必须是彼此排斥。输出寄存器R0,R1,R2和R3在此被称为并行寄存器,并且由下述公式定义:对于i={0,1,...,L-1}, 其中oi是对应的输出组中的第i个输出,ri t是移位循环t中的并行输出寄存器的第i位,L是并行输出寄存器的长度,并且对于i={N,N+1,...,L-1},oi=0。接下来,长度为L0和L1的并行输出寄存器R4和R5的第二集合,分别连接到不同的输出组O1和O2,这样N,L0和L1是互为质数,即在集合{N,L0,L1}中每对的最大公约数等于1。
总而言之,无限AMC(N,K,Q,T)具有用于压缩的三种模式M0,M1和M2。在模式M0下,选择多达N3个扫描链用于压缩。在模式M1下,选择与一组扫描链及分区P0,P1...PT-1相关的多达N2个扫描链用于压缩。在模式M2下,选择两组或多组扫描链的一系列交集和联合操作所定义的N2个扫描链用于压缩。接下来,长度为N的K个并行输出寄存器R0,R1,R2和R3的第一集合被连接到无限AMC (N,K,Q,T)的不同输出组O0,O1,...Ok-1。结果是,无限AMC的输入端的任何单个错误都将为N个移位循环产生唯一的错误指示。此外,长度分别为L0和L1的并行输出寄存器R4和R5的第二集合分别连接到无限AMC(N,K,Q,T)的不同的输出组O0,O1,...,OK-1,这样N,L0和L1互质。相应地,AMC的输入端的任何单个错误将为S=60个移位循环产生唯一的错误指示,其中S=NL0L1。结果是,来自最多S个连续移位循环的测试响应中不可能出现双错误掩蔽效应。因此,无限AMC(N,K,Q,T)的范围等于SN3。同样,由于在压缩器范围内每个错误具有唯一的指示,则即使当在压缩器范围中在测试响应中存在错误和一个未知数值时,每个单个的错误将产生错误指示(最多S个连续移位循环)。
例8
图10示出了用于合成无限AMC(N,K,Q,T)的第二种方式,其中,N=4,K=4,并且Q=2。这种情况下,长度为N的输出寄存器R4和R5的第二集合在此被称为慢寄存器,慢寄存器与第一集合中的输出寄存器R0,R1,R2和R3相比,对测试数据的移位分别慢N和N2倍。慢输出寄存器连接到输出组,并且由下述公式定义:对于i={0,1,...,L-1},当(t mod N)=0时, 当(t mod N)≠0时 其中oi是对应的输出组中的第i个输出,ri t是移位循环t中的慢输出寄存器的第i位,L是慢输出寄存器的长度,以及对于i={N,N+1,...,L-1},oi=0。对于当前的无限AMC(N,K,Q,T),输入端的任何单个错误将产生用于S=N3个连续移位循环的唯一错误指示。因此,无限AMC(N,K,Q,T)的范围等于N6,并且它被计算为全部输出寄存器的长度的乘积。
例9
图11显示了当N=4,K=4,并且Q=2时,用于合成无限AMC(N,K,Q,T)的第三种方式。这样,包括长度分别为L0和L1的输出寄存器R4和R5所形成的第二集合在此称为奇偶校验输出寄存器,这样N,L0和L1互质。因此,每个奇偶校验输出寄存器连接到一组输 出,并且由下述公式定义:对于i={0,1,...,L-1}, 以及 其中oi是对应的输出组中的第i个输出,Ri t是移位循环t中的奇偶校验输出寄存器的第i位,L是奇偶校验输出寄存器的长度。结果是,无限AMC输入端的任何单个错误将产生用于S=60个连续移位循环的唯一错误指示,计算为NL0L1。因此,无限AMC(N,K,Q,T)的范围等于SN3。
例10
图12显示了当N=4,K=4,并且Q=2时,用于以下述方式合成无限AMC(N,K,Q,T)的第四种方式,该方式为,在10N个连续移位循环中,最小化四位错误的错误掩蔽效应。分别地,长度为N的并行输出寄存器R0的第一集合,长度为L1的并行输出寄存器R1,R2和R3的第二集合,以及长度为L2的输出寄存器R4和R5的第三集合,分别连接到N个输出的不同组。在此被称为快寄存器的输出寄存器R5,其一次将测试数据移位V=2个位置,并且由下述公式定义:对于i={0,1,...,L-1}, 其中oi是对应的输出组中的第i个输出,ri t是移位循环t中的快输出寄存器的第i位,L是快输出寄存器的长度,并且对于i={N,N+1,..,L-1}的oi=0,V={2,3},V和L是互为质数。结果是,压缩器的范围是N4L1L2,并且最大化了在10N个连续移位循环中产生唯一错误指示的双位错误的数量。
总而言之,长度为L≥N的当前类型的输出寄存器(并行、奇偶校验、慢和快)可以连接到同一组输出,以便增加压缩器的范围,并且为偶数个错误降低错误掩蔽效应。
例11
图13示出了当N=3并且T=3时,AMC(N,K,Q,T)的拓展模式集合。在模式M0下,选择了全部扫描链用于压缩。在模式M1下,选择了一组或多组扫描链用于压缩。在模式M2下,利用多组扫描链的一系列交集和联合操作来定义为压缩而选择的扫描链。接下来,图14示出了用于控制块的命令的结构,该块提供了灵活的模式选择。每个命令可以具有多达3个字段:模式、间接选择和直接选择。在 当前的例子中,字段模式需要多达3位,并且将被更频繁使用的例如M0的模式与其它模式相比需要较少的位。间接选择字段指定了选择的有限子集,一系列扫描链组的交集和联合操作定义了上述选择。间接选择所需的位数取决于有效选择的数量。模式M1提供了对每组扫描链和两组扫描链的限制集合的独立选择。由于可能有9个有效选择G00,G01,...,G22,则假设多达7对扫描链组的选择,字段间接选择将需要至少4位。此外,可以对特定分区和模式应用直接选择,参考例如图13中示出的模式M22。相应地,直接选择允许选择在特定分区中的扫描链组的任意集合用于压缩。用于直接选择的位数等于与该特定分区相关的扫描链组的数量。
接下来,对于一个或多个连续移位循环,每个命令可以为有效。此外,每个字段可以具有不同的范围。例如,模式字段可以对整体图案有效,间接选择字段对连续循环轮的集合有效,并且直接选择字段可以对一个移位循环有效。
总而言之,在测试响应中出现任何数量的未知数据时,当前的模式选择框架的目标是最小化控制数据容量,并且最大化可观察性。可以基于CUT的分析,为特定密度和/或未知数值的分布进行模式选择框架的优化。可选地,当不能预先确定密度和/或未知数值的分布时,模式选择框架可以提供灵活机制来优化压缩器电路系统的性能。
当前的例子是基于特定组件,例如:a)使用一个或多个特定输出映射构建空间压缩器,其关于为压缩选择扫描链的特定机制来进行优化,基于相互正交的分区到扫描链组的映射来构建该机制;b)将不同长度和/或不同类型的多个输出寄存器连接到空间压缩器的不同输出组。用于合成空间的当前方法和装置的上述组件、有限和无限AMC(N,K,Q,T)有益于增强可观察性,并且降低X-掩蔽和错误-掩蔽效应,并且允许压缩模式中的有效诊断。
图15是设计为实现此处描述的AMC的电子设计自动化系统的数据处理系统100的简化框图。系统100包括一个或多个中央处理单元110,该单元被安排用于执行存储在程序存储器101中的计算机 程序、访问数据存储102、访问大型存储器例如磁盘驱动器106或者其它基于电、磁、全息的长期存取器或者其它海量存储器,并且被设计用于控制通信端口103、用户输入设备104和显示器105。电子设计自动化系统包括单独工作站和由集成电路设计者使用的计算机网络。
对于示例性系统,电子设计自动化使用数据处理资源,该资源包括被实现为存储在存储器101中的计算机程序的逻辑。可选地,可以使用本地或者分布式机器中的计算机程序实现该逻辑,以及使用专用硬件或者其它数据处理资源部分地实现该逻辑。在代表性的电子设计自动化系统中逻辑包括逻辑设计工具、逻辑验证工具、合成工具、定位工具、路由工具、物理验证工具等。资源包括此处描述的AMC合成工具。
数据存储102通常用于存储电路的机器可读定义,例如高级语言描述、网表、掩模定义等。并且在此存储有各种X-容忍度和走样(aliasing)度的不同AMC设计。
AMC(N,K,Q,T)分析
图16示出了例2中的组合AMC(N,3,1,2)相对于Peter Wohl,J.A.Waicukauski和S.Ramnath在Proc.IEEE Internation Test Conference,2007中发表的“Fully X-tolerant combinational scan compression”在可观察性上的改善。因此,两个压缩器都使用用于模式M0(称为全-可观察性模式)的同一输出映射。完全X-容忍压缩器具有第二输出映射来支持直接可观察性模式。仿真结果证明当未知数值的密度在百分之0到15之间变化时,在具有类似的硬件开销和控制数据量的情况下,AMC(N,3,1,2)获得了高出3倍的可观察性。结果是,可以期待减少测试图案的数量以及更高的对未建模缺陷的测试覆盖。此外,使用例2中的单个输出映射简化了压缩器体系结构。
图17示出了相对于基于steiner三阶系统S(2,3,M)构建的空间压缩器,基于例5中的多达7个相互正交的分区构建的空间压缩器的相对硬件开销。在图17中,从上到下在每个X座标的5个图像点 对应于从上到下的右侧图例。因此,在每个X座标,最上端的图像点对应于N=5,最下端的图像点对应于N=13等。例如,数值0.5意味着AMC空间压缩器需要比另一个空间压缩器少两倍的2输入XOR门。AMC空间压缩器的硬件开销可以由公式VN2(N-1)+KN(N-1)计算,其中,对于N≤6,V=2,并且对于N=7,V=3。因此,另一空间压缩器的硬件开销可以由下述公式计算3N3-O,其中O是空间压缩器输出的数量。结果是,当K≤6时,AMC空间压缩器的硬件开销比另一空间压缩器的硬件开销低百分之之10到30。
图18分别示出了例6中有限AMC(N,4,2,2)相对于Janusz Rajski和Jerzy Tyszer在Proc.IEEE VLSI Test Symposium 2005发表的“Synthesis of X-tolerant convolutional compactors”在空间压缩器的压缩率(输入数量除以压缩器的输出数量)上的改进。因此,对于1000到2000个扫描链,有限AMC(N,4,2,2)需要40到51个输出,而基于steiner三阶系统S(2,3,M)构建的空间压缩器需要78到111个输出。
图19示出了例7中的无限AMC(N,4,2,3)相对于Wojciech Rajski和Janusz Rajski在Proc.IEEE VLSI Test Symposium 2006发表的“Modular compactor of test responses”在范围上的改进。更具体地,当K=4,并且整体长度(触发器数量)从20变化为110时,在两种情况下计算两个压缩器的范围之间的比率:情况1)无限AMC的输出寄存器数量被规定为7,并且情况2)输出寄存器的数量被规定为9,并且参数S(扫描链的最大长度)被规定为100。因此,对于100K到10M(扫描单元)之间的范围,无限AMC在输出寄存器中需要40到72个触发器,而模压缩器在输出寄存器中需要73到227个触发器。
根据Wojciech Rajski和Janusz Rajski在Proc.IEEE VLSI TestSymposium 2006发表的“Modular compactor of test responses”,出现单个错误占失败图案的77%,双位错误占12%,三位错误占4%,而四位错误占2%。10个及以下的错误可以解释超过所有失败图案的 98%。使用基于字典的方式用于压缩模式下的因果诊断来得到故障候选的初始列表。总而言之,在测试响应中制造了多于一个错误的故障候选需要被包含于字典中。因此,对于单个错误,可以通过从对应的失败的扫描单元回溯CUT启动来获得故障候选的初始列表,其可以在压缩器范围中被唯一地识别。所建议的压缩器框架允许从字典中排除双位错误,因为可以很容易地基于错误指示计算失败的扫描单元的全部可能对的完整列表。基于上述假设,可以将字典的大小降低50%。
图20示出了例7中对于N={3,4,...,13}的无限AMC(N,4,2,3)的实验数据。这包括参数N、L1、L2和S(移位循环中的压缩器范围)的数值、扫描链的数量、输出寄存器R0,R1,...R5的整体长度、组合压缩率和用于模式M0,M1和M2的10N个移位循环中的四位错误掩蔽的可能性(假设选择全部扫描链、一组扫描链和两组扫描链的交集用于压缩)。图21示出了用于例10中的无限AMC(N,4,2,3)的同样的实验数据。相对于例7,用于例10的四位错误掩蔽的可能性提高了2.2到4.7倍。
接下来,估计失败的扫描单元的潜在对数量,该数量可以解释10N个移位循环内测试响应中的双位错误。图22显示例10中无限AMC(N,4,2,3)的实验数据。在图22中,在每个X坐标从左到右的6个条对应于从上到下的6个图例。因此,在每个坐标,最左侧的条对应于N=3,最右侧的条对应于N=13,等等。
因此,可以解释10N个移位循环中测试响应中的双位错误的潜在对的最大数量是10。当N≥9时,唯一失败映射的可能性高于90%。用于例7的对应数据是19个潜在对及75%。该实验证明了所提出的方式对于减少失败的扫描单元的潜在对数量的有效性,从而允许在压缩模式化下的有效诊断。这是第一次为无限时间压缩器论证这样的属性。
可以基于组和簇共享,为了使AMC空间压缩器和模压缩器的硬件开销最小化,来估计自由度。
令L为CUT中的扫描链的长度。同样令输出寄存器A和B的输出对的长度互为质数,并且(i,j)是一对扫描链,则下述情况就是有效的:
因此,包括在输出寄存器对之间的扫描链对(i,j)的共用组将包含全部扫描链并且AB将是L的因子。结果是,确实存在用于模压缩器的组共享。与此形成对比,通过将至少一个分区的相同的组连、接到例7、例8和例10中的不同输出寄存器的一些依序元件来利用组共享。
令三个输出寄存器A,B和C的长度是互为质数,并且(i,j)是一对扫描链,则下述情况是有效的:
因此,当BC是L的因子时,存在包括在三个输出寄存器的对(A,B)和(A,C)之间的扫描链对(i,j)的共用簇。结果是,作为例外,在三个输出寄存器的最多两对之间存在用于模压缩器的簇共享。与此形成对比,下述分区x,y,(x+y)mod N使用三个输出寄存器之间的簇共享,用于构建例6,7和10中的AMC。这样,由固定数值x和y,以及对于{0,1,2,...N-1}的变量z,来定义N个扫描链的N2个簇<x,y>。通过定义,存在于相互正交分区的任意对之间的簇,以及用于构建AMC的空间压缩器和输出选择器的全部分区都必须相互正交。在三个输出寄存器之间进行簇共享的其它情况是在例3、例4和例5中讨论的{y,(y+z)mod N,(y+2z)mod N},{(x+y)mod N,(x+z)mod N,(2x+y+z)mod N}以及{x,(x+y+z)mod N,(2x+y+z)mod N}。
图23是根据本实用新型的一个实施例的数据处理设备的示意框图。该设备2300包括:压缩装置2301,被配置为压缩来自集成电路和多个输出寄存器的测试响应数据,该测试响应数据包括多个位;映射装置2302,被配置为将所述多个输出寄存器的输出寄存器的依序元件映射到该测试响应数据的对应位集合,使得该测试响应数据的位属于所述多个输出寄存器的输出寄存器的依序元件的至少一个 对应集合,其中满足以下至少一个条件:(i)扫描链组被连接到所述多个输出寄存器的输出寄存器上,使得该组是包含至少两个扫描链的扫描链的子集,并且使得扫描链组的同一组被连接到所述多个输出寄存器的不同输出寄存器的依序元件上;以及(ii)扫描链的簇被连接到所述多个输出寄存器的输出寄存器上,使得该簇是包括至少两个扫描链的扫描链的子集,并且这样对于包括来自多个输出寄存器中的三个输出寄存器的输出寄存器三元组而言,输出寄存器三元组包括至少第一对输出寄存器对和第二对输出寄存器对,该第一对和第二对具有至少一个不同的输出寄存器对,并且其中在该第一对的输出寄存器对之间共享扫描链的第一共用簇,并且在该第二对的输出寄存器对之间共享扫描链的第二共用簇。
图24是根据本实用新型的一个实施例的数据处理设备的示意框图。该设备2400包括:合成装置2401,被配置为通过至少在组、簇和多个分区之间分割多个扫描链来合成集成电路的压缩器电路,以压缩从受测集成电路的多个扫描链中卸载的测试响应数据,使得对于多个分区的每个分区而言,多个扫描链的扫描链属于至少一个组;以及连接装置2402,被配置为经由逻辑门将扫描链组连接到多个输出寄存器,使得满足至少一个下述条件:(i)该扫描链组的组被连接到所述多个输出寄存器的不同输出寄存器的依序元件上,使得该组是包括至少两个扫描链的扫描链的子集;并且(ii)扫描链的簇被连接到所述多个输出寄存器的输出寄存器上,使得簇是包括至少两个扫描链的扫描链的子集,并且这样对于包括来自多个输出寄存器中的三个输出寄存器的输出寄存器三元组而言,输出寄存器三元组包括至少第一对输出寄存器对和第二对输出寄存器对,该第一对和第二对具有至少一个不同的输出寄存器对,并且其中在该第一对的输出寄存器对之间共享扫描链的第一共用簇,并且在该第二对的输出寄存器对之间共享扫描链的第二共用簇。
尽管通过参考前面详细描述的优选实施例和例子公开了本实用新型,应当理解这些示例意在说明而不是限制。可以预期,本领域 的技术人员可以很容易地想到变形和组合,上述变形和组合将落在本实用新型的主旨和下述权利要求所定义的范围中。
Claims (18)
1.一种数据处理设备,其特征在于包括:
集成电路,该集成电路包括压缩测试响应数据的电路系统,该测试响应数据来自受测集成电路中的扫描链,该电路系统包括:
第一逻辑门集合,其连接到所述扫描链;
多个输出寄存器,其经由第一逻辑门集合,从所述扫描链接收该测试响应数据,所述多个输出寄存器包括利用存储在所述输出寄存器中的数据来处理测试响应数据的第二逻辑门集合和依序元件,
(i)其中扫描链连接到所述多个输出寄存器的每个寄存器中的至少一个依序元件上,并且
(ii)其中所述扫描链的簇连接到所述多个输出寄存器的输出寄存器上,使得该簇是包括至少两个扫描链的扫描链的子集,并且使得对于包括来自所述多个输出寄存器中的三个寄存器的输出寄存器三元组而言,所述输出寄存器三元组至少包括第一对输出寄存器对和第二对输出寄存器对,第一对和第二对具有至少一个不同的输出寄存器对,并且其中在第一对的输出寄存器对之间共享扫描链的第一共用簇,并且在第二对的输出寄存器对之间共享扫描链的第二共用簇。
2.如权利要求1的数据处理设备,其特征在于,在所述多个输出寄存器的寄存器之间共享至少一个扫描链的簇,使得所述多个输出寄存器的第一寄存器的依序元件与所述多个输出寄存器的第二寄存器的依序元件共享一个簇。
3.如权利要求1的数据处理设备,其特征在于,在连接到所述第一多个输出寄存器的不同寄存器的依序元件上的扫描链之间共享最多一个扫描链。
4.如权利要求1的数据处理设备,其特征在于,所述多个输出寄存器的寄存器具有依序元件的长度,并且所述多个输出寄存器的至少两个寄存器的长度具有不等于1的最大公约数。
5.如权利要求1的数据处理设备,其特征在于,该多个输出寄存器的至少一个寄存器具有最多一个反馈回路。
6.如权利要求1的数据处理设备,其特征在于,该多个输出寄存器的至少两个寄存器彼此串联。
7.如权利要求1的数据处理设备,其特征在于,该多个输出寄存器的至少两个寄存器彼此串联,并且该多个输出寄存器的所述至少两个寄存器至少具有一个反馈回路。
8.一种数据处理设备,其特征在于包括:
压缩装置,被配置为压缩来自集成电路和多个输出寄存器的测试响应数据,该测试响应数据包括多个位;
映射装置,被配置为将所述多个输出寄存器的输出寄存器的依序元件映射到该测试响应数据的对应位集合,使得该测试响应数据的位属于所述多个输出寄存器的输出寄存器的依序元件的至少一个对应集合,
其中满足以下至少一个条件:
(i)扫描链组被连接到所述多个输出寄存器的输出寄存器上,使得该组是包含至少两个扫描链的扫描链的子集,并且使得扫描链组的同一组被连接到所述多个输出寄存器的不同输出寄存器的依序元件上;以及
(ii)扫描链的簇被连接到所述多个输出寄存器的输出寄存器上,使得该簇是包括至少两个扫描链的扫描链的子集,并且这样对于包括来自多个输出寄存器中的三个输出寄存器的输出寄存器三元组而言,输出寄存器三元组包括至少第一对输出寄存器对和第二对输出寄存器对,该第一对和第二对具有至少一个不同的输出寄存器对,并且其中在该第一对的输出寄存器对之间共享扫描链的第一共用簇,并且在该第二对的输出寄存器对之间共享扫描链的第二共用簇。
9.如权利要求8的数据处理设备,其特征在于,在依序元件集合的对应位集合之间共享最多一个位,该依序元件集合包括来自所 述多个输出寄存器的输出寄存器的至少一个依序元件。
10.如权利要求8的数据处理设备,其特征在于,该测试响应数据中的两个错误位产生了错误指示,该设备还包括:
分析装置,被配置为分析错误指示从而计算解释错误指示的错误位集合的列表;
错误位映射装置,被配置为将错误位集合映射到集成电路中失败的扫描单元的列表;以及
获取装置,被配置为基于失败的扫描单元的列表,获得用于诊断的故障候选的初始列表。
11.如权利要求8的数据处理设备,其特征在于还包括
第一计算装置,被配置为通过在该集成电路中注入第一故障,为测试图案集合计算错误指示,
第一分析装置,被配置为分析错误指示从而计算解释错误指示的错误位集合的列表,以及
第一确定装置,被配置为基于解释了第一故障的错误指示的错误位集合的数量,确定是否将错误指示以及指向第一故障的指针存储到故障字典中。
12.如权利要求11的数据处理设备,其特征在于还包括:
第二计算装置,被配置为通过在该集成电路中注入第二故障,来计算用于测试图案集合的错误指示,其中第一故障和第二故障在同一扇出自由区域;
第二分析装置,被配置为分析错误指示从而计算解释错误指示的错误位集合的列表;
量化装置,被配置为量化解释了该第一故障和第二故障的错误指示的错误位集合,以及
第二确定装置,被配置为基于解释了该第一故障和第二故障的错误指示的错误位集合的数量,来确定是否将错误指示以及指向同一扇出自由区域的指针存储到故障字典中。
13.如权利要求11的数据处理设备,其特征在于还包括获取装 置,被配置为基于故障字典,在压缩模式下获取用于诊断的故障候选的初始列表。
14.一种数据处理设备,其特征在于包括:
合成装置,被配置为通过至少在组、簇和多个分区之间分割多个扫描链来合成集成电路的压缩器电路,以压缩从受测集成电路的多个扫描链中卸载的测试响应数据,使得对于多个分区的每个分区而言,多个扫描链的扫描链属于至少一个组;以及
连接装置,被配置为经由逻辑门将扫描链组连接到多个输出寄存器,使得满足至少一个下述条件:
(i)该扫描链组的组被连接到所述多个输出寄存器的不同输出寄存器的依序元件上,使得该组是包括至少两个扫描链的扫描链的子集;并且
(ii)扫描链的簇被连接到所述多个输出寄存器的输出寄存器上,使得簇是包括至少两个扫描链的扫描链的子集,并且这样对于包括来自多个输出寄存器中的三个输出寄存器的输出寄存器三元组而言,输出寄存器三元组包括至少第一对输出寄存器对和第二对输出寄存器对,该第一对和第二对具有至少一个不同的输出寄存器对,并且其中在该第一对的输出寄存器对之间共享扫描链的第一共用簇,并且在该第二对的输出寄存器对之间共享扫描链的第二共用簇。
15.如权利要求14的数据处理设备,其特征在于,所述多个输出寄存器的寄存器具有依序元件的长度,并且至少一对输出寄存器的长度具有不等于1的最大公约数。
16.如权利要求14的数据处理设备,其特征在于,在该组之间共享簇中的至少一个簇,这样所述多个分区的第一分区的第一组与所述多个分区的第二分区的第二组共享一个共用簇。
17.如权利要求14的数据处理设备,其特征在于还包括:应用装置,被配置为向该压缩器电路应用至少一个下述配置:
(i)该多个输出寄存器的至少一个输出寄存器具有最多一个反馈 回路,
(ii)该多个输出寄存器的至少两个寄存器彼此串联,并且
(iii)该多个输出寄存器的至少两个寄存器是:(a)彼此串联以及(b)具有至少一个反馈回路。
18.如权利要求14的数据处理设备,其特征在于还包括:
注入装置,被配置为在测试响应数据中注入多个错误位,从而对压缩器电路识别注入的多个错误的能力进行量化,以及
能力改善装置,被配置为改善压缩器电路识别注入的多个错误的能力,其包括:
第一增加装置,被配置为增加所述多个分区的分区数量,
第二增加装置,被配置为增加所述多个分区中至少一个分区的组的数量,
第三增加装置,被配置为增加该多个输出寄存器的至少一个输出寄存器的依序元件的数量,以及
改变装置,被配置为改变(a)和(b)之间的映射的装置,其中(a)为多个分区的一个分区中的扫描链组,(b)为多个输出寄存器的一个输出寄存器中的依序元件。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/263,198 | 2008-10-31 | ||
US12/263,198 US7882409B2 (en) | 2007-09-21 | 2008-10-31 | Method and apparatus for synthesis of augmented multimode compactors |
Publications (1)
Publication Number | Publication Date |
---|---|
CN201867811U true CN201867811U (zh) | 2011-06-15 |
Family
ID=42225968
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980000168XA Active CN101849192B (zh) | 2008-10-31 | 2009-08-31 | 增强型多模式压缩器的合成方法和装置 |
CN2009201780429U Expired - Lifetime CN201867811U (zh) | 2008-10-31 | 2009-08-31 | 数据处理设备 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980000168XA Active CN101849192B (zh) | 2008-10-31 | 2009-08-31 | 增强型多模式压缩器的合成方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7882409B2 (zh) |
CN (2) | CN101849192B (zh) |
TW (1) | TWI471746B (zh) |
WO (1) | WO2010062431A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101849192B (zh) * | 2008-10-31 | 2013-10-02 | 新思科技有限公司 | 增强型多模式压缩器的合成方法和装置 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8065651B2 (en) * | 2009-01-29 | 2011-11-22 | Synopsys, Inc. | Implementing hierarchical design-for-test logic for modular circuit design |
US8893061B2 (en) * | 2009-01-30 | 2014-11-18 | Synopsys, Inc. | Incremental concurrent processing for efficient computation of high-volume layout data |
US8065638B2 (en) * | 2009-01-30 | 2011-11-22 | Synopsys, Inc. | Incremental concurrent processing for efficient computation of high-volume layout data |
US8458541B2 (en) * | 2011-03-25 | 2013-06-04 | Freescale Semiconductor, Inc. | System and method for debugging scan chains |
CN102305912B (zh) * | 2011-07-29 | 2014-06-04 | 清华大学 | 数据可压缩的低功耗集成电路测试装置及其方法 |
US10345369B2 (en) | 2012-10-02 | 2019-07-09 | Synopsys, Inc. | Augmented power-aware decompressor |
US9057765B2 (en) | 2013-04-12 | 2015-06-16 | International Business Machines Corporation | Scan compression ratio based on fault density |
CN103901342B (zh) * | 2014-03-18 | 2017-09-29 | 北京时代民芯科技有限公司 | 一种基于掩码文件的fpga精确故障注入系统 |
US10215803B1 (en) * | 2014-10-15 | 2019-02-26 | Santiago Remersaro | Method and apparatus for concurrent inter-test response compaction and diagnosis |
US9557383B2 (en) | 2014-12-12 | 2017-01-31 | International Business Machines Corporation | Partitioned scan chain diagnostics using multiple bypass structures and injection points |
US9551747B2 (en) | 2014-12-12 | 2017-01-24 | International Business Machines Corporation | Inserting bypass structures at tap points to reduce latch dependency during scan testing |
CN104749515B (zh) * | 2015-03-31 | 2017-12-15 | 中国人民解放军国防科学技术大学 | 一种基于顺序等分分段式的低功耗扫描测试方法和装置 |
US10380303B2 (en) | 2015-11-30 | 2019-08-13 | Synopsys, Inc. | Power-aware dynamic encoding |
US10416226B2 (en) | 2017-08-03 | 2019-09-17 | Globalfoundries Inc. | Test response compaction scheme |
US10379159B1 (en) * | 2018-07-31 | 2019-08-13 | International Business Machines Corporation | Minimization of over-masking in an on product multiple input signature register (OPMISR) |
US10371750B1 (en) | 2018-08-31 | 2019-08-06 | International Business Machines Corporation | Minimization of over-masking in an on product multiple input signature register (OPMISR) |
US10371749B1 (en) * | 2018-08-31 | 2019-08-06 | International Business Machines Corporation | Removal of over-masking in an on product multiple input signature register (OPMISR) test |
US10908213B1 (en) | 2018-09-28 | 2021-02-02 | Synopsys, Inc. | Reducing X-masking effect for linear time compactors |
US11422186B1 (en) * | 2019-06-20 | 2022-08-23 | Synopsys, Inc. | Per-shift X-tolerant logic built-in self-test |
TWI730582B (zh) * | 2020-01-07 | 2021-06-11 | 瑞昱半導體股份有限公司 | 具有多模式的資料移位運算裝置及方法 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3784907A (en) * | 1972-10-16 | 1974-01-08 | Ibm | Method of propagation delay testing a functional logic system |
US4503537A (en) * | 1982-11-08 | 1985-03-05 | International Business Machines Corporation | Parallel path self-testing system |
US4495629A (en) * | 1983-01-25 | 1985-01-22 | Storage Technology Partners | CMOS scannable latch |
US5790562A (en) * | 1996-05-06 | 1998-08-04 | General Motors Corporation | Circuit with built-in test and method thereof |
US6557129B1 (en) * | 1999-11-23 | 2003-04-29 | Janusz Rajski | Method and apparatus for selectively compacting test responses |
US6874109B1 (en) * | 1999-11-23 | 2005-03-29 | Janusz Rajski | Phase shifter with reduced linear dependency |
US6327687B1 (en) * | 1999-11-23 | 2001-12-04 | Janusz Rajski | Test pattern compression for an integrated circuit test environment |
US6615380B1 (en) * | 1999-12-21 | 2003-09-02 | Synopsys Inc. | Dynamic scan chains and test pattern generation methodologies therefor |
US6748564B1 (en) * | 2000-10-24 | 2004-06-08 | Nptest, Llc | Scan stream sequencing for testing integrated circuits |
US20020093356A1 (en) * | 2000-11-30 | 2002-07-18 | Williams Thomas W. | Intelligent test vector formatting to reduce test vector size and allow encryption thereof for integrated circuit testing |
US7168032B2 (en) * | 2000-12-15 | 2007-01-23 | Intel Corporation | Data synchronization for a test access port |
US6782501B2 (en) * | 2001-01-23 | 2004-08-24 | Cadence Design Systems, Inc. | System for reducing test data volume in the testing of logic products |
US6738939B2 (en) * | 2001-05-21 | 2004-05-18 | Intel Corporation | Method and apparatus for fault tolerant and flexible test signature generator |
US6877119B2 (en) * | 2001-09-14 | 2005-04-05 | Stmicroelectronics Limited | Circuit scan output arrangement |
JP2003121498A (ja) * | 2001-10-09 | 2003-04-23 | Sony Corp | スキャンパス回路、集積回路及び集積回路の検査方法 |
US6701505B1 (en) * | 2001-11-30 | 2004-03-02 | Sequence Design, Inc. | Circuit optimization for minimum path timing violations |
US6745359B2 (en) * | 2002-06-06 | 2004-06-01 | Logicvision, Inc. | Method of masking corrupt bits during signature analysis and circuit for use therewith |
US7234092B2 (en) * | 2002-06-11 | 2007-06-19 | On-Chip Technologies, Inc. | Variable clocked scan test circuitry and method |
US20040139377A1 (en) * | 2003-01-13 | 2004-07-15 | International Business Machines Corporation | Method and apparatus for compact scan testing |
US7058869B2 (en) * | 2003-01-28 | 2006-06-06 | Syntest Technologies, Inc. | Method and apparatus for debug, diagnosis, and yield improvement of scan-based integrated circuits |
ATE400845T1 (de) * | 2003-02-13 | 2008-07-15 | Mentor Graphics Corp | Komprimieren von testantworten unter verwendung eines kompaktors |
US7509550B2 (en) * | 2003-02-13 | 2009-03-24 | Janusz Rajski | Fault diagnosis of compressed test responses |
US7032148B2 (en) * | 2003-07-07 | 2006-04-18 | Syntest Technologies, Inc. | Mask network design for scan-based integrated circuits |
US7512851B2 (en) * | 2003-08-01 | 2009-03-31 | Syntest Technologies, Inc. | Method and apparatus for shifting at-speed scan patterns in a scan-based integrated circuit |
US7155648B2 (en) * | 2003-09-19 | 2006-12-26 | Intel Corporation | Linear feedback shift register reseeding |
US7055077B2 (en) * | 2003-12-23 | 2006-05-30 | Kabushiki Kaisha Toshiba | Systems and methods for circuit testing |
US7729884B2 (en) * | 2004-03-31 | 2010-06-01 | Yu Huang | Compactor independent direct diagnosis of test hardware |
US7231570B2 (en) * | 2004-05-26 | 2007-06-12 | Syntest Technologies, Inc. | Method and apparatus for multi-level scan compression |
US7395473B2 (en) * | 2004-12-10 | 2008-07-01 | Wu-Tung Cheng | Removing the effects of unknown test values from compacted test responses |
US7487420B2 (en) * | 2005-02-15 | 2009-02-03 | Cadence Design Systems Inc. | System and method for performing logic failure diagnosis using multiple input signature register output streams |
US8161338B2 (en) * | 2005-10-14 | 2012-04-17 | Mentor Graphics Corporation | Modular compaction of test responses |
US7415678B2 (en) * | 2005-11-15 | 2008-08-19 | Synopsys, Inc. | Method and apparatus for synthesis of multimode X-tolerant compressor |
CN102129031B (zh) * | 2006-02-17 | 2015-03-11 | 明导公司 | 多级测试响应压缩器 |
TW200824386A (en) * | 2006-07-12 | 2008-06-01 | Qualcomm Inc | Method and apparatus for optimization of sigcomp UDVM performance |
US7882409B2 (en) * | 2007-09-21 | 2011-02-01 | Synopsys, Inc. | Method and apparatus for synthesis of augmented multimode compactors |
-
2008
- 2008-10-31 US US12/263,198 patent/US7882409B2/en active Active
-
2009
- 2009-08-31 CN CN200980000168XA patent/CN101849192B/zh active Active
- 2009-08-31 CN CN2009201780429U patent/CN201867811U/zh not_active Expired - Lifetime
- 2009-08-31 TW TW98129298A patent/TWI471746B/zh active
- 2009-08-31 WO PCT/US2009/055541 patent/WO2010062431A1/en active Application Filing
-
2010
- 2010-12-22 US US12/976,042 patent/US8103926B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101849192B (zh) * | 2008-10-31 | 2013-10-02 | 新思科技有限公司 | 增强型多模式压缩器的合成方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101849192A (zh) | 2010-09-29 |
TWI471746B (zh) | 2015-02-01 |
US20110093752A1 (en) | 2011-04-21 |
CN101849192B (zh) | 2013-10-02 |
US20090083597A1 (en) | 2009-03-26 |
US7882409B2 (en) | 2011-02-01 |
TW201022979A (en) | 2010-06-16 |
WO2010062431A1 (en) | 2010-06-03 |
US8103926B2 (en) | 2012-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN201867811U (zh) | 数据处理设备 | |
JP4791954B2 (ja) | コンパクタを使用する試験応答の圧縮 | |
Goldstein | Controllability/observability analysis of digital circuits | |
US8707227B2 (en) | Method and apparatus for synthesis of multimode x-tolerant compressor | |
Narayanan et al. | Optimal configuring of multiple scan chains | |
US7949921B2 (en) | Method and apparatus for synthesis of augmented multimode compactors | |
Stroud | Reliability of majority voting based VLSI fault-tolerant circuits | |
Czysz et al. | Deterministic clustering of incompatible test cubes for higher power-aware EDT compression | |
Chakrabarty et al. | Test response compaction using multiplexed parity trees | |
CN104122497B (zh) | 集成电路内建自测试所需测试向量的生成电路及方法 | |
Papachristou et al. | Test synthesis in the behavioral domain | |
Biswas et al. | Space compactor design in VLSI circuits based on graph theoretic concepts | |
Wang et al. | X-block: An efficient LFSR reseeding-based method to block unknowns for temporal compactors | |
Li et al. | Area-efficient high-coverage LBIST | |
Bernasconi et al. | Testability of switching lattices in the stuck at fault model | |
Das | Getting errors to catch themselves-self-testing of VLSI circuits with built-in hardware | |
Das | Self-testing of cores-based embedded systems with built-in hardware | |
Kim et al. | Hierarchical test compression for SOC designs | |
Karthy et al. | Optimized counting threshold Built-in redundancy analysis for memories | |
Doshi | Independence fault collapsing and concurrent test generation | |
Li et al. | Exploiting BIST approach for two-pattern testing | |
Serra et al. | One-Dimensional Linear Hybrid Cellular Automata: Their Synthesis, Properties and Applications to Digital Circuits Testing | |
Distante | Behavioral Testing of Programmable Systems | |
Sikdar et al. | Generation of test patterns without prohibited pattern set | |
Bhatt | Implementation of a testability analysis procedure for LSI/VLSI circuits |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |