Delay Testing: System-on-Chip Test Architectures Ch. 6 - Delay Testing - P. 1
Delay Testing: System-on-Chip Test Architectures Ch. 6 - Delay Testing - P. 1
Delay Testing
Focus on
Delay test application Delay fault models Test generation High quality delay tests
Ch. 6 - Delay Testing P. 2
Introduction
Goal
of Delay Testing
Primary: Verify circuit timing (e.g. clock frequency) over supply voltage and temperature range Secondary: Identify marginal circuits that meet specifications
Random
Apply random patterns at rated clock speed Advantages
Can generate patterns on-chip (BIST) Applied as in normal operation Fortuitous detection of unmodeled faults
Disadvantages
Poor coverage of long paths Higher than normal circuit activity (power, noise)
Functional
Apply functional patterns at rated clock speed Advantages
Most accurate test Chip operating in normal mode Fortuitous detection of unmodeled faults
Disadvantages
Poor coverage, coverage difficult to compute High test pattern development cost High test application cost without large on-chip cache/memory
Structural
Use delay fault models and circuit structure to generate tests Advantages
Automatic test pattern generation High fault coverage Easier diagnosis
Disadvantages
Simplifying assumptions in delay fault model Design for testability (DFT) required for high coverage Test application very different than normal operation
xn
x1 x2
z1 z2 zm
Combinational Logic
y1 y2 yl Y1 Y2 Yl
Flip-Flops
Primary Inputs (PI) x1, x2, Primary Outputs (PO) z1, z2, Pseudo Primary Inputs (PPI) y1, y2, Pseudo Primary Outputs (PPO) Y1, Y2,
clock
EE141 System-on-Chip Test Architectures
Design Assumptions
Most flip-flops and latches are scanned Embedded memory modeled as black boxes
Test them separately
Delay from gate input to output Can have different delays for rising or falling transitions, different inputs to outputs Interconnect delay lumped with gate
delay
Minimum pulse width that propagates through a gate Used to analyze glitch generation and propagation
Min-max
delay
Abstraction of process variation Gate and interconnect delay correlations usually not available
EE141 System-on-Chip Test Architectures
Required to launch transitions First (initialization) vector initializes circuit Second (test) vector launches transitions
Launch-on-shift (LOS) also known as skewed load, launch-off-shift Launch-on-capture (LOC) also known as broadside test, launch-off-capture
Ch. 6 - Delay Testing P. 13
Irrespective of which path the effect is propagated, the gross delay defect will be late arriving at an observable point Most commonly used in industry
Simple and number of faults linear to circuit size Also needs 2 vectors to test
Launch-on-Shift Approach
Last scan-in shift cycle
Launch cycle Capture cycle
Scan enable
1 Scan-in 0
A
Combinational Circuit
Scan-out
Launch-on-Shift Approach
Last scan-in shift cycle
Launch cycle Capture cycle
Scan enable
1
A
0 1
Combinational Circuit
Launch-on-Shift Approach
Last scan-in shift cycle
Launch cycle Capture cycle
Scan enable
Scan-in A
1 0
Combinational Circuit
Scan-out
Launch-on-Shift Approach
Last scan-in shift cycle
Launch cycle Capture cycle
Scan enable
Scan-in A
1 0
Combinational Circuit
Scan-out
Launch-on-Capture Approach
Last scan-in shift cycle
Dummy cycle Launch Capture
Scan enable
Scan-in A
0 1
Combinational Circuit
Scan-out
Launch-on-Capture Approach
Last scan-in shift cycle
Dummy cycle Launch Capture
Scan enable
Scan-in A
0 1
Combinational Circuit
0 0
Scan-out
Launch-on-Capture Approach
Last scan-in shift cycle
Dummy cycle Launch Capture
Scan enable 0
Scan-in A
0 1
Combinational Circuit
Scan-out
Launch-on-Capture Approach
Last scan-in shift cycle
Dummy cycle Launch Capture
Scan enable
Scan-in A
0 0
Combinational Circuit
Scan-out
Launch-on-Shift Implication
Scan-in
1X A Combinational Circuit
B X0
Scan-out
EE141 System-on-Chip Test Architectures
Launch-on-Capture Implication
Scan-in
Combinational Circuit 1X
B X0
Scan-out
EE141 System-on-Chip Test Architectures
Test Robustness
Robust
Robustness Examples
Robust Nonrobust
0 Functionally Sensitizable
3 t=7 2
v2 v1
transition fault may be propagated robustly, non-robustly, or neither Example: STF at output of gate a
Path Length
10000
20000 Fault
30000 Launch-on-Shift
Ch. 6 - Delay Testing P. 31
Launch-on-Capture
treat each transition fault as two stuck-at faults Node x slow-to-rise (x-STR) can be modeled simply as two stuck-at faults
First time-frame: x/1 needs to be excited Second time-frame: x/0 needs to be excited and propagated Use x/0 and x/1 for x-STF Apply
Classic model
Any path could have any delay Must test all paths But infeasibly large number of paths exponential in circuit size
Scan cells
Scan cells
Direct Implication
Detect
path
Large saving if many paths in the logic block
gi
1
EE141 System-on-Chip Test Architectures
Logic Block
0
gj
Other Heuristics
Smart
PERT
0 0 0 0 0 0 0 0
1 0 1 x u 0/u 1/u u
x u 0/u 1/u x/u 0 0 0 0 0 x u 0/u 1/u u x 0/u 0/u x/u x/u 0/u u 0/u u 0/u 0/u 0/u 0/u 0/u 0/u x/u u 0/u 1/u x/u x/u 0/u 0/u x/u x/u
Ch. 6 - Delay Testing P. 41
x Unknown u Uncontrollable
EE141 System-on-Chip Test Architectures
0 0 0 0 0 0 0 0
1 0 1 x u 0/u 1/u u
x u 0/u 1/u x/u 0 0 0 0 0 x u 0/u 1/u u x 0/u 0/u x/u x/u 0/u u 0/u u 0/u 0/u 0/u 0/u 0/u 0/u x/u u 0/u 1/u x/u x/u 0/u 0/u x/u x/u
x Unknown u Uncontrollable
EE141 System-on-Chip Test Architectures
n1
x
g1
n3
0/u x n4
M2
n2
g2
0/u n5
n1
x
g1
n3
0/u x n4
M2
n2
g2
0/u n5
Final Justification
Detect
global conflicts which cannot be detected by direct implication Find the vector pair which sensitizes the path
PODEM/FAN based justification algorithm
A long transition fault test tests longer paths than a regular transition fault test
EE141 System-on-Chip Test Architectures
Pseudo-Functional Testing
Avoids
Constrained ATPG
To avoid scanning in functionally unreachable states, constraints can be used Let (x + y) represent a constraint
then abcd={1000, 0100, 1100, 1001, 0101, 1101, 1010, 0110, 1110} are the illegal states
a b c d
EE141 System-on-Chip Test Architectures
Pair-wise Constraints
Compute constraints via logic implications Implications for g=0 and g=1 over the time window -t to t (t is user-specified) are first computed and stored Apply transitive law to identify those implications in the 0th time frame a implies b (next time-frame), b implies c (previous time-frame), then a implies c (same time-frame) Remove all combinational implications
Resulting
Multi-Literal Constraints
[A=1] [B=1] [F=0] in the next time-frame. Key: identify x A (prev time frame) and y B (prev time frame), then we have (x y) [F=0] in the same time-frame
Constrained ATPG
Given
a set of computed constraints, U ATPG must not violate any constraint in U during the search Key: want U to be as comprehensive as possible
ATPG without any constraints Map each generated pattern to a known valid state Must make sure the modification still detects the target fault
May need to try mapping to different valid states