WO2007111288A1 - 生成装置、生成方法、プログラム、及び、記録媒体 - Google Patents

生成装置、生成方法、プログラム、及び、記録媒体 Download PDF

Info

Publication number
WO2007111288A1
WO2007111288A1 PCT/JP2007/056149 JP2007056149W WO2007111288A1 WO 2007111288 A1 WO2007111288 A1 WO 2007111288A1 JP 2007056149 W JP2007056149 W JP 2007056149W WO 2007111288 A1 WO2007111288 A1 WO 2007111288A1
Authority
WO
WIPO (PCT)
Prior art keywords
test vector
test
target
scan
capture
Prior art date
Application number
PCT/JP2007/056149
Other languages
English (en)
French (fr)
Inventor
Xiaoqing Wen
Seiji Kajihara
Kohei Miyase
Yoshihiro Minamoto
Hiroshi Date
Original Assignee
Japan Science And Technology Agency
Kyushu Institute Of Technology
System Jd Co., Ltd.
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 Japan Science And Technology Agency, Kyushu Institute Of Technology, System Jd Co., Ltd. filed Critical Japan Science And Technology Agency
Publication of WO2007111288A1 publication Critical patent/WO2007111288A1/ja
Priority to US12/235,628 priority Critical patent/US7962822B2/en

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/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
    • 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/318502Test of Combinational circuits

Definitions

  • Generating device generating method, program, and recording medium
  • the present invention relates to a generation device, a generation method, a program capable of causing a computer to execute the generation method, and a recording medium recording the program, and in particular, generates a test vector set for a logic circuit.
  • the present invention relates to a generation device and the like.
  • test means that a test vector is applied to the manufactured semiconductor logic circuit, the test response is observed by the semiconductor logic circuit module, and the test response is compared with the expected test response to determine whether the product is good or defective. Do.
  • the yield rate is called yield, and yield greatly affects the quality, reliability, and manufacturing cost of semiconductor logic circuits.
  • a semiconductor logic circuit is mainly a sequential circuit.
  • the sequential circuit consists of a combinational circuit part that also has logic element power such as an AND gate, a NAND gate, an OR gate, and a NOR gate, and a flip-flop that stores the internal state of the circuit. It becomes more.
  • the combinational circuit section includes an external input line (PI), a pseudo external input line (PPI) that is an output line of a flip-flop, an external output line (PO), and a pseudo external output line that is an input line of a flip-flop ( P PO).
  • the input to the combinational circuit section consists of the one given directly from the external input line and the one given via the pseudo external input line.
  • the output from the combinational circuit section consists of what appears directly on the external output line and what appears on the pseudo external output line.
  • the external input line and pseudo external input line force of the combinational circuit part are applied, and the external output line and pseudo external output line force test of the combinational circuit part are applied. It is necessary to observe the response.
  • One test vector consists of bits corresponding to external input lines and pseudo external input lines.
  • One test response consists of bits corresponding to the external output line and pseudo external output line.
  • a full-scan design is a main technique for solving the controllability and observability problems in the test of the combinational circuit unit described above.
  • Full-scan design is the replacement of flip-flops with scan flip-flops and using them to form one or more scan chains. The operation of the scan flip-flop is controlled by the scan enable (SE) signal line.
  • SE scan enable
  • the test of the combinational circuit portion of the full scan sequential circuit is performed by repeating scan shift and scan capture.
  • the scan shift is performed in the shift mode in which the scan enable (SE) signal is set to logical value 1.
  • shift mode one or more clock pulses are applied and one or more new values are externally shifted into the scan flip-flops in the scan chain.
  • one or more existing values are shifted out to the scan flip-flops in the scan chain.
  • the scan capture is performed in a capture mode in which the scan enable (SE) signal is set to a logical value “0”.
  • the capture mode one clock pulse is simultaneously applied to all the scan flip-flops in one scan chain, and the values of the pseudo external output lines of the combinational circuit section are taken into all the scan flip-flops.
  • the scan shift is for applying a test vector to the combinational circuit unit via the pseudo external input line and for observing the combinational circuit unit force test response via the pseudo external output line. Used for.
  • the scan capture is used to capture the test response of the yarn joining circuit section into the scan flip-flop.
  • the combinational circuit can be tested by repeating scan shift and scan capture for all test vectors. Such a test method is called a scan test method.
  • the test vector is applied to the combinational circuit unit directly from an external input, and by a scan shift. Since the scan shift can set an arbitrary logical value in an arbitrary scan flip-flop, the problem of controllability of the pseudo external input line is solved.
  • the observation of the test response by the combinational circuit power force has a part that is performed directly from the external output and a part that is performed by scan shift.
  • the scan shift can observe the output value of any scan flip-flop, which solves the problem of observability of the pseudo external output line.
  • the power consumption during testing is much greater than during normal operation.
  • the semiconductor logic circuit is composed of CMOS circuits
  • the power consumption includes static power consumption due to leakage current and dynamic power consumption due to switching operations of logic gates and flip-flops.
  • the latter dynamic power consumption includes shift power consumption during a shift operation and capture power consumption during a capture operation.
  • the number of clock pulses given during scan shift is generally large.
  • the shift power consumption increases and may cause excessive heat generation.
  • the semiconductor logic circuit device may be damaged. Shift Power consumption reduction methods are actively studied.
  • the number of clock pulses necessary for scan capture is generally one per scan chain. Therefore, heat generation due to scan capture power consumption is not a problem.
  • the capture mode When the test response of the combinational circuit portion appearing on the external output line is taken into the scan flip-flop, the output value of the corresponding scan flip-flop changes if the test response value and the current value of the scan flip-flop are different. If the number of output change scan flip-flops is large, the power supply voltage temporarily decreases due to the switching operation of the logic gate and the scan flip-flop. This phenomenon is also called IR (I: current, R: resistance) drop phenomenon.
  • the circuit may malfunction due to the IR drop phenomenon, and an incorrect test response value may be captured in the scan flip-flop.
  • a semiconductor logic circuit that can normally operate normally is erroneously tested as a defective product during testing.
  • the yield decreases.
  • semiconductor logic circuits 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 the power consumption of capillaries.
  • the scan power consumption can be reduced by using the clock gating method, but the influence on the physical design of the semiconductor logic circuit is great.
  • the scan capture power consumption can be reduced using the one-hot method or multiple clock method.
  • the former significantly increases the amount of test data, and the latter increases the amount of test vector generation.
  • the burden on the ATPG is large, such as requiring a large amount of memory. Therefore, reducing scan capture power consumption has an impact on physical design and increases the amount of test data! ], And the burden on ATPG is small!
  • test cubes having don't care bits often appear in the process of generating test betas by ATPG programs.
  • test inputs that contain only logical bits (bits with logical value 0 or logical value 1) and no don't care bits are called test vectors.
  • some bits of some test vectors can be made don't care bits without changing the failure detection rate of the set.
  • the test cube can be obtained by the don't care bit identification program.
  • the reason for the existence of the test cube is to set the logical values required for some bits in the external input line and pseudo external input line in order to detect one or more target faults in the combinational circuit part of the full scan sequential circuit. Because it is often sufficient . Setting the remaining bits to 0 or 1 does not affect the detection of the target failure, so such bits become don't care bits for the target failure.
  • Non-Patent Documents 1 to 3 are techniques for making a part of test vectors a don't care bit for a set of test vectors having no don't care bit without changing the failure detection rate of the set. is there.
  • Non-Patent Document 1 in order to identify a don't care bit for each test vector, a method of checking whether each bit can be a don't care bit in order for each bit is used. In this method, the correlation between test vectors is completely ignored. In addition, this method has a drawback that the processing time is increased in proportion to the number of bits.
  • Non-Patent Document 2 a don't care bit is identified based on a technique called XID.
  • the XID method processes all test vectors in a given test vector set at the same time. Specifically, first, the failure that cannot be detected by force with each test vector (called essential failure) is obtained. Next, the logical value setting necessary to detect all the essential faults is obtained by applying the ATPG implication operation and the logical justification method. As a result, the other logical bits are made don't care bits. Since this method does not perform simulation for all input bits, the execution time is more efficient and faster than the method proposed in Non-Patent Document 1 described above. However, this don't care bit method is not subject to the restrictions. In other words, in this method, any logical bit may be a don't care bit.
  • Non-Patent Document 3 similar to the technique of Non-Patent Document 2 described above, not all test vectors but all test vectors in a given test vector set are processed simultaneously.
  • the difference from the technique of Non-Patent Document 2 described above is that no logical bit is allowed to be a don't care bit, and only some logical bits (referred to as candidate bits) specify the don't care bit.
  • the logic bits other than the candidate bits (called fixed bits) also do not specify don't care bits.
  • a don't care bit is specified under a constraint condition consisting of a candidate bit and a fixed bit.
  • Non-Patent Document 4 is a technique for determining a logical value for a don't care bit of a test cube for the purpose of reducing scan capture power consumption.
  • Non-Patent Document 4 a combination of a full scan sequential circuit, a test cube including a don't care bit obtained by various methods, three values (logical value 0, logical value 1, X) Simulate the don't care! ⁇ First, find the test response for the test cube. Next, a bit pair consisting of a pseudo input line bit and a pseudo output line bit is divided into a type A bit pair in which only the pseudo input line bit has don't care, a type B bit pair in which only the pseudo output line bit has don't care, and a pseudo input line. Classify into type C bit pairs where both the bit and pseudo output line bit have don't care. Furthermore, these bit pairs are processed one by one in order.
  • the logical value of the pseudo output line bit corresponding to the don't care bit of the pseudo input line bit is assigned, and in the case of type B bit pair, it corresponds to the don't care bit of the pseudo output line bit. Justification is performed so that the logical value of the pseudo input line bit appears, and the logical value of the don't care bit in the test cube is determined.
  • the pseudo input line bit and the pseudo output line bit are determined. Assign logical values to the pseudo-input lines and justify the pseudo-output lines so that the same logical value (0 or 1) appears in the don't-care bits in both, and change the logical values of the don't-care bits in the test cube.
  • Non-Patent Document 4 is characterized by considering only one bit pair consisting of one pseudo input line bit and one pseudo output line bit when determining the logical value for the don't care bit of the test cube. ,.
  • the logical value determined in this way is not necessarily optimal on the whole! /.
  • Non-patent literature 1 R. Sankaralingam and NATouba, 'Controlling Peak Power Durn Scan Testing, Proceedings of IEEE VLSI Test Symposium, pp.153—159,20 02.
  • Non-Patent Document 2 K.Miyase and S.Kajihara, "XID: Don't Care Identification of Test Patterns for Comoinational and ireuits," IEEE Transactions on Computer- Aided Design, Vol.23, pp.321—326, 2004.
  • Patent Document 3 K.Miyase, S.Kajihara, I.Pomeranz, and S.Reddy, "Don't Care I dentification on Specific Bits of Test Patterns," Proceedings of IEEE / ACM International Conference on Computer Design, pp.194 — 199,2002.
  • Non-Patent Document 4 X. Wen, H. Yamashita, S. Kajihara, L.- T. Wang, K. Sakara, and KK inoshita, "On Low- Capture- Power Test Generation for Scan Testing," Proceedings of IEEE VLSI Test Symposium, pp.265—270,2005.
  • test vector In order to prevent the above problem from occurring, in FIG. 13, between the logic value fetched from the combinational circuit unit 802 to the scan flip-flop 804 and the logic value currently held by the scan flip-flop 804, It is important to use the test vector for the power consumption at low capture when the number of differences is as small as possible. In order to generate such a test vector, a test cube including a don't care bit is created by some method, and further, It is necessary to finalize the final test vector by determining and embedding the optimum logical value for the don't care bits included in the.
  • Test cubes often appear in the process of generating test vectors by ATPG programs.
  • some bits of some test vectors can be made don't care bits without changing the failure detection rate of the set.
  • creating a test cube by specifying the collective power don't care bits of a given test vector is advantageous in application because it has little effect on the test generation flow.
  • Non-Patent Document 1 cannot always effectively reduce the power consumption at the time of capture even for a test cube created with a long execution time.
  • the technology of Non-Patent Document 2 has the ability to identify more don't care bits with a relatively fast execution time because the entire test set is the target of processing. It cannot be effectively reduced.
  • the technology of Non-Patent Document 3 can create a test cube that can effectively reduce the power consumption during capture by specifying don't care bits from only a part of the logical bits of the test set. No indication is given of how to define a specific range of don't care bits constrained by candidate and fixed bits.
  • Non-Patent Document 4 considers not only pseudo input line bits but also pseudo output line bits, and reduces the difference in logical value between the corresponding pseudo input line bits and pseudo output line bits. It is advantageous over other technologies.
  • a logical value (0 or 1) is determined for a don't care bit, there is only one bit pair consisting of one pseudo output line bit and one pseudo output line bit at a time. Not considered. For this reason, the logical value determined in this way is not necessarily optimal overall.
  • An object of the present invention is to provide a generating apparatus, a generating method, a program capable of causing a computer to execute the generating method, and a recording medium storing the program, which generate a test vector set that reduces the difference in values.
  • the invention according to claim 1 is a generating device that generates an initial V vector test vector set by converting an initial test vector set for a logic circuit, and the logic circuit is a sequential circuit that is designed for full scan.
  • the invention according to claim 2 is the generation device according to claim 1, wherein the generation unit includes a selection unit that selects a target failure with respect to the target test vector specified by the specification unit. , All the target faults selected by the selection means can be detected, and the output of the scan cell included in the sequential circuit is! /, And there is a difference in the logic value before and after the scan capture. Generate a new test vector instead of the target test vector that reduces the number of bits to be generated.
  • the invention according to claim 3 is the generation device according to claim 2, wherein the selecting means detects each fault detected only by the target test vector specified by the specifying means as one target test. Distinguish between vector mandatory faults detected only with vectors and set mandatory faults detected with multiple target test vectors, and select them as target test vector target faults that are detected for the vector essential faults and the set mandatory faults Select one of the target test vectors to detect it as the target fault.
  • the invention according to claim 4 is the generation device according to any one of claims 1 to 3, wherein the generation means performs a test generation process on the combinational circuit corresponding to the sequential circuit.
  • V defining a capture collision indicating that the value of the pseudo external input of the combinational circuit is different from the value of the pseudo external output corresponding to the pseudo external input, and even when the capture collision occurs, a knock track is defined. Then, a new test vector is generated in place of the target test vector specified by the specifying means.
  • the invention according to claim 5 is a generating device for generating a new V ⁇ test vector set by converting an initial test vector set for a logic circuit, wherein the logic circuit is a sequential circuit designed for full scan.
  • the value of the pseudo external input corresponding to the combinational circuit is different from the value of the pseudo external output corresponding to the pseudo external input in the test generation process compared to the combinational circuit corresponding to the sequential circuit.
  • a capture collision is defined, and when the capture collision occurs, backtracking is performed, and the scan cell output included in the sequential circuit is used instead of the target test vector in the initial test vector set.
  • the invention according to claim 6 is the generation device according to claim 4 or 5, wherein the generation means is updated when the capture collision occurs, separately from a main implication stack in a test generation process. Use a recovery implication stack.
  • the invention according to claim 7 is a generation method for generating a new V ⁇ test vector set by converting an initial test vector set for a logic circuit, wherein the logic circuit is a sequential circuit designed for full scan.
  • the specifying unit is a bit that causes a difference in logical value before and after the scan capture with respect to the output of the scan cell included in the sequential circuit.
  • a generation test that generates a new test vector that reduces the number of bits that have different logical values. Including Tep.
  • the invention according to claim 8 is the generation method according to claim 7, wherein the generation step includes: A first step of selecting a target fault with respect to the specified target test vector; and all of the selected target faults can be detected with respect to the target test vector specified by the specifying means; and the sequential circuit A second step of generating a new test vector instead of the target test vector so as to reduce the number of bits in which the logical value differs before and after the scan capture with respect to the output of the scan cell included in.
  • the invention according to claim 9 is the generation method according to claim 8, wherein the first step is to convert each fault detected only by the specified target test vector into one target test vector.
  • the target fault is selected from among a plurality of target test vectors for detecting.
  • the invention according to claim 10 is the generation method according to claim 9, wherein the set essential fault and the deviation target test vector are selected as the target faults. In this determination, a result based on an arithmetic expression indicating the degree of overlap between the plurality of faults to be selected is used.
  • the invention according to claim 11 is the generation method according to any one of claims 7 to 10, wherein, in the generation step, a combination circuit corresponding to the sequential circuit is subjected to a test generation process. Then, a capture collision is defined that indicates that the value of the pseudo external input of the combinational circuit is different from the value of the pseudo external output corresponding to the pseudo external input, and backtracking is also performed when the capture collision occurs. Then, a new test vector is generated in place of the target test vector specified by the specifying means.
  • the invention according to claim 12 is a generation method for generating a new V ⁇ test vector set by converting an initial test vector set for a logic circuit, wherein the logic circuit is a sequential circuit designed as a full scan. And a generating means for a combinational circuit corresponding to the sequential circuit, during a test generation process, a value of a pseudo external input of the combinational circuit and a value of a pseudo external output responding to the pseudo external input. Define a capture collision indicating that the two are different, perform backtracking even when the capture collision occurs, and use the scan included in the sequential circuit as a substitute for the target test vector in the initial test vector set. For the cell output, it includes a generation step for generating a new test vector that reduces the number of bits in which the logical value differs before and after the scan capture.
  • the invention according to claim 13 is the generation method according to claim 11 or 12, wherein the generation step is updated when the capture collision occurs separately from the main implication stack in the test generation process. Use the recovered implication stack list.
  • the invention according to claim 14 is the generation method according to claim 13, wherein, in the generation step, if the capture collision occurs, a copy of the current main implication stack is recovered corresponding to the capture. Added to the top of the recovery implication stack list as an implication stack
  • the invention according to claim 15 is the generation method according to claim 13 or 14, wherein, in the generation step, the main implication stack is empty and the recovery implication stack list is not empty.
  • the recovery implication stack at the head of the recovery implication stack list is deleted from the recovery implication stack list to become a new main implication stack, and the capture collision corresponding to the recovery implication stack is ignored in the subsequent test generation process.
  • the invention according to claim 16 is the generation method according to claim 15, wherein the restoration step does not decrease the failure detection rate obtained by the initial test vector set, and therefore detects the target failure. Repeated.
  • the invention according to claim 17 is the generation method according to any one of claims 7 to 16, wherein when the test vector includes an undetermined value, a scan capture A logical value is assigned to the undetermined value so as to reduce the number of bits in which the logical value differs before and after.
  • the invention according to claim 18 is a program capable of causing a computer to execute the generation method according to any one of claims 7 to 17.
  • the invention according to claim 19 is a recording medium on which the computer according to claim 18 is recorded so that the program can be executed.
  • a scan included in a full scan sequential circuit in a logic circuit for example, a scan included in a full scan sequential circuit in a logic circuit.
  • Yansell's output it is possible to more effectively reduce the difference in the logical values generated before and after the scan capture. In this way, erroneous tests can be avoided by reducing the power consumption during scan capture. Therefore, it is possible to eliminate a decrease in the yield rate of a semiconductor logic circuit that normally operates normally as a defective product in a test.
  • the generation apparatus and the generation method according to the present invention do not change the test design flow of the logic circuit nor increase the circuit area by adding hardware. For this reason, it can be said that the generation apparatus and the generation method according to the present invention are very effective for avoiding a false test at the time of capture.
  • the generation apparatus and the generation method in the present invention do not depend on the type of clock, the amount of test data is extremely large as in the case of using a clock gating method when a single clock signal is used during testing. The increase is effective in reducing the amount of test data.
  • the generation apparatus and generation method according to the present invention does not reduce the failure detection rate of the logic circuit, it is effective in improving the defect detection capability of test data.
  • FIG. 1 is a schematic diagram showing a configuration of a general full scan circuit as a background art of the present invention.
  • FIG. 2 is a schematic block diagram of a generation apparatus according to an embodiment of the present invention.
  • FIG. 3 is a process flow diagram of a generation apparatus using a test vector generation method serving as an LCP according to an embodiment of the present invention.
  • FIG. 4 is a diagram showing an example of a result of processing in step ST302 in FIG.
  • FIG. 5 Fault force A diagram showing the concept of the degree of overlap of reachable pseudo external input (output) lines.
  • FIG. 6 is a block diagram showing a configuration of the test cube generation unit 210 in FIG.
  • FIG. 7 is a flowchart showing the procedure of CA-test-cube-generation (f) processing.
  • FIG. 8 is a diagram showing the concept of C collision.
  • FIG. 9 is a first diagram showing an example of a test cube generation process.
  • FIG. 10 is a second diagram showing an example of a test cube generation process.
  • FIG. 11 is a diagram showing experimental results of the present invention.
  • FIG. 12 is a schematic diagram showing a process until a semiconductor logic circuit is shipped to the market.
  • FIG. 13 is a schematic diagram of a full scan sequential circuit in a general logic circuit.
  • FIG. 1 (a) is a schematic diagram showing a configuration of a general full scan circuit.
  • This full scan circuit also includes a combinational circuit portion 100 and a scan flip-flop 102 of a full scan sequential circuit.
  • the combinational circuit portion 100 includes an external input line (PI), a pseudo external input line (PPI) that is an output line of a scan flip-flop, an external output line (PO), and a pseudo external output line (PPO) that is an input line of a flip-flop.
  • PI external input line
  • PPI pseudo external input line
  • PO external output line
  • PPO pseudo external output line
  • V to the combinational circuit part 100 consists of a part ⁇ v: PI> given directly from the external input line and a part given via the pseudo external input line V: PPI> force.
  • V: PPI> is set in scan flip-flop 102 by scan shift.
  • the output from the combinational circuit part 100 is the test response f (v) to the test vector V.
  • ⁇ f (v): PPO> is taken into the scan flip-flop 102 by the scan gap.
  • FIG. 1 (b) shows an example of a case where a difference occurs in the logical value before and after the scan capture in the scan flip-flop 102 in FIG. 1 (a).
  • one bit a which is an element of the test vector v: PPI> and the corresponding test response f (v): PPO> has different logical values in the scan flip-flop 102. If the value is taken, a difference in logical value (hereinafter referred to as transition) occurs in the capture mode.
  • the number of transitions for one test vector is closely related to the power consumption that occurs in the entire circuit including the combinational circuit part 100 caused by that test vector. By reducing the power consumption, power consumption during capture can be reduced.
  • FIG. 2 is a schematic block diagram of the generation apparatus according to the embodiment of the present invention.
  • the generation apparatus 200 includes an initial test vector set generation unit 202, a target test vector specification unit 204, and a test vector set conversion unit 206.
  • the test vector set conversion unit 206 includes a target failure selection unit 208, a test cube generation unit 210, a logical value assignment unit 212, and a final test vector set generation unit 214.
  • the initial test vector set 216 (T) and the final test vector set 218 ( ⁇ ') are input / output data.
  • the initial test vector set 216 is preliminarily obtained by the initial test vector set generation unit 202 by means such as ATPG. This is the generated test vector set.
  • the target test vector specifying unit 204 specifies the test vector to be converted from the initial test vector set 216.
  • the target fault selection unit 208 selects a fault detected by the test vector specified by the target test vector specification unit 204, and the selected fault is classified into a vector essential fault and a set essential fault.
  • the test cube generation unit 210 generates a test cube so that there are no undetected failures among the selected failures. In the generated test cube, logical values are assigned to don't care bits by the logical value assignment unit 212, and a final test vector set is generated by the final test vector set generation unit 214.
  • FIG. 3 shows a process performed by the generation apparatus using the test vector generation method according to the embodiment of the invention.
  • LCP Low Capture Power
  • Stage 1 is the process of step ST300, and the conventional stuck-at fault detection AT PG is used as means for generating the initial test vector set T.
  • This ATPG for stuck-at fault detection generates a test vector set having the minimum size that satisfies the fault detection rate.
  • step 2 all test vectors included in the initial test vector set T that cause HCP (High Capture Power) are identified.
  • HCP means high power consumption during scan capture, and it is replaced with a new test vector V "so that the test vector force CT (v") ⁇ c-limit becomes this HCP.
  • CT (V ") is the number of bits (hereinafter referred to as transition bits) in which logical values differ before and after the scan capture by the test vector V"
  • c- limit is the upper limit value that should be the target of the number of transition bits. If the number of transition bits is less than c-limit, it can be assumed that a false test will not occur. If so, it is a numerical value that can cause a false test. This c-limit is determined by estimating power consumption during circuit design or by rule of thumb.
  • step ST300 the initial test vector set generation unit 202 in Fig. 2 generates the initial test vector set T using the conventional stuck-at fault detection ATPG.
  • step ST301 the target test vector specifying unit 204 in FIG. 2 obtains a test vector set Ttar having all the test vectors V included in the initial test vector set T satisfying CT (V)> c ⁇ limit as elements.
  • step ST302 the target fault selection unit 208 in FIG. 2 detects at least all faults included in the fault list Ftar (v) for each test vector V included in the test vector set Ttar. Then, the failure list Ftar (v) that does not decrease the failure detection rate is obtained.
  • step ST303 it is determined whether or not there is an unprocessed test vector V in Ttar. If not, the process ends. If there is an unprocessed test vector V in Ttar, proceed to the next step ST304.
  • step ST304 each test vector included in each Ttar It is determined whether or not an undetected fault f is included in the fault list Ftar (v) for v. If there is an undetected fault f, the process proceeds to step ST305.
  • step ST305 the test cube generation unit 210 in FIG. 2 performs a test including a don't care bit for detecting all the faults f included in the fault list Ftar ( V ) in consideration of reduction of power consumption at the time of scan capture. Cube V is newly generated by the indeterminate value assignment method for LCP.
  • step ST304 the process returns to step ST304, and it is determined again whether or not the force includes an undetected fault f in the fault list Ftar (v) for each test vector V included in each Ttar. If there is no undetected fault f, the process proceeds to step ST306, where the logical value assignment unit 212 in FIG.
  • step ST307 the final test vector set generation unit 214 in FIG. 2 converts the test vector V included in the initial test vector set T into the test vector V.
  • the final test vector set T is obtained by replacing with ".
  • step ST301, step ST302, and step ST305 are the proposed methods in the present invention, and the rest are conventional methods.
  • step ST301 in FIG. 3 Next, the process of step ST301 in FIG. 3 will be described in detail.
  • Step ST301 in FIG. 3 specifies all the test vectors that cause the HCP included in the initial test vector set T, and stores these test vector sets as Ttar.
  • the purpose is to avoid unnecessary processing of test vectors that are already LCP.
  • step ST302 in FIG. 3 Next, the process of step ST302 in FIG. 3 will be described in detail.
  • test vector set Ttar In order to generate a new test vector that replaces the included test vector v, it is necessary to select the fault list Ftar (v) that does not reduce the fault detection rate.
  • Ftar (v) should include faults that are likely to be detected in the test cube that is the LCP.
  • FIG. 4 shows an example of the result of the process of step ST 302 in FIG. 3 to obtain Ftar (V) that satisfies the above three conditions 1 to 3.
  • the faults f 11 and f 12 Is excluded from the target failure set.
  • All faults included in TA are classified into two types. One is a fault that is detected only with a single test vector in the test vector set Ttar
  • the circled faults shown in Fig. 4 are vector essential faults. The other is detected by multiple test vectors in the test vector set Ttar, and the test vector set (T—Ttar), which is detected by removing the Ttar test vector set from the initial test vector set T, is a failure (hereinafter referred to as set). It is a mandatory 1) failure that is enclosed in the square shown in Fig. 4.
  • All vector mandatory faults of test vector V should be included in fault list Ftar (v).
  • Ftar fault list Ftar
  • vector essential faults fl and f 6 need to be included in Ftar (vl).
  • set mandatory faults should be included in the fault list Ftar (v) or the fault list of other test vectors that detect the set mandatory faults without reducing the fault coverage.
  • f9 is a set mandatory fault detected by the test vectors vl and v4, and this f9 needs to be included in Ftar (vl) or Ftar (v4)!
  • Each set-required fault is included in Ftar (V) that facilitates fault detection when generating a new LCP test cube.
  • V Ftar
  • the following new U and concept are used to calculate the ease of fault detection.
  • FIG. 5 is a diagram showing an outline of the degree of overlap of PPIs and PPOs that can be reached from the fault fa and the fault fb.
  • Ftar (vl) and Ftar (v4) are ⁇ fl, f6 ⁇ and ⁇ f4, f7, f8 ⁇ . If aod (f9, Ftar (vl)) ⁇ aod (f9, Ftar (v4)), the set mandatory fault f9 is included in Ftar (vl).
  • Figure 4 shows the final result.
  • the failure fa and the failure fb force are set according to the overlapping degree of the reachable PPIs and PPOs.
  • the force assigned to the essential failure depends on the number of failures detected by each test vector. You may make it allocate. For example, compare the number of failures in the test vector to be allocated and assign the set essential failures to the one with the smaller number of failures so that the number of failures to be targeted is almost the same.
  • step ST305 in FIG. 3 Next, the process of step ST305 in FIG. 3 will be described in detail.
  • Target failure list Ftar (V) force After obtaining for one test vector v that causes HCP, in the next step, test to detect power consumption at capture in step ST305 in Fig. 3
  • the cube generation process (hereinafter CA-test-cube-generation (f)) generates a test cube that becomes an LCP that detects all failures in Ftar (v).
  • FIG. 6 is a block diagram showing a configuration of test cube generation unit 210 in FIG.
  • the test cube generation unit 210 includes a knock track determination processing unit 600, a back track processing unit 602, and a test cube generation processing unit 604.
  • the knock track determination unit 600 includes a D collision detection unit 606 and a C collision detection unit 608.
  • the test cube generation processing unit 604 includes an initial implication stack processing unit 610, a recovery implication stack processing unit 612, a recovery implication stack list processing unit 614, an initial implication stack 616 (Si), a recovery implication stack 618 (S), and a recovery implication. It consists of stack list 620 (L (S)).
  • the backtrack determination processing unit 600 determines whether or not to perform the backtrack processing based on the test cube V in the initial state. If it is determined that the knocktrack is not performed, the test is performed.
  • the cube generation unit 604 generates a test cube.
  • Fig. 7 is a flowchart showing the CA-test-cube-generation (f) process.
  • CA-test-cube-generation is based on the PODEM algorithm.
  • the processing of step ST702, step ST705, step ST707, step ST708 and step ST709 is an improvement. is there. This improvement is based on two basic concepts: capture collisions (hereinafter referred to as C collisions) and recovery implication stacks.
  • C collisions capture collisions
  • CA- test- cube- generation Generate and simultaneously reduce the number of transition bits for as many bits in the test cube as possible. This will be described in detail below.
  • the conventional ATPG algorithm for combinational circuits based on the PODEM algorithm detects a collision of failure detection information (hereinafter referred to as a D collision) during X-path-checking. This causes a backtracking (hereinafter referred to as a knock track).
  • D collision means that there is no path including an undetermined value to activate the path in failure detection at the gate of the D head signal line (D frontier) and the misaligned PO or PPO! .
  • C collision means that a certain PPI and the corresponding PPO have different values.
  • the occurrence of C collision means that a transition occurs before and after the scan capture. .
  • FIG. 8 shows the concept of C collision.
  • the number of flip-flops is C and the number of C collisions is n.
  • the C collision on the PPI and PPO signal line corresponding to the i-th flip-flop is Ci. There is only one D collision for any X pass check failure.
  • C collisions are checked with CA—test—cube—generation (f).
  • a simple discovery method to evaluate the effects of C collision Ci is to count the number of gates in the combinational circuit part that can also reach the output power of the i-th flip-flop in the scan circuit.
  • step ST700 it is determined whether or not the force has detected a failure to be detected. If it can be detected, the test vector set is successfully generated and the process is terminated. If not detected, the process proceeds to the next step ST701.
  • CA—test—cube—generation (f) determines whether the initial implication stack is aerodynamic in step ST704 and is empty. If there is a C collision, a copy of the current initial implication stack is added to the head of the recovery implication stack list, and backtracking is performed in step ST706.
  • D and C collisions are fundamentally different for the following reasons.
  • test generation fails. However, if there is at least one C collision before the entire search space is searched, test generation may succeed when the C collision is ignored. Test cubes generated by ignoring C collisions can detect the fault being detected, but cannot reduce the number of transition bits.
  • implication stacks are prepared.
  • step ST701 If a D collision is detected at step ST701 in Fig. 7 or a C collision is detected at step ST702, whether or not the initial implication stack is empty is determined at step ST704, and if it is empty, the recovery implication stack list at step ST707. It is determined whether or not is empty. If the recovery implication stack list is empty, test generation fails and processing ends. If the recovery implication stack list is not empty, it means that at least one C collision has occurred, causing the current test generation process to fail. In this case, in step ST708, the top or nearest stack S in the recovery implication stack list is deleted from the recovery implication stack list and restored as the initial implication stack.
  • step ST709 the C collision that matches the stack S is ignored, and the test generation is resumed by performing the process of step ST710.
  • Such a process detects a fault to be detected, and at the same time generates a test cube that reduces as many transition bits as possible.
  • step ST701 If no D-collision is detected in step ST701 in Fig. 7 or C-collision is detected in step ST702, a part of test generation based on PODEM of objective (), backtrace () and imply () in step ST703 Processing is performed, and the process returns to step ST700 to determine again whether or not the force to be detected can be detected. Similarly, when backtracking is performed in step ST706 and test generation is restarted in ST710, the process returns to step ST700 and it is determined again whether or not a failure to be detected can be detected.
  • Figure 9 shows an example of the test cube generation process by CA-test-cube-generation (f).
  • A, B, ..., G are PPIs.
  • backtrace () determines their logical values while generating test cubes in the order of search from A to G.
  • the initial implication stack be PS.
  • PS ⁇ A: 0, B: l, C: 0> and D collision occurs. This is designated as “D”.
  • logical value 1 is assigned to C in the knock track.
  • the stack C2 at the top of the recovery implication stack list recovers as the initial implication stack, and ignores the C collision C2 and resumes test generation.
  • test Symp., 2005, pp.265-270 which is larger than 21.6%.
  • the number of test vectors increases. This is because the current implementation ignores the order of fault detection, and multiple test patterns are used to detect the target fault Ftar (V) for the test vector V. It is also the force that can be generated. However, this problem can be solved by using the order of fault detection when generating the initial test vectors.

Landscapes

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

Abstract

 フルスキャン順序回路に含まれるスキャンセルの出力について、スキャンキャプチャの前後において発生する論理値の相違が低減されるようなテストベクトル集合の生成を行う生成装置等を提供する。論理回路に対する初期テストベクトル集合216を生成する生成装置200であって、前記初期テストベクトル集合216の各テストベクトルのうち、前記順序回路に含まれるスキャンセルの出力についてスキャンキャプチャの前後において論理値に相違が発生するビットの数(遷移ビット数)について所定の基準を満たして選択されるべきテストベクトルを特定する対象テストベクトル特定部204と、前記対象テストベクトル特定部204が特定した選択されるべきテストベクトルに対し、前記順序回路に含まれるスキャンセルの出力について遷移ビット数を減少させるように変換するテストベクトル集合変換部206とを備える。

Description

明 細 書
生成装置、生成方法、プログラム、及び、記録媒体
技術分野
[0001] 本発明は、生成装置、生成方法、生成方法をコンピュータに実行させることが可能 なプログラム、及び、このプログラムを記録した記録媒体に関し、特に、論理回路に対 するテストベクトル集合を生成する生成装置等に関する。
背景技術
[0002] 図 12に示すように、半導体論理回路は、設計、製造、テストの三段階を経て出荷さ れる。ここで、テストとは、製造された半導体論理回路に対してテストベクトルを印加し 、半導体論理回路カゝらテスト応答を観測し、それを期待テスト応答と比較して良品、 不良品の判別を行う。その良品率を歩留りと呼び、歩留りは半導体論理回路の品質 、信頼性及び製造コストを大きく左右する。
[0003] 一般に、半導体論理回路は主に順序回路である。順序回路は、アンド (AND)ゲー ト、ナンド (NAND)ゲート、オア(OR)ゲート、ノア(NOR)ゲート等の論理素子力もな る組合せ回路部と、回路の内部状態を記憶するフリップフロップとよりなる。この場合 、組合せ回路部は、外部入力線 (PI)、フリップフロップの出力線である擬似外部入 力線 (PPI)、外部出力線 (PO)、フリップフロップの入力線である擬似外部出力線 (P PO)を有する。組合せ回路部への入力は、外部入力線より直接与えられるものと、擬 似外部入力線を介して与えられるものからなる。また、組合せ回路部からの出力は、 外部出力線に直接現れるものと、擬似外部出力線に現れるものからなる。
[0004] 順序回路の組合せ回路部をテストするために、組合せ回路部の外部入力線と擬似 外部入力線力 所要のテストベクトルを印加し、組合せ回路部の外部出力線と擬似 外部出力線力 テスト応答を観測する必要がある。 1つのテストベクトルは、外部入力 線と擬似外部入力線に対応するビットからなる。また、 1つのテスト応答は、外部出力 線と擬似外部出力線に対応するビットからなる。
[0005] しかし、順序回路のフリップフロップの出力線 (擬似外部入力線)と入力線 (擬似外 部出力線)は一般に外部より直接アクセスできない。従って、組合せ回路部をテスト するためには、擬似外部入力線の可制御性及び擬似外部出力線の可観測性に問 題がある。
[0006] 上述の組合せ回路部のテストにおける可制御性及び可観測性の問題を解決する 主な手法として、フルスキャン設計がある。フルスキャン設計とは、フリップフロップを スキャンフリップフロップに置き換えた上で、それらを用いて 1本または複数本のスキ ヤンチェーンを形成することである。スキャンフリップフロップの動作はスキャンインネ 一ブル(SE)信号線で制御される。例えば、 SE = 0のとき、従来のフリップフロップと 同じ動作をし、クロックパルスが与えられると、組合せ回路部からの値でスキャンフリツ プフロップの出力値が更新され、また、 SE= 1のとき、同じスキャンチェーンにある他 のスキャンフリップフロップと 1つのシフトレジスタを形成し、クロックパルスが与えられ ると、外部から新しい値がスキャンフリップフロップにシフトインされると同時に、スキヤ ンフリップフロップに現存の値が外部へシフトアウトされる。一般に、同じスキャンチェ ーンにあるスキャンフリップフロップは同じスキャンインネーブル(SE)信号線を共有 する力 異なるスキャンチェーンのスキャンインネーブル(SE)信号線は同一の場合も あれば異なる場合もある。
[0007] フルスキャン順序回路の組合せ回路部のテストはスキャンシフトとスキャンキヤプチ ャを繰り返すことによって行われる。スキャンシフトは、スキャンインネーブル(SE)信 号が論理値 1にされているシフトモードで行われる。シフトモードにおいては、 1つま たは複数のクロックパルスが与えられ、外部から 1つまたは複数の新しい値がスキャン チェーン内のスキャンフリップフロップにシフトインされる。また、それと同時に、そのス キャンチェーン内のスキャンフリップフロップに現存の 1つまたは複数の値が外部ヘシ フトアウトされる。スキャンキヤプチャは、スキャンインネーブル(SE)信号が論理値 0 にされているキヤプチャモードで行われる。キヤプチャモードにおいては、 1つのスキ ヤンチェーンにあるすベてのスキャンフリップフロップに同時に 1つのクロックパルスが 与えられ、組合せ回路部の擬似外部出力線の値がすべてのスキャンフリップフロップ に取り込まれる。
[0008] スキャンシフトは、擬似外部入力線を介して組合せ回路部へテストベクトルを印加 するためと、擬似外部出力線を介して組合せ回路部力 テスト応答を観測するため に用いられる。また、スキャンキヤプチャは、糸且合せ回路部のテスト応答をスキャンフリ ップフ口ップに取り込むために用いられる。すべてのテストベクトルに対して、スキャン シフトとスキャンキヤプチャを繰り返すことによって、組合せ回路部をテストすることが できる。このようなテスト方式はスキャンテスト方式と 、う。
[0009] スキャンテスト方式では、組合せ回路部へのテストベクトルの印加は、外部入力から 直接行われる部分と、スキャンシフトによって行われる部分とがある。スキャンシフトに よって、任意の論理値を任意のスキャンフリップフロップに設定することができるので 、擬似外部入力線の可制御性の問題が解決される。組合せ回路部力ゝらのテスト応答 の観測は、外部出力から直接行われる部分と、スキャンシフトによって行われる部分 とがある。スキャンシフトによって、任意のスキャンフリップフロップの出力値を観測す ることができるため、擬似外部出力線の可観測性の問題が解決される。このように、ス キャンテスト方式にぉ 、ては、自動テストパターン生成 (ATPG)プログラムを用いて テストベクトル及び期待テスト応答を求めるだけで十分である。
[0010] 上述のスキャンテスト方式が有効性を有しているにもかかわらず、通常動作時よりテ スト時の消費電力が非常に大きいという問題点が存在する。半導体論理回路が CM OS回路で構成されていれば、消費電力としては、漏れ電流による静的消費電力と、 論理ゲートやフリップフロップのスイッチング動作による動的消費電力とがある。さらに 、後者の動的消費電力は、シフト操作時におけるシフト消費電力と、キヤプチャ操作 時におけるキヤプチャ消費電力とがある。
[0011] 1つのテストベクトルに対して、スキャンシフト時に与えられるクロックパルスの数は一 般に多い。例えば、あるスキャンチェーン内のすべてのスキャンフリップフロップに新 しい値を設定するために、最大の場合にスキャンフリップフロップ個数分のクロックパ ルスを与える必要がある。このため、シフト消費電力が大きくなり、過度な発熱を引き 起こすことがある。それによつて、半導体論理回路装置を損壊する恐れがある。シフト 消費電力の低減手法が盛んに研究されている。
[0012] 一方、 1つのテストベクトルに対して、スキャンキヤプチャ時に必要なクロックパルス の数は一般に 1つのスキャンチェーンにっき 1つである。そのため、スキャンキヤプチ ャ消費電力による発熱は問題にならない。しかし、キヤプチャモードにおいて、擬似 外部出力線に現れる組合せ回路部のテスト応答がスキャンフリップフロップに取り込 まれるとき、テスト応答値とスキャンフリップフロップの現在値が異なれば、対応するス キャンフリップフロップの出力値が変化する。このような出力変化スキャンフリップフロ ップの数が多ければ、論理ゲートとスキャンフリップフロップのスイッチング動作によつ て、電源電圧が一時的に低下する。この現象は IR(I :電流、 R:抵抗)ドロップ現象と も呼ばれる。 IRドロップ現象により回路が誤動作し、誤ったテスト応答値がスキャンフ リップフロップに取り込まれることがある。これによつて、通常時には正常に動作できる 半導体論理回路は、テスト時に不良品として判定されてしまうという誤テストが発生す る。その結果として、歩留りが低下する。特に、半導体論理回路が超大規模化、超微 細化、低電源電圧化した場合、誤テストによる歩留り低下は顕著である。従って、キヤ プチヤ消費電力の低減が必要である。
[0013] テスト時に単一クロック信号を用いる場合には、クロックゲーティング手法を用いてス キャンキヤプチャ消費電力を低減することができるが、半導体論理回路の物理設計 への影響が大きい。また、テスト時に多重クロック信号を用いる場合には、ワンホット 手法もしくは多重クロック手法でスキャンキヤプチャ消費電力を低減することができる 力 前者はテストデータ量が著しく増大し、後者はテストベクトル生成に膨大なメモリ 消費が必要になるなど ATPGへの負担が大きい。従って、スキャンキヤプチャ消費電 力の低減においては、物理設計への影響、テストデータ量の増力!]、及び ATPGへの 負担が小さ!/、手法が望ま 、。
[0014] 他方、ドントケアビットを有するテストキューブは ATPGプログラムによるテストべタト ルの生成過程で現れることが多い。これに対して、論理ビット (論理値 0又は論理値 1 を持つビット)のみを含み、ドントケアビットを含まないテスト入力はテストベクトルと呼 ばれる。また、ドントケアビットを有しないテストベクトルの集合が与えられる場合、その 集合の故障検出率を変えずに、一部のテストベクトルの一部ビットをドントケアビットに することができる。つまり、ドントケアビット特定プログラムによってテストキューブを得る こともできる。テストキューブが存在する原因は、フルスキャン順序回路の組合せ回路 部内の 1つ又は複数の対象故障を検出するために、外部入力線と擬似外部入力線 における一部のビットに必要な論理値を設定すれば十分であることが多いからである 。その残りのビットに 0を設定しても 1を設定しても、その対象故障の検出に影響を与 えないため、そのようなビットはその対象故障にとってドントケアビットになる。
[0015] 非特許文献 1から 3はドントケアビットを有しないテストベクトルの集合に対して、その 集合の故障検出率を変えずに、一部のテストベクトルの一部ビットをドントケアビットに する技術である。
[0016] 非特許文献 1では、テストベクトルごとにドントケアビットを特定するため、 Bit-Stripin gという各ビットに対して順番にドントケアビットになれるかどうかのチェックを行う手法 を使っている。この手法では、テストベクトル間の相関関係を完全に無視している。ま た、この手法は、ビット数に比例して処理時間が長くなる欠点もある。
[0017] 非特許文献 2では、 XIDと呼ばれる手法に基づきドントケアビットを識別する。非特 許文献 1の技術と異なって、 XID手法はテストベクトルごとではなぐ与えられるテスト ベクトル集合内の全てのテストベクトルに対して同時に処理する。具体的には、まず 各テストベクトルでし力検出できない故障 (必須故障と呼ぶ)を求める。次に、全ての 必須故障を検出するために必要な論理値設定を ATPGの含意操作と論理正当化の 手法を応用して求める。その結果、その他の論理ビットをドントケアビットにする。この 方法では、全部の入力ビットについてシミュレーションを行なうわけではないため、実 行時間においては前述の非特許文献 1で提案された手法よりも効率的で高速である 。しかし、このドントケアビット手法は制限条件を受けていない。つまり、この手法では 、どの論理ビットもドントケアビットにされる可能性がある。
[0018] 非特許文献 3では、前述の非特許文献 2の技術と同様、テストベクトルごとではなく 、与えられるテストベクトル集合内の全てのテストベクトルに対して同時に処理する。 前述の非特許文献 2の技術との違いは、どの論理ビットもドントケアビットにされること を許さず、一部の論理ビット (候補ビットと呼ぶ)のみ力もドントケアビットを特定するこ とにある。候補ビット以外の論理ビット(固定ビットと呼ぶ)力もはドントケアビットを特定 しない。非特許文献 3では、候補ビットと固定ビットからなる制約条件のもとでドントケ ァビットを特定する。前述の非特許文献 2と同様で高速である他、所定の目的を達成 するための効率的なドントケアビット特定を行うことができる。明らかに、このような目 標達成効率は特定されたドントケアビットの位置に関わるため、候補ビットと固定ビット からなる制約条件を目標に合わせて設定することが大事である。
[0019] ドントケアビットを有するテストキューブはあくまでドントケアビットを有しな!/、テストべ タトルを生成する過程で現れる中間物である。このため、テストキューブ内のドントケ ァビットに最終的には論理値 0または論理値 1を埋め込む必要がある。その埋め込み に際しては、何らかの目的を達成するために必要な論理値 (0又は 1)をドントケアビッ トに決定することが一般的に行われる。非特許文献 4はスキャンキヤプチャ消費電力 の低減を目的として、テストキューブのドントケアビットに論理値を決定する技術であ る。
[0020] 非特許文献 4では、フルスキャン順序回路の組合せ回路部にぉ 、て、様々な手法 で得られたドントケアビットを含むテストキューブに対して、 3値 (論理値 0,論理値 1, 及びドントケアを表す X)シミュレーションを行!ヽ、そのテストキューブに対するテスト応 答をまず求める。次に、擬似入力線ビットと擬似出力線ビットからなるビットペアを、擬 似入力線ビットにのみドントケアがあるタイプ Aビットペア、擬似出力線ビットにのみド ントケアがあるタイプ Bビットペア、及び、擬似入力線ビットと擬似出力線ビットの両方 にドントケアがあるタイプ Cビットペアに分類する。更に、これらのビットペアを順番に 1 つずつ処理していく。その処理において、タイプ Aビットペアの場合、擬似入力線ビッ トのドントケアビットに対応する擬似出力線ビットの論理値を割り当てることにし、タイ プ Bビットペアの場合、擬似出力線ビットのドントケアビットに対応する擬似入力線ビッ トの論理値が現れるように、正当化操作を行って、テストキューブ内のドントケアビット の論理値を決めることにし、タイプ Cビットペアの場合、擬似入力線ビットと擬似出力 線ビットの両方にあるドントケアビットに同じ論理値 (0又は 1)が現れるように、擬似入 力線に対する論理値の割り当てと擬似出力線に対する正当化操作を行って、テスト キューブ内のドントケアビットの論理値を決めることにする。明らかに、非特許文献 4 の埋め込み技術の特徴は、テストキューブのドントケアビットに論理値を決める際、 1 つの擬似入力線ビットと 1つの擬似出力線ビットからなる 1つのビットペアしか考慮し て ヽな 、。このように決定された論理値は全体的に見て必ずしも最適と言えな!/、。
[0021] 非特千文献 1 : R.Sankaralingam and N.A.Touba, 'Controlling Peak Power Durin g Scan Testing, Proceedings of IEEE VLSI Test Symposium, pp.153— 159,20 02.
非特許文献 2 : K.Miyase and S.Kajihara, "XID: Don't Care Identification of T est Patterns for Comoinational し ireuits," IEEE Transactions on Computer- A ided Design, Vol.23, pp.321— 326,2004.
特許文献 3 : K.Miyase, S.Kajihara, I.Pomeranz, and S.Reddy, "Don' t Care I dentification on Specific Bits of Test Patterns," Proceedings of IEEE/ ACM International Conference on Computer Design, pp.194— 199,2002.
非特許文献 4 : X.Wen, H.Yamashita, S.Kajihara, L.- T.Wang, K.Saluja, and K.K inoshita, "On Low- Capture- Power Test Generation for Scan Testing," Pro ceedings of IEEE VLSI Test Symposium, pp.265— 270,2005.
発明の開示
発明が解決しょうとする課題
[0022] 前述のように、フルスキャン順序回路のテストの場合、キヤプチャモードにお!、て、 擬似外部出力線に現れる組合せ回路部のテスト応答がスキャンフリップフロップに取 り込まれるとき、テスト応答値とスキャンフリップフロップの現在値が異なれば、対応す るスキャンフリップフロップの出力値が変化する。このような出力変ィ匕スキャンフリップ フロップの数が多ければ、論理ゲートとスキャンフリップフロップのスイッチング動作に よって、電源電圧が一時的に低下する IRドロップ現象が起こり、それにより回路が誤 動作し、誤ったテスト応答値がスキャンフリップフロップに取り込まれることがある。これ によって、通常時には正常に動作できる半導体論理回路は、テスト時に不良品として 判定されてしまうという誤テストが発生する。その結果として、歩留りが低下する。特に 、半導体論理回路が超大規模化、超微細化、低電源電圧化した場合、誤テストによ る歩留り低下は顕著である。従って、キヤプチャ消費電力の低減が必要である。
[0023] 上記問題が起こらないようにするためには、図 13において組合せ回路部 802から スキャンフリップフロップ 804に取り込まれる論理値と、スキャンフリップフロップ 804が 現在持って 、る論理値との間での相違数ができるだけ小さ 、低キヤプチャ時消費電 力のテストベクトルをテストに用いることが重要である。このようなテストベクトルを生成 するために、何らかの手法でドントケアビットを含むテストキューブを作り、更にその中 に含まれるドントケアビットに最適な論理値を決定し埋め込む形で最終テストベクトル に仕上げる必要がある。
[0024] テストキューブは ATPGプログラムによるテストベクトルの生成過程で現れることが 多い。また、ドントケアビットを有しないテストベクトルの集合が与えられる場合、その 集合の故障検出率を変えずに、一部のテストベクトルの一部のビットをドントケアビット にすることができる。特に、与えられたテストベクトルの集合力 ドントケアビットを特定 することによってテストキューブを作ることは、テスト生成フローに与える影響が少ない ため、応用において有利である。
[0025] し力しながら、テストキューブを作るための従来技術は、様々な欠点を持っている。
非特許文献 1の技術は、実行時間が長ぐ作られたテストキューブも必ずしもキヤプチ ャ時消費電力を効果的に低減することができない。非特許文献 2の技術は、テスト集 合全体を処理対象にするため実行時間が比較的早ぐより多くのドントケアビットを特 定することができる力 作られたテストキューブは必ずしもキヤプチャ時消費電力を効 果的に低減することができない。非特許文献 3の技術は、テスト集合の論理ビットの 一部のみよりドントケアビットを特定することによって、キヤプチャ時消費電力を効果 的に低減することができるテストキューブを作ることが可能であるが、候補ビットと固定 ビットで制約されるドントケアビット特定範囲を如何に定めるかについては何も示され ていない。
[0026] 更に、キヤプチャ時消費電力を効果的に低減するために、テストキューブ内のドント ケアビットに論理値 0または論理値 1を埋め込む技術がある。特に、非特許文献 4の 技術は、擬似入力線ビットのみならず擬似出力線ビットをも考慮して、対応する擬似 入力線ビットと擬似出力線ビットの間の論理値の相違を削減するため、他の技術より 有利である。しかし、非特許文献 4の技術は、ドントケアビットに論理値 (0又は 1)を決 定するときに、一回に 1つの擬似出力線ビットと 1つの擬似出力線ビットからなる 1つ のビットペアしか考慮していない。このため、このように決定された論理値は全体的に 見て必ずしも最適と言えな 、。
[0027] なお、ここまではキヤプチャ時の消費電力低減の問題を説明した力 テストデータ 量削制、或いはテストデータの欠陥検出においても、制約が必要な同様の問題があ る。
[0028] ゆえに、本発明は、上記問題を解決するため、例えば、フルスキャン順序回路に含 まれるスキャンセルの出力につ!/、て、スキャンキヤプチャの前後にお 、て発生する論 理値の相違が低減されるようなテストベクトル集合の生成を行う生成装置、生成方法 、生成方法をコンピュータに実行させることが可能なプログラム、及び、このプログラム を記録した記録媒体を提供することを目的とする。
課題を解決するための手段
[0029] 請求項 1に係る発明は、論理回路に対する初期テストベクトル集合を変換して新し Vヽテストベクトル集合を生成する生成装置であって、前記論理回路はフルスキャン設 計された順序回路であって、前記初期テストベクトル集合の各テストベクトルのうち、 前記順序回路に含まれるスキャンセルの出力につ 、てスキャンキヤプチヤの前後に ぉ 、て論理値に相違が発生するビットの数にっ 、て所定の基準を超えて 、る対象テ ストベクトルを特定する特定手段と、前記特定手段が特定した対象テストベクトルの代 わりとして、前記順序回路に含まれるスキャンセルの出力についてスキャンキヤプチャ の前後において論理値に相違が発生するビットの数を減少させる新しいテストべタト ルを生成する生成手段とを備える。
[0030] 請求項 2に係る発明は、請求項 1記載の生成装置であって、前記生成手段は、前 記特定手段が特定した対象テストベクトルに対し、対象故障を選択する選択手段を 有し、前記選択手段が選択した対象故障を全て検出でき、且つ、前記順序回路に含 まれるスキャンセルの出力につ!/、てスキャンキヤプチヤの前後にお 、て論理値に相 違が発生するビットの数を減少させる対象テストベクトルに代わる新しいテストベクトル を生成する。
[0031] 請求項 3に係る発明は、請求項 2記載の生成装置であって、前記選択手段は、前 記特定手段が特定した対象テストベクトルのみで検出される各故障を、一つの対象 テストベクトルのみで検出されるベクトル必須故障と複数の対象テストベクトルで検出 されるセット必須故障に区別し、前記ベクトル必須故障についてそれを検出する対象 テストベクトルの対象故障として選択するとともに前記セット必須故障についてそれを 検出する複数の対象テストベクトルのうちのいずれかの対象故障として選択する。 [0032] 請求項 4に係る発明は、請求項 1から 3のいずれかに記載の生成装置であって、前 記生成手段は、前記順序回路に対応する組合せ回路に対し、テスト生成過程にお V、て前記組合せ回路のある擬似外部入力の値と前記擬似外部入力に対応する擬似 外部出力の値とが異なることを表すキヤプチャ衝突を定義し、前記キヤプチャ衝突が 生じたときにもノ ックトラックを行って、前記特定手段が特定した対象テストベクトルに 代わる新し 、テストベクトルを生成する。
[0033] 請求項 5に係る発明は、論理回路に対する初期テストベクトル集合を変換して新し Vヽテストベクトル集合を生成する生成装置であって、前記論理回路はフルスキャン設 計された順序回路であって、前記順序回路に対応する組合せ回路に対し、テスト生 成過程にお!、て前記組合せ回路のある擬似外部入力の値と前記擬似外部入力に 対応する擬似外部出力の値とが異なることを表すキヤプチャ衝突を定義し、前記キヤ プチヤ衝突が生じたときにもバックトラックを行って、前記初期テストベクトル集合のう ちの対象テストベクトルの代わりとして、前記順序回路に含まれるスキャンセルの出力 につ 、てスキャンキヤプチヤの前後にお 、て論理値に相違が発生するビットの数を減 少させる新しいテストベクトルを生成する生成手段を備える。
[0034] 請求項 6に係る発明は、請求項 4又は 5記載の生成装置であって、前記生成手段 は、テスト生成過程における主含意スタックとは別に、前記キヤプチャ衝突が生じたと きに更新される回復含意スタックを用 ヽる。
[0035] 請求項 7に係る発明は、論理回路に対する初期テストベクトル集合を変換して新し Vヽテストベクトル集合を生成する生成方法であって、前記論理回路はフルスキャン設 計された順序回路であって、特定手段が、前記初期テストベクトル集合の各テストべ タトルのうち、前記順序回路に含まれるスキャンセルの出力についてスキャンキヤプチ ャの前後にお 、て論理値に相違が発生するビットの数にっ 、て所定の基準を超えて いる対象テストベクトルを特定する特定ステップと、生成手段が、前記特定手段が特 定した対象テストベクトルの代わりとして、前記順序回路に含まれるスキャンセルの出 力につ 、てスキャンキヤプチヤの前後にお 、て論理値に相違が発生するビットの数を 減少させる新しいテストベクトルを生成する生成ステップとを含む。
[0036] 請求項 8に係る発明は、請求項 7記載の生成方法であって、前記生成ステップは、 前記特定された対象テストベクトルに対し、対象故障を選択する第 1のステップと、前 記特定手段が特定した対象テストベクトルに対し、前記選択された対象故障を全て 検出でき、且つ、前記順序回路に含まれるスキャンセルの出力についてスキャンキヤ プチヤの前後において論理値に相違が発生するビットの数を減少させるように対象テ ストベクトルに代わる新しいテストベクトルを生成する第 2のステップとを含む。
[0037] 請求項 9に係る発明は、請求項 8記載の生成方法であって、前記第 1のステップは 、前記特定された対象テストベクトルのみで検出される各故障を、一つの対象テスト ベクトルのみで検出されるベクトル必須故障と複数の対象テストベクトルで検出される セット必須故障に区別し、前記ベクトル必須故障についてそれを検出する対象テスト ベクトルの対象故障として選択するともに前記セット必須故障についてそれを検出す る複数の対象テストベクトルのうちのいずれかの対象故障として選択する。
[0038] 請求項 10に係る発明は、請求項 9記載の生成方法であって、前記セット必須故障 カ^、ずれの対象テストベクトルにつ 、ての対象故障として選択されるかにつ 、ての判 断に、前記複数の選択されるべき故障の間の重なり具合を示す演算式に基づく結果 が用いられる。
[0039] 請求項 11に係る発明は、請求項 7から 10のいずれかに記載の生成方法であって、 前記生成ステップでは、前記順序回路に対応する組合せ回路に対し、テスト生成過 程にお 、て前記組合せ回路のある擬似外部入力の値と前記擬似外部入力に対応 する擬似外部出力の値とが異なることを表すキヤプチャ衝突を定義し、前記キヤプチ ャ衝突が生じたときにもバックトラックを行って、前記特定手段が特定した対象テスト ベクトルに代わる新 、テストベクトルを生成する。
[0040] 請求項 12に係る発明は、論理回路に対する初期テストベクトル集合を変換して新し Vヽテストベクトル集合を生成する生成方法であって、前記論理回路はフルスキャン設 計された順序回路であって、生成手段が、前記順序回路に対応する組合せ回路に 対し、テスト生成過程にぉ 、て前記組合せ回路のある擬似外部入力の値と前記擬似 外部入力に応答する擬似外部出力の値とが異なることを表すキヤプチャ衝突を定義 し、前記キヤプチャ衝突が生じたときにもバックトラックを行って、前記初期テストべタト ル集合のうちの対象テストベクトルの代わりとして、前記順序回路に含まれるスキャン セルの出力につ 、てスキャンキヤプチヤの前後にお 、て論理値に相違が発生するビ ットの数を減少させる新しいテストベクトルを生成する生成ステップを含む。
[0041] 請求項 13に係る発明は、請求項 11又は 12記載の生成方法であって、前記生成ス テツプでは、テスト生成過程における主含意スタックとは別に、前記キヤプチャ衝突が 生じたときに更新される回復含意スタックリストを用いる。
[0042] 請求項 14に係る発明は、請求項 13記載の生成方法であって、前記生成ステップ では、前記キヤプチャ衝突が生じれば、現在の主含意スタックの複製が前記キヤプチ ャに対応する回復含意スタックとして前記回復含意スタックリストの先頭に追加される
[0043] 請求項 15に係る発明は、請求項 13又は 14記載の生成方法であって、前記生成ス テツプでは、前記主含意スタックが空であって前記回復含意スタックリストが空ではな いときには、前記回復含意スタックリストの先頭にある回復含意スタックが前記回復含 意スタックリストから削除され、新たな主含意スタックとされ、前記回復含意スタックに 対応するキヤプチャ衝突は以降のテスト生成過程において無視されてテストベクトル の生成が再開されるリストアステップを含む。
[0044] 請求項 16に係る発明は、請求項 15記載の生成方法であって、前記リストアステツ プは、初期テストベクトル集合で得られる故障検出率が低下しないために、対象故障 を検出するまで繰り返される。
[0045] 請求項 17に係る発明は、請求項 7から 16のいずれかに記載の生成方法であって、 前記新し 、テストベクトルに未定値が含まれて ヽる場合、スキャンキヤプチヤの前後 にお ヽて論理値に相違が発生するビットの数を減少させるように前記未定値に論理 値が割り当てられる。
[0046] 請求項 18に係る発明は、請求項 7から 17のいずれかに記載の生成方法をコンビュ ータに実行させることが可能なプログラム。
[0047] 請求項 19に係る発明は、請求項 18記載のプログラムをコンピュータが実行すること が可能にて記録した記録媒体。
発明の効果
[0048] 本発明によれば、例えば、論理回路におけるフルスキャン順序回路に含まれるスキ ヤンセルの出力につ 、て、スキャンキヤプチャの前後にお!/、て発生する論理値の相 違がより効果的に低減させることができる。それにより、スキャンキヤプチャ時の消費 電力を抑えることで、誤テストを回避できる。従って、本来正常な動作を行う半導体論 理回路をテストにおいて不良品として廃棄するような良品率の低下を解消することが できる。
[0049] また、本発明における生成装置及び生成方法は、論理回路のテスト設計フローを 変更することもハードウェア追カ卩によって回路面積を増加させることもない。このため 、本発明における生成装置及び生成方法は、キヤプチャ時の誤テストを回避するた めに非常に効果的であると言える。
[0050] さらに、本発明における生成装置及び生成方法は、クロックの種類に依存しないの で、テスト時に単一クロック信号を用いる場合にクロックゲーティング手法を採用する 場合のようにテストデータ量が著しく増大することはなぐテストデータ量の低減にも効 果がある。
[0051] さらに、本発明における生成装置及び生成方法は、論理回路の故障検出率の低 下はないため、テストデータの欠陥検出能力の向上に効果がある。
図面の簡単な説明
[0052] [図 1]本発明の背景技術となる一般的なフルスキャン回路の構成を示した模式図であ る。
[図 2]本発明の実施の形態に係る生成装置の概略ブロック図である。
[図 3]本発明の実施の形態に係る LCPとなるテストベクトル生成手法による生成装置 の処理フロー図である。
[図 4]図 3におけるステップ ST302の処理が行われた結果の一例を示した図である。
[図 5]故障力 到達可能な擬似外部入力(出力)線の重なりの度合いの概念を示した 図である。
[図 6]図 2におけるテストキューブ生成部 210の構成を示したブロック図である。
[図 7]CA— test— cube— generation (f)の処理の手順を示したフロー図である。
[図 8]C衝突の概念を示した図である。
[図 9]テストキューブ生成過程の一例を示した第 1の図である。 [図 10]テストキューブ生成過程の一例を示した第 2の図である。
[図 11]本発明の実験結果を示した図である。
[図 12]半導体論理回路が市場に出荷されるまでの工程を示した模式図である。
[図 13]—般的な論理回路におけるフルスキャン順序回路の模式図である。
符号の説明
[0053] 200 生成装置
204 対象テストベクトル特定部
206 テストベクトル集合変換部
216 初期テストベクトル集合
発明を実施するための最良の形態
[0054] 本発明の実施の形態を以下に示す。
[0055] 図 1を参照して、本発明の背景技術となる一般的なフルスキャン回路について説明 する。
[0056] 図 1 (a)は、一般的なフルスキャン回路の構成を示した模式図である。このフルスキ ヤン回路は、組合せ回路部分 100とフルスキャン順序回路のスキャンフリップフロップ 102と力も構成される。組合せ回路部分 100は、外部入力線 (PI)、スキャンフリップ フロップの出力線である擬似外部入力線 (PPI)、外部出力線 (PO)、フリップフロップ の入力線である擬似外部出力線 (PPO)を有する。組合せ回路部分 100へのテスト ベクトル Vは、外部入力線より直接与えられる部分 < v: PI>と、擬似外部入力線を介 して与えられる部分く V: PPI >力らなる。く V: PPI >はスキャンシフトによってスキヤ ンフリップフロップ 102に設定される。また、組合せ回路部分 100からの出力はテスト ベクトル Vに対するテスト応答 f (v)であり、外部出力線に直接現れる部分 < f (v): PO >と、擬似外部出力線に現れる部分く f (v): PPO >力 なる。 <f (v): PPO >はス キャンキヤプチヤによってスキャンフリップフロップ 102に取り込まれる。
[0057] 図 1 (b)は図 1 (a)におけるスキャンフリップフロップ 102におけるスキャンキヤプチャ の前と後において論理値に相違が発生する場合の一例を示す。
[0058] 図 1 (b)において、テストベクトルく v: PPI>の要素である一つのビット aと、それに 対応するテスト応答く f (v): PPO >が、スキャンフリップフロップ 102で異なる論理値 を取ると、キヤプチャモードの際に論理値の相違 (以下、遷移とする)が発生する。あ る一つのテストベクトルに対する遷移の数は、そのテストベクトルを原因とした組合せ 回路部分 100を含めた回路全般で発生する消費電力と深く関係しているため、テスト ベクトルに対するキヤプチャ時の遷移の数を削減することで、キヤプチャ時の消費電 力を低減することができる。
[0059] 次に、本発明の実施の形態に係る生成装置の構成を説明する。図 2は、本発明の 実施の形態に係る生成装置の概略ブロック図である。
[0060] 生成装置 200は、初期テストベクトル集合生成部 202と対象テストベクトル特定部 2 04とテストベクトル集合変換部 206とから構成されて ヽる。テストベクトル集合変換部 206は、対象故障選択部 208とテストキューブ生成部 210と論理値割当部 212と最 終テストベクトル集合生成部 214とから構成される。また、入出力データとして初期テ ストベクトル集合 216 (T)と最終テストベクトル集合 218 (Τ' )があり、初期テストべタト ル集合 216は初期テストベクトル集合生成部 202により予め ATPG等の手段により生 成されたテストベクトル集合である。
[0061] 図 2の生成装置 200の処理について簡単に説明する。まず初期テストベクトル集合 216が生成されると、対象テストベクトル特定部 204により初期テストベクトル集合 21 6の中から変換の対象とされるテストベクトルが特定される。次に、対象故障選択部 2 08が、対象テストベクトル特定部 204により特定されたテストベクトルにより検出される 故障を選択し、その選択された故障はベクトル必須故障とセット必須故障に区別され る。テストキューブ生成部 210は選択された故障の中で未検出となる故障がないよう にテストキューブを生成する。生成されたテストキューブは、論理値割当部 212により ドントケアビットに論理値が割り当てられ、最終テストベクトル集合生成部 214により最 終テストベクトル集合が生成される。
[0062] なお、この時変換の対象となる対象テストベクトル以外の非対象テストベクトルで検 出される故障も検出されるため、初期テストベクトル集合での検出率が低下することな くテストベクトルを生成することができる。
[0063] 次に、図 3を参照して本発明の実施の形態に係る生成装置の処理を説明する。
[0064] 図 3は、本発明の実施の形態に係るテストベクトル生成手法による生成装置の処理 フロー図である。
[0065] ここで、 LCP (Low Capture Power)とはスキャンキヤプチャ時に消費電力が低 いことであり、本発明の実施の形態に係る生成装置の処理は、大きく分けて図 3にお ける段階 1と段階 2の 2つの処理により構成される。段階 1は、ステップ ST300の処理 であり、初期テストベクトル集合 Tを生成する手段として、従来の縮退故障検出用 AT PGを用いる。この縮退故障検出用 ATPGは故障検出率を満たす必要最低限のサイ ズを持つテストベクトル集合を生成する。
[0066] 段階 2は、初期テストベクトル集合 Tに含まれる、 HCP (High Capture Power) の原因となる全てのテストベクトルが特定される。 HCPとは、スキャンキヤプチャ時に 消費電力が高いことであり、この HCPとなるテストベクトル力 CT(v") < c— limitとな るように新 、テストベクトル V"に置き換えられる。
[0067] ここで、 CT (V")は、テストベクトル V"によるスキャンキヤプチヤの前後にお 、て論理 値に相違が発生するビット(以下遷移ビットとする)の数であり、 c— limitは、遷移ビッ ト数の目標とすべき上限値であり、遷移ビット数が c— limit以下であれば、誤テストが 起こらな ヽと想定できる数値であり、遷移ビット数力 c— limit以上であれば誤テストを 起こす要因となり得る数値である。この c— limitは回路設計時の消費電力量の見積 もりまたは経験則等力 決定される。
[0068] 図 3に戻って、まずステップ ST300では、図 2における初期テストベクトル集合生成 部 202により、初期テストベクトル集合 Tが従来の縮退故障検出用 ATPGを用いて生 成される。ステップ ST301では、図 2における対象テストベクトル特定部 204により、 CT (V) > c— limitとなる初期テストベクトル集合 Tに含まれる全てのテストベクトル Vを 要素に持つテストベクトル集合 Ttarを得る。次に、ステップ ST302では、図 2におけ る対象故障選択部 208により、テストベクトル集合 Ttarに含まれる各テストベクトル V に対して、少なくとも故障リスト Ftar (v)に含まれる全ての故障が検出されると、故障 検出率が低下しない故障リスト Ftar(v)を得る。
[0069] 次に、ステップ ST303では、 Ttar内に未処理のテストベクトル Vがあるか否かが判 定され、なければ処理を終了する。 Ttar内に未処理のテストベクトル Vがあれば、次 のステップ ST304〖こ進む。ステップ ST304では、各 Ttarに含まれる各テストベクトル vに対する故障リスト Ftar(v)に未検出の故障 fが含まれるか否かが判定される。未検 出の故障 fがあればステップ ST305に進む。
[0070] ステップ ST305では、図 2におけるテストキューブ生成部 210により、スキャンキヤ プチヤ時の消費電力の削減を考慮した故障リスト Ftar (V)に含まれる全ての故障 fを 検出するドントケアビットを含むテストキューブ V,が LCPを目的とした不定値割当手 法により新しく生成される。次にステップ ST304に戻って、再び各 Ttarに含まれる各 テストベクトル Vに対する故障リスト Ftar (v)に未検出の故障 fが含まれる力否かが判 定される。未検出の故障 fがなければステップ ST306に進み、図 2における論理値割 当部 212によりテストキューブ v,に含まれるドントケアビットに対して、スキャンキヤプ チヤ時の消費電力が削減されるように論理値が割り当てられ、ドントケアビットを含ま ないテストベクトル V"が得られる。そして、ステップ ST307で、図 2における最終テスト ベクトル集合生成部 214により、初期テストベクトル集合 Tに含まれるテストベクトル V をテストベクトル V"で置き換えることにより、最終テストベクトル集合 T,を得る。以上の 処理により、初期テストベクトル集合 Tと最終テストベクトル集合 T'の故障検出率は同 じであり、 T'のほうがスキャンキヤプチャ時の消費電力が低くなる。
[0071] 図 3において、ステップ ST301、ステップ ST302及びステップ ST305が本発明で の提案手法であり、それ以外は従来手法である。
[0072] 次に、図 3におけるステップ ST301の処理について詳細に説明する。
[0073] 図 3におけるステップ ST301は、初期テストベクトル集合 Tに含まれる、 HCPの原 因となる全てのテストベクトルを特定し、それらのテストベクトル集合を Ttarとして保存 する。その目的は、すでに LCPとなるテストベクトルに対する不必要な処理を避ける ためである。
[0074] この処理は、消費電力解析に基づいて行うのが最良である力 このアプローチでは 時間が掛かり、レイアウト情報がこの段階では使用することができないかもしれない。 従って、 CT(v) >c— limitとなるテストベクトル Vを特定する。
[0075] 次に、図 3におけるステップ ST302の処理について詳細に説明する。
[0076] この処理では、テストベクトル集合 Ttarに含まれる各テストベクトル力 SLCPとなるテ ストベクトルにそれぞれ置き換えられる必要がある。また、テストベクトル集合 Ttarに 含まれるテストベクトル vと置き換える新 、テストベクトルを生成するために、故障検 出率が低下しな 、故障リスト Ftar (v)を選択する必要がある。
[0077] 故障を選択する場合、以下の条件を満たす必要がある。
[0078] (条件 1)以下の式は、テストベクトル集合 Ttarに含まれるテストベクトルによっての み検出される全ての故障を含むべきである。これは故障検出率が低下しないことを保 証する。
[0079] [数 1]
> Ftar(V)
Vel t r
[0080] (条件 2) Ftar (v)は、 LCPとなるテストキューブで検出され易い故障を含むべきで ある。
[0081] (条件 3) Ftar (v)は、できるだけ小さ 、集合であるべきである。
[0082] 図 4は、上記条件 1から条件 3の 3つの条件を満たす Ftar (V)を得るために、図 3に おけるステップ ST302の処理が行われた結果の一例を示す。
[0083] 図 4にお!/、て、初期テストべクトノレ集合 T= {vl, v2, v3, v4, v5}とし、 vl、 v4及び v5を HCPであるテストベクトルとする。すなわち、 Ttar= {vl, v4, v5}である。ここで 、故障が 12個存在することとし、故障シミュレーションによって得られた故障検出の情 報を図 4に示す。ここで、対象テストベクトルの遷移ビットの数を減らすためには、対象 テストベクトルが対象とする故障数が少ないほうがよい。従って、図 4中の下線で示さ れる故障 f 11及び f 12はテストベクトル集合 Ttarに含まれな!/、テストベクトル v2及び v 3によって検出されるため、故障 f 11及び f 12は対象テストベクトルが対象とする故障 集合から除外される。つまり、テストベクトル集合 Ttarに含まれるテストベクトルによつ てのみ検出される故障集合は TA= {fl, f4〜fl0}となる。このことから、 TAに含ま れる全ての故障が検出できれば初期テストベクトル集合力 得られる故障検出率と比 較して低下しない。
[0084] TAに含まれる全ての故障は 2つの種類に分類される。一方は、テストベクトル集合 Ttarに含まれる唯一のテストベクトルでのみ検出される故障 (以下ベクトル必須故障 とする)であり、図 4に示す丸で囲まれた故障が、ベクトル必須故障である。また、他方 は、テストベクトル集合 Ttar内の複数のテストベクトルで検出され、初期テストベクトル 集合 Tから Ttarのテストベクトル集合を除 、たテストベクトル集合 (T—Ttar)では検 出できない故障 (以下セット必須故障とする)であり、図 4に示す四角で囲まれた故障 1S セット必須故障である。
[0085] テストベクトル Vの全てのベクトル必須故障は、故障リスト Ftar (v)に含まれるべきあ る。例えばベクトル必須故障 fl及び f 6は、 Ftar (vl)に含まれる必要がある。一方、セ ット必須故障は、故障リスト Ftar (v)または故障検出率を低下させずにそのセット必須 故障を検出する他のテストベクトルの故障リストに含まれるべきである。例えば、 f9は テストベクトル vl及び v4によって検出されるセット必須故障であり、この f9は Ftar(vl )または Ftar (v4)の!、ずれかに含まれる必要がある。
[0086] 各セット必須故障は、新しく LCPとなるテストキューブを生成する際に、故障の検出 が容易となるような Ftar (V)に含めるようにする。故障検出の容易性を算出するため に以下のような新 U、概念を用いる。
[0087] フルスキャン回路に 2つの故障 faと fbがあるとする。故障 fa及び故障 fbから構造的 に到達可能な擬似外部入力(PPIs)の集合をそれぞれ RI (a)及び RI (b)とし、故障 f a及び故障 fb力 構造的に到達可能な擬似外部出力(PPOs)の集合をそれぞれ RO (a)及び RO (b)とする。故障 fa及び故障 fb力 到達可能な PPIs及び PPOsの重なり の度合いを od (fa, fb)と表して以下のように定義する。
[0088] [数 2]
Figure imgf000021_0001
[0089] 図 5は、故障 fa及び故障 fbから到達可能な PPIs及び PPOsの重なりの度合いの概 念を示した図である。
[0090] 図 5にお 、て、 od (fa, fb)の値が大きくなると、故障 fa及び故障 fb力も到達可能な PPIs及び PPOsの重なりの度合いが大きくなる。また、故障 fa及び故障 fbを同時に 検出するテストキューブを生成する際に、スキャンキヤプチャ時の遷移ビット数を削減 することは困難である可能性を示して 、る。
[0091] 現時点で Ftar (v)に含まれな 、セット必須故障 fを、現時点での故障リストが Ftar (v ) = {fnl, fn2, · · · , fnp}であるテストベクトル vで検出可能とする。まず、 od(f, fnl )、 od (f, fn2)、 · · ·、 od(f, fnp)を計算し、以下の式により各故障力も到達可能な P Pis及び PPOsの重なりの度合いの平均を以下のように求める。
[0092] [数 3] aodif, Ftar(v)) =
Figure imgf000022_0001
[0093] テストベクトル vml、 vm2、 · · ·、 vmsで検出されるセット必須故障 fを何れのテストべ タトルで検出すべきかを決定するために、 aod(f, Ftar (vml) )、 aod (f, Ftar (vm2) )、 · · ·、 aod (f, Ftar (vms) )を計算し、各故障から到達可能な PPIs及び PPOsの重 なりの度合いの平均が最小となるテストベクトルの故障リストに故障 fを含める。
[0094] 例えば、図 4において vl及び v4の両方で検出されるセット必須故障 f 9を含める故 障リストを決定する際、 Ftar (vl)及び Ftar (v4)はそれぞれ {fl, f6}及び {f4, f7, f 8}である。仮に aod (f9, Ftar(vl) ) < aod (f9, Ftar (v4) )であれば、セット必須故 障 f9は Ftar (vl)に含められる。図 4には最終的な結果を示す。
[0095] なお、本発明の実施の形態にぉ 、ては、故障 fa及び故障 fb力 到達可能な PPIs 及び PPOsの重なりの度合いによりセット必須故障を割り振った力 各テストベクトル が検出する故障数により割り振るようにしてもよい。例えば、割り振る対象となるテスト ベクトルの故障数を比較して、故障数が少ない方にセット必須故障を割り振り、対象 とする故障数がほぼ同数になるようにする。
[0096] 次に、図 3におけるステップ ST305の処理について詳細に説明する。
[0097] 対象故障リスト Ftar (V)力 HCPの原因となる 1つのテストベクトル vに対して得られ た後、次のステップにおいて、図 3におけるステップ ST305のキヤプチャ時の消費電 力を感知するテストキューブ生成処理(以下 CA— test— cube— generation (f)とす る)が、 Ftar(v)中の全ての故障を検出する LCPとなるテストキューブを生成する。
[0098] 図 6は、図 2におけるテストキューブ生成部 210の構成を示したブロック図である。 [0099] テストキューブ生成部 210は、ノ ックトラック判定処理部 600とバックトラック処理部 6 02とテストキューブ生成処理部 604とから構成される。ノ ックトラック判定部 600は、 D 衝突検出部 606と C衝突検出部 608とから構成される。テストキューブ生成処理部 6 04は、初期含意スタック処理部 610と回復含意スタック処理部 612と回復含意スタツ クリスト処理部 614と初期含意スタック 616 (Si)と回復含意スタック 618 (S)と回復含 意スタックリスト 620 (L (S) )とから構成される。
[0100] 図 6において、初期状態のテストキューブ Vを基にバックトラック判定処理部 600によ りバックトラック処理を行うか否かが判定され、ノ ックトラック行わな 、と判定された場 合はテストキューブ生成部 604により、テストキューブが生成される。
[0101] 図 7は、 CA— test— cube— generation (f)の処理の手順を示したフロー図である
[0102] 一般的に、 CA— test— cube— generation (f)は PODEMのアルゴリズムを基本 としている力 本発明においてはステップ ST702、ステップ ST705、ステップ ST707 、ステップ ST708及びステップ ST709の処理が改良点である。この改良点はキヤプ チヤ衝突 (以下、 C衝突とする)と回復含意スタックという 2つの基本概念を基にしてお り、 CA— test— cube— generation (f)力 故障 fを検出できるテストキューブを生成 し、同時にできるだけ多くのテストキューブ中のビットに関して遷移ビットの数を減らす ようにする。以下に詳細に説明する。
[0103] 従来からある、 PODEMアルゴリズムに基づいた組合せ回路用 ATPGアルゴリズム は、 Xパスチェック (X— path— checking)の際に故障検出情報の衝突(以下、 D衝 突とする)を発見したときには、後戻り(以下、ノ ックトラックとする)を生じる。 D衝突と は、故障検出において経路を活性ィ匕するための未定値を含む経路が、 D先頭信号 線(Dフロンティア)のゲートと 、ずれの POまたは PPOにも存在しな!、ことである。
[0104] 本発明の実施の形態における CA— test— cube— generation (f)においては、 C 衝突という新しいバックトラック条件を導入する。 C衝突とは、ある PPIとそれに対応す る PPOが異なる値を持つことであり、 C衝突が起こるということはスキャンキヤプチヤの 前後にお 、て遷移が発生して 、ることを意味する。 C衝突にっ 、て図 8を用いて詳細 を説明する。 [0105] 図 8は、 C衝突の概念を示した図である。
[0106] 図 8において、フリップフロップ数カ¾であり C衝突の数も nである。 i番目のフリップフ 口ップに対応する PPIと PPOの信号線上の C衝突は Ciである。どの Xパスチェックの 失敗に対しても、 D衝突は 1回だけである。
[0107] スキャンキヤプチャ時の電力消費の影響を考慮して、 C衝突が CA— test— cube— generation (f)でチヱックされる。 C衝突 Ciの影響を評価する単純な発見法は、スキ ヤン回路内の i番目のフリップフロップの出力力も到達可能な組合せ回路部分のゲー トの数を数えることである。
[0108] 図 7に戻って、まずステップ ST700で検出対象の故障が検出できた力否かが判定 される。検出できればテストベクトル集合の生成に成功して処理を終了する。検出で きなければ次のステップ ST701の処理に進む。次に、ステップ ST701で D衝突また はステップ ST702で C衝突が検出された場合、 CA— test— cube— generation (f) は、ステップ ST704で初期含意スタックが空力否かを判定し、空である場合は、 C衝 突があれば現在の初期含意スタックの複製を回復含意スタックリストの先頭に追加し て、ステップ ST706でバックトラックを行なう。しかしながら、 D衝突と C衝突は以下の 理由で根本的に異なる。
[0109] D衝突により全ての探索空間が探索された場合は、テスト生成は失敗する。しかし ながら、全ての探索空間が探索される前に少なくとも一つの C衝突があれば、 C衝突 が無視される時テスト生成は成功するかも知れな ヽ。 C衝突を無視して生成されたテ ストキューブは、検出対象の故障を検出できるが、遷移ビットの数を減らすことはでき ない。
[0110] C衝突のチェックは、遷移ビット数を削減するために役立つが、対象故障検出のた めのテストキューブ生成を阻止する C衝突を防ぐ必要がある。従って、本発明の実施 の形態では、以下の 2種類の含意スタックを用意する。 1つは従来の PODEMに基 づ 、た ATPGアルゴリズムで使用されるものと同様の初期含意スタックであり、探索 空間の管理に使用される。一方は、回復含意スタックであり、 C衝突が見つかった際 に生成される初期含意スタックの複製である。複数の C衝突が発生する可能性がある ため、複数の回復含意スタックが存在するかもしれない。これらのスタックは、回復含 意スタックリストと呼ばれるリストに置かれる。
[0111] 図 7のステップ ST701で D衝突またはステップ ST702で C衝突が検出された場合 、ステップ ST704で初期含意スタックが空か否かが判定され、空であればステップ S T707で回復含意スタックリストが空か否かが判定される。回復含意スタックリストが空 であれば、テスト生成に失敗して処理を終了する。回復含意スタックリストが空でなけ れば、少なくとも一つの C衝突が発生し、現在のテスト生成処理の失敗の原因である ことを意味する。この場合、ステップ ST708で回復含意スタックリストの先頭または至 近のスタック Sが回復含意スタックリストから削除され、初期含意スタックとして回復さ れる。次にステップ ST709で、スタック Sに一致する C衝突は無視され、ステップ ST7 10の処理を行ってテスト生成は再開される。このような処理により検出対象となる故 障を検出し、同時にできるだけ多くの遷移ビット数が削減されるようなテストキューブ が生成される。
[0112] 図 7のステップ ST701で D衝突またはステップ ST702で C衝突が検出されなかつ た場合ステップ ST703で objective ()、 backtrace ()、及び、 imply ()の PODEMを 基にした一部のテスト生成処理が行われ、ステップ ST700に戻り再び検出対象とな る故障を検出できた力否かが判定される。また、同様にステップ ST706でバックトラッ クが行われた場合及び ST710でテスト生成が再開された場合もステップ ST700に 戻り再び検出対象となる故障を検出できたカゝ否かが判定される。
[0113] 図 9に、 CA— test— cube— generation (f)による、テストキューブ生成過程の例 を示す。図 9において、 A、 B、 · · ·、 Gは PPIである。 backtrace ()は Aから Gの探索 順でテストキューブを生成する間、それらの論理値を決定すると仮定する。これに加 えて、初期含意スタックを PSとする。
[0114] 図 9において、 PS = <A: 0, B : l, C : 0>とし、 D衝突が発生した場合を示す。これ を「D」とする。この時、ノ ックトラックで Cに論理値 1を割り当てる。次に、 backtrace () は Dに論理値 0を割り当て、 PS = <A: 0, B : l, C : l, D : 0>となった場合、 C衝突「 Cl」が発生する。この場合、 C衝突「C1」で示される PSの複製が回復含意スタックリ ストに置かれる。次に、ノ ックトラックで Dに論理値 1を割り当てる。同様にして、 PS = <A: 0, B : l, C : l, D : l, E : 0>となった場合、 C衝突「C2」が発生する。そして、 C 衝突「C2」で示される PSの複製が回復含意スタックリストに置かれる。最後に、 PSは D衝突のため空になる。
[0115] 図 10において、回復含意スタックリストの一番上にあるスタック C2が、初期含意スタ ックとして回復し、 C衝突 C2を無視してテスト生成を再開する。テスト生成の結果、テ ストキューブはく A, B, C, D, E, F, G> = < 0, 1, 1, 1, 0, 1, X>となる。このテ ストキューブは、検出対象故障を検出するだけでなぐ C衝突「C1」に一致する遷移 を回避する。
[0116] なお、上記実施の形態において、新しく生成されたテストベクトルに未定値が含ま れて 、る場合、スキャンキヤプチャの前後にお 、て論理値に相違が発生するビットの 数を減少させるように未定値に論理値が割り当てられる。
[0117] 以下に、本発明の実験結果を示す。
[0118] 図 3に示される LCPとなるテスト生成の新しい手法を実装し、 ISCAS' 89回路に対 して実験を行った。その結果を図 11に示す。
[0119] キヤプチャ時に遷移する最大ビット数は、平均 31. 2%削減された。これは、従来技 術の X— filling (X.Wen, H.Yamashita, S.Kajihara, L.- T.Wang, K.Saluja, K.Kino snita、「On Low- Capture- Power Test Generation for Scan TestingJ、 Proc.VLSI
Test Symp.、 2005、 pp.265- 270)で示される 21. 6%に比べて大きい数値である。 本発明による手法では、テストベクトル数が増加する力 これは現在の実装では故障 検出の順序を無視しており、テストベクトル Vに対する対象故障 Ftar (V)を検出するた めに複数のテストパターンが生成される可能性がある力もである。しかし、初期テスト ベクトルを生成した際の故障検出の順序を利用すれば、この問題が解決され得る。
[0120] なお、上記まででは PODEMアルゴリズムに基づ!/、た ATPGアルゴリズムに適用し て説明したが、 Dアルゴリズム、 FANアルゴリズム、拡張 Dアルゴリズム、 9値法、 RTP (Reverse Time Processing)法等の他の ATPGアルゴリズムにも適用可能であ る。

Claims

請求の範囲
[1] 論理回路に対する初期テストベクトル集合を変換して新 、テストベクトル集合を生 成する生成装置であって、
前記論理回路はフルスキャン設計された順序回路であって、
前記初期テストベクトル集合の各テストベクトルのうち、前記順序回路に含まれるス キャンセルの出力につ 、てスキャンキヤプチヤの前後にお 、て論理値に相違が発生 するビットの数にっ ヽて所定の基準を超えて!/ヽる対象テストベクトルを特定する特定 手段と、
前記特定手段が特定した対象テストベクトルの代わりとして、前記順序回路に含ま れるスキャンセルの出力につ 、てスキャンキヤプチヤの前後にお 、て論理値に相違 が発生するビットの数を減少させる新しいテストベクトルを生成する生成手段とを備え た、生成装置。
[2] 前記生成手段は、
前記特定手段が特定した対象テストベクトルに対し、対象故障を選択する選択手段 を有し、
前記選択手段が選択した対象故障を全て検出でき、且つ、前記順序回路に含まれ るスキャンセルの出力につ 、てスキャンキヤプチヤの前後にお!/、て論理値に相違が 発生するビットの数を減少させる対象テストベクトルに代わる新しいテストベクトルを生 成する、請求項 1記載の生成装置。
[3] 前記選択手段は、前記特定手段が特定した対象テストベクトルのみで検出される 各故障を、一つの対象テストベクトルのみで検出されるベクトル必須故障と複数の対 象テストベクトルで検出されるセット必須故障に区別し、前記ベクトル必須故障につい てそれを検出する対象テストベクトルの対象故障として選択するとともに前記セット必
Figure imgf000027_0001
、てそれを検出する複数の対象テストベクトルのうちの 、ずれかの対象 故障として選択する、請求項 2記載の生成装置。
[4] 前記生成手段は、前記順序回路に対応する組合せ回路に対し、テスト生成過程に ぉ 、て前記組合せ回路のある擬似外部入力の値と前記擬似外部入力に対応する擬 似外部出力の値とが異なることを表すキヤプチャ衝突を定義し、前記キヤプチャ衝突 が生じたときにもノ ックトラックを行って、前記特定手段が特定した対象テストベクトル に代わる新しいテストベクトルを生成する、請求項 1から 3のいずれかに記載の生成 装置。
[5] 論理回路に対する初期テストベクトル集合を変換して新 、テストベクトル集合を生 成する生成装置であって、
前記論理回路はフルスキャン設計された順序回路であって、
前記順序回路に対応する組合せ回路に対し、テスト生成過程にぉ ヽて前記組合せ 回路のある擬似外部入力の値と前記擬似外部入力に対応する擬似外部出力の値と が異なることを表すキヤプチャ衝突を定義し、前記キヤプチャ衝突が生じたときにもバ ックトラックを行って、前記初期テストベクトル集合のうちの対象テストベクトルの代わり として、前記順序回路に含まれるスキャンセルの出力についてスキャンキヤプチヤの 前後において論理値に相違が発生するビットの数を減少させる新しいテストベクトル を生成する生成手段を備えた、生成装置。
[6] 前記生成手段は、テスト生成過程における主含意スタックとは別に、前記キヤプチ ャ衝突が生じたときに更新される回復含意スタックを用いる、請求項 4又は 5記載の生 成装置。
[7] 論理回路に対する初期テストベクトル集合を変換して新 、テストベクトル集合を生 成する生成方法であって、
前記論理回路はフルスキャン設計された順序回路であって、
特定手段が、前記初期テストベクトル集合の各テストベクトルのうち、前記順序回路 に含まれるスキャンセルの出力につ 、てスキャンキヤプチヤの前後にお 、て論理値 に相違が発生するビットの数にっ 、て所定の基準を超えて 、る対象テストベクトルを 特定する特定ステップと、
生成手段が、前記特定手段が特定した対象テストベクトルの代わりとして、前記順 序回路に含まれるスキャンセルの出力につ 、てスキャンキヤプチヤの前後にお 、て 論理値に相違が発生するビットの数を減少させる新しいテストベクトルを生成する生 成ステップとを含む、生成方法。
[8] 前記生成ステップは、 前記特定された対象テストベクトルに対し、対象故障を選択する第 1のステップと 前記特定手段が特定した対象テストべ外ルに対し、前記選択された対象故障を 全て検出でき、且つ、前記順序回路に含まれるスキャンセルの出力についてスキャン キヤプチヤの前後において論理値に相違が発生するビットの数を減少させるように対 象テストベクトルに代わる新 、テストベクトルを生成する第 2のステップとを含む、請 求項 7記載の生成方法。
[9] 前記第 1のステップは、前記特定された対象テストベクトルのみで検出される各故障 を、一つの対象テストベクトルのみで検出されるベクトル必須故障と複数の対象テスト ベクトルで検出されるセット必須故障に区別し、前記ベクトル必須故障についてそれ を検出する対象テストベクトルの対象故障として選択するともに前記セット必須故障 につ 、てそれを検出する複数の対象テストベクトルのうちの 、ずれかの対象故障とし て選択する、請求項 8記載の生成方法。
[10] 前記セット必須故障カ^ヽずれの対象テストベクトルにつ ヽての対象故障として選択 されるかについての判断に、前記複数の選択されるべき故障の間の重なり具合を示 す演算式に基づく結果が用いられる、請求項 9記載の生成方法。
[11] 前記生成ステップでは、前記順序回路に対応する組合せ回路に対し、テスト生成 過程にお!、て前記組合せ回路のある擬似外部入力の値と前記擬似外部入力に対 応する擬似外部出力の値とが異なることを表すキヤプチャ衝突を定義し、前記キヤプ チヤ衝突が生じたときにもノ ックトラックを行って、前記特定手段が特定した対象テス トベクトルに代わる新しいテストベクトルを生成する、請求項 7から 10のいずれかに記 載の生成方法。
[12] 論理回路に対する初期テストベクトル集合を変換して新しいテストベクトル集合を生 成する生成方法であって、
前記論理回路はフルスキャン設計された順序回路であって、
生成手段が、前記順序回路に対応する組合せ回路に対し、テスト生成過程におい て前記組合せ回路のある擬似外部入力の値と前記擬似外部入力に応答する擬似外 部出力の値とが異なることを表すキヤプチャ衝突を定義し、前記キヤプチャ衝突が生 じたときにもバックトラックを行って、前記初期テストベクトル集合のうちの対象テストべ タトルの代わりとして、前記順序回路に含まれるスキャンセルの出力についてスキャン キヤプチヤの前後において論理値に相違が発生するビットの数を減少させる新しい テストベクトルを生成する生成ステップを含む、生成方法。
[13] 前記生成ステップでは、テスト生成過程における主含意スタックとは別に、前記キヤ プチヤ衝突が生じたときに更新される回復含意スタックリストを用いる、請求項 11又は 12記載の生成方法。
[14] 前記生成ステップでは、前記キヤプチャ衝突が生じれば、現在の主含意スタックの 複製が前記キヤプチヤに対応する回復含意スタックとして前記回復含意スタックリスト の先頭に追加される、請求項 13記載の生成方法。
[15] 前記生成ステップでは、前記主含意スタックが空であって前記回復含意スタックリス トが空ではないときには、前記回復含意スタックリストの先頭にある回復含意スタック が前記回復含意スタックリストから削除され、新たな主含意スタックとされ、前記回復 含意スタックに対応するキヤプチャ衝突は以降のテスト生成過程において無視されて テストベクトルの生成が再開されるリストアステップを含む、請求項 13又は 14記載の 生成方法。
[16] 前記リストアステップは、初期テストベクトル集合で得られる故障検出率が低下しな いために、対象故障を検出するまで繰り返される、請求項 15記載の生成方法。
[17] 前記新 、テストベクトルに未定値が含まれて 、る場合、スキャンキヤプチヤの前後 にお ヽて論理値に相違が発生するビットの数を減少させるように前記未定値に論理 値が割り当てられる、請求項 7から 16のいずれかに記載の生成方法。
[18] 請求項 7から 17のいずれかに記載の生成方法をコンピュータに実行させることが可 能なプログラム。
[19] 請求項 18記載のプログラムをコンピュータが実行することが可能にて記録した記録 媒体。
PCT/JP2007/056149 2006-03-28 2007-03-26 生成装置、生成方法、プログラム、及び、記録媒体 WO2007111288A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/235,628 US7962822B2 (en) 2006-03-28 2008-09-23 Generating device, generating method, program and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006-088695 2006-03-28
JP2006088695A JP5066684B2 (ja) 2006-03-28 2006-03-28 生成装置、生成方法、生成方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/235,628 Continuation-In-Part US7962822B2 (en) 2006-03-28 2008-09-23 Generating device, generating method, program and recording medium

Publications (1)

Publication Number Publication Date
WO2007111288A1 true WO2007111288A1 (ja) 2007-10-04

Family

ID=38541205

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/056149 WO2007111288A1 (ja) 2006-03-28 2007-03-26 生成装置、生成方法、プログラム、及び、記録媒体

Country Status (4)

Country Link
US (1) US7962822B2 (ja)
JP (1) JP5066684B2 (ja)
TW (1) TW200811458A (ja)
WO (1) WO2007111288A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009102994A1 (en) * 2008-02-15 2009-08-20 Qualcomm Incorporated Methodologies and tool set for iddq verification, debugging and failure diagnosis

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7970594B2 (en) * 2005-06-30 2011-06-28 The Mathworks, Inc. System and method for using model analysis to generate directed test vectors
WO2009051193A1 (ja) * 2007-10-19 2009-04-23 Kyushu Institute Of Technology 論理値決定方法及び論理値決定プログラム
KR101451461B1 (ko) * 2007-10-19 2014-10-15 가부시키가이샤 엘피텍스 돈 케어 비트 추출 방법 및 돈 케어 비트 추출 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
JP5401119B2 (ja) * 2009-02-23 2014-01-29 ルネサスエレクトロニクス株式会社 半導体集積回路の設計方法、設計プログラム、及び半導体集積回路
US20110270548A1 (en) * 2010-04-29 2011-11-03 Qualcomm Incorporated Automated verification and estimation of quiescent power supply current
US10345369B2 (en) 2012-10-02 2019-07-09 Synopsys, Inc. Augmented power-aware decompressor
US10380303B2 (en) * 2015-11-30 2019-08-13 Synopsys, Inc. Power-aware dynamic encoding
CN117422031B (zh) * 2023-12-18 2024-02-27 中科鉴芯(北京)科技有限责任公司 Atpg系统测试向量生成和精简的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004317505A (ja) * 2003-04-03 2004-11-11 Fujitsu Ltd プログラム、記憶媒体、テストパターン作成方法及び装置
JP2004325233A (ja) * 2003-04-24 2004-11-18 Matsushita Electric Ind Co Ltd 半導体装置
JP2006066825A (ja) * 2004-08-30 2006-03-09 Renesas Technology Corp 半導体集積回路テスト設計支援装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3429082B2 (ja) * 1994-09-30 2003-07-22 株式会社リコー テストベクタ編集装置
US6067651A (en) * 1998-02-20 2000-05-23 Hewlett-Packard Company Test pattern generator having improved test sequence compaction
JP3430079B2 (ja) * 1999-09-29 2003-07-28 Necエレクトロニクス株式会社 テストパタン圧縮方法とテストパタン圧縮装置及びシステム並びに記録媒体
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
US7509550B2 (en) * 2003-02-13 2009-03-24 Janusz Rajski Fault diagnosis of compressed test responses
US7027947B2 (en) * 2003-04-03 2006-04-11 Fujitsu Limited Integrated circuit testing method, program, storing medium, and apparatus
WO2006106626A1 (ja) * 2005-03-30 2006-10-12 Kyushu Institute Of Technology 半導体論理回路装置のテスト方法及びテストプログラム
KR100708462B1 (ko) * 2005-05-27 2007-04-18 연세대학교 산학협력단 천이감시 윈도우를 이용한 lfsr 천이수 감소방법 및 그장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004317505A (ja) * 2003-04-03 2004-11-11 Fujitsu Ltd プログラム、記憶媒体、テストパターン作成方法及び装置
JP2004325233A (ja) * 2003-04-24 2004-11-18 Matsushita Electric Ind Co Ltd 半導体装置
JP2006066825A (ja) * 2004-08-30 2006-03-09 Renesas Technology Corp 半導体集積回路テスト設計支援装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009102994A1 (en) * 2008-02-15 2009-08-20 Qualcomm Incorporated Methodologies and tool set for iddq verification, debugging and failure diagnosis
US8159255B2 (en) 2008-02-15 2012-04-17 Qualcomm, Incorporated Methodologies and tool set for IDDQ verification, debugging and failure diagnosis

Also Published As

Publication number Publication date
TW200811458A (en) 2008-03-01
JP5066684B2 (ja) 2012-11-07
TWI368041B (ja) 2012-07-11
US20090019327A1 (en) 2009-01-15
US7962822B2 (en) 2011-06-14
JP2007263724A (ja) 2007-10-11

Similar Documents

Publication Publication Date Title
JP5066684B2 (ja) 生成装置、生成方法、生成方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体
Cho et al. Gate exhaustive testing
Yang et al. Quick scan chain diagnosis using signal profiling
JP5032395B2 (ja) テスト条件の生成方法およびテスト条件生成装置
JP5017603B2 (ja) 変換装置、変換方法、変換方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体
Cook et al. Structural in-field diagnosis for random logic circuits
Ye et al. Diagnosis and layout aware (DLA) scan chain stitching
JP4482622B2 (ja) 変換装置、変換方法、変換方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体
US7107502B2 (en) Diagnostic method for detection of multiple defects in a Level Sensitive Scan Design (LSSD)
Ghosh-Dastidar et al. Adaptive techniques for improving delay fault diagnosis
US11815555B2 (en) Universal compactor architecture for testing circuits
US20090094496A1 (en) System and Method for Improved LBIST Power and Run Time
US20120112763A1 (en) Method for Detecting Small Delay Defects
US8065575B2 (en) Implementing isolation of VLSI scan chain using ABIST test patterns
US10963612B2 (en) Scan cell architecture for improving test coverage and reducing test application time
Czutro et al. Dynamic compaction in SAT-based ATPG
Chen et al. Test pattern generation and clock disabling for simultaneous test time and power reduction
Lien et al. A test-per-clock LFSR reseeding algorithm for concurrent reduction on test sequence length and test data volume
CN100346309C (zh) 存储器在板测试方法
Pomeranz Generation of transparent-scan sequences for diagnosis of scan chain faults
Dhotre et al. Constraint-based pattern retargeting for reducing localized power activity during testing
Cook et al. Built-in self-diagnosis exploiting strong diagnostic windows in mixed-mode test
Cook et al. Diagnosis of multiple faults with highly compacted test responses
Inuyama et al. Critical-area-aware test pattern generation and reordering
Seshadri et al. Accelerating diagnostic fault simulation using z-diagnosis and concurrent equivalence identification

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07739588

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07739588

Country of ref document: EP

Kind code of ref document: A1