ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES

Slides:



Advertisements
Similar presentations
High-Level Fault Grading. Improving Gate-Level Fault Coverage by RTL Fault Grading* * W. Mao and R. K. Gulati, ITC 1996, pp
Advertisements

Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 31/22alt1 Lecture 31 System Test (Lecture 22alt in the Alternative Sequence) n Definition n Functional.
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.
Apr. 20, 2001VLSI Test: Bushnell-Agrawal/Lecture 311 Lecture 31 System Test n Definition n Functional test n Diagnostic test  Fault dictionary  Diagnostic.
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 Logic Simulation.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 71 Lecture 7 Fault Simulation n Problem and motivation n Fault simulation algorithms n Serial n Parallel.
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 4a1 Design for Testability Theory and Practice Lecture 4a: Simulation n What is simulation? n Design.
Logic Simulation 4 Outline –Fault Simulation –Fault Models –Parallel Fault Simulation –Concurrent Fault Simulation Goal –Understand fault simulation problem.
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 4b1 Design for Testability Theory and Practice Lecture 4b: Fault Simulation n Problem and motivation.
Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.
Test de Circuitos Integrados
ELEN 468 Lecture 241 ELEN 468 Advanced Logic Design Lecture 24 Design for Testability.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Sep. 26, 2001Agrawal: Stratified Sampling1 Stratified Sampling for Fault Coverage of VLSI Systems Vishwani D. Agrawal Agere Systems, Murray Hill, NJ
Lecture 5 Fault Simulation
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.
ELEN 468 Lecture 231 ELEN 468 Advanced Logic Design Lecture 23 Testing.
EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES Fault Modeling.
VLSI Testing Lecture 7: Combinational ATPG
TOPIC : Types of fault simulation
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS Design for Testability (DFT) - 2.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
CMP238: Projeto e Teste de Sistemas VLSI Marcelo Lubaszewski Aula 3 - Teste PPGC - UFRGS 2005/I.
6/5/2016 Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Fault Simulation.
1 CSCE 932, Spring 2007 Fault Coverage Analysis. 2 Fault Simulation.
Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault.
REGISTER TRANSFER LANGUAGE (RTL) INTRODUCTION TO REGISTER Registers1.
Copyright 2001, Agrawal & BushnellLecture 6:Fault Simulation1 VLSI Testing Lecture 6: Fault Simulation Dr. Vishwani D. Agrawal James J. Danaher Professor.
Fault Models, Fault Simulation and Test Generation Vishwani D. Agrawal Department of ECE, Auburn University Auburn, AL 36849, USA
Speaker: Nansen Huang VLSI Design and Test Seminar (ELEC ) March 9, 2016 Simulation-Based Equivalence Checking.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 61 Lecture 6 Logic Simulation n What is simulation? n Design verification n Circuit modeling n True-value.
Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir. A.C. Verschueren Eindhoven University of Technology Section of Digital.
REGISTER TRANSFER LANGUAGE (RTL)
VLSI Testing Lecture 5: Logic Simulation
VLSI Testing Lecture 14: System Diagnosis
VLSI Testing Lecture 5: Logic Simulation
Vishwani D. Agrawal Department of ECE, Auburn University
VLSI Testing Lecture 6: Fault Simulation
Algorithms and representations Structural vs. functional test
VLSI Testing Lecture 14: Built-In Self-Test
Lecture 7 Fault Simulation
Lecture 23 Design for Testability (DFT): Full-Scan (chapter14)
Definition Partial-scan architecture Historical background
Lecture 13 Sequential Circuit ATPG Time-Frame Expansion
VLSI Testing Lecture 6: Fault Simulation
VLSI Testing Lecture 7: Combinational ATPG
Lecture 10 Sequential Circuit ATPG Time-Frame Expansion
ELEC Digital Logic Circuits Fall 2014 Logic Testing (Chapter 12)
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Overview: Fault Diagnosis
332:437 Lecture 7 Verilog Hardware Description Language Basics
Test Iwan Sonjaya,MT 2014年 01 月 22 日 © Springer, 2010
Pattern Compression for Multiple Fault Models
Hardware Description Languages
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES
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
Sungho Kang Yonsei University
Automatic Test Pattern Generation
VLSI Testing Lecture 7: Delay Test
VLSI Testing Lecture 3: Fault Modeling
Sungho Kang Yonsei University
Lecture 26 Logic BIST Architectures
Lecture 13 Sequential Circuit ATPG Time-Frame Expansion
Presentation transcript:

ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES 9/18/2018 ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES Fault Simulation

Overview Problem and motivation Fault simulation algorithms 9/18/2018 Overview Problem and motivation Fault simulation algorithms Serial Parallel Deductive Concurrent Other algorithms Random Fault Sampling 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 9/18/2018

Problem and Motivation Fault simulation Problem: Given A circuit A sequence of test vectors A fault model Determine Fault coverage - fraction (or percentage) of modeled faults detected by test vectors Set of undetected faults Motivation Determine test quality and in turn product quality Find undetected fault targets to improve tests 9/18/2018

Usages of Fault Simulators Test grading – as explained before Test Generation Fault diagnosis Design for test (DFT) – identification of points that may help improve test quality Fault-tolerance – identification of damage a fault can cause 9/18/2018

Alternatives and Their Limitations Prototyping with fault injection capabilities Costly Limited fault injection capability Design changes hard to implement Long lead time Hardware emulators Require special hardware 9/18/2018

Fault Simulator in a VLSI Design Process Verification input stimuli Verified design netlist Fault simulator Test vectors Modeled fault list Remove tested faults Test compactor Delete vectors Fault coverage ? Low Test generator Add vectors Adequate Stop 9/18/2018

Fault Simulation Scenario Circuit model: mixed-level Mostly logic with some switch-level for high-impedance (Z) and bidirectional signals High-level models (memory, etc.) with pin faults Signal states: logic Two (0, 1) or three (0, 1, X) states for purely Boolean logic circuits Four states (0, 1, X, Z) for sequential MOS circuits Timing: Zero-delay for combinational and synchronous circuits Mostly unit-delay for circuits with feedback 9/18/2018

Fault Simulation Scenario (continued) Mostly single stuck-at faults Sometimes stuck-open, transition, and path-delay faults; analog circuit fault simulators are not yet in common use Equivalence fault collapsing of single stuck-at faults Fault-dropping -- a fault once detected is dropped from consideration as more vectors are simulated; fault-dropping may be suppressed for diagnosis Fault sampling -- a random sample of faults is simulated when the circuit is large 9/18/2018

Fault Simulation Algorithms Serial Parallel Deductive Concurrent Others Differential Parallel pattern etc. 9/18/2018

Serial Algorithm Algorithm: Simulate fault-free circuit and save responses. Repeat following steps for each fault in the fault list: Modify netlist by injecting one fault Simulate modified netlist, vector by vector, comparing responses with saved responses If response differs, report fault detection and suspend simulation of remaining vectors Advantages: Easy to implement; needs only a true-value simulator, less memory Most faults, including analog faults, can be simulated 9/18/2018

Fault Injection Modifying netlist for every run can be expensive Alternative Check if a net is faulty or fault-free If faulty change its value to the stuck-value Else leave it to the computed value Mux based fault insertion Use additional variables and compute the value based on the signal value and the value in the additional variable 9/18/2018

Serial Algorithm (Cont.) Disadvantage: Much repeated computation; CPU time prohibitive for VLSI circuits Alternative: Simulate many faults together Test vectors Fault-free circuit Comparator f1 detected? Circuit with fault f1 Comparator f2 detected? Circuit with fault f2 Comparator fn detected? Circuit with fault fn 9/18/2018

Parallel Fault Simulation Compiled-code method; best with two-states (0,1) Exploits inherent bit-parallelism of logic operations on computer words Storage: one word per line for two-state simulation Multi-pass simulation: Each pass simulates w-1 new faults, where w is the machine word length Speed up over serial method ~ w-1 Not suitable for circuits with timing-critical and non-Boolean logic 9/18/2018

Parallel Fault Sim. Example Bit 0: fault-free circuit Bit 1: circuit with c s-a-0 Bit 2: circuit with f s-a-1 1 1 1 c s-a-0 detected a 1 0 1 1 1 1 1 0 1 b e 1 0 1 c s-a-0 g 0 0 0 d f s-a-1 0 0 1 9/18/2018

Deductive Fault Simulation One-pass simulation Each line k contains a list Lk of faults detectable on k Following true-value simulation of each vector, fault lists of all gate output lines are updated using set-theoretic rules, signal values, and gate input fault lists PO fault lists provide detection data Limitations: Set-theoretic rules difficult to derive for non-Boolean gates Gate delays are difficult to use 9/18/2018

Deductive Fault Sim. Example Notation: Lk is fault list for line k kn is s-a-n fault on line k Le = La U Lc U {e0} = {a0 , b0 , c0 , e0} 1 {a0} a {b0 , c0} 1 e b 1 {b0} c 1 g f d Lg = (Le Lf ) U {g0} = {a0 , c0 , e0 , g0} U {b0 , d0} {b0 , d0 , f1} Faults detected by the input vector 9/18/2018

Concurrent Fault Simulation Event-driven simulation of fault-free circuit and only those parts of the faulty circuit that differ in signal states from the fault-free circuit. A list per gate containing copies of the gate from all faulty circuits in which this gate differs. List element contains fault ID, gate input and output values and internal states, if any. All events of fault-free and all faulty circuits are implicitly simulated. Faults can be simulated in any modeling style or detail supported in true-value simulation (offers most flexibility.) Faster than other methods, but uses most memory. 9/18/2018

Conc. Fault Sim. Example a0 b0 c0 e0 a0 b0 c0 e0 b0 d0 f1 g0 f1 d0 a e 1 1 1 1 1 a 1 1 1 e b 1 c 1 1 g 1 a0 b0 c0 e0 d f 1 1 1 1 b0 d0 f1 g0 f1 d0 1 1 1 9/18/2018

Other Fault Simulation Algorithms Parallel pattern single fault simulation (PPSFP) Simulate many vectors in parallel Inject only one fault – hence one event Simulate the circuit from the fault site Limitation – well suited for combinational circuits only 9/18/2018

Fault Sampling A randomly selected subset (sample) of faults is simulated. Measured coverage in the sample is used to estimate fault coverage in the entire circuit. Advantage: Saving in computing resources (CPU time and memory.) Disadvantage: Limited data on undetected faults. 9/18/2018

Motivation for Sampling Complexity of fault simulation depends on: Number of gates Number of faults Number of vectors Complexity of fault simulation with fault sampling depends on: 9/18/2018

Random Sampling Model Detected Undetected fault fault All faults with a fixed but unknown coverage Random picking Np = total number of faults (population size) C = fault coverage (unknown) Ns = sample size Ns << Np c = sample coverage (a random variable) 9/18/2018

Probability Density of Sample Coverage, c (x--C )2 -- ------------ 1 2s 2 p (x ) = Prob(x < c < x +dx ) = -------------- e s (2 p) 1/2 C (1 - C) Variance, s 2 = ------------ Ns Sampling error s s p (x ) Mean = C x C -3s x C +3s 1.0 C Sample coverage 9/18/2018

Sampling Error Bounds C (1 - C ) | x - C | = 3 [ -------------- ] 1/2 Ns Solving the quadratic equation for C, we get the 3-sigma (99.7% confidence) estimate: 4.5 C 3s = x ------- [1 + 0.44 Ns x (1 - x )]1/2 Ns Where Ns is sample size and x is the measured fault coverage in the sample. Example: A circuit with 39,096 faults has an actual fault coverage of 87.1%. The measured coverage in a random sample of 1,000 faults is 88.7%. The above formula gives an estimate of 88.7% 3%. CPU time for sample simulation was about 10% of that for all faults. 9/18/2018

Summary Fault simulator is an essential tool for test development. Concurrent fault simulation algorithm offers the best choice. For restricted class of circuits (combinational and synchronous sequential with only Boolean primitives), differential algorithm can provide better speed and memory efficiency (Section 5.5.6.) For large circuits, the accuracy of random fault sampling only depends on the sample size (1,000 to 2,000 faults) and not on the circuit size. The method has significant advantages in reducing CPU time and memory needs of the simulator. 9/18/2018