Chapter 4 DFT
Chapter 4 DFT
Introduction Introduction
History History
During early years, design and test were separate Various testability measures & ad hoc testability enhancement
» The final quality of the test was determined by keeping track of the methods
number of defective parts shipped to the customer » To improve the testability of a design
» Defective parts per million (PPM) shipped was a final test score » To ease sequential ATPG (automatic test pattern generation)
» This approach worked well for small-scale integrated circuit » Still quite difficult to reach more than 90% fault coverage
During 1980s, fault simulation was used Structured DFT
» Failed to improve the circuit’s fault coverage beyond 80% » To conquer the difficulties in controlling and observing the internal
Increased test cost and decreased test quality lead to Design states of sequential circuits
for Testability (DFT) engineering » Scan design is the most popular structured DFT approach
Design for testability (DFT) has migration
P.L.Lai, VLSI Testing 2010 Chapter 4-3 P.L.Lai, VLSI Testing 2010 Chapter 4-4
Outline What is Design for Test?
Introduction Also called design for testability
Design for Testability Basics “ A digital IC is testable if test patterns can be generated,
Scan Cells Designs applied, and evaluated in such a way as to satisfy predefined
Scan Architectures cost budget and time scale “, [Bennetts 1984]
Scan Design Rules That is design to facilitate testing
Scan Design Flow No formal definition for testability
Special-Purpose Scan Designs Possible definition, testability increases as the cost and time
RTL Design for Testability of testing decreases
Concluding Remarks
P.L.Lai, VLSI Testing 2010 Chapter 4-5 P.L.Lai, VLSI Testing 2010 Chapter 4-6
P.L.Lai, VLSI Testing 2010 Chapter 4-7 P.L.Lai, VLSI Testing 2010 Chapter 4-8
Design for Testability Basics Outline
Ad hoc DFT Introduction
Effects are local and not systematic Design for Testability Basics
Not methodical Ad Hoc DFT
Difficult to predict Structured DFT
A structured DFT
Easily incorporated and budgeted
Yield the desired results
Easy to automate
P.L.Lai, VLSI Testing 2010 Chapter 4-9 P.L.Lai, VLSI Testing 2010 Chapter 4-10
P
Typical ad hoc DFT techniques W
P
U W U
OP
G1
A OP F
G4 Y
B G1
F
C Z A G2
G3 B
D H
G2 H
E G5 Z
C G3
(a) G
(b)
P.L.Lai, VLSI Testing 2010 Chapter 4-11 P.L.Lai, VLSI Testing 2010 Chapter 4-12
Test Point Insertion (2/2) Segmentation
A circuit has been divided into three subsections.
Want to test the β partition
A R
B
Z1
C
D
W
E
OP2 shows the structure F Z2
of an observation, which is
composed of a multiplexer G
(MUX) and a D flip-flop. H V
P.L.Lai, VLSI Testing 2010 Chapter 4-13 P.L.Lai, VLSI Testing 2010 Chapter 4-14
A R A R
B B
Z1 Z1
C 0 C 1
S S
D 0 D 1
E 0 W S E 0 W S
1 0 1 0
I I
1 1
F Z2 F Z2
G G
H V H V
P.L.Lai, VLSI Testing 2010 Chapter 4-15 P.L.Lai, VLSI Testing 2010 Chapter 4-16
Sensitized Partitioning Verification Testing [McCluskey 1984]
N-input circuit is partitioned into M segments each of which An example, f(a,b,c)=a(b+c), g(b,c,d)=d⊕(b+c), h(e,d)=e+d
has Ki primary inputs, where Ki < N, thus i 1 2 2 N
iM K
Exhaustive test: 32 patterns
i
The length of an exhaustive test: 256 patterns One output at a time, the combined test will consist of 8, 8, and
α : 8 patterns, β: 8 patterns, γ: 16 patterns (Total is 8+8+16=32) 4 patterns (20 patterns)
A R a
B f
Z1
C
S b
D
E 0 W S c
I 1 0
g
F
1
Z2 d
G
H V
e h
P.L.Lai, VLSI Testing 2010 Chapter 4-17 P.L.Lai, VLSI Testing 2010 Chapter 4-18
P.L.Lai, VLSI Testing 2010 Chapter 4-19 P.L.Lai, VLSI Testing 2010 Chapter 4-20
Easily Testable Designs Outline
Parity tree Introduction
R1100 R Design for Testability Basics
T
S1010
1 T0110 S1010
S S Ad Hoc DFT
2
(a)
T R
T
Structured DFT
R1100 S
Labeling scheme R
Vi-1 S
Vi T (c)
Vi XOR Vi-1 S R
T
(b) R
Labeling process Labeled eight-inputs tree
Primary Inputs
Pattern R S T S R T S R
1 1 1 0 1 1 0 1 1
2 1 0 1 0 1 1 0 1
3 0 1 1 1 0 1 1 0
4 0 0 0 0 0 0 0 0
P.L.Lai, VLSI Testing 2010 Chapter 4-21 P.L.Lai, VLSI Testing 2010 Chapter 4-22
P.L.Lai, VLSI Testing 2010 Chapter 4-23 P.L.Lai, VLSI Testing 2010 Chapter 4-24
Scan Basis (1/2) Scan Basis (2/2)
Scan technology Once initialized (first test mode), Normal mode is used to apply a
Obtain Controllability and Observability for FFs pattern to the PIs, and the results are latched in the FFs
It reduces sequential TPG to combinational TPG The circuit is put in test mode again and the results scanned out
With Scan, a synchronous sequential circuit works in two modes Note that scan is usually inserted after the circuit is verified to be
Normal mode and Test mode functionally correct
In Test mode, all FFs are configured as a shift register, with Scan-
in and Scan-out routed to a (possibly dedicated) PI and PO
PIs POs PIs POs
FFs FFs
Multiple Scan Partial Scan
Scan-in Scan-out
P.L.Lai, VLSI Testing 2010 Chapter 4-25 P.L.Lai, VLSI Testing 2010 Chapter 4-26
Master-slave D flip-flop
Scan Cell Designs (1/3) Storage Cells for Scan Designs (2/3)
Common characteristics of all designs: An implementation using two-port master-slave FF with a MUX
Two mode: a normal input and a scan input
» Using a multiplexer or a two-clock system MD-FF
A storage cell D 1D Q1
SI 2D Q2
» An edge-triggered FF, a master-slave FF or level-sensitive latches
Sel N’/T
controlled by clocks having ≧ 2 phases Q1’
Focus only on D-FFs of the master-slave variety (edge-sensitive) CK Q2’
P.L.Lai, VLSI Testing 2010 Chapter 4-31 P.L.Lai, VLSI Testing 2010 Chapter 4-32
Storage Cells for Scan Designs (3/3) Scan Architectures
To ensure race-free operation, use a 2-phase non-overlapping clk Full-Scan Design
All or almost all storage element are converted into scan cells
and combinational ATPG is used for test generation
Partial-Scan Design
A subset of storage elements are converted into scan cells and
sequential ATPG is typically used for test generation
MD-SR L
D 1D
SI 2D Q1
Sel N’/T Q2
Q1’
CK1
CK2 Q2’
P.L.Lai, VLSI Testing 2010 Chapter 4-33 P.L.Lai, VLSI Testing 2010 Chapter 4-34
P.L.Lai, VLSI Testing 2010 Chapter 4-35 P.L.Lai, VLSI Testing 2010 Chapter 4-36
Muxed-D Full-Scan Design Muxed-D Full-Scan Design
To form a scan chain, the scan input SI of SFF2 and SFF3 are connected Primary inputs (PIs) Primary outputs (POs)
to the output Q of the previous scan cell, SFF1 and SFF2, respectively. In The external inputs to the circuit The external outputs of the
addition, the scan input SI of the first scan cell SFF1 is connected to the Can be set to any required logic circuit
primary input SI, and the output Q of the last scan cell SFF3 is connected values Can be observed
to the primary output SO Set directly in parallel from the Are observed directly in
external inputs Parallel from the external
X1 Z1 Pseudo primary inputs (PPIs, SI) outputs
X2 Z2
.
. Next State and Output Combinational Logic .
. The scan cell outputs Pseudo primary outputs (PPOs,
XK
. . Can be set to any required logic SO)
values The scan cell inputs
0 0 0 0
SI 1 D Q 1 D Q 1 D Q ZN Are set serially through scan Can be observed
1
FF1 FF2 FF2 SO chain inputs Are observed serially through
scan chain outputs
CLK
Scan-Enable (SE)
P.L.Lai, VLSI Testing 2010 Chapter 4-37 P.L.Lai, VLSI Testing 2010 Chapter 4-38
0 0 0 0
SI 1 D Q 1 D Q 1 D Q 1
ZN Circuit Operation type Scan cell mode TM SE
FF1 FF1 FF1 SO
Normal Normal 0 0
CLK
Shift Operation Shift 1 1
Scan-Enable (SE)
Capture Operation Capture 1 0
CLK
P.L.Lai, VLSI Testing 2010 Chapter 4-41 P.L.Lai, VLSI Testing 2010 Chapter 4-42
S: Shift operation
Scan DFT of Binary Counters C: Capture operation
H: Hold cycle
C
B
IN/SI
V1:PI V2:PI
0 0 0 SE
0 S H C H S H C
1 1 1
1 CLK
A/SO
QC 0 1 0 0 H H 0 1 1 1 1
CLK QB × 0 1 1 H H H 0 1 1 1
SE QA × × 0 0 L L H H 0 0 1
P.L.Lai, VLSI Testing 2010 Chapter 4-45 P.L.Lai, VLSI Testing 2010 Chapter 4-46
P.L.Lai, VLSI Testing 2010 Chapter 4-47 P.L.Lai, VLSI Testing 2010 Chapter 4-48