A Primal-Dual Solution to Minimal Test Generation Problem - PowerPoint PPT Presentation

About This Presentation
Title:

A Primal-Dual Solution to Minimal Test Generation Problem

Description:

A Primal-Dual Solution to Minimal Test ... 280R, 900 MHz Dual Core machine. VDAT '08 ... useful application of the dual ILP and the conditionally ... – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 17
Provided by: engAu
Category:

less

Transcript and Presenter's Notes

Title: A Primal-Dual Solution to Minimal Test Generation Problem


1
  • A Primal-Dual Solution to Minimal Test Generation
    Problem

Mohammed Ashfaq Shukoor Vishwani D. Agrawal
Auburn University, Department of Electrical and
Computer Engineering Auburn, AL 36849, USA
12th IEEE VLSI Design and Test Symposium, 2008,
Bangalore
January 6, 2015
VDAT '08
1
2
Problem Statement
To find a minimal set of vectors to cover all
stuck-at faults in a combinational circuit
3
A Known Method Test Minimization ILP1
  • 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)
constant akj is 1 only if the fault k is
detected by vector j, else it is 0
Subject to conditions
(2)
Fault number ( k) Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J Vector number ( j ) 1 2 3 4 . . . . . J
1 0 1 1 0 . . . . . 1
2 0 0 1 0 . . . . . 1
3 1 0 0 1 . . . . . 0
4 0 1 0 0 . . . . . 0
. . . . . . . . . . .
. . . . . . . . . . .
K 1 1 0 0 . . . . . 1
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. 380386.
January 6, 2015
3
VDAT '08
4
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.

January 6, 2015
4
VDAT '08
5
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 not independent
f1 and f2 are independent
Independent Fault Set (IFS) 2 An IFS contains
faults that are pair-wise independent.
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. 11001107.
January 6, 2015
5
VDAT '08
6
Independence Graph
  • Independence graph Nodes are faults and and an
    edge between two nodes means that the
    corresponding faults are independent. Example
    c173.
  • An Independent Fault Set (IFS) is a maximum
    clique in the graph.
  • Size of IFS is a lower bound on test set size
    (Akers et al., ITC-87)

3 A. S. Doshi and V. D. Agrawal, Independence
Fault Collapsing, Proc. 9th VLSI Design and Test
Symp., Aug. 2005, pp. 357-364.
January 6, 2015
6
VDAT '08
7
New Definitions
  • 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.
  • 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).
  • 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

January 6, 2015
7
VDAT '08
8
Primal and Dual Problems4
  • 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.
9
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

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.
January 6, 2015
9
VDAT '08
10
  • 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).

January 6, 2015
10
VDAT '08
11
Primal Dual ILP Algorithm for Test Minimization
  1. Generate an initial vector set to detect all (or
    most) faults
  2. Obtain diagnostic matrix (conditional
    independence graph) by fault simulation without
    fault dropping
  3. Solve dual ILP to determine CIFS. Go to 6 if CIFS
    has converged
  4. Augment vector set by additional tests for CIFS
  5. Go to step 2
  6. Solve primal ILP for final compacted vector set

January 6, 2015
11
VDAT '08
12
Example 1 c1355
Problem type Iteration number No. of vectors ATPG CPU s Fault sim. CPU s CIFS size No. of min. vectors ILP CPU s
Dual 1 2 3 114 507 903 0.033 0.085 0.085 0.333 1.517 2.683 85 84 84 0.24 0.97 1.91
Primal 903 84 3.38
SUN Fire 280R, 900 MHz Dual Core machine
January 6, 2015
12
VDAT '08
13
Example 2 c2670
Problem type Iteration number No. of vectors ATPG CPU s Fault sim. CPU s CIFS size No. of min. vectors ILP CPU s
Dual 1 2 3 4 5 6 7 8 9 10 11 12 194 684 1039 1424 1738 2111 2479 2836 3192 3537 3870 4200 2.167 1.258 1.176 1.168 1.136 1.128 1.112 1.086 1.073 1.033 1.048 1.033 3.670 5.690 6.895 8.683 10.467 12.333 14.183 15.933 17.717 19.267 20.983 22.600 102 82 79 78 76 76 74 73 72 70 70 70 1.99 3.22 7.90 3.69 5.89 7.43 7.16 8.45 9.81 10.90 12.02 13.44
Primal 4200 70 316.52
SUN Fire 280R, 900 MHz Dual Core machine
January 6, 2015
13
VDAT '08
14
Comparing primal_LPdual_ILP solution with
LP-alone solution
Circuit Name Lower bound on vectors LP-alone minimization 5 LP-alone minimization 5 LP-alone minimization 5 Primal-dual minimization this paper Primal-dual minimization this paper Primal-dual minimization this paper
Circuit Name Lower bound on vectors Unopt. vectors LP CPU s Minimized vectors Unopt. vectors Total CPU s Minimized vectors
c432 27 608 2.00 36 983 5.52 31
c499 52 379 1.00 52 221 1.35 52
c880 13 1023 31.00 28 1008 227.21 25
c1355 84 755 5.00 84 507 1.95 84
c1908 106 1055 8.00 107 728 2.50 107
c2670 44 959 9.00 84 1039 17.41 79
c3540 78 1971 197.00 105 2042 276.91 95
c5315 37 1079 464.00 72 1117 524.53 67
c6288 6 243 78.00 18 258 218.9 17
c7552 65 2165 151.00 145 2016 71.21 139
SUN Fire 280R, 900 MHz Dual Core machine
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. 492497.
January 6, 2015
14
VDAT '08
15
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.
  • A useful application of the dual ILP and the
    conditionally independent fault set (CIFS), we
    believe, is in fault diagnosis. We hope to
    explore that in the future.

January 6, 2015
15
VDAT '08
16
Thank you
January 6, 2015
16
VDAT '08
Write a Comment
User Comments (0)
About PowerShow.com