Vishwani D. Agrawal Nitin Yogi Auburn University, NVIDIA Corporation,

advertisement
Nitin Yogi
NVIDIA Corporation,
Santa Clara, CA 95050
Vishwani D. Agrawal
Auburn University,
Dept. of Elec. & Comp. Engg.
Auburn, AL 36849, U.S.A.
20th April 2010
28th IEEE VLSI Test Symposium
Santa Cruz, CA
Introduction
 Propose an information and noise analysis method
for digital signals using Hadamard transform.
 Analysis identifies information (spectrally structured)
and noise (random) contents of the signal in relative
measures.
 The analysis is useful in a variety of applications like
test generation, BIST, test compression, etc.
 We illustrate its application to test generation.
4/20/2010
VTS'10, Santa Cruz, CA
2
Test Vectors and Bit-streams
Outputs
June 12, 2009
Input 3
Input 4
Input 5
1
0
0
1
0
1
0
0
0
1
0
0
1
1
1
0
1
0
1
1
1
0
1
0
0
1
1
0
0
1
1
1
Nitin Yogi - Doctoral Defense
Input J
Input 2
Vector 8 →
1
0
1
1
0
0
1
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
0
1
0
0
1
0
Time in clocks
Vector 1 →
Vector 2 →
Vector 3 →
Vector 4 →
Vector 5 →
Vector 6 →
Vector 7 →
Input 1
Circuit Under Test (CUT)
A digital
binary bitstream signal
vector
3
Hadamard Transform
• Hadamard transform transforms a
digital signal from time domain to
frequency-related domain.
w0
• Uses Walsh functions, which are a
complete orthogonal set of basis
functions that can represent any
arbitrary bit-stream.
• Can be used for binary signals by using
the representation {0,1} -> {-1,1}
H(8) =
4/20/2010
1
1
1
1
1
1
1
1
1
-1
1
-1
1
-1
1
-1
1
1
-1
-1
1
1
-1
-1
1
-1
-1
1
1
-1
-1
1
1
1
1
1
-1
-1
-1
-1
1
-1
1
-1
-1
1
-1
1
1
1
-1
-1
-1
-1
1
1
1
-1
-1
1
-1
1
1
-1
Example of Hadamard matrix
of order 8
Walsh functions (order 3)
w1
w2
w3
w4
w5
w6
w7
time
VTS'10, Santa Cruz, CA
4
Hadamard transformation
Forward transformation (time domain to spectral domain):
1
S
 H ( N )  X 
N
where:
X
H(N)
S
Time domain digital signal vector of stream of N bits
Hadamard transform matrix of order N
Hadamard transform (Walsh spectrum) of X
Reverse transformation (spectral domain to time domain):
1
H ( N )  S 
X
N
4/20/2010
VTS'10, Santa Cruz, CA
5
Properties of Hadamard Transform
• Orthogonality and symmetry
H ( N ) H ( N )
 N  I ( N )
T
• Energy conservation
N 1
X
k 0
N 1
2
( k )  S ( j )
2
j 0
where:
 H(N)
 X
 S
4/20/2010
Hadamard transform matrix of order N
Binary bit-stream vector in time domain
Hadamard transform in spectral domain (Walsh spectrum)
VTS'10, Santa Cruz, CA
6
Energy Analysis
 Total energy in a {-1,+1} binary signal of length N
clocks in time domain:
N 1
X
k 0
N 1
2
(k )  (1)  N
k 0
 Total energy in spectrum:
N 1
N 1
j 0
k 0
2
2
S
(
j
)

X

 (k )  N
4/20/2010
VTS'10, Santa Cruz, CA
7
Analysis of random binary bit-streams
 Values of spectral components of random binary bit-
streams can be approximated as Gaussian distribution
 Mean (µ) = 0
 Standard deviation (σ)
Equal to N
(by energy
conservation)

2
1  N 1 2 
  Sr ( j)   Sr  1

N  j 0

Equal to 0
(since mean = 0)
where:
 Sr(j) jth spectral component of a random binary
bit-stream of length N
 Sr
4/20/2010
2
Square of the mean of Sr(j)
VTS'10, Santa Cruz, CA
8
Spectral coefficients of random bit-stream
•
•
500 samples of random binary bit-streams of length 64 were generated
Distribution of values of spectral components analyzed
Spectral components
• Mean = 0.0035 ≈ 0
below a magnitude of
• Standard deviation = 1.000425 ≈ 1
2σ or 3σ can be treated
as noise components
3σ (99.73%)
2σ (95.45%)
1σ (68.27%)
Frequency of occurrence
3500
3000
2500
2000
1500
1000
500
0
-4
-3
-2
-1
0
1
2
3
4
Amplitude
4/20/2010
VTS'10, Santa Cruz, CA
9
Generating spectral bit-streams
1. Perform Hadamard transform on binary bit-stream.
2. Filter out noise-like spectral components having
magnitudes less than a spectral threshold
(Energy conservation of the transfom transfers the energy
of filtered components to noise).
3. Perform reverse Hadamard transform to obtain time-
domain values in the range (-1,+1) for bits in the bitstream.
4. Time-domain values are normalized to range (0,1) and
used as probabilities of logic 1 in new random bit-streams.
4/20/2010
VTS'10, Santa Cruz, CA
10
Generating spectral bit-streams
Example
{0,1} binary
bit-stream
1
0
1
1
1
0
1
0
4/20/2010
{-1,+1}
binary bit
stream (X)
Hadamard Matrix
H(3)
{0,1}
converted to
{-1,+1}
1
√8
1
1
1
1
1
1
1
1
1
-1
1
-1
1
-1
1
-1
1
1
-1
-1
1
1
-1
-1
1
-1
-1
1
1
-1
-1
1
1
1
1
1
-1
-1
-1
-1
VTS'10, Santa Cruz, CA
1
-1
1
-1
-1
1
-1
1
1
1
-1
-1
-1
-1
1
1
1
-1
-1
1
-1
1
1
-1
1
-1
1
1
1
-1
1
-1
=
Hadamard
transform (S)
1
√8
2
6
-2
2
2
-2
-2
2
11
Example of generating spectral bit-streams
Hadamard
transform
(S) of 8-bit
binary bitstream
1
√8
1
1
1
1
1
1
1
1
1
-1
1
-1
1
-1
1
-1
1
1
-1
-1
1
1
-1
-1
2
6
-2
2
2
-2
-2
2
1
√8
1
-1
-1
1
1
-1
-1
1
1
1
1
1
-1
-1
-1
-1
1
-1
1
-1
-1
1
-1
1
1
1
-1
-1
-1
-1
1
1
1
-1
-1
1
-1
1
1
-1
0
6/√8
0
0
0
0
0
0
Time-domain Reverse transformation
4/20/2010
0
6/√8
0
0
0
0
0
0
Spectral threshold
=2σ=2
VTS'10, Santa Cruz, CA
0.75
-0.75
0.75
-0.75
0.75
-0.75
0.75
-0.75
Unfiltered spectral
component
0’s are filtered
spectral
coefficients
Probabilities
for generating
bit-streams
[X(k)+1]
2
0.875
0.125
0.875
0.125
0.875
0.125
0.875
0.125
Normalization
for probabilities
12
Generated spectral bit-streams
Original {0,1}
binary bitstream
Unfiltered
spectral
component
1
-1
1
1
1
-1
1
-1
1
-1
1
-1
1
-1
1
-1
1 bit difference
between original bitstream & unfiltered
spectral component
4/20/2010
Randomly generated
bit-streams from probabilities
Probabilities
for generating
bit-stream
0.875
0.125
0.875
0.125
0.875
0.125
0.875
0.125
1
1
1
-1
1
-1
-1
-1
-1
-1
1
-1
1
-1
1
-1
1
-1
1
-1
1
1
1
-1
1
1
1
-1
1
-1
1
-1
1
-1
1
1
1
-1
1
-1
Generated bit-streams exhibit similar
correlation with the unfiltered spectral
component as the original bit-stream.
Few bits changed by noise are shown in red.
VTS'10, Santa Cruz, CA
13
Application of analysis
 Application of spectral information analysis:
 Test generation, BIST, Test data compression, etc.
 Illustration of effectiveness of analysis using test
generation
 Test vectors generated for RTL faults (PIOs & flip-
flops)
 Generate spectral vectors & fault grade on circuit
 Compare with random, weighted random & randomly
perturbed vectors
 Analysis applied to ISCAS’89 benchmark circuits

4/20/2010
s1488, s5378 & s38417
VTS'10, Santa Cruz, CA
14
Spectral coefficients & power analysis for s1488
 32 vectors were generated to detect RTL faults (PIOs & FFs) & analyzed using H(32)
Inputs
Spectral Coefficient
Amplitude
Power
Noise Power
Input 1
w0
w1
w13
w1
w19
w0
w22
w1
w5
w19
w23
w4
w22
w1
w5
w30
w4
w12
w22
0.75
0.5
-0.38
0.56
0.44
0.63
-0.38
-0.5
0.5
0.5
0.5
0.5
0.5
0.5
-0.38
0.38
0.38
0.38
0.38
0.56
0.25
0.14
0.32
0.19
0.39
0.14
0.25
0.25
0.25
0.25
0.25
0.25
0.25
0.14
0.14
0.14
0.14
0.14
0.44
Input 2
Input 3
Input 4
Input 5
Input 6
Input 7
Input 8
4/20/2010
VTS'10, Santa Cruz, CA
0.61
0.49
0.47
0
0.5
0.47
0.58
15
Gate level coverage for s1488
100
95
Spectral
Test coverage (%)
90
RTL+Spectral
85
80
RTL+Random
Pertb. (5%)
75
70
RTL+Weighted
Random
65
60
RTL vector coverage = 56.45%
RTL+Random
Vecs.
55
0
500
1000
1500
Number of vectors
4/20/2010
VTS'10, Santa Cruz, CA
16
Gate level coverage for s5378
78
Spectral
Test coverage (%)
77
76
RTL+Spectral
75
74
RTL+Random
Pertb. (2%)
73
72
RTL+Weighted
Random
71
70
RTL+Random
Vecs.
RTL vector coverage = 70.15%
69
0
2000
4000
6000
8000
10000
Number of vectors
4/20/2010
VTS'10, Santa Cruz, CA
17
Gate level coverage for for s38417
Test coverage (%)
60
50
Spectral
40
RTL+Spectral
30
RTL+Random
Pertrb.(10%)
RTL vector coverage = 29.47%
20
RTL+Weighted
Random
10
RTL+Random
vecs.
0
0
10000
20000
30000
40000
Number of vectors
4/20/2010
VTS'10, Santa Cruz, CA
18
Conclusion
 Proposed an information analysis framework to
distinguish noise from signal content
 Illustrated effectiveness of method for the
application of test generation
 The method can easily be extended to other
applications like BIST and test compression. See,
 N. Yogi and V. D. Agrawal, “BIST/Test-Compressor Design using
Combinational Test Spectrum,” Proc. 13th IEEE VLSI Design &
Test Symp. (VDAT), July 2009, pp. 443-454.
 N. Yogi and V. D. Agrawal, “Sequential Circuit BIST Synthesis
using Spectrum and Noise from ATPG Patterns” Proc. 17th IEEE
Asian Test Symp. (ATS), Nov 2008, pp. 69-74.
 There is potential for further applications.
4/20/2010
VTS'10, Santa Cruz, CA
19
Thank you
Questions please?
4/20/2010
VTS'10, Santa Cruz, CA
20
Test generation comparison with commercial tool
Test generation:
Circuit
name
RTL-ATPG spectral tests
FlexTest gate-level ATPG
Coverage
(%)
No. of
vectors
CPU*
(secs)
Coverage
(%)
No. of
vectors
CPU*
(secs)
s1488
95.65
512
103
98.42
470
131
s5378
76.49
2432
2088
76.79
835
4439
N. Yogi and V. D. Agrawal, “Spectral RTL Test Generation for Gate-Level Stuck-at Faults,”
Proc. 15th IEEE Asian Test Symp. (ATS), Nov 2006, pp. 83-88.
* Sun Ultra 5, 256MB RAM
BIST:
Circuit
name
FlexTest gate-level ATPG
BIST gate-level fault coverage (%)
Coverage
(%)
No. of
vectors
64k random
vectors
64k weighted
random vectors
Spectral BIST
(64k vectors)
s1488
97.31
736
92.13
97.11
97.11
s5378
77.06
739
74.39
76.84
78.28
s38417
49.62
55110
13.42
15.87
54.59
N. Yogi and V. D. Agrawal, “Sequential Circuit BIST Synthesis using Spectrum and Noise from ATPG Patterns,”
Proc. 17th IEEE Asian Test Symp. (ATS), Nov 2008, pp. 69-74.
4/20/2010
VTS'10, Santa Cruz, CA
21
Download