E0-286 “VLSI Test” - Indian Institute of Science
Transcript of E0-286 “VLSI Test” - Indian Institute of Science
![Page 1: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/1.jpg)
1
E0-286 “VLSI Test”
1. Scan design requirements, types of scan.Scan design optimizations, managing scan forIPs and SOCs.
![Page 2: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/2.jpg)
2
Recap till now…
q Design for test overview
q Test requirements and economics
q Fault models
q Test for combinational and sequential circuits
q Algorithmic / CAD approaches for test
q This lecture is on scan design and test techniques for sequential circuits
![Page 3: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/3.jpg)
3
Optimizing sequential circuit test
q Testing an example sequential circuit:
f3
f5
f4
f8
f7
f6 =1?
f1
f0
f2
f9
a1
a0y0
y1
y2
y3
![Page 4: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/4.jpg)
4
Optimizing sequential circuit test
q Time-frame expansion: Constraints on f0 and f1 across time-frames…
f3
f5
f4
f8
f7
f6 =1?
f1
f0
f2
f9
a1
a0y0
y1
y2
y3
![Page 5: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/5.jpg)
5
Benefits of scan-based test
q Sequential test generation reduces to combinational test generation
f3
f5
f4
f8
f7
f6 =1?
f1
f0
f2
f9
a1
a0 y0
y1
y2
y3
![Page 6: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/6.jpg)
6
Scan Test
q Scanning the example sequential circuit
f3
f5
f4
f8
f7
f6 =1?
f1
f0
f2
f9
a1
a0y0
y1
y2
y3
![Page 7: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/7.jpg)
7
Scan Test
1
11
f8
f7
f6 =1?
11
1
f9a1a0 y0
y1
y2y3
0
00
1
1
1
XX
0
0a1
a0 y0
y1
y2
y3
1. Shift-in in the pattern- aka load / scan-in
2. Exercise the functionality- aka capture
3. Shift-out the response- aka unload/scan-out
shift_in shift_out
SE
… …CLK
![Page 8: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/8.jpg)
8
Scan Pattern
q A Scan pattern consists of ¦ Scan-in / shift-in / load
? Initialize all flip-flops to known state? Takes N cycles, with N flip-flops in ‘M’ scan chains§ N*(M-1) < Total number of flip-flops <= N*M
¦ Scan capture? Exercise the functionality of the design, captures the ‘D’ (i.e. functional)
input of the flip-flop? 1 or more cycles => capture-depth
¦ Scan-out / shift-out / unload? Observe the captured response by shifting out all flip-flops
q For example, P1: {<111111XXXX>, C, <XX00001110>}
q Shifting in of a new pattern may happen in parallel with shifting out of previous pattern’s response.
q Scan test time is usually limited by the shift-in time, i.e. length of the longest scan chain
![Page 9: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/9.jpg)
9
Scan insertion
q Scan replacement¦ Converting the existing (non-scan) design into a scan
design
q Scan stitching¦ Stitching the scan flip-flops to form scan chain(s)
D
CK
Q D’
CK
QD
SI
SE
0
1
D’
CK
QD
SI
SE
0
1
D’
CK
QD
SI
SE
0
1
D
CK
Q
D
CK
Q
![Page 10: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/10.jpg)
10
Scan Implementation
Exclusive Scan pathFunctional path
SI2
SI1
SO2
SO1
SE
From other FF(Q)
From other
FF(Q)
From other FF(Q)
From other FF(Q)
To other FF(D)
To other
FF(D)
Cycles 1 2 3 4 5 6 7SI1SI2SE
SO1SO2
10
![Page 11: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/11.jpg)
11
Other types of scan elements
q LSSD (Level-sensitive-scan-design)D
CK
Q
D flip-flop
D
MCK
Q
LSSDSCKSD
TCK
![Page 12: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/12.jpg)
12
Design requirements for scan
q Flip-Flop type requirements¦ Restrictions in mixing different flop styles¦ Restrictions in mixing different edge flops
? Posedge followed by negedge: lockup latch to avoid loss of data
q Pin requirements¦ Additional pins for scan in, scan out and scan enable
q Clocking requirements¦ Controllability of clocks from PI
q Reset requirements¦ Controllability of resets from PI
q Data-clock exclusion¦ Clock feeding as data in a register is not allowed
FF FFLA
FF FF
FF FF
TEST_MODE
RST_N
![Page 13: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/13.jpg)
13
Limitations of scan
q Test power overhead of scan¦ Higher shift power due to shifting in all flip-flops in the
design (which may not be functional scenario)¦ Higher capture power due to optimized ATPG (that
generates least patterns) with all flip-flops controllable
q Area overhead with scan, due to additional multiplexers and additional wire routes for scan chain
q Test time overhead of scan, due to shifting in all flip-flops in the design for one pattern
![Page 14: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/14.jpg)
14
Variants of scan
q Partial scan¦ Non-scan: No flip-flops are scannable¦ Full-scan: All flip-flops are part of scan chain(s)¦ Partial scan: A subset of flip-flops are scannable
? Capture depth > 1, in order to initialize non-scan flip-flops
q Hold-scan architecture¦ Additional hold latch at the output of scan flip-flop to hold the
output during scan shift¦ Additional area overhead, but helps in delay test and shift power
q Random-access scan¦ Scan flip-flops addressed as RAM, instead of shift register¦ Advantages: Update only those flip-flops necessary for test¦ Disadvantages: Area (gate area and routing) overhead
![Page 15: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/15.jpg)
15
Test points
q Test points: additional signals inserted into the design to improve controllability and/or observability
q Need for test points even in full-scan design¦ Hard to control / observe logic¦ Interface with non-scan logic/IPs¦ Multi-cycle paths
q Control point¦ 0(1)-control point: Ability to inject 0(1) by enabling a signal
¦ Generic control points? Example: controlling clocks and resets for scan design rule compliance
TEST TEST
0-control point 1-control point
![Page 16: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/16.jpg)
16
Test points with scan
q Observe point¦ An added output to observe the status of internal logic for test¦ Example: Digital logic driving analog IP boundary need to be
observed with digital test.
q Role of scan¦ Each test point may be assigned a scan flip-flop
? These are pure-DFT logic that is present in the scan chain to improve testability
¦ Group of test points may be assigned a scan flip-flop? Example: all specific control points may have one scan flip-flop to
enable them? Multiple observe points may be grouped to reduced flip-flops with
reduction logic (such as XOR) or muxes.§ Role of aliasing with reduction logic would be discussed in detail during section on BIST.
![Page 17: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/17.jpg)
17
SOC test economics
q Test economics with scan¦ Consider a SOC with 8 cores, each core has 1000 flip-flops and
SOC interface logic has 200 flip-flops§ Total flip-flops in SOC = 8200
? Let core 2 be the most complex core with 1000 test patterns? All other cores and SOC interface logic require 100 patterns
¦ If all flip-flops in SOC are always stitched together, Total test time = 8200*1000 ~ 8.2M !!
q Divide-and-conquer strategy helps reduce test time¦ Test each core separately
? Core test time = 7*1000*100 + 1000*1000 ~ 1.7M¦ Test SOC with all cores separately
? SOC test time = 8200*100 ~ 0.82M¦ Total test time ~ 2.5M
q Similar reductions are also applicable for test power
![Page 18: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/18.jpg)
18
Scan architecture for SOCs
q IP-internal logic test¦ Each IP to have scan chains to test the IP from SOC¦ SOC to provide standard access to IP scan chains
q SOC logic test (IP external test aka glue logic test)¦ Targets testing SOC logic that interfaces multiple IPs¦ Need scan chains of all (or interacting IPs) for test
A B
C DGlue-logic
TOP
A B
C DGlue-logic
TOP
A B
C DGlue-logic
TOP
A B
C DGlue-logic
TOP
A B
C DGlue-logic
TOP
Mode A Mode B Mode C
Mode D SOC Mode
SI SO
SO SO
SO
SO
SI SISI
SI
Core tested
Core not tested
![Page 19: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/19.jpg)
19
Further optimizing SOC test time
q SOC interface logic test is limiting for test time and test power
q All flip-flops of SOC interface logic are necessary
q All flip-flops within the core that interact with external world/SOC interface are necessary¦ All other flip-flops within the core that do not interact with external
world may be excluded from scan, to reduce test time? May be constrained to remain constant to also reduce test power
q Core scan architecture¦ A mode in which all core flip-flops are in scan chain¦ A mode in which only those core flip-flops that interact with
external world are in scan chain
1
0 SE
SI
SE
SI
0
1
1
0
0
1
Class 0-3 flopsCore-internal flops
SI
SE
Core_Bypass_ModeSO
Core_Bypass_Mode
1
0
1
0 SE
SI
SE
SI
SE
SI
SE
SI
0
1
0
1
1
0
1
0
0
1
Class 0-3 flopsCore-internal flops
SI
SE
Core_Bypass_ModeSO
Core_Bypass_Mode
Core wrap flops
![Page 20: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/20.jpg)
20
SOC test with IP wrappers
q Cores with standard wrappers¦ Reduce test time as entire core can now be excluded and only
wrapper flops are part of SOC interface test¦ Also reduces test power as entire core can be clock-gated off
q Modes of test¦ Intest: Testing core-internal logic
? Only core-internal and core-wrapper flip-flops in scan chain¦ Extest: Testing core-external logic
? Only core-wrapper and SOC interface flip-flops in scan chain? Core-internal flip-flops are excluded from scan chain
![Page 21: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/21.jpg)
21
SOC test without IP wrappers
q Identify “natural” bounding/isolation flip-flops in the interface of each core
q Modes of test¦ Intest: Testing core-internal logic
? Only core-internal flip-flops in scan chain¦ Extest: Testing core-external logic
? Core-bounding and SOC interface flip-flops in scan chain
![Page 22: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/22.jpg)
22
Design aspects:
q Types of scan flip-flops.
q Inputs / Outputs and controls required.
q Number of scan chains and lengths.
q Order of stitching flip-flops into scan chains.
q Stitching across IPs / Domains.
q Full scan versus partial scan.
Scan: Changes state setting complexity from exponential to linear.
q Ease of controllability. Ease of observability.
q No need for scan shift simulations after scan integrity checks.
q At-speed next state generation possible without tester inputs.
Recap: Various Aspects of Scan
22
![Page 23: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/23.jpg)
23
Functional and Structural Tests
q Ubiquitous need for non-functional inputs:¦ Examples: Memory back-to-back reads / writes, structural redundancy in
synthesised logic (non-minimal set of minterms), functional redundancy in 3-1 mux, counter with unused states, etc.
¦ Iddq: Non-functional inputs are also required for transistor defects, e.g. 00 input to two-input NAND gate.
q Scan state itself is not functional:¦ Next state after scan shift is not necessarily functional. It is just reachable.¦ Launch-off capture and launch-off shift patterns can both have non-
functional launch states.¦ Path delay pattern: Just a valid transition, not necessarily a valid path.
q Memory RAM sequential patterns have several scan operations per pattern (five below):¦ Scan Address2 => Write Data2 (initialize).¦ Scan Address1 => Write Data1.¦ Scan Address2 => Read Data2. (Detects faults where A1 maps incorrectly
to A2).23
![Page 24: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/24.jpg)
24
Waveforms for Different Patterns
shift_in shift_outcapture
shift_in shift_out
shift_in shift_outMultiple captures
no capture
Combinational ATPG / SAF pattern.
Iddq, TGF pattern.
Sequential ATPG / TRF pattern.
24
![Page 25: E0-286 “VLSI Test” - Indian Institute of Science](https://reader034.fdocuments.net/reader034/viewer/2022051319/627b48e85f1ad636bd1a8f57/html5/thumbnails/25.jpg)
25
Assignments
q Convert a modulo-10 ripple counter to a scannable design, satisfying all the presented scan design rules.
q For a design with 100 pos-edge and 4 neg-edge flip-flops, how would you architect scan chains for least test time, and no impact to quality, with 8 scan chains? You may consider only stuck-at tests.
q For a design with sequential feedback (eg. CRC32), what are the candidate flops that need to be scanned, in a partial scan design, so that capture depth <= 2? What happens when capture depth <= 3?
q Compute the gate area overhead for a design with scan. Assume a design with T transistors (which include F flip-flops). Let flop = 10 transistors, mux = 4 transistors).
q Quantify the average dynamic test power reductions in SOC with Divide-and-conquer scan architecture (Pick the same example as in test time calculation. Assume FF power is same as FF count and combinational logic power is 2X FF count).