1 AN EFFICIENT TEST-PATTERN RELAXATION TECHNIQUE FOR SYNCHRONOUS SEQUENTIAL CIRCUITS Khaled Abdul-Aziz Al-Utaibi

Slides:



Advertisements
Similar presentations
Copyright 2001, Agrawal & BushnellLecture 12: DFT and Scan1 VLSI Testing Lecture 10: DFT and Scan n Definitions n Ad-hoc methods n Scan design  Design.
Advertisements

Functions and Functional Blocks
10/28/2009VLSI Design & Test Seminar1 Diagnostic Tests and Full- Response Fault Dictionary Vishwani D. Agrawal ECE Dept., Auburn University Auburn, AL.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 261 Lecture 26 Logic BIST Architectures n Motivation n Built-in Logic Block Observer (BILBO) n Test.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 13/12alt1 Lecture 13 Sequential Circuit ATPG Time-Frame Expansion (Lecture 12alt in the Alternative.
1 Lecture 10 Sequential Circuit ATPG Time-Frame Expansion n Problem of sequential circuit ATPG n Time-frame expansion n Nine-valued logic n ATPG implementation.
Copyright 2001, Agrawal & BushnellLecture 3b: Testability Analysis1 VLSI Testing Lecture 3b: Testability Analysis n Definition n Controllability and observability.
1 EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
Nov. 21, 2006ATS'06 1 Spectral RTL Test Generation for Gate-Level Stuck-at Faults Nitin Yogi and Vishwani D. Agrawal Auburn University, Department of ECE,
Copyright 2005, Agrawal & BushnellVLSI Test: Lecture 21alt1 Lecture 21alt BIST -- Built-In Self-Test (Alternative to Lectures 25, 26 and 27) n Definition.
Aiman El-Maleh, Ali Alsuwaiyan King Fahd University of Petroleum & Minerals, Dept. of Computer Eng., Saudi Arabia Aiman El-Maleh, Ali Alsuwaiyan King Fahd.
An Efficient Test Relaxation Technique for Synchronous Sequential Circuits Aiman El-Maleh and Khaled Al-Utaibi King Fahd University of Petroleum & Minerals.
What is an Algorithm? (And how do we analyze one?)
May 11, 2006High-Level Spectral ATPG1 High-Level Test Generation for Gate-level Fault Coverage Nitin Yogi and Vishwani D. Agrawal Auburn University Department.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 8alt1 Lecture 8 Testability Measures n Definition n Controllability and observability n SCOAP measures.
Copyright 2001, Agrawal & BushnellDay-1 PM-2 Lecture 51 Testing Analog & Digital Products Lecture 5: Testability Measures n Definition n Controllability.
1 Lecture 23 Design for Testability (DFT): Full-Scan n Definition n Ad-hoc methods n Scan design Design rules Scan register Scan flip-flops Scan test sequences.
Spring 08, Apr 1 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Testability Measures Vishwani D. Agrawal James.
Design for Testability Theory and Practice Lecture 11: BIST
ELEN 468 Lecture 241 ELEN 468 Advanced Logic Design Lecture 24 Design for Testability.
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 61 Design for Testability Theory and Practice Lecture 6: Combinational ATPG n ATPG problem n Example.
Efficient Test Compaction for Combinational Circuits Based on Fault Detection Count- Directed Clustering Aiman El-Maleh and Saqib Khurshid King Fahd University.
A Hybrid Test Compression Technique for Efficient Testing of Systems-on-a-Chip Aiman El-Maleh King Fahd University of Petroleum & Minerals, Dept. of Computer.
Jan 6-10th, 2007VLSI Design A Reduced Complexity Algorithm for Minimizing N-Detect Tests Kalyana R. Kantipudi Vishwani D. Agrawal Department of Electrical.
Test Set Compaction for Sequential Circuits Computer Engineering, KFUPM Test Set Compaction for Sequential Circuits based on Test Relaxation M.S Thesis.
Oct. 5, 2001Agrawal, Kim and Saluja1 Partial Scan Design With Guaranteed Combinational ATPG Vishwani D. Agrawal Agere Systems Processor Architectures and.
Sequential Testing Two choices n Make all flip-flops observable by putting them into a scan chain and using scan latches o Becomes combinational testing.
4/26/05Cheng: ELEC72501 A New Method for Diagnosing Multiple Stuck- at-Faults using Multiple and Single Fault Simulations An-jen Cheng ECE Dept. Auburn.
BIST vs. ATPG.
Introduction to IC Test
Testimise projekteerimine: Labor 2 BIST Optimization
VLSI Testing Lecture 7: Combinational ATPG
March 8, 2006Spectral RTL ATPG1 High-Level Spectral ATPG for Gate-level Circuits Nitin Yogi and Vishwani D. Agrawal Auburn University Department of ECE.
TOPIC : Types of fault simulation
1 Fitting ATE Channels with Scan Chains: a Comparison between a Test Data Compression Technique and Serial Loading of Scan Chains LIRMM CNRS / University.
A Test-Per-Clock LFSR Reseeding Algorithm for Concurrent Reduction on Test Sequence Length and Test Data Volume Adviser :蔡亮宙 Student ;蔡政宏.
10/14/2015 Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Testability Measures.
Lecture 18: Dynamic Reconfiguration II November 12, 2004 ECE 697F Reconfigurable Computing Lecture 18 Dynamic Reconfiguration II.
An Iterative Heuristic for State Justification in Sequential Automatic Test Pattern Generation Aiman H. El-MalehSadiq M. SaitSyed Z. Shazli Department.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Page 1EL/CCUT T.-C. Huang Apr TCH CCUT Introduction to IC Test Tsung-Chu Huang ( 黃宗柱 ) Department of Electronic Eng. Chong Chou Institute of Tech.
Reducing Test Application Time Through Test Data Mutation Encoding Sherief Reda and Alex Orailoglu Computer Science Engineering Dept. University of California,
Niloy Ganguly Biplab K Sikdar P Pal Chaudhuri Presented by Niloy Ganguly Indian Institute of Social Welfare and Business Management. Calcutta
1 Compacting Test Vector Sets via Strategic Use of Implications Kundan Nepal Electrical Engineering Bucknell University Lewisburg, PA Nuno Alves, Jennifer.
Vishwani D. Agrawal Auburn University, Dept. of Elec. & Comp. Engg. Auburn, AL 36849, U.S.A. Nitin Yogi NVIDIA Corporation, Santa Clara, CA th.
Detecting Errors Using Multi-Cycle Invariance Information Nuno Alves, Jennifer Dworak, and R. Iris Bahar Division of Engineering Brown University Providence,
Copyright 2001, Agrawal & BushnellLecture 6: Sequential ATPG1 VLSI Testing Lecture 6: Sequential ATPG n Problem of sequential circuit ATPG n Time-frame.
Technical University Tallinn, ESTONIA Copyright by Raimund Ubar 1 Raimund Ubar N.Mazurova, J.Smahtina, E.Orasson, J.Raik Tallinn Technical University.
A Test-Per-Clock LFSR Reseeding Algorithm for Concurrent Reduction on Test Sequence Length and Test Data Volume Wei-Cheng Lien 1, Kuen-Jong Lee 1 and Tong-Yu.
On the Relation Between Simulation-based and SAT-based Diagnosis CMPE 58Q Giray Kömürcü Boğaziçi University.
Memory Management.
Finite state machine optimization
Finite state machine optimization
VLSI Testing Lecture 7: Combinational ATPG
Lecture 10 Sequential Circuit ATPG Time-Frame Expansion
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Objective of This Course
Automatic Test Generation for Combinational Circuits
VLSI Testing Lecture 8: Sequential ATPG
Fault Models, Fault Simulation and Test Generation
Esam Ali Khan M.S. Thesis Defense
VLSI Testing Lecture 7: Combinational ATPG
Sungho Kang Yonsei University
Aiman H. El-Maleh Sadiq M. Sait Syed Z. Shazli
Automatic Test Pattern Generation
MS Thesis Defense Presentation by Mustafa Imran Ali COE Department
Sungho Kang Yonsei University
Lecture 26 Logic BIST Architectures
Reseeding-based Test Set Embedding with Reduced Test Sequences
Test Data Compression for Scan-Based Testing
Presentation transcript:

1 AN EFFICIENT TEST-PATTERN RELAXATION TECHNIQUE FOR SYNCHRONOUS SEQUENTIAL CIRCUITS Khaled Abdul-Aziz Al-Utaibi

2 Outline ► Introduction ► Motivation ► Problem Definition ► Existing Solutions ► Proposed Technique ► Experimental Results ► Conclusion & Future Work

3 Introduction ► System-On-Chip (SOC)  Rapid advancement in VLSI technology has lead to a new paradigm in designing integrated circuits where a SOC is constructed based on pre-designed and pre-verified cores such as CPUs, digital signal processors, and RAMs. ► Testing SOC  To deal with a large amount of test data that must be loaded from the tester memory, transferred to the SOC, and applied to the individual cores.

4 Introduction ► Test Data Compression  The objective of test data compression is to compress (encode) a given test set T D to a much smaller test set T E that is stored in the tester memory.  During test application, T E is loaded from the tester memory and decompressed (decoded) to obtain the original test set T D before applying it to the required core. ► Test Data Compaction  In test compaction, the number of test vectors is reduced into a smaller number that achieves the same fault coverage.

5 Motivation ► Compression Techniques  Schemes that require test data to be in the form of test cubes (Ex. LFSR reseeding).  Schemes that require fully specified test vectors such as variable- to-fixed-length codes, variable-to-variable-length codes and Huffman coding.  Schemes that have no specific requirements about the type of the test data (Ex. Run-length coding). They compress test data regardless of their type.

6 Motivation ► Compaction Techniques  Compaction techniques can benefit from partially specified test sets.  For example, when merging two test sequences by overlapping self-initializing test sequences, a don't care value, 'x', can be merged with any one of the values: '0', '1', and 'x'.  Therefore, increasing the number of x's in a test set will reduce the number of conflicts that may occur when merging two test sequences.

7 Problem Definition ► Given a synchronous sequential circuit and a fully specified test set, generate a partially specified test set that maintains the same fault coverage as the fully specified one while maximizing the number of unspecified bits.

8 Existing Solutions ► Dynamic ATPG Compaction  Every test vector is processed immediately after its generation in order to specify the unspecified PIs.  Generally, unspecified assignments are filled with random values.  This feature can be disabled to obtain a compact and relaxed test set.  However, assigning random values to the unspecified PI’s may result in detecting additional faults that have not been detected with the partially specified assignments.  Furthermore, this technique does not solve the problem of relaxing an already existing test set.

9 Existing Solutions ► Single-Bit Relaxation (Brute-Force)  Test for every bit of the test set whether changing it to an X reduces the fault coverage or not.  This technique is O(nm) fault simulation runs, where n is the width of one test vector, m is the number of test vectors, and  Obviously, this technique is impractical for large circuits.

10 Proposed Technique ► General Behavior  At every time frame t, all logic values which are necessary detect a newly detected fault are marked as required.  Next, these logic values are justified backwards towards primary inputs and/or memory-elements.  At the end, any primary input that is not marked as required during the justification process is relaxed.  On the other hand, required values on the memory-elements are justified when time frame, t- 1, is processed. x

11 Proposed Technique ► Single-Value Justification  Justification process is based on fault-free values only  This may result in masking some of the detected faults.  Therefore, rules based on fault-reachability analysis are used to avoid fault masking. ► Two-Values Justification  Justify both fault-free and faulty values of the circuit that are necessary to excite/propagate every newly detected fault.  Reachability analysis is not required.

12 Single-Value Justification G7/0 0 x x 0 x

13 Limitations of Single-Value Justification G4/1

14 Two-Values Justification G4/1

15 Selection Criteria  When justifying a controlling value through the inputs of a given gate, there could be more than one choice.  In this case, the priority is given to the input that is already selected to justify other gates.  Otherwise, cost functions are used to guide the selection.  Cost functions give a relative measure on the number of primary inputs required to justify a given value.  Hence, they can guide the relaxation procedure to justify the required values with the smallest number of assignments on the primary inputs.

16 Selection Criteria (Regular Cost Func.) ► Regular Cost Functions  For every gate, g, we compute two cost functions: C reg0 (g) and C reg1 (g).  For example, if g is an AND gate with i inputs, then the cost functions are computed as:  These cost functions are computed for other gates in a similar manner.

17 Selection Criteria (Regular Cost Fun.) C reg1 (G1) = 3 C reg1 (G2) = 2 C reg0 (A) = 1 C reg0 (B) = 1 C reg0 (C) = 1

18 Selection Criteria (Fanout-Based Cost) ► Fanout-based Cost Functions  These cost functions can be computed for an AND gate as follows.  Let g be an AND gate with i inputs.  Let F(g) denotes the number of fanout branches of g.  Then, the fanout-based cost functions are computed as:

19 Selection Criteria (Cost Functions) C fan0 (A) = 1 C fan0 (B) = 0.5 C fan0 (C) = 1

20 Selection Criteria (Cost Functions)  Regular cost functions are accurate for fanout-free circuits.  However, they do not take advantage of the fact that a stem can justify several required values.  In general, the fanout-based cost functions provide better selection criterion than the regular cost functions.  However, there are some cases where the regular cost  functions can perform better.  To take advantage of both cost functions, a weighted sum cost function of the two cost functions can be used.

21 Selection Criteria (Sequential Circuits)  In synchronous sequential circuits, the controllability values of the circuit in one time frame depend on the controllability values computed in the current frame as well as the values computed in the previous frames.  Therefore, the controllability values should be computed in an iterative manner starting from the first time frame.  However, the iterative computation of the controllability over several time frames may cause the regular cost function to grow much faster than the fanout-based cost function.  In this case, the effect of the second cost function in the weighted sum becomes negligible.

22 Selection Criteria (Sequential Circuits)

23 Selection Criteria (Reconvergant Fanouts) C 1 = 1 C 1 = v C 1 = v +1 C 1 = 2v+1 C 1 = 3v+1

24 Selection Criteria (Reconvergant Fanouts) C(B)= v C= v/m C= v

25 Selection Criteria (Reconvergant Fanouts) C 1 = 1 C 1 = v C 1 = v/3 +1 C 1 = 2v/3 +1 C 1 = v+1

26 Selection Criteria (Actual Values)  The cost functions described so far assume equal probability of a line having a value of 0 or 1.  Computing the controllability with this assumption is less accurate than computing the controllability based on the actual logical values. C 1 =3 C 1 =1 C 1 =2 C 1 =3

27 Experimental Results  Experiments were performed on a number of ISCAS89 benchmarks.  Experiments were run on a SUN Ultra60 (UltraSparc II 450MHz) with a RAM of 512MB.  Test sets generated by HITEC.  The fault simulator HOPE was used for fault simulation purposes.

28 Experimental Results  Comparison between proposed technique (Two-Values Justification) & Single-Bit Relaxation (Brute-Force) in terms of percentage of X’s and CPU time.  Experiments on Cost Functions.  Comparison between single-value justification & two-values justification in terms of percentage of X’s.  Effect of computing the cost functions based on the actual logical values as compared to equal-probability logical values.  Effect of using the adjusted regular cost function on the consistency of the results.

29 Experimental Results ► Benchmark Circuits Circuit Name No. Inputs No. Outputs No. Flip-Flops No. Gates S S S S S S S S

30 Experimental Results  The difference in the percentage of X’s ranges between 1% and 7%.  Average difference is about 3%.

31 Experimental Results Circuit Name Single-Bit Relaxation Proposed Technique S S S S S S S S ► Comparison between Single-Bit Relaxation (Brute-Force) & Proposed Technique in terms of CPU time

32 Experimental Results ► Cost Functions Effect on the Extracted Percentage of X’s Circuit Name A=0 B=0 A=0 B=1 A=1 B=0 A=1 B=10 A=1 B=30 A=1 B=50 A=1 B=70 A=1 B=90 s s s s s s s s AVG

33 Experimental Results ► Comparison between Two-Values & Single-Value Justification in terms of Percentage of X’s Circuit NameTwo ValuesSingle ValueDifference s s s s s s s s AVG

34 Experimental Results ► Effect of Computing Cost Functions Based on Actual or Equal-Prob. Logical Values Circuit Name Using Actual Logical Values Using Equal Prob. Values Difference s s s s s s s s AVG

35 Experimental Results ► Percentage of X’s Obtained Using Unadjusted Regular Cost Function Circuit Name A=0 B=1 A=1 B=40 A=1 B=45 A=1 B=50 A=1 B=55 A=1 B=60 A=1 B=65 A=1 B=70 s s s s s s s s AVG

36 Experimental Results ► Percentage of X’s Obtained Using Adjusted Regular Cost Function Circuit Name A=0 B=0 A=0 B=1 A=1 B=0 A=1 B=10 A=1 B=30 A=1 B=50 A=1 B=70 A=1 B=90 s s s s s s s s AVG

37 Conclusion  Proposed a new technique for relaxing test-patterns in synchronous sequential circuits.  Proposed technique is faster than single-bit relaxation (brute- force) method by several order of magnitude.  Percentage of X’s obtained by the proposed technique is close to the percentage of X’s obtained by single-bit relaxation (brute- force) for most of the circuits.  The difference in percentage of X’s ranges between 1% and 7%.  Average difference is about 3%.

38 Conclusion  It should be observed that for fault detection, single-bit relaxation (brute-force) implicitly chooses a primary output that maximizes the number of X’s.  However, the proposed technique does not do any optimization in selecting POs for fault detection.  When justifying a fault that is detected through more than one output, the proposed technique will select one of these primary output to justify the detected fault without taking into consideration that some primary outputs can lead to more relaxation than others.

39 Conclusion

40 THANK YOU

41 Introduction  Use built-in self-test (BIST) ► Ability of self-testing at normal clocking rates. ► Ability for testing systems on-line. ► Reducing or eliminating the need for the expensive ATE's. ► Complexity of designing test tools. ► Degradation of the system performance due to added hardware. ► BIST tools can't achieve high fault coverage because some faults are hard-to-detect using random test vectors.  Use compression & compaction techniques to reduce the amount of test data.

42 Problem Definition ► Test-Pattern Relaxation for Synchronous Sequential Circuits  Given a synchronous sequential circuit and a fully specified test set, generate a partially specified test set that maintains the same fault coverage as the fully specified one while maximizing the number of unspecified bits x0 11

43 (1, 1) Selection Criteria (Fanout-base Cost) (1, 1) (1, 0.5) (1, 1) (1, 0.5) (1, 1) (1, 0.5) (2, 1)

44 Single-Value Justification

45 Proposed Technique ► Definitions & Terminology  A synchronous sequential circuit can be represented as a linear iterative array of combinational cells.  Each cell represents one time frame in which  the current states of the flip-flops become pseudo-inputs and the next states become pseudo-outputs.  A fault in this model is represented as multiple identical faults (one in every cell).

46 Proposed Technique ► Definitions & Terminology  The notation l/v is used to indicate that a line l is stuck at value v.  The notation l=v/v’ is used to indicate that the fault-free value of l is v, and the faulty value of l is v’.  When we say that a line l is required, we mean that the value on l is required.

47 Limitations of Single-Value Justification G4/0

48 Two-Values Justification G4/0

49 Selection Criteria (Reconvergant Fanouts) C 1 = v + 1 C 1 = 1 C 1 = v C 1 = 1 C 1 = 2v + 2