ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES

Slides:



Advertisements
Similar presentations
CMP238: Projeto e Teste de Sistemas VLSI Marcelo Lubaszewski Aula 4 - Teste PPGC - UFRGS 2005/I.
Advertisements

Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 121 Lecture 12 Advanced Combinational ATPG Algorithms  FAN – Multiple Backtrace (1983)  TOPS – Dominators.
Appendix: Other ATPG algorithms 1. TOPS – Dominators Kirkland and Mercer (1987) n Dominator of g – all paths from g to PO must pass through the dominator.
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.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 261 Lecture 26 Logic BIST Architectures n Motivation n Built-in Logic Block Observer (BILBO) n Test.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES Sequential circuit ATPG.
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.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 71 Lecture 7 Fault Simulation n Problem and motivation n Fault simulation algorithms n Serial n Parallel.
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.
Testability Virendra Singh Indian Institute of Science Bangalore
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 & BushnellDay-1 PM Lecture 4a1 Design for Testability Theory and Practice Lecture 4a: Simulation n What is simulation? n Design.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 8alt1 Lecture 8 Testability Measures n Definition n Controllability and observability n SCOAP measures.
1 Lecture 11 Major Combinational Automatic Test-Pattern Generation Algorithms n Definitions n D-Algorithm (Roth) D-cubes Bridging faults Logic.
6/11/2015A Fault-Independent etc…1 A Fault-Independent Transitive Closure Algorithm for Redundancy Identification Vishal J. Mehta Kunal K. Dave Vishwani.
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 4b1 Design for Testability Theory and Practice Lecture 4b: Fault Simulation n Problem and motivation.
5/1/2006VTS'061 Upper Bounding Fault Coverage by Structural Analysis and Signal Monitoring Vishwani D. Agrawal Auburn University, Dept. of ECE, Auburn,
Copyright 2001, Agrawal & BushnellDay-1 PM-2 Lecture 51 Testing Analog & Digital Products Lecture 5: Testability Measures n Definition n Controllability.
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
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 9alt1 Lecture 9alt Combinational ATPG (A Shortened version of Original Lectures 9-12) n ATPG problem.
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.
Lecture 6 Testability Measures
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Lecture 5 Fault Simulation
Efficient Test Compaction for Combinational Circuits Based on Fault Detection Count- Directed Clustering Aiman El-Maleh and Saqib Khurshid King Fahd University.
Spring 08, Mar 27 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Fault Simulation Vishwani D. Agrawal James J.
Partial Scan Design with Guaranteed Combinational ATPG Vishwani D. Agrawal Agere Systems, Circuits and Systems Research Lab Murray Hill, NJ 07974, USA.
Probabilistic Testability Analysis Aditya Newalkar.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 81 Lecture 8 Testability Measures n Origins n Controllability and observability n SCOAP measures 
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 111 Lecture 11 Major Combinational Automatic Test-Pattern Generation Algorithms n Definitions n D-Algorithm.
4/26/05 Kantipudi: ELEC CONTROLLABILITY AND OBSERVABILITY KALYANA R KANTIPUDI VLSI TESTING ’05 TERM PAPER TERM PAPER.
Spring 08, Apr 8 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2008 Combinational Circuit ATPG Vishwani D. Agrawal.
Unit II Test Generation
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.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS Design for Testability (DFT) - 2.
10/14/2015 Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Testability Measures.
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
Copyright 2001, Agrawal & BushnellLecture 6: Sequential ATPG1 VLSI Testing Lecture 6: Sequential ATPG n Problem of sequential circuit ATPG n Time-frame.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES Combinational ATPG.
A New ATPG Algorithm for 21 st Century: The wojoRithm John Sunwoo Electrical & Computer Engineering Auburn University, AL.
Fault Models, Fault Simulation and Test Generation Vishwani D. Agrawal Department of ECE, Auburn University Auburn, AL 36849, USA
Lecture 9 Advanced Combinational ATPG Algorithms
VLSI Testing Lecture 5: Logic Simulation
VLSI Testing Lecture 4: Testability Analysis
VLSI Testing Lecture 6: Fault Simulation
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES
Definitions D-Algorithm (Roth) D-cubes Bridging faults
Lecture 13 Sequential Circuit ATPG Time-Frame Expansion
VLSI Testing Lecture 7: Combinational ATPG
Lecture 10 Sequential Circuit ATPG Time-Frame Expansion
CPE/EE 428, CPE 528 Testing Combinational Logic (5)
Automatic Test Generation for Combinational Circuits
VLSI Testing Lecture 8: Sequential ATPG
Fault Models, Fault Simulation and Test Generation
VLSI Testing Lecture 7: Combinational ATPG
Aiman H. El-Maleh Sadiq M. Sait Syed Z. Shazli
Design for Testability
Automatic Test Pattern Generation
VLSI Testing Lecture 4: Testability Analysis
Sungho Kang Yonsei University
Lecture 14 Sequential Circuit ATPG Simulation-Based Methods
Lecture 13 Sequential Circuit ATPG Time-Frame Expansion
Presentation transcript:

ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES 4/25/2017 ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES ATPG Systems and Testability Measures

Overview Motivation ATPG Systems Testability measures Summary 4/25/2017 Overview Motivation ATPG Systems Fault simulation effort Test generation effort Testability measures Purpose and origins SCOAP measures Combinational circuit example Sources of correlation error Sequential circuit example Test vector length prediction High-Level testability measures Summary Do not discuss much about topics here. Under computer system overall implies what is a compute system - its architecture and components Then focus on hardware and software components 4/25/2017

Motivation ATPG Systems Testability measures Increase fault coverage 4/25/2017 Motivation ATPG Systems Increase fault coverage Reduce over all effort (CPU time) Fewer test vectors (test application time) Testability measures A powerful heuristic used during test generation (more on its uses in later slides) Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Reduce cost of fault simulation Fault list reduction 4/25/2017 ATPG Systems Reduce cost of fault simulation Fault list reduction Efficient and diverse fault simulation methods suited for specific applications and environment Fault sampling method Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Reduce cost of test generation 4/25/2017 ATPG Systems Reduce cost of test generation Two phase approach to test generation Phase 1: low cost methods initially Many faults can be detected with little effort. For example use random vectors. Initially the coverage rises rather fast. Phase 2: use methods that target specific faults till desired fault coverage is reached Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Phase 1 issues: 4/25/2017 ATPG Systems Phase 1 issues: When to stop phase 1 and switch to phase 2 Continue as long as many new faults are detected Do not keep a test that does not detect many new faults When many consecutive vectors have been discarded Etc. . Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Phase 2 issues (during deterministic test generation): 4/25/2017 ATPG Systems Phase 2 issues (during deterministic test generation): Efficient heuristics for backtrace What fault to pick next Choice of backtrack limit Switch heuristics Interleave test generation and fault simulation Fill in x’s (test compaction) Identify untestable faults by other methods Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Efficient heuristics for backtrace Easy/hard heuristic 4/25/2017 ATPG Systems Efficient heuristics for backtrace Easy/hard heuristic If many choices to meet an objective, and satisfaction of any one of the choices will satisfy the objective – choose the easiest one first If all conditions must be satisfied to meet the desired objective, choose the hardest one first Easy hard can be determined Distance from Pis and Pos Testability measures Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Which fault to pick next 4/25/2017 ATPG Systems Which fault to pick next Target to generate tests for easy faults first Hard faults may get detected with no extra effort Target to generate tests for hard faults first Easy faults will be detected any way, why waste time Target faults near PIs Target faults near POs etc. Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Choice of backtrack limit (High backtrack  more time) 4/25/2017 ATPG Systems Choice of backtrack limit (High backtrack  more time) It has been observed that as the number of backtrack increases the success rate goes down.Thus we may wish to keep low backtrack limit. Some faults may not get detected due to lack of time spent on them Could start with low limit and increase it when necessary or in second round (often used heuristic) Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Switch heuristics 4/25/2017 ATPG Systems Switch heuristics Switch between heuristics during backtrace as well as during backtrack Interleave test generation and fault simulation Drop detected faults after generation of each test This has higher switching cost but generally works well This strategy may not be usable with certain fault simulators such as PPSFS Sequential tests may not have other options and this may be the only practical option in some cases Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

ATPG Systems Fill in x’s (test compaction) 4/25/2017 ATPG Systems Fill in x’s (test compaction) Test generator generates vectors with some inputs unspecified Can fill these values with random (0, 1) values (often termed as dynamic compaction). More on compaction on next three slides Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

Static and Dynamic Compaction of Sequences Static compaction ATPG should leave unassigned inputs as X Two patterns compatible – if no conflicting values for any PI Combine two tests ta and tb into one test tab = ta tb using D-intersection Detects union of faults detected by ta & tb Dynamic compaction Process every partially-done ATPG vector immediately Assign 0 or 1 to PIs to test additional faults 4/25/2017

Compaction Example t1 = 0 1 X t2 = 0 X 1 t3 = 0 X 0 t4 = X 0 1 Combine t1 and t3, then t2 and t4 Obtain: t13 = 0 1 0 t24 = 0 0 1 Test Length shortened from 4 to 2 4/25/2017

Test Compaction Fault simulate test patterns in reverse order of generation ATPG patterns go first Randomly-generated patterns go last (because they may have less coverage) When coverage reaches 100%, drop remaining patterns (which are the useless random ones) Significantly shortens test sequence – economic cost reduction 4/25/2017

ATPG Systems Identify untestable faults by other methods 4/25/2017 ATPG Systems Identify untestable faults by other methods If the goal is to identify only untestable faults as opposed to find a test, some other methods may do a better job – example of such techniques are: Recursive learning Controllability evaluations etc. Be sure everyone has a conduct sheet. Re GROUND RULES: 1. In terms of allowed collaboration vs. individual work, ask if you are not sure. 2. Deactivate all cell phones or pagers during class unless you are on-call during your job. 3. No tape-recording permitted. Take notes. 4/25/2017

Fault Coverage and Efficiency # of detected faults Total # faults Fault coverage = Fault efficiency # of detected faults Total # faults -- # undetectable faults = 4/25/2017

ATPG Systems Circuit Description Fault List Compacter Test generator With fault simulation Aborted Faults Test Patterns Backtrack Distribution Undetected Faults Redundant Faults 4/25/2017

Testability Analysis - Purpose Need approximate measure of: Difficulty of setting internal circuit lines to 0 or 1 by setting primary circuit inputs Difficulty of observing internal circuit lines by observing primary outputs Uses: Analysis of difficulty of testing internal circuit parts – redesign or add special test hardware Guidance for algorithms computing test patterns – avoid using hard-to-control lines Estimation of fault coverage Estimation of test vector length 4/25/2017

Origins Control theory 4/25/2017 Origins Control theory Rutman 1972 -- First definition of controllability Goldstein 1979 -- SCOAP First definition of observability First elegant formulation First efficient algorithm to compute controllability and observability Parker & McCluskey 1975 Definition of Probabilistic Controllability Brglez 1984 -- COP 1st probabilistic measures Seth, Pan & Agrawal 1985 – PREDICT 1st exact probabilistic measures 4/25/2017

Testability Analysis - Constraints Involves Circuit Topological analysis, but no test vectors and no search algorithm Static analysis Linear computational complexity Otherwise, is pointless – might as well use automatic test-pattern generation and calculate: Exact fault coverage Exact test vectors 4/25/2017

Types of Measures SCOAP – Sandia Controllability and Observability Analysis Program Combinational measures: CC0 – Difficulty of setting circuit line to logic 0 CC1 – Difficulty of setting circuit line to logic 1 CO – Difficulty of observing a circuit line Sequential measures – analogous: SC0 SC1 SO 4/25/2017

Range of SCOAP Measures Controllabilities – 1 (easiest) to infinity (hardest) Observabilities – 0 (easiest) to infinity (hardest) Combinational measures: Roughly proportional to # circuit lines that must be set to control or observe given line Sequential measures: Roughly proportional to # times a flip-flop must be clocked to control or observe given line 4/25/2017

Goldstein’s SCOAP Measures AND gate O/P 0 controllability: output_controllability = min (input_controllabilities) + 1 AND gate O/P 1 controllability: output_controllability = S (input_controllabilities) XOR gate O/P controllability output_controllability = min (controllabilities of each input set) + 1 Fanout Stem observability: S or min (some or all fanout branch observabilities) 4/25/2017

Controllability Examples 4/25/2017

More Controllability Examples 4/25/2017

Observability Examples To observe a gate input: Observe output and make other input values non-controlling 4/25/2017

More Observability Examples To observe a fanout stem: Observe it through branch with best observability 4/25/2017

Error: Stems & Reconverging Fanouts SCOAP measures wrongly assume that controlling or observing x, y, z are independent events CC0 (x), CC0 (y), CC0 (z) correlate CC1 (x), CC1 (y), CC1 (z) correlate CO (x), CO (y), CO (z) correlate x y z 4/25/2017

Correlation Error Example Exact computation of measures is NP-Complete and impractical Italicized measures show correct values – SCOAP measures are not italicized CC0,CC1 (CO) 2,3(4) 2,3(4, ) 1,1(6) 1,1(5, ) x 8 8 6,2(0) 4,2(0) (6) (5) (4,6) 1,1(5) 1,1(4,6) y (6) 2,3(4) 2,3(4, ) z 8 1,1(6) 1,1(5, ) 8 4/25/2017

Sequential Example 4/25/2017

Levelization Algorithm 6.1 Label each gate with max # of logic levels from primary inputs or with max # of logic levels from primary output Assign level # 0 to all primary inputs (PIs) For each PI fanout: Label that line with the PI level number, & Queue logic gate driven by that fanout While queue is not empty: Dequeue next logic gate If all gate inputs have level #’s, label the gate with the maximum of them + 1; Else, requeue the gate 4/25/2017

Controllability Through Level 0 Circled numbers give level number. (CC0, CC1) 4/25/2017

Controllability Through Level 2 4/25/2017

Final Combinational Controllability 4/25/2017

Combinational Observability for Level 1 Number in square box is level from primary outputs (POs). (CC0, CC1) CO 4/25/2017

Combinational Observabilities for Level 2 4/25/2017

Final Combinational Observabilities 4/25/2017

Sequential Measure Differences Combinational Increment CC0, CC1, CO whenever you pass through a gate, either forwards or backwards Sequential Increment SC0, SC1, SO only when you pass through a flip-flop, either forwards or backwards, to Q, Q, D, C, SET, or RESET Both Must iterate on feedback loops until controllabilities stabilize 4/25/2017

D Flip-Flop Equations Assume asynchronous RESET line. CC1 (Q) = CC1 (D) + CC1 (C) + CC0 (C) + CC0 (RESET) SC1 (Q) = SC1 (D) + SC1 (C) + SC0 (C) + SC0 (RESET) + 1 CC0 (Q) = min [CC1 (RESET) + CC1 (C), CC1(RESET) + CC0 (C), CC0 (D) + CC1 (C) + CC0 (C) + CC0(RESET)] SC0 (Q) is analogous CO (D) = CO (Q) + CC1 (C) + CC0 (C) + CC0 (RESET) SO (D) is analogous 4/25/2017

D Flip-Flop Clock and Reset CO (RESET) = CO (Q) + CC1 (Q) + CC1 (RESET) + CC1 (C) + CC0 (C) SO (RESET) is analogous Three ways to observe the clock line: Set Q to 1 and clock in a 0 from D Set the flip-flop and then reset it Reset the flip-flop and clock in a 1 from D CO (C) = min [ CO (Q) + CC1 (Q) + CC0 (D) + CC1 (C) + CC0 (C), CO (Q) + CC1 (Q) + CC1 (RESET) + CO (Q) + CC0 (Q) + CC0 (RESET) + CC1 (D) + CC1 (C) + CC0 (C)] SO (C) is analogous 4/25/2017

Algorithm 6.2 Testability Computation For all PIs, CC0 = CC1 = 1 and SC0 = SC1 = 0 For all other nodes, CC0 = CC1 = SC0 = SC1 = Go from PIs to POS, using CC and SC equations to get controllabilities -- Iterate on loops until SC stabilizes -- convergence guaranteed For all POs, set CO = SO = Work from POs to PIs, Use CO, SO, and controllabilities to get observabilities Fanout stem (CO, SO) = min branch (CO, SO) If a CC or SC (CO or SO) is , that node is uncontrollable (unobservable) 8 8 4/25/2017

Sequential Example Initialization 4/25/2017

After 1 Iteration 4/25/2017

After 2 Iterations 4/25/2017

After 3 Iterations 4/25/2017

Stable Sequential Measures 4/25/2017

Final Sequential Observabilities 4/25/2017

Test Vector Length Prediction First compute testabilities for stuck-at faults T (x sa0) = CC1 (x) + CO (x) T (x sa1) = CC0 (x) + CO (x) Testability index = log S T (f i) fi 4/25/2017

Number Test Vectors vs. Testability Index 4/25/2017

Summary ATPG systems Testability approximately measures: Uses: Methods to reduce test generation effort while generating efficient test vectors Testability approximately measures: Difficulty of setting circuit lines to 0 or 1 Difficulty of observing internal circuit lines Examples for computing these values Uses: Analysis of difficulty of testing internal circuit parts Redesign circuit hardware or add special test hardware where measures show bad controllability or observability Guidance for algorithms computing test patterns Estimation of fault coverage – 3-5 % error (see text) Estimation of test vector length 4/25/2017

Appendices 4/25/2017

High Level Testability Build data path control graph (DPCG) for circuit Compute sequential depth -- # arcs along path between PIs, registers, and POs Improve Register Transfer Level Testability with redesign 4/25/2017

Improved RTL Design 4/25/2017 4/25/2017