470 likes | 495 Views
Master’s Defense Mohammed Ashfaq Shukoor Dept. of ECE, Auburn University. Fault Detection and Diagnostic Test Set Minimization. Thesis Advisor: Dr. Vishwani D. Agrawal Committee Members: Dr. Victor P. Nelson, Dr. Adit Singh Dept. of ECE, Auburn University. Outline. Problem Statement
E N D
Master’s Defense Mohammed Ashfaq Shukoor Dept. of ECE, Auburn University Fault Detection and Diagnostic Test Set Minimization Thesis Advisor: Dr.Vishwani D. Agrawal Committee Members: Dr.Victor P. Nelson, Dr. Adit Singh Dept. of ECE, Auburn University Shukoor: MS Thesis Defense
Outline • Problem Statement • Diagnostic Test Set Minimization - Introduction - Fault Diagnostic Table - Diagnostic ILP - Diagnostic Fault Independence - 2-phase Approach - Results - Conclusion & Future Work • Minimal Detection Test Set Generation - Dual ILP - Algorithm for Minimal Test Set Generation - Results - Conclusion & Future Work Shukoor: MS Thesis Defense
Problem Statement To find minimal detection and diagnostic test sets for combinational circuits. Shukoor: MS Thesis Defense
Diagnostic Test Set Minimization Shukoor: MS Thesis Defense
Defective Circuit Observed Behavior Tests Diagnosis Result Location or Fault Diagnosis Algorithm Physical Analysis Introduction • Failure Analysis: • Is the process of determining the cause of failure of a chip • Fault Diagnosis: Logical analysis using vectors to find the possible defect locations. • Physical Analysis / Defect Identification: Employs physical examination of the chip to locate and identify defects. Shukoor: MS Thesis Defense
Fault Diagnosis • Fault Diagnosis: • Cause-effect: Based on fault models. Assumes the fault to be of a particular fault model (cause) and compares the observed faulty behavior with the simulations of the modeled faults to derive potential fault candidates. It can be, • (1) static: uses pre-computed information • (2) dynamic: fault simulation performed during diagnosis • Effect-cause: Not based on fault models. It examines the faulty behavior (effect) and derives suspected defect locations (cause) using path-tracing methods. Shukoor: MS Thesis Defense
Fault Dictionary Based Diagnosis • A fault dictionary is a database of the simulated test responses for all modeled faults in a fault list. • Used by some diagnosis algorithms as it is fast: no simulation at time of diagnosis. • Can be very large, however! • Two most popular forms of dictionaries are: • Pass-Fail Dictionary • Full-Response Dictionary Shukoor: MS Thesis Defense
Pass-Fail Dictionary • For each vector store the list of all detectable faults. • Total storage requirement: F T bits, where F is number of faults and T is number of vectors. Example: Fault Syndrome (Signature) ‘1’ → detected (fail) ‘0’ → not detected (pass) Shukoor: MS Thesis Defense
Dictionary Diagnostic Characteristics Diagnostic Resolution: It is the average number of faults per syndrome. Diagnostic Resolution indicates how well faults are distributed among all syndromes Maximum Faults per Syndrome: It is the maximum number of faults associated with a syndrome in the dictionary. It indicates the worst distribution of faults among all syndromes. Conditionally Equivalent Fault Set: Faults with identical syndromes are grouped into a single set called an conditionally equivalent fault set. Shukoor: MS Thesis Defense
Full-Response Dictionary • For each vector, store the fault detection data for all outputs. • Total storage requirement: F T O bits, where F is number of faults, T is number of vectors and O is number of outputs. Example: Fault Syndrome ‘1’ → detected ‘0’ → not detected Shukoor: MS Thesis Defense
Motivation for Diagnostic Test Set Minimization • The amount of data in a full-response dictionary is (FTO). • Previous work on dictionary compaction has been concentrated on managing the dictionary organization and encoding. • The data in the full-response dictionary can be optimized by minimizing the vectors in the diagnostic test set. Shukoor: MS Thesis Defense
Fault Diagnostic Table • We compact the full-response dictionary into a diagnostic table, which contains information on detection and distinguishability of faults. Example: Consider a circuit with 2 outputs, having 8 faults that are detected and diagnosed by 5 test vectors Fault Diagnostic Table Full-response Dictionary Shukoor: MS Thesis Defense
vj Diagnostic ILP • If vj = 1, then vector j is included in the minimized vector set • If vj= 0, then vector j is not included in the minimized vector set Objective: minimize (1) coefficient aijis >= 1 only if the fault i is detected by vector j, else it is 0 Subject to constraints: (2) i = 1, 2, . . . , K (3) k = 1, 2, . . . , K-1 p = k+1, . . . , K (4) integer [0, 1], j = 1, 2, . . . , J K is the number of faults in a combinational circuit J is the number of vectors in the unoptimized vector set Shukoor: MS Thesis Defense
Fault Independence Independent Faults [1]: Two faults are independent if and only if they cannot be detected by the same test vector. T(f2) T(f2) T(f1) T(f1) f1 and f2 are not independent f1 and f2 are independent Generalized Fault Independence (Vector Specific, Multiple Outputs): A pair of faults detectable by a vector set V is said to be independent with respect to vector set V, if there is no single vector that detects both the faults and produces an identical output response. [1]S. B. Akers, C. Joseph, and B. Krishnamurthy, “On the Role of Independent Fault Sets in the Generation of Minimal Test Sets,” Proc. International Test Conf., 1987, pp. 1100–1107. Shukoor: MS Thesis Defense
Example (a) Independence Relation Fault detection Table (b) Generalized Independence Relation Fault diagnostic Table Shukoor: MS Thesis Defense
Effect of Generalized Independence Relation on the Constraint Set Sizes Shukoor: MS Thesis Defense
2-Phase Method Phase-1:Use existing ILP minimization techniques to obtain a minimal detection test set from the given unoptimized test set. Find the faults not diagnosed by the minimized detection test set. Phase-2: Run the diagnostic ILP on the remaining unoptimized test set to obtain a minimal set of vectors to diagnose the undistinguished faults from phase-1. Minimal set of diagnostic vectors from Phase-2 Complete diagnostic test set Minimal detection test set of Phase-1 Shukoor: MS Thesis Defense
Comparison Between 1-Step Diagnostic ILP Run and 2-Phase Method Complete Diagnostic Test Set c432 4-b ALU c17 c880 Shukoor: MS Thesis Defense
Results • SUN Fire 280R, 900 MHz Dual Core machine • ATPG – ATALANTA • Fault Simulator – HOPE • AMPL Package with CPLEX solver for formulating and solving Linear Programs Shukoor: MS Thesis Defense
Phase-1: Finding Minimal Detection Test Set Shukoor: MS Thesis Defense
Phase-2: Finding Additional diagnostic vectors using Diagnostic ILP Shukoor: MS Thesis Defense
Diagnostic Characteristics of Minimized Complete Diagnostic Test Set Shukoor: MS Thesis Defense
2-Phase vs. Previous Work [1]Y. Higami and K. K. Saluja and H. Takahashi and S. Kobayashi and Y. Takamatsu, “Compaction of Pass/Fail-based Diagnostic Test Vectors for Combinational and Sequential Circuits,” Proc. ASPDAC, 2006, pp. 75-80. Shukoor: MS Thesis Defense
Conclusion • The compaction of a diagnostic test set is carried out without any loss in the diagnostic resolution of a full-response dictionary. • We have formulated the diagnostic ILP which is an exact solution to minimize a diagnostic test set. • The newly defined generalized independence relation between pairs of faults is very effective in reducing the number of faults that need to be distinguished. • The 2-phase approach has polynomial time complexity and is effective in producing very compact diagnostic test sets. Shukoor: MS Thesis Defense
Future Work • Using the idea in [1] a fault dictionary for multiple fault models can be constructed and the 2-phase approach can be used to minimize the diagnostic vector set. • A diagnostic ATPG can be constructed with a random and deterministic phase. [1]N. Yogi and V. D. Agrawal, “N-Model Tests for VLSI Circuits,” Proc. of 40th Southwestern Symp. on System Theory, 2008. Shukoor: MS Thesis Defense
Minimal Detection Test Set Generation Shukoor: MS Thesis Defense
Detection Test Set Compaction • Static Compaction • Done after test generation. • No modification to ATPG needed. • Result dependent on the quality of original test set. • Example: Reverse order fault simulation, vector merging, etc • Dynamic Compaction • Done during test generation. • Level of compaction is independent of original test set. • Example: Process every partially-done ATPG vector immediately. Shukoor: MS Thesis Defense
vj A Known Method: Test Minimization ILP[1] • vj is a variable assigned to each of the J vectors with the following meaning: • If vj = 1, then vector j is included in the minimized vector set • If vj= 0, then vector j is not included in the minimized vector set Objective: minimize (1) coefficient akjis 1 only if the fault k is detected by vector j, else it is 0 Subject to conditions: (2) k = 1, 2, . . . , K integer [0, 1], j = 1, 2, . . . , J (3) K is the number of faults in a combinational circuit J is the number of vectors in the unoptimized vector set [1]P. Drineas and Y. Makris, “Independent Test Sequence Compaction through Integer Programming,” Proc. International Conf. Computer Design, 2003, pp. 380–386. Shukoor: MS Thesis Defense
Motivation • When test minimization is performed over an exhaustive set of vectors, the ILP solution is the smallest possible test set. • For most circuits exhaustive vector sets are impractical. • We need a method to find a non-exhaustive vector set for which the test minimization ILP will give a minimal test set. Shukoor: MS Thesis Defense
Definitions Independent Faults [2]: Two faults are independent if and only if they cannot be detected by the same test vector. T(f2) T(f2) T(f1) T(f1) f1 and f2 are independent f1 and f2 are not independent • Independent Fault Set (IFS) [2]: • An IFS contains faults that are pair-wise independent. • Size of the largest IFS is a lower bound on test set size. [2]S. B. Akers, C. Joseph, and B. Krishnamurthy, “On the Role of Independent Fault Sets in the Generation of Minimal Test Sets,” Proc. International Test Conf., 1987, pp. 1100–1107. Shukoor: MS Thesis Defense
3 1 2 4 5 1 2 4 5 11 6 7 8 9 10 6 7 8 9 Independence Graph • Independence graph: Nodes are faults and and an edge between two nodes means that the corresponding faults are independent. Example: c17[3]. • The largest Independent Fault Set (IFS) is a maximum clique in the graph. [3]A. S. Doshi and V. D. Agrawal, “Independence Fault Collapsing,” Proc. 9th VLSI Design and Test Symp., Aug. 2005, pp. 357-364. Shukoor: MS Thesis Defense
Primal and Dual Problems[4] • An optimization problem in an application may be viewed from either of two perspectives, the primal problem or the dual problem • These two problems share a common set of coefficients and constants. • If the primal minimizes one objective function of one set of variables then its dual maximizes another objective function of the other set of variables • Duality theorem states that if the primal problem has an optimal solution, then the dual also has an optimal solution, and the optimized values of the two objective functions are equal. [4] G. Strang, Linear Algebra and Its Applications, Fort Worth: Harcourt Brace Javanovich College Publishers, third edition, 1988. Shukoor: MS Thesis Defense
(4) maximize Subject to, (5) j = 1, 2, . . . , J (6) fk integer [0, 1], k = 1, 2, . . . , K Dual ILP Formulation • fk is a variable assigned to each of the K faults with the following meaning, • If fk = 1, then fault k is included in the fault set • If fk = 0, then fault k is not included in the fault set Shukoor: MS Thesis Defense
New Definitions Conditionally Independent Fault Set (CIFS): For a given vector set, a subset of all detectable faults in which no pair of faults can be detected by the same vector, is called a conditionally independent fault set (CIFS). Conditionally Independent Faults: Two faults, detectable by vector set V, are conditionally independent with respect to the vector set V if no vector in the set detects both faults. Conditional Independence Graph: An independence graph in which the independence relations between faults are relative to a vector set is called a conditional independence graph Theorem 1: A solution of the dual ILP of 4, 5 and 6 provides a largest conditionally independent fault set (CIFS) with respect to the vector set V. Shukoor: MS Thesis Defense
Conditional Independence Graph for vector set V1 Conditional Independence Graph for vector set V2 1 2 3 4 5 3 1 2 4 5 11 11 6 7 8 9 10 6 7 8 9 10 |CIFS(V2)| = 4 |CIFS(V1)| = 5 Theorem 2: For a combinational circuit, suppose V1 and V2 are two vector sets such that and V1 detects all detectable faults of the circuit. If CIFS(V1) and CIFS(V2) are the largest CIFS with respect to V1 and V2, respectively, then |CIFS(V1)| ≥ |CIFS(V2)|. Shukoor: MS Thesis Defense
Primal Dual ILP Algorithm for Test Minimization • Generate an initial vector set to detect all (or most) faults • Obtain detection matrix (conditional independence graph) by fault simulation without fault dropping • Solve dual ILP to determine CIFS. Go to 6 if CIFS has converged • Augment vector set by additional tests for CIFS • Go to step 2 • Solve primal ILP for final compacted vector set Shukoor: MS Thesis Defense
Example 1: c1355 SUN Fire 280R, 900 MHz Dual Core machine Shukoor: MS Thesis Defense
Example 2: c2670 SUN Fire 280R, 900 MHz Dual Core machine Shukoor: MS Thesis Defense
Primal-Dual ILP Results * Execution terminated due to a time limit of 1000 s SUN Fire 280R, 900 MHz Dual Core machine Shukoor: MS Thesis Defense
Comparing primal_LP–dual_ILP Solution with LP-alone Solution [5] K. R. Kantipudi and V. D. Agrawal, “A Reduced Complexity Algorithm for Minimizing N-Detect Tests,” Proc. 20th International Conf. VLSI Design, Jan. 2007, pp. 492–497. Shukoor: MS Thesis Defense
Analysis of Duality for Integer Linear Programs Primal ILP Value Relaxed LP Value Dual ILP Value Optimized value of the relaxed primal /dual LP provides a lower bound on the number of vectors and an upper bound on the largest CIFS size. [5] K. R. Kantipudi and V. D. Agrawal, “A Reduced Complexity Algorithm for Minimizing N-Detect Tests,” Proc. 20th International Conf. VLSI Design, Jan. 2007, pp. 492–497. * LP based recursive rounding [5] Shukoor: MS Thesis Defense
0 0 0 1 1 0 0 Minimized Vector Set 0 0 1 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 0 1 0 0 1 1 0 1 0 0 0 0 Problem with Primal-Dual Algorithm ATPG Vectors sa1 sa0 x x x 1 x sa1 sa1 sa1 sa0 x x x 2 x sa1 sa1 Shukoor: MS Thesis Defense
x x x Minimized Vector Set Compacted Vector Set 0 1 1 0 1 1 x x x 1 0 1 1 0 1 x x x 0 1 1 x x x 1 0 1 x x x 0 1 1 0 1 1 1 0 1 x x x 1 0 1 0 1 1 x x x 1 0 1 x x x Possible Solution Use primal-dual algorithm with partially specified vectors. The resulting minimal test set is further compacted by vector merging. sa1 sa0 x x x 1 x sa1 sa1 sa1 sa0 x x x 2 x sa1 sa1 Shukoor: MS Thesis Defense
Conclusion • A new algorithm based on primal dual ILP is introduced for test optimization. • The dual ILP helps in obtaining proper vectors, which then can be optimized by the primal ILP. Future Work • According to Theorem 2, CIFS must converge to IFS as the vector set approaches the exhaustive set. We should explore strategies for generating vectors for the dual problem in order to have the CIFS quickly converge to IFS before vector set becomes exhaustive. • Primal-dual algorithm can be used with partially specified vectors. The resulting minimal test set is further compacted by vector merging. Shukoor: MS Thesis Defense
Publications: [1] M. A. Shukoor and V. D. Agrawal, “A Primal-Dual Solution to the Minimal Test Generation Problem,” in Proc. 12th VLSI Design and Test Symp., July 2008, pp. 269–279. [2] M. A. Shukoor and V. D. Agrawal, “A 2-Phase Approach for Minimal Diagnostic Test Set Generation”, in Proc. 14th IEEE European Test Symp., May 2009. Shukoor: MS Thesis Defense
Thank you … Shukoor: MS Thesis Defense