Professional Documents
Culture Documents
Chap14 Lect13 DFT
Chap14 Lect13 DFT
D
D Q
Q
Latch
D-Latch
9
Design Verification & Testing CMPE 418
Design for Testability and Scan
Storage Cells for Scan Designs
An implementation using two-port master-slave FF with a MUX.
A two-port clocked FF implementation.
D
D
Q
Q
L
1
2-to-1 MUX
SI
Sel
D
Q
Q
L
2
Q
1
Q
2
1
D
D
Q
Q
L
1
SI
D
Q
Q
L
2
Q
1
Q
2
2
10
Design Verification & Testing CMPE 418
Design for Testability and Scan
Storage Cells for Scan Designs
To ensure race-free operation, use a 2-phase non-overlapping clk.
In order to avoid performance degradation introduced by the MUX.
1
D
D
Q
Q
L
1
SI
Sel
D
Q
Q
L
2
Q
1
Q
2
2
Not a FF, since two
clocks are used.
Q
2
1
D
SI
3
NAND version of LSSD
Q
1
L
2
L
1
(SO)
11
Design Verification & Testing CMPE 418
Design for Testability and Scan
Storage Cells for Scan Designs
In LSSD, clocks
1
and
2
can be NORed together to drive L
2
, replacing
3
.
Note that in the 3-clock scheme, in order to prevent hazards,
1
and
3
and well as
2
and
3
MUST be non-overlapping.
Q
2
1
D
SI
2
L
1
(SO)
Q
1
L
2
3
t
1
t
3
12
Design Verification & Testing CMPE 418
Design for Testability and Scan
Tests for Scan Circuits
Two phases:
Shift test
Set TC= 0, and shift toggle sequence 00110011... using Clk.
The length is n
sff
+ 4, where n
sff
are the number of scan flops.
This sequence produces all 4 transitions, 0->0, 0->1, 1->1 and 1->0, catches all/most
SA faults.
The Shift test can be used in either single-clock or two-clock designs.
A Flush test is also possible in two-clock designs:
1
(Master Clk) is held low while
2
and
3
are held high.
This creates a continuous path between SI and SO for application of 0 and 1.
Combinational logic test
This phase allows the combination logic circuit to be tested for SA faults.
An ATPG algorithm is used where outputs of Scan FFs are treated as pseudo-PIs
(completely controllable) and inputs are treated as pseudo-POs.
13
Design Verification & Testing CMPE 418
Design for Testability and Scan
Tests for Scan Circuits
Each vector contains two parts: i
x
and s
x
represent PIs and pseudo-PIs (state variables), o
x
and n
x
represent POs and pseudo-POs (next state variables).
The vectors are converted as shown above.
Don't care bits can be filled randomly or with a specific sequence.
Faults at POs under 1st vector are detected after 10th Clk.
However, faults captured in FFs for this vector are detected on 11th through 19th Clk,
during scanin of 2nd vector.
Seq 1 Seq 2 Seq 3
i
1
i
2
i
3
s
1
s
2
s
3
000000000
Scanin
TC 1 000000000 000000000 1
o
1
o
2
o
3
n
1
n
2
n
3
Scanout
PIs
1 000000000
Dont
cares
Dont
cares
Dont
cares
Dont
cares
9 scan vectors
1 normal vector
On 10th vector
TC is set to 1.
39 Clks are
needed for these
3 vectors.
14
Design Verification & Testing CMPE 418
Design for Testability and Scan
Tests for Scan Circuits
The general formula for the length of the test (which includes Shift test) is:
For a circuit with 2,000 FFs and 500 vectors, 1,004,504 Clks needed.
Scan test length n
sff
4 n
sff
1 + ( )n
comb
n
sff
+ + + =
n
comb
2 + ( )n
sff
n
comb
4 clock periods + +
=
15
Design Verification & Testing CMPE 418
Design for Testability and Scan
Example Application
With R=0, counter is reset to 00. With R=0, C=1, sequence is 00->01->10->00.
C
N
1
N
2
N
3
N
4
A
1
A
2
A
3
A
4
A
5
O
1
O
2
Z
Q
1
Q
2
R
Modulo-3
counter
P
1
P
2
FF2
FF1
TC
SO
SI
SA1
16
Design Verification & Testing CMPE 418
Design for Testability and Scan
Example Application
The output Z becomes 1 only in state 10, otherwise it's zero.
With R=0, C=0, the counter retains its state.
The combinational logic is combinationally irredundant.
However, without scan, the sequential circuit has 6 untestable SA1 faults.
A sequential ATPG algorithm generated 35 tests to detect 36 of the 42 faults in the non-scan
version.
Another combinational ATPG algorithm generated 12 vectors for the combinational part
with C, R, P1 and P2 as inputs and Z, Q1 and Q2 as outputs.
Once converted to scan sequences with a 6 vector Shift test, 44 vectors result.
Fault simulation indicates that all faults are detected, including the 6 untestable SA1 faults
and the MUX fault
17
Design Verification & Testing CMPE 418
Design for Testability and Scan
Scan Architectures
General structure of an LSSD double-latch design.
The outputs, y
i
, come from the output of the L
2
latches.
Normal mode,
1
and
3
are used, test mode,
2
and
3
are used.
Combo
X
L
1
L
2
L
1
L
2
L
1
L
2
y
1
y
2
y
n
Network
3
e
1
e
2
e
n
SI
SO
2
Z
18
Design Verification & Testing CMPE 418
Design for Testability and Scan
Scan Architectures
For the double latch design, operation proceeds as follows:
Test the latches:
Set
2
=
3
= 1
Apply 0 and 1 alternatively at SI
Clock
2
, then
3
, n times.
Initialize
Shift in the initial values into the FFs.
Repeat for all patterns:
Apply a pattern to the PIs.
Clock
1
, then
3
and observe results at POs.
Shift out the response and initialize for next pattern.
Clock
2
, then
3
, n times.
19
Design Verification & Testing CMPE 418
Design for Testability and Scan
Scan Architectures
Scan-Set Architecture offers on-line test capability.
TClk and SI used to initialize FFs with TC
1
/TC
2
=1, then SClk used to load data into upper
FFs in parallel.
Test pattern applied to PIs, TC
1
/TC
2
=0, then SClk transfers data to upper FFs, TClk used to
scan data out.
D Q D Q D Q
Combinational logic
X
1
X
2
X
K
Z
1
Z
2
Z
N
D Q
FF
1
D Q
FF
2
D Q
FF
M
SClk
0
1
0
1
0
1
TC
1
SO SI
0
1
0
1
0
1
TClk
TC
2
FF
1
FF
2
FF
M
Shift FFs added