160 likes | 342 Views
Optimizing Tests for Multiple Fault Models. Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE Auburn, AL 36849, USA. Outline. Multiple fault models Importance Minimization problem Multiple Fault Model Test Minimization Minimization of total number of vectors
E N D
Optimizing Tests for Multiple Fault Models Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE Auburn, AL 36849, USA North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Outline • Multiple fault models • Importance • Minimization problem • Multiple Fault Model Test Minimization • Minimization of total number of vectors • Minimizing IDDQ measurements • Results • Combined ILP model • Results • Hybrid LP-ILP method • Results • Conclusion North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Multiple Fault Models • Importance • Each fault model targets specific defects • Sematech study (Nigh et. al. VTS’97) concluded … • To detect most defects, tests for all fault models need to included • Combine test sets covering different fault models • Concatenating test sets - number of vectors grows rapidly • Minimization problem • Obtain minimized test set for considered fault models • Take advantage of vectors detecting faults in multiple fault models • Fault simulator/ATPG handles only one fault model at a time • Need for a new minimization approach North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Conventional Test Vector Minimization (one fault model at a time) North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Multiple Fault Model Test Minimization • Obtain fault dictionary by fault simulations • Determine faults detected by each vector • ‘F’ faults : for all considered fault models • ‘N’ vectors : generated for all considered fault models • ILP test minimization • Set of integer [0,1]variables { tj } – one for each vector • tj = 0: drop vector ; tj = 1: select vector • Set of constraints{ ck }–one for each fault • Example: for kth fault detected by vectors u, v and wck : tu + tv + tw≥ 1 • Objective function • Minimize∑ tj ; j = 1 to N North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Finding vectors for IDDQ measurements Given minimized set of ‘n’ vectors, define: • Integer [0,1] variables { tj } – one for each vector • tj = 0 : drop vector j ; tj = 1 : select vector j • Constraints { ck } – one for each IDDQ fault • Example: for kth IDDQ fault detected by vectors u, v and wck : tu + tv + tw≥ 1 • Objective function • Minimize∑ tj ; j = 1 to n North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Multiple fault model test minimization * CPU time limit of 5000 exceeded Need to further reduce IDDQ meas. $ SUN Sparc Ultra 10, four CPU machine with 4.0 GB shared RAM North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Combined ILP • Define two integer [0, 1] variables: • { tj , ij } – one for each vector ; j = 1 to N • tj = 0 : drop vector j • tj = 1 : select vector j • ij = 0 : no IDDQ measurement for vector j • ij = 1 : measure IDDQ for vector j North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Combined ILP (cont.) • Constraints {ck} • For kth fault detected by vectors u, v and wck : tu + tv + tw≥ 1 iu + iv + iw≥ 1tu ≥ iutv ≥ ivtw ≥ iw Only if jthfault is an IDDQ fault North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Combined ILP (cont.) • Objective function • Minimize {∑ tj + W × ∑ ij} • N : total number of vectors • tj : variables to select vectors (IDDQ or non-IDDQ) • ij : variables to select IDDQ measurements • W : weighting factor • How strongly to minimize IDDQ vectors N N j = 1 j = 1 North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Results – Combined ILP * CPU time limit of 5000 exceeded Need for reducing CPU time $ SUN Sparc Ultra 10, four CPU machine with 4.0 GB shared RAM North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Hybrid LP – ILP • Approximate solution to ILP • Algorithm: • All variables redefined as real [0,1] real variables (LP model) • Loop : • Solve LP • Round variables {tj} , {ij} to add constraints • Round to 0 if ( 0.0 <variables≤ 0.1) • Round to 1 if ( 0.9 ≤variables< 1.0) • Exit loop if no variables are rounded • Reconvert variables to [0,1] integers and solve ILP North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Results - Hybrid LP - ILP minimization * CPU time limit of 5000 exceeded Order of magnitude reduction in CPU time $ SUN Sparc Ultra 10, four CPU machine with 4.0 GB RAM shared among 4 CPUs North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
How good is Hybrid Optimization? * CPU time limit of 5000 exceeded North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Conclusion • Proposed technique • Minimizes test vectors for multiple fault models • Minimizes IDDQ measurements. • Cost Trade-off • Vector Length and IDDQ measurements • Hybrid LP – ILP procedure reduces time complexity of the solution North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts
Thank You! Any questions please ? North Atlantic Test Workshop (NATW) 2007, May 16-18, Boxborough, Massachusetts