Title: Nitin Yogi and Vishwani D. Agrawal
1Optimizing Tests for Multiple Fault Models
- Nitin Yogi and Vishwani D. Agrawal
- Auburn University
- Department of ECE
- Auburn, AL 36849, USA
2Outline
- 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
3Multiple Fault Models
- Importance
- Each fault model targets specific defects
- Sematech study (Nigh et. al. VTS97) 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
4Conventional Test Vector Minimization (one fault
model at a time)
5Multiple 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 w ck tu tv tw 1 - Objective function
- Minimize ? tj j 1 to N
6Finding 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 w ck tu tv tw 1 - Objective function
- Minimize ? tj j 1 to n
7Multiple 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
8Combined 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
9Combined ILP (cont.)
- Constraints ck
- For kth fault detected by vectors u, v and w
ck tu tv tw 1 - iu iv iw 1 tu iu
tv iv tw iw
Only if jth fault is an IDDQ fault
10Combined 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
11Results 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
12Hybrid 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 lt variables 0.1)
- Round to 1 if ( 0.9 variables lt 1.0)
- Exit loop if no variables are rounded
- Reconvert variables to 0,1 integers and solve
ILP
13Results - 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
14How good is Hybrid Optimization?
CPU time limit of 5000 exceeded
15Conclusion
- 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
16- Thank You!
- Any questions please ?