CN1993625A - 扫描可测试逻辑电路 - Google Patents

扫描可测试逻辑电路 Download PDF

Info

Publication number
CN1993625A
CN1993625A CNA200580026247XA CN200580026247A CN1993625A CN 1993625 A CN1993625 A CN 1993625A CN A200580026247X A CNA200580026247X A CN A200580026247XA CN 200580026247 A CN200580026247 A CN 200580026247A CN 1993625 A CN1993625 A CN 1993625A
Authority
CN
China
Prior art keywords
latch
circuit
input
combinational logic
data
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.)
Pending
Application number
CNA200580026247XA
Other languages
English (en)
Inventor
F·J·特比斯特
A·M·G·彼得斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1993625A publication Critical patent/CN1993625A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318583Design for test
    • G01R31/318586Design for test with partial scan or non-scannable parts

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

逻辑电路,包含:至少第一组合逻辑电路42;具有数据输入d和数据输出q的第一数据锁存器44,所述数据输出q被连接到所述第一组合逻辑电路42的输入;第二可扫描数据锁存器43,具有连接到所述第一数据锁存器44的数据输入d的输出q;第三可扫描数据锁存器47,具有连接到所述第一组合逻辑电路42的输出的输入d,其中第二可扫描数据锁存器43适合于由第一时钟clk1驱动,第一数据锁存器44和第三可扫描数据锁存器47适合于由第二时钟clk2驱动,第一和第二时钟clk1和clk2是非重叠时钟信号。

Description

扫描可测试逻辑电路
本发明涉及一种扫描可测试(scan-testable)逻辑电路以及一种用于测试扫描可测试逻辑电路的方法。
美国专利3,761,695最初公开了如图1描绘的根据LSSD-设计规则的传统电路设计。LSSD表示电平敏感扫描设计。该电路包含两种不同种类的锁存器14和16。锁存器16是常规的d锁存器。D锁存器具有一个输入d(数据输入)和一个输出q(数据输出)。此外,d锁存器16具有图1中称为clk2的时钟输入。只要时钟输入clk2为低,输出q就不呈现图1中在d锁存器16输入d上的值。该锁存器是“不透明的”,并且来自于锁存器16的输出q保持不变。如果时钟输入clk2为高的状态,则D锁存器就变得“透明”。在这种情况下,输出q呈现d锁存器输入d处的值。这样,经由d锁存器的信息传递与时钟clk2的电平同步。
图1中的锁存器14是可扫描的或可测试的锁存器。这意味着为了测试,信息可以被从外部引入到所述锁存器。锁存器14还具有图1中的d输入(数据输入),输出q和称为clk1的时钟输入。此外,锁存器14包含输入ti和输入te。te表示测试使能,ti表示测试输入。只要到可扫描锁存器的测试使能输入te为低状态,图1中的锁存器14与图1中锁存器16的作用正好相同。只要测试使能输入te为低,到锁存器14的输入ti对锁存器14的输出q就没有影响。一旦测试使能te为高状态,则仅测试输入ti可以被锁存到输出q。这样,信息可以从外部源引入到锁存器14。
图1中的参考符号10和12指组合逻辑电路。PI表示到组合逻辑电路10的信息输入,参考符号PO表示来自于图1中组合逻辑电路12的信息输出。图1中的时钟clk1和clk2是非重叠时钟。这意味着只有当时钟2为低,则时钟1为高,反之亦然。图1中的锁存器14和16代表移位寄存器。信息通过锁存器14和16顺序地转移。
图1中的参考符号10和12代表组合逻辑电路。组合逻辑元件是具有特征为离散状态的至少一个输出信道和一个或多个输入信道的装置,以致于在任何瞬时,每个输出信道的状态完全地由相同瞬时的输入信道的状态确定。与此相反,时序逻辑电路是采用一个或多个输入和一个或多个输出的电路设计,它们的状态与定义的规则有关,所述规则部分地取决于先前的状态。时序电路的输出取决于当前输入和先前的输入。通过将组合逻辑电路的输出反馈回到它的输入,组合逻辑电路被变成时序电路。输出状态取决于输入的先前状态。
逻辑系统的功能单元由组合以及时序电路组成。尽管计算程序对用于组合电路的计算测试以及测试模式(test pattern)是可用的,但是这种程序用于时序电路是困难的,并且对于复杂时序逻辑电路产生测试模式的问题还没有发现通用的解决方案。因此,有必要的是,应该有效地将逻辑系统中的所有时序电路简化为组合电路,从而在电路网络上实现测试程序。这可以传统地通过将锁存器14和16插入到图1的电路中实现。为了测试模式1中的组合逻辑电路10,必须在预定时间点已知到组合逻辑电路的输入,并且必须同时测量输出。组合逻辑电路10的输入包含输入PI,其可以被外部限定,以及由反馈回路提供的输入。反馈输入通过经由锁存器14将测试输入转移到锁存器16而被限定。当时钟2为低,时钟1为高时,锁存器16的输出是到组合逻辑电路10的输入。在这种情况下,锁存器14的测试使能输入变为低,以致于组合逻辑电路的输出是进入锁存器14的输入。锁存器14的输出代表对于预定输入的组合逻辑10的响应。这样,组合逻辑电路代表可以被测试的子系统。此外,为了测试,锁存器14和16可以被用于限定在另一时间点上到组合逻辑电路12的输入。组合逻辑电路12代表逻辑子系统,其输出可以直接地在输出PO上被测量。
图1中的电路代表电平敏感逻辑系统。如果并且只有当对于任何允许的输入状态改变的稳态响应不依赖于电路和系统内的线延迟时,逻辑系统是电平敏感的。而且,如果输入状态改变包括多于一个输入信号的改变,则响应一定不依赖于它们改变的顺序。稳态响应是所有逻辑门输出,特别是诸如触发器或反馈回路等内存储器元件输出的终值。假定电平敏感系统以改变之间具有足够时滞的允许的输入状态改变的序列的结果操作,从而允许该系统稳定在新的内状态。术语“允许的输入状态改变”暗示着对于输入改变的限制。这些限制几乎专门地应用于信号中的系统时钟。
图1中的电路代表根据上述定义限定的电平敏感扫描设计。时钟信号clk1和clk2具有设定锁存器14和16的足够长的持续时间。时钟信号clk1和clk2的高相位必须对改变存储在所述锁存器中的值是足够的。此外,在时钟信号clk1和clk2的高到低转变之前的时间间隔必须足够允许所有锁存器改变,从而穿过由反馈连接激活的组合逻辑电路。这样一种操作满足对于电平敏感系统的要求,并且确保了对电路参数最小的依赖。
图1中的电路是电平敏感逻辑系统的实例。图1的电路是时序逻辑系统。图1的时序逻辑电路以这样的一种方式设计,即可以通过利用对于组合逻辑网络自动产生的测试模式测试它的组合逻辑子系统来测试它。因此,时序测试产生的问题可以被简化为组合测试生成问题。可以仅利用组合模式测试的时序逻辑电路可以通过按照下面的规则设计。
到电路的组合子系统的输入或者必须直接地由数据输入PI控制,或者它必须由如图1中锁存器14和16构成的移位寄存器(srl)的输出控制。移位寄存器的d锁存器连接到组合子系统的输入。此外,组合逻辑子系统的输出或者必须直接地可观察,或者从如图1中锁存器14和16构成的移位寄存器的输入可观察。在闭环的情况下,移位寄存器可以被用于控制输入以及观察如图1中示出的组合网络的输出。这样,组合逻辑系统可以彼此独立地测试。
图2示出了一个传统的L1L2电路。该电路设计最初公开在美国专利4,293,919中。电路以这样一种方式设计,即它可以仅利用组合测试模式进行测试。该设计不同于根据上面用于LSSD电路的规则的设计。图2的电路包含三个组合逻辑电路10,22,26。组合逻辑电路10具有一个输出,其经由锁存器14和16与它的输入连接。因此,组合电路10,锁存器14,16,以及组合电路12相应于图1中的电路构造。图2的电路由于组合逻辑电路22和26不同于图1中的电路。组合逻辑电路22的输出经由锁存器24被连接到组合逻辑电路26的输入。组合逻辑电路26的输出经由锁存器28被连接到组合逻辑电路22的输入。请注意,图2电路的新的底部部分构成了闭环。组合逻辑电路22和26是闭环的一部分。让我们考虑,为了相应于上面解释的LSSD设计规则,图2的电路将必须如何被修改。
由于包含组合逻辑电路22和26的闭环,图2电路的较低部分构成了时序逻辑电路。根据LSSD设计规则,这样一种时序电路通过在闭环内插入移位寄存器锁存器而变得可测试。图1的移位寄存器必须连接到组合逻辑电路22的输出。移位寄存器被用来控制组合逻辑电路26的输入。组合逻辑电路26的另一个输入可以由输入PI控制。此外,相应的锁存器对必须观察组合逻辑电路26的输出,以及控制到组合逻辑电路22的反馈输入。因此,图2中的电路将包含如图1的一对锁存器14和16,相应地代替锁存器24和28。图2的电路明显地较不复杂,因为它包含比由LSSD设计规则需要的更少的锁存器。该电路包含两个可扫描锁存器24和28,其由不同的时钟clk1和clk2驱动。
组合逻辑电路26可以以下面的方式测试。到组合逻辑电路26的输入由输入PI以及锁存器24的输出直接地控制。锁存器24的输出可以由测试输入ti和锁存器24的测试使能输入从外部控制。在时钟clk1的高相位期间,输入改变。在锁存器28中时钟clk2的直接后续的高相位期间,组合逻辑电路26的输出是到锁存器28的输入。在这种情况下,锁存器28的测试使能信号为低。这样,对预定输入的组合逻辑电路26的反应可以被测试。组合逻辑电路22的测试相应地工作。在这种情况下,锁存器28和24改变角色。锁存器28被用于控制组合逻辑电路22的输入,锁存器24接收来自于组合逻辑电路22的输出。此外,到组合逻辑电路22的输入由图2中锁存器16的输出限定。
请注意,图2中锁存器16不是冗余的。图2中的组合逻辑电路10仅利用锁存器14不被测试。原因在于,组合逻辑电路10的输出驱动组合逻辑电路10的输入。如果组合逻辑电路的输入仅由锁存器14限定,那么在没有立即改变到电路10的输入的情况下,电路10的后续输出就不可能是到锁存器14的输入。如果锁存器14的时钟为高,则到锁存器14的输入不会立即被转移到它的输出并从而驱动逻辑电路10的输入。逻辑电路10的输入在测试期间不会具有预定状态。
图3示出了图2的改进。图2和3中相同的组件由相同的附图标记描绘。相比较图2的电路,唯一差别在于包含在图3电路中的附加连接32和30。图3中的组合逻辑电路10具有三个输入。附加输入30由锁存器28的输出驱动。锁存器28是可扫描的。因此,到组合逻辑电路10的输入可以由锁存器28,16控制,并且在时钟clk2的高相位期间由输入PI控制。为了将逻辑电路的测试简化成组合逻辑电路的测试,构成被测试逻辑电路的每个组合逻辑电路的输入和输出信号必须在预定时间段期间是可控制的。通过测试组合逻辑电路,电路作为一个整体被测试,该组合逻辑电路是逻辑电路的组成部分。用于组合测试的逻辑电路设计的L1L2设计规则可以以下述方式总结:
在组合逻辑电路包含输入和/或输出,其不被从外部控制的情况下,这些输入和输出必须连接到一个锁存器。控制输入的锁存器和接收特定组合逻辑电路输出的锁存器必须由不同的、非重叠时钟驱动。两个相邻的锁存器必须由不同的,非重叠时钟驱动。后续的锁存器(从锁存器)可以是非可扫描数据锁存器(d锁存器)。否则,锁存器必须是可扫描锁存器。例如,在图1中锁存器16由锁存器14驱动。因此,锁存器16可以是简单的非可扫描数据锁存器(d锁存器)。
图4a示出了已经被做成扫描可测试的实例电路。图4a的电路包含两个组合逻辑电路40和42。两个逻辑电路均具有两个输入和一个单独的输出。此外,图4a的电路具有三个非可扫描数据锁存器44,46和48。为了此讨论,假设这些锁存器的时钟信号还没有被选择,并且没有由电路的函数运算规定。组合逻辑电路40的输出经由锁存器44被提供给组合逻辑电路40的输入。组合逻辑电路40的第二输入由数据锁存器48控制。为了使得组合逻辑电路40根据上面提到的L1L2设计规则进行扫描可测试,组合逻辑电路的输入和输出必须对于预定时间段是可控制的。环绕锁存器44和组合逻辑电路40的图4a中的闭环相应于存在于图1中的闭环和图2中的上部。根据L1L2设计规则,两个锁存器必须存在于该闭环中。因此,可扫描锁存器43被插入到图4b的电路中。锁存器43和44由不同的非重叠时钟信号时钟1和时钟2驱动。在时钟1的高相位期间,当组合逻辑电路40的输出是到锁存器43的输入时,到由锁存器44的输出所驱动的组合逻辑电路40的输入保持不变(时钟2为低)。组合逻辑电路40的输出可以被记录在锁存器43中,同时,组合逻辑电路40的上面输入具有限定的值。组合逻辑电路40的下面输入可以由图4b中的可扫描锁存器47驱动。
一对锁存器47和48必须用在如图4b显示的情况下。原因在于,根据上面的设计规则,没有两个锁存器可以彼此跟随,其由相同的时钟定时。如果仅锁存器47存在于图4b的较低线中,该要求不能被实现。如果锁存器47由clk1定时,则锁存器47和43将具有相同的时钟信号。这被禁止。如果,另一方面,锁存器47具有时钟2,则锁存器44和47将具有相同的时钟信号。这也被禁止。因此,第二锁存器48必须被插入到如图4b中所示的电路中。
为了测试组合逻辑电路42,电路的输入和输出必须在预定时间段期间被控制。组合逻辑电路42的下面输入可以由也用于测试组合逻辑电路40的锁存器44控制。组合逻辑电路42的输出由锁存器47观察,该锁存器也被用于控制锁存器48的输入。为了测试,仅组合逻辑电路42的上面输入保持而被控制。为此,可扫描锁存器45将被插入到图4b的电路中。但是,在这种情况下,锁存器对45和46也必须被用在电路中。原因在于,单独的锁存器靠近于由时钟2驱动的锁存器44和由时钟1驱动的锁存器47。因此,L1L2设计规则需要如图4b中显示的电路构造。
在该特定实例中,L1L2测试相比于常规的LSSD测试不具有优势。通常,当电路包含较少的小反馈回路并且包含更多的管线结构时,由L1L2测试获得的优势变得更高。具体地,握手控制电路典型地包含许多这种小的反馈回路。这降低了L1L2最优化胜于LSSD最优化的影响。图4b的实例显示出,甚至L1L2设计规则可能产生具有相当大量的附加锁存器的电路设计。为了使得图4a的电路根据L1L2设计规则可测试,三个附加的锁存器必须被引入。因此,电路的面积和功率消耗变高,并且速度相对较低。
本发明的目的是提供逻辑电路,其快速,更小,并且具有相比较传统扫描可测试电路具有降低的功率消耗。此外,目的是提供一种测试方法,其允许根据本发明的逻辑电路的扫描测试。
该目的通过根据所附权利要求1的逻辑电路解决。根据本发明的逻辑电路包含第一组合逻辑电路。逻辑电路还包含具有数据输入和数据输出的第一数据锁存器。第一数据锁存器的数据输出被连接到第一组合逻辑电路的输入。逻辑电路还包含具有一个输出的第二可扫描数据锁存器,其被连接到第一数据锁存器的数据输入。第一和第二数据锁存器形成一对锁存器(例如,象图1中的锁存器)。逻辑电路还包含具有一个输入的第三可扫描数据锁存器,其被连接到第一组合逻辑电路的输出。第二可扫描数据锁存器适合于由第一时钟驱动。第一数据锁存器以及第三可扫描数据锁存器适合于由第二时钟驱动。第一和第二时钟是非重叠时钟信号。请注意,该电路并不符合L1L2设计规则。第一和第三数据锁存器由相同的时钟信号驱动,尽管它们彼此邻近。这是根据上面给出的第二L1L2设计规则所禁止的。然而,根据本发明的逻辑电路是扫描可测试的。
根据本发明的逻辑电路可以以下述方式测试:首先,测试数据是进入第二可扫描数据锁存器的输入。这在第一时钟的高相位期间作出。该数据是到第二可扫描数据锁存器的输入。在这种情况下,第二可扫描数据锁存器的测试使能输入被这样驱动,即第二可扫描数据锁存器接收来自于测试输入的数据。一旦第一时钟为低,测试数据是从第二数据锁存器的输出可恢复的。因为时钟1和2是非重叠的,因此在第一时钟的低相位期间,第二时钟具有高相位。在这种情况下,逻辑电路的第一数据锁存器是透明的。因此,在第二数据锁存器输出的测试数据被立即传递到要被测试的第一组合逻辑电路的输入。第一数据锁存器是冗余的。尽管锁存器会表示逻辑延迟,但是它不会干扰测试。在第二时钟信号的相邻高相位期间,第一组合逻辑电路由第二可扫描数据锁存器驱动。同时,也就是,在第二时钟信号的相邻高相位期间,要测试的第一组合逻辑电路的输出可以存储在第三可扫描数据锁存器中。
尽管在第一组合逻辑电路的测试期间,第一数据锁存器是冗余的,该锁存器的提供能够减少测试所需要的锁存器数量。这对于图4b中的电路是特别正确的。具体的,如果第一和第二锁存器是包含单独的附加组合逻辑电路的闭环的一部分,那么附加第二组合逻辑电路仅可以利用第一和第二数据锁存器进行测试。第一数据锁存器对于测试第二组合逻辑电路是必须的。当第一组合逻辑电路被测试时,第一数据锁存器是冗余的。由于两个组合逻辑电路都需要被测试,因此第一数据锁存器是电路中必要的组件。但是如果如图5中锁存器47由时钟2定时,则锁存器46和48可以从图4b的电路中删除。用时钟2定时锁存器47仅在时钟信号不是由电路的功能需求规定的情况被允许。对于握手电路,通常不是这种情况,并且建议的方法是有效的。然而,对于传统的同步电路,通常时钟信号经常已经确定,并且建议的方法不能被使用。
根据权利要求1的电路设计允许更多的伪锁存器从电路中被除去。这对于握手电路是特别相关的,同步交换电路由于它们大量的短反馈回路是已知的。根据本发明的电路设计和测试方法可以在握手电路中实现。握手电路设计对于数字Ic是逐渐相关的。该技术的主要特征是它们的低功率和低电磁发射特性。
由于根据本发明的电路设计的最优化可以被用于减少基于锁存器电路的从锁存器(非可扫描锁存器)的数量。这会减少电路面积,增加它的速度,并且还减少功率消耗。该好处对于包含许多小反馈回路的电路是最大的。
本发明优选的实施例参考下面的附图进行描述。
图1示出了符合电平敏感扫描设计(LSSD)的传统逻辑电路。
图2示出了传统的逻辑电路,其符合L1L2扫描设计。
图3是另一传统逻辑电路,其符合传统的L1L2扫描设计规则。
图4a是传统的逻辑电路,其利用传统的LSSD或L1L2扫描设计测试不被测试。
图4b是图4a的改进,其符合LSSD以及L1L2扫描设计。
图5示出了根据本发明的逻辑电路的第一实施例。
图6示出了根据本发明的逻辑电路的第二实施例。
图7a示出了用于产生时钟信号的传统电路。
图7b示出了由该电路产生的时钟信号。
图8a示意地示出了根据本发明的扫描可测试电路的一部分。
图8b示出了出现在该电路部分的信号。
图9a示出了用于产生时钟信号的改进电路。
图9b示出了由该电路产生的时钟信号。
图10示出了用于产生时钟信号的另一个改进电路。
图5中示出的本发明的实施例构成了图4a电路的扫描可测试改进。
请注意,图5的电路仅包含四个锁存器43,44,45和46,然而,根据图4b中技术状态的扫描可测试电路包含6个锁存器。在图5的电路和图4b的电路之间,至关重要的差别在于锁存器43,44,47以及组合逻辑电路42的构造。在这些组件的配置之间,仅有的差别在于锁存器47的定时。图5中的锁存器47由时钟2定时,然而,图4b中的锁存器47由时钟1定时。根据技术状态的L1L2设计规则,锁存器47可以由与锁存器44不相同的时钟控制。根据本发明的逻辑电路,如果时钟clk1和clk2是非重叠时钟,则这样一种构造是明确地允许的。锁存器44在组合逻辑电路42测试期间是冗余的。由于锁存器44在时钟2的高相位期间是透明的,所以由时钟1定时的锁存器43的输出在时钟2的高相位期间被传递到组合逻辑电路42的输入。因此,逻辑门42的下面输入可以方便地利用可扫描锁存器43限定。图5b中的组合逻辑电路42的上面输入被连接到另一个可扫描锁存器45。在时钟2的高相位期间锁存器45的输出等于存储在可扫描锁存器45中的信息。因此,到组合逻辑电路42的数据输入可以在时钟2的高相位期间为了测试而被限定。在时钟2的高相位期间,组合逻辑电路的输出是在时钟2的高相位期间到可扫描锁存器47的输入。如果可扫描锁存器47的测试使能输入(te)禁用测试输入(ti)并使能可扫描锁存器47的通常数据输入d,这被完成。这样,组合逻辑电路42可以根据本发明被测试。
请注意,图5的电路另外实现了传统的L1L2扫描设计规则。由图5中组合逻辑电路40,锁存器43以及锁存器44构成的闭环是图1中电路的实现。由组合逻辑电路40,锁存器43,44和45,组合逻辑电路42以及锁存器47构成的闭环符合L1L2扫描设计规则。邻近的锁存器通常由不同时钟定时。在闭合电路中不会有两个相邻锁存器由相同的时钟定时。
图6示出了本发明的第二实施例。图6的电路包含两个部分。第一部分包含通过绘制的直线彼此连接的所有组件。电路的该部分完全相应于图3的传统电路。电路的第二部分包含通过虚线彼此连接的那些部分。这些连接根据传统设计规则被禁止,但是它们对于本发明的电路是允许的。
在图3中,锁存器16的输出被连接到组合逻辑电路10和22,但是锁存器16的输出没有连接到组合逻辑电路26。对于此的原因在于,锁存器28和16由相同的时钟2驱动。如果锁存器16与组合逻辑电路26的输入连接,则锁存器16和18将被认为彼此邻近。根据传统的设计规则,邻近的锁存器不可以由相同的时钟定时。另一方面,在图6中,锁存器16的输出与组合逻辑电路26的输入连接。本发明明确地允许这样一种连接。图6中锁存器14,16,组合逻辑电路26和锁存器28的构造相应于图5中锁存器43,44,组合逻辑电路42和锁存器47的构造。此外,组合逻辑电路60,锁存器62和锁存器64被提供在图6的电路中。这些新组件的构造相应于如图6中所示的电路上面部分中的组合逻辑电路10,锁存器14和锁存器16的构造,就一个例外:相应于锁存器14的锁存器62由时钟2而不是时钟1定时,相应于锁存器16的锁存器64由时钟1而不是时钟2定时。锁存器64的输出被连接到每个组合逻辑电路(10,22,26和60)的输入。而且,锁存器16的输出被连接到图6中每个组合逻辑电路的输入。根据本发明,诸如锁存器对14,16或锁存器对62,64的锁存器对的输出可以不考虑连接到这些组合逻辑电路输出的锁存器,而被连接到组合逻辑电路的输入。如在图6中可见的,相比较根据图3中技术状态的可测试电路,本发明的逻辑电路允许一些更多的连接。
在图7a中,示出了产生非重叠时钟信号的传统电路。例如,这样一种电路从在Carver A.Mead and Lynn A.Conway,editors,Introduction to VLSI systems,chapter7.Addison-Wesley,1980中的Charles L.Seitz system timing(系统定时)是已知的。
该电路基于与确定非重叠周期的持续时间的延迟元件(d1和d2)结合的交叉耦合的或非门71,71对。该电路由确定时钟周期的外部参考时钟控制。
锁存器时钟信号clk1和clk2的上升沿由延迟元件d1,d2延迟;下降沿直接跟随参考时钟。由延迟元件引入的延迟必须是时钟频率的分数(fraction),实际上低于时钟周期的25%。
根据本发明,测试逻辑电路的方法允许在根据不同时钟操作的两个主锁存器之间存在冗余从锁存器。从锁存器85必须由与如在图8a中示出的接收主锁存器87相同的时钟clk1定时。该从锁存器85对于从主锁存器84到主锁存器87的这个路径是冗余的,但是它的存在对于通过该电路的不同路径的测试是需要的。如所示,从锁存器可以驱动根据clk1定时的主锁存器以及根据clk2定时的主锁存器,允许最小化从锁存器总数的在clk1和clk2中的分割。只要所有的扫描元件是锁存器,该系统保证工作。然而,如果接收主锁存器是如图8中的扫描C元件,则必须满足附加要求。该要求是,C元件87的输入必须是稳定的,并且在它的时钟输入为高的全部时间期间保持稳定。在该时间期间,C元件87表现为常规非扫描C元件,并且在它的输入上改变的效果立即更新元件的内部状态。
问题示出在图8b中。图8a的电路通过扫描链初始化(未在图中显示),以致于:x=0,y=c=1并且z=0。为了准确的操作,C元件必须在clk1变得有效的时候,在它的输入c上看见x的值。因此,准确的行为将是首先传播x到c,导致c=0,接着使能C元件87的时钟,并且因为d=1和c=0,z应该保持低。然而,图8b中电路的实际行为是同时定时从锁存器85和C元件87。在这种情况下,当c仍为高时,C元件87被启用,因此输出z也将变高。当在逻辑延迟后c变低时,输出保持为高,因为C元件87的内部状态被更新。对于该问题的解决办法是将用于从锁存器的时钟信号从用于扫描C元件的时钟信号分离。对于C元件的时钟上升沿必须关于从锁存器的时钟上升沿延迟。在对于C元件的时钟仍无效时,这将允许信号通过从锁存器传播到扫描C元件的输入。图9a中示出了用于该目的的合适时钟发生器的实际实施例。图9b示出了定时图表。
代替增加另一组延迟元件从而获得该行为,图9a的设计再利用已经存在的延迟元件d1,d2。用来引起非重叠周期的相同延迟元件d1,d2也被用来获得对于C元件的进一步延迟的时钟信号clk1c,clk2c。关于参考时钟的有效沿,常规的时钟信号clk1,clk2由一个延迟元件延迟,并且对于C元件的时钟clkc1,clkc2由两个延迟元件延迟。利用该时钟发生器,只要逻辑延迟小于时钟发生器中延迟元件的延迟,电路将正确地操作。
对于C元件的新时钟由与门93,94生成,该与门具有连接到初始时钟的一个输入和到该时钟延迟版本的另一个输入。仅仅上升沿被延迟。由于下降沿不被允许扩展超过初始的下降沿,其将减少时钟信号的非重叠周期(例如在clk2c和clk1之间),所以下降沿保持相同。
为了启用在握手电路中的使用,所希望的是,在电路中支持两个更多的功能。二者可以容易地集成在如图10示出的建议的时钟发生器中。
对于异步模式的支持通过使得两个时钟信号有效而完成。增加新的控制信号“TestMode”,其控制两个与门107,108,这两个与门被用来当“TestMode”为低时(指示异步电路操作),强制电路的L1和L2部分为高。用于测试模式的与门107,108可以与交叉耦合的或非门101,102组合。
集成多路分解。用到的扫描C元件需要LSSD风格的时钟信号。这意味着取决于扫描输入(时钟clk1cs,clk2cs)或者常规数据输入(时钟clk1cen,clk2cen)是否必须由元件捕获,两个分离的时钟被采用。
产生正常模式使能信号clk1cen,clk2cen的多路分解器的与门103,104与用于C元件时钟的与门组合成3输入与门。产生用于扫描转移的另外两个时钟信号clk1cs,clk2cs的与门105,106不需要第三个输入,因为在扫描转移期间描述在段落3的问题可能从未出现。
应该注意的是,本发明的保护范围不限于这里描述的实施例。本发明保护的范围也不受到权利要求中附图标记的限制。单词“包含”不排除除了权利要求中提到的其它部件。元件前的单词“一个”不排除若干这种元件。本发明在于每个新的特征或者这些特征的组合。

Claims (6)

1.逻辑电路,包含:
-至少第一组合逻辑电路(42),
-具有数据输入(d)和数据输出(q)的第一数据锁存器(44),所述数据输出(q)被连接到所述第一组合逻辑电路(42)的输入,
-第二可扫描数据锁存器(43),具有连接到所述第一数据锁存器(44)的数据输入(d)的输出(q),以及
-第三可扫描数据锁存器(47),具有连接到所述第一组合逻辑电路(42)的输出的输入(d),
其中,第二可扫描数据锁存器(43)适合于由第一时钟(clk1)驱动,第一数据锁存器(44)和第三可扫描数据锁存器(47)适合于由第二时钟(clk2)驱动,第一和第二时钟(clk1和clk2)是非重叠时钟信号。
2、根据权利要求1的逻辑电路,其中连接到组合逻辑电路(42)的输入的第一数据锁存器(44)是非可扫描数据锁存器。
3、根据权利要求2的逻辑电路,其中第一数据锁存器(44)的输出(q)被连接到第二组合逻辑电路(40)的输入,并且第二组合逻辑电路(40)具有连接到第二可扫描数据锁存器(43)的数据输入(d)的输出。
4、根据权利要求1,2或3的逻辑电路,还包含:
-第四数据锁存器(45),具有连接到第一组合逻辑电路(42)的输入的输出(q),其中第四数据锁存器(45)适合于由第一时钟信号(clk1)驱动。
5、根据权利要求4的逻辑电路,其中第四数据锁存器(45)的数据输入(d)被连接到第一数据锁存器(44)的数据输出(d)。
6、用于测试根据上述任一权利要求的逻辑电路的第一组合逻辑电路的方法,包含以下步骤:
-在第一时钟(clk1)的高相位期间,经由测试输入(ti)将测试数据输入到第二可扫描数据锁存器(43),
-在第二时钟(clk2)的随后高相位期间,将测试数据传递到第一组合逻辑电路,
-在第二时钟(clk)的随后高相位期间,将第一组合逻辑电路的输出存储到第三可扫描数据锁存器(47),
读出存储在第三可扫描数据锁存器(47)中的信息。
CNA200580026247XA 2004-08-03 2005-07-26 扫描可测试逻辑电路 Pending CN1993625A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04103730.0 2004-08-03
EP04103730 2004-08-03

Publications (1)

Publication Number Publication Date
CN1993625A true CN1993625A (zh) 2007-07-04

Family

ID=35276164

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA200580026247XA Pending CN1993625A (zh) 2004-08-03 2005-07-26 扫描可测试逻辑电路

Country Status (5)

Country Link
US (1) US20090009210A1 (zh)
EP (1) EP1776595A1 (zh)
JP (1) JP2008509389A (zh)
CN (1) CN1993625A (zh)
WO (1) WO2006016305A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988075A (zh) * 2015-02-17 2016-10-05 飞思卡尔半导体公司 用于扫描测试的增强状态监视器
CN110988657A (zh) * 2019-12-23 2020-04-10 上海华力微电子有限公司 标准单元库的测试方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332800B2 (en) 2010-12-15 2012-12-11 Apple Inc. Method for identifying redundant signal paths for self-gating signals
US10884058B2 (en) 2017-04-18 2021-01-05 Cryptography Research, Inc. Self-test of an asynchronous circuit

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3761695A (en) * 1972-10-16 1973-09-25 Ibm Method of level sensitive testing a functional logic system
US4293919A (en) * 1979-08-13 1981-10-06 International Business Machines Corporation Level sensitive scan design (LSSD) system
JP2658903B2 (ja) * 1994-10-05 1997-09-30 日本電気株式会社 スキャンパス回路、その設計装置及びその設計方法
US5748645A (en) * 1996-05-29 1998-05-05 Motorola, Inc. Clock scan design from sizzle global clock and method therefor
US6304125B1 (en) * 1998-09-04 2001-10-16 Sun Microsystems, Inc. Method for generating and distribution of polyphase clock signals
US6651197B1 (en) * 1999-05-20 2003-11-18 Silicon Graphics, Inc. Method for determining the optimum locations for scan latches in a partial-scan IC built in self test system
JP3644853B2 (ja) * 1999-09-14 2005-05-11 富士通株式会社 半導体集積回路
US6636995B1 (en) * 2000-07-13 2003-10-21 International Business Machines Corporation Method of automatic latch insertion for testing application specific integrated circuits
US6580303B1 (en) * 2000-08-02 2003-06-17 Sun Microsystems, Inc. Datapath control circuit with adjustable delay elements
US6847247B2 (en) * 2001-11-27 2005-01-25 Sun Microsystems, Inc. Jittery polyphase clock

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988075A (zh) * 2015-02-17 2016-10-05 飞思卡尔半导体公司 用于扫描测试的增强状态监视器
CN105988075B (zh) * 2015-02-17 2019-12-20 恩智浦美国有限公司 用于扫描测试的增强状态监视器
CN110988657A (zh) * 2019-12-23 2020-04-10 上海华力微电子有限公司 标准单元库的测试方法
CN110988657B (zh) * 2019-12-23 2021-12-17 上海华力微电子有限公司 标准单元库的测试方法

Also Published As

Publication number Publication date
EP1776595A1 (en) 2007-04-25
US20090009210A1 (en) 2009-01-08
JP2008509389A (ja) 2008-03-27
WO2006016305A1 (en) 2006-02-16

Similar Documents

Publication Publication Date Title
US9535122B2 (en) Serial/parallel control, separate tap, master reset synchronizer for tap domains
KR100214239B1 (ko) 부분 스캔 패스 회로를 갖는 집적 논리 회로와 부분 스캔 패스 설계 방법
US5428622A (en) Testing architecture with independent scan paths
US8065549B2 (en) Scan-based integrated circuit having clock frequency divider
US7752513B2 (en) Method and circuit for LSSD testing
CN102183721B (zh) 多时钟域测试方法及测试电路
CN101371151B (zh) 减少的插脚计数扫描链实施方案
US7482851B2 (en) Latch and clock structures for enabling race-reduced mux scan and LSSD co-compatibility
EP1851560B1 (en) Testing of an integrated circuit with a plurality of clock domains
US5406216A (en) Technique and method for asynchronous scan design
JP3001921B2 (ja) 回路試験方法およびその試験方法に適した回路
US7222276B2 (en) Scan test circuit including a control test mode
EP0289158B1 (en) Diagnostic apparatus for a data processing system
US8015464B2 (en) Segmented scan paths with cache bit memory inputs
US7890826B2 (en) Method and apparatus for test of asynchronous pipelines
CN1993625A (zh) 扫描可测试逻辑电路
US6467044B1 (en) On-board clock-control templates for testing integrated circuits
US5329167A (en) Test flip-flop with an auxillary latch enabling two (2) bits of storage
US5793777A (en) System and method for testing internal nodes of an integrated circuit at any predetermined machine cycle
US7231567B2 (en) Method and/or apparatus for performing static timing analysis on a chip in scan mode with multiple scan clocks
US20020145458A1 (en) Clock-skew resistant chain of sequential cells
GB2221044A (en) Testing integrated circuits
JP2004233133A (ja) 集積回路、その設計システム及び設計プログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20070704