Partial Scan Design With Guaranteed Combinational ATPG Vishwani D. Agrawal

advertisement
Partial Scan Design With
Guaranteed Combinational ATPG
Vishwani D. Agrawal
Agere Systems
Processor Architectures and Compilers Research
Murray Hill, NJ 07974
va@agere.com
Yong C. Kim and Kewal K. Saluja
University of Wisconsin, Dept. of ECE
Madison, WI 53706
kimy@ece.wisc.edu and saluja@engr.wisc.edu
October 5, 2001
Oct. 5, 2001
Agrawal, Kim and Saluja
1
Problem Statement


Partial scan design has less DFT overhead, but is
less desirable than full-scan because it requires
sequential ATPG.
Problem: To devise a combinational ATPG method
for general acyclic (cycle-free) circuits; cyclic
structures can be made acyclic by partial scan.
FF1
FF2
A cyclic circuit
Oct. 5, 2001
FF2
Acyclic partial scan circuit
Agrawal, Kim and Saluja
2
Overview
1. Combinational ATPG for general acyclic circuits




Background: Previous results and relevant ideas
Balanced model for combinational ATPG
Single-fault model for multiple-faults
Results
2. Special subclasses of acyclic circuits
 Background: Definitions and ATPG properties
 Examples
 Results
3. Conclusion
Oct. 5, 2001
Agrawal, Kim and Saluja
3
Previous Work: ATPG Models for Acyclic
Sequential Circuits
 Iterative array model (Putzolu and Roth, IEEETC,
1971)
 Duplicated fan-in logic model (Miczo, 1986)
 Duplicated logic model (Kunzmann and Wunderlich,
JETTA, 1990)
 Balanced structure (Gupta, et al., IEEETC, 1990)
 Pseudo-combinational model (Min and Rogers,
JETTA, 1992)
Oct. 5, 2001
Agrawal, Kim and Saluja
4
Two Relevant Results
 Theorem (Bushnell and Agrawal, 2000):
A test for a testable non-flip-flop fault in a
cycle-free (acyclic) circuit can always be found
with at most dseq+1 time-frames.
 Balanced circuit (Gupta, et al., IEEETC, 1990):
An acyclic circuit is called balanced if all paths
between any pair of nodes have the same
sequential depth. A combinational ATPG
procedure guarantees a test for any testable
fault in a balanced circuit.
Oct. 5, 2001
Agrawal, Kim and Saluja
5
An Example
Unbalanced nodes
a
s-a-0
s-a-0
b
FF
dseq =
1
Combinational
vector
Balanced model
a1
0
b1
X
s-a-0
0
Single fault
1 s-a-0
1/0
Multiple fault
a0
b0
1
s-a-0
1/0
1
1/0
FF replaced
by buffer
Test sequence: 11, 0X
Oct. 5, 2001
Agrawal, Kim and Saluja
6
A Combinational ATPG System for
General Acyclic Sequential Circuits
Generate a balanced model, map faults
Generate a test vector for a target fault using
combinational ATPG
Simulate the comb. model to drop detected
faults
More faults to be
detected?
No
Yes
Obtain a test sequence from comb. vectors
Oct. 5, 2001
Agrawal, Kim and Saluja
7
A Single-Fault Model for a Multiple-Fault
Y. C. Kim, V. D. Agrawal, and K. K. Saluja, “Multiple Faults:
Modeling, Simulation and Test,” 15th International Conf. on
VLSI Design, January 2002.
Multiple
stuck-at
fault:stuck-at
lines a fault:
and boutput
stuck-at
1 andgate
line
An
equivalent
single
of AND
c stuck-at
stuck-at
1 0.
s-a-1
s-a-1
aa
s-a-1
bb
cc
Oct. 5, 2001
s-a-0
Agrawal, Kim and Saluja
A
A
B
B
C
C
8
Proof of Correctness
 Circuit
equivalence:
Fault-free
output
functions
 
Fault
Fault
equivalence:
equivalence:
Faulty
Faulty
output
output
functions
functions
A = a + a ·b ·!c = a
AsfA=mf =
a +1 1 = 1
B = b + a ·b ·!c = b
BsfB=mf b=+11 = 1
C = c ·!(a ·b ·!c) = c · (!a + !b + c) =c ·(!a + !b) + c = c
CsfC=mf c=· 00 = 0
s-a-1
s-a-1
s-a-1
a
a
s-a-1
b
b
c
c
Oct. 5, 2001
s-a-0
Agrawal, Kim and Saluja
A
A
A
B
B
B
C
C
C
9
Acyclic Circuit Comb. ATPG Example
Step
Apply
DAS
to
PI
Amodeling.
and
B.
StepStep
1:
Levelization,
assign
weights
POs.
An
Example
Step
example
2:2:
3:
Balance
Replace
of Acyclic
multiple
with
FFs
circuit
respect
fault
with
with
buffers.
to to
PO
4to
FFs
Y.X.
Balance
with
respect
PO
A0
B0
A1
B1
1
0
A00
B00
s-a-1
s-a-1 1
11
1
1
Oct. 5, 2001
DQ
Q
D
FF2
FF2
FF2
FF211
1
55
FF3
FF3
DQ
Q
D
33
22
77
FF3
FF3
66
B222
B
C222
C
D111
D
s-a-1
s-a-1
s-a-1
s-a-1
A11
A
A
B11
1
0
D
Q
FF2
FF2
FF2 00
0
44
DQ
Q
D
FF4
FF4
X W(X)=2
X
X:
W(X) = 2
Y W(Y)=2
Y:
Y
W(Y) = 2
FF4
FF4
FF1
FF1
DQ
Q
D
FF1
FF1
Agrawal, Kim and Saluja
10
ISCAS ’89 Benchmark Circuit: S5378

Circuit statistics)



Number of gates: 2,781
Number of FFs:
179
Number of faults: 4,603
S5378
Scan-FFs
Overhead
Fault Eff.
ATPG Time
Original Full-scan
0
0%
70.9 %
5,533 s+
179
15.7 %
100.0 %
1s*
ATPG: Partial-scan
Sequential Combinational
30
30
2.6 %
2.6 %
99.7 %
99.7 %
1,268 s+
23 s*
ATPG run on Sun Ultra Sparc 10 workstation
+Gentest (seq. ATPG)
*TetraMax (comb. ATPG)
Oct. 5, 2001
Agrawal, Kim and Saluja
11
Acyclic Partial-Scan ISCAS’89 Circuits:
Test Generation Results
Circuit Sequential ATPG* Combinational ATPG
Name FC
FE TGT(s) FC
FE
TGT(s)
s5378
s9234
s13207
s15850
s35932
s38417
93.69 99.71 1268.0 93.69 99.71
93.16 99.94 426.0 93.16 99.94
97.13 99.97 1008.0 97.13 99.97
96.65 99.97 856.0 96.66 99.97
89.80 100.00 569.0 89.80 100.00
99.25 99.54 861.0 99.25 99.55
23.3
85.7
55.0
140.8
79.4
98.2
FC: cov. (%), FC: efficiency (%), TGT: CPU s Sun Ultra 10
*Gentest for seq. and TetraMAX for comb. ATPG
(Hitec produced equivalent FC, FE and TGT within 10% of Gentest)
Oct. 5, 2001
Agrawal, Kim and Saluja
12
Acyclic Partial-Scan ISCAS’89 Circuits:
Circuit Statistics
Circuit Total Scan Scan FFs Max Model Size
name FFs FFs
(%)
depth PI Gate
s5378
179
30
16.8
19 3.21 6.50
s9234
228 152
66.7
4 1.40 2.14
s13207
669 310
46.3
22 2.08 3.32
s15850
597 441
73.9
29 3.27 6.98
s35932 1728 306
17.7
34 2.33 3.80
s38417 1638 1080
69.9
9 1.13 1.64
s38584 1425 1115
78.2
35 2.32 4.13
Oct. 5, 2001
Agrawal, Kim and Saluja
MF
%
2.1
4.2
1.5
1.4
1.4
1.1
0.3
13
Background: Subclasses of Acyclic Circuits

Balanced (B) circuit: All paths between any pair of
nodes (PIs, POs, gates or FFs) have the same
sequential depth (Gupta, et al., IEEETC, 1990)

Strongly balanced (SB) circuit: A balanced circuit
having the same depth from a PO to all reachable PIs
(Balakrishnan and Chakradhar, VLSI Design’96)

Internally balanced (IB) circuit: Becomes
balanced by splitting of PI fanouts (Fujiwara, et al.,
IEEETC, 2000)
Sequential
Acyclic
IB
Oct. 5, 2001
B
SB
Combinational
Agrawal, Kim and Saluja
14
Examples of Acyclic Subclasses
An
AAStrongly
Internally
A Balanced
An example
Balanced
Balanced
structure,
Acyclic
structure,
structure,
requires
circuit
requires
requires
with
2 scan
FFs
1scan
FFs
scan
FFs
FF
Combinational
(Full-scan)
requires
4 3scan
FFs
FF2out
FF2out
FF3out
FF3out
A
A
FF2in
FF2in
FF3in
FF3in
B
B
C
C
FF4in
D
D
FF1in
Oct. 5, 2001
D
DQ
Q
11
55
DQ
FF2
FF2
FF3
66
33
22
77
44
D
DQ
Q
X
X
FF4out
Y
Y
FF4
FF4
FF1out
D
DQ
Q
FF1
FF1
Agrawal, Kim and Saluja
15
Number of Scan FFs for Acyclic Subclasses
Circuit
Name
s5378
s9234
s13207
s15850
s35932
s38417
s38584
Total
Average
No scan
Scan FFs
FFs
Acyclic
IB
B
SB Comb.
179
30
91
96
163
179
228
152
201
209
220
228
669
310
420
451
542
669
597
438
529
534
563
597
1728
306 1728 1728 1728
1728
1636
1115 1224 1232 1476
1636
1452
1115 1431 1431 1447
1452
6729
3618 5809 5866 6336
6729
0% 53.4% 78.3% 78.9% 87.2% 100.0%
IB: Internally balanced,
Oct. 5, 2001
B: Balanced,
Agrawal, Kim and Saluja
SB: Strongly balanced
16
Comb. ATPG Coverages for Acyclic Subclasses
FC
Acyclic IB
B
SB Comb.
s5378
93.69 98.77 98.78 98.81 98.87
s9234
93.16 93.47 93.47 93.95 93.95
s13207
97.13 98.43 98.46 98.87 98.87
s15850
96.66 96.68 96.68 97.51 97.51
s35932
89.80 89.81 89.81 89.81 89.82
s38417
99.25 99.46 99.47 99.53 99.68
s38584
95.46 95.52 95.52 95.54 95.57
Average
96.98 97.43 97.43 97.55 97.56
ATPG: TetraMAX
Gentest and Hitec produced similar coverages
Oct. 5, 2001
Agrawal, Kim and Saluja
17
ATPG CPU Seconds for Acyclic Subclasses
Circuit Acyclic IB
B
SB Comb.
s5378
23.3
0.6
0.6
0.4
0.2
s9234
85.7 66.7 64.6 64.6
64.6
s13207
55.0 21.8 20.0 26.5
26.5
s15850
140.8 115.6 113.7 113.2 112.3
s35932
79.4 70.1 70.0 70.8
70.8
s38417
98.2 24.2 24.2 24.8
24.8
s38584
239.6 30.1 30.2 28.9
28.0
Average
103.1 47.0 46.2 47.0
46.8
ATPG: TetraMAX (on Sun Ultra workstation)
Gentest and Hitec show similar proportions
Oct. 5, 2001
Agrawal, Kim and Saluja
18
Test Lengths for Acyclic Subclasses
Circuit
Name
Acyclic
VL
Internally Bal.
CC
VL
CC
Balanced
VL
Strongly Bal. Combinational
CC
VL
CC
VL
CC
s5378
1,230
371
912
83
912
88
580
95
580
104
s9234
1,680
256
1,138
236
1,138
238
727
161
766
175
s13207
3,126
9,701
2,328
1,040
2,328
1,051
1,238
673
1,355
909
s15850
5,780 25,331
1,785
946
1,785
955
1,192
673
1,192
713
s35932
7,548
2,311
2,319
4,012
2,319
4,012
2,320
4,014
2,319
4,012
s38417
8,632
9,628
4,863
7,143
4,863
7,168
3,329
4,918
3,384
5,541
12,231 13,641
7,722
11,055
7,722
11,055
3,645
5,279
3,627
5,271
s38584
VL: Number of combinational ATPG vectors
CC: Sequential test clock cycles (x1,000) for scan sequences
Oct. 5, 2001
Agrawal, Kim and Saluja
19
Conclusion
 Using a balanced circuit model and combinational
ATPG, we can generate tests for any acyclic
sequential circuit with equal or higher fault coverage
and efficiency than obtained by sequential ATPG.
 The proposed ATPG procedure provides comparable
fault coverage and efficiency with significantly lower
DFT (partial-scan) overhead as compared to
internally balanced, balanced, strongly balanced and
combinational subclasses.
 The multiple fault model has new applications to
diagnosis, logic optimization, multiply-testable faults,
and bridging faults (see VLSI Design’02 paper).
Oct. 5, 2001
Agrawal, Kim and Saluja
20
Papers
 Y. C. Kim, V. D. Agrawal and K. K. Saluja,
“Combinational Test Generation for Acyclic
Sequential Circuits using a Balanced ATPG Model,”
Proc. 14th Int. Conf. VLSI Design, Jan. 2001, pp. 143148.
 Y. C. Kim, V. D. Agrawal and K. K. Saluja,
“Combinational Test Generation for Various Classes
of Acyclic Sequential Circuits,” Proc. Int. Test Conf.,
Oct. 2001.
 Y. C. Kim, V. D. Agrawal and K. K. Saluja, “MultipleFaults: Modeling, Simulation and Test,” Proc. 15th
Int. Conf. VLSI Design, Jan. 2002.
Oct. 5, 2001
Agrawal, Kim and Saluja
21
Thank you
Oct. 5, 2001
Agrawal, Kim and Saluja
22
Download