WO2007063924A1 - 変換装置、変換方法、プログラム、及び、記録媒体 - Google Patents

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

Info

Publication number
WO2007063924A1
WO2007063924A1 PCT/JP2006/323862 JP2006323862W WO2007063924A1 WO 2007063924 A1 WO2007063924 A1 WO 2007063924A1 JP 2006323862 W JP2006323862 W JP 2006323862W WO 2007063924 A1 WO2007063924 A1 WO 2007063924A1
Authority
WO
WIPO (PCT)
Prior art keywords
don
bit
care
bits
test vector
Prior art date
Application number
PCT/JP2006/323862
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 WO2007063924A1 publication Critical patent/WO2007063924A1/ja
Priority to US12/129,746 priority Critical patent/US7971118B2/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
    • G01R31/318547Data generators or compressors
    • 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
    • G01R31/318335Test pattern compression or decompression
    • 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

  • the present invention relates to a conversion device, a conversion method, a program, and a recording medium, and more particularly to a conversion device that converts a set of test vectors for a logic circuit.
  • 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.
  • the output line (pseudo external input line) and input line (pseudo external output line) of the flip-flop of the sequential circuit are generally not directly accessible from the outside. Therefore, in order to test the combinational circuit, the controllability of the pseudo external input line and the observability of the pseudo external output line must be checked. There is a title.
  • 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 used to apply a test vector to the combinational circuit unit via the pseudo external input line and to observe the combinational circuit unit force test response via the pseudo external output line.
  • the scan capture also scans the test response of the yarn joining circuit. It is used for taking in the mouth.
  • 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 test response of the combinational circuit that appears on the pseudo external output line is taken into the scan flip-flop.
  • the output value of the corresponding scan flip-flop changes. 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. This is because it is often sufficient. Setting the remaining bits to 0 or 1 will affect the detection of the target failure. Therefore, such a bit becomes a don't care bit 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 the power consumption of a scan capture.
  • 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 During 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.
  • Non-Special Reference 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.Saviera, and KK inoshita, "On Low—Capture—Power Test Generation for Scan Testing," Proceedings of IEEE VLSI Test Symposium, pp.265-270, 2005.
  • the logical value fetched from the combinational circuit unit 102 into the scan flip-flop 104 in FIG. 15 and the logical value that the scan flip-flop 104 currently has are between 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.
  • a test cube including a don't care bit is created by some method, and an optimum logical value is determined and embedded in the don't care bit included in the test cube. It is necessary to finish it.
  • 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 conversion apparatus, a conversion method, a program capable of causing a computer to execute the conversion method, and a recording medium on which the program is recorded.
  • the invention according to claim 1 is a conversion device for converting a test vector set for a logic circuit, wherein only part of the logic bits constituting each test vector of the test vector set can also be used as don't care.
  • candidate bits that may be set as don't care bits according to predetermined constraint conditions based on the input / output relationship in the logic circuit, and fixed bits that should not be set as don't care bits
  • a predetermined value is considered in consideration of the relationship between a plurality of bit pairs consisting of input bits and output bits.
  • a determination means for determining a don't care bit as a logical value necessary to achieve the purpose of It is.
  • a set of test vectors not including a don't care bit can be set as a final test vector set.
  • This final set of test vectors can achieve the original test purpose (failure detection rate), while avoiding, for example, a false test as another purpose.
  • the deciding means of claim 1 is a don't care bit obtained by other means in place of the test cube including the don't care bit specified only by the candidate bit set by the setting means.
  • a don't care bit is determined as a logical value necessary to achieve a predetermined purpose in consideration of the relationship between a plurality of bit pairs consisting of input bits and output bits.
  • the invention according to claim 3 is a conversion device that converts a test vector set for a logic circuit, and specifies a don't care bit that can be used as a don't care from among logical bits constituting each test vector of the test vector set. Therefore, the don't care bit may be set according to a predetermined constraint condition based on an input / output relationship in the logic circuit. It is a conversion device provided with setting means for setting a candidate bit.
  • the setting means according to claim 3 specifies a don't care bit that can be regarded as don't care from only a part of the logical bits constituting each test vector of the test vector set. Therefore, in addition to setting the candidate bit, a fixed bit that should not be a don't care bit is set.
  • the logic circuit according to any one of claims 1 to 4 is a full scan sequential circuit, and the constraint condition is included in an output of a scan cell included in the full scan sequential circuit. This is a condition that is determined so that the number of differences between the logical values before and after the scan capture is reduced.
  • the invention according to claim 6 is a conversion device for converting a test vector set for a logic circuit, the test including a don't care bit that can be used as a don't care among the logic bits constituting each test vector of the test vector set.
  • the logic circuit according to claim 1, 2 or 6 is a full-scan sequential circuit, and the object is to scan a scan cell output included in the full-scan sequential circuit.
  • the difference between the logical values before and after the captilla is effectively reduced.
  • the invention according to claim 8 is a conversion method for converting a test vector set for a logic circuit, wherein the setting means includes a part of the logic bits constituting each test vector of the test vector set.
  • the setting means includes a part of the logic bits constituting each test vector of the test vector set.
  • the invention according to claim 9 is a conversion method for converting a test vector set for a logic circuit, wherein the setting means includes a don't care from among the logic bits constituting each test vector of the test vector set. In order to specify a possible don't care bit, the don't care bit may be set according to a predetermined constraint condition based on the input / output relationship in the logic circuit!
  • a conversion method including a setting step for setting a candidate bit.
  • the setting means can perform don't care from only a part of the logical bits constituting each test vector of the test vector set.
  • the method includes a step of setting a fixed bit that should not be a don't care bit in consideration of setting the candidate bit.
  • the invention according to claim 11 is the invention according to claim 8 or 10, wherein the logic circuit is a full scan sequential circuit, and the setting step includes the full scan order for each test vector of the test vector set.
  • a first step for identifying a bit in which a logical difference occurs before and after a scan capture and a bit in which no difference occurs and a bit in which the difference does not occur are fixed bits
  • the second step in which the difference is generated and the candidate bit that satisfies a predetermined condition is identified among the bits in which the difference occurs, and the difference in the remaining difference that is not specified in the candidate bit occurs
  • a donating care bit that can be considered as a don't care from the candidate bits, and A conversion how to characterized in that it does not identify the do not care bit.
  • the invention according to claim 12 is characterized in that, in claim 11, the step of determining the total number of candidate bits in each test vector in the third step force, and for all bits in which the difference occurs Assigns don't care, performs a three-valued logic simulation, and the result indicates that the input bit has don't care and the corresponding output bit has no don't care, and the type 1 don't care bit pair and input bit and corresponding output bit Identifying a type 2 don't care bit pair with both don't cares, and If a type 1 don't care bit pair is preferentially selected as a candidate bit, if there is no type 1 don't care bit pair and the number of candidate bits already selected has not reached the expected total, then a type 2 don't care bit pair is selected.
  • a conversion method including a step of selecting candidate bits according to a predetermined criterion.
  • the invention according to claim 10 can be realized by a specific technique and included in the full scan sequential circuit.
  • the purpose of effectively reducing the number of logical differences before and after the scan capture can be solved.
  • the invention according to claim 13 is a conversion method for converting a test vector set for a logic circuit, wherein a don't care bit that can be used as a don't care from among the logic bits constituting each test vector of the test vector set. Including a decision step for determining the logical value necessary to achieve a predetermined purpose in consideration of the relationship between a plurality of bit pairs consisting of input bits and output bits for a test cube including The conversion method.
  • the invention according to claim 14 is the invention according to claim 8 or 13, wherein the logic circuit is a full scan sequential circuit, and the determining step includes a scan cell included in the full scan sequential circuit in the test cube.
  • the don't care bits corresponding to the output are regarded as different from each other, the step of examining the appearance of each individual don't care bit and its inversion at the input of the scan cell included in the full scan sequential circuit, and the full scan order Based on the appearance of the don't care bit corresponding to the output of the scan cell included in the circuit and the don't care bit or its inversion to the input of the scan cell included in the full scan sequential circuit, and before the scan capture A logical value that realizes that the number of differences in the logical value is minimized later is assigned to the don't care. And determining a bit, a conversion method.
  • the invention according to claim 15 is a program capable of causing a computer to execute the conversion method according to any one of claims 8 to 14.
  • the invention according to claim 16 is a recording medium on which the program according to claim 15 can be executed by a computer.
  • the invention's effect for example, regarding the output of the scan cell included in the full scan sequential circuit in the logic circuit, there is more difference in the logic value generated before and after the scan capture! It can be effectively reduced. 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 conversion device and the conversion method of 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 conversion device and the conversion method of the present invention are very effective for avoiding an erroneous test at the time of capture.
  • the conversion device and conversion method of 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 conversion device and conversion method of the present invention are effective in improving the defect detection capability of test data because there is no decrease in the failure detection rate of the logic circuit.
  • 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 conversion apparatus according to an embodiment of the present invention.
  • FIG. 3 is a flowchart showing processing of the conversion apparatus according to the embodiment of the present invention.
  • FIG. 4 A diagram showing an example of a test vector set in which a don't care bit that can be a don't care of candidate bits is identified.
  • FIG. 5 is a conceptual diagram used for generating a constraint table.
  • FIG. 6 is a diagram showing a method for identifying candidate bits.
  • FIG. 7 A table in which bit pairs including don't care bits are classified by type.
  • FIG. 8 is a flowchart showing processing when assigning a logical value to a specified don't care bit.
  • Figure 9 Partial symbol An example of the result of X simulation is shown.
  • FIG. 10 is a diagram showing rules for determining logical values.
  • FIG. 11 is a diagram showing an example of determining a logical value for a don't care bit.
  • FIG. 12 is a table showing experimental results in the present invention.
  • FIG. 13 is a schematic diagram of a general partial scan circuit.
  • FIG. 14 is a schematic diagram showing a process until a semiconductor logic circuit is shipped to the market.
  • FIG. 15 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 is composed of a combinational circuit portion 300 and a scan flip-flop 302 of a full scan sequential circuit.
  • the combinational circuit section 300 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 300 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 302 by scan shift.
  • the output from the yarn alignment circuit part 300 is a test response f (v) to the test vector V, which is a part ⁇ f (v): PO> that appears directly on the external output line and a part that appears on the pseudo external output line.
  • ⁇ f (v): PPO> is taken into the scan flip-flop 302 by the scan gap.
  • FIG. 1 (b) shows an example in which a difference occurs in the logical value before and after the scan capture in the scan flip-flop 302 in FIG. 1 (a).
  • the test vector v one bit a which is an element of PPI> and the corresponding test response f (v): PPO> has different logical values in the scan flip-flop 302. 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 a single test vector is closely related to the power consumption that occurs in the entire circuit including the combinational circuit part 300 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 conversion apparatus according to the embodiment of the present invention.
  • the conversion device 400 includes a setting unit 402 and a logical value determination unit 404.
  • the setting unit 402 is composed of a candidate bit specifying unit 406 and a don't care bit specifying unit 408, and the logical value determining unit 404 is a don't care ID converting unit 410, a logical value determination processing unit 412, and a logical value assignment processing unit 4 14 It consists of and.
  • As input / output data there are an initial test vector set 416 (Tint), an intermediate test vector set (test cube set) 418 (Tx), and a final test vector set 420 (Tfin). This is a set of test vectors generated by the above means.
  • the setting unit 402 Based on the initial test vector set 416 (Tint), the setting unit 402 identifies a candidate bit and a don't care bit that can be taken as a don't care among the candidate bits, and generates an intermediate test vector set 418 (Tx).
  • the logical value determination unit 404 assigns logical values to the generated intermediate test vector set (Tx) force don't care bits, and generates a final test beta set (Tfin).
  • FIG. 3 is a flowchart showing processing of the conversion apparatus according to the embodiment of the present invention.
  • an initial test vector set 416 (Tint) shown in FIG. 2 is generated and prepared by a technique such as ATPG.
  • a technique such as ATPG.
  • the determination of the logical value at this stage is to reduce the number of test vectors. This is intended for detection of new faults.
  • c-limit the upper limit of the number of transition bits in each test vector
  • c limit is before and after scan capture in the scan flip-flop. Is the upper limit of the number of bits that cause a difference in logic value (hereinafter referred to as transition bits), and the number of transition bits S is a numerical value that can be assumed to cause no false test if it is less than this, The number of transition bits S This is a numerical value that can cause a false test if it exceeds this value.
  • the upper limit (c-limit) of the number of transition bits in each test vector is determined from the estimated power consumption or empirical rules during circuit design. If c-limit is too large, there is little effectiveness in reducing power consumption. Also, if c-limit is too small, there are many candidate bits, so effective don't care bits cannot be specified and the effectiveness cannot be shown.
  • step 500 candidate bits are specified by candidate bit specifying unit 406 shown in FIG. 2 in the next step 502.
  • step 503 FIG.
  • step 502 and step 503 a don't care bit that is effective for reducing the number of transition bits when the distribution of the specified don't care bit is captured is specified.
  • the processing in step 502 and step 503 will be described in detail. Here, for the sake of simplicity, it is assumed that all scan flip-flops constitute one scan chain and operate in a single clock domain, and a single capture method is assumed.
  • the scan flip-flop may be configured by a plurality of scan chains, or may operate in a plurality of clock domains in the same manner. Furthermore, a double capture method may be used.
  • FIG. 4 shows an example of a test vector set in which don't care bits whose candidate bits can also be don't care are identified.
  • Fig. 4 (a) is a conceptual diagram showing an example of a circuit to be tested by the initial test vector set, and Fig. 4 (b) is generated to detect a fault assumed in the circuit.
  • Figure 4 (c) shows the constraints of the test vector set for the target circuit.
  • “*” is a candidate bit specified by the candidate bit specifying unit 406 shown in FIG. 2
  • “one” is a fixed bit whose value is not changed. Details of the candidate bit identification will be described later.
  • Figure 4 (d) shows the results of identifying don't care bits that can be don't care among the candidate bits for the initial test vector set.
  • “X” shown in the figure is a don't care bit that can be considered as don't care among the specified candidate bits, and is specified by the don't care bit specifying unit 408 shown in FIG.
  • step 3 the remaining transition bits that are not specified as candidate bits are set as fixed bits.
  • Figure 5 is a conceptual diagram used for generating the constraint table.
  • the transition bit number n exceeds the upper limit of the transition bit number c-lim it! /, So the transition bit number n force the upper limit of the transition bit number c-Value obtained by subtracting limit d can be used as the number of candidate bits.
  • the number of transition bits n is the number of transition bits j
  • the concept shown in FIG. 5 can avoid inefficient identification of don't care bits due to the existence of many candidate bits for a single test vector, or identification of don't care bits that need not be performed. . Therefore, it is possible to specify a new effective don't care bit in other test vectors. As a result, for the entire test vector set
  • FIG. 6 is a diagram showing a method for identifying candidate bits.
  • the candidate bit specifying method in FIG. 6 is a candidate bit specifying method for facilitating a process of assigning a logical value to a don't care bit, which is a subsequent process.
  • f (V) contains two transition bits, and the transition bits are a and b, respectively.
  • the value of c-limit is set to 1
  • the number of candidate bits to be specified is 1 obtained by subtracting 1 of c-limit from 2 of the number of transition bits.
  • FIG. 7 is a table in which bit pairs including don't care bits are classified by type.
  • Type A in FIG. 7 the input value is a don't care bit, but the output value responds to it.
  • Type B is a type whose input value is a fixed value and whose output value is a don't care bit. In this type, the output value is a don't care bit, so when assigning a logical value to the output don't care bit, the input value affecting the output value is identified, and a logical value is assigned to the input don't care bit. There is a need. This type B cannot assign logical values to don't care bits more easily than type A. In Type C, both input values and output values are don't care bits, and both Type A and Type B processing must be performed, so complicated processing is required.
  • the don't care bit pair corresponding to a in FIG. 6 corresponds to type C in FIG. 7, and the don't care bit pair corresponding to b in FIG. 6 corresponds to type A in FIG.
  • assigning logical values to don't care bits for a don't care bit pair corresponding to type A is less difficult than assigning logical values to a don't care bit pair corresponding to type C. Easy. Therefore, it is desirable to identify the type b don't care bit pair in Figure 6.
  • Procedure 2 The transition bit identified in Procedure 1 is replaced with a don't care bit, a ternary logic simulation is performed, and a don't care bit pair is specified.
  • a transition bit corresponding to a type A don't care bit pair is selected as a candidate bit so that the number of candidate bits is not exceeded! /. If the number of candidate bits is not satisfied, the transition bit corresponding to the type C don't care bit pair is selected as a candidate bit.
  • Step 3 when there are a plurality of types C, a don't care bit pair having a large number of input side don't care bits that can be reached from an output side don't care bit is selected with priority. This is because the greater the number of reachable don't care bits on the input side, the easier it is to assign a logical value to the don't care bits on the output side.
  • the don't care bits identified so far are the intermediate test vector set (Tx) shown in Step 504.
  • step 506 for the specified don't care bits that are the logic value determination unit 404 force intermediate test vector set 4 18 (Tx) in Fig. 2, an appropriate number of transition bits is reduced during capture. Assign logical values.
  • Figure 8 shows the method. This method is similar to the conventional method in that the assignment operation, the justification operation, and the combination thereof are performed so that the number of transition bits is reduced at the time of capture. ⁇ In the meantime, the method of determining the logical value and the point are improved.
  • FIG. 8 is a flowchart showing processing when assigning a logical value to the specified don't care bit.
  • step 1044 one test vector including don't care bits is selected, and in step 1006, the dependency among all don't care bit pairs in the test vector selected in step 1004 is examined. The process of checking the dependency between the don't care bit pairs is performed by the don't care bit ID forming unit 410 shown in FIG.
  • step 1008 it is determined whether or not the dependency relations between all the don't care bit pairs have been checked. If the dependency relations between all the don't care bit pairs are checked, step 1002 is performed. Return. If the dependency between all don't care bit pairs has not been examined, go to step 1010.
  • step 1010 one don't care bit pair is selected, and in step 1012, a logical value assigned to the don't care bit of the selected don't care bit pair is determined.
  • the processing of step 1012 is performed by the logical value determination processing unit 412 shown in FIG.
  • the logical value determined in step 1012 is assigned to the don't care bit by justifying in step 1014, and whether the assignment succeeds in step 1016. It is determined whether or not. If not successful, return to step 1012 to determine a new logical value. If successful, the process returns to step 1008, and processing is repeated until all don't care bit pairs are processed.
  • step 1014 may not need to be performed.
  • the following describes the procedure for determining the dependency among all don't care bit pairs in the test vector including the don't care bit in step 1006 (A) in Fig. 8 by partial symbol X simulation.
  • the mutual relationship between don't care bit pairs means the relationship between the input side don't care bits propagated from the input side don't care bits, and the appropriate logical value is determined by examining the dependency relationship.
  • the partial symbol X simulation is a part of the symbol simulation conventionally used for fault diagnosis.
  • v be a test vector including m don't care bits for which the initial test vector force has all logical values 0 or 1.
  • the partial symbol X simulation for v ' is processed as follows. First, replace m m's don't care bits in v 'with m different X symbols (XI, X2,..., Xm) as V ". As a result, V" includes the X symbol. The X symbol propagation process is repeated based on the following two rules.
  • FIG. 9 shows an example of the result of executing the partial symbol X simulation.
  • the partial symbol X simulation can obtain dependency information more than the ternary logic simulation as shown in the example of FIG.
  • the don't care bit pair on the signal line e, z> becomes X, X>, and the dependency relationship cannot be obtained.
  • the don't care bit pair on the signal line e, z> becomes X3, 1> 3, and the signal line e, z> does not have the same logical value. Show me. This information cannot be obtained by ternary logic simulation. A process of determining and assigning a logical value to be assigned to the care bit will be described.
  • the determined logical value is a value set in the don't care bit so as to reduce the number of transition bits based on the dependency relationship examined above. If a suitable logical value can be determined and assigned, the number of transition bits that cause a false test can be reduced, and the false test can be avoided.
  • Procedure 1 is a process for obtaining information on the dependency relationship of bit pairs of X symbols by partial symbol X simulation.
  • Step 2 takes into account the bit-bearing dependency of the X symbol to determine don't care bits.
  • Step 3 is a process for determining four different logical values. From these processing results, a logical value can be effectively determined for the don't care bit. An example of performing this procedure will be described with reference to FIG.
  • FIG. 11 is a diagram illustrating an example in which a logical value is determined for a don't care bit.
  • Fig. 12 is a table showing the experimental results.
  • Figure 12 (a) shows the basic information of the circuit used in the experiment.
  • Fig. 12 (b) is a table showing the experimental results of the conventional power consumption reduction method during capture based on the specific method of don't care bits that do not specify candidate bits.
  • identification of candidate bits and identification of don't care bits that can be regarded as don't care from the candidate bits are performed by generating a constraint table, and assignment of logical values to the don't care bits is performed for the don't care bit pairs. This was done by taking into account the dependency between each other and reducing the power consumption during capture.
  • Each column shown in the table of Fig. 12 (c) has the same meaning as each column shown in the table of Fig. 12 (b).
  • the reduction rate of the maximum number of transition bits is 33.2% on average.
  • the reduction ratio of the maximum number of transition bits is 43.3% on average. From this, the method according to the embodiment of the present invention improves the reduction rate of the number of transition bits by 30.4% as compared with the prior art.
  • the number of transition bits has a deep correlation with the number of node transitions in the circuit, and the number of node transitions directly reflects the waste of power consumption during capture.
  • the proposed method is effective in reducing waste of power consumption during capture.
  • the full scan sequential circuit as shown in FIG. 1 has been described, but the present invention can also be applied to a partial scan circuit as shown in FIG.
  • the partial scan circuit means that some flip-flops are replaced with scan flip-flops. These are used to form one or more scan chains.
  • the combinational circuit part 3000 is similar in force to the combinational circuit part 300 in FIG. V: PPInl> Power. Also, the output from the combinational circuit part 3000 is the same as that of the combinational circuit part 300 in Fig. 1.
  • FIG. 13 (b) shows an example of the case where a difference occurs in the logical value before and after the scan capture in the scan flip-flop 3002 in FIG. 13 (a).

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

 フルスキャン順序回路に含まれるスキャンセルの出力について、スキャンキャプチャの前後において発生する論理値の相違が低減されるようにテストベクトル集合の変換を行う変換装置等を提供する。フルスキャン順序回路に対するテストベクトル集合を変換する変換装置400であって、テストベクトル集合の各テストベクトルからドントケアとできるドントケアビットを特定するために、所定の制約条件であって論理回路における入出力関係に基づく条件によりドントケアビットにしてもよい候補ビット、及び、ドントケアビットにしてはならない固定ビットを設定する設定部402と、前記設定部402により特定されたドントケアビットを含むテストキューブに対して、複数のビットペア間の関係を考慮して、論理値をドントケアビットに決定する論理値決定部404とを備える。

Description

明 細 書
変換装置、変換方法、プログラム、及び、記録媒体
技術分野
[0001] 本発明は、変換装置、変換方法、プログラム、及び、記録媒体に関し、特に、論理 回路に対するテストべ外ル集合を変換する変換装置等に関する。
背景技術
[0002] 図 14に示すように、半導体論理回路は、設計、製造、テストの三段階を経て出荷さ れる。ここで、テストとは、製造された半導体論理回路に対してテストベクトルを印加し 、半導体論理回路カゝらテスト応答を観測し、それを期待テスト応答と比較して良品、 不良品の判別を行う。その良品率を歩留りと呼び、歩留りは半導体論理回路の品質 、信頼性及び製造コストを大きく左右する。
[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] 上記問題が起こらないようにするためには、図 15において組合せ回路部 102から スキャンフリップフロップ 104に取り込まれる論理値と、スキャンフリップフロップ 104が 現在持って 、る論理値との間での相違数ができるだけ小さ 、低キヤプチャ時消費電 力のテストベクトルをテストに用いることが重要である。このようなテストベクトルを生成 するために、何らかの手法でドントケアビットを含むテストキューブを作り、更にその中 に含まれるドントケアビットに最適な論理値を決定し埋め込む形で最終テストベクトル に仕上げる必要がある。
[0024] テストキューブは ATPGプログラムによるテストベクトルの生成過程で現れることが 多い。また、ドントケアビットを有しないテストベクトルの集合が与えられる場合、その 集合の故障検出率を変えずに、一部のテストベクトルの一部のビットをドントケアビット にすることができる。特に、与えられたテストベクトルの集合力 ドントケアビットを特定 することによってテストキューブを作ることは、テスト生成フローに与える影響が少ない ため、応用において有利である。
[0025] し力しながら、テストキューブを作るための従来技術は、様々な欠点を持っている。
非特許文献 1の技術は、実行時間が長ぐ作られたテストキューブも必ずしもキヤプチ ャ時消費電力を効果的に低減することができない。非特許文献 2の技術は、テスト集 合全体を処理対象にするため実行時間が比較的早ぐより多くのドントケアビットを特 定することができる力 作られたテストキューブは必ずしもキヤプチャ時消費電力を効 果的に低減することができない。非特許文献 3の技術は、テスト集合の論理ビットの 一部のみよりドントケアビットを特定することによって、キヤプチャ時消費電力を効果 的に低減することができるテストキューブを作ることが可能であるが、候補ビットと固定 ビットで制約されるドントケアビット特定範囲を如何に定めるかについては何も示され ていない。
[0026] 更に、キヤプチャ時消費電力を効果的に低減するために、テストキューブ内のドント ケアビットに論理値 0または論理値 1を埋め込む技術がある。特に、非特許文献 4の 技術は、擬似入力線ビットのみならず擬似出力線ビットをも考慮して、対応する擬似 入力線ビットと擬似出力線ビットの間の論理値の相違を削減するため、他の技術より 有利である。しかし、非特許文献 4の技術は、ドントケアビットに論理値 (0又は 1)を決 定するときに、一回に 1つの擬似出力線ビットと 1つの擬似出力線ビットからなる 1つ のビットペアしか考慮していない。このため、このように決定された論理値は全体的に 見て必ずしも最適と言えな 、。
[0027] なお、ここまではキヤプチャ時の消費電力低減の問題を説明した力 テストデータ 量削制、或いはテストデータの欠陥検出においても、制約が必要な同様の問題があ る。 [0028] ゆえに、本発明は、上記問題を解決するため、例えば、フルスキャン順序回路に含 まれるスキャンセルの出力につ!/、て、スキャンキヤプチャの前後にお 、て発生する論 理値の相違が低減されるようなテストベクトル集合の変換を行う変換装置、変換方法 、変換方法をコンピュータに実行させることが可能なプログラム、及び、このプログラム を記録した記録媒体を提供することを目的とする。
課題を解決するための手段
[0029] 請求項 1に係る発明は、論理回路に対するテストベクトル集合を変換する変換装置 であって、前記テストベクトル集合の各テストベクトルを構成する論理ビットのうちの一 部のみ力もドントケアとできるドントケアビットを特定するようにするために、所定の制 約条件であって前記論理回路における入出力関係に基づく条件によりドントケアビッ トにしてもよい候補ビット、及び、ドントケアビットにしてはならない固定ビットを設定す る設定手段と、前記設定手段が設定した候補ビットのみ力 特定されたドントケアビッ トを含むテストキューブに対して、入力ビットと出力ビットからなる複数のビットペア間 の関係を考慮して、所定の目的を達成するために必要な論理値をドントケアビットに 決定する決定手段とを備えた変換装置である。
[0030] これにより、ドントケアビットを含まないテストベクトルの集合を最終的なテストべタト ル集合とできる。この最終的なテストベクトル集合は、本来のテストの目的(故障検出 率)を達成しつつ、他の目的としての例えば誤テストを回避することが可能なものであ る。
[0031] 請求項 2に係る発明では、請求項 1の決定手段が、前記設定手段が設定した候補 ビットのみ力 特定されたドントケアビットを含むテストキューブに代えて他の手段で 得られたドントケアビットを含むテストキューブに対して、入力ビットと出力ビットからな る複数のビットペア間の関係を考慮して、所定の目的を達成するために必要な論理 値をドントケアビットに決定する。
[0032] 請求項 3に係る発明は、論理回路に対するテストベクトル集合を変換する変換装置 であって、前記テストベクトル集合の各テストベクトルを構成する論理ビットのうちから ドントケアとできるドントケアビットを特定するようにするために、所定の制約条件であ つて前記論理回路における入出力関係に基づく条件によりドントケアビットにしてもよ い候補ビットを設定する設定手段を備えた変換装置である。
[0033] 請求項 4に係る発明では、請求項 3の設定手段が、前記テストベクトル集合の各テ ストベクトルを構成する論理ビットのうちの一部のみからドントケアとできるドントケアビ ットを特定するようにするために、前記候補ビットを設定することに加えて、ドントケア ビットにしてはならない固定ビットを設定する。
[0034] 請求項 5に係る発明では、請求項 1から 4のいずれかの論理回路がフルスキャン順 序回路であり、前記制約条件が、前記フルスキャン順序回路に含まれるスキャンセル の出力にお 、て、スキャンキヤプチヤの前と後の論理値の相違数が削減されるように 定められる条件である。
[0035] これにより、フルスキャン順序回路に含まれるスキャンセルの出力について、スキヤ ンキヤプチヤの前と後の論理値の相違数を効果的に削減可能となり、スキャンキヤプ チヤ時の消費電力を抑えることで、誤テストを回避できる。
[0036] 請求項 6に係る発明は、論理回路に対するテストベクトル集合を変換する変換装置 であって、前記テストベクトル集合の各テストベクトルを構成する論理ビットのうちから ドントケアとできるドントケアビットを含むテストキューブに対して、入力ビットと出力ビッ トからなる複数のビットペア間の関係を考慮して、所定の目的を達成するために必要 な論理値をドントケアビットに決定する決定手段を備えた変換装置である。
[0037] 請求項 7に係る発明では、請求項 1、 2又は 6の論理回路がフルスキャン順序回路 であり、前記目的が、前記フルスキャン順序回路に含まれるスキャンセルの出力にお いて、スキャンキヤプチヤの前と後の論理値の相違数が効果的に削減されることであ る。
[0038] 請求項 8に係る発明は、論理回路に対するテストベクトル集合を変換する変換方法 であって、設定手段が、前記テストベクトル集合の各テストベクトルを構成する論理ビ ットのうちの一部のみからドントケアとできるドントケアビットを特定するようにするため に、所定の制約条件であって前記論理回路における入出力関係に基づく条件により ドントケアビットにしてもょ 、候補ビット、及び、ドントケアビットにしてはならない固定ビ ットを設定する設定ステップと、決定手段が、前記設定手段が設定した候補ビットの み力 特定されたドントケアビットを含むテストキューブ、またはその他の手段で得ら れたドントケアビットを含むテストキューブに対して、入力ビットと出力ビットからなる複 数のビットペア間の関係を考慮して、所定の目的を達成するために必要な論理値を ドントケアビットに決定する決定ステップとを含む、変換方法である。
[0039] 請求項 9に係る発明は、論理回路に対するテストベクトル集合を変換する変換方法 であって、設定手段が、前記テストベクトル集合の各テストベクトルを構成する論理ビ ットのうちからドントケアとできるドントケアビットを特定するようにするために、所定の 制約条件であって前記論理回路における入出力関係に基づく条件によりドントケア ビットにしてもよ!ヽ候補ビットを設定する設定ステップを含む、変換方法である。
[0040] 請求項 10に係る発明では、請求項 9の設定ステップは、前記設定手段が、前記テ ストベクトル集合の各テストベクトルを構成する論理ビットのうちの一部のみからドント ケアとできるドントケアビットを特定するようにするために、前記候補ビットを設定するこ とにカ卩えて、ドントケアビットにしてはならない固定ビットを設定するステップを含む。
[0041] 請求項 11に係る発明は、請求項 8又は 10において、前記論理回路がフルスキャン 順序回路であり、前記設定ステップが、前記テストベクトル集合の各テストベクトルに 対して、前記フルスキャン順序回路に含まれるスキャンセルの出力において、スキヤ ンキヤプチヤの前と後で論理値の相違が発生するビットと相違が発生しないビットとを 識別する第 1のステップと、前記相違が発生しないビットを固定ビットとする第 2のステ ップと、前記相違が発生するビットのうち力 所定の条件を満たした前記候補ビットを 特定するとともに前記候補ビットに特定されな力つた残余の前記相違が発生するビッ トを固定ビットとする第 3のステップとを含み、前記候補ビットからドントケアとできるドン トケアビットを特定し、前記固定ビットからドントケアビットを特定しないことを特徴とす る変換方法である。
[0042] 請求項 12に係る発明は、請求項 11において、前記第 3のステップ力 各テストべク トルにおける候補ビットの予定総数を決定するステップと、前記相違が発生するすべ てのビットに対してドントケアを割り当て、 3値論理シミュレーションを行って、その結果 によって、入力ビットにドントケアがありそれに対応する出力ビットにドントケアがない タイプ 1のドントケアビットペア、及び、入力ビットとそれに対応する出力ビットの両方 にドントケアがあるタイプ 2のドントケアビットペアを特定するステップと、前記特定され たタイプ 1のドントケアビットペアを優先的に候補ビットとして選択し、タイプ 1のドントケ ァビットペアがなくなりかつ既に選択された候補ビットの数が予定総数に達していな い場合、タイプ 2のドントケアビットペアを所定の基準に従って候補ビットとして選択す るステップを含む、変換方法である。
[0043] この請求項 11に係る発明と請求項 12に係る発明では、例示的ではあるが、具体的 な手法によって、請求項 10に係る発明を実現でき、フルスキャン順序回路に含まれ るスキャンセルの出力について、スキャンキヤプチヤの前と後の論理値の相違数が効 果的に削減されるという目的を解決できる。
[0044] 請求項 13に係る発明は、論理回路に対するテストベクトル集合を変換する変換方 法であって、前記テストベクトル集合の各テストベクトルを構成する論理ビットのうちか らドントケアとできるドントケアビットを含むテストキューブに対して、入力ビットと出力ビ ットからなる複数のビットペア間の関係を考慮して、所定の目的を達成するために必 要な論理値をドントケアビットに決定する決定ステップを含む、変換方法である。
[0045] 請求項 14に係る発明は、請求項 8又は 13において、前記論理回路がフルスキャン 順序回路であり、前記決定ステップが、前記テストキューブにおいて、前記フルスキヤ ン順序回路に含まれるスキャンセルの出力に対応するドントケアビットをそれぞれ異 なるものと見なし、このような個々のドントケアビット及びその反転が前記フルスキャン 順序回路に含まれるスキャンセルの入力への出現状況を調べるステップと、前記フル スキャン順序回路に含まれるスキャンセルの出力に対応するドントケアビットと、前記 フルスキャン順序回路に含まれるスキャンセルの入力への前記ドントケアビット又はそ の反転の出現状況に基づいて、スキャンキヤプチヤの前と後で論理値の相違数が最 小化することを実現させる論理値を前記ドントケアビットに決定するステップとを含む 、変換方法である。
[0046] 請求項 15に係る発明は、請求項 8から 14のいずれかに記載の変換方法をコンビュ ータに実行させることが可能なプログラムである。
[0047] 請求項 16に係る発明は、請求項 15記載のプログラムをコンピュータが実行すること が可能にて記録した記録媒体である。
発明の効果 [0048] 本発明によれば、例えば、論理回路におけるフルスキャン順序回路に含まれるスキ ヤンセルの出力につ 、て、スキャンキヤプチャの前後にお!/、て発生する論理値の相 違がより効果的に低減させることができる。それにより、スキャンキヤプチャ時の消費 電力を抑えることで、誤テストを回避できる。従って、本来正常な動作を行う半導体論 理回路をテストにおいて不良品として廃棄するような良品率の低下を解消することが できる。
[0049] また、本発明における変換装置及び変換方法は、論理回路のテスト設計フローを 変更することもハードウェア追カ卩によって回路面積を増加させることもない。このため 、本発明における変換装置及び変換方法は、キヤプチャ時の誤テストを回避するた めに非常に効果的であると言える。
[0050] さらに、本発明における変換装置及び変換方法は、クロックの種類に依存しないの で、テスト時に単一クロック信号を用いる場合にクロックゲーティング手法を採用する 場合のようにテストデータ量が著しく増大することはなぐテストデータ量の低減にも効 果がある。
[0051] さらに、本発明における変換装置及び変換方法は、論理回路の故障検出率の低 下はないため、テストデータの欠陥検出能力の向上に効果がある。
図面の簡単な説明
[0052] [図 1]本発明の背景技術となる一般的なフルスキャン回路の構成を示した模式図であ る。
[図 2]本発明の実施の形態に係る変換装置の概略ブロック図である。
[図 3]本発明の実施の形態に係る変換装置の処理を示すフロー図である。
[図 4]候補ビットの中力もドントケアとできるドントケアビットが特定されたテストベクトル 集合の例を示した図である。
[図 5]制約表の生成のために用いる概念図である。
[図 6]候補ビットの特定方法を示した図である。
[図 7]ドントケアビットを含むビットペアをタイプ毎に分類した表である。
[図 8]特定したドントケアビットに対して論理値の割り当てを行う場合の処理を示したフ ロー図である。 [図 9]部分的記号 Xシミュレーションを実行した結果の一例を示す。
[図 10]論理値を決定する規則を示した図である。
[図 11]ドントケアビットに論理値を決定する場合の例を示した図である。
[図 12]本発明における実験結果を示した表である。
[図 13]—般的なパーシャルスキャン回路の模式図である。
[図 14]半導体論理回路が市場に出荷されるまでの工程を示した模式図である。
[図 15]—般的な論理回路におけるフルスキャン順序回路の模式図である。
符号の説明
[0053] 400 変換装置
402 設定部
404 論理値決定部
発明を実施するための最良の形態
[0054] 本発明の実施の形態を以下に示す。
[0055] 図 1を参照して、本発明の背景技術となる一般的なフルスキャン回路について説明 する。
[0056] 図 1 (a)は、一般的なフルスキャン回路の構成を示した模式図である。このフルスキ ヤン回路は、組合せ回路部分 300とフルスキャン順序回路のスキャンフリップフロップ 302と力 構成される。組合せ回路部分 300は、外部入力線 (PI)、スキャンフリップ フロップの出力線である擬似外部入力線 (PPI)、外部出力線 (PO)、フリップフロップ の入力線である擬似外部出力線 (PPO)を有する。組合せ回路部分 300へのテスト ベクトル Vは、外部入力線より直接与えられる部分 < v: PI>と、擬似外部入力線を介 して与えられる部分く V: PPI >力らなる。く V: PPI >はスキャンシフトによってスキヤ ンフリップフロップ 302に設定される。また、糸且合せ回路部分 300からの出力はテスト ベクトル Vに対するテスト応答 f (v)であり、外部出力線に直接現れる部分 < f (v): PO >と、擬似外部出力線に現れる部分く f (v): PPO >力 なる。 <f (v): PPO >はス キャンキヤプチヤによってスキャンフリップフロップ 302に取り込まれる。
[0057] 図 1 (b)は図 1 (a)におけるスキャンフリップフロップ 302におけるスキャンキヤプチャ の前と後において論理値に相違が発生する場合の一例を示す。 [0058] 図 1 (b)において、テストベクトルく v: PPI>の要素である一つのビット aと、それに 対応するテスト応答く f (v): PPO >が、スキャンフリップフロップ 302で異なる論理値 を取ると、キヤプチャモードの際に論理値の相違 (以下、遷移とする)が発生する。あ る一つのテストベクトルに対する遷移の数は、そのテストベクトルを原因とした組合せ 回路部分 300を含めた回路全般で発生する消費電力と深く関係しているため、テスト ベクトルに対するキヤプチャ時の遷移の数を削減することで、キヤプチャ時の消費電 力を低減することができる。
[0059] 次に、本発明の実施の形態に係る変換装置の構成を説明する。図 2は、本発明の 実施の形態に係る変換装置の概略ブロック図である。
[0060] 変換装置 400は、設定部 402と論理値決定部 404とから構成されて 、る。設定部 4 02は、候補ビット特定部 406とドントケアビット特定部 408とから構成され、論理値決 定部 404は、ドントケア ID化部 410と論理値決定処理部 412と論理値割当処理部 4 14とから構成されている。また、入出力データとして初期テストベクトル集合 416 (Tin t)と中間テストベクトル集合 (テストキューブ集合) 418 (Tx)と最終テストベクトル集合 420 (Tfin)があり、初期テストベクトル集合 416は予め ATPG等の手段により生成さ れたテストベクトル集合である。設定部 402が、初期テストベクトル集合 416 (Tint)を 基に候補ビット及び候補ビットの中でドントケアとできるドントケアビットを特定し、中間 テストベクトル集合 418 (Tx)を生成する。論理値決定部 404は、その生成された中 間テストベクトル集合 (Tx)力 ドントケアビットに論理値を割り当て、最終テストべタト ル集合 (Tfin)が生成される。
[0061] 図 3は、本発明の実施の形態に係る変換装置の処理を示すフロー図である。
[0062] まず、ステップ 500で図 2に示す初期テストベクトル集合 416 (Tint)を ATPG等の 手法により生成し用意する。ただし、 Tintの生成中に、中間的なテストキューブ中の ドントケアビットに対して論理値を決定する必要がある力もしれないが、この段階での 論理値の決定は、テストベクトル数削減のための新たな故障の検出を対象としたもの である。また、 c— limit (各テストベクトルにおける遷移ビット数の上限の値)を同時に 設定しておく。
[0063] ここで、 c limitとはスキャンフリップフロップにおけるスキャンキヤプチヤの前と後に おいて論理値に相違が発生するビット(以下遷移ビットとする)の数の上限値であり、 遷移ビットの数力 Sこれ以下であれば、誤テストを起こらな 、と想定できる数値であり、 遷移ビットの数力 Sこれ以上であれば誤テストを起こす要因となり得る数値である。この 各テストベクトルにおける遷移ビットの数の上限の値 (c— limit)は回路設計時の消費 電力量の見積もりまたは経験則等から決定される。 c— limitが大きすぎると消費電力 を減少することにほとんど有効性を示すことができない。また、 c— limitが小さすぎる と候補ビットが多数存在するため、効果的なドントケアビットの特定できず、有効性を 示すことができない。
[0064] 図 3に戻って、ステップ 500で Tintが生成された後は、次のステップ 502で、図 2に 示す候補ビット特定部 406により候補ビットの特定が行われ、ステップ 503で、図 2に 示すドントケアビット特定部 408によりドントケアビットが特定される。このステップ 502 及びステップ 503では特定したドントケアビットの分布がキヤプチャ時の遷移ビット数 の削減に対して有効であるドントケアビットが特定される。このステップ 502及びステツ プ 503の処理について詳細に説明する。ここでは簡単のため、すべてのスキャンフリ ップフ口ップが 1本のスキャンチェーンを構成し、また、単一のクロックドメインの中で 動作するものとし、シングルキヤプチャ方式を仮定する。
[0065] なお、本発明にお 、てはスキャンフリップフロップが複数本のスキャンチェーンで構 成されてもよぐまた、同様に複数のクロックドメインの中で動作するようにしても構わ ない。さらに、ダブルキヤプチャ方式でも構わない。
[0066] 特定されるドントケアビットの数を最大化するための正当化操作、含意操作を利用 して、全てのテストベクトルを同時に処理する手法が知られている力 本発明の実施 の形態においては、候補ビットによってドントケアビットの探索を制限し、一方で残りの ビットに対しては固定ビットとして論理値を残したままにする。
[0067] 図 4は、候補ビットの中力もドントケアとできるドントケアビットが特定されたテストべク トル集合の例を示す。
[0068] 図 4 (a)は、初期テストベクトル集合によりテストが行われる回路の例を示した概念図 であり、図 4 (b)は、回路内に仮定された故障を検出するために生成した初期テスト ベクトル集合である。図 4 (c)は、対象となる回路に対するテストベクトル集合の制約 表であり、「*」は、図 2に示す候補ビット特定部 406により特定される候補ビットで、 「 一」は、値を変更しない固定ビットである。候補ビットの特定についての詳細は後述す る。図 4 (d)は、初期テストベクトル集合に対して候補ビットの中からドントケアとできる ドントケアビットの特定を行った結果を示している。図中に示された「X」は、特定され た候補ビットの中でドントケアとできるドントケアビットであり、図 2に示したドントケアビ ット特定部 408により特定される。
[0069] 次に、候補ビットの特定及び候補ビットの中力もドントケアとできるドントケアビットを 特定する手順を説明する。
[0070] 制約付ドントケアビットの特定で重要とされることは、効果的な制約表を生成するこ とである。スキャンフリップフロップにおけるスキャンキヤプチヤの前と後において論理 値に相違が発生しないビット(以下、非遷移ビットとする)は固定ビットとされるべきで あり、一方、スキャンフリップフロップにおけるスキャンキヤプチヤの前と後において論 理値に相違が発生するビット(以下、遷移ビットとする)は、候補ビットとするべきである 。また、テストべ外ル集合 Tに対する候補ビットを特定する際には、特定されたドント ケアビットの分布が、キヤプチャ時の遷移ビット数の最大値 MCT(T)を効果的に削減 するように保障されたドントケアビットを特定すべきである。以下に、本発明の実施の 形態における制約表の作成手順について説明する。
[0071] (手順 1)入力テストベクトルに対して 2値論理シミュレーションを実行し、遷移ビットと 非遷移ビットを識別する。
[0072] (手順 2)手順 1で識別したビットにおいて非遷移ビットを固定ビットとする。
[0073] (手順 3)—つのテストベクトルに対して、遷移ビットの集合を選択し、候補ビットを特 定する。これを全てのテストベクトルに対して繰り返す。
[0074] (手順 4)手順 3において、候補ビットとして特定されな力つた残余の遷移ビットを固 定ビットとする。
[0075] ここで、本発明の実施の形態における制約表について説明する。図 5は、制約表の 生成のために用いる概念図である。
[0076] 図 5に示すように、あるテストベクトルに対してスキャンフリップフロップにおける遷移 ビット数を nとし、遷移ビット数の上限を c limitで表すと、候補ビット数 dは、 d=n— c —limitとなる。この候補ビット数 dの値は、図 4 (c)における「 *」のビット数と一致して いる。
[0077] 図 5にお!/、て、入力テストベクトル Vでは遷移ビット数 nが遷移ビット数の上限 c—lim itを上回って!/、るため、遷移ビット数 n力 遷移ビット数の上限 c— limitを減算した値 d個を候補ビット数とすることができる。また、 Vでは遷移ビット数 nが遷移ビット数の上 j
限 c— limitを下回って!/、るため、候補ビットは存在しな!、。
[0078] 従って、候補ビット数 dの値は c— limitの決め方に依存するため、本発明を効果的 に実現するためには、適切な c— limitの設定が必要不可欠である。
[0079] 図 5に示す概念により、ある一つのテストベクトルに対する候補ビットが多数存在す ることによる非効率的なドントケアビットの特定、または、行う必要のないドントケアビッ トの特定を避けることができる。従って、その他のテストベクトルにおいて新たに効果 的なドントケアビットの特定が可能となる。その結果、テストベクトル集合全体に対して
、キヤプチャ時の遷移ビット数の削減を達成できる。
[0080] 図 5にお 、て候補ビットの数が算出された後は、何れのビットを候補ビットとして特定 するかを識別する必要がある。
[0081] 図 6は、候補ビットの特定方法を示した図である。
[0082] 図 6における候補ビットの特定方法は、後の処理であるドントケアビットに論理値を 割り当てる処理を容易にするための候補ビットの特定方法である。入力テストベクトル Vに対して 2値論理シミュレーションを行った結果を f (v)とする。 f (V)には遷移ビットが 2個含まれており、それぞれの遷移ビットを a及び bとする。ここで、 c— limitの値を 1と 設定すると、特定する候補ビット数は、遷移ビット数の 2から c— limitの 1を差し引い た 1である。
[0083] 次に、 Vの遷移ビットをすベて Xに置き換えたものを v,とする。この v,に対して 0、 1 及び Xの 3値を使用した 3値論理シミュレーションを行い、その結果を f(v,)とすると、 a 及び bに対応するそれぞれのドントケアビットペアは 2個存在する。ここで、それぞれ のドントケアビットペアについて、図 7を参照して説明する。
[0084] 図 7は、ドントケアビットを含むビットペアをタイプ毎に分類して表にしたものである。
[0085] 図 7におけるタイプ Aは、入力値がドントケアビットであるが、それに応答する出力値 は固定値であるタイプである。このタイプ Aは出力値が決まっているため、容易にドン トケアビットに対して論理値を割り当てることできる。タイプ Bは、入力値が固定値であ る力 それに応答する出力値がドントケアビットであるタイプである。このタイプは出力 値がドントケアビットであるため、出力側のドントケアビットに対する論理値の割り当て の際に出力値に影響を及ぼしている入力値を識別し、入力側のドントケアビットに論 理値を割り当てる必要がある。このタイプ Bは、タイプ Aに比べて容易にドントケアビッ トに対して論理値を割り当てることできない。タイプ Cは、入力値及び出力値が共にド ントケアビットであり、タイプ A及びタイプ B双方の処理を行わなければならな ヽため 複雑な処理が必要となる。
[0086] 図 6における aに対応するドントケアビットペアは、図 7のタイプ Cに該当し、図 6にお ける bに対応するドントケアビットペアは、図 7のタイプ Aに該当する。図 7によると、タ イブ Aに該当するドントケアビットペアに対して行うドントケアビットに対する論理値の 割り当ては、タイプ Cに該当するドントケアビットペアに対して行う論理値の割り当てよ りも難易度が低く容易である。従って、図 6における bのタイプのドントケアビットペアを 特定することが望ましい。
[0087] 以下に、候補ビットの特定手順を示す。
[0088] (手順 1)入力テストベクトルに対して事前に 2値論理シミュレーションを実行し、遷移 ビットと非遷移ビットを識別する。
[0089] (手順 2)手順 1にて識別された遷移ビットをドントケアビットに置換し、 3値論理シミュ レーシヨンを行 、、ドントケアビットペアを特定する。
[0090] (手順 3)候補ビット数を越えな!/、ように、最初にタイプ Aのドントケアビットペアに該 当する遷移ビットを候補ビットとして選択する。候補ビット数を満たさない場合は、タイ プ Cのドントケアビットペアに該当する遷移ビットを候補ビットとして選択する。
[0091] 上記手順 3において、複数のタイプ Cが存在する場合、出力側のドントケアビットか ら到達可能な入力側のドントケアビット数が多いドントケアビットペアを優先して選択 する。到達可能な入力側のドントケアビット数が多 、ほど、出力側のドントケアビットに 論理値を割り当て易くなるからである。
[0092] 以上のような手順で処理を行うことにより、候補ビットの特定及び候補ビットの中から ドントケアとできるドントケアビットが特定される。
[0093] 図 3の処理フローに戻って、ここまでで特定されたドントケアビットがステップ 504に 示す中間テストベクトル集合 (Tx)である。
[0094] 次に、ステップ 506で図 2における論理値決定部 404力 中間テストベクトル集合 4 18 (Tx)である特定したドントケアビットに対して、キヤプチャ時に遷移ビット数が削減 されるような適切な論理値の割り当てを行う。その手法を図 8に示す。この手法は、従 来の手法である、キヤプチャ時に遷移ビット数が削減されるように割当操作、正当化 操作及びそれらの組合せを行う点で類似して ヽるが、本発明の実施の形態にぉ 、て は、論理値の決定方法と 、う点が改良されて 、る。
[0095] 図 8は、特定したドントケアビットに対して論理値の割り当てを行う場合の処理を示し たフロー図である。
[0096] まず、図 2における中間テストベクトル集合 418において、全てのドントケアビットを 含むテストベクトルに対して処理が行われたか否かを判定する(ステップ 1000、 100 2)。全てのドントケアビットを含むテストベクトルに対して行われていれば、ステップ 10 18で最終テストベクトル集合 Tfinが得られ、処理を終了する。全てのドントケアビット を含むテストベクトルに対して行われていなければステップ 1004に進む。ステップ 10 04ではドントケアビットを含むテストベクトルを 1つ選択し、ステップ 1006でステップ 1 004で選択されたテストベクトル内の全てのドントケアビットペアの相互間の依存関係 を調べる。このドントケアビットペアの相互間の依存関係を調べる処理は、図 2に示す ドントケアビット ID化部 410により行われる。
[0097] ステップ 1008で、全てのドントケアビットペアに対して相互間の依存関係を調べた か否かを判定し、全てのドントケアビットペアに対して相互間の依存関係を調べたらス テツプ 1002に戻る。全てのドントケアビットペアに対して相互間の依存関係を調べて いなければステップ 1010に進む。ステップ 1010では、ドントケアビットペアを 1つ選 択し、ステップ 1012で、選択したドントケアビットペアのドントケアビットに割り当てる論 理値を決定する。このステップ 1012の処理は、図 2に示す論理値決定処理部 412に より行われる。次に、ステップ 1012で決定した論理値を、ステップ 1014で正当化す ることによりドントケアビットに割り当てを行い、ステップ 1016で割り当てが成功するか 否かが判定される。成功しなければステップ 1012に戻り新たな論理値を決定する。 成功すればステップ 1008に戻り、全てのドントケアビットペアに対して処理が行われ るまで繰り返して処理が行われる。
[0098] なお、ステップ 1014における正当化処理は行われる必要はない場合もある。
[0099] 以下に、図 8におけるステップ 1006 (A)のドントケアビットを含むテストベクトル内の 全てのドントケアビットペアの相互間の依存関係を部分的記号 Xシミュレーションによ り求める処理についての手順を説明する。ドントケアビットペアの相互間の依存関係 とは、出力側のドントケアビットが何れの入力側のドントケアビットから伝搬したかの関 係をいい、依存関係を調べることにより適切な論理値の決定を行うことができる。また 、部分的記号 Xシミュレーションとは、従来故障診断に用いられてきた記号シミュレ一 シヨンの一部である。
[0100] ここで、全ての論理値が 0または 1である初期テストベクトル力 特定された m個のド ントケアビットを含むテストベクトルを v,とする。 v'に対する部分的記号 Xシミュレーシ ヨンは以下のように処理される。まず、 v'中の m個のドントケアビットを相異なる m個の X記号 (XI, X2, · · · , Xm)で置き換えたものを V"とする。その結果 V"は X記号を含 み、 X記号の伝搬処理は次の 2つの規則を基に繰り返し行われる。
[0101] (規則 1)論理演算の結果が XIの否定となる場合は、一 XIとする (—は否定論理を 表す)。
[0102] (規則 2)もし、論理演算の結果が確定値でなぐ且つ、 X記号 XIまたは一 Xiでもな ければ、新しい X記号が生成される。
[0103] これらの規則は、 X記号の伝搬処理において論理否定のみを保存し、その他の論 理演算に関する情報は無視する。その目的は、出来る限り有効な情報を保ちながら メモリの使用量を削減するためである。
[0104] 図 9に、上記部分的記号 Xシミュレーションを実行した結果の一例を示す。
[0105] 図 9において、入力テストベクトル v,には 3個のドントケアビットが存在する。上記規 則に従い V,における 3個のドントケアビットに新しく記号 XI、 X2及び X3を割り振った 入力テストベクトルが V"である。 X記号の伝搬処理は規則 1及び規則 2に従って繰り 返し行わる。例えば、ゲート G2の出力は X2の否定になるため、一 X2と表される。ま た、ゲート G4の出力は XIと一 X2の論理和であるため、新しく記号 X4と表される。
[0106] 一般的に、部分的記号 Xシミュレーションは図 9の例が示すように 3値論理シミュレ ーシヨンよりも依存関係の情報を求めることができる。ここでは 3値論理シミュレ一ショ ンの結果においては、信号線く e, z>上のドントケアビットペアはく X, X>となり、依 存関係が得られない。しかし、部分的記号 Xシミュレーションを行った結果、信号線く e, z>上のドントケアビットペアはく X3, 一 3 >となり、信号線く e, z>は同じ論理 値を取り得な 、ことを示して 、る。この情報は 3値論理シミュレーションでは得ることが できない。 ントケアビットに割り当てる論理値を決定し、割り当てる処理について説明する。ここ で、決定される論理値は、上記で調べた依存関係に基づいて、遷移ビットの数を削 減するようにドントケアビットに設定される値である。適した論理値が決定され、割り当 てられることができれば、誤テストの原因となる遷移ビット数が削減され、誤テストを回 避でき得る。
[0108] ドントケアビットを含むテストベクトル v'に対して論理値の割り当てが必要であり、 v' と f(v')のドントケアビットに対して割り当てるべき論理値を決定する必要がある場合を 仮定する。以下にその決定の手順を示す。
[0109] (手順 1)ドントケアビットを含む入力テストベクトル v'に対応する X記号を含む V"に 対して部分的記号 Xシミュレーションを行う。全ての X記号のビットペアは <v" : PPI> とく f (v"): PPO >を比較することにより求めることができる。ただし f (v")は V"の出力 側のテストベクトルである。
[0110] (手順 2)ビットペアく Xi, b2>、く bl,Xi>及びく bl,_Xi>のそれぞれの X記号 のビットペアに対して図 10に示される規則に従い XIに適合すると思われる論理値を 算出する。ここで、 bl及び b2は論理値である。ただし、 Xiに対する 0を優先的に割り 当てる指標を示す値及び 1を優先的に割り当てる指標を示す値は 0とする。
[0111] (手順 3— a)ビットペアく Xi, b2>、 <1)1,¾>及び<1)1,_ 1>の¾に対して論 理値を決定する場合、もし、 0 (1)を優先的に割り当てる指標を示す値が 1 (0)を優先 的に割り当てる指標を示す値より大きければ 0 (1)に決定する。 [0112] (手順 3— b)ビットペアく a, b > = <Xi, Xi>の場合、 0を優先して決定し、その決 定による論理値の割り当てが失敗であれば 1を割り当てる。
[0113] (手順 3— c)ビットペアく a, b > = <Xi, 一 1>の場合、 aに 0を決定し、 bに 1を決 定する。その決定による論理値の割り当てが失敗であれば aに 1を、 bに 0を割り当て る。
[0114] (手順 3 - d)ビットペアく a, b > = < Xi, Xj >またはく Xi, 一 Xj >の場合、 a及び b に同じ論理値を決定し、その決定による論理値の割り当てが失敗であれば a及び に 異なる論理値を割り当てる。
[0115] 手順 1は、部分的記号 Xシミュレーションにより X記号のビットペアの依存関係の情 報を求める処理である。手順 2は、ドントケアビットを決定するために X記号のビットべ ァの依存関係を考慮する。手順 3は、 4つの異なる論理値の決定についての処理で ある。これらの処理の結果から、効果的にドントケアビットに論理値を決定することが できる。この手順を行った場合の例を、図 11を参照して説明する。
[0116] 図 11は、ドントケアビットに論理値を決定する場合の例を示した図である。
[0117] 図 11において、 3つの X記号のビットペアく a, x> = <Xl, 0>、 <b, y> = < l, Xl >及び < c, ζ> = < 1, 1 >がある。図 10の表に従うと XIに対する 0を優先的に 割り当てる指標を示す値は 1となり、 1を優先的に割り当てる指標を示す値は 2となる。 従って、 X記号のビットペアく a, χ> = <Χ1, 0>の XIに対する論理値を決定する 場合、論理値は 1に決定される。これは X記号のビットペアく a, x>では、キヤプチャ 時に遷移が発生する力 <b, y>及びく c, z>では、キヤプチャ時に遷移が発生し ない。
[0118] 従来の手法においては、ドントケアビットペア間の相互の関係を考慮せずに < a, X
>の関係のみから XIの論理値を決定していたため、 XIには 0が決定され遷移ビット の数が削減される効果が十分とは言えな力つた。しかし、本発明の実施の形態に係 るドントケアビットへの論理値の決定手法を行うことで、ドントケアビットペア間の相互 の関係が考慮されるため、遷移ビットの数が効果的に削減され、誤テストを回避する ことができる。
[0119] 上記手順で処理を行うことにより、図 3におけるステップ 508の最終テストベクトル集 合 (Tfin)が得られ、処理を終了する。
[0120] 以下に、本発明の実験結果を示す。
[0121] 本実験では、本発明の提案手法を C言語により実装し、 ISCAS ' 89ベンチマーク 回路を対象とし、 CPU1. OGHzのペンティアム(登録商標) IIIプロセッサ、メモリ 512 MBの計算機により行われた。図 12は実験結果を示した表である。
[0122] 図 12 (a)に、実験に使用した回路の基本情報を示す。
[0123] 外部入力数、外部出力数及び FZFs (フリップフロップ)の数がそれぞれ「# of P Is」、「# of POs」及び「# of FZFs」に示される。 ATPGプログラムにより縮退 故障用テストベクトル集合を生成し、テストベクトル数及び各回路の故障検出率はそ れぞれ「# of Vector」及び「Fault Coverage に示される。さらに、各回路のオリ ジナルの遷移ビットの最大数 (初期テストベクトル集合における遷移ビットの最大数) 力 S「Origenal Max Trans」に示される。
[0124] 図 12 (b)は、従来の手法である、候補ビットの特定を行わないドントケアビットの特 定手法に基づくキヤプチャ時の消費電力低減手法による実験結果を示した表である
[0125] 各回路にぉ 、て、候補ビットの特定を行わずに特定されたドントケアビットの割合及 び CPU時間を「Unconstrained X-IdentificationJの「X (%)」及び「CPU (Sec .;)」に示す。最下行には平均値を示しており、全て 0または 1であるテストベクトル集 合中の平均 63. 5%が故障検出率を低下させずにドントケアビットとして特定されて いる。
[0126] 従来の LCP (Low Capture Power)手法では、特定されたドントケアビットに対 する論理値の割り当ては、ドントケアビットペアの相互間の依存関係を考慮しない。各 回路の遷移ビットの最大数、遷移ビットの減少比率及び CPU時間を「01d LCP X ー 111^¾」の「1^& Trans.」、「Red Rate (%)」及び「CPU (Sec.;)」に示す。ま た、比較のためにドントケアビットにランダムに論理値を割り当てた場合の結果を「Ra ndom X— ? 11^^」の「1^& Trans.」に示す。図 12 (b)の表より、明ら力に、従来 手法によるドントケアビットへのランダムな論理値の割り当てよりキヤプチャ時の消費 電力の低減効果があることがわかる。 [0127] 図 12 (c)は、本発明の実施の形態における実験結果を示した表である。
[0128] 本発明の実施の形態では、候補ビットの特定及び候補ビットからドントケアとできる ドントケアビットの特定は制約表を生成して行われ、ドントケアビットへの論理値の割り 当てはドントケアビットペアの相互間の依存関係を考慮してキヤプチャ時の消費電力 を低減する手法により行われた。図 12 (c)の表に示す各列は図 12 (b)の表に示す各 列と同意義である。
[0129] 図 12 (b)より、従来技術によると最大遷移ビット数の減少比率は平均して 33. 2% である。また、図 12 (c)より、本発明の実施の形態における手法によると最大遷移ビッ ト数の減少比率は平均して 43. 3%である。このことから従来技術に比べて本発明の 実施の形態における手法が遷移ビット数の減少比率を 30. 4%改善して 、ることにな る。
[0130] 遷移ビットの数は、回路中のノード遷移の数と深い相互関係があり、そのノード遷移 の数はキヤプチャ時の消費電力の浪費を直接反映するものであるため、本発明にお いて提案された手法がキヤプチャ時の消費電力の浪費を減少させることに効果的で ある。
[0131] 本発明の実施の形態の手法においては、遷移ビット数の上限である c— limitを設 定する必要がある。本実験においては、初期テストベクトル集合 Tintの遷移ビット数 の最大値の 10%を c— limitに設定して行つた。
[0132] 図 12 (b)における「Unconstrained ー1(1611 £ & 1011」の平均値は65. 3%を 示しており、図 12 (c)における「Unconstrained X— Identification」の平均値は 2 1. 9%を示している。これは、本発明の実施の形態における手法力 制約を受けるド ントケアビットの数が小さいにも関わらず、キヤプチャ時の消費電力の浪費を減少さ せる上で明らかに有効であることを示している。従って、ドントケアビットの数のみでは なぐドントケアビットの分布が、キヤプチャ時の消費電力の浪費を減少させる効果を 向上させる重要な役割を果たすことがわ力る。
[0133] なお、上記まででは、図 1に示すようなフルスキャン順序回路を用いて説明したが、 図 13に示すようなパーシャルスキャン回路にも適用可能である。ここで、パーシャル スキャン回路とは、一部のフリップフロップをスキャンフリップフロップに置き換えた上 で、それらを用いて 1本若しくは複数本のスキャンチェーンを形成するものである。
[0134] 具体的には、組合せ回路部分 3000と順序回路のフリップフロップ 3001とパーシャ ルスキャン順序回路のスキャンフリップフロップ 3002とから構成される。組合せ回路 部分 3000は図 1の組合せ回路部分 300と同様ではある力 その入力はく v: PPI> がスキャンシフトによってスキャンフリップフロップ 3002に設定される部分く v: PPIn2 >とフリップフロップ 3001に設定される部分く v: PPInl >力もなる。また、組合せ回 路部分 3000からの出力は同じく図 1の組合せ回路部分 300と同様である力 テスト ベクトル Vに対するテスト応答 f (v)としての外部出力線に直接現れる部分 < f (v): PO >と擬似外部出力線に現れる部分 < f (V): PPO >のうち、 < f (v): PPO >はスキヤ ンキヤプチヤによってスキャンフリップフロップ 3002に取り込まれる部分く f (v): PPO n2 >とフリップフロップ 3001に取り込まれる部分く f (V): PPOnl >力もなる。
[0135] 図 13 (b)は図 13 (a)におけるスキャンフリップフロップ 3002におけるスキャンキヤプ チヤの前と後にお 、て論理値に相違が発生する場合の一例を示す。
[0136] 図 1 (b)の説明と同様である力 図 13 (b)において、テストベクトルく v: PPIn2>の 要素である一つのビット aと、それに対応するテスト応答く f (v): PPOn2>力 スキヤ ンフリップフロップ 3002で異なる論理値を取ると、キヤプチャモードの際に論理値の 相違 (以下、遷移とする)が発生する。ある一つのテストベクトルに対する遷移の数は 、そのテストベクトルを原因とした組合せ回路部分 3000を含めた回路全般で発生す る消費電力と深く関係しているため、テストベクトルに対するキヤプチャ時の遷移の数 を削減することで、キヤプチャ時の消費電力を低減することができる。

Claims

請求の範囲
[1] 論理回路に対するテストベクトル集合を変換する変換装置であって、
前記テストベクトル集合の各テストベクトルを構成する論理ビットのうちの一部のみ 力もドントケアとできるドントケアビットを特定するようにするために、所定の制約条件 であって前記論理回路における入出力関係に基づく条件によりドントケアビットにして もよい候補ビット、及び、ドントケアビットにしてはならない固定ビットを設定する設定 手段と、
前記設定手段が設定した候補ビットのみ力 特定されたドントケアビットを含むテス トキユーブに対して、入力ビットと出力ビットからなる複数のビットペア間の関係を考慮 して、所定の目的を達成するために必要な論理値をドントケアビットに決定する決定 手段とを備えた、変換装置。
[2] 前記決定手段は、前記設定手段が設定した候補ビットのみから特定されたドントケ ァビットを含むテストキューブに代えて他の手段で得られたドントケアビットを含むテス トキユーブに対して、入力ビットと出力ビットからなる複数のビットペア間の関係を考慮 して、所定の目的を達成するために必要な論理値をドントケアビットに決定する、請 求項 1記載の変換装置。
[3] 論理回路に対するテストベクトル集合を変換する変換装置であって、
前記テストベクトル集合の各テストベクトルを構成する論理ビットのうちからドントケア とできるドントケアビットを特定するようにするために、所定の制約条件であって前記 論理回路における入出力関係に基づく条件によりドントケアビットにしてもよい候補ビ ットを設定する設定手段を備えた、変換装置。
[4] 前記設定手段は、前記テストベクトル集合の各テストベクトルを構成する論理ビット のうちの一部のみ力 ドントケアとできるドントケアビットを特定するようにするために、 前記候補ビットを設定することに加えて、ドントケアビットにしてはならない固定ビットを 設定する、請求項 3記載の変換装置。
[5] 前記論理回路はフルスキャン順序回路であり、
前記制約条件は、前記フルスキャン順序回路に含まれるスキャンセルの出力にお いて、スキャンキヤプチヤの前と後の論理値の相違数が削減されるように定められる 条件である、請求項 1から 4のいずれかに記載の変換装置。
[6] 論理回路に対するテストベクトル集合を変換する変換装置であって、
前記テストベクトル集合の各テストベクトルを構成する論理ビットのうちからドントケア とできるドントケアビットを含むテストキューブに対して、入力ビットと出力ビットからなる 複数のビットペア間の関係を考慮して、所定の目的を達成するために必要な論理値 をドントケアビットに決定する決定手段を備えた、変換装置。
[7] 前記論理回路はフルスキャン順序回路であり、
前記目的は、前記フルスキャン順序回路に含まれるスキャンセルの出力において、 スキャンキヤプチヤの前と後の論理値の相違数が効果的に削減されることである、請 求項 1、 2又は 6記載の変換装置。
[8] 論理回路に対するテストベクトル集合を変換する変換方法であって、
設定手段が、前記テストベクトル集合の各テストベクトルを構成する論理ビットのうち の一部のみからドントケアとできるドントケアビットを特定するようにするために、所定 の制約条件であって前記論理回路における入出力関係に基づく条件によりドントケ ァビットにしてもよ 、候補ビット、及び、ドントケアビットにしてはならない固定ビットを設 定する設定ステップと、
決定手段が、前記設定手段が設定した候補ビットのみ力も特定されたドントケアビッ トを含むテストキューブ、またはその他の手段で得られたドントケアビットを含むテスト キューブに対して、入力ビットと出力ビットからなる複数のビットペア間の関係を考慮 して、所定の目的を達成するために必要な論理値をドントケアビットに決定する決定 ステップとを含む、変換方法。
[9] 論理回路に対するテストベクトル集合を変換する変換方法であって、
設定手段が、前記テストベクトル集合の各テストベクトルを構成する論理ビットのうち 力もドントケアとできるドントケアビットを特定するようにするために、所定の制約条件 であって前記論理回路における入出力関係に基づく条件によりドントケアビットにして もよ ヽ候補ビットを設定する設定ステップを含む、変換方法。
[10] 前記設定ステップは、前記設定手段が、前記テストベクトル集合の各テストベクトル を構成する論理ビットのうちの一部のみからドントケアとできるドントケアビットを特定 するようにするために、前記候補ビットを設定することに加えて、ドントケアビットにして はならない固定ビットを設定するステップを含む、請求項 9記載の変換方法。
[11] 前記論理回路はフルスキャン順序回路であり、
前記設定ステップは、
前記テストベクトル集合の各テストベクトルに対して、前記フルスキャン順序回路に 含まれるスキャンセルの出力にお 、て、スキャンキヤプチヤの前と後で論理値の相違 が発生するビットと相違が発生しないビットとを識別する第 1のステップと、
前記相違が発生しないビットを固定ビットとする第 2のステップと、
前記相違が発生するビットのうち力 所定の条件を満たした前記候補ビットを特定 するとともに前記候補ビットに特定されな力つた残余の前記相違が発生するビットを 固定ビットとする第 3のステップとを含み、
前記候補ビットからドントケアとできるドントケアビットを特定し、前記固定ビットからド ントケアビットを特定しな 、ことを特徴とする、請求項 8又は 10に記載の変換方法。
[12] 前記第 3のステップは、
各テストベクトルにおける候補ビットの予定総数を決定するステップと、 前記相違が発生するすべてのビットに対してドントケアを割り当て、 3値論理シミュ レーシヨンを行って、その結果によって、入力ビットにドントケアがありそれに対応する 出力ビットにドントケアがないタイプ 1のドントケアビットペア、及び、入力ビットとそれ に対応する出力ビットの両方にドントケアがあるタイプ 2のドントケアビットペアを特定 するステップと、
前記特定されたタイプ 1のドントケアビットペアを優先的に候補ビットとして選択し、 タイプ 1のドントケアビットペアがなくなりかつ既に選択された候補ビットの数が予定総 数に達して 、な 、場合、タイプ 2のドントケアビットペアを所定の基準に従って候補ビ ットとして選択するステップを含む、請求項 11記載の変換方法。
[13] 論理回路に対するテストベクトル集合を変換する変換方法であって、
前記テストベクトル集合の各テストベクトルを構成する論理ビットのうちからドントケア とできるドントケアビットを含むテストキューブに対して、入力ビットと出力ビットからなる 複数のビットペア間の関係を考慮して、所定の目的を達成するために必要な論理値 をドントケアビットに決定する決定ステップを含む、変換方法。
[14] 前記論理回路はフルスキャン順序回路であって、
前記決定ステップは、
前記テストキューブにお 、て、前記フルスキャン順序回路に含まれるスキャンセル の出力に対応するドントケアビットをそれぞれ異なるものと見なし、このような個々のド ントケアビット及びその反転が前記フルスキャン順序回路に含まれるスキャンセルの 入力への出現状況を調べるステップと、
前記フルスキャン順序回路に含まれるスキャンセルの出力に対応するドントケアビ ットと、前記フルスキャン順序回路に含まれるスキャンセルの入力への前記ドントケア ビット又はその反転の出現状況に基づいて、スキャンキヤプチヤの前と後で論理値の 相違数が最小化することを実現させる論理値を前記ドントケアビットに決定するステツ プとを含む、請求項 8又は 13に記載の変換方法。
[15] 請求項 8から 14のいずれかに記載の変換方法をコンピュータに実行させることが可 能なプログラム。
[16] 請求項 15記載のプログラムをコンピュータが実行することが可能にて記録した記録 媒体。
PCT/JP2006/323862 2005-11-30 2006-11-29 変換装置、変換方法、プログラム、及び、記録媒体 WO2007063924A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/129,746 US7971118B2 (en) 2005-11-30 2008-05-30 Conversion device, conversion method, program, and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005346613A JP5017603B2 (ja) 2005-11-30 2005-11-30 変換装置、変換方法、変換方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体
JP2005-346613 2005-11-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/129,746 Continuation-In-Part US7971118B2 (en) 2005-11-30 2008-05-30 Conversion device, conversion method, program, and recording medium

Publications (1)

Publication Number Publication Date
WO2007063924A1 true WO2007063924A1 (ja) 2007-06-07

Family

ID=38092259

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/323862 WO2007063924A1 (ja) 2005-11-30 2006-11-29 変換装置、変換方法、プログラム、及び、記録媒体

Country Status (4)

Country Link
US (1) US7971118B2 (ja)
JP (1) JP5017603B2 (ja)
TW (1) TW200734662A (ja)
WO (1) WO2007063924A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101451461B1 (ko) * 2007-10-19 2014-10-15 가부시키가이샤 엘피텍스 돈 케어 비트 추출 방법 및 돈 케어 비트 추출 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체
US7779320B2 (en) * 2008-02-21 2010-08-17 Lsi Corporation Low power scan shifting with random-like test patterns
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
US8429472B2 (en) * 2008-08-20 2013-04-23 National University Corporation Kyushu University Institute of Technology Generating device, generating method, and program
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
WO2010047219A1 (ja) * 2008-10-23 2010-04-29 国立大学法人 九州工業大学 生成装置、判別方法、生成方法及びプログラム
US8370809B2 (en) * 2010-03-18 2013-02-05 Salesforce.Com, Inc. System, method and computer program product for automated test case generation and scheduling
JP2023137993A (ja) * 2022-03-18 2023-09-29 キオクシア株式会社 メモリテスタ及びメモリテスタを用いたテスト方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001099901A (ja) * 1999-09-29 2001-04-13 Nec Corp テストパタン圧縮方法とテストパタン圧縮装置及びシステム並びに記録媒体
JP2004317505A (ja) * 2003-04-03 2004-11-11 Fujitsu Ltd プログラム、記憶媒体、テストパターン作成方法及び装置

Family Cites Families (6)

* 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 遅延テストパターン及びその作成方法
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
US6611933B1 (en) * 2000-04-12 2003-08-26 International Business Machines Corporation Real-time decoder for scan test patterns
US6732312B2 (en) * 2001-03-09 2004-05-04 Agilent Technologies, Inc. Test vector compression method
US7027947B2 (en) * 2003-04-03 2006-04-11 Fujitsu Limited Integrated circuit testing method, program, storing medium, and apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001099901A (ja) * 1999-09-29 2001-04-13 Nec Corp テストパタン圧縮方法とテストパタン圧縮装置及びシステム並びに記録媒体
JP2004317505A (ja) * 2003-04-03 2004-11-11 Fujitsu Ltd プログラム、記憶媒体、テストパターン作成方法及び装置

Also Published As

Publication number Publication date
JP5017603B2 (ja) 2012-09-05
US20080235543A1 (en) 2008-09-25
TW200734662A (en) 2007-09-16
US7971118B2 (en) 2011-06-28
JP2007155339A (ja) 2007-06-21
TWI368042B (ja) 2012-07-11

Similar Documents

Publication Publication Date Title
WO2007063924A1 (ja) 変換装置、変換方法、プログラム、及び、記録媒体
KR101006822B1 (ko) 투명한 테스트 방법 및 스캔 플립 플롭
JP4752030B2 (ja) 半導体論理回路装置のテストベクトル生成方法及びテストベクトル生成プログラム
KR20100107493A (ko) 시스템 온 칩 장치
JP5066684B2 (ja) 生成装置、生成方法、生成方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体
JP5017604B2 (ja) 生成装置、生成方法、この方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体
US20210116498A1 (en) Customer-transparent logic redundancy for improved yield
JP2008082867A5 (ja)
JPWO2008001818A1 (ja) 変換装置、変換方法、変換方法をコンピュータに実行させることが可能なプログラム、及び、このプログラムを記録した記録媒体
JP4752029B2 (ja) 半導体論理回路装置のテスト方法及びテストプログラム
US8832510B2 (en) Circuit to reduce peak power during transition fault testing of integrated circuit
US20140208177A1 (en) Circuits and methods for dynamic allocation of scan test resources
US8429472B2 (en) Generating device, generating method, and program
US6185721B1 (en) Method of design for testability at RTL and integrated circuit designed by the same
US7702979B2 (en) Semiconductor integrated circuit incorporating test configuration and test method for the same
JP2005257366A (ja) 半導体回路装置及び半導体回路に関するスキャンテスト方法
US9869718B1 (en) Scan test architecture and method for scan testing
Dhotre et al. Constraint-based pattern retargeting for reducing localized power activity during testing
Rau et al. A novel gated scan-cell scheme for low Capture Power (LCP) in at-speed testing
Lim et al. Cell-Aware Scan Diagnosis Using Partially Synchronous Set and Reset
Patnaik et al. The state of VLSI testing
JP4777399B2 (ja) テスト構成の半導体集積回路
REDDY et al. Power Safe Test Pattern Determination and Refinement for Transition Fault Coverage
Nicolici et al. Design and Test of Digital Integrated Circuits
Tseng Generation of primary input blocking pattern for power minimization during scan testing

Legal Events

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

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06833665

Country of ref document: EP

Kind code of ref document: A1