Title: High-Level Spectral ATPG for Gate-level Circuits
1High-Level Spectral ATPGfor Gate-level Circuits
- Nitin Yogi and Vishwani D. Agrawal
- Auburn University
- Department of ECE
- Auburn, AL 36849
2Outline
- Need for High Level Testing
- Problem and Approach
- Spectral analysis and generation of test
sequences - RTL testing approach
- Experimental Results
- Conclusion
- Future work
- Research Goals
3Need for High Level Testing
Seems interesting ! But is it feasible ?
- Motivations for high level testing
- Low testing complexity
- Low testing times and costs
- Early detection of testability issues during
design phase at high level or RTL - Difficulty of gate-level test generation for
black box cores with known functionality
4Problem and Approach
Thats fine ! But does it work ?
- Whats the problem ?
- Develop synthesis-independent ATPG methods using
RTL circuit description. - How do we approach it ?
- Implementation-independent characterization
- RTL test generation
- RTL faults gt PI, PO and inputs and outputs of
flip-flops - Generate vectors for RTL faults
- Analyze RTL vectors to extract spectral
components and the noise level for each PI of
the circuit. - Test generation for a gate-level implementation
using RTL characterization - Generation of test vectors
- Test vector compaction
5Walsh Functions and Hadamard Spectrum
OKso its just another way of representing
information
w0
- Walsh functions form an orthogonal and complete
set of functions representing a discretized
function. - Walsh functions form the rows of the Hadamard
matrix called its basis vectors. - Example of Hadamard matrix of order 8
w1
w2
w3
Walsh functions (order 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 1 -1 1 -1 -1 1 -1 1 1 1 -1
-1 -1 -1 1 1 1 -1 -1 1 -1 1 1 -1
H8
w4
w5
w6
w7
6Analysis of a Bit Stream Using Hadamard Matrix
- Bit stream is correlated with each basis vector
of the Hadamard matrix. - High correlated basis vectors are retained as
essential components and others are regarded as
noise. - New bit streams can be generated keeping the
essential components and eliminating or changing
the noise components.
Bit stream to analyze
Correlating with basis vectors by multiplying
with Hadamard matrix.
Bit stream
Spectral coeffs.
Essential component (others noise)
Hadamard Matrix
7Test Vector Generation
OKso you are refining the bit stream
- The components regarded as noise are filtered or
altered as per a methodology. - The filtered components are converted back to a
test vector by multiplying with Hadamard matrix
Filtering
Spectral components
Generation of test vectors by multiplying with
Hadamard matrix
Essential component retained
New test vector
8RTL Testing Approach (Circuit Characterization)
- RTL test generation
- Test vectors are generated for RTL faults (PI, PO
and inputs - outputs of flip-flops.) - Spectral analysis
- Test sequences for each input are analyzed using
Hadamard matrix. - Essential components are currently determined by
comparing their magnitudes Hi with the mean of
the total spectrum M. - Condition to pick-out essential components
- The process starts with the highest magnitude
component and is repeated till the criteria is
not satisfied.
9Circuit b01 Coefficient Analysis (Vectors for
RTL faults obtained from delay optimized circuit)
Magnitudes of 32 Hadamard Coeffs. for 3 inputs of
b01
Examples of noise components
Examples of essential components
10RTL Testing Approach (Test vector generation)
- Spectral Test Vector Generation
- Perturbation of spectral coefficients
- Retain essential spectral components
- Add random noise to replace the original
identified noise. - Components considered non-essential are changed
randomly both in magnitude and sign in a confined
confidence level. - Generation of test vectors.
11RTL Testing Approach (Test vector generation)
OKI got that.. What about the RESULTS !!!
- Test Vector Compaction
- Characteristics of generated vectors depend on
inserted noise. - Characteristics determine the fault coverage, the
detectability of hard to detect faults, etc. - 10 test sets are generated using the spectral
method and compacted to achieve the best fault
coverage. - Compaction currently performed by simple fault
simulation of generated test sets on the target
gate-level implementation.
12Experimental Results
- Spectral ATPG technique was applied to three
ITC99 high level RTL benchmark circuits, b01,
b09 and b11 - Characteristics of benchmark circuits
- The benchmark circuits synthesized in two ways
- optimizing area
- optimizing delay.
- Vectors for RTL faults obtained from ATPG
(FlexTest). - Spectral RTL-ATPG technique applied to the
circuits.
Circuit PIs POs FFs Function
b01 2 2 5 FSM that compares serial flows
b09 1 1 28 Serial to serial converter
b11 7 6 21 Scramble string with variable cipher
13RTL Spectral Characterization b01
Number of RTL faults Number of Vectors RTL fault cov. () CPU seconds Number of spectral components for three PIs Gate level fault cov. () of RTL vectors
Area 62 38 91.94 1.0 (18, 8, 1) out of max. 64 92.98
Delay 62 31 91.94 1.0 (10, 1, 1) out of max. 32 83.10
Sun Ultra 5, 256MB RAM
14Gate-Level Test Generation b01
Type of gate level synthesis Number of gate-level faults RTL ATPG Spectral Test Sets RTL ATPG Spectral Test Sets RTL ATPG Spectral Test Sets Gate-level ATPG Gate-level ATPG Gate-level ATPG
Type of gate level synthesis Number of gate-level faults Gate level cov. () Number of vectors CPU seconds Gate level cov. () Number of vectors CPU seconds
Area optimized 228 97.81 128 20.0 97.81 75 1.0
Delay optimized 290 97.41 128 20.0 98.28 91 1.0
Sun Ultra 5, 256MB RAM
15Gate-Level Cov. of Spectral Test Sets on
Area-Optimized b01 Circuit
16Gate-Level Cov. of Spectral Test Sets on
Delay-Optimized b01 Circuit
17RTL Spectral Characterization b09
Number of RTL faults Number of Vectors RTL fault cov. () CPU seconds Number of spectral components for two PIs Gate level fault cov. () of RTL vectors
Area 248 202 68.55 485 (1, 68) out of max. 256 73.98
Delay 248 310 70.16 413 (1,147) out of max. 512 68.75
Sun Ultra 5, 256MB RAM
18Gate-Level Test Generation b09
Type of gate level synthesis Number of gate-level faults RTL ATPG Spectral Test Sets RTL ATPG Spectral Test Sets RTL ATPG Spectral Test Sets Gate-level ATPG Gate-level ATPG Gate-level ATPG
Type of gate level synthesis Number of gate-level faults Gate level cov. () Number of vectors CPU seconds Gate level cov. () Number of vectors CPU seconds
Area optimized 882 83.26 620 825 84.52 349 296
Delay optimized 1048 82.78 620 812 83.06 335 215
Sun Ultra 5, 256MB RAM
19Gate-Level Cov. of Spectral Test Sets on
Area-Optimized b09 Circuit
20Gate-Level Cov. of Spectral Test Sets on
Delay-Optimized b09 Circuit
21RTL Spectral Characterization b11
Number of RTL faults Number of Vectors RTL fault cov. () CPU seconds Number of spectral components for 9 PIs Gate level fault cov. () of RTL vectors
Area 240 224 68.53 541 (66,62,54,55,63,51,60,1) out of max. 256 71.66
Delay 240 174 72.35 776 (66,70,59,61, 58,79,45,56) out of max. 256 76.78
Sun Ultra 5, 256MB RAM
22Gate-Level Test Generation b11
Type of gate level synthesis Number of gate-level faults RTL ATPG Spectral Test Sets RTL ATPG Spectral Test Sets RTL ATPG Spectral Test Sets Gate-level ATPG Gate-level ATPG Gate-level ATPG
Type of gate level synthesis Number of gate-level faults Gate level cov. () Number of vectors CPU seconds Gate level cov. () Number of vectors CPU seconds
Area optimized 2380 86.62 512 826 81.85 468 1866
Delay optimized 3070 84.92 512 1061 82.31 365 3076
Sun Ultra 5, 256MB RAM
23Gate-Level Cov. of Spectral Test Sets on
Area-Optimized b11 Circuit
24Gate-Level Cov. of Spectral Test Setson
Delay-Optimized b11 Circuit
Hmmm interesting !
25Conclusion
- Spectral RTL ATPG technique was applied to ITC99
benchmark circuits b01, b09 and b11 and found to
give favorable results in two out of the three
circuits. - Results indicate promise in further development
of Spectral RTL ATPG technique. - Test generation using Spectral RTL ATPG brings
with it all the benefits of high level testing - Techniques that will enhance Spectral ATPG are
- Efficient RTL ATPG
- Accurate determination of noise components
- Better ways of random noise insertion with more
control over noise inserted - Better compaction algorithms
26Future Work
Analytical model
ATPG
Test vectors
Random vecs.
Circuit under test
Test generation system
- Model the test generation system in the frequency
domain using transfer functions. - Finding the relationship
- Characterize input random vectors and output RTL
vectors in the frequency domain - Obtain the transfer function for the Test
generation system to target gate level faults - Challenges in frequency domain
- Linearity
- Time-invariance
- Possible tools for frequency analysis
- Walsh functions
- FFT
27Research Goals
- Extraction of spectral components from functional
vectors and their application for test
generation. - Theoretical analysis of spectral components and
the noise level. - Consideration of both temporal and spatial
spectra using two-dimensional signal analysis. - Application to combinational and sequential
circuits. - Use of improved test generation for RTL faults.
- Effective application of vector compaction
methods.
28- Thank You !
- Any Questions ?