Presentation is loading. Please wait.

Presentation is loading. Please wait.

Jan 6-10th, 2007VLSI Design 20071 A Reduced Complexity Algorithm for Minimizing N-Detect Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical.

Similar presentations


Presentation on theme: "Jan 6-10th, 2007VLSI Design 20071 A Reduced Complexity Algorithm for Minimizing N-Detect Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical."— Presentation transcript:

1 Jan 6-10th, 2007VLSI Design 20071 A Reduced Complexity Algorithm for Minimizing N-Detect Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical and Computer Engineering Auburn University, AL 36849 USA 20 th Intl Conf. on VLSI Design, Bangalore, Jan 6-10 th, 2006

2 Jan 6-10th, 2007VLSI Design 20072 Motivation for This Work Ability of N-detect tests to improve the defect coverage. Easy assimilation of N-detect tests into the normal test generation strategy. Main limitation of N-detect tests is their size. Inability of ILP based method to produce a time-bound optimal solution. Inability of previous test minimization strategies in finding minimal tests for c6288 benchmark.

3 Jan 6-10th, 2007VLSI Design 20073 Outline ILP based N-detect test minimization Previous LP based methods Recursive rounding based approach The 3V3F example Minimal tests for c6288 Results Conclusions

4 Jan 6-10th, 2007VLSI Design 20074 ILP-Based N-Detect Test Minimization [1] Use any N-detect test generation approach to obtain a set of k vectors which detect every fault at least N times. Use diagnostic fault simulation to get the vector subset T j for each fault j. Assign integer variable t i to i th vector such that, t i = 1 if i th vector is included in the minimal set. t i = 0 if i th vector is not included. [1] K. R. Kantipudi and V. D. Agrawal, “On the Size and Generation of Minimal N-Detection Tests,” Proc. VLSI Design’06.

5 Jan 6-10th, 2007VLSI Design 20075 Objective and Constraints of ILP Where, N j is the multiplicity of detection for the j th fault. N j can be selected for each individual fault based on some criticality criteria or on the capability of the initial vector set. ILP always generates an optimal solution for the given set of test vectors.

6 Jan 6-10th, 2007VLSI Design 20076 A Linear Programming Approach Though ILP guarantees an optimal solution, it takes exponential time to generate the solution. Time bounded ILP solutions deviate from optimality. LP takes polynomial time (sometimes in linear time) to generate a solution. Redefining the variables t i s as real variables in the range [0.0,1.0] converts the ILP problem into a linear one. The problem now remains to convert it into an ILP solution. The optimal value of the relaxed-LP of the ILP minimization problem is a lower bound on the value of the optimal integer solution to the problem. The optimal value of the relaxed-LP of the ILP minimization problem is a lower bound on the value of the optimal integer solution to the problem.

7 Jan 6-10th, 2007VLSI Design 20077 Previous Solutions ( Randomized rounding ) The real variables are treated as probabilities. A random number x i uniformly distributed over the range [0.0,1.0] is generated for each variable t i. If t i ≥ x i then t i is rounded to 1, otherwise rounded to 0. If the rounded variables satisfy the constraints, then the rounded solution is accepted. Otherwise, rounding is again performed starting from the original LP solution.

8 Jan 6-10th, 2007VLSI Design 20078 Limitations of Randomized Rounding Consider three faults f1,f2 and f3, and three vectors. We assign a real variable t i to vector i. Now the single detection problem is specified as:  Minimize t 1 + t 2 + t 3  Subject to constraints, f1 : t 1 + t 2 ≥ 1 f2 : t 2 + t 3 ≥ 1 f3 : t 3 + t 1 ≥ 1 The number of tests is much larger than the size of the minimal test set. The randomized rounding becomes a random search.

9 Jan 6-10th, 2007VLSI Design 20079 Recursive Rounding (New Method) Step 1: Obtain an LP solution. Stop if each t i is either 0.0 or 1.0 Step 2: Round the largest t i and fix its value to 1.0 If several t i ’s have the largest value, arbitrarily set only one to 1.0. Go to Step 1. Maximum number of LP runs is bounded by the final minimized test set size. Maximum number of LP runs is bounded by the final minimized test set size. Final set is guaranteed to cover all faults. This method takes polynomial time even in the worst case. This method takes polynomial time even in the worst case. LP provides a lower bound on solution. Lower Bound ≤ exact ILP solution ≤ recursive LP solution Absolute optimality is not guaranteed.

10 Jan 6-10th, 2007VLSI Design 200710 The 3V3F Example Step 1: LP gives t 1 = t 2 = t 3 = 0.5 Step 2: We arbitrarily set t 1 = 1.0 Step 1: Gives t 2 = 1, t 3 = 0 ■ or t 2 = 0, t 3 = 1 ■ or t 2 = t 3 = 0.5 Step 2: (last case) We arbitrarily set t 2 = 1.0 Step 1: Gives t 3 = 0

11 Jan 6-10th, 2007VLSI Design 200711 Minimal Tests for Array Multipliers There exists a huge difference between its theoretical lower bound of six and its practically achieved test set of size 12. A 15 x 16 matrix of full-adders (FA) and half-adders (HA). To make use of its recursive structure and apply linear programming techniques.

12 Jan 6-10th, 2007VLSI Design 200712 Tests for c6288: 16-Bit Multiplier Known results (Hamzaoglu and Patel, IEEE-TCAD, 2000): Theoretical lower bound = 6 vectors Smallest known set = 12 vectors, 306 CPU s Our results: Up to four-bit multipliers need six vectors Five-bit multiplier requires seven vectors c6288 –900 vectors constructed from optimized vector sets of smaller multipliers –ILP, 10 vectors in two days of CPU time –Recursive LP, lower bound = 7, optimized set = 12, in 301 CPU s

13 Jan 6-10th, 2007VLSI Design 200713 Comparison of ILP and Recursive LP

14 Jan 6-10th, 2007VLSI Design 200714 Sizes of 5-Detect Tests for ISCAS85 Circuits

15 Jan 6-10th, 2007VLSI Design 200715 CPU Time to Minimize 5-Detect Tests

16 Jan 6-10th, 2007VLSI Design 200716 Optimized 15-detect Tests Circuit Name Unopti. Vecs LP/recursive Rounding ILP [1]Heuristic[2] L.B. Vect.CPU sVect.CPU sVect.CPU s c4321488243083.5430444.8505292.1405 c499185078017.878024.9793153.2780 c880497632294.5321521.4338229.6195 c13552341126041.2126052.112745674.61260 c190866091590150.4159019116481563.91590 c267087671248380.61248607.8*9629357.6660 c354047821407239.614111223.7--1200 c53154318924494.39241368.4*--555 c6288731134250.51341206.31441813.890 c755269952371359.12370346.1**--975 [1] K R Kantipudi and V D Agrawal, Proc. VLSI Design, 2006 [2] Lee, Cobb, Dworak, Grimaila and Mercer, Proc. DATE, 2002

17 Jan 6-10th, 2007VLSI Design 200717 Conclusion Single and N-detection tests can be efficiently minimized by the new procedure. The quality of the result from recursive rounding LP is close to that of ILP. The 10 vector test set for c6288 signifies the shortcomings of present test set minimization techniques. The recursive rounding LP method has numerous other applications where ILP is traditionally used and is found to be expensive.

18 Jan 6-10th, 2007VLSI Design 200718 Thank You...


Download ppt "Jan 6-10th, 2007VLSI Design 20071 A Reduced Complexity Algorithm for Minimizing N-Detect Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical."

Similar presentations


Ads by Google