Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault.

Slides:



Advertisements
Similar presentations
Digital Integrated Circuits© Prentice Hall 1995 Design Methodologies Design for Test.
Advertisements

Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Design Representation and Fault Detection
Design for Testability (DfT)
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 261 Lecture 26 Logic BIST Architectures n Motivation n Built-in Logic Block Observer (BILBO) n Test.
1 EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
CSE241 Formal Verification.1Cichy, UCSD ©2003 CSE241A VLSI Digital Circuits Winter 2003 Recitation 6: Formal Verification.
Copyright 2005, Agrawal & BushnellVLSI Test: Lecture 21alt1 Lecture 21alt BIST -- Built-In Self-Test (Alternative to Lectures 25, 26 and 27) n Definition.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 71 Lecture 7 Fault Simulation n Problem and motivation n Fault simulation algorithms n Serial n Parallel.
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.
Design for Testability Theory and Practice Lecture 11: BIST
4/27/2006 ELEC7250: White 1 ELEC7250 VLSI Testing: Final Project Andrew White.
Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.
4/20/2006ELEC7250: Alexander 1 LOGIC SIMULATION AND FAULT DIAGNOSIS BY JINS DAVIS ALEXANDER ELEC 7250 PRESENTATION.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
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.
Technical University Tallinn, ESTONIA Overview: Testability Evaluation Outline Quality Policy of Electronic Design Tradeoffs of Design for Testability.
Design for Testability
Fast Spectral Transforms and Logic Synthesis DoRon Motter August 2, 2001.
Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault.
Digitaalsüsteemide verifitseerimise kursus1 Formal verification: BDD BDDs applied in equivalence checking.
Unit II Test Generation
VLSI Testing Lecture 7: Combinational ATPG
Technical University Tallinn, ESTONIA 1 Boolean derivatives Calculation of the Boolean derivative: Given:
TOPIC : Types of fault simulation
Design for Testability
Mugil Vannan H ST Microelectronics India Pvt. Ltd, Noida
Technical University Tallinn, ESTONIA Copyright by Raimund Ubar 1 Raimund Ubar Tallinn Technical University D&T Laboratory Estonia Hierarchical.
Technical University Tallinn, ESTONIA 1 Faults in Circuits and Fault Diagnosis 0110 T FaultF 5 located Fault table Test experiment Test generation.
Digital Logic Problems (II) Prof. Sin-Min Lee Department of Mathematics and Computer Science.
Logic BIST Logic BIST.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Technical University Tallinn, ESTONIA Overview about Testing of Digital Systems 0110 T Fault table Test generation Fault simulation Fault modeling.
6/5/2016 Based on text by S. Mourad "Priciples of Electronic Systems" Digital Testing: Fault Simulation.
Technical University Tallinn, ESTONIA Introduction: The Problem is Money? Cost of testing Quality Cost of quality Cost Cost of the fault 100% 0% Optimum.
DDECS Stara Lesna, Slovakia, April 20, 2004 Tallinn Technical University D&T Education & Training in Europe What are the Main Challenges? Some thoughts.
ECE 260B – CSE 241A Testing 1http://vlsicad.ucsd.edu ECE260B – CSE241A Winter 2005 Testing Website:
Technical University Tallinn, ESTONIA Copyright by Raimund Ubar 1 Raimund Ubar Tallinn Technical University D&T Laboratory Estonia Hierarchical.
Technical University Tallinn, ESTONIA Copyright by Raimund Ubar 1 Raimund Ubar Tallinn Technical University D&T Laboratory Estonia Test Generation.
Technical University Tallinn, ESTONIA 1 Overview: Fault Modelling Faults, errors and defects Stuck-at-faults (SAF) Fault equivalence and fault dominance.
TOPIC : Introduction to Fault Simulation
An introduction to Fault Detection in Logic Circuits By Dr. Amin Danial Asham.
2. Sissejuhatus teooriasse
Technical University Tallinn, ESTONIA Copyright by Raimund Ubar 1 Raimund Ubar N.Mazurova, J.Smahtina, E.Orasson, J.Raik Tallinn Technical University.
Technical University Tallinn, ESTONIA Test generation Gate-level methods  Functional testing: universal test sets  Structural test generation  Path.
Technical University Tallinn, ESTONIA Component level dy Defect mapping Hierarchical Test Generation x1x1 x2x2 x3x3 x4x4 x5x5 System level WdWd Logic level.
Abdul-Rahman Elshafei – ID  Introduction  SLAT & iSTAT  Multiplet Scoring  Matching Passing Tests  Matching Complex Failures  Multiplet.
Technical University Tallinn, ESTONIA 1 Raimund Ubar TTÜ Tallinn, 21. mai 2003 Kuidas tagada kvaliteeti üha keerukamates.
Manufacture Testing of Digital Circuits
Technical University Tallinn, ESTONIA Copyright by Raimund Ubar 1 Raimund Ubar Tallinn Technical University D&T Laboratory Estonia Hierarchical.
Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault.
Technical University Tallinn, ESTONIA 1 Raimund Ubar TTÜ Tallinn, 21. mai 2003 Hästitestitavad ja isetestivad digitaalsüsteemid.
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
On the Relation Between Simulation-based and SAT-based Diagnosis CMPE 58Q Giray Kömürcü Boğaziçi University.
Faults in Circuits and Fault Diagnosis
Tallinn Technical University
Hardware Testing and Designing for Testability
VLSI Testing Lecture 6: Fault Simulation
Algorithms and representations Structural vs. functional test
Lecture 7 Fault Simulation
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES
VLSI Testing Lecture 6: Fault Simulation
Defect and High Level Fault Modeling in Digital Systems
Overview: Fault Diagnosis
Automatic Test Pattern Generation
Sungho Kang Yonsei University
Lecture 26 Logic BIST Architectures
Presentation transcript:

Technical University Tallinn, ESTONIA Overview: Fault Simulation Overview about methods Low (gate) level methods Parallel fault simulation Deductive fault simulation –Gate-level fault lists propagation (library based) –Boolean full differential based (general approach) –SSBDD based (tradeoff possibility) Critical path tracing Parallel critical path tracing Hierarchical fault simulation

Technical University Tallinn, ESTONIA Testide analüüs Rikete simuleerimise eesmärgid: -Arvutada rikete kate (testi kvaliteet) -Konstrueerida rikete tabel või sõnastik Rike Test Diagnostika sõnastik Testi analüüs – rikete simuleerimine Digitaal- süsteem Stiimul Reaktsioon

Technical University Tallinn, ESTONIA Faults in Digital Circuits 0110 T FaultF 5 located Fault table Test experiment Test generation Fault simulation Fault diagnosis Fault modeling Testing How many rows and columns should be in the Fault Table?

Technical University Tallinn, ESTONIA Fault simulation Goals: Evaluation (grading) of a test T (fault coverage) Guiding the test generation process Constructing fault tables (dictionaries) Fault diagnosis Generate initial T Evaluate T Sufficient fault coverage? Modify T Done YesNo Random test generation Select target fault Generate test for target Fault simulate Discard detected faults Done No more faults Deterministic test generation

Technical University Tallinn, ESTONIA Defect and Fault Propagation An instance of an incorrect operation of the system being tested is referred to as an error The causes of the observed errors may be design errors or physical faults (defects) Physical defects do not allow a direct mathematical treatment of testing and diagnosis The solution is to deal with logical fault models System Component Defect simulation Error Fault simulation Defects, faults and errors

Technical University Tallinn, ESTONIA Fault simulation Fault simulation techniques: serial fault simulation parallel fault simulation deductive fault simulation concurrent fault simulation critical path analysis parallel critical path analysis Common concepts: fault specification (fault collaps) fault insertion fault effect propagation fault discarding (dropping) Comparison of methods: Fault table Faults F i Test patterns T j Entry (i,j) = 1(0) if F i is detectable (not detectable) by T j

Technical University Tallinn, ESTONIA Single and Parallel SAF Fault Simulation Fault-free circuit: Faulty circuit: & 1 x1x1 x2x2 x3x3 z y & 1 x1x1 x2x2 x3x3 z y Inserted stuck-at-1 fault Detected error Parallel patterns Fault-free circuit: Faulty circuit: & 1 x1x1 x2x2 x3x3 z y & 1 x1x1 x2x2 x3x3 z y Inserted stuck-at-1 fault Detected error Three test patterns Single pattern

Technical University Tallinn, ESTONIA Parallel Fault & Test Pattern Simulation Parallel patterns Fault-free circuit: Faulty circuit: & 1 x1x1 x2x2 x3x3 z y & 1 x1x1 x2x2 x3x3 z y Inserted stuck-at-1 fault Detected error Parallel faults & 1 x1x1 x2x2 x3x3 z y Stuck-at-0 Stuck-at-1 Computer word Fault-free Detected error Inserted faults Three test patterns

Technical University Tallinn, ESTONIA Deductive Fault Simulation & & a c b y Fault list calculation: L a = L 4  L 5 L b = L 1  L 2 L c = L 3  L a L y = L b - L c L y = ( L 1  L 2 ) - (L 3  (L 4  L 5 )) Gate-level fault list propagation L a – faults causing erroneous signal on the node a L y – faults causing erroneous signal on the output node y L1L1 L2L2 L3L3 L4L4 L5L5 Library of formulas for gates

Technical University Tallinn, ESTONIA Boolean derivatives Boolean function: Y = F(x) = F(x 1, x 2, …, x n ) Boolean partial derivative:

Technical University Tallinn, ESTONIA Boolean differentials dx - fault variable, dx  (0,1) dx = 1 - if the value of x has changed because of a fault Partial Boolean differential: Full Boolean differential:

Technical University Tallinn, ESTONIA Fault Simulation with Boolean Differentials & x1x1 x2x2 y {x 2  1} {x 2  1, y  1} & x1x1 x2x2 y {x 1  0} {x 2  0} {x 1  0, x 2  0, y  0} 1 x1x1 x2x2 y {x 1  0} {x 2  1} {x 1  0, y  0}

Technical University Tallinn, ESTONIA Deductive Fault Simulation with BDs & & a c b y Fault list calculated: L y = ( L 1  L 2 ) - (L 3  (L 4  L 5 )) Macro-level fault propagation: Solving Boolean differential equation:  L k A B AB A B

Technical University Tallinn, ESTONIA Critical Path Tracing & & a c b y y Problems : & & /01/0 y 1/0 1 1 The critical path is not continuous & & y 1/0 1 1 The critical path breaks on the fan-out

Technical University Tallinn, ESTONIA Fault Simulation with Boolean Derivatives & 1 x1x1 y Detected faults vector: T1: No faults detected T2: x 1  1 detected T3: x 1  0 detected T4: No faults detected x3x3 x2x2 Simulation approaches: 1)Single fault simulation 2)Parallel fault simulation for a subset of test patterns (by extending bit-operations to operations with computer words) 3)Iterative fault simulation for subsets of faults (by creating transitive closures – deductive simulation and critical path tracing) 4)Parallel fault reasoning for both, patterns and faults

Technical University Tallinn, ESTONIA Parallel Critical Path Tracing & 1 x1x1 y Detected faults vector: T1: No faults detected T2: x 1  1 detected T3: x 1  0 detected T4: No faults detected x3x3 x2x2 Handling of fanout points: Fault simulation Boolean differential calculus x y xkxk x2x2 x1x1 F

Technical University Tallinn, ESTONIA Parallel Critical Path Tracing Handling of fan-out points in a single tree in general case: x y xkxk x2x2 x1x1 F x k+1 xnxn x x 1,h x 1,h-1 x 1,2 x 1,1 x1x1 All the Boolean operations can be carried out in parallel

Technical University Tallinn, ESTONIA Parallel Critical Path Tracing Problem with fan-out points:

Technical University Tallinn, ESTONIA 1) R 1P – set of faults found by parallel critical path tracing R* = R’ 1P - R 1P - set of faults found by critical path tracing, which propagate to the next cycle R 1P R 1P ’ Time Calculation of detected faults by combining single and parallel fault simulation 2) R 2P – R* + R 2S R* = R’ 2P + R’ 2S – R 2P R 1P R 1P ’ R 2P – parallel simulation R 2S - single fault simulation R 2S R’ 2S R’ 2P – parallel simulation R’ 2S - single fault simulation Fault Simulation in Sequential Circuits

Technical University Tallinn, ESTONIA Parallel Sequential Critical Path Tracing Design for Testability based on using Signature Analyzers (SR): SR can be connected to the “problem causing” test points The fault will be captured at the first occasion. The detection of the fault will be fixed, and we can ignore its impact in the future

Technical University Tallinn, ESTONIA Non-primitive polynomial x 4 + x LFSR – Linear Feedback Shift Register xx2x2 x3x3 x4x Primitive polynomial x 4 + x + 1 xx2x2 x3x3 x4x

Technical University Tallinn, ESTONIA Pseudorandom Test with LFSR LFSR – Linear Feedback Shift Register: Polynomial: P(x) = x 4 + x x3x3 x2x2 x4x4 x Two functions: test generation and signature analysis UUT Test patterns Test responses

Research in ATI © Raimund Ubar Algorithm: 1.Determine the activated path to find the fault candidates 2.Analyze the detectability of the each candidate fault (each node represents a subset of real faults) Fault Analysis with SSBDDs x11x11 y x21x21 x12x12 x31x31 x4x4 x13x13 x22x22 x32x & & & 1 & x1x1 x2x2 x3x3 x4x4 y x11x11 x 21 x12x12 x 31 x13x13 x 22 x

Research in ATI © Raimund Ubar 24 Properties of SSBDDs Property 1: If a b ), and no 1-path (0-path) can be activated from b, then also no 1-path (0-path) from a can not be activated b a Y The task is to find a solution for Y = 1 The nodes in SSBDD are ordered: if a < b, then there is no path from b to a Test pattern generation can be speed-up using Property 1

Research in ATI © Raimund Ubar 25 Optimized Critical Path Tracing with BDDs Property 2: If a test vector X activates in SSBDD a 0-path (1-path) which travers a subset of nodes M, then only 0-nodes (1-nodes) have to be considered as fault candidates Speeding-up simulation: M = {1,2,3,4,6,7} M* = {1,6,7} – by Property 2 M** = {6,7} – by Property 1 Fault diagnosis and fault simulation can be speed-up by using Property 2 Only 6 and 7 have to be considered Fault diagnosis / Fault simulation: y y

Research in ATI © Raimund Ubar 26 Parallel Fault Simulation with SSBDDs m var x(m)D(m)L(m)S(y,x(m)) 1 X1X x2x x3x x4x x5x x6x We start from the node with the highest label m =6, and repeat for each node the vector operation (m 0 and m 1 are the neighbours of m to 0-direction and 1-direction, respectively): The result of simulation D(m) will be the value of y calculated for the root node m = 1 Parallel fault free simulation For m =6, D(m 1 ) = and D(m 0 ) = D(m) – the value of the function at the node m

Research in ATI © Raimund Ubar Parallel Fault Simulation with SSBDDs m var x(m)D(m)L(m)S(y,x(m)) 1 X1X x2x x3x x4x x5x x6x Calculation of candidates of detected faults For each test pattern, the nodes m are found where L(m) = 1 by iterative calculation: The initial values are: L(m 0 ) = and for all other nodes m i L(m i ) = The value of the vector component L k (m)=1 means that the node m was traversed by the test pattern

Research in ATI © Raimund Ubar 28 Parallel Fault Simulation with SSBDDs m var x(m)D(m)L(m)S(y,x(m)) 1 X1X x2x x3x x4x x5x x6x We find at which nodes of activated paths the faults are detected. Detectability S(y,x(m)) of faults at x(m) observable at y is calculated in parallel for a bunch of test patterns: The simulation procedure consists of two runs: 1)For D(m) starting from the last node, and 2)For L(m) and S(m) starting from the root node Parallel critical path tracing:

Research in ATI © Raimund Ubar Logic Simulation Along Hamiltonian Path Network of 3 sub-circuits: y1y1 x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 x7x7 x8x8 FFR y2y2 x3x3 x 3 x 5 x 4 x 6 x 8 x 7 x 1 x 2 x 4 x 5 y2y2 y1y1 x 1 x 2 x 5 x 1 S 3 BDD Connected full Hamiltonian path for the S3BDD model: x 8 x 7 x 6 x 5 x 4 x 2 x 1 Simulation flow x3x3 y2y2 y1y1 Simulation start Calculated intermediate values Simulation trace can be carried out in parallel for many patterns

Technical University Tallinn, ESTONIA Defect Defect is detected Fault model versions: Conditional fault Pattern fault Constrained SAF Cell aware test SAF n.. t t-1 … 0 Simulation table Test pattern number Detected SAF Transition fault not detected Transition fault detected Lines in the circuit Bridging fault detected Transition fault not detected Simulation of Diferent Classes of Faults

Technical University Tallinn, ESTONIA Hierarchical Concurrent Fault Simulation High-Level component High-Level component High-Level component Sequence of patterns P: First Pattern R: Faults Set of patterns With faults P;P 1 (R 1 )…P n ( R n ) Set of patterns with faults P;P 1 (R 1 )…P m ( R m ) P: Pattern Set of patterns with faults P;P 1 (R 1 )…P n ( R n )

Technical University Tallinn, ESTONIA Hierarchical fault simulation Main ideas of the procedure: A target block is chosen This will be represented on gate level Fault simulation is carried out on the low level The faults through other blocks are propagated on the high level

Technical University Tallinn, ESTONIA Hierarchical fault simulation

Technical University Tallinn, ESTONIA Hierarchical fault simulation Definition of the complex pattern: D = {P, (P 1,R 1 ), …, (P k, R k )} P is the fault-free pattern (value) P i (i = 1,2,..., k) are faulty patterns, caused by a set of faults R i All the faults simulated causing the same faulty pattern P i are put together in one group R i R 1 - R k are the propagated fault groups, causing, correspondingly, the faulty patterns P 1 - P k

Technical University Tallinn, ESTONIA Fault Simulation with DD-s Fault propagation through a complex RT-level component q xAxA xcxc B C A D q = {1, 0 (1,2,5), 4 (3,4)}, D xA = {0, 1 (3,5)}, D xC = {1, 0 (4,6)}, D A = {7, 3 (4,5,7), 4 (1,3,9), 8 (2,8)}, D B = {8, 3 (4,5), 4 (3,7), 6 (2,8)}, D C = {4, 1 (1,3,4), 2 (2,6), 5 (6,7)}. Decision diagram New D A to be calculated Sub-system for A A q xAxA B + C A xCxC A + C 04 xAxA A 0 xCxC A - 1 A + B

Technical University Tallinn, ESTONIA Fault Simulation with DD-s Example of high level fault simulation D q = {1, 0 (1,2,5), 4 (3,4)}, D xA = {0, 1 (3,5)}, D xC = {1, 0 (4,6)}, D A = {7, 3 (4,5,7), 4 (1,3,9), 8 (2,8)}, D B = {8, 3 (4,5), 4 (3,7), 6 (2,8)}, D C = {4, 1 (1,3,4), 2 (2,6), 5 (6,7)} Final complex vector for A: D A = {8, 3(4), 4(3,7), 5(9), 7(5), 9(1,8)}

Technical University Tallinn, ESTONIA Parallel Critical Path Tracing Handling of fan-out points in a network of nested trees: FyFy d y e D Ez c b C q A x B FzFz XyXy XzXz. where Two fanouts: q, x A,B,D,E – chains of Boolean derivatives All calculations can be carried out in parallel

Technical University Tallinn, ESTONIA Fault Simulation in Sequential Circuits Critical path tracing: F1F1 R6R6 R1R1 R2R2 R7R7 X1X1 X2X2 X3X3 F2F2 F3F3 F4F4 R8R8 R4R4 R5R5 R3R3 X4X4 F5F5 F7F7 F8F8 F6F6 R 10 X5X5 R9R9 Y2 Y1 Z1Z1 Z2Z2