210 likes | 332 Views
Spectral Characterization of Functional Vectors for Gate-level Fault Coverage Tests. Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE, Auburn, AL 36849, USA yoginit@auburn.edu , vagrawal@eng.auburn.edu. Outline. Verification and Testing Problem and Approach
E N D
Spectral Characterization of Functional Vectors for Gate-level Fault Coverage Tests Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE, Auburn, AL 36849, USA yoginit@auburn.edu, vagrawal@eng.auburn.edu Yogi/Agrawal: Spectral Functional ATPG
Outline • Verification and Testing • Problem and Approach • Spectral analysis and generation of test sequences • Test sequence compaction • Experimental Results • Conclusion • References Yogi/Agrawal: Spectral Functional ATPG
Verification and Testing • Verification vectors • are mandatory and required; to check for functional correctness of a digital system • are generated based on the behavior of the system • have been found useful in detection of manufacture defects like timing faults • have low stuck-at fault coverage (poor defect level), but no yield loss • Manufacturing tests • may be non-functional; cannot be used for verification • have high test generation complexity • have high stuck-at fault coverage Yogi/Agrawal: Spectral Functional ATPG
Problem and Approach • The problem: • To develop manufacturing tests from verification vectors. • Our approach: • Implementation-independent characterization: • Functional vectors obtained either from design verification phase or by exercising various functions of the circuit. • Characterization of verification 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 Yogi/Agrawal: Spectral Functional ATPG
Verification vectors State Diagram (b02 ckt.) Behavioral Description (s344 ckt.) A A B 4 bits 4 bits Cases to verify :all state transitions X / 0 4 bit multiplier 1 / 0 B 1 / 0 0 / 0 F C Y 8 bits X / 1 1 / 0 0 / 0 Cases to verify: G D X / 0 0 / 0 Input / output E Yogi/Agrawal: Spectral Functional ATPG
Walsh Functions and Hadamard Spectrum 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 Yogi/Agrawal: Spectral Functional 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 Yogi/Agrawal: Spectral Functional ATPG
Test Vector Generation • 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 Yogi/Agrawal: Spectral Functional ATPG
Spectral Testing Approach (Circuit Characterization) • Verification vector generation: • Verification vectors are generated to exercise various functions of the circuit including its corner cases. • Spectral analysis: • Verification sequences for each input are analyzed using Hadamard matrix. • Essential components are 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. Yogi/Agrawal: Spectral Functional ATPG
Circuit s298: Coefficient Analysis Examples of noise components Examples of essential components Yogi/Agrawal: Spectral Functional ATPG
Functional Verification Vectors for Spectral ATPG • Start with functional verification vectors. • Characterize verification vectors for Walsh spectrum and noise level. • Generate new sequences by adding random noise to the Walsh spectrum. • Use fault simulator (Flextest) and integer linear program (ILP) to compact sequences. Yogi/Agrawal: Spectral Functional ATPG
Selecting Minimal Vector Sequences Using ILP • A set of perturbation vector sequences {V1, V2, .. , VM} is generated, fault simulated and faults detected by each is obtained. • Compaction problem: Find minimum set of vector sequences that cover all 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. Yogi/Agrawal: Spectral Functional ATPG
ILP formulation • Each vector sequence in {V1, V2, .. , VM} is fault simulated with the circuit in unknown state • Faults detected by each sequence is obtained • Variable xi defined for each vector seq. Visuch that xi = 0 : vec. seq. Vi not selected = 1 : vec. seq. Vi selected • Constraint equation formulated for each detected fault fk. • For example, if fault f3 is detected by vec. sequences V3, V4 and V11, then the constraint equation is x3 + x4 + x11 ≥1 • Solve for objective function:Minimize Yogi/Agrawal: Spectral Functional ATPG
Experimental Circuits • Spectral ATPG technique applied to the following benchmarks: • three ISCAS’89 circuits. • one ITC’99 high level RTL circuit • Parwan microprocessor • Characteristics of benchmark circuits: • Fault simulation performed using commercial sequential ATPG tool Mentor Graphics FlexTest. • Results obtained on Sun Ultra 5 machines with 256MB RAM. Yogi/Agrawal: Spectral Functional ATPG
ATPG Results Yogi/Agrawal: Spectral Functional ATPG
Functional Spectral ATPG: s298 Spectral ATPG Gate-level ATPG Functional vectors Random vectors Yogi/Agrawal: Spectral Functional ATPG
Functional Spectral ATPG: ITC’99 Benchmark b02 (FSM) Yogi/Agrawal: Spectral Functional ATPG
Parwan Microprocessor Reference: Z. Navabi, Analysis and Modeling of Digital Systems, NY: McGraw-Hill, 1993. Yogi/Agrawal: Spectral Functional ATPG
Parwan: Spectral ATPG Yogi/Agrawal: Spectral Functional ATPG
Conclusion • Spectral ATPG technique for verification vectors is applied to three ISCAS’89 and one ITC’99 benchmark circuits. • Coverage of functional vectors can be effectively improved to match that of a gate-level ATPG by the proposed method. • Test generation using Spectral ATPG brings with it all the benefits of high level testing • Techniques that will enhance Spectral ATPG are: • Accurate determination and use of noise components • Better compaction algorithms Yogi/Agrawal: Spectral Functional ATPG
References • N. Yogi and V. D. Agrawal, “High-Level Test Generation for Gate-Level Fault Coverage,” Proc. 15th IEEE North Atlantic Test Workshop, May 2006, pp. 65-74. • N. Yogi and V. D. Agrawal, “Spectral RTL Test Generation for Gate-Level Stuck-at Faults,” Proc. 19th IEEE Asian Test Symp., November 2006. • N. Yogi and V. D. Agrawal, “Spectral RTL Test Generation for Microprocessors,” submitted. Yogi/Agrawal: Spectral Functional ATPG