WO2007013306A1 - 半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム - Google Patents

半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム Download PDF

Info

Publication number
WO2007013306A1
WO2007013306A1 PCT/JP2006/313848 JP2006313848W WO2007013306A1 WO 2007013306 A1 WO2007013306 A1 WO 2007013306A1 JP 2006313848 W JP2006313848 W JP 2006313848W WO 2007013306 A1 WO2007013306 A1 WO 2007013306A1
Authority
WO
WIPO (PCT)
Prior art keywords
bit
permutation
type
combination part
pseudo external
Prior art date
Application number
PCT/JP2006/313848
Other languages
English (en)
French (fr)
Inventor
Xiaoqing Wen
Seiji Kajihara
Original Assignee
Kyushu Institute Of Technology
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 Kyushu Institute Of Technology filed Critical Kyushu Institute Of Technology
Priority to JP2007528409A priority Critical patent/JP4752030B2/ja
Priority to US11/989,487 priority patent/US7743306B2/en
Publication of WO2007013306A1 publication Critical patent/WO2007013306A1/ja

Links

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/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • 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
    • 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/318544Scanning methods, algorithms and patterns
    • G01R31/318547Data generators or compressors

Definitions

  • the present invention relates to a test vector generation method and a test vector generation program for a semiconductor logic circuit device in an actual speed scan test for delay faults.
  • test means that a test vector is applied to the manufactured semiconductor logic circuit device, the test response is observed from the semiconductor logic circuit device, and this test response is compared with the expected test response to determine whether the product is good or defective. Identify good products.
  • the yield rate is called yield, and greatly affects the manufacturing cost of semiconductor logic circuit devices.
  • a semiconductor logic circuit device (mainly a sequential circuit) includes a combination part that is a logic element such as an AND gate, a NAND gate, an OR gate, and a NOR gate, and a flip-flop group that stores an internal state of the combination part. It becomes more.
  • the combination part has an external input line PI, a pseudo external input line PPI that is an output line of the flip-flop group, an external output line PO, and a pseudo external output line PPO that is an input line of the flip-flop group.
  • the input to the combination part consists of those given directly from the external input line and those given via the pseudo external input line.
  • the output of combined partial force consists of what appears directly on the external output line and what appears on the pseudo external output line.
  • the external input line and the pseudo external input line force of the combination part are applied with a predetermined test vector, and the external output line and the pseudo external output line of the combination part are applied.
  • the test response needs to be observed.
  • One test vector consists of a bit corresponding to the external input line and a bit corresponding to the pseudo external input line.
  • One test response consists of a bit corresponding to the external output line and a bit corresponding to the pseudo external output line.
  • Scan design is a main method for solving the problems of controllability and observability in the test of the combination part.
  • Scan design is the replacement of a flip-flop (FF) with a scan flip-flop (scan FF) and using them to form one or more scan chains.
  • scan flip-flops in the same scan chain share the same scan enable signal SE, but the scan enable signals SE of scan flip-flops in different scan chains may be the same or different. is there.
  • FIG. 14 is intended for a delay fault in a combination part of a scan-designed semiconductor logic circuit device.
  • FIG. 14 It is a circuit diagram for demonstrating an actual speed scan test.
  • 1 is a semiconductor logic circuit device, and 2 is a tester.
  • the semiconductor logic circuit device 1 of FIG. 14 generates a combination part 11 composed of logic elements such as an AND gate, an OR gate, a NAND gate, a NOR gate, a scan flip-flop group 12, and a high-speed real-speed clock signal RCLK. It comprises a phase-locked loop (PLL) circuit 13 and a multiplexer 14 that selects the real-speed clock signal RCLK or the low-speed shift clock signal SCLK supplied from the tester 2 and supplies it to the scan flip-flop group 12.
  • the clock enable signal CE from the tester 2 is for controlling the generation of the capture pulse from the PLL circuit 13.
  • the combination part 11 includes an external input line PI and an output line of the scan flip-flop group 12. Similar external input line PPI, external output line PO, and pseudo external output line PPO which is an input line of scan flip-flop group 12 are provided.
  • the number of bits of the external input line PI and the number of bits of the external output line PO are not necessarily the same, but the number of bits of the pseudo external input line PPI and the number of bits of the pseudo external output line PPO are always the same.
  • FIG. 15 is a timing chart for explaining the actual speed scan test of FIG.
  • the actual speed scan test is performed by repeating a shift operation and two capture operations (hereinafter referred to as a double capture operation).
  • the shift operation is performed in a shift mode in which the scan enable signal SE is set to “1”.
  • shift mode one or more low-speed shift clock pulses S 1, ..., S are applied, and one or more new values are applied externally.
  • the capture operation is performed in a capture mode in which the scan enable signal SE is set to “0”.
  • the shift operation is used to apply a test vector to the combination part 11 via the pseudo external input line PPI and to observe a test response from the combination part 11 via the pseudo external output line PPO.
  • the capture operation is used to capture the test response of the combination part 11 into the scan flip-flop group 12.
  • the test vector is applied to the combination part 11 externally.
  • the observation of the test response of 11 combined parts has a part that is performed directly by the external output PO force and a part that is performed by the shift operation. Since the output value of any scan flip-flop can be observed by the shift operation, the problem of observability of the pseudo external input line PPI is solved. In this way, the automatic test pattern generation (ATP G) product
  • power consumption during testing is much greater than during normal operation.
  • power consumption includes static power consumption due to leakage current and dynamic power consumption due to switching operations of logic gates and flip-flops.
  • dynamic power consumption includes shift power consumption during a shift operation and capture power consumption during a capture operation.
  • the number of low-speed shift clock pulses given during a shift operation is generally large.
  • the energy consumed by the shift power consumption increases, and excessive heat generation may occur.
  • the semiconductor logic circuit device may be damaged. For this reason, methods for reducing shift power consumption are actively studied.
  • R Resistance
  • the IR drop phenomenon may cause the circuit to malfunction, and an incorrect test response value may be captured by the scan flip-flop 12.
  • a semiconductor logic circuit device that can normally operate normally is erroneously tested as a defective product during testing.
  • the yield decreases.
  • semiconductor logic circuit devices are scaled up, scaled down, and reduced in power supply voltage, the yield drop due to erroneous tests is significant. Therefore, it is necessary to reduce capture power consumption in double capture operation for actual speed test.
  • Capture power consumption can be reduced by using the clock gating method, but the influence on the physical design of the semiconductor logic circuit device is great.
  • the capture power consumption can be reduced by the one-hot method or the multiple clock method, but the former has a significant increase in the amount of test data, and the latter has the disadvantage of requiring enormous memory consumption for test vector generation. is there. Therefore, in order to reduce capture power consumption, it is desirable to have a method that has an impact on physical design, an increase in the amount of test data, and a small amount of memory.
  • test cubes having uncertain bits (hereinafter also referred to as X bits) often appear in the process of generating test vectors by the ATPG program.
  • some bits of some test vectors can be changed to X bits without changing the failure detection rate of the set.
  • a test cube can be obtained by an X-bit extraction program.
  • the reason for the existence of the test cube is that it is sufficient to set the logical values necessary for some bits in the external input line PI and the pseudo external input line P PI in order to detect one target fault in the combination part 11. This is because there are many cases. Setting the remaining bits to 0 or 1 does not affect the detection of the target fault, so such a bit becomes an X bit for the target fault.
  • a test cube having X bits does not have X bits! /, Which is an intermediate that appears in the process of generating test vectors. For this reason, it is necessary to finally embed 0 or 1 in the X bit of the test cube by some method. Embedding method, merge embedding method, and random embedding method.
  • a logical value (0 or 1) optimum for the purpose in the X bit in the test cube is determined by the algorithm and embedded.
  • Such algorithms are often implemented in ATPG programs.
  • the algorithm embedding method is called dynamic compression, which reduces the total number of test vectors (Ref: Non-Patent Documents 1 and 2) and shift power consumption is reduced (Ref: Non-Patent Document 3). Capsule used for power consumption reduction work (Ref: Non-Patent Document 4).
  • the merge embedding method assuming that one test cube is merged with another test cube, 0 or 1 is embedded in the X bit so that the corresponding bits of both test cubes have the same logical value. For example, to merge test cube 1X0 and test cube 1 IX, 1 is embedded in the X bit of test cube 1X0 and 0 is embedded in the X bit of test cube 1 IX.
  • This merge embedding method is used for reducing the total power consumption of test vectors (Ref: Non-Patent Document 5), called static compression, and for reducing shift power consumption (Ref: Non-Patent Document 6).
  • the random embedding method 0 or 1 is randomly embedded in the X bit in the test cube. This random embedding method is often applied to X bits remaining after the algorithm embedding method or the merge embedding method. This random embedding method is also used for the work of reducing the total number of test vectors, referred to as dynamic compression (Reference: Non-Patent Document 5), or the work of reducing shift power consumption (Reference: Non-Patent Document 7).
  • Patent Document 1 M. Abramovici, M. Breuer, and A. Friedman, Digital Systems Testing and Testable Design, Computer Science Press, 1990.
  • Non-Patent Document 2 X. Lin, J. Rajski, I. Pomeranz, SM Reddy, "On Static Test Compaction and Test Pattern Ordering for Scan Designs", Proc. Intl. Test Conf., Pp. 1088-1097, 2001 .
  • Non-Patent Document 3 S. Kajihara, K. Isnida, and K. Miyase, "Test Vector Modification for Power Reduction during Scan Testing, Proc. VLSI Test Symp., Pp. 160-165, 2002.
  • Non-Patent Document 4 X Wen, Y. Yamashita, S. Kajihara, L. Wang, KK Saluja, and K. Kin oshita, "On Low- Capture- Power Test Generation for Scan Testing," Proc. VLSI Test Symp., pp. 265-270, 2005.
  • Patent Document 5 M. Abramovici, M. Breuer, and A. Friedman, Digital Systems Testing and Testable Design, Computer Science Press, 1990.
  • Non-Patent Document 6 R. Sankaralingam, R. Oruganti, and N. Touba, 'Static Compaction Techniques to Control Scan Vector Power Dissipation ", Proc. VLSI Test Symp., Pp. 3 5-40, 2000.
  • Non-Patent Document 7 R. Sankaralingam, R. Oruganti, and N. Touba, 'Static Compaction Techniques to Control Scan Vector Power Dissipation ", Proc. VLSI Test Symp., Pp. 3 5-40, 2000.
  • any of the embedding method, the merge embedding method and the random embedding method can reduce the total number of test vectors, reduce the shift power consumption, or consume a single capture.
  • the purpose is to reduce power consumption, and it is impossible to avoid a false test due to an increase in double capture power consumption. As a result, there is a problem that the yield of the semiconductor logic circuit device is lowered.
  • an object of the present invention is to reduce double capture power consumption by reducing the number of output change scan flip-flops during double capture operation, and as a result, reduce IR drop. It is an object of the present invention to provide a test logic generation method and apparatus for a semiconductor logic circuit device that avoids erroneous tests, and a storage medium storing a test vector generation program for the semiconductor logic circuit device.
  • the present invention provides an external input line, a pseudo external input line, an external output line, and a combination part having a pseudo external output line, a pseudo external output line, and a pseudo external input line.
  • a test vector generation method for a semiconductor logic circuit device comprising a scan flip-flop group forming a scan chain connected between the first and second, As the second combination part, scan flip flow
  • the first and second scan flip-flop groups operated by first and second capture clock pulses that are virtually continuous with respect to the first and second combination parts are defined as the first combination part.
  • This pseudo external output line is the pseudo external input line of the second combination part.
  • the first embedding process 0 or 1 is embedded in the X bit of the test cube so that the number of mismatches between the corresponding bits of the pseudo external input line and the pseudo external output line in the first combination part is reduced.
  • the second embedding process 0 or 1 is embedded in the X bit of the test cube so that the mismatch between the corresponding bits of the pseudo external input line and the pseudo external output line of the second combination part is reduced.
  • the mismatch number balance reduction process is performed so that the number of mismatches between corresponding bits in the first embedding process and the number of mismatches between corresponding bits in the second embedding process are balancedly reduced. Select and repeat the process.
  • the third embedding process is performed when there is no X bit in the pseudo external input line of the first combination part, the pseudo external output line of the first combination part, and the pseudo external output line of the second combination part. Embed 0 or 1 in the remaining X bits of the cube. As a result, the test cube is converted to a test vector that does not include X bits.
  • the number of output change scan flip-flops during double capture operation can be reduced, so that double capture power consumption can be reduced, and hence due to a drop in power supply voltage due to IR drop. Can avoid false testing.
  • FIG. 1 is a circuit development view showing the principle of test vector generation in the semiconductor logic circuit device according to the present invention.
  • FIG. 1 is a circuit diagram of the semiconductor logic circuit device of FIG.
  • External input line PI of mating part 11 is used as the external input line of combination part 11, and the combination part
  • the scan flip-flop group 12 performs a capture operation with a capture clock pulse C, and the scan flip-flop group 12 captures with a capture clock pulse C.
  • the IR drop in capture pulse C and capture pulse C is balanced and reduced.
  • FIG. 2 is a flowchart showing a test vector generation program for realizing the principle of test vector generation in FIG.
  • the routine of FIG. 2 starts by applying the initial test cube obtained by the ATPG program or the X-bit extraction program.
  • the initial test cube is generated to detect the target fault called the initial fault, and the number of X bits is N. During this number of X bits N, other target faults called secondary faults are detected.
  • step 201 the X bit usage rate X is initialized to zero.
  • step 202 the X bit usage rate X is compared with a preset upper limit value X of the X bit usage rate X usage usage, for example, 20%. That means
  • step 203 it is determined whether or not there is a possibility of detecting another secondary failure by the test cube. As a result, if there is a possibility of detection, the process proceeds to step 204. If no detection is expected, the process proceeds to step 206.
  • step 204 0 or 1 necessary for the indeterminate bit of the test cube is embedded so that the target secondary failure is detected.
  • step 205 the X bit usage rate X is updated using equation (1).
  • Step 206 When there are no more entries, go to Step 206.
  • step 206 a double capture low power consumption embedding process is performed on the test cube including the remaining X bits.
  • the detailed flow of step 206 is shown in FIG.
  • step 301 the X type of each bit permutation (ppi, ⁇ , ⁇ ) is determined.
  • ppi is one bit of the pseudo external input line PPI of the combination part 11 of FIG. 1
  • ppo is a corresponding bit of the pseudo external output line PPI of the combination part 11 of FIG. 1
  • ppo is the pair of FIG.
  • X types 1 to 8 exist as the X type of the bit permutation described above.
  • X type 1 does not include X bits
  • X types 2-4 include one X bit
  • X types 5-7 include two X bits
  • X type 8 includes three X bits.
  • step 302 it is determined whether or not all bit permutations are X type 1 only. If only X type 1, go to steps 308 and 309. On the other hand, if there is an X type bit permutation other than X type 1, the process proceeds to step 303.
  • step 303 the total capture state for the target capture clock pulses C and C
  • ECT Existing Capture Transition
  • PCT Physical Capture Transition
  • K is a weight coefficient. For example, 0.5 can be a value of k.
  • ECT Existing Capture Transition
  • PCT Peak Capture Transition
  • k is a weight coefficient.
  • 0.5 can be the value of k.
  • FIG. 5 is a diagram showing a calculation example of the total number of capture state changes TECTA and TECTA.
  • step 304 the total number of capture state changes TECTA and TECTA are compared.
  • step 304 TECTA ⁇ T
  • ECTA may also be used.
  • step 305 a first X embedding process is performed.
  • step 306 the second X embedding process is performed.
  • steps 303 to 306 low power consumption embedding processing is performed in a balanced manner for the target capture clock pulses C and C.
  • step 307 a logic simulation is performed to determine logic values for some or all of the X bits present in the external output line PO and the pseudo external output line PPO. Then return to step 301.
  • step 308 the number of output transformation scan flip-flops cannot be reduced, but in the case of a test cube, there are X bits on the external input line PI. Therefore, a third embedding process is performed to embed 0 or 1 in all X bits of the external input line PI for the purpose of reducing the number of test vectors and shift power consumption. As a result, in step 309, test vectors that do not contain X are obtained.
  • step 601 it is determined whether or not there is an assignment type X type bit permutation.
  • the assigned X type for the target capture clock pulse is X type 2 and 6. If there is at least one assignment type X bit permutation, the process proceeds to step 602. If no assignment type X type bit permutation exists, the process proceeds to step 603.
  • step 602 one or a plurality of bit permutations of the assignment type X type are selected, and the logical values of the corresponding bits of the pseudo external output line PPO are respectively assigned to the X bits of the bit permutations. For example, as shown in FIG. 7, the logical value 1 of the corresponding bit b4 of the pseudo external output line PPO is assigned to the X bit a5 of the pseudo external input line PPI.
  • the assignment operation will always succeed. As a result, the output of the scan flip-flop 12 corresponding to the bits a5 and b4 does not change during the capture operation. As a result, capture power consumption is reduced. Then, the process proceeds to step 307 in FIG.
  • step 603 a justification ease (J E) is calculated for each bit permutation of X types 3, 5, 7, and 8. Then, the bit permutation having the maximum justification ease E is regarded as the success rate of the justification operation and is selected as the target bit permutation.
  • the justification easy 3 ⁇ 4E is defined as shown in (A) of FIG.
  • S is a signal line with X bits that requires justification of a certain target logical value.
  • S, S,..., S are reachable from S.
  • Easy justification 3 ⁇ 4E represents the average reachability of S 1, S 2,..., S to S.
  • L is the maximum logic level of the previous circuit including combination part 11 in FIG. 1 and combination part 11 in FIG.
  • L is the logic level of signal line S
  • the logic level is defined as shown in the example of (B) in FIG. That is,
  • the selected target bit permutation is a justification type that requires only a justification operation (X type 3, 5) or an allocation Z justification type that requires both an assignment operation and a justification operation. (X type 7, 8).
  • X type 3, 5 a justification type
  • X type 7, 8 an allocation Z justification type that requires both an assignment operation and a justification operation.
  • step 605 a first justification operation is performed. That is, as shown in FIG. 9A, the second bit of the target bit permutation of X type 3 or 5 (in this example, b3) is replaced with the first bit of the target bit permutation (in this example, , A process of determining a logical value necessary for the X bit in the test cube is performed so that the logical value of a4) (0 in this example) appears, and the process proceeds to step 606.
  • step 606 it is determined whether or not the first justification operation has failed. In other words, if the necessary logical value cannot be determined and the process fails, the process proceeds from step 606 to step 607 to perform the second justification operation. That is, as shown in FIG. 9 (B), the second bit (in this example, b3) of the target bit permutation of X type 3 or 5 is replaced with the first bit (in this example, b3). So that the opposite logical value (1 in this example) appears from the logical value of a4) (0 in this example) Performs processing to determine the logical value required for the X bit in the test cube.
  • step 606 When it is determined in step 606 that the first justification operation is successful, or when the second justification operation is completed in step 607, the process proceeds to step 307 in FIG.
  • step 608 a first allocation / justification operation is performed. That is, as shown in (A) of FIG. 10, the logical value 0 is assigned to the first bit (a6 in this example) of the target bit permutation of X type 7 or 8, and the first bit of the target bit permutation is assigned. Determine the logical value required for the X bit of the test cube so that the logical value 0 appears in the 2 bits (b5 in this example). In step 609, it is determined whether or not the first assignment / justification operation has failed. If this operation fails, go to step 610 from step 609.
  • step 610 a second allocation Z justification operation is performed. That is, as shown in (B) of FIG. 10, a logical value of 1 is assigned to the first bit (a6 in this example) of the target bit permutation of X type 7 or 8, and the first bit of the target bit permutation is assigned. Determine the logical value required for the X bit of the test cube so that the logical value 1 appears in the 2 bits (b5 in this example). Step 611 determines whether the second allocation Z justification operation has failed. If this operation fails, go to step 612 from step 611.
  • step 612 a third allocation Z justification operation is performed. That is, as shown in (A) of FIG. 11, the logical value 0 is assigned to the first bit (a6 in this example) of the target bit permutation of X type 7 or 8, and the first bit of the target bit permutation is assigned. Determine the logical value required for the X bit of the test cube so that the logical value 1 appears in the 2 bits (b5 in this example).
  • step 613 it is determined whether the second assignment / justification operation has failed. If this operation fails, go to step 614 from step 613.
  • step 614 a fourth allocation Z justification operation is performed. That is, (B
  • step 1201 the justification (JE) is calculated for each bit permutation of X types 3-8. Then, the bit permutation having the maximum justification easy E is regarded as the success rate of the justification operation and is selected as the target bit permutation.
  • the selected target bit permutation is a single justification type (X type 3, 4, 6, 7) that requires a justification operation for one X bit or two justification operations.
  • X type 5, 8 Determine whether you need double justification
  • step 1203 a third justification operation is performed. That is, when the selected target bit permutation is X type 4 or 6, the logical value of the second bit of the target bit permutation appears in the third bit of the target bit permutation. 0 in the indeterminate bit of the test cube so that when the target bit permutation is X type 3 or 7, the logical value of the third bit of the target bit permutation appears in the second bit of the target bit permutation. Alternatively, 1 is determined. In step 1204, it is determined whether or not the third justification operation has failed. If this operation fails, go to step 1205 from step 1204.
  • step 1205 a fourth justification operation is performed. That is, when the selected target bit permutation is X type 4 or 6, a logical value opposite to the logical value of the second bit of the target bit permutation appears in the third bit of the target bit permutation. In addition, when the selected target bit permutation is X type 3 or 7, a logical value opposite to the logical value of the third bit of the target bit permutation appears in the second bit of the target bit permutation. Then, 0 or 1 is determined for the indeterminate bit of the test cube.
  • step 1204 When it is determined in step 1204 that the third justification operation has succeeded, or when the fourth justification operation is completed in step 1205, the process proceeds to step 307 in FIG.
  • Step 1206 a fifth justification operation is performed. That is, the logical value necessary for the X bit of the test cube is determined so that the logical value 0 appears in the second bit and the third bit of the target bit permutation of X type 5 or 8.
  • step 1207 it is determined whether or not the fifth justification operation has failed. If this operation fails, the process proceeds from step 1207 to step 1208.
  • step 1208 a sixth justification operation is performed. That is, the logical value required for the X bit of the test cube is determined so that the logical value 1 appears in the second bit and the third bit of the target bit permutation of X type 5 or 8.
  • step 1209 it is determined whether or not the fifth justification operation has failed. If this operation fails, go to step 1210 from step 1209.
  • step 1210 a seventh justification operation is performed. That is, the logical value required for the X bit of the test cube is determined so that the logical value 0 appears in the second bit of the target bit permutation of X type 5 or 8, and the logical value 1 appears in the third bit.
  • step 1211 it is determined whether or not the fifth validating operation has failed. If this operation fails, go to step 1212 from step 1211.
  • Step 1212 an eighth justification operation is performed. That is, the logical value required for the X bit of the test cube is determined so that the logical value 1 appears in the second bit of the target bit permutation of X type 5 or 8 and the logical value 0 appears in the third bit.
  • step 1207 When it is determined in steps 1207, 1209, and 1211 that the fifth, sixth, and seventh justification operations have been successful, or when the eighth justification operation has been completed in step 1212, FIG. Proceed to step 307.
  • FIG. 13 is a diagram showing an example of the double capture low power consumption embedding process according to the present invention.
  • X, X, 1, 0, X, X> are given as test cubes, and 1, 0, 0>, ⁇ 0, X, as 3-bit permutations. 1>, ⁇ X, 1, X>, ⁇ X, 0, 1> exist. In this case, the total number of capture state changes for capture clock pulses C and C TECTA,
  • TECTA is 2.5 and 2.0, respectively, so TECTA ⁇ TECTA
  • the assignment operation is performed on the bits a5 and a6 of the pseudo external input of the combination part 1 with respect to the target capture clock pulse. This reduces the number of capture state changes for the target capture clock pulse C. In this case, the total number of capture state changes TECTA and TECTA of the capture clock pulses C and C are respectively
  • FIG. 13 shows the pseudo out of the combination part 11 with respect to the target capture clock pulse C.
  • FIG. 13D a justification operation is performed on the bit b 3 of the pseudo external output of the combination part 11 with respect to the target capture clock pulse C. As a result, the number of capture state changes for the target capture clock pulse C is reduced.
  • steps 605 and 607 in FIG. 6 the logical values of the justification operation are performed in the order of 0 ⁇ 1, but may be in the order of 1 ⁇ 0.
  • steps 608 and 610 of FIG. 6 the logical value of the allocation Z justification operation is performed in the order of (0 allocation, 0 justification) ⁇ (1 allocation, 1 justification). The order may be 1 (justification) ⁇ (0 assignment, 0 validity).
  • steps 6 12 and 614 in FIG. 6 the logical value of the allocation Z justification operation is performed in the order of (0 allocation, 1 legality) ⁇ (1 allocation, 0 legality). The order may be the order of (assignment, 0 valid) ⁇ (0 assignment, 1 valid).
  • the logical values of the third and fourth justification operations may be in the order of force 1 ⁇ 0, in the order of 0 ⁇ 1.
  • the logical value of the justification operation is performed in the order of (0 justification, 0 justification) ⁇ (1 justification, 1 justification).
  • the order may be (1 justification, 1 justification) ⁇ (0 justification, 0 justification).
  • the routines shown in FIGS. 2, 3, 6, and 12 are stored in the storage medium as programs. For example, if it is a non-volatile memory such as a storage medium card OM, it is incorporated in advance, and if the storage medium is a volatile memory such as RAM, it is written as required.
  • a non-volatile memory such as a storage medium card OM
  • RAM volatile memory
  • FIG. 1 is a circuit development diagram showing the principle of test vector generation in a semiconductor logic circuit device according to the present invention.
  • FIG. 2 is a flowchart for explaining an embodiment of a test vector generation method for a semiconductor logic circuit device according to the present invention.
  • FIG. 3 is a detailed flowchart of the double capture low power consumption embedding step of FIG. 2.
  • FIG. 4 is a table showing the X type of step 302 of FIG.
  • 5 is a diagram showing an example of calculation of the total number of capture state changes in step 303 in FIG.
  • FIG. 6 is a detailed flowchart of an X embedding process step 305 for the target capture clock pulse C in FIG.
  • FIG. 7 is a diagram illustrating step 602 in FIG. 6.
  • FIG. 8 is a diagram for explaining a justification ease calculation step 603 in FIG. 6.
  • FIG. 9 is a diagram illustrating justification operation steps 605 and 607 in FIG. 6.
  • FIG. 10 is a diagram for explaining the allocation Z justification operation steps 608 and 610 of FIG. 6.
  • FIG. 11 is a diagram for explaining allocation Z justification operation steps 612 and 614 in FIG. 6.
  • FIG. 13 is a diagram showing an example of a double capture low power consumption embedding process according to the present invention.
  • FIG. 14 is a block circuit diagram illustrating a conventional actual speed scan test.
  • FIG. 15 is a timing chart for explaining the circuit operation of FIG. Explanation of symbols

Landscapes

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

Abstract

 各ビット順列のXタイプを判別する(ステップ301)。Xタイプ1つまり未確定ビットを含まないケース以外のXタイプが存在するときには、キャプチャクロックパルスC1,C2に対する総キャプチャ状態変化数TECTA1,TECTA2を計算する(ステップ303)。この結果、TECTA1>TECTA2のときには、キャプチャクロックパルスC1についてXタイプを選択し、第1のX埋込み処理を行う(ステップ305)。他方、TECTA1≦TECTA2のときには、キャプチャクロックパルスC2についてXタイプを選択し、第2のX埋込み処理を行う(ステップ306)。

Description

明 細 書
半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プ ログラム
技術分野
[0001] 本発明は遅延故障を対象とする実速度スキャンテストにおける半導体論理回路装 置のテストベクトル生成方法及びテストベクトル生成プログラムに関する。
背景技術
[0002] 半導体論理回路装置は、設計、製造、テストの三段階を経て出荷される。ここで、テ ストとは、製造された半導体論理回路装置に対してテストベクトルを印加し、半導体論 理回路装置からテスト応答を観測し、このテスト応答を期待テスト応答と比較して良品 、不良品の判別を行う。その良品率は歩留りと呼ばれ、半導体論理回路装置の製造 コストを大きく左右する。
[0003] 一般に、半導体論理回路装置(主に順序回路)は、 ANDゲート、 NANDゲート、 O Rゲート、 NORゲート等の論理素子力 なる組合せ部分と、組合せ部分の内部状態 を記憶するフリップフロップ群とよりなる。この場合、組合せ部分は、外部入力線 PI、 フリップフロップ群の出力線である擬似外部入力線 PPI、外部出力線 PO、及びフリツ プフロップ群の入力線である擬似外部出力線 PPOを有する。つまり、組合せ部分へ の入力は、外部入力線より直接与えられるものと、擬似外部入力線を介して与えられ るものとからなる。また、組合せ部分力もの出力は、外部出力線に直接現れるものと、 擬似外部出力線に現れるものとからなる。
[0004] 半導体論理回路装置の組合せ部分をテストするために、組合せ部分の外部入力 線及び擬似外部入力線力 所定のテストベクトルを印加し、組合せ部分の外部出力 線及び擬似外部出力線カゝらテスト応答を観測する必要がある。 1つのテストベクトル は、外部入力線に対応するビットと擬似外部入力線に対応するビットとからなる。また 、 1つのテスト応答は、外部出力線に対応するビットと擬似外部出力線に対応するビ ッ卜と力らなる。
[0005] しかし、半導体論理回路装置のフリップフロップ群の出力線 (擬似外部入力線)及 び入力線 (擬似外部出力線)は一般に外部より直接アクセスできない。従って、組合 せ部分をテストするためには、擬似外部入力線の可制御性及び擬似外部出力線の 可観測性に問題がある。
[0006] 上述の組合せ部分のテストにおける可制御性及び可観測性の問題を解決する主 な手法として、スキャン設計がある。スキャン設計とは、フリップフロップ(FF)をスキヤ ンフリップフロップ (スキャン FF)に置き換えた上で、それらを用いて 1本または複数本 のスキャンチェーンを形成することである。スキャンフリップフロップの動作はスキャン ィネーブル信号 SEで制御される。例えば、 SE = 0のとき、通常のフリップフロップと同 一動作をする。つまり、クロックパルスが与えられると、組合せ部分の出力によりスキヤ ンフリップフロップの出力値が更新される。他方、 SE= 1のとき、同一スキャンチェ一 ンにある複数のスキャンフリップフロップが 1つのシフトレジスタを形成する。つまり、ク ロックパルスが与えられると、外部力 新しい値がスキャンフリップフロップに逐次シフ トインされると同時に、スキャンフリップフロップに現存する値が外部へ逐次シフトァゥ トされる。尚、一般に、同一スキャンチェーンにあるスキャンフリップフロップは同一ス キャンイネーブノレ信号 SEを共有するが、異なるスキャンチェーンにあるスキャンフリツ プフロップのスキャンイネ一ブル信号 SEは同一の場合もあれば異なる場合もある。
[0007] 図 14はスキャン設計された半導体論理回路装置の組合せ部分の遅延故障を対象 とする
実速度スキャンテストを説明するための回路図である。図 14において、 1は半導体論 理回路装置、 2はテスタである。
[0008] 図 14の半導体論理回路装置 1は、 ANDゲート、 ORゲート、 NANDゲート、 NOR ゲート等の論理素子よりなる組合せ部分 11、スキャンフリップフロップ群 12、高速の 実速クロック信号 RCLKを発生するフェイズロックドループ (PLL)回路 13、及び実速 クロック信号 RCLKあるいはテスタ 2から供給される低速のシフトクロック信号 SCLK を選択してスキャンフリップフロップ群 12に供給するマルチプレクサ 14よりなる。尚、 テスタ 2からのクロックィネーブル信号 CEは PLL回路 13からのキヤプチャパルスの発 生を制御するためのものである。
[0009] 組合せ部分 11は、外部入力線 PI、スキャンフリップフロップ群 12の出力線である擬 似外部入力線 PPI、外部出力線 PO、及びスキャンフリップフロップ群 12の入力線で ある擬似外部出力線 PPOを有する。尚、外部入力線 PIのビット数と外部出力線 PO のビット数とは必ずしも同数ではな 、が、擬似外部入力線 PPIのビット数と擬似外部 出力線 PPOのビット数とは必ず同数である。
[0010] 図 15は図 14の実速度スキャンテストを説明するためのタイミング図である。実速度 スキャンテストはシフト操作と 2回のキヤプチャ操作 (以下、二重キヤプチャ操作とする )を繰り返すことによって行われる。シフト操作は、スキャンィネーブル信号 SEが" 1" にされているシフトモードで行われる。シフトモードにおいては、低速の 1つまたは複 数のシフトクロックパルス S , · ··, Sが与えられ、外部から 1つまたは複数の新しい値
1 L
がスキャンチェーン内のスキャンフリップフロップ群 12にシフトインされる。また同時に 、そのスキャンチェーン内のスキャンフリップフロップ群 12に現存の 1つまたは複数の 値が外部へシフトアウトされる。尚、 Lの最大値はスキャンチェーンを形成するスキヤ ンスキャンフリップフロップ 12の数である。また、シフトクロックパルスは低速であっても 問題がない。他方、キヤプチャ操作は、スキャンィネーブル信号 SEが" 0"にされてい るキヤプチャモードで行われる。キヤプチャモードにおいては、クロックイネーブノレ信 号 CEがィネーブル(CE = "0")され、 CEの立下がりに応答して図 14の PLL回路 13 から、 1つのスキャンチェーンにあるスキャンフリップフロップ群 12に 2つのクロックパ ルス C , Cが与えられ、組合せ部分 11の擬似外部出力線 PPOの値がすべてのスキ
1 2
ヤンフリップフロップ群 12に取り込まれる。これらのクロックパルス C, Cの間隔 Tは
1 2 2 設計仕様によって定められるので、実速度スキャンテストの効果が得られる。
[0011] シフト操作は、擬似外部入力線 PPIを介して組合せ部分 11へテストベクトルを印加 するためと、擬似外部出力線 PPOを介して組合せ部分 11からテスト応答を観測する ために用いられる。また、キヤプチャ操作は、組合せ部分 11のテスト応答をスキャンフ リップフロップ群 12に取り込むために用いられる。すべてのテストベクトルに対して、 シフト操作と二重キヤプチャ操作を繰り返すことによって、組合せ部分 11を実速度ス キャンテストすることができる。このようなテスト方式は実速度スキャンテスト方式と 、う
[0012] 実速度スキャンテスト方式では、組合せ部分 11へのテストベクトルの印加は、外部 入力 PIから直接行われる部分と、シフト操作によって行われる部分とがある。シフト操 作によって、任意の論理値を任意のスキャンフリップフロップに設定することができる ので、擬似外部入力線 PPIの可制御性の問題が解決される。他方、組合せ部分 11 力ものテスト応答の観測は、外部出力 PO力 直接行われる部分と、シフト操作によつ て行われる部分とがある。シフト操作によって、任意のスキャンフリップフロップの出力 値を観測することができるため、擬似外部入力線 PPIの可観測性の問題が解決され る。このように、実速度スキャンテスト方式においては、 自動テストパターン生成 (ATP G)プロダラ
ムを用いて組合せ部分に対してテストベクトル及び期待テスト応答を求めるだけで十 分である。
[0013] 上述の実速度スキャンテスト方式が有効性を有しているにもかかわらず、通常動作 時よりテスト時の消費電力が非常に大きいという問題点が存在する。例えば、半導体 論理回路装置が CMOS回路で構成されていれば、消費電力としては、漏れ電流に よる静的消費電力と、論理ゲートやフリップフロップのスイッチング動作による動的消 費電力とがある。さらに、後者の動的消費電力は、シフト操作時におけるシフト消費 電力と、キヤプチャ操作時におけるキヤプチャ消費電力とがある。
[0014] 1つのテストベクトルに対して、シフト操作時に与えられる低速のシフトクロックパルス の数は一般に多い。例えば、あるスキャンチェーン内のすべてのスキャンフリップフロ ップ 12に新しい値を設定するために、最大の場合にスキャンフリップフロップ個数分 のシフトクロックパルスを与える必要がある。このため、シフト消費電力によるエネルギ 一が大きくなり、過度な発熱を引き起こすことがある。それによつて、半導体論理回路 装置を損壊する恐れがある。このため、シフト消費電力の削減手法が盛んに研究さ れている。
[0015] 他方、 1つのテストベクトルに対して、二重キヤプチャ操作時の必要なキヤプチャクロ ックパルスの数は 1つのスキャンチェーンにっき 2つである。そのため、二重キヤプチ ャ消費電力による発熱は問題にならない。しかし、キヤプチャモードにおいて、擬似 外部出力線 PPOに現れる組合せ部分 11のテスト応答がスキャンフリップフロップ群 1 2に取り込まれるとき、テスト応答値とスキャンフリップフロップ群 12の現在値が異なれ ば、対応するスキャンフリップフロップ 12の出力値が変化する。このような出力変化ス キャンフリップフロップ 12が多数あれば、論理ゲートとスキャンフリップフロップ 12のス イッチング動作によって、電源電圧 V が一時的に低下する。この現象は IR (I :電流
DD
、 R:抵抗)ドロップ現象とも呼ばれる。 IRドロップ現象により回路が誤動作し、誤った テスト応答値がスキャンフリップフロップ 12に取り込まれることがある。これによつて、 通常時には正常に動作できる半導体論理回路装置は、テスト時に不良品として判定 されてしまうという誤テストが発生する。その結果として、歩留りが低下する。特に、半 導体論理回路装置が超大規模化、超微細化、低電源電圧化した場合、誤テストによ る歩留り低下は顕著である。従って、実速度テストのための二重キヤプチャ操作にお けるキヤプチャ消費電力の削減が必要である。
[0016] クロックゲーティング手法を用いてキヤプチャ消費電力を削減することができるが、 半導体論理回路装置の物理設計への影響が大きい。また、ワンホット手法や多重ク ロック手法でキヤプチャ消費電力を削減することができるが、前者はテストデータ量が 著しく増大し、後者はテストベクトル生成に膨大なメモリ消費が必要になるなどの欠点 がある。従って、キヤプチャ消費電力の削減においては、物理設計への影響、テスト データ量の増加、及び所用メモリ量が小さ 、手法が望まし 、。
[0017] 他方、未確定ビット(以下、 Xビットとも言う)を有するテストキューブは ATPGプログ ラムによるテストベクトルの生成過程で現れることが多い。また、 Xビットを有しないテ ストベクトルの集合が与えられる場合、その集合の故障検出率を変えずに、一部のテ ストベクトルの一部ビットを Xビットにすることができる。つまり、 Xビット抽出プログラム によってテストキューブを得ることもできる。テストキューブが存在する原因は、組合せ 部分 11内の 1つの対象故障を検出するために、外部入力線 PIと擬似外部入力線 P PIにおける一部のビットに必要な論理値を設定すれば十分であることが多いからで ある。その残りのビットに 0を設定しても 1を設定しても、その対象故障の検出に影響 を与えないため、そのようなビットはその対象故障にとって Xビットになる。
[0018] Xビットを有するテストキューブはあくまで Xビットを有しな!/、テストベクトルを生成す る過程で現れる中間物である。このため、テストキューブの Xビットに最終的には 0あ るいは 1を何らかの方法で埋め込む必要があり、その方法としては、アルゴリズム埋め 込み方法、マージ埋め込み方法、ランダム埋め込み方法がある。
[0019] アルゴリズム埋め込み方法では、テストキューブ中の Xビットにある目的に最適な論 理値(0または 1)をアルゴリズムによって決定して埋め込む。このようなアルゴリズムは ATPGプログラムに実装されていることが多い。アルゴリズム埋め込み方法は動的圧 縮と呼ばれるテストベクトルの総数の削減作業 (参照:非特許文献 1, 2)、シフト消費 電力の削減作業 (参照:非特許文献 3)ある 、は単一キヤプチャ操作時のキヤプチャ 消費電力の削減作業 (参照:非特許文献 4)のために用いられる。
[0020] マージ埋め込み方法では、あるテストキューブを他のテストキューブとマージするこ とを前提として、両テストキューブの対応ビットが同じ論理値となるように、 Xビットに 0 あるいは 1を埋め込む。例えば、テストキューブ 1X0とテストキューブ 1 IXをマージす るために、テストキューブ 1X0の Xビットに 1を埋め込み、テストキューブ 1 IXの Xビット に 0を埋め込む。このマージ埋め込み方法は静的圧縮と呼ばれるテストベクトルの総 数の削減作業 (参照:非特許文献 5)ある 、はシフト消費電力の削減作業 (参照:非特 許文献 6)のために用いられる。
[0021] ランダム埋め込み方法では、テストキューブにある Xビットに 0あるいは 1をランダム に埋め込む。このランダム埋め込み方法は、アルゴリズム埋め込み方法あるいはマー ジ埋め込み方法を行った後に残存している Xビットを対象に行われることが多い。こ のランダム埋め込み方法も動的圧縮と呼ばれるテストベクトルの総数の削減作業 (参 照:非特許文献 5)あるいはシフト消費電力の削減作業 (参照:非特許文献 7)のため に用いられる。
[0022] 特許文献 1 : M. Abramovici, M. Breuer, and A. Friedman, Digital Systems Testing and Testable Design, Computer Science Press, 1990.
非特許文献 2 : X. Lin, J. Rajski, I. Pomeranz, S. M. Reddy, "On Static Test Compac tion and Test Pattern Ordering for Scan Designs", Proc. Intl. Test Conf., pp. 1088- 1097, 2001.
非特許文献 3 : S. Kajihara, K. Isnida, and K. Miyase, "Test Vector Modification for Power Reduction during Scan Testing , Proc. VLSI Test Symp., pp. 160—165, 2002. 非特許文献 4 : X. Wen, Y. Yamashita, S. Kajihara, L. Wang, K. K. Saluja, and K. Kin oshita, "On Low- Capture- Power Test Generation for Scan Testing," Proc. VLSI Te st Symp., pp. 265-270, 2005.
特許文献 5 : M. Abramovici, M. Breuer, and A. Friedman, Digital Systems Testing and Testable Design, Computer Science Press, 1990.
非特許文献 6 : R. Sankaralingam, R. Oruganti, and N. Touba, 'Static Compaction Te chniques to Control Scan Vector Power Dissipation", Proc. VLSI Test Symp., pp. 3 5-40, 2000.
非特許文献 7 : R. Sankaralingam, R. Oruganti, and N. Touba, 'Static Compaction Te chniques to Control Scan Vector Power Dissipation", Proc. VLSI Test Symp., pp. 3 5-40, 2000.
発明の開示
発明が解決しょうとする課題
[0023] しかしながら、上述のテストキューブの Xビットに 0あるいは 1を埋め込むアルゴリズム 埋め込み方法、マージ埋め込み方法及びランダム埋め込み方法のいずれも、テスト ベクトルの総数の削減、シフト消費電力の削減もしくは単一キヤプチャ消費電力の削 減を目的としており、二重キヤプチャ消費電力の増大による誤テストを回避できず、こ の結果、半導体論理回路装置の歩留りが低下するという課題がある。
[0024] そこで、本発明の目的は、二重キヤプチャ操作時の出力変ィ匕スキャンフリップフロッ プの数を少なくすることによって二重キヤプチャ消費電力を削減し、結果として IRドロ ップを低減させることによって誤テストを回避する半導体論理回路装置のテストべタト ル生成方法、装置及び半導体論理回路装置のテストベクトル生成プログラムを記憶 した記憶媒体を提供することにある。
課題を解決するための手段
[0025] 上述の目的を達成するために本発明は、外部入力線、擬似外部入力線、外部出 力線及び擬似外部出力線を有する組合せ部分と、擬似外部出力線と擬似外部入力 線との間に接続されたスキャンチェーンを形成しているスキャンフリップフロップ群とを 具備する半導体論理回路装置のテストベクトル生成方法にぉ 、て、 組合せ部分を 仮想的に外部入力線を共通とする第 1、第 2の組合せ部分とし、スキャンフリップフロ ップ群を仮想的に第 1、第 2の組合せ部分に対して連続する第 1、第 2のキヤプチャク ロックパルスによって動作する第 1、第 2のスキャンフリップフロップ群とし、第 1の組合 せ部分の擬似外部出力線を第 2の組合せ部分の擬似外部入力線とする。第 1の埋 込工程は第 1の組合せ部分の擬似外部入力線と擬似外部出力線との対応ビット間 の不一致数が少なくなるようにテストキューブの Xビットに 0あるいは 1を埋込む。第 2 の埋込工程は第 2の組合せ部分の擬似外部入力線と擬似外部出力線との対応ビッ ト間の不一致が少なくなるようにテストキューブの Xビットに 0あるいは 1を埋込む。不 一致数均衡削減工程は第 1の埋込工程の対応ビット間の不一致数と第 2の埋込工程 の対応ビット間の不一致数とが均衡的に少なくなるように第 1、第 2の埋込工程を選 択かつ繰返して実行させる。また、第 3の埋込工程は、第 1の組合せ部分の擬似外部 入力線、第 1の組合せ部分の擬似外部出力線および第 2の組合せ部分の擬似外部 出力線に Xビットがない場合、テストキューブの残りの Xビットに 0あるいは 1を埋込む 。これにより、テストキューブを Xビットを含まないテストベクトルに変換するものである 発明の効果
[0026] 本発明によれば、二重キヤプチャ操作時における出力変ィ匕スキャンフリップフロップ の数が減少するので、二重キヤプチャ消費電力を削減でき、従って、 IRドロップによ る電源電圧低下に起因する誤テストを回避できる。
発明を実施するための最良の形態
[0027] 図 1は本発明に係る半導体論理回路装置のテストベクトル生成の原理を示す回路 展開図である。
[0028] 図 1は、図 14の半導体論理回路装置を二重キヤプチャパルス C、 Cにより二重キ
1 2
ャプチヤ操作させた場合の消費電力の削減を説明するためのものである。従って、図 14の組合せ部分 11及びスキャンフリップフロップ群 12を仮想的に二重化させ、つま り組合せ部分 11と同一の組合せ部分 11、 11及びスキャンフリップフロップ群 12と
1 2
同一のスキャンフリップフロップ群 12、 12を仮想的に設けてある。この場合、組
1 2
合せ部分 11の外部入力線 PIを組合せ部分 11の外部入力線とし、また、組合せ部
1 1 2
分 11の擬似外部出力線 PPOを組合せ部分 11の擬似外部入力線とする。さらに、 スキャンフリップフロップ群 12はキヤプチャクロックパルス Cによりキヤプチャ操作を 行い、また、スキャンフリップフロップ群 12はキヤプチャクロックパルス Cによりキヤプ
2 2
チヤ操作を行う。
[0029] 図 1においては、擬似外部入力線 PPIの値と擬似外部出力線 PPOの値の相違す るビット数 N、及び擬似外部出力線 PPOの値と擬似外部出力線 PPOの値の相違
1 1 2
するビット数 Nを均衡的に少なくすることにより電源電圧 V の低下を小さくし、この
2 DD
結果、実速度スキャンテストにおける誤テストを回避できる。具体的には、 Nと Nの
1 2 和(N +N と Nの差の絶対値( I N -N I )の両方を小さくすることによりキ
1 2 1 2 1 2
ャプチヤパルス Cとキヤプチャパルス Cにおける IRドロップを均衡的に小さくし、この
1 2
結果、実速度スキャンテストにおける誤テストを効果的に回避できる。
[0030] 図 2は図 1のテストベクトル生成の原理を実現するテストベクトル生成プログラムを示 すフローチャートである。
[0031] 図 2のルーチンは ATPGプログラムまたは Xビット抽出プログラムによって得られた 初期テストキューブが付与されることによってスタートする。この場合、初期テストキュ ーブは初期故障と呼ばれる対象故障を検出するために生成されたものであり、その X ビット数を N とする。この Xビット数 N 中に二次故障と呼ばれる他の対象故障の検
XI XI
出に使用された Xビット数を N とすると、二次故障検出のための Xビット使用率 X
X2 usage を
X = (N /N ) X 100% (1)
usage X2 XI
で定義する。
[0032] ステップ 201では、 Xビット使用率 X を 0と初期化する。
usage
[0033] 次に、ステップ 202では、 Xビット使用率 X を予め設定された Xビット使用率 X usage usage の上限値 X 例えば 20%と比較する。つまり、
th
X < X
usage th
か否かを判別する。この結果、 X < X であればステップ 203に進み、他方、 X usage th us
≥ X であればステップ 206に進む。
age th
[0034] 次に、ステップ 203では、テストキューブによって他の二次故障を検出する見込み があるカゝ否かを判断する。この結果、検出見込みがあればステップ 204に進み、他方 、検出見込みがなければステップ 206に進む。
[0035] 次に、ステップ 204では、対象二次故障が検出されるようにテストキューブの未確定 ビットに必要な 0あるいは 1を埋込む。
[0036] 次に、ステップ 205では、式(1)を用いて Xビット使用率 X を更新する。
usage
[0037] ステップ 202〜205の処理を繰返し、 X ≥ X もしくは二次故障を検出する検 usage th
出込みがなくなったとき、ステップ 206に進む。
[0038] ステップ 206では、残存した Xビットを含むテストキューブに対して二重キヤプチャ低 電力消費の埋込み処理を行う。ステップ 206の詳細なフローを図 3に示す。
[0039] ステップ 301では、各ビット順列(ppi , ρρο , ρρο )の Xタイプを判
1 1 2
別する。ここで、 ppiは図 1の組合せ部分 11の擬似外部入力線 PPIの 1つのビット、 ppoは図 1の組合せ部分 11の擬似外部出力線 PPIの対応ビット、 ppoは図 1の組
1 1 2 合せ部分 11の擬似外部出力線 PPOの対応ビットである。
2 2
[0040] 図 4に示すように、上述のビット順列の Xタイプとしては Xタイプ 1〜8存在する。ここ で、 Xタイプ 1は Xビットを含まず、 Xタイプ 2〜4は 1つの Xビットを含み、 Xタイプ 5〜7 は 2つの Xビットを含み、 Xタイプ 8は 3つの Xビットを含む。
[0041] 次に、ステップ 302では、すべてのビット順列が Xタイプ 1のみか否かを判別する。 X タイプ 1のみであれば、ステップ 308、 309に進む。他方、 Xタイプ 1以外の Xタイプの ビット順列があればステップ 303に進む。
[0042] ステップ 303では、対象キヤプチャクロックパルス C , Cに対する総キヤプチャ状態
1 2
変化数 TECTA、 TECTAを計算する。つまり、
1 2
TECTA = ECT + PCT · k
但し、 ECT (Existing Capture Transition)は第 1の組合せ部分の擬似外部入力線 のビットの論理値と第 1の組合せ部分の擬似外部出力線の対応ビットの論理値とが 不一致であるビット対の数、 PCT (Potential Capture Transition)は第 1の組合せ部 分の擬似外部入力線のビットと前記第 1の組合せ部分の擬似外部出力線の対応ビッ トの少なくとも一方が未確定値であるビット対の数、また kはウェイト係数である。例え ば、 0.5を kの値とすることができる。
また、 TECTA = ECT + PCT · k
2 2 2
但し、 ECT (Existing Capture Transition)は第 2の組合せ部分の擬似外部入力線
2
のビットの論理値と第 2の組合せ部分の擬似外部出力線の対応ビットの論理値とが 不一致であるビット対の数、 PCT (Potential Capture Transition)は第 2の組合せ部
2
分の擬似外部入力線のビットと第 2の組合せ部分の擬似外部出力線の対応ビットの 少なくとも一方が未確定値であるビット対の数、 kはウェイト係数である。例えば、 0.5 を kの値とすることができる。
[0043] 図 5は総キヤプチャ状態変化数 TECTA、 TECTAの計算例を示す図である。図
1 2
5の例では、 TECTA = 2. 5、 TECTA = 2. 0となり、 TECTA >
1 2 1
TECTAとなる。
2
[0044] 次に、ステップ 304では、総キヤプチャ状態変化数 TECTA、 TECTAを比較する
1 2
。この結果、 TECTA > TECTAであればステップ 305に進み、他方、 TECTA
1 2 1
≤ TECTAであればステップ 306に進む。尚、ステップ 304では TECTA ≥ T
2 1
ECTAであってもよい。
2
[0045] ステップ 305では、第 1の X埋込処理を行う。また、ステップ 306では、第 2の X埋込 処理を行う。
[0046] ステップ 303〜306により、低電力消費の埋込み処理を対象キヤプチャクロックパ ルス C , Cについて均衡的に行う。
1 2
[0047] ステップ 307では論理シミュレーションを行うことにより、外部出力線 PO及び擬似外 部出力線 PPOに存在する Xビットの一部もしくは全部に論理値が決まる。その後、ス テツプ 301に戻る。
[0048] ステップ 308においては、出力変ィ匕スキャンフリップフロップの数を削減できないが 、テストキューブであれば、外部入力線 PIに Xビットが存在する。このため、テストべク トルの数やシフト消費電力を削減するなどの目的に、外部入力線 PIのすベての Xビッ トに 0もしくは 1を埋込む第 3の埋込処理を行う。この結果、ステップ 309において、 X を含まな!/、テストベクトルが得られる。
[0049] 図 3のステップ 305の第 1の X埋込み処理の詳細を図 6により説明する。
[0050] 始めに、ステップ 601では、割当型 Xタイプのビット順列が存在する力否かを判別す る。ここで、対象キヤプチャクロックパルス に対する割当型 Xタイプは Xタイプ 2, 6で ある。割当型 Xタイプのビット順列が少なくとも 1つ存在するときにはステップ 602に進 み、割当型 Xタイプのビット順列が存在しな 、ときにはステップ 603に進む。
[0051] ステップ 602では、割当型 Xタイプの一個または複数個のビット順列を選択し、該ビ ット順列の Xビットにそれぞれ擬似外部出力線 PPOの対応ビットの論理値を割当てる 。例えば、図 7に示すごとぐ擬似外部入力線 PPIの Xビット a5に擬似外部出力線 PP Oの対応ビット b4の論理値 1を割当てる。割当操作は必ず成功する。これにより、ビッ ト a5とビット b4に対応するスキャンフリップフロップ 12の出力も、キヤプチャ操作時にお いて変化しないことになる。その結果、キヤプチャ消費電力が低減する。そして、図 3 のステップ 307に進む。
[0052] ステップ 603では、 Xタイプ 3、 5、 7および 8の各ビット順列に対して正当化容易度 (J E)を計算する。そして、正当化容易¾Eが最大値であるビット順列を正当化操作の 成功率が高いとみなして対象ビット順列として選択する。
[0053] 正当化容易¾Eは図 8の (A)に示すごとく定義する。ここで、 Sはある目標論理値 の正当化が必要な、 Xビットを持つ信号線である。また、 S , S , · ··, S は Sから到達 できる図 1の組合せ部分 11、 11の外部入力線及び組合せ部分 11の擬似外部入
1 2 1
力線とする。正当化容易¾Eは、 S , S , · ··, S の Sへの平均到達容易度を表す。
1 2 m
図 8の (A)において、
Lは図 1の組合せ部分 11と図 1の組合せ部分 11を含む前回路の最大論理レ
1 2
ベノレ、
Lは信号線 Sの論理レベル、
S
L は信号線 Sの論理レベル
Si i
を示す。尚、論理レベルは、図 8の(B)の例に示すように定義する。すなわち、
1)図 1の組合せ部分 11の外部出力信号線、図 2の組合せ部分 11の外部出
1 2
力信号線および図 2の組合せ部分 11の擬似外部出力線の論理レベルを 1とする。
2
2)あるゲートの出力の論理レベルを Lとすると、そのゲートの入力の論理レベル
g
を L + 1とする。
g
3)ゲートのファンアウト信号線の論理レベルを L , L , · ··, Lとすれば、そのゲ ートの出力(ファンアウトの幹)の論理レベルは L , L , · ··, Lの最大値とする。
1 2 p
例えば、図 8の(B)における信号線 801の正当化容易¾E (801)は、
JE (801) = (4 - I 1 - 3 I ) /4+ (4 - | 1 4 | ) /4
= 2/4 + 1/4
=0. 75
となる。また、図 8の(B)における信号線 802の正当化容易¾E (802)は、
JE (802) = (4- I 1 -4 I ) /4
= 1/4
=0. 25
となる。従って、ある信号線に対して、到達可能なテストキューブ中 Xビット数が多い 程
、また、それらとの論理レベル差が小さい程、その信号線の正当化容易¾Eは大きく なる。
[0054] ステップ 604では、選択された対象ビット順列が正当化操作のみを必要とする正当 化型 (Xタイプ 3, 5)か割当操作及び正当化操作の両方を必要とする割当 Z正当化 型 (Xタイプ 7, 8)かを判別する。この結果、正当化型であればステップ 605〜607に 進み、他方、割当 Z正当化型であればステップ 608〜614に進む。
[0055] ステップ 605〜607について説明する。
[0056] ステップ 605においては、第 1の正当化操作を行う。すなわち、図 9の(A)に示すよ うに、 Xタイプ 3もしくは 5の対象ビット順列の第 2のビット (この例では、 b3)に該対象ビ ット順列の第 1のビット (この例では、 a4)の論理値 (この例では、 0)が現れるように、テ ストキューブ内の Xビットに必要な論理値を決定する処理を行 、、ステップ 606に進 む。
[0057] ステップ 606では、第 1の正当化操作が失敗したカゝ否かを判別する。つまり、必要な 論理値の決定ができず失敗した場合、ステップ 606からステップ 607に進み、第 2の 正当化操作を行う。すなわち、図 9の(B)に示すように、 Xタイプ 3もしくは 5の対象ビ ット順列の第 2のビット (この例では、 b3)に該対象ビット順列の第 1のビット (この例で は、 a4)の論理値 (この例では、 0)と反対の論理値 (この例では、 1)が現れるように、 テストキューブ内の Xビットに必要な論理値を決定する処理を行う。
[0058] ステップ 606において第 1の正当化操作が成功したと判別されたとき、あるいはステ ップ 607において第 2の正当化操作が終了したときには図 3のステップ 307に進む。
[0059] 次に、ステップ 608〜614について説明する。
[0060] ステップ 608においては、第 1の割当/正当化操作を行う。すなわち、図 10の(A) に示すごとぐ Xタイプ 7もしくは 8の対象ビット順列の第 1のビット (この例では、 a6)に 論理値 0の割当てを行い、また、該対象ビット順列の第 2のビット(この例では、 b5)に 論理値 0が現れるように、テストキューブの Xビットに必要な論理値を決定する。ステツ プ 609では、第 1の割当/正当化操作が失敗したカゝ否かを判別する。この操作が失 敗した場合、ステップ 609からステップ 610に進む。
[0061] ステップ 610においては、第 2の割当 Z正当化操作を行う。すなわち、図 10の(B) に示すごとぐ Xタイプ 7もしくは 8の対象ビット順列の第 1のビット (この例では、 a6)に 論理値 1の割当てを行い、また、該対象ビット順列の第 2のビット(この例では、 b5)に 論理値 1が現れるように、テストキューブの Xビットに必要な論理値を決定する。ステツ プ 611では、第 2の割当 Z正当化操作が失敗したカゝ否かを判別する。この操作が失 敗した場合、ステップ 611からステップ 612に進む。
[0062] ステップ 612においては、第 3の割当 Z正当化操作を行う。すなわち、図 11の (A) に示すごとぐ Xタイプ 7もしくは 8の対象ビット順列の第 1のビット (この例では、 a6)に 論理値 0の割当てを行い、また、該対象ビット順列の第 2のビット(この例では、 b5)に 論理値 1が現れるように、テストキューブの Xビットに必要な論理値を決定する。ステツ プ 613では、第 2の割当/正当化操作が失敗したカゝ否かを判別する。この操作が失 敗した場合、ステップ 613からステップ 614に進む。
[0063] ステップ 614においては、第 4の割当 Z正当化操作を行う。すなわち、図 11の(B
)に示すごとぐ Xタイプ 7もしくは 8の対象ビット順列の第 1のビット (この例では、 a6)に 論理値 1の割当てを行い、また、該対象ビット順列の第 2のビット(この例では、 b5)に 論理値 0が現れるように、テストキューブの Xビットに必要な論理値を決定する。
[0064] ステップ 609、 611、 613において第 1、第 2、第 3の割当 Z正当化操作が成功した と判別されたとき、あるいはステップ 614において第 4の割当/正当化操作が終了し たときには図 3のステップ 307に進む。
[0065] 図 3のステップ 306の第 2の X埋込み処理の詳細を図 12により説明する。
[0066] ステップ 1201では、 Xタイプ 3〜8の各ビット順列に対して正当化容易度 (JE)を計 算する。そして、正当化容易¾Eが最大値であるビット順列を正当化操作の成功率 が高いとみなして対象ビット順列として選択する。
[0067] ステップ 1202では、選択された対象ビット順列が 1つの Xビットに対する正当化操 作を必要とする単一正当化型 (Xタイプ 3, 4, 6, 7)か 2つの正当化操作を必要とする 二重正当化型 (Xタイプ 5, 8)かを判別する。この結果、単一正当化型であればステ ップ 1203〜1205に進み、他方、二重正当ィ匕型であればステップ 1206〜1212に 進む。
[0068] ステップ 1203〜 1205【こつ!ヽて説明する。
[0069] ステップ 1203においては、第 3の正当化操作を行う。すなわち、選択された対象ビ ット順列が Xタイプ 4もしくは 6のときに該対象ビット順列の第 3のビットに該対象ビット 順列の第 2のビットの論理値が現れるように、また選択された対象ビット順列が Xタイ プ 3もしくは 7のときに該対象ビット順列の第 2のビットに該対象ビット順列の第 3のビッ トの論理値が現れるように、前記テストキューブの未確定ビットに 0あるいは 1を決定 する。ステップ 1204では、第 3の正当化操作が失敗したか否かを判別する。この操 作が失敗した場合、ステップ 1204からステップ 1205に進む。
[0070] ステップ 1205においては、第 4の正当化操作を行う。すなわち、選択された対象ビ ット順列が Xタイプ 4もしくは 6のときに該対象ビット順列の第 3のビットに該対象ビット 順列の第 2のビットの論理値と反対の論理値が現れるように、また選択された対象ビ ット順列が Xタイプ 3もしくは 7のときに該対象ビット順列の第 2のビットに該対象ビット 順列の第 3のビットの論理値と反対の論理値が現れるように、前記テストキューブの未 確定ビットに 0あるいは 1を決定する。
[0071] ステップ 1204において第 3の正当化操作が成功したと判別されたとき、あるいはス テツプ 1205において第 4の正当化操作が終了したときには図 3のステップ 307に進 む。
[0072] 次【こ、ステップ 1206〜1212【こつ!ヽて説明する。 [0073] ステップ 1206においては、第 5の正当化操作を行う。すなわち、 Xタイプ 5もしくは 8 の対象ビット順列の第 2のビットと第 3のビットに論理値 0が現れるように、テストキュー ブの Xビットに必要な論理値を決定する。ステップ 1207では、第 5の正当化操作が失 敗した力否かを判別する。この操作が失敗した場合、ステップ 1207からステップ 120 8に進む。
[0074] ステップ 1208においては、第 6の正当化操作を行う。すなわち、 Xタイプ 5もしく は 8の対象ビット順列の第 2のビットと第 3のビットに論理値 1が現れるように、テストキ ユーブの Xビットに必要な論理値を決定する。ステップ 1209では、第 5の正当化操作 が失敗したカゝ否かを判別する。この操作が失敗した場合、ステップ 1209からステップ 1210に進む。
[0075] ステップ 1210においては、第 7の正当化操作を行う。すなわち、 Xタイプ 5もしくは 8 の対象ビット順列の第 2のビットに論理値 0、第 3のビットに論理値 1が現れるように、 テストキューブの Xビットに必要な論理値を決定する。ステップ 1211では、第 5の正 当化操作が失敗したカゝ否かを判別する。この操作が失敗した場合、ステップ 1211か らステップ 1212に進む。
[0076] ステップ 1212においては、第 8の正当化操作を行う。すなわち、 Xタイプ 5もしくは 8 の対象ビット順列の第 2のビットに論理値 1、第 3のビットに論理値 0が現れるように、 テストキューブの Xビットに必要な論理値を決定する。
[0077] ステップ 1207、 1209、 1211において第 5、第 6、第 7の正当化操作が成功したと 判別されたとき、あるいはステップ 1212において第 8の正当化操作が終了したときに は図 3のステップ 307に進む。
[0078] 図 13は本発明に係る二重キヤプチャ低消費電力埋込み処理の一例を示す図であ る。
[0079] 図 13の(A)に示すごとく、テストキューブとしてく X, X, 1, 0, X, X>が与えられ、 3ビット順列としてく 1, 0, 0> , < 0, X, 1 > , <X, 1, X> , <X, 0, 1 >が存在す る。この場合、キヤプチャクロックパルス C 、 Cの総キヤプチャ状態変化数 TECTA ,
1 2 1
TECTAは、それぞれ、 2. 5, 2. 0であり、従って、 TECTA≥TECTAであるの
2 1 2 で、まずは対象キヤプチャクロックパルス Cについてのキヤプチャ状態変化数を小さ くする必要がある。
[0080] 図 13の(B)は、対象キヤプチャクロックパルス に対して組合せ部分 1 の擬似外 部入力のビット a5, a6に対して割当操作を行う。これにより、対象キヤプチャクロックパ ルス Cについてのキヤプチャ状態変化数は小さくなる。この場合において、キヤプチ ャクロックパルス C , Cの総キヤプチャ状態変化数 TECTA , TECTAは、それぞ
1 2 1 2
れ、 1. 5, 2. 0となり、従って、 TECTA < TECTAであるので、次に対象キヤプ
1 2
チヤクロックパルス cにつ 、てのキヤプチャ状態変化数を小さくする必要がある。
2
[0081] 図 13の(C)は、対象キヤプチャクロックパルス Cに対して組合せ部分 11 の擬似外
2 2 部出力のビット d4に対して正当化操作を行う。これにより、対象キヤプチャクロックパ ルス Cについてのキヤプチャ状態変化数は小さくなる。この場合において、キヤプチ
2
ャクロックパノレス C, Cの総キヤプチャ状態変化数 TECTA, TECTAは、それぞ
1 2 1 2
れ、 1. 5, 1. 5であり、従って、 TECTA≥ TECTAであるので、対象キヤプチャク
1 2
ロックパルス Cにつ 、てのキヤプチャ状態変化数を小さくする必要がある。
[0082] 図 13の(D)は、対象キヤプチャクロックパルス Cに対して組合せ部分 11 の擬似外 部出力のビット b3に対して正当化操作を行う。これにより、対象キヤプチャクロックパ ルス Cにつ 、てのキヤプチャ状態変化数は小さくなる。
[0083] このように、対象キヤプチャクロックパルス C , Cに対して消費電力を均衡的に削減
1 2
することができる。
[0084] 尚、図 6のステップ 605、 607では、正当化操作の論理値を 0→1の順序で行ってい るが、 1→0の順序でもよい。また、図 6のステップ 608、 610では、割当 Z正当化操 作の論理値を (0割当て、 0正当化)→(1割当て、 1正当化)の順序で行っているが、 ( 1割当て、 1正当ィ匕)→(0割当て、 0正当ィ匕)の順序でもよい。さらに、図 6のステップ 6 12、 614では、割当 Z正当化操作の論理値を (0割当て、 1正当ィ匕)→(1割当て、 0 正当ィ匕)の順序で行っているが、(1割当て、 0正当ィ匕)→(0割当て、 1正当ィ匕)の順 序でもよい。
[0085] 尚、図 12のステップ 1203、 1205では、第 3、第 4の正当化操作の論理値を 0→1 の順序で行っている力 1→0の順序でもよい。図 12のステップ 1206、 1208では、 正当化操作の論理値を (0正当化、 0正当化)→(1正当化、 1正当化)の順序で行つ ているが、(1正当化、 1正当ィ匕)→(0正当ィ匕、 0正当ィ匕)の順序でもよい。さらに、図 1 2のステップ 1210、 1212では、正当化操作の論理値を(0正当化、 1正当化)→(1 正当化、 0正当化)の順序で行っている力 (1正当化、 0正当化)→(0正当化、 1正 当ィ匕)の順序でもよい。
[0086] 上述の図 2、図 3、図 6、図 12のルーチンはプログラムとして記憶媒体に記憶される 。例えば、記憶媒体カ¾OM等の不揮発性メモリであれば予め組込まれ、記憶媒体 が RAM等の揮発性メモリであれば必要に応じて書込まれる。
図面の簡単な説明
[0087] [図 1]本発明に係る半導体論理回路装置のテストベクトル生成の原理を示す回路展 開図である。
[図 2]本発明に係る半導体論理回路装置のテストベクトル生成方法の一実施の形態 を説明するフローチャートである。
[図 3]図 2の二重キヤプチャ低消費電力埋込みステップの詳細なフローチャートである [図 4]図 3のステップ 302の Xタイプを示す表である。
[図 5]図 3のステップ 303の総キヤプチャ状態変化数の計算の一例を示す図である。
[図 6]図 3の対象キヤプチャクロックパルス Cに対する X埋込み処理ステップ 305の詳 細なフローチャートである。
[図 7]図 6のステップ 602を説明する図である。
[図 8]図 6の正当化容易度計算ステップ 603を説明する図である。
[図 9]図 6の正当化操作ステップ 605、 607を説明する図である。
[図 10]図 6の割当 Z正当化操作ステップ 608、 610を説明する図である。
[図 11]図 6の割当 Z正当化操作ステップ 612、 614を説明する図である。
[図 12]図 3の対象キヤプチャクロックパルス Cに対する X埋込み処理ステップ 306の
2
詳細なフローチャートである。
[図 13]本発明に係る二重キヤプチャ低消費電力埋込み処理の一例を示す図である。
[図 14]従来の実速度スキャンテストを説明するブロック回路図である。
[図 15]図 14の回路動作を説明するタイミング図である。 符号の説明
11, 11 , 11 :組合せ部分
1 2
12:スキャンフリップフロップ群 ΡΙ:外部入力線
ΡΡΙ:擬似外部入力線 ΡΟ:外部出力線
ΡΡΟ:擬似外部出力線 SC:スキャンチェーン

Claims

請求の範囲
外部入力線 (PI)、擬似外部入力線 (PPI)、外部出力線 (PO)、擬似外部出力線( PPO)を有する組合せ部分(11)と、
前記擬似外部出力線と前記擬似外部入力線との間に接続されたスキャンフリップフ 口ップ群(12)と
を具備する半導体論理回路装置のテストベクトル生成方法において、
前記組合せ部分を仮想的に前記外部入力線を共通とする第 1、第 2の組合せ部分 (11 , 11 )とし、前記スキャンフリップフロップ群を仮想的に前記第 1、第 2の組合せ
1 2
部分に対して連続する第 1、第 2のキヤプチャクロックパルス(C , C )によって動作す
1 2
る第 1、第 2のスキャンフリップフロップ群(12 , 12 )とし、前記第 1の組合せ部分の
1 2
擬似外部出力線を前記第 2の組合せ部分の擬似外部入力線とし、
前記第 1の組合せ部分の外部入力線及び擬似外部入力線において故障検出に使 わな 、未確定ビットを含むテストキューブが与えられ、かつ前記第 1の組合せ部分の 擬似外部入力線のビットもしくは第 1の組合せ部分の擬似外部出力線の対応ビットに 未確定ビットが存在するとき、前記第 1の組合せ部分の擬似外部入力線の該ビットと 擬似外部出力線の該対応ビットに同じ論理値が現れるように前記テストキューブの未 確定ビットに 0あるいは 1を埋込む第 1の埋込工程と、
前記第 1の組合せ部分の外部入力線及び擬似外部入力線において故障検出に使 わな 、未確定ビットを含むテストキューブが与えられ、かつ前記第 2の組合せ部分の 擬似外部入力線のビットもしくは第 2の組合せ部分の擬似外部出力線の対応ビットに 未確定ビットが存在するとき、前記第 2の組合せ部分の擬似外部入力線の該ビットと 擬似外部出力線の該対応ビットに同じ論理値が現れるように前記テストキューブの未 確定ビットに 0あるいは 1を埋込む第 2の埋込工程と、
前記第 1の組合せ部分の擬似外部入力線のビットと第 1の組合せ部分の擬似外部 出力線のビットとの対応ビット間の不一致数と前記第 2の組合せ部分の擬似外部入 力線のビットと第 2の組合せ部分の擬似外部出力線のビットとの対応ビット間の不一 致数とが均衡的に少なくなるように前記第 1、第 2の埋込工程を選択かつ繰返して実 行させる不一致数均衡削減工程と、 前記第 1の組合せ部分の擬似外部入力線、前記第 1の組合せ部分の擬似外部出 力線及び前記第 2の組合せ部分の擬似外部出力線に未確定ビットが存在しないとき 、前記第 1の組合せ部分の外部入力線のすべての未確定ビットに 0ある 、は 1を埋込 む第 3の埋込工程と
を具備し、前記テストキューブを未確定ビットを含まな 、テストベクトルに変換するこ とを特徴とする半導体論理回路装置のテストベクトル生成方法。
前記不一致数均衡削減工程は、
前記第 1の組合せ部分の擬似外部入力線のビット (ppi )、前記第 1の組合せ部分 の擬似外部出力線の対応ビット (ppo )及び前記第 2の組合せ部分の擬似外部出力 線の対応ビット (ppo )の 3ビットよりなるビット順列の Xタイプを判別する Xタイプ判別
2
工程と、
前記第 1、第 2のキヤプチャクロックパノレスによる前記第 1、第 2のスキャンフリップフ ロップ群の第 1、第 2の総キヤプチャ状態変化数 (TECTA , TECTA )を計
1 2
算する第 1、第 2の総キヤプチャ状態変化数計算工程と、
前記第 1もしくは第 2の埋込工程の終了毎に論理シミュレーションを行うことにより前 記第 1、第 2の組合せ部分の外部出力線、擬似外部出力線に存在する未確定ビット の一部あるいは全部に 0あるいは 1を決定する論理シミュレーション工程と
を具備し、
前記第 1の総キヤプチャ状態変化数が前記第 2の総キヤプチャ状態変化数より多い ときに前記第 1の埋込工程が実行され、前記第 2の総キヤプチャ状態変化数が前記 第 1の総キヤプチャ状態変化数より多いときに前記第 2の埋込工程が実行され、前記 第 1の総キヤプチャ状態変化数と前記第 2の総キヤプチャ状態変化数が等しいときに 前記第 1の埋込工程もしくは前記第 2の埋込工程が実行され、
前記 Xタイプ判別工程、前記第 1、第 2の総キヤプチャ状態変化数計算工程、前記 第 1、第 2の埋込工程及び前記論理シミュレーション工程を前記第 1の組合せ部分の 擬似外部入力線、前記第 1の組合せ部分の擬似外部出力線及び前記第 2の組合せ 部分の擬似外部出力線に未確定ビットがなくなるまで繰返す請求項 1に記載の半導 体論理回路装置のテストベクトル生成方法。 [3] 前記 Xタイプ判別工程は、前記第 1の組合せ部分の擬似外部入力線のビット (pp^ )、前記第 1の組合せ部分の擬似外部出力線の対応ビット (ppo )及び前記第 2の組 合せ部分の擬似外部出力線の対応ビット (ppo )の 3ビットよりなるビット順列 (ppi , p
2 1 po , ppo )に対して、 Xを未確定ビットとし、また b , b , bをそれぞれ任意の論理値
1 2 1 2 3
とすれば、ビット順列が (b , b , b )のときその Xタイプを Xタイプ 1とし、ビット順列が(
1 2 3
X, b , b )のときその Xタイプを Xタイプ 2とし、ビット順列が(b, X, b )のときその Xタ
2 3 1 3 ィプを Xタイプ 3とし、ビット順列が(b, b, X)のときその Xタイプを Xタイプ 4とし、ビッ
1 2
ト順列が(b , X, X)のときその Xタイプを Xタイプ 5とし、ビット順列が(X, b , X)のと
1 2 きその Xタイプを Xタイプ 6とし、ビット順列が(X, X, b )のときその Xタイプを Xタイプ 7
3
とし、ビット順列が (X, X, X)のときその Xタイプを Xタイプ 8とする請求項 2に記載の 半導体論理回路装置のテストベクトル生成方法。
[4] 前記第 1の総キヤプチャ状態変化数計算工程は、第 1の総キヤプチャ状態変化数 T ECTAを
TECTA =ECT +PCT -k
但し、 ECTは前記第 1の組合せ部分の擬似外部入力線のビットの論理値と前記第 1の組合せ部分の擬似外部出力線の対応ビットの論理値とが不一致であるビット対 の数、
PCTは前記第 1の組合せ部分の擬似外部入力線のビットと前記第 1の組合せ部 分の擬似外部出力線の対応ビットの少なくとも一方が未確定値であるビット対の数、 kはウェイト係数、
により計算し、
前記第 2の総キヤプチャ状態変化数計算工程は、第 2の総キヤプチャ状態変化数 T ECTAを
2
TECTA =ECT +PCT -k
2 2 2
但し、 ECTは前記第 2の組合せ部分の擬似外部入力線のビットの論理値と前記第
2
2の組合せ部分の擬似外部出力線の対応ビットの論理値とが不一致であるビット対 の数、
PCTは前記第 2の組合せ部分の擬似外部入力線のビットと前記第 2の組合せ部 分の擬似外部出力線の対応ビットの少なくとも一方が未確定値であるビット対の数、 kはウェイト係数、
により計算する請求項 2に記載の半導体論理回路装置のテストベクトル生成方法。 前記第 1の埋込工程は、
Xタイプ 2あるいは 6のビット順列が存在するときに、 Xタイプ 2あるいは 6のビット 順列の一個または複数個を対象ビット順列として選択し該対象ビット順列の第 1のビ ットに該対象ビット順列の第 2のビットの論理値を割当てる割当工程と、
Xタイプ 2あるいは 6のビット順列が存在しないときに、 Xタイプ 3、 5、 7および 8の各 ビット順列に対して第 1の正当化容易度 CFE )を計算する第 1の正当化容易度計算 工程と、
Xタイプ 2あるいは 6のビット順列が存在しないときに、最大の第 1の正当化容易度 CF E )を有する Xタイプ 3、
5、 7もしくは 8のビット順列を対象ビット順列として選択する第 1の対象ビット順列選択工程と、
前記対象ビット順列が Xタイプ 3もしくは 5のときに該対象ビット順列の第 2のビットに 該対象ビット順列の第 1のビットの論理値が現れるように前記テストキューブの未確定 ビットに 0あるいは 1を決定する第 1の正当化操作工程と、
該第 1の正当化操作工程が失敗したときに前記対象ビット順列の第 2のビットに該 対象ビット順列の第 1のビットの論理値の反対値が現れるように前記テストキューブの 未確定ビットに 0あるいは 1を決定する第 2の正当化操作工程と、
前記対象ビット順列が Xタイプ 7もしくは 8のときに該対象ビット順列の第 1のビットに 第 1の論理値を割当てると共に該対象ビット順列の第 2のビットに該第 1の論理値が 現れるように前記テストキューブの未確定ビットに 0あるいは 1を決定する第 1の割当 Z正当化操作工程と、
前記第 1の割当 Z正当化操作工程が失敗したときに該対象ビット順列の第 1のビッ トに前記第 1の論理値と反対の第 2の論理値を割当てると共に該対象ビット順列の第 2のビットに該第 2の論理値が現れるように前記テストキューブの未確定ビットに 0ある いは 1を決定する第 2の割当 Z正当化操作工程と、
前記第 2の割当 Z正当化操作工程が失敗したときに該対象ビット順列の第 1のビッ トに前記第 1、第 2の論理値の一方 (論理値 Aという)を割当てると共に該対象ビット順 列の第 2のビットに該第 1、第 2の論理値の他方 (論理値 Bという)が現れるように前記 テストキューブの未確定ビットに 0あるいは 1を決定する第 3の割当 Z正当化操作ェ 程と、
前記第 3の割当 Z正当化操作工程が失敗したときに該対象ビット順列の第 1のビッ トに前記論理値 Bを割当てると共に該対象ビット順列の第 2のビットに前記論理値 A が現れるように前記テストキューブの未確定ビットに 0あるいは 1を決定する第 4の割 当 Z正当化操作工程と
を具備する請求項 2に記載の半導体論理回路装置のテストベクトル生成方法。
[6] 前記第 1の正当化容易度計算工程は、前記第 1の正当化容易度をビット順列の第 2のビットから到達できる前記外部入力線及び前記擬似外部入力線の未確定ビット の、該第 2のビットに対する距離の平均値に基づき計算する請求項 5に記載の半導 体論理回路装置のテストベクトル生成方法。
[7] 前記第 2の埋込工程は、
Xタイプ 3〜8の各ビット順列に対して第 2の正当化容易度 CFE )を計算する第 2の
2
正当化容易度計算工程と、
最大の第 2の正当化容易度 CFE )を有する Xタイプ 3〜8のビット順列を対象ビット順
2
列として選択する第 2の対象ビット順列選択工程と、
前記対象ビット順列が Xタイプ 4もしくは 6のときに該対象ビット順列の第 3のビットに 該対象ビット順列の第 2のビットの論理値が現れるように、また前記対象ビット順列が Xタイプ 3もしくは 7のときに該対象ビット順列の第 2のビットに該対象ビット順列の第 3 のビットの論理値が現れるように、前記テストキューブの未確定ビットに 0あるいは 1を 決定する第 3の正当化操作工程と、
該第 3の正当化操作工程が失敗したときに、前記対象ビット順列が Xタイプ 4もしく は 6のときに該対象ビット順列の第 3のビットに該対象ビット順列の第 2のビットの論理 値と反対の論理値が現れるように、また前記対象ビット順列が Xタイプ 3もしくは 7のと さ
に該対象ビット順列の第 2のビットに該対象ビット順列の第 3のビットの論理値と反対 の論理値が現れるように、前記テストキューブの未確定ビットに 0あるいは 1を決定す る第 4の正当化操作工程と、
前記対象ビット順列が Xタイプ 5もしくは 8のときに該対象ビット順列の第 2のビットと 第 3のビットに第 3の論理値が現れるように前記テストキューブの未確定ビットに 0ある いは 1を決定する第 5の正当化操作工程と、
前記第 5の正当化操作工程が失敗したときに該対象ビット順列の第 2のビットと第 3 のビットに前記第 3の論理値と反対の第 4の論理値が現れるように前記テストキューブ の未確定ビットに 0ある 、は 1を決定する第 6の正当化操作工程と、
前記第 6の正当化操作工程が失敗したときに該対象ビット順列の第 2のビットに前 記第 3、第 4の論理値の一方 (論理値 Cと 、う)が現れるようにまた該対象ビット順列の 第 3のビットに該第 3、第 4の論理値の他方 (論理値 Dと 、う)が現れるように前記外部 入力線あるいは前記テストキューブの未確定ビットに 0あるいは 1を決定する第 7の正 当化操作工程と、
前記第 7の正当化操作工程が失敗したときに該対象ビット順列の第 2のビットに前 記倫理値 Dが現れるようにまた該対象ビット順列の第 3のビットに前記倫理値 Cが現 れるように前記外部入力線あるいは前記テストキューブの未確定ビットに 0あるいは 1 を決定する第 8の正当化操作工程と
を具備する請求項 2に記載の半導体論理回路装置のテストベクトル生成方法。
[8] 前記第 2の正当化容易度計算工程は、前記第 2の正当化容易度をビット順列の第 1のビット以外の未確定ビットの集合力 到達できる前記外部入力線及び前記擬似 外部入力線の未確定ビットの、該集合の未確定ビットに対する距離の平均値に基づ き計算する請求項 7に記載の半導体論理回路装置のテストベクトル生成方法。
[9] 外部入力線 (PI)、擬似外部入力線 (PPI)、外部出力線 (PO)、擬似外部出力線( PPO)を有する組合せ部分(11)と、
前記擬似外部出力線と前記擬似外部入力線との間に接続されたスキャンフリップフ 口ップ群(12)と
を具備する半導体論理回路装置のテストベクトル生成プログラムにおいて、 前記組合せ部分を仮想的に前記外部入力線を共通とする第 1、第 2の組合せ部分 (11 , 11 )とし、前記スキャンフリップフロップ群を仮想的に前記第 1、第 2の組合せ
1 2
部分に対して連続する第 1、第 2のキヤプチャクロックパルス(C , C )によって動作す
1 2
る第 1、第 2のスキャンフリップフロップ群(12 , 12 )とし、前記第 1の組合せ部分の
1 2
擬似外部出力線を前記第 2の組合せ部分の擬似外部入力線とし、
前記第 1の組合せ部分の外部入力線及び擬似外部入力線において故障検出に使 わな 、未確定ビットを含むテストキューブが与えられ、かつ前記第 1の組合せ部分の 擬似外部入力線のビットもしくは第 1の組合せ部分の擬似外部出力線の対応ビットに 未確定ビットが存在するとき、前記第 1の組合せ部分の擬似外部入力線の該ビットと 擬似外部出力線の該対応ビットに同じ論理値が現れるように前記テストキューブの未 確定ビットに 0ある 、は 1を埋込む第 1の埋込手順と、
前記第 1の組合せ部分の外部入力線及び擬似外部入力線において故障検出に使 わな 、未確定ビットを含むテストキューブが与えられ、かつ前記第 2の組合せ部分の 擬似外部入力線のビットもしくは第 2の組合せ部分の擬似外部出力線の対応ビットに 未確定ビットが存在するとき、前記第 2の組合せ部分の擬似外部入力線の該ビットと 擬似外部出力線の該対応ビットに同じ論理値が現れるように前記テストキューブの未 確定ビットに 0あるいは 1を埋込む第 2の埋込手順と、
前記第 1の組合せ部分の擬似外部入力線のビットと第 1の組合せ部分の擬似外部 出力線のビットとの対応ビット間の不一致数と前記第 2の組合せ部分の擬似外部入 力線のビットと第 2の組合せ部分の擬似外部出力線のビットとの対応ビット間の不一 致数とが均衡的に
少なくなるように前記第 1、第 2の埋込手順を選択かつ繰返して実行させる不一致数 均衡削減手順と、
前記第 1の組合せ部分の擬似外部入力線、前記第 1の組合せ部分の擬似外部出 力線及び前記第 2の組合せ部分の擬似外部出力線に未確定ビットが存在しないとき 、前記第 1の組合せ部分の外部入力線のすべての未確定ビットに 0ある 、は 1を埋込 む第 3の埋込手順と
を具備し、前記テストキューブを未確定ビットを含まな 、テストベクトルに変換するこ とを特徴とする半導体論理回路装置のテストベクトル生成プログラム。
[10] 前記不一致数均衡削減手順は、
前記第 1の組合せ部分の擬似外部入力線のビット (ppi^、前記第 1の組合せ部分 の擬似外部出力線の対応ビット (ppo )及び前記第 2の組合せ部分の擬似外部出力 線の対応ビット (ppo )の 3ビットよりなるビット順列の Xタイプを判別する Xタイプ判別
2
手順と、
前記第 1、第 2のキヤプチャクロックパノレスによる前記第 1、第 2のスキャンフリップフ ロップ群の第 1、第 2の総キヤプチャ状態変化数 (TECTA , TECTA )を計算する
1 2
第 1、第 2の総キヤプチャ状態変化数計算手順と、
前記第 1もしくは第 2の埋込手順の終了毎に論理シミュレーションを行うことにより前 記第 1、第 2の組合せ部分の外部出力線、擬似外部出力線に存在する未確定ビット の一部あるいは全部に 0あるいは 1を決定する論理シミュレーション手順と
を具備し、
前記第 1の総キヤプチャ状態変化数が前記第 2の総キヤプチャ状態変化数より多い ときに前記第 1の埋込手順が実行され、前記第 2の総キヤプチャ状態変化数が前記 第 1の総キヤプチャ状態変化数より多いときに前記第 2の埋込手順が実行され、前記 第 1の総キヤプチャ状態変化数と前記第 2の総キヤプチャ状態変化数が等しいときに 前記第 1の埋込手順もしくは前記第 2の埋込手順が実行され、
前記 Xタイプ判別手順、前記第 1、第 2の総キヤプチャ状態変化数計算手順、前記 第 1、第 2の埋込手順及び前記論理シミュレーション手順を前記第 1の組合せ部分の 擬似外部入力線、前記第 1の組合せ部分の擬似外部出力線及び前記第 2の組合せ 部分の擬似外部出力線に未確定ビットがなくなるまで繰返す請求項 9に記載の半導 体論理回路装置のテストベクトル生成プログラム。
[11] 前記 Xタイプ判別手順は、前記第 1の組合せ部分の擬似外部入力線のビット (ppi )、前記第 1の組合せ部分の擬似外部出力線の対応ビット (ppo )及び前記第 2の組 合せ部分の擬似外部出力線の対応ビット (ppo )の 3ビットよりなるビット順列 (ppi , p
2 1 po , ppo )に対して、 Xを未確定ビットとし、また b , b , bをそれぞれ任意の論理値
1 2 1 2 3
とすれば、ビット順列が (b , b , b )のときその Xタイプを Xタイプ 1とし、ビット順列が(
1 2 3
X, b , b )のときその Xタイプを Xタイプ 2とし、ビット順列が(b, X, b )のときその Xタ ィプを Xタイプ 3とし、ビット順列が(b , b , X)のときその Xタイプを Xタイプ 4とし、ビッ
1 2
ト順列が(b , X, X)のときその Xタイプを Xタイプ 5とし、ビット順列が(X, b , X)のと
1 2 きその Xタイプを Xタイプ 6とし、ビット順列が(X, X, b )のときその Xタイプを Xタイプ 7
3
とし、ビット順列が(X, X, X)のときその Xタイプを Xタイプ 8とする請求項 10に記載の 半導体論理回路装置のテストベクトル生成プログラム。
[12] 前記第 1の総キヤプチャ状態変化数計算手順は、第 1の総キヤプチャ状態変化数 T ECTAを
TECTA =ECT +PCT -k
但し、 ECTは前記第 1の組合せ部分の擬似外部入力線のビットの論理値と前記第 1の組合せ部分の擬似外部出力線の対応ビットの論理値とが不一致であるビット対 の数、
PCTは前記第 1の組合せ部分の擬似外部入力線のビットと前記第 1の組合せ部 分の
擬似外部出力線の対応ビットの少なくとも一方が未確定値であるビット対の数、 kはウェイト係数、
により計算し、
前記第 2の総キヤプチャ状態変化数計算手順は、第 2の総キヤプチャ状態変化数 T ECTAを
2
TECTA =ECT +PCT -k
2 2 2
但し、 ECTは前記第 2の組合せ部分の擬似外部入力線のビットの論理値と前記第
2
2の組合せ部分の擬似外部出力線の対応ビットの論理値とが不一致であるビット対 の数、
PCTは前記第 2の組合せ部分の擬似外部入力線のビットと前記第 2の組合せ部
2
分の擬似外部出力線の対応ビットの少なくとも一方が未確定値であるビット対の数、 kはウェイト係数、
により計算する請求項 10に記載の半導体論理回路装置のテストベクトル生成プロ グラム。
[13] 前記第 1の埋込手順は、 Xタイプ 2あるいは 6のビット順列が存在するときに、 Xタイプ 2あるいは 6のビット順列 の一個または複数個を対象ビット順列として選択し該対象ビット順列の第 1のビットに 該対象ビット順列の第 2のビットの論理値を割当てる割当手順と、
Xタイプ 2あるいは 6のビット順列が存在しないときに、 Xタイプ 3、 5、 7および 8の各 ビット順列に対して第 1の正当化容易度 CFE )を計算する第 1の正当化容易度計算 手順と、
Xタイプ 2あるいは 6のビット順列が存在しないときに、最大の第 1の正当化容易度 CF E )を有する Xタイプ 3、 5、 7もしくは 8のビット順列を対象ビット順列として選択する第 1の対象ビット順列選択手順と、
前記対象ビット順列が Xタイプ 3もしくは 5のときに該対象ビット順列の第 2のビットに 該対象ビット順列の第 1のビットの論理値が現れるように前記テストキューブの未確定 ビットに 0ある 、は 1を決定する第 1の正当化操作手順と、
該第 1の正当化操作手順が失敗したときに前記対象ビット順列の第 2のビットに該 対象ビット順列の第 1のビットの論理値の反対値が現れるように前記テストキューブの 未確定ビットに 0あるいは 1を決定する第 2の正当化操作手順と、
前記対象ビット順列が Xタイプ 7もしくは 8のときに該対象ビット順列の第 1のビットに 第 1の論理値を割当てると共に該対象ビット順列の第 2のビットに該第 1の論理値が 現れるように前記テストキューブの未確定ビットに 0あるいは 1を決定する第 1の割当 Z正当化操作手順と、
前記第 1の割当 Z正当化操作手順が失敗したときに該対象ビット順列の第 1のビッ トに前記第 1の論理値と反対の第 2の論理値を割当てると共に該対象ビット順列の第 2のビットに該第 2の論理値が現れるように前記テストキューブの未確定ビットに 0ある いは 1を決定する第 2の割当 Z正当化操作手順と、
前記第 2の割当 Z正当化操作手順が失敗したときに該対象ビット順列の第 1のビッ トに前記第 1、第 2の論理値の一方 (論理値 Aという)を割当てると共に該対象ビット順 列の第 2のビットに該第 1、第 2の論理値の他方 (論理値 Bという)が現れるように前記 テストキューブの未確定ビットに 0あるいは 1を決定する第 3の割当 Z正当化操作手 順と、 前記第 3の割当 Z正当化操作手順が失敗したときに該対象ビット順列の第 1のビッ トに前記論理値 Bを割当てると共に該対象ビット順列の第 2のビットに前記論理値 A が現れるように前記テストキューブの未確定ビットに 0あるいは 1を決定する第 4の割 当 Z正当化操作手順と
を具備する請求項 10に記載の半導体論理回路装置のテストベクトル生成プロダラ ム。
[14] 前記第 1の正当化容易度計算手順は、前記第 1の正当化容易度をビット順列の第 2のビットから到達できる前記外部入力線及び前記擬似外部入力線の未確定ビット の、該第 2の
ビットに対する距離の平均値に基づき計算する請求項 13に記載の半導体論理回路 装置のテストベクトル生成プログラム。
[15] 前記第 2の埋込手順は、
Xタイプ 3〜8の各ビット順列に対して第 2の正当化容易度 CFE )を計算する第 2の
2
正当化容易度計算手順と、
最大の第 2の正当化容易度 CFE )を有する Xタイプ 3〜8のビット順列を対象ビット順
2
列として選択する第 2の対象ビット順列選択手順と、
前記対象ビット順列が Xタイプ 4もしくは 6のときに該対象ビット順列の第 3のビットに 該対象ビット順列の第 2のビットの論理値が現れるように、また前記対象ビット順列が Xタイプ 3もしくは 7のときに該対象ビット順列の第 2のビットに該対象ビット順列の第 3 のビットの論理値が現れるように、前記テストキューブの未確定ビットに 0あるいは 1を 決定する第 3の正当化操作手順と、
該第 3の正当化操作手順が失敗したときに、前記対象ビット順列が Xタイプ 4もしく は 6のときに該対象ビット順列の第 3のビットに該対象ビット順列の第 2のビットの論理 値と反対の論理値が現れるように、また前記対象ビット順列が Xタイプ 3もしくは 7のと きに該対象ビット順列の第 2のビットに該対象ビット順列の第 3のビットの論理値と反 対の論理値が現れるように、前記テストキューブの未確定ビットに 0あるいは 1を決定 する第 4の正当化操作手順と、
前記対象ビット順列が Xタイプ 5もしくは 8のときに該対象ビット順列の第 2のビットと 第 3のビットに第 3の論理値が現れるように前記テストキューブの未確定ビットに 0ある いは 1を決定する第 5の正当化操作手順と、
前記第 5の正当化操作手順が失敗したときに該対象ビット順列の第 2のビットと第 3 のビットに前記第 3の論理値と反対の第 4の論理値が現れるように前記テストキューブ の未確定ビットに 0ある 、は 1を決定する第 6の正当化操作手順と、
前記第 6の正当化操作手順が失敗したときに該対象ビット順列の第 2のビットに前 記第 3、第 4の論理値の一方 (論理値 Cと 、う)が現れるようにまた該対象ビット順列の 第 3のビットに該第 3、第 4の論理値の他方 (論理値 Dと 、う)が現れるように前記外部 入力線あるいは前記テストキューブの未確定ビットに 0あるいは 1を決定する第 7の正 当化操作手順と、
前記第 7の正当化操作手順が失敗したときに該対象ビット順列の第 2のビットに前 記倫理値 Dが現れるようにまた該対象ビット順列の第 3のビットに前記倫理値 Cが現 れるように前記外部入力線あるいは前記テストキューブの未確定ビットに 0あるいは 1 を決定する第 8の正当化操作手順と
を具備する請求項 10に記載の半導体論理回路装置のテストベクトル生成プロダラ ム。
前記第 2の正当化容易度計算手順は、前記第 2の正当化容易度をビット順列の第 1のビット以外の未確定ビットの集合力 到達できる前記外部入力線及び前記擬似 外部入力線の未確定ビットの、該集合の未確定ビットに対する距離の平均値に基づ き計算する請求項 15に記載の半導体論理回路装置のテストベクトル生成プログラム
PCT/JP2006/313848 2005-07-26 2006-07-12 半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム WO2007013306A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007528409A JP4752030B2 (ja) 2005-07-26 2006-07-12 半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム
US11/989,487 US7743306B2 (en) 2005-07-26 2006-07-12 Test vector generating method and test vector generating program of semiconductor logic circuit device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005-215214 2005-07-26
JP2005215214 2005-07-26

Publications (1)

Publication Number Publication Date
WO2007013306A1 true WO2007013306A1 (ja) 2007-02-01

Family

ID=37683207

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/313848 WO2007013306A1 (ja) 2005-07-26 2006-07-12 半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム

Country Status (5)

Country Link
US (1) US7743306B2 (ja)
JP (1) JP4752030B2 (ja)
KR (1) KR101010504B1 (ja)
TW (1) TW200712520A (ja)
WO (1) WO2007013306A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008224315A (ja) * 2007-03-09 2008-09-25 Nec Electronics Corp テストパターン生成装置およびテストパターン生成方法
TWI403746B (zh) * 2008-10-22 2013-08-01 國立臺灣大學 測試圖案最佳化的方法
JP2014112375A (ja) * 2008-10-23 2014-06-19 Kyushu Institute Of Technology 生成装置、判別方法、生成方法及びプログラム

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006106626A1 (ja) * 2005-03-30 2006-10-12 Kyushu Institute Of Technology 半導体論理回路装置のテスト方法及びテストプログラム
JP5017604B2 (ja) * 2006-09-27 2012-09-05 国立大学法人九州工業大学 生成装置、生成方法、この方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体
WO2009051191A1 (ja) * 2007-10-19 2009-04-23 Kyushu Institute Of Technology ドントケアビット抽出方法及びドントケアビット抽出プログラム
US7966536B2 (en) * 2008-04-11 2011-06-21 International Business Machines Corporation Method and apparatus for automatic scan completion in the event of a system checkstop
US8311222B2 (en) * 2008-08-26 2012-11-13 GlobalFoundries, Inc. Hardware based multi-dimensional encryption
US7930610B2 (en) * 2008-09-09 2011-04-19 International Business Machines Corporation System and method for power reduction through power aware latch weighting of complex sub-circuits
US7925948B2 (en) * 2008-09-09 2011-04-12 International Business Machines Corporation System and method for power reduction through power aware latch weighting
US8499209B2 (en) * 2009-04-22 2013-07-30 Mentor Graphics Corporation At-speed scan testing with controlled switching activity
US10359471B2 (en) * 2016-06-09 2019-07-23 International Business Machines Corporation Implementing decreased scan data interdependence for compressed patterns in on product multiple input signature register (OPMISR) through scan skewing
US10151797B2 (en) * 2016-07-29 2018-12-11 Stmicroelectronics International N.V. Logic built-in self-test (LBIST) with pipeline scan enable launch on shift (LOS) flip-flop circuit
US11816228B2 (en) 2020-09-25 2023-11-14 Advanced Micro Devices, Inc. Metadata tweak for channel encryption differentiation
TWI800008B (zh) * 2021-09-24 2023-04-21 英業達股份有限公司 測試非揮發性記憶體儲存裝置背板之系統及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04244979A (ja) * 1991-01-31 1992-09-01 Hitachi Ltd 遅延テストパターン及びその作成方法
JP2001099901A (ja) * 1999-09-29 2001-04-13 Nec Corp テストパタン圧縮方法とテストパタン圧縮装置及びシステム並びに記録媒体
JP2004361351A (ja) * 2003-06-06 2004-12-24 Sharp Corp スキャンパス回路およびそれを備える論理回路ならびに集積回路のテスト方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03201035A (ja) * 1989-10-24 1991-09-02 Matsushita Electric Ind Co Ltd 検査系列生成方法
US5590135A (en) * 1991-11-20 1996-12-31 Lucent Technologies Inc. Testing a sequential circuit
US5418792A (en) * 1992-12-02 1995-05-23 At&T Corp. Method for the speedup of test vector generation for digital circuits
US5737341A (en) * 1993-07-01 1998-04-07 Matsushita Electric Industrial Co., Ltd. Method of generating test sequence and apparatus for generating test sequence
US5625630A (en) * 1996-04-24 1997-04-29 Lucent Technologies Inc. Increasing testability by clock transformation
US6067651A (en) * 1998-02-20 2000-05-23 Hewlett-Packard Company Test pattern generator having improved test sequence compaction
US7000202B1 (en) * 1998-07-22 2006-02-14 Magma Design Automation, Inc. Method of vector generation for estimating performance of integrated circuit designs
US6327687B1 (en) * 1999-11-23 2001-12-04 Janusz Rajski Test pattern compression for an integrated circuit test environment
US6865706B1 (en) * 2000-06-07 2005-03-08 Agilent Technologies, Inc. Apparatus and method for generating a set of test vectors using nonrandom filling
US6795948B2 (en) * 2000-12-27 2004-09-21 Intel Corporation Weighted random pattern test using pre-stored weights
US6728917B2 (en) * 2001-02-09 2004-04-27 Agere Systems Inc. Sequential test pattern generation using combinational techniques
US6836856B2 (en) * 2001-05-25 2004-12-28 Carnegie Mellon University Methods for characterizing, generating test sequences for, and/or simulating integrated circuit faults using fault tuples and related systems and computer program products
US6986090B2 (en) * 2002-02-20 2006-01-10 International Business Machines Corporation Method for reducing switching activity during a scan operation with limited impact on the test coverage of an integrated circuit
US7124342B2 (en) * 2004-05-21 2006-10-17 Syntest Technologies, Inc. Smart capture for ATPG (automatic test pattern generation) and fault simulation of scan-based integrated circuits
JP4244979B2 (ja) 2005-09-22 2009-03-25 トヨタ自動車株式会社 内燃機関の過給圧制御装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04244979A (ja) * 1991-01-31 1992-09-01 Hitachi Ltd 遅延テストパターン及びその作成方法
JP2001099901A (ja) * 1999-09-29 2001-04-13 Nec Corp テストパタン圧縮方法とテストパタン圧縮装置及びシステム並びに記録媒体
JP2004361351A (ja) * 2003-06-06 2004-12-24 Sharp Corp スキャンパス回路およびそれを備える論理回路ならびに集積回路のテスト方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008224315A (ja) * 2007-03-09 2008-09-25 Nec Electronics Corp テストパターン生成装置およびテストパターン生成方法
TWI403746B (zh) * 2008-10-22 2013-08-01 國立臺灣大學 測試圖案最佳化的方法
JP2014112375A (ja) * 2008-10-23 2014-06-19 Kyushu Institute Of Technology 生成装置、判別方法、生成方法及びプログラム

Also Published As

Publication number Publication date
TW200712520A (en) 2007-04-01
KR101010504B1 (ko) 2011-01-21
KR20080027348A (ko) 2008-03-26
US7743306B2 (en) 2010-06-22
JPWO2007013306A1 (ja) 2009-02-05
TWI311650B (ja) 2009-07-01
US20090259898A1 (en) 2009-10-15
JP4752030B2 (ja) 2011-08-17

Similar Documents

Publication Publication Date Title
WO2007013306A1 (ja) 半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム
US7484151B2 (en) Method and apparatus for testing logic circuit designs
KR100859394B1 (ko) 반도체 집적 회로의 테스트 방법 및 테스트 패턴 발생 회로
US7234092B2 (en) Variable clocked scan test circuitry and method
JP2003515809A (ja) 集積回路テスト環境のためのテストパターン圧縮方法
US8645778B2 (en) Scan test circuitry with delay defect bypass functionality
US11120187B1 (en) Semiconductor integrated circuit, circuit designing apparatus, and circuit designing method
US20160349318A1 (en) Dynamic Clock Chain Bypass
JP4752029B2 (ja) 半導体論理回路装置のテスト方法及びテストプログラム
US20210279391A1 (en) Semiconductor integrated circuit, circuit designing apparatus, and circuit designing method
US20060041806A1 (en) Testing method for semiconductor device and testing circuit for semiconductor device
JP7169044B2 (ja) 半導体集積回路、その設計方法、プログラム及び記憶媒体
US20060036920A1 (en) Built-in self-test (BIST) for high performance circuits
US8429472B2 (en) Generating device, generating method, and program
Bareiša et al. Generating functional delay fault tests for non-scan sequential circuits
Kongtim et al. Parallel LFSR reseeding with selection register for mixed-mode BIST
Lien et al. A new LFSR reseeding scheme via internal response feedback
Pei et al. An effective implementation scheme for TSV leakage testing
Pomeranz et al. Broadside and functional broadside tests for partial-scan circuits
YERRINAIDU et al. Power Efficient LFSR Based BIST Design
Pomeranz Static test compaction for transition faults under the hazard-based detection conditions
Gopikrishna et al. Test Coverage Analysis of DFT with EDT and without EDT Architecture
Jahangiri et al. Test patterns for ICs that are both secure and have very high coverage
Harika et al. Optimized Test Application Time and Test Data Volume Using LFSR for Combinational Circuits
Rau et al. A novel reseeding mechanism for improving pseudo-random testing of VLSI circuits

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2007528409

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 1020087001148

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 11989487

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06781018

Country of ref document: EP

Kind code of ref document: A1