A New Method for Diagnosing Multiple Stuck-at-Faults using
Multiple and Single Fault Simulations
An-jen Cheng Electrical and Computer Engineering, Auburn University
Abstract one is multiple stuck-at faults, a
stuck-at fault is assumed to affect A new method that uses multiple only the interconnection between and single faults simulations to gates. As the density of the logic diagnose multiple stuck-at fault in gates increase that means the testing combinational circuits is described. complexity increasing further; This method has the assumption that therefore, either in vary large scale all suspected fault are equally likely integrated circuit (VLSI) or large in the faulty circuit, multiple fault scale integrated circuit (LSI) who simulations are performed. Faults are has a great impaction on the added or removed from a certain set complexity of testing is due to the of suspect faults, is depended on the increasing of logic density. However, multiple fault simulation results that multiple fault diagnosis becomes the primary output values have increasing difficulty and time- agreed with the observed values or consuming as the size of integrated not. Faults which are added or circuit increases. Many of methods removed from the ser of suspected have been introduced for diagnosing faults are determined using single and deducing fault locations multiple fault simulation. The method is faults in combinational circuit such effective of diagnosis has been as effect-cause analysis, guided- evaluated by experiment conducted probing, analysis by forward on benchmark circuits, which propagation and backward achieves a small number of implication using randomly suspected fault by simple processing. generated input-pairs, analysis and This method will be useful for diagnosis using both electron beam preprocessing stage of diagnosis and LSI tester. We have proposed using the electron beam tester. methods to deduce suspected faults by algorithmically-generated sensitizing input-pairs without Introduction probing internal lines, this method used to deduction rules based on Stuck-at fault means that the fault sensitized paths. is modeled by assigning a fixed (0 or Main objective of this novel 1) value to a single line in the circuit. method is to reduce the number of A single line is an input or an output suspected faults by using single and of a logic gate or a flip-flop. Stuck-at multiple fault simulation. fault can be derived into two parts Characteristics of the proposed one is single stuck-at fault another method of diagnosis are as follow: 1. To reduce the number of all of detectable single stuck-at suspected faults, single and faults. multiple fault simulation Definition 2 For each test applied to with diagnostic tests that a circuit under test (CUT), if the lead to fault-free responses value observed at a primary output of are used to identify non- CUT is the same as that of the fault- existent faults. free circuit then the primary output 2. To avoid missing actual then the primary output is called pass faults in a fault circuit the primary output. Contrary, if the proposed method uses the observed value at a primary output of result of multiple fault CUT is different from the expected simulation to diagnose fault-free value then the primary multiple stuck-at faults. On output is called fail primary. the assumption that all Definition 3 In order to obtain a set suspected faults are equally of representative fault, we likely in the faulty circuit, determined equivalent faults that are multiple faults simulations structurally related. For AND gate, are performed. Depending all the input stuck-at 0 faults and the on whether or not multiple output stuck-at 0 are equivalent. fault simulation results in From every equivalence class we primary output values that retain one fault as representative agree with the observed fault in CUT. During diagnosis, values, faults are added to or suspected faults are composed of the removed from a set of stuck-at faults that are deduced in suspected faults. Diagnosis earlier phases of the diagnostic is affected by repeated method to be faults that may possibly additions and removal of exist in CUT. faults. During single stuck fault Definitions of single and multiple simulation, first, the model of the fault simulation will be describing in fault-free circuit C is transformed so section 2. In section 3, we present that it models the circuit Cf created the simulation based method for by a single stuck-at fault f. Then Cf is multiple stuck-at fault diagnosis. In simulated. During multiple fault section 4, we present experimental simulation, first, the model of the results on benchmark circuit to fault-free circuit C is transformed so evaluate the method. that it models the circuit CSF created by all of suspected faults SF={f 1, Preliminary ……fi-1,fi,fi+1….n}. Then CFS is simulated. To diagnose multiple stuck-at faults, multiple stuck-at 0 and multiple stuck-at 1 in the circuit is assumed. Definition 1. A diagnostic test set consists of a set of tests which detest case 1 or not. Therefore, case 2 and case 3 need to be considered. Case 2 Based on the assumption, case 2 indicates that at present not all actual faults are included on the set of suspected faults. Hence, faults that are detected by the fail test in case 2 are added to the set of suspected faults. Diagnosis based on case2 is Figure 1 is an example of multiple performed to avoid missing faults fault simulation, this circuit has the that exist in CUT. set {C/1, D/1, I/1} of deduced Case 3 suspected faults. C/1, D/1, and I/1 Based on the assumption, if the are equally likely in the faulty value obtained at the primary output circuit, multiple fault simulation with by multiple fault simulation does not the test (A,B,C)=(1,0,0) is agree with the observed value then performed. Finally, the value at line case 3 will be introduced. Case 3 C, D, and I are changed from fault- indicates that the set of suspected free values to faulty values by faults include fault which does not injected fault into the circuit. The exist in CUT. Therefore, faults that test vector (A, B, C) = (1, 0, 0) to the are detected by the pass test in case 3 circuit, the output value observed at are removed from these set of the primary out is faulty. Multiple suspected faults. Diagnosis based on fault simulation does not simulate all case 3 performed to reduce the possible combination among number of suspected faults. suspected faults; in other word, multiple fault simulation does not simulate faulty circuits which have sets {C/1, D/1}, {C/1, I/1}, {D, 1, I/1}, etc. in Fig. 1.
Diagnostic method using single
and multiple fault simulations
The diagnose method is performed
based on the following case. Case 1 Faulting masking relationships among actual faults do not occur on an individual test even though multiple faults exist in CUT. If CUT satisfies case 1, then fault which are detected by pass test do not exist in CUT; however, it is not Figure 2 is an example to elucidate guaranteed whether CUT satisfies case 2 with a circuit has faults D/1, and I/1 indicated by an upward arrow, and Table 1. D/1 and I/1 are the actual fault, primary output J does not agree with the but now this circuit has the set {G/0, I/1} observed value. Therefore, the primary of deduced faults. Moreover, the test (A, output J is a diagnosing primary output B, C) = (1, 0, 0) to the circuit, the output of the pass test. If G/0 is selected in the value obtained at primary output H is set of suspected fault SF= {D/1, G/0, fault, table 1 shows the results of I/1}. Simulating the fault G/0 with this multiple simulation. Due to the value pass test result with a faulty output value obtained at primary output H does not at J, the fault G/0 is detected at the agree with the observed value; therefore, primary output J; therefore, G/0 is the primary output H is a diagnosing deduced as non-exist G/0 is removed primary output of the fail test. If D/1 from SF. were selected in the suspected fault list, Case 4 simulating the fault D/1 with this fail test Let a set of suspected faults be {f1, results in a faulty output value at H. D/1 …..,fi-1, fi, fi+1,….fn}. Based on the is detected at the primary output H. Thus assumption that all suspected fault D/1 is deduced as a suspected fault. except for fi are equally likely in the faulty circuit , the circuit assumed ti have the fault f1,….,fi-1, fi+1,,….and fn is simulated for all test in the diagnosis test set. The value obtained at all primary outputs by the multiple faults simulation with all tests agree with the observed values at the primary outputs. Case 4 indicates that the suspected fault fi in the set of suspected fault does not exist in CUT. Thus, fi is removed from the set of suspected faults. Diagnosis is based on case 4 is performed to reduce the number of suspected faults. Under CUT with multiple stuck-at faults fault masking may occur among actual fault. Fault masking is the condition where a test detects a specific fault but not in combination with some Case 3 will be elucidated by the Figure other fault. The specific fault in CUT 3 which have the faults D/1 and I/1, and with multiple faults can not be detected a table 2 list. D/1 and I/1 are the actual by any test in the diagnostic test because faults, and this circuit has the set {D/1, the specific faults are masked by the G/0, I/1} of deduced suspected faults. As presence of multiple faults under all The test vector (A, B, C) = (1, 1, 1) tests; therefore, the specific fault is not injected to the circuit, the output values diagnosed by the proposed method. observed at both primary output are faults-free. Table 2 shows the result of Procedures of diagnostic method multiple fault simulation and the using single and multiple faults observed values, the value obtain at simulations Step 2-1 If FT_set is empty, then go In the proposed method, the set of fail to phase 3, otherwise, select and test and the set of pass test are remove a fail test from FT_set. determined based on the observed values Step 2-2 On the assumption that all at the primary output of CUT. The suspected faults in SF are equally propose method for multiple stuck-at likely in the faulty circuit; perform fault diagnosis has four phases multiple fault simulation with the fail list. Step 2-3 If the multiple fault simulation results in the primary output value that does not agree with the observed value at the fail primary output, record the fail primary output as a diagnosing primary output. In phase 3, non-existent faults are identified by single and multiple fault simulation with the set of pass tests. Non-existent faults are identified by phase 3 are removed from the set of suspected faults. Phase 3 Step 3-1 If PT_set is empty, then go to step 3-5, otherwise, select and remove a pass test from PT_set. The first phase is based on case 1, Step 3-2 On the assumption that all that non-existent faults are identify suspected faults in SF are equally by single fault simulation with the likely in the fault circuit; perform set of pass tests. multiple faults simulation with the Phase 1 pass test. Step 1-1 If PT_set is empty, then go Step 3-3 If the multiple faults to phase 2, otherwise, select and simulation in a primary output value remove a pass test from PT_set. that does not agree with the observed Step 1-2 Perform single fault value at a pass primary output, simulations with the selected pass record the pass primary output as a test to identify the faults which are diagnosing primary output. detected by the selected pass test. Step 3-4 Performing single fault Step 1-3 Remove all faults which are simulation with the selected pass detected by the selected pass test test. Faults which are detected at the from SF. diagnosing primary output are Similarly, phase 2 is based on case removed from SF. 2, which suspected faults are Step 3-5 If condition 1 or 2 is deduced by single and multiple faults satisfied then go to phase 4. If the simulation with the set of fail tests. consecutive number of repetitions of Faults deduced by case 2 are added phase 2 and 3 exceeds limit, then to the set of suspected faults. stoop the diagnostic method, Phase 2 otherwise, restore PT_set and FT_set Otherwise, stop the diagnostic , and go to phase 2. method. Condition 1. On the assumption that all suspected faults in SF are equally Experimental results likely in the faulty circuit, multiple fault simulations are performed for The ISCA85 benchmark circuits all tests in the diagnostic test set. The have been examined to investigate value obtained at all primary outputs the performance of the new by the multiple fault simulations diagnostic method. Not the test set with all tests agree with the observed which detects all detectable single values at the primary output. stuck-at faults but random patterns Condition 2. The number of were used. These tests were suspected faults obtained by the generated by a test generator based current diagnosis is equal to the on PODEM and fault simulation. number of suspected faults obtained Table 3 provides some information by the previous diagnosis. on diagnostic test set. The fourth phase is based on case In this experiment, limit was set to 4, non-existent faults are identified 5. In table 4, we shows preliminary by multiple faults simulations with experimental results for 10 faulty the set of all tests. The non-existent circuits, in each of which randomly faults identified by phase 4 are sampled single fault, double faults, removed from the suspected faults. triple faults, and quadruple faults Phase 4 were injected. The table shows the Step 4-1 Select the suspected fault average number of suspected faults closer to the primary output from SF. and the average processing time Restore the set of diagnostic tests. obtained by proposed diagnostic Step 4-2 If the set of diagnostic test method. is empty, then go to step 4-5, The averages of the number of otherwise, select and remove a test suspected faults are smaller than from the set of diagnostic test. those of the methods using deduction Step 4-3 On the assumption that all rules. suspected faults except for the selected suspected fault are equally Conclusion likely in the faulty circuit, the faulty circuit assumed to have all the A new method that uses single and suspected faults are simulated for the multiple fault simulations to test. diagnose multiple stuck-at faults I Step 4-4 If the values obtained at all combinational circuits. Based on the primary output by the multiple fault assumption that all suspected faults simulation with the test agree with are equally likely in the faulty the observed values at all primary circuit, multiple fault simulations are output, then go to step 4-2. performed. Diagnosis is effected by Otherwise, go to step 4-1. repeated additions and removals of Step 4-5 The selected suspected fault faults. This method is able to is removed form SF, if an unselected identifying the locations within a fault exists in SF then go to step 4-1. small number of suspected faults by simple processing. Therefore, the signal VLSI-circuits. Boston: Kluwer method will be useful as a Academic Publishers, 2001 preprocessing stage of diagnosis [3] Y. C. Kim, V. D. Agrawal, and using electron-beam tester. K. K. Saluja, Proc. 15th Int. Conf. on VLSI Design, Jan. 2002, pp. 592- References: 597. [1]I. Takahashi, K. O. Boateng, and [4] A. Agrawal, A. Saldanha, L. Y. Takarnatsu, Proceedings of the Lavagno, A.L. Sangiovanni- IEEE VLSI Test Symposium, 1999, p Vincentellli, IEEE/ACM 64-69. International Conference on [2] M. L. Bushnell and V. D. Computer-Aided Design, Digest of Agarwal, Essentials of electronic Technical Papers, 1996, p 212-219. testing for digital memory & mixed