ICTEST2
ICTEST2
Testing
Fault Modeling
Outline
• Vocabulary: defects, errors and faults
• Fault models
• Fault equivalence
– equivalence collapsing
• Fault dominance
• Exercise Problems
Defects, errors and faults
• Defect unintended difference between the implemented
hardware and its intended design
– hardware, physical level
• Error wrong output signal produced by a defective system
• Fault representation of a defect at the abstracted function level
– functional level VDD
C
Defect: short to ground
B T2
Fault: stuck-at logic 0
Error: if A=1 and B=1 then C=1
T1
correct output is C=0
• Testing can not address any sort of defect, a subset of target fault
must be derived. The testing algorithms will target to detecting this
subset
– generation and evaluation of test vectors
but …
• test is and AND, and not any of the others. The number of Boolean
functions that can be generated with a 10-input gate equals 2 1024
Functional vs. structural testing (2)
• Functional test of a 10-input AND gate would demand testing for all input
patterns, i.e. 210
1
0
1 These are the only valid conclusions that may be
0
1 taken, since the output violates the truth table of
0
0 NAND and OR
1
0
1
0
what can be concluded out of this test ? … Gate under test is
• an AND
• not a NAND
• not an OR
• not a NOR
The full functional test must allow to conclude that the gate under test is
and AND, and not any of the others. The number of Boolean functions that
can be generated with a 10-input gate equals 21024
The full functional test of the M6800 8-bit microprocessor (1975, 2MHz, 75 instructions, 7000
transistors) was estimated to take about
… two million years !
Functional vs. Structural Testing (3)
• Structural test do not focus on the fonction implemented by a
circuit, but on its structure
– gates Function A
– interconnects out
– netlist
Function B
in1 out
in2
notice that the stem (b) and fanout branches (e and f) of a net are
considered independently
Single stuck-at fault model applied in a
VDD
NAND gate
preliminary remark: in the rest of this class, we will apply stuck-at models one abstraction level
A higher, i.e. RTL or gate-level
1
A
B
0
s-a-0
– the error that has been activated must propagate to an observation point, a
primary output or a latch where it is memorized
in order to propagate to an observation point, all off-path gate inputs must be set
to non-controlling values
True response
0 Faulty response
e
0 G1
0
1 (0)
G3
Only vector 11 will 1 f 1 (0)
activate the fault: 1 G2
10, 01, 00 will not. s-a-0
• Fault equivalence Two faults f1 and f2 are equivalent if all tests that
detect f1 also detect f2
Fault equivalence (2)
• Considering an n-bit input, single output, fault-free circuit which performs
f0 (V), where V is an n-bit input Boolean vector
In the presence of two individual faults 1 and 2, the circuit output function
changes to f1 (V) and f2 (V) respectively
• i.e. V activates fault 1 and fault 2
• The two faulty functions are indistinguishable iff the faults have the same
set of tests:
f1 (V ) f 2 (V ) 0
•
• : XOR
• for all 2n V vectors
Fault equivalence: analysis of NAND
fault
fault collapsing
• A Boolean gate has several faults located at its inputs and output
– only one of the faults determined to be equivalent is kept
– a fault located at the output of the gate is kept, if it is determined to be
equivalent to faults located at any input of the gate
h sa1 sa0
sa0 sa1
c f
sa1 sa0
sa1 sa0
10
collapse ratio = = 0.555
18
Fault dominance
• If all tests of fault F1 detect another fault F2, then F2 is said to dominate
F1
All tests of F2
001
F1 All tests of F1 (single)
F2 110 010
s-a-1 also detects F2
s-a-1 000
101 011
100
F2 dominates F1
the algorithm proceeds from output through the netlist to the inputs
1. NOT, buffer, wire: remove output faults, keep both fault types on input
2. no collapsing is possible for fanout
Dominance fault collapsing in a 3-input AND gate
s-a-1
s-a-1
s-a-1 s-a-0
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
a d
g
e
Total fault sites = 9
b z
Checkpoints ( ) = 5
f
h
c
h sa1 sa0
sa0 sa1
c f
sa1 sa0
sa1 sa0
Dominance fault collapsing example (2)
dominance dominance dominance
collapsing layer 1: collapsing layer 2: collapsing layer 3:
h sa1 sa0
sa0 sa1
c f
sa1 sa0 9
sa1 sa0 collapse ratio = = 0.5
18
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
a d
g
e
Total fault sites = 9
b z
Checkpoints ( ) = 5
f
h
c
F2
A s-a-1
s-a-1 Z=AB
B F3 all other individual single
F1 stuck-at faults are
detected by vectors 00,
Y=A+B 01 and 10
s-a-1
A 0 1 (0)
1
B 1 Z
1 s-a-0
C 0 (1)
vector 1
time=t
T1
Stuck-short example
Stuck-short: impossible to turn transistor out of current conducting state;
thus, in some configurations of the input, a short is created,
which should not be the case in CMOS
A IDDQ path in
1 T4 T3
faulty circuit
Z
B
1 T2
vector 1
time=t
T1
Bridging faults
• A bridging fault represents a short between a group of signals
A+C
A D
B E
C
A+C
Redundancy and untestable faults
• Redundant fault any fault that does not modify the input-output function
of the circuit is called redundant fault
B
The circuit after removing the redundant fault