This invention relates generally to testing of integrated circuits and more particularly relates to compaction of test responses used in testing for faults in integrated circuits.
As integrated circuits are produced with greater and greater levels of circuit density, efficient testing schemes that guarantee very high fault coverage while minimizing test costs and chip area overhead have become essential. However, as the complexity of circuits continues to increase, high fault coverage of several types of fault models becomes more difficult to achieve with traditional testing paradigms. This difficulty arises for several reasons. First, larger integrated circuits have a very high and still increasing logic-to-pin ratio that creates a test data transfer bottleneck at the chip pins. Second, larger circuits require a prohibitively large volume of test data that must be then stored in external testing equipment. Third, applying the test data to a large circuit requires an increasingly long test application time. And fourth, present external testing equipment is unable to test such larger circuits at their speed of operation.
Integrated circuits are presently tested using a number of structured design for testability (DFT) techniques. These techniques rest on the general concept of making all or some state variables (memory elements like flip-flops and latches) directly controllable and observable. If this can be arranged, a circuit can be treated, as far as testing of combinational faults is concerned, as a combinational or a nearly combinational network. The most-often used DFT methodology is based on scan chains. It assumes that during testing all (or almost all) memory elements are connected into one or more shift registers, as shown in U.S. Pat. No. 4,503,537. A circuit that has been designed for test has two modes of operation: a normal mode and a test, or scan, mode. In the normal mode, the memory elements perform their regular functions. In the scan mode, the memory elements become scan cells that are connected to form a number of shift registers called scan chains. These scan chains are used to shift a set of test patterns into the circuit and to shift out circuit, or test, responses to the test patterns. The test responses are then compared to fault-free responses to determine if the circuit under test (CUT) works properly.
Scan design methodology has gained widespread adoption by virtue of its simple automatic test pattern generation (ATPG) and silicon debugging capabilities. Today, ATPG software tools are so efficient that it is possible to generate test sets (a collection of test patterns) that guarantee almost complete fault coverage of several types of fault models including stuck-at, transition, path delay faults, and bridging faults. Typically, when a particular potential fault in a circuit is targeted by an ATPG tool, only a small number of scan cells, e.g., 2-5%, must be specified to detect the particular fault (deterministically specified cells). The remaining scan cells in the scan chains are filled with random binary values (randomly specified cells). This way the pattern is fully specified, more likely to detect some additional faults, and can be stored on a tester.
These limitations of time and storage can be overcome to some extent by adopting a built-in self-test (BIST) framework as shown in
Some of the DFT techniques include compactors to compress the test responses from the scan chains. There are generally two types of compactors: time compactors and spatial compactors. Time compactors typically have a feedback structure with memory elements for storing a signature, which represents the results of the test. After the signature is completed it is read and compared to a fault-free signature to determine if an error exists in the integrated circuit. Spatial compactors generally compress a collection of bits (called a vector) from scan chains. The compacted output is analyzed in real time as the test responses are shifted out of the scan chains. Spatial compactors can be customized for a given circuit under test to reduce the aliasing phenomenon, as shown in the U.S. Pat. No. 5,790,562 and in few other works based on multiplexed parity trees or nonlinear trees comprising elementary gates such as AND, OR, NAND, and NOR gates.
Linear spatial compactors are built of Exclusive-OR (XOR) or Exclusive-NOR (XNOR) gates to generate n test outputs from the m primary outputs of the circuit under test, where n<m. Linear compactors differ from nonlinear compactors in that the output value of a linear compactor changes with a change in just one input to the compactor. With nonlinear compactors, a change in an input value may go undetected at the output of the compactor. However, even linear compactors may mask errors in an integrated circuit. For example, the basic characteristic an XOR (parity) tree is that any combination of odd number of errors on its inputs propagates to their outputs, and any combination of even number of errors remains undetected.
An ideal compaction algorithm has the following features: (1) it is easy to implement as a part of the on-chip test circuitry, (2) it is not a limiting factor with respect to test time, (3) it provides a logarithmic compression of the test data, and (4) it does not lose information concerning faults. In general, however, there is no known compaction algorithm that satisfies all the above criteria. In particular, it is difficult to ensure that the compressed output obtained from a faulty circuit is not the same as that of the fault-free circuit. This phenomenon is often referred to as error masking or aliasing and is measured in terms of the likelihood of its occurrence. An example of error masking occurs when the spatial compactor reads two fault effects at the same time. The multiple fault effects cancel each other out and the compactor output is the same as if no faults occurred.
Unknown states are also problematic for error detection. An unknown state on one or more inputs of an XOR tree generates unknown values on its output, and consequently masks propagation of faults on other inputs. A common application of space compactors is to combine the observation points inserted into the CUT as a part of design-for-testability methodology. The spatial compactors can be also used to reduce the size of the time compactors by limiting the number of their parallel inputs.
Undoubtedly, the most popular time compactors used in practice are linear feedback shift registers (LFSRs). In its basic form, the LFSR (see
The limitation of spatial compactors, such as the one shown in
An object of the invention, therefore, is to provide an efficient compactor that can select which scan chains are analyzed. This ability to select allows the compactor to generate a valid compressed output even when receiving unknown states or multiple fault effects on its inputs. The compactor can also be used diagnostically to determine the location of faults within an integrated circuit.
A compactor is disclosed that selects test responses in one or more scan chains to compact into a compressed output, while one or more other test responses are masked. Thus, test responses containing unknown states may be masked to ensure that the compactor generates a valid compressed output. Additionally, test responses can be masked to ensure fault masking does not occur. The compactor can also analyze test responses from individual scan chains to diagnostically localize faults in an integrated circuit.
A compactor includes selection circuitry that controls which scan chains are analyzed. The selection circuitry passes desired test responses from scan chains onto a compactor, while masking other test responses. In one embodiment, the selection circuitry may include an identification register that is loaded with a unique identifier of a scan chain. Based on the state of a flag register, either only the test response stored within the scan chain identified is passed to the compactor or all test responses are passed to the compactor except the test response associated with the identified scan chain.
In another embodiment, the selection circuitry includes a flag that controls whether only selected test responses are compacted or whether all test responses are compacted.
In yet another embodiment, a control register is used that individually identifies each scan chain included in compaction. In this embodiment, a variable number (e.g., 1, 2, 3, 4 . . . ) of test responses within scan chains may be included in compaction. Alternatively, the control register may store a unique identifier that is decoded to select one test response that is compacted.
In still another embodiment, the selection circuitry includes a control line that masks bits from scan chains on a per clock-cycle basis. Consequently, a test response may have only individual bits masked while the remaining bits of the test response are compacted.
The foregoing and other objects, features, and advantages of the invention will become more apparent from the following detailed description, which proceeds with reference to the following drawings.
The selector circuit 46 includes logic gates, shown generally at 68, coupled to the control register 64. The logic gates 68 are responsive to the different fields 58, 60, 62 of the control register 64. For example, the scan identification field 58 contains a sufficient number of bits to uniquely identify any of the scan chains 44. The scan identification field 58 of the control register 64 is connected to a decoder, shown at 70 as a series of AND gates and inverters. The decoder 70 provides a logic one on a decoder output depending on the scan identification field, while the other outputs of the decoder are a logic zero.
The one/not one field 60 of the control register 64 is used to either pass only one test response associated with the scan chain identified in the scan identification field 58 or pass all of the test responses except for the scan chain identified in the scan identification field. The all/not all field 62 is effectively an override of the other fields. In particular, field 62 controls whether all of the test responses in the scan chains 44 are passed to the compactor 48 or only the test responses as controlled by the scan identification field 58 and the one/not one field 60. With field 62 cleared, only test responses as controlled by the scan identification field 58 and field 60 pass to the compactor 48. Conversely, if the field 62 is set to a logic one, then all of the test responses from all of the scan chains 44 pass to the compactor 48 regardless of the scan identification field 58 and the one/not one field 60.
Referring to both
Each of the embodiments described above can be used as a diagnostic tool for localizing faults in the circuit under test. For example, each test response can be analyzed individually by masking all other test responses in the scan chains connected to the same compactor. By viewing the test response individually, the bit position in the test response containing fault effects can be determined.
Having illustrated and described the principles of the illustrated embodiments, it will be apparent to those skilled in the art that the embodiments can be modified in arrangement and detail without departing from such principles. For example, any of the illustrated compactors can be used with any of the illustrated selector circuits with minimum modification to create a selective compactor. Additionally, the selector circuit can easily be modified using different logic gates to achieve the selection functionality. For example, although the update lines are shown coupled to a separate bank of flip flops, the update lines can instead be coupled to input registers having tri-state outputs for controlling the logic in the selector circuit. Still further, although the scan chains are shown as serial shift registers, logic may be added so as to output test response data in parallel to the selective compactor. Additionally, although multiple spatial and time compactors were shown, compactors having features of both spatial and time compactors may be used. Indeed, any conventional or newly developed compactor may be used with the selection circuitry.
In view of the many possible embodiments, it will be recognized that the illustrated embodiments include only examples of the invention and should not be taken as a limitation on the scope of the invention. Rather, the invention is defined by the following claims. We therefore claim as the invention all such embodiments that come within the scope of these claims.
This application is a continuation of U.S. patent application Ser. No. 12/396,377, filed Mar. 2, 2009 now U.S. Pat. No. 7,805,649, which is a continuation of U.S. patent application Ser. No. 10/973,522, filed Oct. 25, 2004 now U.S. Pat. No. 7,500,163, which is a continuation of U.S. patent application Ser. No. 10/354,576, filed Jan. 29, 2003 now U.S. Pat. No. 6,829,740, which is a continuation of U.S. patent application Ser. No. 09/619,988, filed Jul. 20, 2000 now U.S. Pat. No. 6,557,129, which claims the benefit of U.S. Provisional Application No. 60/167,136, filed Nov. 23, 1999, all of which are hereby incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
519078 | Wilson | May 1894 | A |
713605 | Churchward | Nov 1902 | A |
3614400 | Farnett | Oct 1971 | A |
3700869 | Low et al. | Oct 1972 | A |
4024460 | Vifian | May 1977 | A |
4122399 | Heiter et al. | Oct 1978 | A |
4161041 | Butler et al. | Jul 1979 | A |
4320509 | Davidson | Mar 1982 | A |
4503537 | McAnney | Mar 1985 | A |
4513418 | Bardell, Jr. et al. | Apr 1985 | A |
4536881 | Kasuya | Aug 1985 | A |
4602210 | Fasang et al. | Jul 1986 | A |
4687988 | Eichelberger et al. | Aug 1987 | A |
4754215 | Kawai | Jun 1988 | A |
4785410 | Hamatsu et al. | Nov 1988 | A |
4801870 | Eichelberger et al. | Jan 1989 | A |
4827476 | Garcia | May 1989 | A |
4860236 | McLeod et al. | Aug 1989 | A |
4910735 | Yamashita | Mar 1990 | A |
4959832 | Bardell, Jr. | Sep 1990 | A |
4974184 | Avra | Nov 1990 | A |
5072178 | Matsumoto | Dec 1991 | A |
5090035 | Murase | Feb 1992 | A |
5138619 | Fasang et al. | Aug 1992 | A |
5167034 | MacLean, Jr. et al. | Nov 1992 | A |
5173906 | Dreibelbis et al. | Dec 1992 | A |
5202889 | Aharon et al. | Apr 1993 | A |
5258986 | Zerbe | Nov 1993 | A |
5268949 | Watanabe et al. | Dec 1993 | A |
5293123 | Jordan et al. | Mar 1994 | A |
5301199 | Ikenaga et al. | Apr 1994 | A |
5325367 | Dekker et al. | Jun 1994 | A |
5349587 | Nadeau-Dostie et al. | Sep 1994 | A |
5369648 | Nelson | Nov 1994 | A |
5394405 | Savir | Feb 1995 | A |
5412665 | Gruodis et al. | May 1995 | A |
5414716 | Bershteyn | May 1995 | A |
5416783 | Broseghini et al. | May 1995 | A |
5444716 | Jarwala et al. | Aug 1995 | A |
5446683 | Mullen et al. | Aug 1995 | A |
5450414 | Lin | Sep 1995 | A |
5524114 | Peng | Jun 1996 | A |
5533128 | Vobach | Jul 1996 | A |
5553082 | Connor et al. | Sep 1996 | A |
5574733 | Kim | Nov 1996 | A |
5586125 | Warner | Dec 1996 | A |
5588006 | Nozuyama | Dec 1996 | A |
5592493 | Crouch et al. | Jan 1997 | A |
5608870 | Valiant | Mar 1997 | A |
5612963 | Koenemann et al. | Mar 1997 | A |
5614838 | Jaber et al. | Mar 1997 | A |
5617531 | Crouch et al. | Apr 1997 | A |
5631913 | Maeda | May 1997 | A |
5642362 | Savir | Jun 1997 | A |
5668817 | Adham | Sep 1997 | A |
5680543 | Bhawmik | Oct 1997 | A |
5694401 | Gibson | Dec 1997 | A |
5694402 | Butler et al. | Dec 1997 | A |
5701308 | Attaway et al. | Dec 1997 | A |
5701309 | Gearhardt et al. | Dec 1997 | A |
5717701 | Angelotti et al. | Feb 1998 | A |
5717702 | Stokes et al. | Feb 1998 | A |
5719913 | Maeno | Feb 1998 | A |
5748497 | Scott et al. | May 1998 | A |
5761489 | Broseghini et al. | Jun 1998 | A |
5790562 | Murray et al. | Aug 1998 | A |
5790626 | Johnson et al. | Aug 1998 | A |
5812561 | Giles et al. | Sep 1998 | A |
5831992 | Wu | Nov 1998 | A |
5848198 | Penn | Dec 1998 | A |
5867507 | Beebe et al. | Feb 1999 | A |
5870476 | Fischer | Feb 1999 | A |
5872793 | Attaway et al. | Feb 1999 | A |
5883906 | Turnquist et al. | Mar 1999 | A |
5899961 | Sundermann | May 1999 | A |
5905986 | Rohrbaugh et al. | May 1999 | A |
5938784 | Kim | Aug 1999 | A |
5968194 | Wu et al. | Oct 1999 | A |
5974179 | Caklovic | Oct 1999 | A |
5974433 | Currie | Oct 1999 | A |
5983380 | Motika et al. | Nov 1999 | A |
5991898 | Rajski et al. | Nov 1999 | A |
5991909 | Rajski et al. | Nov 1999 | A |
6006349 | Fujisaki | Dec 1999 | A |
6014763 | Dhong et al. | Jan 2000 | A |
6021513 | Beebe et al. | Feb 2000 | A |
6026508 | Craft | Feb 2000 | A |
6029263 | Gibson | Feb 2000 | A |
6041429 | Koenemann | Mar 2000 | A |
6052245 | Sugawara et al. | Apr 2000 | A |
6055658 | Jaber et al. | Apr 2000 | A |
6061818 | Touba et al. | May 2000 | A |
6072823 | Takakusaki | Jun 2000 | A |
6100716 | Adham et al. | Aug 2000 | A |
6122761 | Park | Sep 2000 | A |
6141669 | Carleton | Oct 2000 | A |
6148425 | Bhawmik et al. | Nov 2000 | A |
6158032 | Currier et al. | Dec 2000 | A |
6178532 | Pierce et al. | Jan 2001 | B1 |
6181164 | Miller | Jan 2001 | B1 |
6199182 | Whetsel | Mar 2001 | B1 |
6240432 | Chuang et al. | May 2001 | B1 |
6256759 | Bhawmik et al. | Jul 2001 | B1 |
6256760 | Carron et al. | Jul 2001 | B1 |
6272653 | Amstutz | Aug 2001 | B1 |
6286119 | Wu et al. | Sep 2001 | B1 |
6300885 | Davenport et al. | Oct 2001 | B1 |
6308290 | Forlenza et al. | Oct 2001 | B1 |
6308291 | Kock et al. | Oct 2001 | B1 |
6327685 | Koprowski et al. | Dec 2001 | B1 |
6327687 | Rajski et al. | Dec 2001 | B1 |
6330681 | Cote et al. | Dec 2001 | B1 |
6353842 | Rajski et al. | Mar 2002 | B1 |
6385750 | Kapur et al. | May 2002 | B1 |
6421794 | Chen et al. | Jul 2002 | B1 |
6463560 | Bhawmik et al. | Oct 2002 | B1 |
6467058 | Chakradhar et al. | Oct 2002 | B1 |
6510398 | Kundu et al. | Jan 2003 | B1 |
6539409 | Rajski et al. | Mar 2003 | B2 |
6543020 | Rajski et al. | Apr 2003 | B2 |
6557129 | Rajski et al. | Apr 2003 | B1 |
6590929 | Williams | Jul 2003 | B1 |
6611933 | Koenemann et al. | Aug 2003 | B1 |
6618826 | Chen et al. | Sep 2003 | B1 |
6684358 | Rajski et al. | Jan 2004 | B1 |
6694466 | Tsai et al. | Feb 2004 | B1 |
6708192 | Rajski et al. | Mar 2004 | B2 |
6763488 | Whetsel | Jul 2004 | B2 |
6829740 | Rajski et al. | Dec 2004 | B2 |
6874109 | Rajski et al. | Mar 2005 | B1 |
7001461 | Taniguchi et al. | Feb 2006 | B2 |
7093175 | Rajski et al. | Aug 2006 | B2 |
7111209 | Rajski et al. | Sep 2006 | B2 |
7260591 | Rajski et al. | Aug 2007 | B2 |
7263641 | Rajski et al. | Aug 2007 | B2 |
7478296 | Rajski et al. | Jan 2009 | B2 |
7493540 | Rajski et al. | Feb 2009 | B1 |
7500163 | Rajski et al. | Mar 2009 | B2 |
7506232 | Rajski et al. | Mar 2009 | B2 |
7509546 | Rajski et al. | Mar 2009 | B2 |
7523372 | Rajski et al. | Apr 2009 | B2 |
7563641 | Wang et al. | Jul 2009 | B2 |
7653851 | Rajski et al. | Jan 2010 | B2 |
7805649 | Rajski et al. | Sep 2010 | B2 |
7805651 | Rajski et al. | Sep 2010 | B2 |
7865794 | Rajski et al. | Jan 2011 | B2 |
7877656 | Rajski et al. | Jan 2011 | B2 |
7900104 | Rajski et al. | Mar 2011 | B2 |
20020112199 | Whetsel | Aug 2002 | A1 |
20020124217 | Hiraide et al. | Sep 2002 | A1 |
20030115521 | Rajski et al. | Jun 2003 | A1 |
20030120988 | Rajski et al. | Jun 2003 | A1 |
20030131298 | Rajski et al. | Jul 2003 | A1 |
20040128599 | Rajski et al. | Jul 2004 | A1 |
20040172431 | Rajski et al. | Sep 2004 | A1 |
20050015688 | Rajski et al. | Jan 2005 | A1 |
20050097419 | Rajski et al. | May 2005 | A1 |
Number | Date | Country |
---|---|---|
0 108 256 | May 1984 | EP |
0 372 226 | Jun 1990 | EP |
0 438 322 | Jul 1991 | EP |
0 481 097 | Apr 1992 | EP |
0 549 949 | Mar 1998 | EP |
0 887 930 | Dec 1998 | EP |
1 256 008 | Nov 2002 | EP |
1 256 008 | Aug 2006 | EP |
1 722 246 | Nov 2006 | EP |
2 146 212 | Jan 2010 | EP |
63-286780 | Nov 1988 | JP |
01-239486 | Sep 1989 | JP |
03-2579 | Jan 1991 | JP |
03-012573 | Jan 1991 | JP |
4-236378 | Aug 1992 | JP |
05-215816 | Aug 1993 | JP |
05-249197 | Sep 1993 | JP |
07-174822 | Jul 1995 | JP |
07-198791 | Aug 1995 | JP |
08-015382 | Jan 1996 | JP |
9-130378 | May 1997 | JP |
11-006852 | Jan 1999 | JP |
11-030646 | Feb 1999 | JP |
11-153655 | Jun 1999 | JP |
11-174126 | Jul 1999 | JP |
11-264860 | Sep 1999 | JP |
2004-500558 | Jan 2004 | JP |
4047584 | Nov 2007 | JP |
WO 9110182 | Jul 1991 | WO |
WO 0138889 | May 2001 | WO |
WO 0138890 | May 2001 | WO |
WO 0138891 | May 2001 | WO |
WO 0138955 | May 2001 | WO |
WO 0138981 | May 2001 | WO |
WO 0139254 | May 2001 | WO |
Number | Date | Country | |
---|---|---|---|
20110138242 A1 | Jun 2011 | US |
Number | Date | Country | |
---|---|---|---|
60167136 | Nov 1999 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12396377 | Mar 2009 | US |
Child | 12891498 | US | |
Parent | 10973522 | Oct 2004 | US |
Child | 12396377 | US | |
Parent | 10354576 | Jan 2003 | US |
Child | 10973522 | US | |
Parent | 09619988 | Jul 2000 | US |
Child | 10354576 | US |