ECE 601 - Digital System Design & Synthesis Lecture 5

Download Report

Transcript ECE 601 - Digital System Design & Synthesis Lecture 5

ECE 551: Digital System
Design & Synthesis
Lecture Set 10
10.1: Functional & Timing
Verification (Separate File)
10.2: Faults & Testing
10.2 Appendix: PODEM Example
Slides adapted from ECE 553 Slides by Prof.
Kewal Saluja
04/23/2003
1
ECE 551 - Digital System Design & Synthesis
Lecture 10.2 – Faults and Testing
Overview
Introduction
 Fault Models
 Test Pattern Generation
 Design for Testability (DFT) – Serial Scan
 Built-In Self-Test (BIST)
 Boundary Scan (JTAG/IEEE 1149.1)
 Quiescent Drain Current (IDDQ) Testing

04/23/2003
2
Introduction
The manufacturing process for ICs is so complex
that only a portion of all chips produced are
good – the percentage of such good chips is
referred to as the yield
 In order to avoid shipping defective products,
manufacturing test at the die and packaged chip
level is required.
 Complex chips => complex tests


The objective: summary the elements of
contemporary IC test
04/23/2003
3
Overview
Introduction
 Fault Models
 Test Pattern Generation
 Design for Testability (DFT) – Serial Scan
 Built-In Self-Test (BIST)
 Boundary Scan (JTAG/IEEE 1149.1)
 Quiescent Drain Current (IDDQ) Testing

04/23/2003
4
Common Fault Models
Single stuck-at faults
 Transistor open and short faults
 Memory faults
 PLA faults (stuck-at, cross-point,
bridging)
 Functional faults (processors)
 Delay faults (transition, path)
 Analog faults

04/23/2003
5
Stuck-at Faults
•Single stuck-at fault model
•What does it achieve in
practice?
•Fault equivalence
•Checkpoint faults
04/23/2003
6
Single Stuck-at Fault

Three properties define a single stuck-at fault
• Only one line is faulty
• The faulty line is permanently set to 0 or 1
• The fault can be at an input or output of a gate

Example: XOR circuit has 12 fault sites ( ) and 24
single stuck-at faults
Faulty circuit value
c
1
0
a
d
b
e
f
Good circuit value
j
s-a-0
g
1
0(1)
1(0)
h
i
z
1
k
Test vector for h s-a-0 fault
04/23/2003
7
Single Stuck-at Faults
(contd.)
How
effective is this model?
 Empirical evidence supports the
use of this model
 Has been found to be effective to
detect other types of faults
 Relates to yield modeling
 Simple to use
04/23/2003
8
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 circuit
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.

04/23/2003
9
Equivalence Example
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
Faults in blue
removed by
equivalence
collapsing
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
sa0 sa1
20
Collapse ratio = ----- = 0.625
32
04/23/2003
10
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
04/23/2003
11
Summary






Gate level models are most prevalent in logic testing
Fault models are analyzable approximations of defects
and are essential for a test methodology.
For digital logic single stuck-at fault model offers
advantage of effective tools and much 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 technology-dependent
faults require special tests.
Memory and analog circuits need other specialized fault
models and tests.
04/23/2003
12
Overview
Introduction
 Fault Models
 Test Pattern Generation
 Design for Testability (DFT) – Serial Scan
 Built-In Self-Test (BIST)
 Boundary Scan (JTAG/IEEE 1149.1)
 Quiescent Drain Current (IDDQ) Testing

04/23/2003
13
Definition of Automatic
Test-Pattern Generator

Operations on digital hardware:
 Inject fault into sequential circuit modeled in computer
 Use various ways to activate and propagate fault effect
through hardware to circuit output
 Output flips from expected to faulty signal

Scan design – add test hardware to all flipflops to make them a giant shift register in
test mode
 Can shift state in, scan state out
 Widely used – makes sequential circuit into combinational
circuit for testing!
 Costs: 5 to 20% chip area, circuit delay, extra pin, longer
test sequence
04/23/2003
14
Notation
Failing
Good
Meaning
Machine Machine
Symbol
D
D
0
1
X
04/23/2003
1/0
0/1
0/0
1/1
X/X
1
0
0
1
X
0
1
0
1
X
Roth’s D
Algebra
15
Conditions for Finding a
Test
Fault excitation – the signal value at the
fault site must be different from the
value of the stuck-at fault (thus fault site
must contain a D or a D)
 The fault effect must be propagated to a
primary output (A D or a D must appear
at the output)
 Some simple observations

 There must be at least a D or a D on some
circuit nets)
 D’s must form a chain to some output
04/23/2003
16
Exhaustive Algorithm
For n-input circuit, generate all 2n input
patterns
 Infeasible, unless circuit is partitioned
into cones of logic, with  15 inputs

 Perform exhaustive ATPG for each cone
 Misses faults that require specific activation
patterns for multiple cones to be tested
04/23/2003
17
Random-Pattern Generation
Flow chart
for method
 Use to get
tests for 6080% of
faults, then
switch to Dalgorithm or
other ATPG
for rest

04/23/2003
18
Path Sensitization Method Example 1 Fault
Sensitization
2 Fault
Propagation
3 Line Justification
04/23/2003
19
Path Sensitization Method Example
 Try path f – h – k – L. This path is
blocked at j, since there is no way to
justify the 1 on i
1
1
D
D
D
D
1
0
D
1
04/23/2003
20
Path Sensitization Method
 Try simultaneous paths f – h – k – L and
g – i – j – k – L. These paths blocked at k
because D-frontier (chain of D or D) disappears
1
1
D
D
1
D
D
D
1
04/23/2003
21
Path Sensitization Method
Circuit Example
 Final try: path g – i – j – k – L – test
found!
0
1
0
D
D
D
D
D
1
1
04/23/2003
22
Overview
Major ATPG algorithms
• Definitions
• D-Algorithm (Roth) – 1964-66
– D-cubes
– Bridging faults
– Logic gate function change faults
• PODEM (Goel) -- 1981
– X-Path-Check
– Backtracing
• Summary
04/23/2003
23
Overview
Introduction
 Fault Models
 Test Pattern Generation
 Design for Testability (DFT) – Serial Scan
 Built-In Self-Test (BIST)
 Boundary Scan (JTAG/IEEE 1149.1)
 Quiescent Drain Current (IDDQ) Testing

04/23/2003
24
Definition

Design for testability (DFT) refers to those
design techniques that make test generation
and test application cost-effective.
 DFT methods for digital circuits:
 Ad-hoc methods
 Structured methods:
•
•
•
•
04/23/2003
Scan
Partial Scan
Built-in self-test (BIST)
Boundary scan
25
Scan Design
 Objectives
• Simple read/write access to all or subset of storage
elements in a design.
• Direct control of storage elements to an arbitrary
value (0 or 1).
• Direct observation of the state of storage elements
and hence the internal state of the circuit.
Key is – Enhanced controllability and observability.
04/23/2003
26
Scan Design
 Circuit is designed using pre-specified design rules.
 Test structure (hardware) is added to the verified design:
• Add one (or more) test control (TC) primary input.
• Replace flip-flops by scan flip-flops and connect to form one or
more shift registers in the test mode.
• Make input/output of each scan shift register
controllable/observable from PI/PO.
 Use combinational ATPG to obtain tests for all testable
faults in the combinational logic.
 Add shift register tests and convert ATPG tests into scan
sequences for use in manufacturing test.
04/23/2003
27
Scan Flip-Flop (masterslave)
Master latch
D
Slave latch
TC
Q
Logic
overhead
MUX
SD
CK
Q
D flip-flop
CK
TC
04/23/2003
Master open Slave open
Normal mode, D selected
t
Scan mode, SD selected
t
28
Adding Scan Structure
PI
PO
Combinational
SFF
logic
SFF
SCANOUT
SFF
TC or TCK
SCANIN
04/23/2003
Not shown: CK or
MCK/SCK feed all
SFFs (scan Flipflops).
29
Comb. Test Vectors
PI
I1
I2
04/23/2003
O2
Combinational
SCANIN
TC
Presen
t
state
O1
SCANOUT
logic
S1
S2
PO
N1
N2
Next
state
30
Comb. Test Vectors
SCANIN
I2
I1
PI
S1
S2
TC 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
PO
SCANOUT
Don’t care
or random
bits
1 0000000
O2
O1
N1
N2
Sequence length = (nsff + 1) ncomb + nsff clock periods
ncomb = number of combinational vectors
nsff = number of scan flip-flops
04/23/2003
31
Scan Overhead
IO pins: One pin necessary.
 Area overhead:

 Gate overhead = [4 nsff/(ng+10nff)] x 100%,
where ng = comb. gates; nff = flip-flops;
• Example – ng = 100k gates, nff = 2k flip-flops, overhead =
6.7%.
 More accurate estimate must consider scan wiring and
layout area.

Performance overhead:
 Multiplexer delay added in combinational path; approx.
two gate-delays.
 Flip-flop output loading due to one additional fanout;
approx. 5-6%.
04/23/2003
32
Overview
Introduction
 Fault Models
 Test Pattern Generation
 Design for Testability (DFT) – Serial Scan
 Built-In Self-Test (BIST)
 Boundary Scan (JTAG/IEEE 1149.1)
 Quiescent Drain Current (IDDQ) Testing

04/23/2003
33
BIST Process


Test controller – Hardware that activates self-test
simultaneously on all PCBs
Each board controller activates parallel chip BIST
Diagnosis effective only if very high fault coverage
04/23/2003
34
BIST Architecture

Note: BIST cannot test wires and
transistors:
 From PI pins to Input MUX
 From POs to output pins
04/23/2003
35
Pattern Generation

Store in ROM – too expensive
Exhaustive
 Pseudo-exhaustive
 Pseudo-random (LFSR) – Preferred

method
 Binary counters – use more hardware
than LFSR
 Modified counters
 Test pattern augmentation
 LFSR combined with a few patterns in ROM
 Hardware diffracter – generates pattern
cluster in neighborhood of pattern stored in
04/23/2003
ROM
36
Exhaustive Pattern Generation (A
Counter)



Shows that every state and transition works
For n-input circuits, requires all 2n vectors
Impractical for large n ( > 20 )
04/23/2003
37
Random Pattern Testing
Bottom:
RandomPattern
Resistant
circuit
04/23/2003
38
Pseudo-Random Pattern
Generation

Standard Linear Feedback Shift Register (LFSR)
 Normally known as External XOR type LFSR
 Produces patterns algorithmically – repeatable
 Has most of desirable random # properties
 Need not cover all 2n input combinations

Long sequences needed for good fault coverage
04/23/2003
39
Test Pattern Augmentation

Secondary ROM – to get LFSR to 100%
SAF coverage
 Add a small ROM with missing test patterns
 Add extra circuit mode to Input MUX – shift to
ROM patterns after LFSR done
 Important to compact extra test patterns

Use diffracter:
 Generates cluster of patterns in neighborhood
of stored ROM pattern
Transform LFSR patterns into new vector
set
 Put LFSR and transformation hardware in
full-scan chain
04/23/2003
40

Response Compaction

Severe amounts of data in CUT response to
LFSR patterns – example:
 Generate 5 million random patterns
 CUT has 200 outputs
 Leads to: 5 million x 200 = 1 billion bits
response
Not economical to store and check all of
these responses on chip
 Responses must be compacted

04/23/2003
41
Definitions




Aliasing – Due to information loss, signatures of
good and some bad machines match
Compaction – Drastically reduce # bits in original
circuit response – lose information
Compression – Reduce # bits in original circuit
response – no information loss – fully invertible
(can get back original response)
Signature analysis – Compact good machine
response into good machine signature. Actual
signature generated during testing, and
compared with good machine signature
04/23/2003
42
LFSR for Response Compaction



Use cyclic redundancy check code (CRCC) generator
(LFSR) for response compacter
Treat data bits from circuit POs to be compacted as a
decreasing order coefficient polynomial
CRCC divides the PO polynomial by its characteristic
polynomial
 Leaves remainder of division in LFSR
 Must initialize LFSR to seed value (usually 0) before testing


After testing – compare signature in LFSR to known
good machine signature
Critical: Must compute good machine signature
04/23/2003
43
Example Modular LFSR
Response Compacter

04/23/2003
LFSR seed value is
“00000”
44
Summary
LFSR pattern generator and MISR response
compacter – preferred BIST methods
 BIST has overheads: test controller, extra
circuit delay, Input MUX, pattern generator,
response compacter, DFT to initialize circuit
& test the test hardware
 BIST benefits:







At-speed testing for delay & stuck-at faults
Drastic ATE cost reduction
Field test capability
Faster diagnosis during system test
Less effort to design testing process
Shorter test application times
04/23/2003
45
Overview
Introduction
 Fault Models
 Test Pattern Generation
 Design for Testability (DFT) – Serial Scan
 Built-In Self-Test (BIST)
 Boundary Scan (JTAG/IEEE 1149.1)
 Quiescent Drain Current (IDDQ) Testing

04/23/2003
46
Overview: Boundary Scan
Motivation
 System view of boundary scan
hardware
 Elementary scan cell
 Test Access Port (TAP) controller
 Boundary scan instructions
 Summary

04/23/2003
47
Motivation for Standard
n
Bed-of-nails printed circuit board tester gone
 We put components on both sides of PCB & replaced DIPs
with flat packs to reduce inductance
n Nails would hit components
 Reduced spacing between PCB wires
n Nails would short the wires
 PCB Tester must be replaced with built-in test delivery
system -- JTAG does that
 Need standard System Test Port and Bus
 Integrate components from different vendors
n Test bus identical for various components
n One chip has test hardware for other chips
04/23/2003
48
System Test Logic
04/23/2003
49
System View of Interconnect
04/23/2003
50
Boundary Scan Chain View
04/23/2003
51
Elementary Boundary Scan
Cell
04/23/2003
52
Tap Controller Signals
n
Test Access Port (TAP) includes these signals:
 Test Clock Input (TCK) -- Clock for test logic
Can run at different rate from system clock
Test Mode Select (TMS) -- Switches system
from functional to test mode
Test Data Input (TDI) -- Accepts serial test
data and instructions -- used to shift in
vectors or one of many test instructions
Test Data Output (TDO) -- Serially shifts out
test results captured in boundary scan chain
(or device ID or other internal registers)
Test Reset (TRST) -- Optional asynchronous
TAP controller reset
n




04/23/2003
53
Tap Controller State Diagram
04/23/2003
54
EXTEST Instruction
n
Purpose: Test off-chip circuits and boardlevel interconnections
04/23/2003
55
Summary
n
Boundary Scan Standard has become
absolutely essential - No longer possible to test printed circuit
boards with bed-of-nails tester
 Not possible to test multi-chip modules
at all without it
 Supports BIST, external testing with
Automatic Test Equipment, and
boundary scan chain reconfiguration as
BIST pattern generator and response
compacter
 Now getting widespread usage
04/23/2003
56
Overview
Introduction
 Fault Models
 Test Pattern Generation
 Design for Testability (DFT) – Serial Scan
 Built-In Self-Test (BIST)
 Boundary Scan (JTAG/IEEE 1149.1)
 Quiescent Drain Current (IDDQ) Testing

04/23/2003
57
Basic Principle of IDDQ
Testing
 Measure IDDQ current through Vss bus
04/23/2003
58
Stuck-at Faults Detected by
IDDQ Tests

Bridging faults with stuck-at fault behavior
 Levi – Bridging of a logic node to VDD or VSS – few
of these
 Transistor gate oxide short of 1 KW to 5 KW

Floating MOSFET gate defects – do not fully
turn off transistor
04/23/2003
59
NAND Open Circuit Defect
– Floating gate

The fault
manifests as
stuck-at, weak
ON for N-FET,
or delay fault
some
manifestations
can be tested
by IDDQ tests
04/23/2003
60
Floating Gate Defects
 Small
break in logic gate inputs (100 –
200 Angstroms) lets wires couple by
electron tunneling
 Delay fault and IDDQ fault
 Large
open results in stuck-at fault – not
detectable by IDDQ test
04/23/2003
61
Bridging Faults S1 – S5



Caused by absolute short (<
50 W) or higher R
Segura et al. evaluated
testing of bridges with 3
CMOS inverter chain
IDDQRb tests fault when
Rb > 50 KW or
0  Rb  100 KW

Largest deviation when Vin =
5 V bridged nodes at opposite
logic values
04/23/2003
62
Delay Faults
Most random CMOS defects cause a timing
delay fault, not catastrophic failure
 Many delay faults detected by IDDQ test – late
switching of logic gates keeps IDDQ elevated
 Delay faults not detected by IDDQ test

 Resistive via fault in interconnect
 Increased transistor threshold voltage fault
04/23/2003
63
Leakage Faults
 Gate
oxide shorts cause leaks between gate
& source or gate & drain
Weak Faults
• nFET passes logic 1 as 5 V – Vtn
• pFET passes logic 0 as 0 V + |Vtp|
• Weak fault – one device in C-switch does not turn on
 Causes logic value degradation in C-switch
04/23/2003
64
Transistor Stuck-Closed
Faults
Due to gate oxide
short (GOS)
 k = distance of short
from drain
 Rs = short resistance
 IDDQ2 current results
show 3 or 4 orders of
magnitude elevation

04/23/2003
65
Gate Oxide Short
04/23/2003
66
IDDQ 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
04/23/2003
67