Chapter 3 Scan Architectures and Techniques
1
Chapter 3 Scan Architectures and Techniques
- >1,000,000 gates - >5,000,000 faults - >10,000 flip-flops - > 1,000 sequential depth - < 500 chip pins * > 2,000 gates/pin * > 2M = 21000 A deep sequential circuit Chip under Test without Scan
- >1,000,000 gates - >5,000,000 faults - > no effective flip-flops - > no sequential depth - < 500 + 10,000 chip pins * > 95.23 gates/pin * > 2M = 20 = 1 A combinational circuit Chip under Test with Full-Scan
Figure 3-1 Introduction to Scan-based Testing
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
2
Combinational & Sequential Logic input1 input2 input3 input4
output1 Q
D
QN clk
D
Q
D
Q
input5
D
input6
1
Q
2
output2
34
Sequential Depth of 4 Combinational Width of 6 26+4 = 1024 Vectors Figure 3-2 An Example Non-Scan Circuit
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
3
Combinational-Only Logic
input1 input2 input3 input4
output1 D
Q QN D
Q
D
Q
input5
input6
D
Q
output2
TPI1 TPI2 TPI3 TPI4 TPI5
A no-clock, combinational-only circuit with: 6 inputs plus 5 pseudo-inputs and
TPO1 TPO2 TPO3 TPO4
2 outputs plus 4 pseudo-outputs
Figure 3-3 Scan Effective Circuit
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
D
D
Q
4
Q
QN CLK
clk
Regular D Flip-Flop
SDO
D D
Q
SDI SE
Q SDO
clk
QN
CLK Scannable D Flip-Flop
Figure 3-4 Flip-Flop versus Scan Flip-Flop
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
5
SET D
SDO D
Q
Q
SDI QN SE clk
CLK Set-Scan D Flip-Flop with Set at Higher Priority
D SET
D
Q
SDI SE
SDO Q QN
clk
CLK Set-Scan D Flip-Flop with Scan-Shift at Higher Priority Figure 3-5 Example Set-Scan Flip-Flops
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
6
Combinational and Sequential Logic input1 input2
output1
input3 input4 SE
SE
scanin
SDI
clk
Q
D
QN D
SDO
Q
SE
input5
SDI
D
input6
D
Q
SE
SE
SDI
SDI
0
scanout
Q
output2
SDO
SDO
1
SDO
1
1
4-Bit Scan Vector
Figure 3-6 An Example Scan Circuit with a Scan Chain
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
D
a D
SDI
7
Q
Q
b
QN SE
clk
SDO
CLK Scannable D Flip-Flop
The scan cell provides observability and controllability of the signal path by conducting the four transfer functions of a scan element. Operate: D to Q through port a of the input multiplexer: allows normal transparent operation of the element. Scan Sample: D to SDO through port a of the input multiplexer: gives observability of logic that fans into the scan element. Scan Load/Shift: SDI to SDO through the b port of the multiplexer: used to serially load/shift data into the scan chain while simultaneously unloading the last sample. Scan Data Apply: SDI to Q through the b port of the multiplexer: allows the scan element to control the value of the output, thereby controlling the logic driven by Q.
Figure 3-7 Scan Element Operations
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
D
From normal operation: D
Q
SDI
SE=0
Q QN
clk
SDO
CLK
Apply clocks for scan length D
Q
SDI SE=1
Q QN
SDO
clk
Scan Shift Load/Unload Mode
D
Q
SDI
Q QN
SE=1
clk
SDO
Scan Apply Mode (Last Shift)
The next rising edge of the clock will sample D
NOTE: unloading is simultaneous with loading the next test D
Q
SDI
SE=0
Normal circuit response will be applied to D
Return to Load/Shift mode to unload circuit response sample
CLK
D
When chain is loaded, the last shift clock will apply scan data While the clock is low, place SE = 0
CLK
D
While the clock is low, apply test data to SDI and Place SE = 1 At the rising edge of the clock, test data will be loaded
Functional Operation Mode
D
8
Q QN
clk
SDO
CLK Scan Sample Mode
Repeat operations until all vectors have been applied NOTE: the chip’s primary inputs must be applied during the scan apply mode (after the last shift)
Figure 3-8 Example Scan Test Sequencing
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
9
The Scan Sample The Last Shift In
The First Shift Out
CLK
SE
Scan Enable Assert
Scan Enable De-assert
The Output Pin Strobe SHIFT DATA
SHIFT DATA
FAULT EXERCISE
SAMPLE DATA
SHIFT DATA
SHIFT DATA
Faults Exercised Interval
Figure 3-9 Example Scan Testing Timing
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
Gated Clock Nets
10
clock tree distribution
Provide an Enable Signal f_seB force the clock on
Asynchronous or Synchronous Signals with Higher Priority than Scan—or Non-Scan Elements D Q HOLD SET CLR f_seB CLK Provide a Blocking Signal
D Q HOLD SET CLR CLK
Driven Contention During Scan Shifting
D Q
Q D
CLK
CLK
D Q
Q D
CLK
t_seB Provide a Forced Mutual Exclusivity
CLK
Figure 3-10 Safe Scan Shifting
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
11
The Scan Sample The Last Shift In
The First Shift Out
CLK
Faults Exercised Interval SE
t_seB
a tristate scan enable may be a separate signal that has slightly different timing than the flip-flop SE
Driven Contention during the Capture Cycle
D Q
Q D
CLK
CLK
D Q
Q D
CLK
t_seB de-asserted
CLK
Figure 3-11 Safe Scan Vectors
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
12
Combinational-Only Logic
input1 input2 input3 input4
output1 D
Q QN D
Q
D
Q
input5
input6
D
Q
output2
TPI1 TPI2
TPO1
TPI3 TPI5
A clocked, sequential circuit with depth=1: 6 inputs plus 4 pseudo-inputs and 2 outputs plus 3 pseudo-outputs
TPO3 TPO4
Figure 3-12 Partial Scan
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
13
An Example Using a Chip with 1000 Scan Bits and 5 Scan Vectors Red Space Is Wasted Tester Memory 1000
1000
One Long Scan Chain
1000
Vector Data
One Channel
1000
X’s on all Other Channels not actively used for parallel pin data
Each Vector is 1000 Bits Long So 5 Vectors Are 5000 Bits of Tester Memory
Many Variable Length Scan Chains
120 X 80 XXX 100 XX 110 XX 90 XXX 180 X20 XXXX 100 XX 100 XX 100 XX
120 X 80 XXX 100 XX 110 XX 90 XXX 180 X20 XXXX 100 XX 100 XX 100 XX
Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data
120 X 80 XXX 100 XX 110 XX 90 XXX 180 X 20 XXXX 100 XX 100 XX 100 XX
120 X 80 XXX 100 XX 110 XX 90 XXX 180 X 20 XXXX 100 XX 100 XX 100 XX
10 Non-Balanced Channels
Each Vector Is 180 Bits Long—So 900 Bits of Tester Memory Differences from Longest Chain (180) Are Full of X’s—Wasted Memory
Many Balanced Scan Chains
100 100 100 100 100 100 100 100 100 100
100 100 100 100 100 100 100 100 100 100
Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data Vector Data
100 100 100 100 100 100 100 100 100 100
100 100 100 100 100 100 100 100 100 100
10 Balanced Channels
Each Vector Is 100 Bits Long—So 500 Bits of Tester Memory No Wasted Memory Space
Figure 3-13 Multiple Scan Chains
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
14
Borrowed DC Scan Input on Bidirectional Pin Combinational Logic
Scan Data Input
Output Data Path Blocked during Scan Shift
Output Enable with bus_se Captures through the or scan_mode Combinational Logic during the Sample Operation Combinational Logic
Any Bidir Functional Pin
D S SE
Pad
Captures Directly from the Input Pin During the Shift Operation
Q Input
Parallel Scan Input to Chip Normal Input to Logic
SE
Input Scan Interface—May Resolve to Functional during Sample Interval
Borrowed DC Scan Output on Bidirectional Pin Last Scan Shift Bit from Scan Chain
D Q Input
Normal Output from Logic
D S SE
Q
S SE
Input Data Path Is a Don’t Care during Scan Shift SE on Input Combinational Blocks Data Logic
Combinational Logic
Output
a b s
Added Scan Output Mux with bus_se or scan_mode
Scan Data Output Any Bidir Pin
Pad
Functional Output Enable with bus_se or scan_mode added
Output Scan Interface—May Resolve to Functional during Sample Interval Figure 3-14 The Borrowed Scan Interface
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
15
• Scan Bypass Clocks • Scan Testing an On-Chip Clock Source
Bypass Clocks
Analog
Digital 1
Digital 2
VCO Raw VCO Clock
Counters & Dividers
On-Chip Clock Generation Logic
Figure 3-15 Clocking and Scan
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
16
Driven Contention during Scan Shifting
D Q
Q D
CLK
CLK
D Q
Q D
CLK
CLK
t_seB Provide a Forced Mutual Exclusivity
Asynchronous or Synchronous Signals with Higher Priority than Scan—or Non-Scan Elements D Q HOLD SET CLR f_seB CLK Provide a Blocking Signal
D Q HOLD SET CLR CLK
Gated Clock Nets Provide a Blocking Signal f_seB
Figure 3-16 Scan-Based Design Rules
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
17
Basic Netlist Scan Insertion Element Substitution Ports, Routing & Connection of SE Ports, Routing & Connection of SDI-SDO Extras Tristate “Safe Shift” Logic Asynchronous “Safe Shift” Logic Gated-Clock “Safe Shift” Logic Multiple Scan Chains Scan-Bit Re-Ordering Clock Considerations
All Non-Sampling Clock Domains Inhibit Sample Clock Pulse
Last Shift
All Scan Chains (Clocks) Shift
Only One Clock Domain Conducts a Sample Clock
Figure 3-17 DC Scan Insertion
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
18
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
0
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
Scan Fail Data Presented at Chip Interface Automatically Implicates the Cone of Logic at One Flip-Flop
1 0
Multiple Fails under the Single Fault Assumption Implicate Gates Common to Both Cones of Logic
0
0 1
1
0 Figure 3-18 Stuck-At Scan Diagnostics
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
19
Basic Purpose • Frequency Assessment • Pin Specifications • Delay Fault Content
Cost Drivers • No Functional Vectors • Fewer Overall Vectors • Deterministic Grade
Figure 3-19 At-Speed Scan Goals
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
20
The Transition Launch The First Shift Out
The Last Shift In
The Transition Capture
CLK
Transition Generation Interval
Faults Exercised Interval
SE
T_SE
F_SE
Bus_SE
Separate Scan Enables for Tristate Drivers, Clock Forcing Functions, Logic Forcing Functions, Scan Interface Forcing Functions, and the Scan Multiplexor Control Because the Different Elements Have Different Timing Requirements
Figure 3-20 At-Speed Scan Testing
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
21
Borrowed Scan Input with Scan Head Register Output Data Path Blocked during Scan Shift Output Enable with bus_se Combinational Logic
Any Bidir Pin
D Q Input
Pad
Parallel Scan Input to Chip Normal Input to Logic
D S SE
Q Input
At-Speed Scan Interface—Resolves to Functional During Sample Interval
Driven Contention During Scan Shifting
D
Q
Q
CLK
CLK D
D
Q
Q
CLK
D
CLK
t_seB At-Speed Assert and De-Assert
Asynchronous or Synchronous Signals with Higher Priority than Scan or Non-Scan Sequential Elements D
Q
D
HOLD SET CLR CLK
Q
HOLD SET CLR
f_seB
CLK
At-Speed Assert and De-Assert Figure 3-21 At-Speed Scan Architecture
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
22
Borrowed AC Scan Input on Bidirectional Pin Combinational Logic
Output Data Path Blocked during Scan Shift Output Enable with at-speed bus_se
Scan Data Input
Captures through the Combinational Logic during the Sample Operation Combinational Logic
Any Bidir Functional Pin
S SE
Pad
Parallel Scan Input to Chip Normal Input to Logic
D Q Input
Captures Directly from the Input Pin During the Shift Operation
D Q Input Head
Input Scan Interface—Resolves to Functional during Sample Interval
Borrowed AC Scan Output on Bidirectional Pin Last Scan Shift Bit from Scan Chain
D Q Input
Normal Output from Logic
D S SE
Q Output
S SE
Input Data Path Is a Don’t Care during Scan Shift SE on Input Combinational Blocks Data Logic
Combinational Logic
a
D Q b Output s Tail
Added Scan Output Mux with bus_se
Scan Data Output Any Bidir Pin
Pad
Functional Output Enable with bus_se Added
Output Scan Interface—Resolves to Functional During Sample Interval Figure 3-22 At-Speed Scan Interface
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
23
Fast to Slow Transfers
Slow to Fast Transfers
Fast Logic
Slow Logic Fast to Slow Transfers
Fast Scannable System Registers
Slow Scannable System Registers
Clock A Scan Enable A
Clock B Scan Enable B
The Clock Domains and Logic Timing should be crafted so that the very next rising edge after the launch or last shift is the legal capture edge Last Scan Shift Edge
Legal ATPG Transfer
Illegal ATPG Transfer
Applied Fast Clock
Applied Slow Clock
Only Fast-to-Slow Legal ATPG Transfer
Figure 3-23 Multiple Scan and Timing Domains
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
24
Combinational Logic
Combinational Logic
Combinational Logic scanned flip-flop D
Q
D
SDI
Q
D
SDI
Q
SDI 165 ps
CLK
120 ps
SE
150 ps
First Clock Domain — All Elements on Same Clock Tree 300ps+
Cross Domain Clock Skew
Combinational Logic
Combinational Logic
Combinational Logic scanned flip-flop
D
Q
D
SDI
Q
D
SDI
Q
SDI 165 ps
CLK SE
120 ps 150 ps
Second Clock Domain—All Elements on Same Clock Tree Cross Domain Clock Skew must be managed to less than the fastest flip-flop update time in the launching clock domain If it is not, then the receiving flip-flop may receive new-new scan data before the capture clock arrives To prevent this outcome, constrain the ATPG tool to only sample one clock domain at a time during the sample interval
Figure 3-24 Clock Skew and Scan Insertion
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
25
Specification Development Scan Mode Bus_SE Tristate_SE Logic Force_SE Architecture Development
Simulation Verification
Model
Behavior Synthesis
Scan Shift SE Clock Force_SE Scan Data Connection Insertion
Timing Analysis
Place and Route
Scan Chain Bit Re-Ordering
Specification Determination
Gates Mask
Mask and Fab
Silicon Test
Silicon Design Flow Chart Scan Mode: Fixed “Safe” Logic
Scan Enable (SE): Scan Shift
Force_SE:
Force_SE: Clock Force States
Logic Forced States
Tristate_SE: Internal Tristates
Bus_SE: Scan Interface Control
Figure 3-25 Scan Insertion for At-Speed Scan
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
D Q R1 D Q R2 In1
0>1
A U35 B 0 X
In2 0
In3
0
In4 0
A U36 B A U39 B
26
Static Timing Analysis Provides Path Description of Identified Critical Path from the Q-Output of R1 to the Device Output Pin—Out1
0>1
1
A U37 B
1>0
A U38 B
1>0
Out1
1 Isolated Combinational Logic All Fan-in to Endpoint Is Accounted at this Endpoint Fanout to other Endpoints is Evaluated atThose Endpoints
Period = 20ns : Output Strobe @ 15ns Path Element Incremental Cumulative Description Delay Delay
Clk R1.Q U35.A U35.Z U37.A U37.Z U38.A U38.Z Out1
2.2ns 0.0ns 2.1ns 0.1ns 3.2ns 0.2ns 2.2ns 0.1ns Dly=10.1
Skew Amb. 0.0ns 2.1ns 2.2ns 5.4ns 5.6ns 7.8ns 7.9ns Slk=4.9ns
Timing Analysis Report Figure 3-26 Critical Paths for At-Speed Testing
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
27
Polynomial: X3 + X +1 = X3 + X1 + X0 = 23 + 21 + 20 = 11
LFSR - PRPG: pseudo-random pattern generation
X3 Seed
DQ 1
X2
DQ 1
X1
DQ 1
CLK
X0
111 011 001 100 010 101 110 111
Chip with Full-Scan and X-Management
DQ
DQ
DQ
CLK LFSR - MISR: multiple input signature register
Figure 3-27 Logic BIST
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch
Chapter 3 Scan Architectures and Techniques
28
Scan Testing Methodology Advantages Direct Observability of Internal Nodes Direct Controllability of Internal Nodes Enables Combinational ATPG More Efficient Vectors Higher Potential Fault Coverage Deterministic Quality Metric Efficient Diagnostic Capability AC and DC Compliance Concerns Safe Shifting Safe Sampling Power Consumption Clock Skew Design Rule Impact on Budgets Figure 3-28 Scan Test Fundamentals Summary
Design-for-Test for Digital IC’s and Embedded Core Systems © 1999 Prentice Hall, All Rights Reserved
Alfred L. Crouch