compaction of diagnostic test set for a full-response dictionary mohammed ashfaq shukoor vishwani d....
Post on 18-Dec-2015
219 views
TRANSCRIPT
Compaction of Diagnostic Test Set for a Full-Response
DictionaryMohammed Ashfaq Shukoor
Vishwani D. Agrawal
18th IEEE North Atlantic Test Workshop, 2009
Auburn University, Department of Electrical and Computer Engineering Auburn, AL 36849, USA
May 14, 2009 NATW 2009 2
Outline Introduction Motivation Fault Diagnostic Table Diagnostic ILP Diagnostic Fault Independence 2-Phase Approach Results Conclusion & Future Work
May 14, 2009 NATW 2009 3
Fault Dictionary Based Diagnosis
• Fault dictionary is a database of simulated test responses for all modeled faults in a fault list.
• Used by some diagnosis algorithms as it is fast; no simulation at time of diagnosis.
• Can be very large, however!• Two most popular forms of dictionaries are:
– Pass-Fail Dictionary
– Full-Response Dictionary
May 14, 2009 NATW 2009 4
Pass-Fail Dictionary• For each vector store the list of all detectable faults.• Total storage requirement: F T bits, where F is number of
faults and T is number of vectors.
Faults
Test Vectors
t1 t2 t3 t4 t5
f1
f2
f3
f4
f5
f6
f7
f8
1
0
0
1
1
1
1
1
0
1
1
1
0
0
1
0
1
1
1
1
0
0
0
1
0
1
0
1
1
0
0
0
0
1
1
0
0
0
0
1
Example:
Fault Syndrome (Signature)
‘1’ → fault detected (fail)
‘0’ → not detected (pass)
May 14, 2009 NATW 2009 5
Full-Response Dictionary
FaultsOutput Responses
t1 t2 t3 t4 t5
f1
f2
f3
f4
f5
f6
f7
f8
1 0
1 1
1 1
0 1
0 0
0 0
0 0
0 0
1 0
1 1
1 1
0 1
1 0
1 0
0 0
1 0
1 0
1 0
1 0
0 0
0 1
0 1
0 1
1 0
1 0
1 1
1 0
0 1
0 0
1 0
1 0
1 0
0 0
1 0
1 1
0 0
0 0
0 0
0 0
1 0
‘1’ → fault detected
‘0’ → not detected
Fault Syndrome
• For each vector, store fault detection data for all outputs.• Total storage requirement: F T O bits, where F is number
of faults, T is number of vectors and O is number of outputs.
Example:
May 14, 2009 NATW 2009 6
Motivation for Diagnostic Test Set Minimization
The amount of data in a full-response dictionary is F T O.
Previous work on dictionary compaction has been concentrated on managing the dictionary organization and encoding.
The data in the full-response dictionary can be optimized by minimizing the vectors in the diagnostic test set.
May 14, 2009 NATW 2009 7
FaultsOutput Responses
T1 T2 T3 T4 T5
F1 1 0 1 0 1 0 1 0 0 0
F2 1 1 1 1 1 0 1 1 0 0
F3 0 1 1 1 1 0 0 0 0 0
F4 0 1 0 1 0 0 0 1 0 0
F5 0 0 0 0 0 1 0 0 1 1
F6 0 0 0 0 0 1 0 0 0 0
F7 1 0 0 0 0 1 0 0 0 1
F8 0 0 1 0 1 0 1 0 0 0
FaultsOutput Responses
T1 T2 T3 T4 T5
1
2
2
3
0
0
0
1
1
1
1
0
2
2
2
1
F1
F2
F3
F4
F5
F6
F7
F8
0
0
0
0
1
0
2
0
1
2
0
3
0
0
0
1
Fault Diagnostic Table We compact the full-response dictionary into a diagnostic table, which contains information on detection and distinguishability of faults.
Example: Consider a circuit with 2 outputs, having 8 faults that are detected and diagnosed by 5 test vectors
Full-response Dictionary Fault Diagnostic Table
1
2
3
0
3
0
1
0
May 14, 2009 NATW 2009 8
Diagnostic ILP
Subject to constraints:
J
jjv
1Objective: minimize
integer [0, 1], j = 1, 2, . . . , J vj
i = 1, 2, . . . , K (2)
(4)
(1)
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
K is the number of faults in a combinational circuit
J is the number of vectors in the unoptimized vector set
coefficient aij is >= 1 only if the fault i is detected by vector j, else it is 0
1.1
J
jpjkjj aav k = 1, 2, . . . , K-1 p = k+1, . . . , K (3)
11
J
jijjav
Faultnumber ( k)
Vector number ( j )1 2 3 4 . . . . . J
1 0 1 1 0 . . . . . 1
2 1 0 1 1 . . . . . 2
3 1 2 0 0 . . . . . 0
4 2 1 0 2 . . . . . 3
. . . . . . . . . . .
. . . . . . . . . . .
K 0 5 0 9 . . . . . 2
May 14, 2009 NATW 2009 9
Independent Faults [1]:Two faults are independent if and only if they cannot be detected
by the same test vector.
T(f1) T(f2)
f1 and f2 are independent f1 and f2 are not independent
T(f1) T(f2)
[1] 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.
Generalized Fault Independence (Vector Specific, Multiple Outputs) – Present Work:
A pair of faults detectable by a vector set V is said to be independent with respect to vector set V, if there is no single vector that detects both the faults and produces an identical output response.
Fault Independence
May 14, 2009 NATW 2009 10
Fault detection Table
Fault diagnostic Table
(a) Independence Relation
(b) Generalized Independence Relation
Example
May 14, 2009 NATW 2009 11
0
200000
400000
600000
800000
1000000
1200000
1400000
ALU and Benchmark Circuits
Nu
mb
er o
f C
on
stra
ints
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
c17 4 alu c432 c499 c880 c1908
Effect of Generalized Independence Relation on the Constraint Set Sizes
May 14, 2009 NATW 2009 12
Phase-1: Use existing ILP minimization techniques to obtain a minimal detection test set from the given unoptimized test set. Find the faults not diagnosed by the minimized detection test set.
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.
Minimal detection test set of Phase-1
Minimal set of diagnostic vectors
from Phase-2
Complete diagnostic
test set
2-Phase Method
May 14, 2009 NATW 2009 13
Results• SUN Fire 280R, 900 MHz Dual Core machine• ATPG – ATALANTA• Fault Simulator – HOPE• AMPL Package with CPLEX solver for formulating and
solving Linear Programs
May 14, 2009 NATW 2009 14
CircuitNo. of Faults
Phase-1 Phase-2Complete diagnostic
test set
Original unoptim. vectors
Minimal detection
tests
No. of undiag. faults
No. ofunoptim.vectors
No. ofconstraints
Minimized additional
vectors
4b ALU 227 270 12 43 258 30 6 18
c17 22 32 4 6 28 3 2 6
c432 520 2036 30 153 2006 101 21 51
c499 750 705 52 28 653 10 2 54
c880 942 1384 24 172 1358 41 7 33
c1355 1566 903 84 1172 1131 12 2 86
c1908 1870 1479 107 543 819 186 21 127
c2670 2630 4200 70 833 4058 383 51 121
c3540 3291 3969 95 761 3874 146 27 122
c5315 5291 1295 63 1185 1232 405 42 105
c6288 7710 361 16 2416 345 534 12 28
c7552 7419 4924 122 1966 4802 196 31 153
2-Phase Method
May 14, 2009 NATW 2009 15
2-Phase vs. Previous Work
Circuit
Pass-Fail dictionary compaction [1] 2-Phase Approach [This work]
Fault Coverage
%
Minimized Vectors
Undisting. Fault Pairs
CPU
s
Fault Coverage
%
Minimized Vectors
Undisting. Fault Pairs
CPU
s
c432 97.52 68 93 0.1 98.66 54 15 0.94
c499 - - - - 98.95 54 12 0.39
c880 97.52 63 104 0.2 97.56 42 64 2.56
c1355 98.57 88 878 0.8 98.60 80 766 0.34
c1908 94.12 139 1208 2.1 95.69 101 399 0.49
c2670 84.40 79 1838 2.8 84.24 69 449 8.45
c3540 94.49 205 1585 10.6 94.52 135 590 17.26
c5315 98.83 188 1579 15.4 98.62 123 472 25.03
c6288 99.56 37 4491 1659 99.56 17 1013 337.89
c7552 91.97 198 4438 33.8 92.32 128 1289 18.57
[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. ASPDAC, 2006, pp. 75-80.
May 14, 2009 NATW 2009 16
Conclusion
• Compaction of a diagnostic test set is carried out without any loss in the diagnostic resolution of a full-response dictionary.
• We have formulated the diagnostic ILP that provides an exact minimization of a diagnostic test set.
• The newly defined generalized independence relation between pairs of faults reduces the number of fault-pairs that need to be distinguished; ILP constraints are significantly reduced.
• The 2-phase approach has polynomial time complexity and is effective in producing very compact diagnostic test sets.
May 14, 2009 NATW 2009 17
Thank you …