Вы находитесь на странице: 1из 19

Fault M d li F lt Modeling & Si Simulation l ti

Virendra Singh
Indian I tit t f S i I di Institute of Science Bangalore virendra@computer.org E0 286: Test & Verification of SoC Design Lecture - 3
Jan 25, 2010 E0-286@SERC 1

VLSI Testing

Fault Equivalence
Number of fault sites in a Boolean gate circuit = #PI + # t #gates + # (f (fanout b t branches). h ) Fault equivalence: Two faults f1 and f2 are equivalent if all tests that detect f1 also q detect f2. If faults f1 and f2 are equivalent then the corresponding faulty functions are identical. Fault collapsing: All single faults of a logic circuit can be divided into disjoint equivalence subsets, subsets where all faults in a subset are mutually equivalent. A collapsed fault set contains one fault from each equivalence subset. subset
Jan 25, 2010 E0-286@SERC 2

Equivalence Rules
sa0 sa0 sa1 sa1 sa0 sa1 sa0 sa1

AND
sa0 sa1

sa0 sa1 sa0 sa1

OR

sa0 sa1

WIRE

sa0 sa1 sa0 sa1 sa0 sa1

NOT

sa1 sa0

NAND
sa0 sa1

0 1 sa0 sa1 sa0 sa1

NOR

sa0 sa1 sa0 sa1

sa0 sa1 sa0 sa1


3

FANOUT
Jan 25, 2010 E0-286@SERC

Equivalence Example
sa0 sa1 sa0 sa1 sa0 sa1 sa0 sa1 sa0 sa1 0 1 sa0 sa1 sa0 sa1 sa0 sa1 sa0 sa1 20 Collapse ratio = ----- = 0.625 32
E0-286@SERC 4

sa0 sa1

sa0 sa1 sa0 sa1 sa0 sa1

sa0 sa1

Faults in red removed by equivalence collapsing

sa0 sa1

sa0 sa1

Jan 25, 2010

Fault Dominance
If all tests of some fault F1 detect another fault F2, then F2 i said t d F2 th is id to dominate F1 i t F1. Dominance fault collapsing: If fault F2 do dominates F1, then F2 is removed from the ates ,t e s e o ed o t e fault list. When dominance fault collapsing is used, it is sufficient to consider only th i ffi i t t id l the input f lt of t faults f Boolean gates. See the next example. In a tree circuit (without fanouts) PI faults form a dominance collapsed fault set. If two faults dominate each other then they are equivalent. i l t
Jan 25, 2010 E0-286@SERC 5

Dominance Example
F1 s-a-1 All tests of F2 F2 s-a-1 110 101 001 000 100 010 011

s-a-1 s-a-1

Only test of F1

s-a-1 s-a-0 A dominance collapsed fault set


Jan 25, 2010 E0-286@SERC 6

Checkpoints
Primary inputs and fanout branches of a combinational circuit are called checkpoints. Checkpoint theorem: A test set that detects all single (multiple) stuck-at faults on all checkpoints of a combinational circuit, also detects all single (multiple) stuck-at faults in that circuit.
Total fault sites = 16 Checkpoints ( ) = 10

Jan 25, 2010

E0-286@SERC

Multiple Stuck-at Faults


A multiple stuck-at fault means that any set of lines is stuck at some combination of (0 1) stuck-at (0,1) values. The total number of single and multiple g p stuck-at faults in a circuit with k single fault sites is 3k-1. A single fault test can fail to detect the target fault if another fault is also present, however, such masking of one fault by another is rare. Statistically, single fault tests cover a very large number of multiple faults faults.
Jan 25, 2010 E0-286@SERC 8

Transistor (Switch) Faults


MOS transistor is considered an ideal switch and two types of faults are modeled:
Stuck-open -- a single transistor is permanently stuck in the open state state. Stuck-short -- a single transistor is permanently shorted irrespective of its gate voltage.

Detection of a stuck-open fault requires t D t ti f t k f lt i two vectors. Detection of a stuck-short fault requires the stuck short measurement of quiescent current (IDDQ).

Jan 25, 2010

E0-286@SERC

Stuck-Open Example
Vector 1: test for A s-a-0 (Initialization vector) pMOS FETs s 1 0 0 0 Vector 2 (test for A s-a-1)

VDD

A B

Stuckopen

Two-vector s-op test can b constructed b be t t d by ordering two s-at tests

1(Z) Good circuit states

nMOS FETs
Jan 25, 2010

Faulty circuit states


E0-286@SERC 10

Stuck-Short Example
Test vector for A s-a-0 pMOS FETs s 1 0

VDD
Stuckshort

A B

IDDQ path in faulty circuit

Good circuit state 0 (X)

nMOS FETs
Jan 25, 2010 E0-286@SERC

Faulty circuit state


11

Fault Model - Summary


Fault models are analyzable approximations of defects and are essential for a test methodology. For digital logic single stuck-at fault model offers best advantage of tools and experience. Many other faults (bridging, stuck-open and multiple stuck-at) are largely covered by stuck-at fault tests. Stuck-short and delay faults and technologydependent faults require special tests. Memory and analog circuits need other specialized fault models and tests tests.
Jan 25, 2010 E0-286@SERC 12

Fault Simulation

Jan 25, 2010

E0-286@SERC

13

Simulation Defined
Definition: Simulation refers to modeling of a design, its function and performance. A software simulator is a computer program; an emulator is a hardware simulator. Simulation is used for design verification:
Validate assumptions Verify logic Verify performance (timing) Logic or switch level Timing Circuit Fault

Types of simulation:

Jan 25, 2010

E0-286@SERC

14

Simulation for Verification


Specification Synthesis Response analysis y Design changes g Design ( (netlist) )

Computed responses

True-value simulation

Input stimuli

Jan 25, 2010

E0-286@SERC

15

Modeling Levels
Modeling level Function, behavior, RTL Logic Circuit description Programming language-like HDL Connectivity of Boolean gates, flip-flops and transistors Transistor size and connectivity, node capacitances Signal values 0, 1 0, 1, 0 1 X and Z Timing Clock boundary Zero delay Zero-delay unit-delay, multipledelay Zero-delay Application Architectural and functional verification Logic verification and test Logic verification g Timing verification Digital timing and analog g circuit verification
16

Switch S it h

0, 0 1 and X

Timing Circuit

g gy Transistor technology Analog voltage data, connectivity, node capacitances Tech. Data, active/ passive component connectivity Analog voltage, voltage current

Fine-grain g timing Continuous time

Jan 25, 2010

E0-286@SERC

True-Value Simulation Algorithms Al ith


Compiled-code simulation p
Applicable to zero-delay combinational logic Also used for cycle-accurate synchronous sequential g circuits for logic verification Efficient for highly active circuits, but inefficient for low-activity circuits High-level (e.g., C language) models can be used Only gates or modules with input events are g g evaluated (event means a signal change) Delays can be accurately simulated for timing verification Efficient for low-activity circuits Can be extended for fault simulation
E0-286@SERC 17

Event-driven simulation

Jan 25, 2010

Compiled-Code Algorithm
Step 1: Levelize combinational logic and encode in a compilable programming language Step 2: Initialize internal state variables (flipp ( p flops) Step 3: For each input vector Set i S t primary i input variables t i bl Repeat (until steady-state or max. iterations)
Execute compiled code

Report or save computed variables

Jan 25, 2010

E0-286@SERC

18

Thank You
Jan 25, 2010 E0-286@SERC 19

Вам также может понравиться