Chapter 6 Test Compression - IC
Download
Report
Transcript Chapter 6 Test Compression - IC
Chapter 6
Test Compression
EE141
VLSI
Test Principles and Architectures
1
Ch. 6 - Test Compression – P. 1
What is this chapter about?
Introduce the basic concepts of test data
compression
Focus on stimulus compression and response
compaction techniques
Present and discuss commercial tools on test
compression
EE141
VLSI
Test Principles and Architectures
2
Ch. 6 - Test Compression – P. 2
Test Compression
Introduction
Test
Stimulus Compression
Test Response Compaction
Industry Practices
Concluding Remarks
EE141
VLSI
Test Principles and Architectures
3
Ch. 6 - Test Compression – P. 3
Introduction
Why do we need test compression?
Test data volume
Test time
Test pins
Why can we compress test data?
Deterministic test vector has “don’t care” (X’s)
EE141
VLSI
Test Principles and Architectures
4
Ch. 6 - Test Compression – P. 4
Test data volume v.s. gate count
Volume of test data (Gb)
70
60
50
40
30
20
Test data volume
increases with circuit size
10
0
1
2
4
8
16
32
Gate count (Mg)
64
(Source: Blyler, Wireless System Design, 2001)
EE141
VLSI
Test Principles and Architectures
5
Ch. 6 - Test Compression – P. 5
Test compression categories
Test
Stimulus Compression
Code-based schemes
Linear-decompression-based schemes
Broadcast-scan-based schemes
Test
Response Compaction
Space compaction
Time compaction
Mixed time and space compaction
EE141
VLSI
Test Principles and Architectures
6
Ch. 6 - Test Compression – P. 6
Architecture for test compression
Response
Stimulus
EE141
VLSI
Test Principles and Architectures
Core
Compactor
Low-Cost
ATE
Decompressor
Compressed
Stimulus
Compacted
Response
7
Ch. 6 - Test Compression – P. 7
Test stimulus compression
Code-based schemes
Linear-decompression-based schemes
Broadcast-scan-based schemes
EE141
VLSI
Test Principles and Architectures
8
Ch. 6 - Test Compression – P. 8
Test stimulus compression
Code-based schemes
Dictionary code (fixed-to-fixed)
Huffman code (fixed-to-variable)
Run-length code (variable-to-fixed)
Golomb code (variable-to-variable)
EE141
VLSI
Test Principles and Architectures
9
Ch. 6 - Test Compression – P. 9
Code-based schemes
Dictionary code (fixed-to-fixed)
EE141
VLSI
Test Principles and Architectures
10
Ch. 6 - Test Compression – P. 10
Code-based schemes
Huffman code (fixed-to-variable)
EE141
VLSI
Test Principles and Architectures
11
Ch. 6 - Test Compression – P. 11
Code-based schemes
Huffman code (fixed-to-variable)
EE141
VLSI
Test Principles and Architectures
12
Ch. 6 - Test Compression – P. 12
Code-based schemes
Run-length code (variable-to-fixed)
EE141
VLSI
Test Principles and Architectures
13
Ch. 6 - Test Compression – P. 13
Code-based schemes
Golomb code (variable-to-variable)
EE141
VLSI
Test Principles and Architectures
14
Ch. 6 - Test Compression – P. 14
Code-based schemes
Golomb code (variable-to-variable)
EE141
VLSI
Test Principles and Architectures
15
Ch. 6 - Test Compression – P. 15
Test stimulus compression
Linear-decompression-based schemes
Combinational linear decompressors
Fixed-length sequential linear decompressors
Variable-length sequential linear decompressors
Combined linear and nonlinear decompressors
EE141
VLSI
Test Principles and Architectures
16
Ch. 6 - Test Compression – P. 16
Linear-decompression-based schemes
EE141
VLSI
Test Principles and Architectures
17
Ch. 6 - Test Compression – P. 17
Linear-decompression-based schemes
EE141
VLSI
Test Principles and Architectures
18
Ch. 6 - Test Compression – P. 18
Linear-decompression-based schemes
EE141
VLSI
Test Principles and Architectures
19
Ch. 6 - Test Compression – P. 19
Linear-decompression-based schemes
Combinational linear decompressors
XOR
Network
XOR Network
MISR
EE141
VLSI
Test Principles and Architectures
20
Ch. 6 - Test Compression – P. 20
XOR network: a 3-to-5 example
s1 s2 s3
o1 o2
EE141
VLSI
Test Principles and Architectures
o3
o4
o5
21
Ch. 6 - Test Compression – P. 21
Linear-decompression-based schemes
Fixed-length sequential linear decompressors
EE141
VLSI
Test Principles and Architectures
22
Ch. 6 - Test Compression – P. 22
Linear-decompression-based schemes
Variable-length sequential linear decompressors
Can vary the number of free variables
Better encoding efficiency
More control logic and control information
EE141
VLSI
Test Principles and Architectures
23
Ch. 6 - Test Compression – P. 23
Linear-decompression-based schemes
Combined linear and nonlinear decompressors
Specified bits tend to be highly correlated
Combine linear and nonlinear decompression together
can achieve greater compression than either alone
EE141
VLSI
Test Principles and Architectures
24
Ch. 6 - Test Compression – P. 24
Test stimulus compression
Broadcast-scan-based schemes
Broadcast scan
Illinois scan
Multiple-input broadcast scan
Reconfigurable broadcast scan
Virtual scan
EE141
VLSI
Test Principles and Architectures
25
Ch. 6 - Test Compression – P. 25
Broadcast-scan-based schemes
Broadcast scan
EE141
VLSI
Test Principles and Architectures
26
Ch. 6 - Test Compression – P. 26
Generate patterns for broadcast scan
Force ATPG tool to generate patterns for
broadcast scan
EE141
VLSI
Test Principles and Architectures
27
Ch. 6 - Test Compression – P. 27
Broadcast scan for a pipelined circuit
Broadcast scan for a pipelined circuit
EE141
VLSI
Test Principles and Architectures
28
Ch. 6 - Test Compression – P. 28
Broadcast-scan-based schemes
Illinois scan architecture
(a) Broadcast mode
(b) Serial chain mode
EE141
VLSI
Test Principles and Architectures
29
Ch. 6 - Test Compression – P. 29
Broadcast-scan-based schemes
Reconfigurable broadcast scan
Reduce the number of channels that are required
Static reconfiguration
– The reconfiguration can only be done when a new
pattern is to be applied
Dynamic reconfiguration
– The configuration can be changed while scanning in a
pattern
EE141
VLSI
Test Principles and Architectures
30
Ch. 6 - Test Compression – P. 30
Broadcast-scan-based schemes
First configuration is: 1->{2,3,6}, 2->{7}, 3->{5,8}, 4->{1,4}
Other configuration is: 1->{1,6}, 2->{2,4}, 3->{3,5,7,8}
EE141
VLSI
Test Principles and Architectures
31
Ch. 6 - Test Compression – P. 31
Broadcast-scan-based schemes
Block diagram of MUX network
EE141
VLSI
Test Principles and Architectures
32
Ch. 6 - Test Compression – P. 32
Broadcast-scan-based schemes
Virtual scan
Pure MUX and XOR networks are allowed
No need to solve linear equations
Dynamic compaction can be effectively utilized
during the ATPG process
Very little or no fault coverage loss
EE141
VLSI
Test Principles and Architectures
33
Ch. 6 - Test Compression – P. 33
Test response compaction
Space compaction
Time compaction
Mixed time and space compaction
EE141
VLSI
Test Principles and Architectures
34
Ch. 6 - Test Compression – P. 34
Test response compaction
EE141
VLSI
Test Principles and Architectures
35
Ch. 6 - Test Compression – P. 35
Taxonomy of various response compaction schemes
Compaction Schemes
I
Space
Zero-aliasing Compactor
[Chakrabarty 1998] [Pouya 1998]
Parity Tree [Karpovsky 1987]
Enhanced Parity Tree [Sinanoglu 2003]
X-Compact [Mitra 2004]
q-Compactor [Han 2003]
Convolutional Compactor [Rajski 2005]
II
Time
CFS
III
CFI
Linearity
OPMISR [Barnhart 2002]
Block Compactor [Wang 2003]
i-Compact [Patel 2003]
Compactor for SA [Wohl 2001]
Scalable Selector [Wohl 2004]
EE141
VLSI
Test Principles and Architectures
Nonlinearity
36
Ch. 6 - Test Compression – P. 36
Test response compaction
Space compaction
Zero-aliasing linear compaction
X-compact
X-blocking
X-masking
X-impact
EE141
VLSI
Test Principles and Architectures
37
Ch. 6 - Test Compression – P. 37
Space compaction
Zero-aliasing linear compaction
EE141
VLSI
Test Principles and Architectures
38
Ch. 6 - Test Compression – P. 38
An example of response graph
EE141
VLSI
Test Principles and Architectures
39
Ch. 6 - Test Compression – P. 39
Space compaction
X-compact
X-tolerant response compaction technique
X-compact matrix
Error masking
EE141
VLSI
Test Principles and Architectures
40
Ch. 6 - Test Compression – P. 40
Space compaction
X-compact
EE141
VLSI
Test Principles and Architectures
41
Ch. 6 - Test Compression – P. 41
Space compaction
X-compactor with 8 inputs and 5 outputs
EE141
VLSI
Test Principles and Architectures
42
Ch. 6 - Test Compression – P. 42
X-compact Matrix
SC1
SC2
SC3
SC4
S= SC5
SC6
SC7
SC8
O1
O2
O= O3
O4
O5
M
EE141
VLSI
Test Principles and Architectures
T
X S = O
43
Ch. 6 - Test Compression – P. 43
Space compaction
X-blocking (or X-bounding)
X’s can be blocked before reaching the response
compactor
Can ensure that no X’s will be observed
May result in fault coverage loss
Add area overhead and may impact delay
EE141
VLSI
Test Principles and Architectures
44
Ch. 6 - Test Compression – P. 44
Space compaction
Illustration of the x-blocking scheme
EE141
VLSI
Test Principles and Architectures
45
Ch. 6 - Test Compression – P. 45
Space compaction
X-masking
X’s can be masked off right before the response
compactor
Mask data is required to indicate when the
masking should take place
Mask date can be compressed
– Possible compression techniques are weighted pseudorandom LFSR reseeding or run-length encoding
EE141
VLSI
Test Principles and Architectures
46
Ch. 6 - Test Compression – P. 46
Space compaction
An example of X-masking circuit
EE141
VLSI
Test Principles and Architectures
47
Ch. 6 - Test Compression – P. 47
Space compaction
X-impact
Simply use ATPG to algorithmically handle the
impact of residual x’s on the space compactor
Without adding any extra circuitry
EE141
VLSI
Test Principles and Architectures
48
Ch. 6 - Test Compression – P. 48
Space compaction
Handling of X-impact
EE141
VLSI
Test Principles and Architectures
49
Ch. 6 - Test Compression – P. 49
Space compaction
Handling of aliasing
EE141
VLSI
Test Principles and Architectures
50
Ch. 6 - Test Compression – P. 50
Test response compaction
Time compaction
A time compactor uses sequential logic to
compact test responses
MISR is most widely adopted
n-stage MISR can be described by specifying a
characteristic polynomial of degree n
EE141
VLSI
Test Principles and Architectures
51
Ch. 6 - Test Compression – P. 51
Multiple-input signature register (MISR)
EE141
VLSI
Test Principles and Architectures
52
Ch. 6 - Test Compression – P. 52
Test response compaction
Mixed time and space compaction
EE141
VLSI
Test Principles and Architectures
53
Ch. 6 - Test Compression – P. 53
Industry practices
OPMISR+
Embedded Deterministic Test
Virtual Scan and UltraScan
Adaptive Scan
ETCompression
EE141
VLSI
Test Principles and Architectures
54
Ch. 6 - Test Compression – P. 54
Industry solutions categories
Linear-decompression-based schemes
Two steps
– ETCompression, LogicVision
– TestKompress, Mentor Graphics
– SOCBIST, Synopsys
Broadcast-scan-based schemes
Single step
– SPMISR+, Cadence
– VirtualScan and UltraScan, SynTest
– DFT MAX, Synopsys
EE141
VLSI
Test Principles and Architectures
55
Ch. 6 - Test Compression – P. 55
Industry practices
OPMISR+
Cadence
Roots in IBM ‘s logic BIST and ATPG technology
EE141
VLSI
Test Principles and Architectures
56
Ch. 6 - Test Compression – P. 56
General scan architecture for OPMISR+
EE141
VLSI
Test Principles and Architectures
57
Ch. 6 - Test Compression – P. 57
Industry practices
Embedded Deterministic Test (TestKompress)
Mentor Graphics
First commercially available on-chip test
compression product
EE141
VLSI
Test Principles and Architectures
58
Ch. 6 - Test Compression – P. 58
EDT (TestKompression) architecture
EE141
VLSI
Test Principles and Architectures
59
Ch. 6 - Test Compression – P. 59
TestKompress stimuli compression
EE141
VLSI
Test Principles and Architectures
60
Ch. 6 - Test Compression – P. 60
TestKompress response compaction
EE141
VLSI
Test Principles and Architectures
61
Ch. 6 - Test Compression – P. 61
Industry practices
Virtual Scan and UltraScan
SynTest
First commercial product based on the broadcast
scan scheme using combinational logic for pattern
decompression
EE141
VLSI
Test Principles and Architectures
62
Ch. 6 - Test Compression – P. 62
VirtualScan architecture
EE141
VLSI
Test Principles and Architectures
63
Ch. 6 - Test Compression – P. 63
UltraScan architecture
EE141
VLSI
Test Principles and Architectures
64
Ch. 6 - Test Compression – P. 64
Industry practices
Adaptive Scan
Synopsys
Designed to be the next generation scan
architecture
EE141
VLSI
Test Principles and Architectures
65
Ch. 6 - Test Compression – P. 65
Adaptive scan architecture
EE141
VLSI
Test Principles and Architectures
66
Ch. 6 - Test Compression – P. 66
Industry practices
ETCompression
LogicVision
Built upon embedded logic test (ELT) technology
EE141
VLSI
Test Principles and Architectures
67
Ch. 6 - Test Compression – P. 67
ETCompression architecture
EE141
VLSI
Test Principles and Architectures
68
Ch. 6 - Test Compression – P. 68
Summary of industry practices
MISR: multiple-input signature register
MUX: multiplexers
PRPG: pseudo-random pattern generator
TDDM: time-division demultiplexer
TDM: time-division multiplexers
XOR: exclusive-OR
EE141
VLSI
Test Principles and Architectures
69
Ch. 6 - Test Compression – P. 69
Concluding remarks
Test compression is
An effective method for reducing test data volume
and test application time with relatively small cost
An effective test structure for embedded hard
cores
Easy to implement and capable of producing
high-quality tests
Successfully as part of design flow
Need to unify different compression
architectures
EE141
VLSI
Test Principles and Architectures
70
Ch. 6 - Test Compression – P. 70