180 likes | 360 Views
High-Level Test Generation for Gate-level Fault Coverage. Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE Auburn, AL 36849. Outline. Need for High Level Testing Problem and Approach Spectral analysis and generation of test sequences RTL testing approach
E N D
High-Level Test Generationfor Gate-level Fault Coverage Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE Auburn, AL 36849 High-Level Spectral ATPG
Outline • Need for High Level Testing • Problem and Approach • Spectral analysis and generation of test sequences • RTL testing approach • Experimental Results • Conclusion High-Level Spectral ATPG
Need 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 High-Level Spectral ATPG
Problem and Approach That’s fine ! But does it work ? • The problem is … • Develop synthesis-independent ATPG methods using RTL circuit description. • And our approach is: • Implementation-independent characterization: • RTL test generation • Characterization of RTL vectors for spectral components and the noise level for each PI of the circuit. • Test generation for gate-level implementation: • Generation of spectral vectors • Fault simulation and vector compaction High-Level Spectral ATPG
RTL Faults CombinationalLogic Inputs Outputs RTL stuck-at fault sites FF FF High-Level Spectral ATPG
Walsh Functions and Hadamard Spectrum OK…so its just another way of representing information w0 • Walsh functions form an orthogonal and complete set of basis functions that can represent any arbitrary bit-stream. • Walsh functions are the rows of the Hadamard matrix. • Example of Hadamard matrix of order 8: w1 w2 w3 Walsh functions (order 8) H8 = 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 w4 w5 w6 w7 High-Level Spectral ATPG
Characterizing a Bit-Stream • A bit-stream is correlated with each row of Hadamard matrix. • Highly correlated basis Walsh functions are retained as essential components and others are regarded as noise. Bit stream to analyze Correlating with Walsh functions by multiplying with Hadamard matrix. Bit stream Spectral coeffs. Essential component (others noise) Hadamard Matrix High-Level Spectral ATPG
Test Vector Generation OK…so you are refining the bit stream • Spectrum for new bit-streams consists of the essential components and added random noise. • Essential component plus noise spectra are converted into bit-streams by multiplying with Hadamard matrix. • Any number of bit-streams can be generated; all contain the same essential components but differ in their noise spectrum. Perturbation Spectral components Generation of test vectors by multiplying with Hadamard matrix Essential component retained New test vector High-Level Spectral ATPG
RTL Testing Approach (Circuit Characterization) • RTL test generation: • Test vectors are generated for RTL faults (PIs, POs 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 power Hi2 with the average power per component M2. • Condition to pick-out essential components:where K is a constant • The process starts with the highest magnitude component and is repeated till the criteria is not satisfied. High-Level Spectral ATPG
Circuit 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 High-Level Spectral ATPG
Selecting Minimal Vector Sequences Using ILP OK…I got that….. What about the RESULTS !!! • A set of perturbation vector sequences {V1, V2, .. , VM} are generated. • Vector sequences are fault simulated and faults detected by each is obtained. • Compaction problem: Find minimum set of vector sequences which cover all the detected faults. • Minimize Count{V1, … ,VM} to obtain compressed seq. {V1,… ,VC} where {V1, … ,VC}{V1, … , VM}Count{V1, … ,VC} ≤ Count{V1, … ,VM}Fault Coverage{V1, … ,VC} = Fault Coverage{V1, … ,VM} • Compaction problem is formulated as an Integer Linear Program (ILP) [1]. [1] P. Drineas and Y. Makris,“Independent Test Sequence Compaction through Integer Programming," Proc. ICCD’03, pp. 380-386. High-Level Spectral ATPG
Experimental Results • RTL Spectral ATPG technique applied to the following benchmarks: • three ITC’99 high level RTL circuits • four ISCAS’89 circuits. • PARWAN processor(Z. Navabi, VHDL: Analysis and Modeling of Digital Systems, McGraw-Hill, 1993.) • Characteristics of benchmark circuits: • ATPG for RTL faults and fault simulation performed using commercial sequential ATPG tool Mentor Graphics FlexTest. • Results obtained on Sun Ultra 5 machines with 256MB RAM. High-Level Spectral ATPG
Results for b11-A RTL characterization: RTL-ATPG results: * Sun Ultra 5, 256MB RAM High-Level Spectral ATPG
b11-A Circuit High-Level Spectral ATPG
PARWAN processor High-Level Spectral ATPG
Results * Reset input added. High-Level Spectral ATPG
Conclusion • Spectral RTL ATPG technique applied to three ITC’99 and four ISCAS’89 benchmarks, and a processor circuit. • Results indicate promise in further development of the 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 and use of noise components • Better compaction algorithms • Future work: Spectral characterization of functional vectors. High-Level Spectral ATPG
Thank You ! Questions ? High-Level Spectral ATPG