Professional Documents
Culture Documents
VLSI Test Slides
VLSI Test Slides
Introduction
1
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 1
Ch. 1 - Introduction - P. 2
3
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 3
Introduction
Integrated Circuits (ICs) have grown in size and complexity since the late 1950s
Number of Transistors
1.E+09 1.E+08 1.E+07 1.E+06 1.E+05 1.E+04 1.E+03 1.E+02 1.E+01 1.E+00
Small Scale Integration (SSI) Medium Scale Integration (MSI) Large Scale Integration (LSI) Very Large Scale Integration (VLSI)
VLSI M LSI S S S I I
1960s 1970s 1980s 1990s 2000s
Ch. 1 - Introduction - P. 4
Importance of Testing
Moores Law results from decreasing feature size (dimensions)
from 10s of m to 10s of nm for transistors and interconnecting wires
Operating frequencies have increased from 100KHz to several GHz Decreasing feature size increases probability of defects during manufacturing process
A single faulty transistor or wire results in faulty IC Testing required to guarantee fault-free products
5
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 5
Importance of Testing
Rule of Ten: cost to detect faulty IC increases by an order of magnitude as we move from:
device PCB system field operation
Testing performed at all of these levels
Ch. 1 - Introduction - P. 6
Pass/Fail
7
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 7
Ch. 1 - Introduction - P. 8
Design Verification
Different levels of abstraction during design
CAD tools used to synthesize design from RTL to physical level
Design Specification Behavioral (Architecture) Level Register-Transfer Level Logical (Gate) Level Physical (Transistor) Level
Ch. 1 - Introduction - P. 9
10
Ch. 1 - Introduction - P. 10
PCB Assembly
Board Test
Unit Assembly
Unit Test
System Assembly
System Test
11
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 11
System-Level Operation
S 1
Normal system operation
t2
failures
t3
t4
Reliability
Probability that system will operate normally t P(Tn > t ) = e until time t k Failure rate, , is sum of individual = i component failure rates, i i =0
12
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 12
System-Level Operation
Mean Time Between Failures (MTBF) 1 MTBF = e t dt = Repair time (R) also assumed to 0 obey exponential distribution
is repair rate
P ( R > t ) = e t
1 Mean Time To Repair (MTTR) MTTR = Fraction of time that system is operating normally called system MTBF system availability = availability
MTBF + MTTR
13
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 13
System-Level Testing
Testing required to ensure system availability Types of system-level testing
On-line testing concurrent with system operation Off-line testing while system (or portion of) is taken out of service
Performed periodically during low-demand periods Used for diagnosis (identification and location) of faulty replaceable components to improve repair time
14
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 14
Test Generation
A test is a sequence of test patterns, called test vectors, applied to the CUT whose outputs are monitored and analyzed for the correct response
Exhaustive testing applying all possible test patterns to CUT Functional testing testing every truth table entry for a combinational logic CUT
Neither of these are practical for large CUTs
Ch. 1 - Introduction - P. 15
Test Generation
Fault coverage for a given set of test number of detected faults fault cove rage = vectors total numb er of faul ts 100% fault coverage may be impossible due to undetectable faults
number of detected faults fault detection efficiency = total number of faults number of undetectable faults Reject rate = 1 yield(1 fault coverage)
A PCB with 40 chips, each with 90% fault coverage and 90% yield, has a reject rate of 41.9%
Or 419,000 defective parts per million (PPM)
16
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 16
Test Generation
Goal: find efficient set of test vectors with maximum fault coverage Fault simulation used to determine fault coverage
Requires fault models to emulate behavior of defects
Ch. 1 - Introduction - P. 17
Fault Models
A given fault model has k types of faults
k = 2 for most fault models
A given circuit has n possible fault sites Multiple fault model circuit can have multiple faults (including single faults
Number of multiple fault = (k+1)n-1
Each fault site can have 1-of-k fault types or be fault-free The -1 represents the fault-free circuit
Ch. 1 - Introduction - P. 18
Fault Models
Equivalent faults
One or more single faults that have identical behavior for all possible input patterns Only one fault from a set of equivalent faults needs to be simulated
Fault collapsing
Removing equivalent faults
Except for one to be simulated
19
Ch. 1 - Introduction - P. 19
Stuck-at Faults
Any line can be
Stuck-at-0 (SA0) Stuck-at-1 (SA1)
# fault types: k=2
Truth table for fault-free behavior and behavior of all possible stuck-at faults
x1x2x3 a a b b c c d d e e f f g g h h i i y SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 000 001 010 011 100 101 110 111 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 1 0 0 0 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 0 1 1 1 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 20 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1
Example circuit:
# fault sites: n=9 # single faults =29=18
x1 a x2 b d g i e x3 c f h y
Ch. 1 - Introduction - P. 20
Stuck-at Faults
Faulty circuit differs from good circuit Necessary vectors:
011 detects f SA1, e SA0 100 detects d SA1 Detect total of 10 faults 001 and 110 detect remaining 8 faults
d g i e f y
Truth table for fault-free behavior and behavior of all possible stuck-at faults
x1x2x3 a a b b c c d d e e f f g g h h i i y SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 000 001 010 011 100 101 110 111 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 1 0 0 0 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 0 1 1 1 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 21 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1
x1 a x2 b
x3 c
Ch. 1 - Introduction - P. 21
Stuck-at Faults
Truth table for fault-free behavior and behavior of all possible stuck-at faults
x1x2x3 a a b b c c d d e e f f g g h h i i y SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 SA0 SA1 000 001 010 011 100 101 110 111 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 0 0 1 1 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 1 0 0 0 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 0 1 1 1 1 0 0 1 1 1 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 22 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1
x1 a x2 b
PO= # primary outputs FO= # fanout stems GI= # gate inputs NI= # inverters
d g i e f y
x3 c
Ch. 1 - Introduction - P. 22
Stuck-at Faults
# collapsed faults = 2(PO+FO)+GI-NI
PO= number of primary outputs FO= number of fanout stems GI= total number of gate inputs
for all gates including inverters
Ch. 1 - Introduction - P. 23
Transistor Faults
Any transistor can be
Stuck-short
Also known as stuck-short
2-input CMOS NOR gate
VDD A B P1 P2 Z N1 N2
Stuck-open
Also known as stuck-open # fault types: k=2
Example circuit
# fault sites: n=4 # single faults =24=8
VSS Truth table for fault-free circuit and all possible transistor faults AB 00 01 10 11 Z 1 0 0 0 N1 stuck-open 1 0 last Z 0 N1 stuck-short IDDQ 0 0 0 N2 stuck-open 1 last Z 0 0 N2 stuck-short IDDQ 0 0 0 P1 stuck-open last Z 0 0 0 P1 stuck-short 1 0 IDDQ 0 P2 stuck-open last Z 0 0 0 P2 stuck-short 1 IDDQ 0 0
24
Ch. 1 - Introduction - P. 24
Transistor Faults
Stuck-short faults cause conducting path from VDD to VSS
Can be detect by monitoring steady-state power supply current IDDQ
2-input CMOS NOR gate
VDD A B P1 P2 Z N1 N2
VSS Truth table for fault-free circuit and all possible transistor faults AB 00 01 10 11 Z 1 0 0 0 N1 stuck-open 1 0 last Z 0 N1 stuck-short IDDQ 0 0 0 N2 stuck-open 1 last Z 0 0 N2 stuck-short IDDQ 0 0 0 P1 stuck-open last Z 0 0 0 P1 stuck-short 1 0 IDDQ 0 P2 stuck-open last Z 0 0 0 P2 stuck-short 1 IDDQ 0 0
25
Ch. 1 - Introduction - P. 25
Transistor Faults
# collapsed faults = 2T -TS+GS -TP+GP
T = number of transistors TS= number of series transistors GS= number of groups of series transistors TP= number of parallel transistors GP= number of groups of parallel transistors
Ch. 1 - Introduction - P. 26
Ch. 1 - Introduction - P. 27
Bridging Faults
Three different models
Wired-AND/OR Dominant Dominant-AND/OR
AS BS
AS source BS
AD destination BD AD BD Wired-OR AS BS AD BD
bridging fault AD AS BD BS
Wired-AND AS AD BS BD
A dominates B AS AD BS BD
B dominates A AS AD BS BD
A dominant-AND B AS AD BS BD
A dominant-OR B AS AD BS
28
BD
B dominant-AND A
B dominant-OR A
Ch. 1 - Introduction - P. 28
3 2 t=2 3
29
t=7
Ch. 1 - Introduction - P. 29
Coupling fault
Transition in contents of one memory cell causes change in contents of another cell
30
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 30
Coupling fault
Transition in one cell causes change in another cell
Ch. 1 - Introduction - P. 31
Parametric faults
Parametric variations in passive and active components cause components to be out of tolerance range
Ch. 1 - Introduction - P. 32
Levels of Abstraction
High levels have few implementation details needed for effective test generation
Fault models based on gate & physical levels
Circuit B f
33
Ch. 1 - Introduction - P. 33
Ch. 1 - Introduction - P. 34
Fault simulation
Emulates fault models in CUT and applies test vectors to determine fault coverage Simulation time (significant due to large number of faults to emulate) can be reduced by
Parallel, deductive, and concurrent fault simulation
35
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 35
Ch. 1 - Introduction - P. 36
Design of Testability
Ad-hoc DFT techniques
Add internal test points (usually multiplexers) for
Controllability Observability
0 1
0 1
Primary output
Ch. 1 - Introduction - P. 37
FFs
1
FF
Qi
2
Di
Clk
0 1
FF
Qi
Primary Primary Combinational Outputs Inputs Logic Scan Data Out FFs
38 Scan Data In Ch. 1 - Introduction - P. 38
Capture
39
Ch. 1 - Introduction - P. 39
0 1
Primary Outputs
ORA
Pass Fail
40
Ch. 1 - Introduction - P. 40
Concluding Remarks
Many new testing challenges presented by
Increasing size and complexity of VLSI devices Decreasing feature size
This chapter presented introduction to VLSI testing Remaining chapters present more details as well as solutions to these challenges
41
EE141 VLSI Test Principles and Architectures
Ch. 1 - Introduction - P. 41