ECE 156B Fault Model and Fault Simulation

Similar documents
VLSI Test Technology and Reliability (ET4076)

Testing Digital Systems I

VLSI Testing. Fault Simulation. Virendra Singh. Indian Institute of Science Bangalore

12. Use of Test Generation Algorithms and Emulation

CPE 628 Chapter 4 Test Generation. Dr. Rhonda Kay Gaede UAH. CPE Introduction Conceptual View. UAH Chapter 4

Mentor Graphics Tools for DFT. DFTAdvisor, FastScan and FlexTest

VLSI Testing. Virendra Singh. Bangalore E0 286: Test & Verification of SoC Design Lecture - 7. Jan 27,

VLSI Test Technology and Reliability (ET4076)

Fault Simulation. Problem and Motivation

Faults, Testing & Test Generation

Contents 1 Basic of Test and Role of HDLs 2 Verilog HDL for Design and Test

Lecture 3 - Fault Simulation

structure syntax different levels of abstraction

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this

VLSI Test Technology and Reliability (ET4076)

Lecture 7 Fault Simulation

Metodologie di progetto HW Il test di circuiti digitali

Metodologie di progetto HW Il test di circuiti digitali

Preizkušanje elektronskih vezij

Digital VLSI Testing Prof. Santanu Chattopadhyay Department of Electronics and EC Engineering India Institute of Technology, Kharagpur.

VLSI Test Technology and Reliability (ET4076)

UNIT IV CMOS TESTING

VLSI System Testing. Fault Simulation

Introduction to Verilog design. Design flow (from the book) Hierarchical Design. Lecture 2

CHAPTER 1 INTRODUCTION

Introduction to Verilog design. Design flow (from the book)

VLSI Testing. Lecture Fall 2003

Digital Integrated Circuits

IMPLEMENTATION OF AN ATPG USING PODEM ALGORITHM

N-Model Tests for VLSI Circuits

Design and Synthesis for Test

ECE 2300 Digital Logic & Computer Organization. More Sequential Logic Verilog

ECE 4514 Digital Design II. Spring Lecture 20: Timing Analysis and Timed Simulation

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay

EE595. Part VIII Overall Concept on VHDL. EE 595 EDA / ASIC Design Lab

Part II: Laboratory Exercise

VLSI Test Technology and Reliability (ET4076)

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

Custom Design Formal Equivalence Checking Based on Symbolic Simulation. Overview. Verification Scope. Create Verilog model. Behavioral Verilog

At-Speed Scan Test with Low Switching Activity

6 DESIGN FOR TESTABILITY I: FROM FULL SCAN TO PARTIAL SCAN

I 3 I 2. ! Language of logic design " Logic optimization, state, timing, CAD tools

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Midterm Examination CLOSED BOOK

Chapter 9. Design for Testability

ECE 2300 Digital Logic & Computer Organization. More Verilog Finite State Machines

COEN-4730 Computer Architecture Lecture 12. Testing and Design for Testability (focus: processors)

ECEU530. Schedule. ECE U530 Digital Hardware Synthesis. Datapath for the Calculator (HW 5) HW 5 Datapath Entity

Focus On Structural Test: AC Scan

ECE331: Hardware Organization and Design

ECE260B CSE241A Winter Logic Synthesis

Design Verification and Test of Digital VLSI Circuits NPTEL Video Course. Module-VIII Lecture-I Fault Simulation

Beyond Soft IP Quality to Predictable Soft IP Reuse TSMC 2013 Open Innovation Platform Presented at Ecosystem Forum, 2013

Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG

Overview ECE 753: FAULT-TOLERANT COMPUTING 1/21/2014. Recap. Fault Modeling. Fault Modeling (contd.) Fault Modeling (contd.)

EECS150 - Digital Design Lecture 20 - Finite State Machines Revisited

3. Formal Equivalence Checking

L2: Design Representations

TIMING-INDEPENDENT TESTING OF CROSSTALK IN THE PRESENCE OF DELAY PRODUCING DEFECTS USING SURROGATE FAULT MODELS *

ECE 587 Hardware/Software Co-Design Lecture 11 Verification I

Overview ECE 753: FAULT-TOLERANT COMPUTING 1/23/2014. Recap. Introduction. Introduction (contd.) Introduction (contd.)

EE 4755 Digital Design Using Hardware Description Languages

CMOS Testing: Part 1. Outline

In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design

In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design

TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES

The Embedded computing platform. Four-cycle handshake. Bus protocol. Typical bus signals. Four-cycle example. CPU bus.

BIST is the technique of designing additional hardware and software. features into integrated circuits to allow them to perform self testing, i.e.

Marrying Formal Methods With Simulation-Based Verification Function Verification Research at UCSB. Tim Cheng & Li-C. Wang UC-Santa Barbara

Pak. J. Biotechnol. Vol. 14 (Special Issue II) Pp (2017) Keerthiga D.S. and S. Bhavani

By Matthew Noonan, Project Manager, Resource Group s Embedded Systems & Solutions

Very Large Scale Integration (VLSI)

CS2204 DIGITAL LOGIC & STATE MACHINE DESIGN FALL 2005

EE5780 Advanced VLSI CAD

Data Cache Final Project Report ECE251: VLSI Systems Design UCI Spring, 2000

TESTING TRI-STATE AND PASS TRANSISTOR CIRCUIT STRUCTURES. A Thesis SHAISHAV PARIKH

Collapsing for Multiple Output Circuits. Diagnostic and Detection Fault. Raja K. K. R. Sandireddy. Dept. Of Electrical and Computer Engineering,

Hardware Modeling using Verilog Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Fault-Tolerant Computing

An overview of standard cell based digital VLSI design

l Some materials from various sources! n Current course textbook! Soma 1! Soma 3!

High Speed Fault Injection Tool (FITO) Implemented With VHDL on FPGA For Testing Fault Tolerant Designs

Lab Instructions. Design for Test of Digital Systems TDDC33. Date of last revision 24/08/ Dimitar Nikolov, IDA/SaS ESLAB

L5: Simple Sequential Circuits and Verilog

falling edge Intro Computer Organization

101-1 Under-Graduate Project Digital IC Design Flow

Multiple Fault Models Using Concurrent Simulation 1

L5: Simple Sequential Circuits and Verilog

24. New Directions in Verification

ECE 2300 Digital Logic & Computer Organization. More Verilog Finite State Machines

Digital Design Methodology

Introduction. Sungho Kang. Yonsei University

Verilog Tutorial. Verilog Fundamentals. Originally designers used manual translation + bread boards for verification

Verilog Tutorial 9/28/2015. Verilog Fundamentals. Originally designers used manual translation + bread boards for verification

L5: Simple Sequential Circuits and Verilog

Digital Design Methodology (Revisited) Design Methodology: Big Picture

Lab. Course Goals. Topics. What is VLSI design? What is an integrated circuit? VLSI Design Cycle. VLSI Design Automation

Implementation of FPGA for Decision Making for IC S Library

Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool

L5: Simple Sequential Circuits and Verilog

Nanometer technologies enable higher-frequency designs

Transcription:

ECE 156B Fault Model and Fault Simulation Lecture 6 ECE 156B 1

What is a fault A fault is a hypothesis of what may go wrong in the manufacturing process In fact, a fault model is not trying to model the mechanism of a manufacturing defect Instead, it is a model for us to go after So that 99% fault coverage gives us confidence that we have covered most of the defects A fault model is a guidance It facilitates test generation Practical fault models are mostly defined at the gate level Simulation at transistor level is just too costly ECE 156B 2

The single stuck-at fault model Stuck-at 0 Every signal line (including input and output) of a design can either stuck-at 0 or stuck-at 1 A fault is defined as signal line x stuck-at a So n lines have 2n stuck-at faults ECE 156B 3

How many SA faults to consider? Although we have 2n faults, many of them are either covered by others or equivalent to other faults So, we use the following two concepts to reduce the number of faults to consider Fault Equivalence The condition to set a test for fault x is the same for fault y Then, we say x and y are equivalent Fault Dominance The condition to set a test for fault x guarantees that fault y can always be detected Then, we say y is dominated (covered) by x In this case, we just need to consider x ECE 156B 4

How to test a fault a b Stuck-at 0 c To set the condition for testing b stuck-at 0, you will need to set a=1 b=1 If b-sa-0 does occur, you will see c=0 If b-sa-0 does not occur, you will see c=1 So you know, a test must be able to differentiate between the good circuit from the faulty circuit ECE 156B 5

a test In general 0 1 0 1 1 a b Stuck-at 0 c Can a difference be observed? 1 A test is applied If b-sa-0 does occur, you will observe a at one of the outputs If b-sa-0 does not occur, you will observe not(a) at that particular output So you have a way to tell if b-sa-0 occurs or not by applying the test You need to simulate a given test to see if it can actually detect a given stuck-at fault (can any difference be produced at an output?) ECE 156B 6

Think of a fault as a set of tests f1 f2 Tests detect both Total test space is 2^n ECE 156B 7

Equivalence and Dominance f1,f2 f2 f1 Tests to detect f1 is the same as tests to detect f2 (equivalence) Detecting f1 guarantees detecting f2 ECE 156B 8

a b An Example How many faults? (a-sa-0, a-sa-1, b-sa-0, b-sa-1, c- sa-0, c-sa-1) Total 6 faults a-sa-1 dominates c-sa-1 b-sa-1 dominates c-sa-1 c-sa-0 is equivalent to a-sa-0 c-sa-0 is equivalent to b-sa-0 a-sa-0 is equivalent to b-sa-0 So you need only consider 3 faults a-sa-1, b-sa-1, a-sa-0 or b-sa-0 or c-sa-0 c ECE 156B 9

Re-convergent fanout f g d h d stuck-at fault is not the same as e stuck-at To detect d stuck-at, you need to set g=1 To detect e stuck-at, you need to set h=1 f stuck-at fault is not the same as d s and e s f stuck-at can be detected by either setting g=1 or setting h=1 or both Detecting f stuck-at does not guarantee detecting either d s stuck-at or e s stuck-at However, detecting either d s stuck-at or e s stuck-at guarantees detecing f s stuck-at So, e s stuck-at dominates f s stuck-at; so does d s stuck-at e ECE 156B 10

Other Fault Model f g d h e One line is short with another line Define it is an OR bridge or an AND bridge Given n lines, consider nc 2 (*2) bridging faults People often use layout tool to extract coupling capacitance between wires and then decide if the pair should be included or not ECE 156B 11

Other Fault Model f g d h e h is supposed to transition from 0 to 1, and is stuck-at 0 without making the transition This is called a rising transition fault You can look at it as transition with a stuck-at We need a pair of vectors to detect this fault First, set h to 0 Second, provide a vector to detect h stuck-at 0 ECE 156B 12

Prior Study If you can provide a high fault coverage for stuck-at faults, you will have a high fault coverage for bridging faults Hence, there is no need to explicitly prepare tests for bridging faults If you can provide a good fault coverage for stuck-at faults, you will have a good fault coverage for transition faults But may not be enough Transition faults have to be tested with a fixed clock frequency Transition fault coverage is treated as a separate quality measurement but not bridging fault coverage Industrial delay testing is based on transition faults ECE 156B 13

Fault Simulation C A a 0 1 c 1/0 Z1 B 1 Z2 b 1 c s-a-0 ABC=111, a test 1/0 is denoted as D, (0/1 is noted as D-bar) ECE 156B 14

Fault Simulation In general, the complexity of fault simulation is n times higher than logic simulation If you have n faults in the fault set It is an extremely time consuming process Hence, you can only do it at gate level Rarely this is done at transistor level Fault simulation can be combinational or sequential Unlike ATPG, the complexity of these two are not that different For verification, fault simulation is generally not used because of the high complexity They want something at RTL, rather than gate-level ECE 156B 15

Parallel Fault Simulation 2-bit to simulate 1 fault So, you can use 00, 01, 10, 11 to denote 0, D- bar, D, and 1 Each fault is simulated independently In one run, you can simulate 16 faults To see if the vector detect them ECE 156B 16

Fault Coverage Fault Coverage = (total faults detected)/(total number of faults) The total number of faults usually discounts the equivalent and dominated faults FC 100% A typical FC curve tests ECE 156B 17

Better FC 100% better worse unfinished A typical FC curve tests Shorter test length and higher fault coverage is better But you want to make sure that the tests are running out of steam (getting flat curve) ECE 156B 18

General Use of Fault Simulation Generate initial test set T Fault simulate T Produce more tests Enough fault coverage? n y done You set a fault coverage goal, and Either you achieve it Or you run out of resources ECE 156B 19

FlexTest Mentor Graphics has a sequential ATPG tool called FlexTest Inside FlexTest, there is a sequential stuck-at fault simulation Once you have the Verilog gate-level model and the input/output test patterns for a particular block You can run this block with FlexTest If you are interested, ask your TAs ECE 156B 20