Professional Documents
Culture Documents
Electronic Testing
Vishwani D. Agrawal
Michael L. Bushnell
INTRODUCTION TO
TESTING
Determine requirements
Write specifications
Test development
Fabrication
Manufacturing test
Chips to customer
Essentials of Test: Agrawal & Bushnell 3
Definitions
Design synthesis: Given an I/O function, develop
a procedure to manufacture a device using
known materials and processes.
Verification: Predictive analysis to ensure that
the synthesized design, when manufactured, will
perform the given I/O function.
Test: A manufacturing step that ensures that the
physical device, manufactured from the
synthesized design, has no manufacturing
defect.
Chips +/- + -
Boards +/- + - -
System +/- + - - - -
+ Cost increase
- Cost saving
+/- Cost increase may balance cost reduction
Y (T ) = (1 + TAf / b) - b
Assuming that tests with 100% fault coverage
(T =1.0) remove all faulty chips,
Y = Y (1) = (1 + Af / b) - b
b
( b + TAf )
= 1 - --------------------
b
( b + Af )
Where T is the fault coverage of tests,
Af is the average number of faults on the
chip of area A, b is the fault clustering
parameter. Af and b are determined by
test data analysis.
October 28, 2001 Essentials of Test: Agrawal & Bushnell 30
Example: SEMATECH Chip
Bus interface controller ASIC fabricated
and tested at IBM, Burlington, Vermont
116,000 equivalent (2-input NAND) gates
304-pin package, 249 I/O
Clock: 40MHz, some parts 50MHz
0.45m CMOS, 3.3V, 9.4mm x 8.8mm area
Full scan, 99.79% fault coverage
Advantest 3381 ATE, 18,466 chips tested
at 2.5MHz test clock
Data obtained courtesy of Phil Nigh (IBM)
Vector number
Vector number
Y (1) = 0.7623
Shorts 51
Opens 1
Missing components 6
Wrong components 13
Reversed components 6
Bent leads 8
Analog specifications 5
Digital logic 5
Performance (timing) 5
f k
Test vector for h s-a-0 fault
October 28, 2001 Essentials of Test: Agrawal & Bushnell 42
Fault Equivalence
Number of fault sites in a Boolean gate circuit
= #PI + #gates + #(fanout branches).
Fault equivalence: Two faults f1 and f2 are
equivalent if all tests that detect f1 also
detect f2.
If faults f1 and f2 are equivalent then the
corresponding faulty functions are identical.
Fault collapsing: All single faults of a logic
circuits can be divided into disjoint
equivalence subsets, where all faults in a
subset are mutually equivalent. A collapsed
fault set contains one fault from each
equivalence subset.
sa0 sa1
NOT
sa1 sa0
s-a-1
s-a-1
s-a-0
A dominance collapsed fault set
Checkpoints ( ) = 10
Logic Simulation
Synthesis
Computed True-value
Input stimuli
responses simulation
FA;
A D inputs: A, B, C;
Carry
B
HA1 E F outputs: Carry, Sum;
C
HA2 Sum HA: HA1, (A, B), (D, E);
HA: HA2, (E, C), (F, Sum);
OR: O2, (D, F), (Carry);
Dc is inertial delay
Ca , Cb and Cc are of gate
parasitic capacitances
c (CMOS)
c (zero delay)
Logic simulation
c (unit delay)
X
c (multiple delay) rise=5, fall=5
Unknown (X)
c (minmax delay) min =2, max =5
0 5 Time units
Time stack
3
4 f =0
b =1 4 g=0
5
g 6 f=1 g
0 4 8
Time, t 7
8 g=1
October 28, 2001 Essentials of Test: Agrawal & Bushnell 62
Efficiency of Event-
driven Simulator
Simulates events (value changes) only
Speed up over compiled-code can be ten
times or more; in large logic circuits about
0.1 to 10% gates become active for an input
change
Steady 0
Steady 0 Large logic
block without
(no event)
0 to 1 event activity
Serial
Parallel
Deductive
Concurrent
Differential
Comparator fn detected?
Circuit with fault fn
1 1 1
c s-a-0 detected
a 1 0 1
1 1 1 1 0 1
b e 1 0 1
c s-a-0
g
0 0 0
d f s-a-1 0 0 1
d
1 0
f a0 b0 c0 e0
0 0 0 0
0 1 0 0
0 1 0 0
1 1 1
0 1 1
b0 d0 f1 0
g 1 1
d0
0 1
f1
0 1 1 1
0
October 28, 2001 Essentials of Test: Agrawal & Bushnell 77
Fault Sampling
A randomly selected subset (sample) of
faults is simulated.
Measured coverage in the sample is used
to estimate fault coverage in the entire
circuit.
Advantage: Saving in computing resources
(CPU time and memory.)
Disadvantage: Limited data on undetected
faults.
2 C (1 - C)
Variance, s = ------------
Ns Sampling
p (x )
s s
error
Mean = C
x
C -3s C x C +3s 1.0
Sample coverage
October 28, 2001 Essentials of Test: Agrawal & Bushnell 80
Sampling Error Bounds
C (1 - C ) 1/2
|x-C|=3 [ -------------- ]
N s
Solving the quadratic equation for C, we get the
3-sigma (99.7% confidence) estimate:
4.5
C 3s = x ------- [1 + 0.44 Ns x (1 - x )]1/2
Ns
Where Ns is sample size and x is the measured fault
coverage in the sample.
Example: A circuit with 39,096 faults has an actual
fault coverage of 87.1%. The measured coverage in
a random sample of 1,000 faults is 88.7%. The above
formula gives an estimate of 88.7% 3%. CPU time for
sample simulation was about 10% of that for all faults.
October 28, 2001 Essentials of Test: Agrawal & Bushnell 81
Summary
Fault simulator is an essential tool for test development.
Concurrent fault simulation algorithm offers the best
choice.
For restricted class of circuits (combinational and
synchronous sequential with only Boolean primitives),
differential algorithm can provide better speed and
memory efficiency (Section 5.5.6.)
For large circuits, the accuracy of random fault sampling
only depends on the sample size (1,000 to 2,000 faults)
and not on the circuit size. The method has significant
advantages in reducing CPU time and memory needs of
the simulator.
1 D
D D
1 D
D 0
1
0
0 D
1 D
D D D
1
1
D-frontier
Fault Cone
Unexplored
Present Assignment 0 E 1
Searched and Infeasible
B B
0 1 0 1
F F F
0 1 0 1 0 1
Unknown
Time- State Time- Time- Next
or given
frame variables frame frame state
Init. state
-n+1 -1 0
Comb.
block PO -n+1 PO -1 PO 0
October 28, 2001 Essentials of Test: Agrawal & Bushnell 105
Example for Logic Systems
FF1
B
A FF2
s-a-1
X 0/1 X/1
FF2 FF2
B X B 0/1
Time-frame -1 Time-frame 0
F2
F3
F1
3
Level = 1 F2
2
s - graph
F1 F3 dseq = 3
Level = 1 3
Z
CNT F2
F1
s - graph
F1 F2
Z
CNT F2
F1
s-a-0
s-a-1
CLR
s-a-1 s-a-1 Untestable fault
Potentially detectable fault
s - graph
F1 F2
Fault
SAF Stuck-at fault
TF Transition fault
CF Coupling fault
NPSF Neighborhood Pattern Sensitive fault
ABF
ABF
SCF
SA0
ABF
October 28, 2001 Essentials of Test: Agrawal & Bushnell 132
Fault Hierarchy
MATS+:
{ M0: (w0); M1: (r0, w1); M2: (r1, w0) }
Inputs
Comb.
logic
Synchronized Outputs
With clock
time
Clock period
October 28, 2001 Essentials of Test: Agrawal & Bushnell 181
Circuit Delays
Switching or inertial delay is the interval between
input change and output change of a gate:
Depends on input capacitance, device (transistor)
characteristics and output capacitance of gate.
Also depends on input rise or fall times and states of
other inputs (second-order effects).
Approximation: fixed rise and fall delays (or min-max
delay range, or single fixed delay) for gate output.
Propagation or interconnect delay is the time a
transition takes to travel between gates:
Depends on transmission line effects (distributed R, L,
C parameters, length and loading) of routing paths.
Approximation: modeled as lumped delays for gate
inputs.
See Section 5.3.5 for timing models.
13
0 1
246
P2 1
0 2 3
P3
0 2 5
S0 S0 S0 S0 S0 S0 S0 S0 U0 S1 U1 XX
U0 S0 U0 U0 U0 U0 U0 U0 U0 S1 U1 XX
Input 2
Input 2
S1 S0 U0 S1 U1 XX S1 S1 S1 S1 S1 S1
U1 S0 U0 U1 U1 XX U1 U1 U1 S1 U1 U1
XX S0 U0 XX XX XX XX XX XX S1 U1 XX
Input
S0 U0 S1 U1 XX Ref.:
NOT
Lin-Reddy
S1 U1 S0 U0 XX IEEETCAD-87
October 28, 2001 Essentials of Test: Agrawal & Bushnell 185
Non-Robust Test Generation
Fault P2 – rising transition through path P2 has no robust test.
Path P2 R1
A. Place R1 at
path origin
R1
R1 U1 U0 Non-robust test requires
XX Static sensitization:
S0=U0, S1=U1
U0
B. Propagate R1 through OR gate;
interpreted as U1 on off-path signal; Non-robust test:
propagates as U0 through NOT gate U1, R1, U0
Input Output
test clock Test Rated test clock
clock clock
period period
Input
test clock
Output
test clock
V1 V2
applied applied Output
latched
October 28, 2001 Essentials of Test: Agrawal & Bushnell 188
Normal-Scan Test
V2 states generated, (A) by one-bit scan shift of V1, or
(B) by V1 applied in functional mode. Result
latched
V1 PIs V2 PIs
PI Combinational PO applied applied
Scanin Gen. V2 Path Result
circuit tested
V1 states states scanout
SCAN- CK TC t
OUT Slow clock Rated
SFF CK period
TC
Normal
mode
Scan mode Scan mode
SFF (A)
SCANIN
Slow CK
CK TC period
TC
CK: system clock (B) Scan mode Normal mode Scan mode
TC: test control
SFF: scan flip-flop
PI PI PI PI PI PI
0 1
T 1 T n-2 1 T n-1 1 T n 1 T n+1 T n+m
2 2 2
0 D
PO PO PO PO PO PO
Path Fault effect
Initialization sequence activation propagation
(slow clock) (rated sequence
Clock) (slow clock)
Note: Slow-clock makes the circuit fault-free in the presence of
delay faults.
Ckt. # of % Weak
Weak Selected Fault
Faults Vectors Coverage
1 1923 0.35 % 85.3 %
2 1497 0.21 % 87.64 %
October 28, 2001 Essentials of Test: Agrawal & Bushnell 202
Sematech Results
Test process: Wafer Test Package Test
Burn-In & Retest Characterize & Failure
Analysis
Data for devices failing some, but not all, tests.
Scan-based Stuck-at
IDDQ (5 mA limit)
Scan-based delay
pass pass fail fail
pass 6 1463 7 pass
fail 14 0 34 1 pass
pass 6 1 13 8 fail
fail 52 36 1251 fail
pass fail pass fail
Functional
October 28, 2001 Essentials of Test: Agrawal & Bushnell 203
Summary
IDDQ tests improve reliability, find defects
causing:
Delay, bridging, weak faults
Chips damaged by electro-static discharge
No natural breakpoint for current threshold
Get continuous distribution – bimodal
would be better
Conclusion: now need stuck-fault, IDDQ, and
delay fault testing combined
Still uncertain whether IDDQ tests will remain
useful as chip feature sizes shrink further
Scan Design
MUX
SD Q
CK D flip-flop
MCK Q
SCK D flip-flop
SD
MCK
Normal
mode
Logic TCK
overhead
TCK MCK
mode
Scan
TCK
SCK t
October 28, 2001 Essentials of Test: Agrawal & Bushnell 211
Adding Scan Structure
PI PO
logic SFF
SFF
PI I1 I2 O1 O2 PO
Combinational
SCANIN
SCANOUT
TC
logic
Next
Presen S1 S2 N1 N2 state
t
state
SCANIN S1 S2
TC 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0000000
PO O1 O2
SCANOUT N1 N2
X0 (t + 1) 0 0 1 X 0 (t) d0 (t)
X1 (t + 1) = 1 0 1 X 1 (t) + d1 (t)
X2 (t + 1) 0 1 0 X 2 (t) d2 (t)
MSB LSB
31 28 27 12 11 1 0
Version Part Manufacturer ‘1’
Number Identity
(4 bits) (16 bits) (11 bits) (1 bit)
c
Stuck-at fault tests:
T1 = 010
T2 = 011
T3 = 100
T4 = 110
c
Stuck-at fault tests:
T1 = 010 (pass)
T2 = 011 (fail)
T3 = 100 (pass)
T4 = 110 (fail)
No fault 0 0 0 0
c0 0 1 0 0
c1, d1, e1 1 0 1 0
e0 0 1 0 1
October 28, 2001 Essentials of Test: Agrawal & Bushnell 276
Diagnosis with Dictionary
Dictionary look-up with minimum Hamming distance
OR AND 0 1 0 1 e0
OR-bridge (a,c) 0 0 1 0 b1
core outputs
core inputs
Functional
Functional
Scan chain
Scan chain Core
from/to
External
Test pins Scan chain Wrapper
test
controlle
to/from TAP r
October 28, 2001 Essentials of Test: Agrawal & Bushnell 280
Overhead Estimate
Rent’s rule: For a logic block the number of gates G
and the number of terminals t are related by
t = K Ga
wrapper
wrapper
Module inputs Module
Test
Test
1 N
TMS
TCK
TDO
SOC inputs SOC outputs