DFT Guide
DFT Guide
MADE SIMPLE
A Complete Beginner Friendly
VLSI Guide
Prasanthi Chanda
CONTENT
CHAPTER 1: DFT, Scan & ATPG
What is DFT
Fault Models
Stuck-at Faults
At-speed Faults
Scan & ATPG
Fault Models
Fault models abstract the behavior of manufacturing
defects so that test vectors can be generated to detect
them.
• Functional Defects: Stuck-at Fault Model
• Current defects: Pseudo Stuck-at Fault Model (IDDQ)
• Speed defects: At-speed Fault Model, Path Delay Fault
Model
The two most common fault models are stuck-at and at-
speed fault models.
1. Stuck-at Faults
This is the most common fault model used in industry.
It models manufacturing defects which occurs when a
circuit node is shorted to VDD (stuck-at-1 fault) or GND
(stuck-at-0 fault) permanently.
The fault can be at the input or output of a gate.
Thus a simple 2-input AND gate has six possible stuck-at
faults.
2. At-speed Faults
It models the manufacturing defects that behave as
gross delays on gate input-output ports.
So each port is tested for logic 0-to-1 transition delay
(slow-to-rise fault) or logic 1-to-0 transition delay (slow-
to-fall fault).
Like stuck-at faults, the at-speed fault can be at the
input or output of a gate, thus a simple 2-input AND
gate has six possible at-speed faults.
Assume Initial Value stored in Flip Flop 1 = 1
Assume Initial Value stored in Flip Flop 2 = 1
st
After 1 Clock pulse (Launch Edge)
Captured Value in Flip Flop 1 = 0
(1 to 0 transition occurs at the output of the AND gate)
Captured Value in Flip Flop 2 = 1
nd
After 2 Clock pulse (Capture Edge)
Expected Captured Value in Flip Flop 2 = 0
Actual Captured Value in Flip Flop 2 = 1
All the flops in the design are converted into scan flops
in the below image, except –
The ones that are excluded by user. These are
called non-scan flops.
The ones that have DFT DRC violation(s).
2. Stitching the Scan Flops to form Scan Chains
The scan flops are stitched to form scan chain(s) as
shown in the below image.
The number of scan chains depends upon various user
inputs like –
Length of scan chain
Clock domain mixing
Power domain mixing
Voltage domain mixing
Clock mux –
Maximum possible frequency at the output is 200 MHz.
Since the FSM controlling the select pin of clock mux
will be part of scan chains, it will toggle during testing.
Hence the clock at the output of the clock mux
becomes unpredictable and can be any one of its input
at any instance.
To prevent this, we need to add a simple mux as shown
in the previous image, which will mask the functional
control in scan mode (Test Mode = 1), to select the
clock with highest frequency (in this case the 200 MHz
clock).
‘DIV (2)’
The 200 MHz clock at the output of clock mux is coming
from the clock divider ‘DIV (2)’, thus ‘DIV (2)’ should
function as a divider throughout the scan mode, so that
we will get the required 200 MHz clock.
If we scan the divider, the logic responsible for dividing
the clock will become part of scan chain and will toggle
during scan mode, resulting in clock of unpredictable
frequency at the output of divider; so we should not
scan this divider.
Also we have to mask the reset or any other functional
control that it likely to affect the functionality of the
divider as shown in the below figure.
‘DIV (1 or 4)’
We need the undivided clock of 500 MHz (fastest clock),
thus we need to mask the functional control to select
the undivided clock in scan mode, as shown in the
below figure.
Since we are bypassing the divider, we can scan this
divider as it will not affect the divider output.
Then we need to modify the clocking architecture to
add an On-chip Clock Controller(OCC) for every clock
domain, as shown in the previous image.
We have six clock domains, thus six OCCs.
Although the scan clocking architecture as shown in the
previous image can be further optimized for this
particular example, but this is a much cleaner and
generic representation to illustrate how we need to
define a Scan friendly clocking architecture.
W will see the very basic OCC design with the sole
purpose of demonstrating how it work.
However industry standard OCCs are much more
advanced and robust to clock glitches than the OCC
discussed here.
Simulation waveform of the OCC structure shown in Figure 1 (having a 5-bit shift register)
endmodule
CHAPTER 3
LFSR & Ring Generator
An n-bit Linear Feedback Shift Register (LFSR) consists of ‘n’
memory elements (or flops) and XOR gates. There are
basically two types of LFSR –
Test-Logic-Reset:
It resets the JTAG circuits.
Whenever the TRST (optional) signal is asserted, it goes
back to this state.
Also notice that in whatever state the TAP controller
may be at, it will goes back to this state if TMS is set to 1
for 5 consecutive TCK cycles.
Thus if we don’t have the TRST signal then we can still
reset the circuit.
Run-Test/Idle:
This is a state in which the FSM is waiting for some test
operations to complete.
Run-Test/Idle:
This is a state in which the FSM is waiting for some test
operations to complete.
Responsive Analyzer
What is the role of Response Analyzer (RA)?
It compresses the CUT output responses into a small
signature, so that it can be stored on-chip.
It compares the signature (generated in silicon) with the
gold signature (generated in pre silicon) to determine
Pass/Fail.
It is also called signature analyzer or output response
analyzer.
Test Data Volume ≈ Number of Scan Cells in all the Scan Chains
× Scan Patterns
Decompressor
The decompressor consists of a ring generator, which is
basically a Ring LFSR with external inputs.
The external inputs feeding the ring generator are
commonly referred as EDT channels.
The outputs of the ring generator flops will connect to
scan chain inputs through a phase shifter consisting of
XOR gates.
As discussed earlier, phase shifter helps supporting
more scan chains than the degree of LFSR.
Creation of the compressed pattern from the original
ATPG test pattern consists of solving a set of linear
equations based on the ring generator polynomial and
the phase shifter connections.
Inputs to the ring generator are driven from the
compressed pattern stored on the ATE.
A typical decompressor structure
+91- 9182280927