Fault Modeling

essing Faults
missing contact windows
parasitic transistors
oxide breakdown
Material Defects
bulk defects (cracks, crystal imperfections)
surface impurities (ion migration)
Time-Dependent Failures
dielectric breakdown
electromigration
Packaging Failures
contact degradation
seal leaks Fault model.3
Faults, Errors and Failures
Fault: A physical defect within a circuit or a system
May or may not cause a system failure
Error: Manifestation of a fault that results in incorrect
circuit (system) outputs or states
Caused by faults
Failure: Deviation of a circuit or system from its
specified behavior
Fails to do what it should do
Caused by an error
Fault ---> Error ---> Failure Fault model.4
Why Model Faults ? Fault model identifies target faults Model faults most likely to occur Fault model limits the scope of test
generation Create tests only for the modeled faults Fault model makes effectiveness measurable
by experiments Fault coverage can be computed for specific test patterns
to reflect its effectiveness Fault model makes analysis possible Associate specific defects with specific test patterns Fault model.5
Fault Models
Stuck-At Faults
Bridging Faults
Transistor Stuck-On/Open Faults
Functional Faults
Memory Faults
PLA Faults
Delay Faults
State Transition Faults Fault model.6
Single
Stuck-At Faults
0
1
1
1
0
1/0
1/ 0
stuck-at-0
Fault-free Response
Test Vector
Faulty Response
Assumptions:
Only one line is faulty.
Faulty line permanently set to 0 or 1.
Fault can be at an input or output of
a gate. Fault model.7
Multiple Stuck-At Faults Several stuck-at faults occur at the same time Important in high density circuits For a circuit with k lines there are
2k
single stuck-at faults there are
3
k
-1
multiple stuck-at faults Fault model.8
Why Single Stuck-At Fault Model?
Complexity is greatly reduced.
Many different physical defects may be modeled by the same logical
single stuck-at fault.
Single stuck-at fault is technology independent.
Can be applied to TTL, ECL, CMOS, etc.
Single stuck-at fault is design style independent.
Gate Arrays, Standard Cell, Custom VLSI
Even when single stuck-at fault does not accurately
model some physical defects, the tests derived for logic
faults are still valid for most defects.
Single stuck-at tests cover a large percentage of
multiple stuck-at faults. Fault model.9
Bridging Faults
A
B
f
g
A
B
f
g
A
B
f
g
A
B
f
g Two or more normally distinct points (lines)
are shorted together Logic effect depends on technology Wired-AND for TTL Wired-OR for ECL CMOS ? Fault model.10
CMOS Transistor Stuck-ON
0
stuck-on
?
IDDQ
Transistor stuck-on may cause
ambiguous logic level.
When input is low, both P and N
transistors are conducting causing
increased quiescent current, called
IDDQ fault.
depends on the relative impedances
of the pull-up & pull-down networks Fault model.11
CMOS Transistor Stuck-OPEN
0
stuck-open
?
= previous state
Transistor stuck-open may cause
output floating. Fault model.12
CMOS Transistor Stuck-OPEN (Cont.)
10
stuck-open
01/00
Initialization
vector
memory
behaviour
Can turn the circuit into a sequential one
Stuck-open faults require two-vector tests Fault model.13
Functional Faults
Fault effects modeled at a higher level
than logic for function modules, such as
Decoders
Multiplexers
Adders
Counters
RAMs
ROMs Fault model.14
Functional Faults of Decoder
f(L
i
/L
j
): Instead of line L
i
, Line L
j
is selected
f(L
i
/L
i
+L
j
): In addition to L
i
, L
j
is selected
f(L
i
/0): None of the lines are selected
2-bit
Decoder
A
B
AB
AB
AB
AB Fault model.15
Memory Faults Parametric Faults Output Levels Power Consumption Noise Margin Data Retention Time Functional Faults Stuck Faults in Address Register, Data Register,
and Address Decoder Cell Stuck Faults Adjacent Cell Coupling Faults Pattern-Sensitive Faults Fault model.16
Memory Faults (Cont.) Pattern-sensitive faults: the presence of a
faulty signal depends on the signal values
of the nearby points Most common in DRAMs Adjacent cell coupling faults Pattern sensitivity between a pair of cells
0 0 0
0 d b
0 a 0
a=b=0 d=0
a=b=1 d=1 Fault model.17
PLA Faults
Stuck Faults
Crosspoint Faults
- Extra/Missing Transistors
Bridging Faults
Break Faults Fault model.18
Missing Crosspoint Faults in PLA
A
B
C
f1 f2
A
B
C
f1
f2
Growth
Disappearance
s-a-1
s-a-0
Missing crosspoint in AND-array
- Growth fault
Missing crosspoint in OR-array
- Disappearance fault
Equivalent stuck fault representation Fault model.19
Extra Crosspoint Faults in PLA
Extra crosspoint in AND-array
- Shrinkage or disappearance fault
Extra crosspoint in OR-array
- Appearance fault
Equivalent stuck fault representation
A
B
C
f1 f2
A
B
C
f1
f2
Disapp.
"1"
Shrinkage
"0"
Appearance Fault model.20
Gate-Delay-Fault Slow to rise, slow to fall x is slow to rise when channel resistance R1 is
abnormally high
VDD
VDD
C L
X
X
L ---> H
R1 Fault model.21
Gate-Delay-Fault

Disadvantage:
Delay faults resulting from the sum
of several small incremental delay
defects may not be detected.
slow Fault model.22
Path-Delay-Fault
Propagation delay of the path exceeds
the clock interval.
The number of paths grows exponentially
with the number of gates. Fault model.23
State Transition Graph
Each state transition is associated with a 4-tuple:
(source
state, input, output, destination state)
S2
S3
S1
I2/O2
I1/O1 Fault model.24
Single State Transition Fault Model
S2
S3
S1
I/O
I/O
A fault causes a single state transition
to a wrong destination state. Fault model.25
Fault Detection A test (vector) t detects a fault f iff t detects f <=> Example
x
X1
X2
X3
Z
1
Z
2
s-a-1
Z
1=X1X2
Z
2=X2X3
Z
1<i>f =X1
Z
2<i>f =X2X3
z t
( )
z
f
t
( )
=
1
The test 001 detects f because
z
1
(001)=0 while
z
1<i>f
(001)=1



( )  
( ) Fault model.26
Sensitization

z
(1011)=0
z
f
(1011)=1
1011 detects the fault f (G
2
stuck-at 1)
v/v
f
: v = signal value in the fault free circuit
v
f
= signal value in the faulty circuit
X1
X2
X3
X4
G1
G2
G3
G4
1
0
1
1
1
s-a-1
0/1
1
0/1
0/1
z Fault model.27
Sensitization A test t that detects a fault f Activates f (or generate a fault effect) by creating
different v and v
f
values at the site of the fault Propagates the error to a primary output w by making all
the lines along at least one path between the fault site
and w have different v and v
f
values A line whose value in the test changes in the
presence of the fault f is said to be sensitized
to the fault f by the test A path composed of sensitized lines is called
a sensitized path Fault model.28
Detectability A fault f is said to be detectable if there
exists a test t that detects f ; otherwise,
f is an undetectable fault For an undetectable fault f No test can simultaneously activate f and create a
sensitized path to a primary output
z
f
x
( )
=
z x
( ) Fault model.29
Undetectable Fault G
1
output stuck-at-0 fault is undetectable Undetectable faults do not change the function of the
circuit The related circuit can be deleted to simplify the circuit
x
s-a-0
a
b
c
z
G1
1/0
1
1
0
0
0
1
??? Fault model.30
Test Set Complete detection test set: A set of tests
that detect any detectable faults in a class
of faults The quality of a test set is measured by fault
coverage Fault coverage: Fraction of faults that are
detected by a test set The fault coverage can be determined by fault
simulation >95% is typically required for single stuck-at fault model >99.9% in IBM Fault model.31
Fault Equivalence A test t distinguishes between faults

and if Two faults, & are said to be equivalent
in a circuit , iff the function under is equal
to the function under for any input
combination (sequence) of the circuit. for all
t No test can distinguish between

and
Any test which detects one of them detects all of them t
(
t
(
z
)
z
)
z t
( )
=
z t
( ) Fault model.32
Fault Equivalence AND gate: all s-a-0 faults are equivalent OR gate: all s-a-1 faults are equivalent NAND gate: all the input s-a-0 faults and the output
s-a-1 faults are equivalent NOR gate: all input s-a-1 faults and the output
s-a-0 faults are equivalent Inverter: input s-a-1 and output s-a-0 are equivalent
input s-a-0 and output s-a-1 are equivalent Fault model.33
Equivalence Fault Collapsing n+2 instead of 2n+2 faults need to be
considered for an n</i>-input gate.
s-a-1
s-a-1
s-a-1
s-a-1
s-a-1
s-a-1
s-a-1
s-a-1
s-a-0
s-a-0
s-a-0
s-a-0
s-a-0
s-a-0
s-a-0
s-a-0