Download - Substantial Fault Pairs at-A-Time (SFPAT): An Automatic Diagnostic Pattern Generation Method
Jing Ye1,2, Xiaolin Zhang1,2, Yu Hu1, and Xiaowei Li1
1Key Laboratory of Computer System and ArchitectureInstitute of Computing Technology
Chinese Academy of Sciences2Graduate University of Chinese Academy of Sciences
Substantial Fault Pairs at-A-Time (SFPAT):An Automatic Diagnostic Pattern
Generation Method
2
Motivation
Fault Diagnosis Quality
Efficiency ofDiagnosis Method
Distinguishability of Used PatternsDistinguish as ManyFault pairs as possibleFew More PatternsThan Test Patterns
3
Outline Key Observation
• Distinguishability of 1-detect compressed Test Patterns• Distinguishability of N-detect Test Patterns
Related Work Proposed Diagnostic Pattern Generation Method
• Diagnostic Pattern Generation Method Overview• Circuit Transformation and Fault List Creation• Diagnostic Pattern Generation Flow
Experimental Result• Experimental Setting
4
Distinguishability of 1-Detect Compressed Test Patterns Experiment Setting
• ISCAS’89 benchmark circuits• 1-detect compressed test patterns (TetraMax Ver.A-2007.12)
Fault Pairs Classification
two faults in the fault pair
are in the same FFR.
FP1 typetwo faults in the fault pair are in different FFRs but
with the same observation points.
FP2 typetwo faults in the fault pair are in different FFRs but with at least one different
observation points.
FP3 type
abcd
e
fg
h
i
j
m
n p
q
Fanout Free Region (FFR)
Key Observation
q p
q p
q p
p
5
Percentage of FP3 type fault pairs among all the fault pairs Percentage of indistinguishable FP3 type fault pairs among all the indistinguishable fault pairs
Percentage of FP2 type fault pairs among all the fault pairs Percentage of indistinguishable FP2 type fault pairs among all the indistinguishable fault pairs
0%10%
20%
30%
40%
50%
60%
70%80%
90%100%
Percentage of FP1 type fault pairs among all the fault pairs Percentage of indistinguishable FP1 type fault pairs among all the indistinguishable fault pairs
AVERAGE
Percentage of FP3 type fault pairs among all the fault pairs Percentage of indistinguishable FP3 type fault pairs among all the indistinguishable fault pairs
Percentage of FP2 type fault pairs among all the fault pairs Percentage of indistinguishable FP2 type fault pairs among all the indistinguishable fault pairs
0%
10%
20%
30%
40%50%
60%
70%
80%
90%
100%
Percentage of FP1 type fault pairs among all the fault pairs Percentage of indistinguishable FP1 type fault pairs among all the indistinguishable fault pairs
Percentage of FP3 type fault pairs among all the fault pairs Percentage of indistinguishable FP3 type fault pairs among all the indistinguishable fault pairs
Percentage of FP2 type fault pairs among all the fault pairs Percentage of indistinguishable FP2 type fault pairs among all the indistinguishable fault pairs
0%10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Percentage of FP1 type fault pairs among all the fault pairs Percentage of indistinguishable FP1 type fault pairs among all the indistinguishable fault pairs
Percentage of FP3 type fault pairs among all the fault pairs Percentage of indistinguishable FP3 type fault pairs among all the indistinguishable fault pairs
Percentage of FP2 type fault pairs among all the fault pairs Percentage of indistinguishable FP2 type fault pairs among all the indistinguishable fault pairs
0%10%
20%30%
40%50%60%
70%
80%
90%100%
Percentage of FP1 type fault pairs among all the fault pairs Percentage of indistinguishable FP1 type fault pairs among all the indistinguishable fault pairs
Percentage of FP3 type fault pairs among all the fault pairs Percentage of indistinguishable FP3 type fault pairs among all the indistinguishable fault pairs
Percentage of FP2 type fault pairs among all the fault pairs Percentage of indistinguishable FP2 type fault pairs among all the indistinguishable fault pairs
0%10%20%30%40%50%60%70%80%90%
100%
Percentage of FP1 type fault pairs among all the fault pairs Percentage of indistinguishable FP1 type fault pairs among all the indistinguishable fault pairs
FP3 type
FP2 type
FP1 type
Distinguishability of 1-Detect Compressed Test PatternsKey Observation
Percentage of FPi-type fault pairs among all the fault pairs
Percentage of indistinguishable FPi-type fault pairs among all
the indistinguishable fault pairs
FP3 type
FP2 type
FP1 type
6
Percentage of FP3 type fault pairs among all the fault pairs Percentage of indistinguishable FP3 type fault pairs among all the indistinguishable fault pairs
Percentage of FP2 type fault pairs among all the fault pairs Percentage of indistinguishable FP2 type fault pairs among all the indistinguishable fault pairs
0%10%
20%30%
40%50%60%
70%80%
90%100%
Percentage of FP1 type fault pairs among all the fault pairs Percentage of indistinguishable FP1 type fault pairs among all the indistinguishable fault pairs
AVERAGEabcd
e
fg
h
i
j
m
n p
q
Distinguishability of 1-Detect Compressed Test PatternsKey Observation
FP1 type fault pairs• Two faults in the fault pair are in the same FFR
FP2 type fault pairs• Two faults in the fault pair are in different FFRs
but with the same observation points FP3 type fault pairs
• Two faults in the fault pair are in different FFRs but with at least one different observation point
FP1 > FP2 > FP3‘>’ : harder to be distinguished
7
Percentage of FP3 type fault pairs among all the fault pairs Percentage of indistinguishable FP3 type fault pairs among all the indistinguishable fault pairs
Percentage of FP2 type fault pairs among all the fault pairs Percentage of indistinguishable FP2 type fault pairs among all the indistinguishable fault pairs
0%10%
20%30%
40%50%60%
70%80%
90%100%
Percentage of FP1 type fault pairs among all the fault pairs Percentage of indistinguishable FP1 type fault pairs among all the indistinguishable fault pairs
AVERAGEabcd
e
fg
h
i
j
m
n p
q
Distinguishability of 1-Detect Compressed Test PatternsKey Observation
FP1 type fault pairs• Two faults in the fault pair are in the same FFR
FP2 type fault pairs• Two faults in the fault pair are in different FFRs
but with the same observation points FP3 type fault pairs
• Two faults in the fault pair are in different FFRs but with at least one different observation point
FP1 > FP2 > FP3‘>’ : harder to be distinguished
+
8
N-detect test pattern• A fault may be detected for multiple times in different ways.
Distinguishability of N-Detect Test PatternsKey Observation
0
5
10
15
20
25
30
35
40
45
50
55
s208 s1196 s1423 s1488 s1494 s5378
Num. of indistinguished fault pairs
1-detectcompressed
1-detect 2-detect 3-detect 4-detect
FP1 type fault pairspat
Flt.1 Flt.2
9
Related Work Test elimination process of modifying test patterns
• [I. Pomeranz, S. M. Reddy TCAD2000]• [I. Pomeranz, S. M. Reddy ETS2007]
Exclusive test pattern generation• [V. D. Agrawal, D. H. Baik, et al. ICVD2003]
Pattern generation for fault-tuple modeled faults• [N. K. Bhatti, R. D. Blanton ITC2006]
Integer linear program formulation• [M. A. Shukoor, V. D. Agrawal ETS2009]
Pattern distinguishability and N-detect patterns• [Z. Wang, M. Marek-Sadowska, et al. ICCD2003]
Pattern reordering algorithm for truncated fail data• [C. Gang, S. M. Reddy, et al. DAC2006]
10
Diagnostic Pattern Generation Method OverviewProposed Diagnostic Pattern Generation Method
+ =>
Transferred circuit netlist and fault list=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist Target fault list
END
pat.A pat.B pat.C
Flt.1 flt.2 flt.3 flt.4 flt.5
Consider Substantial Fault Pairs at-A-Time
11
Diagnostic Pattern Generation Method OverviewProposed Diagnostic Pattern Generation Method
+ =>
Transferred circuit netlist and fault list=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist Target fault list
END
pat.A pat.B pat.C
Flt.1 flt.2 flt.3 flt.4 flt.5
Consider Substantial Fault Pairs at-A-Time
12
Diagnostic Pattern Generation Method OverviewProposed Diagnostic Pattern Generation Method
+ =>
Transferred circuit netlist and fault list=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist Target fault list
END
pat.A pat.B pat.C
Flt.1 flt.2 flt.3 flt.4 flt.5
Consider Substantial Fault Pairs at-A-Time
13
Diagnostic Pattern Generation Method OverviewProposed Diagnostic Pattern Generation Method
+ =>
Transferred circuit netlist and fault list=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist Target fault list
END
Consider Substantial Fault Pairs at-A-Time
Reduce noiseLower power
Compress patterns
Cont.
14
Proposed Diagnostic Pattern Generation Method
Circuit Transformation and Fault List Creation Miter circuit
• Miter circuit is a circuit consisting of two modified duplication D1 and D2 of the original circuit.
• Different connection of D1 and D2 is proposed in previous works. S-fault
• The pattern which can detect a S-fault in the transformed circuit can distinguish its related fault pair in the original circuit.
Example• Stuck-at v fault at l: l/v.• We will work on other fault models in the future.• Distinguish the fault pair (a/1,c/1) and the fault pair (b/1,d/1).
abcd
egh
ij
m
nf
15
abcd
egh
ij
m
nf
Proposed Diagnostic Pattern Generation Method
Circuit Transformation and Fault List Creation
abcd
egh
ij
m
nf
abcd
e
D1
gh
ij
m
n
abcd
f
e
D2
gh
ij
m
nf
Target fault pair• (a/1,c/1)• (b/1,d/1)
SA1-module• ‘out’ = ‘sel’ | ‘in’
•
MU
XS0S1
1in
sel
out
SA1
16
Proposed Diagnostic Pattern Generation Method
Circuit Transformation and Fault List Creation
abcd
e
D1
gh
ij
m
n
abcd
ABCD
f
e
D2
gh
ij
m
nf
Target fault pair• (a/1,c/1)• (b/1,d/1)
SA1-module• ‘out’ = ‘sel’ | ‘in’
•
MU
XS0S1
1in
sel
out
SA1
17
abcd
e
D1
gh
ij
m
n
abcd
ABCD M
N
f
e
D2
gh
ij
m
nf
Proposed Diagnostic Pattern Generation Method
Circuit Transformation and Fault List Creation
SA1
SA1
SA1
SA1
abcd
e
D1
gh
ij
m
n
abcd
ABCD M
N
SA1
SA1
SA1
SA1
f
e
D2
gh
ij
m
nf
Target fault pair• (a/1,c/1)• (b/1,d/1)
SA1-module• ‘out’ = ‘sel’ | ‘in’
•
MU
XS0S1
1in
sel
out
SA1
18
abcd
e
D1
gh
ij
m
n
abcd
ABCD M
N
SA1
SA1
SA1
SA1
sel1 sel2
f
e
D2
gh
ij
m
nf
Proposed Diagnostic Pattern Generation Method
Circuit Transformation and Fault List Creation
0 1 S-fault• sel1/1 – (a/1,c/1)• sel2/1 – (b/1,d/1)
Target fault pair• (a/1,c/1)• (b/1,d/1)
SA1-module• ‘out’ = ‘sel’ | ‘in’
•
MU
XS0S1
1in
sel
out
SA1
19
abcd
e
D1
gh
ij
m
n
abcd
ABCD M
N
SA1
SA1
SA1
SA1
sel1 sel2
f
e
D2
gh
ij
m
nf
Proposed Diagnostic Pattern Generation Method
Circuit Transformation and Fault List Creation
0 1
FAULT-FREE
FAULT-FREE
0
0
S-fault• sel1/1 – (a/1,c/1)• sel2/1 – (b/1,d/1)
Target fault pair• (a/1,c/1)• (b/1,d/1)
SA1-module• ‘out’ = ‘sel’ | ‘in’
•
MU
XS0S1
1in
sel
out
SA1
20
abcd
e
D1
gh
ij
m
n
abcd
ABCD M
N
SA1
SA1
SA1
SA1
sel1 sel2
f
e
D2
gh
ij
m
nf
Proposed Diagnostic Pattern Generation Method
Circuit Transformation and Fault List Creation
0 1
INJECT a/1
INJECT c/11
S-fault• sel1/1 – (a/1,c/1)• sel2/1 – (b/1,d/1)
Target fault pair• (a/1,c/1)• (b/1,d/1)
SA1-module• ‘out’ = ‘sel’ | ‘in’
•
MU
XS0S1
1in
sel
out
SA1
21
abcd
e
D1
gh
ij
m
n
abcd
ABCD M
N
SA1
SA1
SA1
SA1
sel1 sel2
f
e
D2
gh
ij
m
nf
Proposed Diagnostic Pattern Generation Method
Circuit Transformation and Fault List Creation
Fault in original circuit• Constrain the value of sel to 0
S-fault• sel1/1 – (a/1,c/1)• sel2/1 – (b/1,d/1)
Target fault pair• (a/1,c/1)• (b/1,d/1)
SA1-module• ‘out’ = ‘sel’ | ‘in’
•
MU
XS0S1
1in
sel
out
SA1
INJECT h/1
FAULT-FREE
0
0
22
Some of faults arecertain distinguished if they are detected.(1) All the faults in original circuits.(2) S-faults of FP1 type fault pairs which may not be distinguished when they are detected.
Proposed Diagnostic Pattern Generation Method
Diagnostic Pattern Generation Flow
+ =>=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist
END
FP1 type fault pairsOriginal circuit netlist + =>
Transferred circuit netlist and fault list=>=>
Indistinguished fault pairs
Transferred circuit netlist and S-fault list
ATPG tool
+ =>
Transferred circuit netlist and fault list=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist Target fault list
END
FP1 > FP2 > FP3
23
+ =>=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist
END
FP1 type fault pairsOriginal circuit netlist + =>
Transferred circuit netlist and fault list=>=>
Indistinguished fault pairs
Transferred circuit netlist and S-fault list
ATPG tool
Some of faults arecertain distinguished if they are detected.(1) All the faults in original circuits.(2) S-faults of FP1 type fault pairs which may not be distinguished when they are detected.
Proposed Diagnostic Pattern Generation Method
Diagnostic Pattern Generation Flow
+ =>=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist
END
FP1 type fault pairsOriginal circuit netlist + =>
Transferred circuit netlist and fault list=>=>
Indistinguished fault pairs
Transferred circuit netlist and S-fault list
ATPG tool
Is a fault pair distinguished if both faults are detected?(a/1,b/1) (a/1,e/0) (a/1,c/1) (a/1,d/1) (a/1,f/0) (a/1,g/1) (a/1 g/0)
Yes Yes No No Yes Yes Yes(b/1,e/0) (b/1,c/1) (b/1,d/1) (b/1,f/0) (b/1,g/1) (b/1,g/0) (e/0,c/1)
Yes No No Yes Yes Yes Yes(e/0,d/1) (e/0,f/0) (e/0,g/1) (e/0,g/0) (c/1,d/1) (c/1,f/0) (c/1,g/1)
Yes Yes Yes Yes Yes Yes Yes(c/1,g/0) (d/1,f/0) (d/1,g/1) (d/1,g/0) (f/0, g/1) (f/0,g/0) (g/1,g/0)
Yes Yes Yes Yes Yes Yes Yes
abcd
egh
ij
m
nf
24
Some of faults arecertain distinguished if they are detected.(1) All the faults in original circuits.(2) S-faults of FP1 type fault pairs which may not be distinguished when they are detected.
Proposed Diagnostic Pattern Generation Method
Diagnostic Pattern Generation Flow
+ =>=>
ATPG tool=>
More indistinguished fault pairs?Yes!
No!
Original circuit netlist
END
FP1 type fault pairsOriginal circuit netlist + =>
Transferred circuit netlist and fault list=>=>
Indistinguished fault pairs
Transferred circuit netlist and S-fault list
ATPG tool
(1) No patterns can distinguish a target fault pair.(2) ATPG tool cannot achieve 100% S-fault coverage.
BREAKSAT tool
25
Experimental SettingExperimental Result
Benchmark circuit• ISCAS’89• ITC’99
Test Pattern• TetraMax Ver.A-2007.12• 1-detect compressed test patterns
26
Experimental DataExperimental Result
Circuit s5378 s9234 s13207 s15850 s35932 s38417 s38584
Stuck-at faults 4563 6473 9664 11336 35110 31015 34797
Test patterns 123 156 264 128 24 111 144
Indistinguished fault pairs 593 1621 2276 2971 14438 3850 3242
FP1 typeS-faults 18006 24370 42099 26584 18924 34057 67871
Diagnostic patterns 124 164 273 146 28 118 155
Remaining indistinguished
S-faults 578 1552 2062 2909 13123 3673 2808
Diagnostic patterns 20 71 5 26 3 19 13
Total diagnostic patterns 144 235 278 172 31 137 168Fault pairs which cannot be
distinguished by any patterns 523 1229 2043 2801 12893 3372 2696
The number of S-faults is mainly determined by the circuit structure
The number of S-faults becomes much smaller
27
Comparison with Previous WorkExperimental Result
s5378 s9234 s13207 s15850 s359320
50
100
150
200
250
300
350
Number of diagnostic patterns in [12] Number of diagnostic patterns in this work
Number Percentage
Number of test patterns in [12] Number of test patterns in this work
30%
40%
50%
60%
70%
80%
90%
100%
Percentage of distinguished fault pairs under diagnostic patterns among indistinguishable fault pairs under test patterns [12] this work
[12] I. Pomeranz and S. M. Reddy, "Diagnostic Test Generation Based on Subsets of Faults," Proc. of European Test Symposium (ETS), pp. 151-158, 2007.
Comparison with [12]• ISCAS’89: almost the same for the small circuits• ITC’99: different version of benchmark circuits
28
Comparison with Previous WorkExperimental Result
[12] I. Pomeranz and S. M. Reddy, "Diagnostic Test Generation Based on Subsets of Faults," Proc. of European Test Symposium (ETS), pp. 151-158, 2007.
Comparison with [12]
s5378 s9234 s13207 s15850 s359320
50
100
150
200
250
300
350
Number of diagnostic patterns in [12] Number of diagnostic patterns in this work
Number Percentage
Number of test patterns in [12] Number of test patterns in this work
30%
40%
50%
60%
70%
80%
90%
100%
Percentage of distinguished fault pairs under diagnostic patterns among indistinguishable fault pairs under test patterns [12] this work
s5378 s9234 s13207 s15850 s359320
50
100
150
200
250
300
350
Number of diagnostic patterns in [12] Number of diagnostic patterns in this work
Number Percentage
Number of test patterns in [12] Number of test patterns in this work
30%
40%
50%
60%
70%
80%
90%
100%
Percentage of distinguished fault pairs under diagnostic patterns among indistinguishable fault pairs under test patterns [12] this work
s5378 s9234 s13207 s15850 s359320
50
100
150
200
250
300
350
Number of diagnostic patterns in [12] Number of diagnostic patterns in this work
Number Percentage
Number of test patterns in [12] Number of test patterns in this work
30%
40%
50%
60%
70%
80%
90%
100%
Percentage of distinguished fault pairs under diagnostic patterns among indistinguishable fault pairs under test patterns [12] this work
s5378 s9234 s13207 s15850 s359320
50
100
150
200
250
300
350
Number of diagnostic patterns in [12] Number of diagnostic patterns in this work
Number Percentage
Number of test patterns in [12] Number of test patterns in this work
30%
40%
50%
60%
70%
80%
90%
100%
Percentage of distinguished fault pairs under diagnostic patterns among indistinguishable fault pairs under test patterns [12] this work
s5378 s9234 s13207 s15850 s359320
50
100
150
200
250
300
350
Number of diagnostic patterns in [12] Number of diagnostic patterns in this work
Number Percentage
Number of test patterns in [12] Number of test patterns in this work
30%
40%
50%
60%
70%
80%
90%
100%
Percentage of distinguished fault pairs under diagnostic patterns among indistinguishable fault pairs under test patterns [12] this work
Number of diagnostic patterns in [12]
Number of test patterns in [12]
About 90% of distinguished fault pairs under diagnostic patterns
among indistinguished fault pairsunder test patterns in [12]
Number of diagnosticpatterns in this work
Number of testpatterns in this work
100% in this work
29
ConclusionDistinguishability of patterns are important !
Distinguishability of 1-detect compressed test patterns• FP1 > FP2 > FP3
Miter-circuit and S-fault• The pattern which can detect a S-fault in the miter-circuit can
distinguish its related fault pair in the original circuit.• There is no need to modify the ATPG tool, and the functions of
ATPG tool can also be applied.
Thank You for Your Attention !
Any Questions?