Professional Documents
Culture Documents
Minimization
Master’s Defense
Mohammed Ashfaq Shukoor
Dept. of ECE, Auburn University
Diagnosis
Result
Location
or
Fault
Physical Analysis Diagnosis Algorithm
February 4, 2009 Shukoor: MS Thesis Defense 5
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.
Example:
Test Vectors
Fault Syndrome
Faults t1 t2 t3 t4 t5
(Signature)
f1 1 0 1 0 0
f2 0 1 1 1 1
f3 0 1 1 0 1
f4 1 1 1 1 0
f5 1 0 0 1 0 ‘1’ → detected (fail)
f6 1 0 0 0 0
‘0’ → not detected (pass)
f7 1 1 0 0 0
f8 1 0 1 0 1
February 4, 2009 Shukoor: MS Thesis Defense 8
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.
v aj 1
j ij 1 i = 1, 2, . . . , K (2)
Fault Vector number ( j )
number ( k) 1 2 3 4 . . . . .
J
J
v .a
j 1
j kj a pj 1 k = 1, 2, . . . , K-1
1 0 1
p = k+1, . . . , K
1 0 . . . .
(3)
. 1
2 1 0 1 1 . . . . . 2
vj integer [0, 1], j = 1,
3 2, . . . 1, J 2 0 0 . . . . .(4) 0
4 2 1 0 2 . . . . . 3
K is the number of faults in a combinational
. .
circuit
. . . . . . . . .
J is the number of vectors in the unoptimized
. . vector
. . set
. . . . . . .
February 4, 2009
K 0
Shukoor: MS Thesis Defense
5 0 9 . . . . . 2
13
Fault Independence
Independent Faults [1]:
Two faults are independent if and only if they cannot be detected by
the same test vector.
1400000
1200000
Number of Constraints
1000000
800000
600000
400000
200000
0
c17 4 alu c432 c499 c880 c1908
Initial Constraints 231 25,651 125,751 271,953 392,941 1,308,153
Final Constraints 61 3,074 14,162 133,698 48,761 106,448
ALU and Benchmark Circuits
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.
60
Complete
Diagnostic
50 Test Set
Number of Vectors
30
20
10
0
1-step 2-phase 1-step 2-phase 1-step 2-phase 1-step 2-phase
c17 4-b ALU c432 c880
ALU and Benchmark Circuits
[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.
February
ASPDAC,4,2006,
2009pp. 75-80. Shukoor: MS Thesis Defense 23
Conclusion
[1] N. Yogi and V. D. Agrawal, “N-Model Tests for VLSI Circuits,” Proc. of 40th Southwestern
Symp. on System Theory, 2008.
Dynamic Compaction
• Done during test generation.
• Level of compaction is independent of original test set.
• Example: Process every partially-done ATPG vector immediately.
[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.
1 2 3 4 5
11
6 7 8 9 10
[3] A. S. Doshi and V. D. Agrawal, “Independence Fault Collapsing,” Proc. 9th VLSI Design
and Test Symp., Aug. 2005, pp. 357-364.
[4] G. Strang, Linear Algebra and Its Applications, Fort Worth: Harcourt Brace Javanovich
College Publishers, third edition, 1988.
maximize f
k 1
k (4)
fk is a variable assigned to each of the
Subject to, K faults with the following meaning,
K • If fk = 1, then fault k is included in the
a
k 1
kj fk 1 j = 1, 2, fault
. . . , set
J
FaultIf f = 0, thenVector
• k
(5)
fault k is not(included
number j) in
number ( k) 1 2 3 4 . . . . .
the fault J set
fk integer [0, 1], k = 1, 12, . . . , K0 1 1 0 . (6)
. . . . 1
2 0 0 1 0 . . . . . 1
3 1 0 0 1 . . . . . 0
4 0 1 0 0 . . . . . 0
. . . . . . . . . . .
. . . . . . . . . . .
February 4, 2009 K
Shukoor: MS Thesis 1 1
Defense 0 0 . . . . .33 1
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).
1 2 3 4 5
1 2 3 4 5
11
11
6 7 8 9 10
6 7 8 9 10
|CIFS(V1)| = 5 |CIFS(V2)| = 4
Problem Iteration No. of ATPG Fault sim. CIFS No. of min. ILP
type number vectors CPU s CPU s size vectors CPU s
1 114 0.033 0.333 85 0.24
Dual 2 507 0.085 1.517 84 0.97
3 903 0.085 2.683 84 1.91
Primal 903 84 3.38
Problem Iteration No. of ATPG Fault sim. CIFS No. of min. ILP
type number vectors CPU s CPU s size vectors CPU s
Circuit bound
Name on Unopt. LP CPU Minimized Unopt. Total CPU Minimized
vectors vectors s vectors vectors s vectors
ATPG Minimized
Vectors Vector Set
sa1
000 011 x sa0
1100
1 x x
001 101 x sa1 1010
sa1
sa1
011 010 x sa0 0110
2 x x
101 000 x sa1 0011
sa1
Minimized Compacted
Vector Set Vector Set
sa1
xxx 011 x sa0 xxx011
1 x x 011
xxx 101 x sa1 xxx101
sa1 101
sa1
011 xxx x sa0 011xxx
2 x x 011
101 xxx x sa1 101xxx
101
sa1
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.