VLSI_Testing-Crash_Course_03
VLSI_Testing-Crash_Course_03
• Scan-test length
•n comb(n + 1) + n
• Chips with delay faults may pass DC testing, e.g., stuck-at-fault testing, but
fail when tested at speed.
circuit test response
mandatory.
t1 t2 t3
logic
se
PI I1 I2 PPI PPO
PPI S1 S2 FFs SE
SO SI
V1 ready launch V2 capture response
•S 2 is generated by CUT.
IC LC CC
CLK
ng fre-
aunch- SEN
ch-off-
lt test- Scan−in pattern i Scan−in pattern i+1
Scan−out response i−1 Scan−out response i
sed at- (a)
t scan
encap-
IC LC CC
opera- GIEE/ICDA, NTU VLSI System Testing 79
LOW COST TESTER LIMITATIONS
• PI hold constant from launch to capture
• PO masked
• Reduce tester performance requirements or eliminate the need for external testers.
• BIST circuits may reside inside or outside the chip under test (internal BIST or external
BIST).
• With a properly designed BIST, the added cost will be more than balanced
by the benefits in terms of reliability and reduced maintenance cost.
• The logic BIST controller coordinates the BIST operation among the TPG,
clocks, are generated by the logic BIST controller for coordinati
operation among the TPG, CUT, and ORA. The logic BIST controlle
CUT, and ORA. pass/fail indication once the BIST operation is complete. It includes
logic to compare the final signature with an embedded golden signatur
•
comprises diagnostic logic for fault diagnosis. As compaction is com
For example, the generation of timing for
control
outputsignals,
responseincluding
analysis, it scan-enable
is required thatand
all clocks.
storage elements
FIGURE 5.2
• At-speed testing is inherent in BIST and can be used to detect many delay
faults.
• Must add test points or include ATPG patterns to make up for the deficiency of pseudo-
random patterns in detecting random-pattern-resistant faults.
• Block or fix (using DfT repair) unknown values so that they cannot propagate to the ORA
approaches include: (1) that they might increase the area of the design, and (2) that
they might impact timing.
inputs directly or
5.2-/./ Analog Blocks indirectly.
• X-bounding examples:
Examples of analog blocks are analog-to-digital converters (ADCs). Any analog
block output that can exhibit unknown (X) behavior during test has to be forced to a
X
' ^
r- i)
D- D
SE
D Q
J 11
CK—>CK BIST_mode BIST_mode
( >CK
(d) (e)
FIGURE 5.3
VLSI System Testing 89 Jiun-Lang Huang, GIEE/ICDA, NTU
X-Blocking Practices
• Analog blocks, e.g., ADC:
• Bypass logic and control-only scan point are recommended to achieve higher fault
coverage.
FIGURE 5.4
Shift Window Capture Window Shift Window Capture Window Shift Window \
Set/reset clock point for testing a set/reset-type scan cell.
C1
CK JL ... J I n _n n_ JX ... SL
02
SRCK n
SE
FIGURE 5.5
VLSI System Testing 92 Jiun-Lang Huang, GIEE/ICDA, NTU
Bus contention occurs when two drivers force different values on the same bus
• Tristate
which canbuses
damage the chip; hence, it is important to prevent bus conflicts during
normal operation as well as shift operation [Cheung 1996]. For BIST applications,
• Must
since be disabled during
pseudo-random the BIST
patterns areoperation.
commonly used, it is also crucial to protect the
capture operation [Al-Yamani 2002]. To avoid potential bus contention, it is best
• The use of pseudo-random patterns mandates deactivation during the capture
to resynthesize each bus with multiplexers. If this is impractical, make sure only
operation.
one tristate driver is enabled at any given time. The one-hot decoder shown in
Figure 5.6 is an example of a circuit that can ensure that only one driver is selected
• It is recommended that buses with
during each shift or capture operation. multiplexers be re-synthesized.
• Or, ensure only one tristate driver is enabled at any given time.
EN1 EN1
H 5 ^
D1
EN2
D2 EN2 —4
• ports must have a proper connection to power (VDD) or ground (Vss). Also, floating
Critical paths
inputs to any internal modules must be avoided. This has a potential chance to
•
propagate unknown (X) values to the ORA.
Remove an unknown (X) value from a critical path by adding an extra input pin to a
selected combinational gate on the critical path to minimize the added delay.
-{>- H BIST_mode
BIST_mocle
FIGURE
VLSI 5.8
System Testing 95 Jiun-Lang Huang, GIEE/ICDA, NTU
Re-Timing
• The distance from TPG and ORA to the CUT may result in large clock skew
Logic Built-in Self-Test
which leads to races and hazards.
• Between the TPG and the (scan chain) inputs of the CUT. EN ^
SE <I>IO
• Between the (scan chain) outputs of the CUTBIST_mode
and the ORA.
'
D
Z
• Example: D Q D Q D Q D Q
CK1, CK2, and CK3 could belong to CUT
J>CK J>CK i>CK r-t>CK
one clock tree. z\
FIGURE 5.11
[Golomb 1982]. The modular LFSR runs faster than its corresponding standard
LFSR, because each stage introduces at most one XOR-gate delay. Standard LFSR
(a) (b)
0001 0001
1000 1100
0100 0 110
1010 0011
0101 1101
00 10 10 10
0001 0101
1000 1110
0100 0111
1010 1111
0101 1011
0010 1001
0001 1000
1000 0100
0100 0010
1010 0001
(c) (d)
VLSI System Testing • FIGURE 5.12 101 Jiun-Lang Huang, GIEE/ICDA, NTU
Galois Field GF(2)
• Operation
• Modulo-2 addition, subtraction, multiplication, and division of binary values.
• Properties
• Modulo-2 addition and subtraction are identical.
• 0 ± 0 = 0, 0 ± 1 = 1, 1 ± 0 = 1, 1 ± 1 = 0
• Examples
g x =x +x + x +x +
+ D4 + D3 D2 D1
(x +x + ) × (x +x + )= x +x +x +x +
Input 4
g( x ) = x + x + 1 3
Output Q(x)
011011011 11001
M(x) + D1 D2 D3 + D4
x+x2+x4+x5+x7+x8 1+x+x4
• Example:
A 4-stage weighted LFSR with
0.25 0-probability.
• Compaction vs. compression: the former is lossy, and the latter lossless.
• Aliasing probability should be kept low.
/ w
CUT Counter
•
i V
/ w
CUT Counter
•
i V
CLK >
C (L, m) ⋯ 1
— i
GURE 5.27
es counter as ORA.
counter as ORA.
•
FIGURE 5.29
After shifting the L-bit bitstream, M, into the modular LFSR, the contents
An n-stage single-input signature register (SISR).
• { }
2 n⋯1
r = r0r1r2−rn⋯1 : r (x) = r0 + r1x + r2 x + − + rn⋯1x is the signature.
• f (x) = 1 + x + x
we 4obtain q\x) =x^ +x^ and r\x) = 1 —
M-M H •
-i-x-\-x^ ^J
M'{x) = l+x-\-x^ ~\-x^-\-x^, as given in Figure 5.30b. Using polynomial divi
—or• R = {1110}. Because the f
signature jR', {1110}, is different from the fault-free signature R, [1011], fault
•
detected.
M ro For fault/2 with
3 M4' ' = {11001101}
6 7 or M''(^) = 1+^+-^^-f-^^ H-^^ as giv
M = {10011011}, M (x) = 1 + x + x + x + x
^1 rz A3 M' To r^ 1-2 Tg M " ^0 r^ ^2 ^
1 0 0 0 0 1 0 0 0 0 1 0 0 0 0
•
1 1 0 0 0 1 1 2 0 30 0 0 1 0 0 0
Using polynomial0 division,
1 1 0 we 0have q (x) 0 = x
1 + x
1 0 0 and 1 0 1 0 0
2 1 30
r (x) = 1 + x + x . 1 1 0 M-M
1
H
0 1—•
1 —•
0 ^J 1 1 0 1 0
1 1 0 1 1 0 1 0 1 1 0 1 1 0 1
M ro ^1 rz A3 M' To Tg M " ^0
•
0 0 0 0 1 0 0 0 0 r^ 1-2 1 0 r^
1 ^20 ^3 1 0
M' detected; 0 1 11 00 0 0 0 0 1 1
1 0 0 0 0
1 0 0 1
1 0 0 0 0
0 1 0 1
1 1 0 0 0 1 1 0 0 0 0 1 0 0 0
M'' not detected.1 0 01 11 1 0 0 0 1 0 1 1 1 1 00 00 1 10 1 01 0 1
0 0
R 1 10 01 1 1 1 0 R' 1 1 0 1 1 11 00 1 H- 1 01 10 0 1 1
1 1 0 1 1 0 1 0 1 1 0 1 1 0 1
0
(a) 0 0 0 1 0 0 (b)0 0 1 0 1 0 1(c) 0
0 1 1 0 0 1 1 1 0 0 1 0 1 0 1
1 0 1 1 0 1 1 1 0 0 1 0 1 1 0
• FIGURE 5.30 R 1 0 1 1 R' 1 1 1 0 H- 1 0 1 1
FIGURE 5.31
• FIGURE 5.32
Mo 1 0 0 1 0
A four-stage MISR.
01010
M2 1 1 000
M3 10011
M
Mo 1100001110 0 1 1
01010
FIGURE 5.33 M2 1 1 000
M3 10011
An equivalent M sequence.
M 10011011
VLSI System Testing 119 Jiun-Lang Huang, GIEE/ICDA, NTU
Logic Built-In Self-Test (LBIST)
LBIST Architecture
• In general, test per scan. includes an optional linear phase shifter and an optional linear phase compactor
isSin—HPRPG
>\ SISR • S,
often used in industrial applications [Nadeau-Dostie 2000] [Cheon 2005]. The
linear phase shifter and linear phase compactor typically comprise a network of
(C)
^
and improve the PRPG randomness.
f