Tetra Max
Tetra Max
Tetra Max
Outline
VLSI Testing
I t d ti Introduction Fault modeling T t generation Test ti
Yu-Jen Huang
Definitions
Design synthesis
Gi an I/O function, develop a procedure to Give f ti d l d t manufacture a device using known materials and processes
Verification
Predictive analysis to ensure that the synthesized design will perform the given I/O function
Testing
A manufacturing step that ensures that the physical device, device manufactured from the synthesized design design, has no manufacturing defect
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Why Testing?
Economy
P d t quality Product lit Product reliability
The purpose of testing is to weed out all bad products before they are shipped to users
The number of bad products heavily affect the price of good products
A profound understanding of the principles of manufacturing and test is essential for a designer to design a quality product
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Fault
A representation of a physical defect at the abstracted f f function level
E Error
A wrong output signal produced by a defective circuit It is caused by a fault or a design error
Yu-Jen Huang
Testing Problem
What faults to test
F lt modeling Fault d li
Yu-Jen Huang
Modern IC Testing
STIL 1 0; 110001001 000111000 101000011 111110001
Test program
Passed the test Devise under test (DUT) Automatic test equipment (ATE) Failed the test
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Cost of Test
Design for testability (DFT)
A Area overhead and yield reduction h d d i ld d ti Performance overhead
Manufacturing test g
Automatic test equipment (ATE) capital cost Test center operational cost p
Yu-Jen Huang
Outline
VLSI Testing
I t d ti Introduction Fault modeling T t generation Test ti
Yu-Jen Huang
Defect
Real defects are too numerous and hard to be analyzed
Yu-Jen Huang
Fault
Fault is a physical defect in a circuit/system
P Permanent Fault: a fault th t i continuous and stable, t F lt f lt that is ti d t bl whose nature do not change before, during, and after testing
Hard fault or solid fault
Temporary fault: a fault that is present only part of the time, occurring at random moments and affecting the system for finite, but unknown, intervals of time
Transient fault, soft error
Yu-Jen Huang
Functional fault
RAM coupling and pattern-sensitive faults
Error is manifestation of a fault that results in an incorrect module output or system state
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Failure
Failure is deviation of a system from its specified behavior
Fault -> error -> failure
F il Failure mechanism i a physical or chemical h i is h i l h i l process that causes devices to malfunction Failure mode is the cause of rejection of failed device (effect of failure mechanism), such as open/short interconnections, or degraded parameter values
Yu-Jen Huang
Yi ld (Y) = No. of good dies per wafer/No. of di Yield N f d di f /N f dies per wafer
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Yu-Jen Huang
Stuck-at-fault
Single stuck-at-fault: line has a constant value M lti l stuck-at-fault: several single SAF occur Multiple t k t f lt l i l SAFs at the same time
a b c
a 0 0 1 1
b 0 1 0 1
c 0 0 0 1
c(c/0) 0 0 0 0
c(c/1) 1 1 1 1
0 1 1
The SSF model disregards the possible presence of any other faults affecting the test for a target fault SSF assumes no chance of another fault masking the target fault, making it impossible to g g , g p detect
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
1 0
a b
g 1
h i
s/0
z 1/0
k 1
Yu-Jen Huang
Bridging Faults
Two or more normally distinct points (lines) are shorted together Two types of bridging faults
Input bridging
Can form wired logic or voting model
F db k b id i Feedback bridging
Can introduce feedback
x1 x2 xn . . . F Y x1 x2 xn x1 . . . F Y x2 xn . . . F Y
Yu-Jen Huang
AND bridges
The bridge acts like an AND gate
OR bridges
The bridge acts like an OR gate
Dominant bridges
Th dominating net always controls th value output The d i ti t l t l the l t t
Yu-Jen Huang
C0
FA
FA
FA
FA
C4
Z1
Advanced Reliable Systems (ARES) Lab.
Z2
Yu-Jen Huang
Z3
Z4
Transistor Faults
MOS transistor is considered an ideal switch and two types of faults are modeled
Stuck-open: a single transistor is permanently stuck in the open state Stuck-on: a single transistor is permanently shorted irrespective of its gate voltage
Detection of a tuck-open fault requires two vectors Detection of a stuck-on fault requires the measurement of quiescent current (IDDQ) t f i t t
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Path delay fault: A path delay fault assumes that a logic transition is delayed along an entire path
Because delays refers to differences in behavior over time delay faults focus on transition in logic time, values
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Outline
VLSI Testing
I t d ti Introduction Fault modeling T t generation Test ti
Yu-Jen Huang
Testing
Testing = test generation + test application + output evaluation FC can be determined by fault simulation Cost of test generation (TG) depends on
Complexity of the fault model Complexity of the TG algorithm Complexity of the DUT y
A test set for a class of faults F is a set of tests T such that for any fault f F , there exists t T such that t detects f
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
a 0 0 1 1
b 0 1 0 1
c 0 0 0 1
c(c/0) 0 0 0 0
c(c/1) 1 1 1 1
Ta/0 = {11}; Ta/1 = {01}; Tb/0 = {11}; Tb/1={10} Tc/0 = {11}; Tc/1 = {00} or {01} or {10} T = {01, 10, 11}
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Undetectable Fault
No pattern can be devised to detect fault U2 SA0
a U1
b 1/0 U2 c U3 Y
Yu-Jen Huang
D-algorithm
Select a primitive cube to activate fault f S Sensitize all possible paths f iti ll ibl th from th f lt site t the fault it to POs (fault propagation or D-drive)
Continued until a PO has a D or D
Develop a consistent set of primary input (PI) values that will account for all lines set to 0 or 1during D-drive. If not consistent, try another path
Yu-Jen Huang
Example
a c e b a d SA1 h g i f
a 1 1 1 1 1
b 1 1 1 1 1
d D D D
e 1 1 1 1
Yu-Jen Huang
g D D
0 0 0
D D D D D
1 1
D D
D D D D
Outline
VLSI Testing
I t d ti Introduction Fault modeling T t generation Test ti
Yu-Jen Huang
Yu-Jen Huang
Sequential Logic - I
clk
Yu-Jen Huang
Sequential Logic - II
Harder to test
S Sequential circuit h memory i addition t ti l i it has in dditi to combinational logic It takes more clock cycles to activate the fault and propagate the fault effect
Example
x x 1 x x 0 a b 1/0 z H x x x x 0 x x 0 c d
Yu-Jen Huang
Clock scan
LSSD
Yu-Jen Huang
Mux Scan
Primary Inputs (PIs) Combinational Logic Primary Outputs (POs)
Sequential Logic
Primary inputs
Combinational Logic
Primary outputs
Sequential Logic
Yu-Jen Huang
Scan Cell
PI Combinational Logic
PO
PPO SI T clk lk
mux PPI
..
SO
Yu-Jen Huang
Scan_out
clk
Yu-Jen Huang
Operation
1. Switch to SR mode 2 I iti li SR 2. Initialize
Load the first pattern
4. Switch to SR mode
Shift out the final state Setting the starting state for the next test Go back to the previous operation 3
Yu-Jen Huang
Disadvantages
Area overhead
Scan-in pin (SI), scan-out pin (SO), test mode pin (T), and mux in front of each FF
For large design, back-end re-optimization to fix scan timing is tedious and time-consuming g g
Yu-Jen Huang
Scan Synthesis
Scan configuration
Number of scan chains Types of scan cells Storage elements to exclude from scan synthesis How scan cells are arranged within scan chains
Scan replacement
Replace original design to scannable design
Scan reordering
Reorder scan chains
Scan stitching
Connect all scan cells together to form scan chains
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Yu-Jen Huang
Yu-Jen Huang
Scan-ready synthesis
check dft
insert dft
Insert scan
check dft
Post-scan DRC
Preview coverage
Advanced Reliable Systems (ARES) Lab.
Yu-Jen Huang
Yu-Jen Huang
Yu-Jen Huang
4.DFT Check
Pre-DFT DRC Ch k scan d i rule b f Check design l before scan chain h i synthesis dft_drc
Yu-Jen Huang
5.Test-Ready Synthesis
compile -scan
D clk
Yu-Jen Huang
Yu-Jen Huang
Yu-Jen Huang
Memory Block
add memory wrapper
si so si so
RAM
RAM
Un-observable
Un-controllable
Un-observable
Un-controllable
Yu-Jen Huang
Memory Wrapper
Add in step 5
set test point element -type observe [get object name set_test_point_element type [get_object_name [get_pins RAM_64B/D*]] -clock_signal clk point_element -type observe [g _object_name yp [get j set_test_p [get_pins RAM_64B/A*]] -clock_signal clk set_test_point_element -type control_01 [get_object_name [get_pins RAM_64B/Q*]] l k i [ t i RAM 64B/Q*]] -clock_signal clk l lk report_test_point_element
Yu-Jen Huang
8.Scan Preview
Check scan-path consistency Determines th chain count D t i the h i t Allocates and orders scan cells Adds connecting hardware
preview dft -show all preview_dft show preview_dft -test_points all
Yu-Jen Huang
Yu-Jen Huang
Yu-Jen Huang
Yu-Jen Huang
12.Handoff Design
Report scan information
report_scan_path -view existing_dft -chain all t th i i ti dft h i ll report_scan_path -view existing_dft -cell all
Yu-Jen Huang
13.Handoff Design
Prepare TetraMax script
change_names -hierarchy -rule verilog h hi h l il write -format verilog -hierarchy -out cpu_dft.vg write -format dd -hierarchy -output cpu_dft.ddc it f t ddc hi h t t dft dd write_scan_def -output cpu_scan.def set test_stil_netlist_format verilog f write_test_protocol -output cpu.spf
Yu-Jen Huang
Outline
VLSI Testing
I t d ti Introduction Fault modeling T t generation for combinational and sequential Test ti f bi ti l d ti l circuits
D i f T t bilit (DFT) Design for Testability Fault Simulation (TetraMAX) Lab time
Yu-Jen Huang
H ? How?
Use an ATPG tool which relies on proprietary techniques to speed up and extend the basic D algorithm
Fault list Test Generation Fault simulation Add pattern to test set
Test Set
Yu-Jen Huang
Simulation Testbenches
Design Compiler
Simulation Library
TetraMax
ATE Vectors
Fault Reports
run d d i drc design.spf f
Yu-Jen Huang
5 Fault Categories
During ATPG and functional fault simulation, TetraMAX classifies faults into 5 major categories
DT: Detected PT: Possibly d t t d PT P ibl detected UD: Undetected AU: AU ATPG untestable t t bl ND: Not detected
Test coverage
Yu-Jen Huang
TetraMAX
Setup file (CSHRC)
source / / d/ /usr/cad/synopsys/CIC/tmax.csh /CIC/t h source /APP/cshbank/tmax.csh
Invoking TetraMAX
tmax&
command
Yu-Jen Huang
By default, TetraMAX aborts a script file when a command returns an error To continue executing scripts, use g
BUILD> set_command noabort
Yu-Jen Huang
Yu-Jen Huang
Help Command
BUILD> help add
Add Atpg Constraints Add Cell Constaints Add Equivalent Nofaults Add Net Connections Add PI Constraints Add PO Masks Add Atpg Gates Add Clocks Add Faults Add Nofaults Add PI Equivalences
Yu-Jen Huang
BUILD> man getting_started BUILD> man add clock BUILD> man report faults BUILD> man z4-6 BUILD> man m68
// // // // //
Yu-Jen Huang
Stop Process
Submit button changes to Stop while performing operation or CTRL+C and CTRL+Break
Yu-Jen Huang
Basic Flow
Read in the netlist B ild M d Build Mode
BUILD> read netlist xxx.vg BUILD> read netlist tsmc18.v BUILD> run build_model top_model
DRC mode
DRC> set drc xxx.spf p DRC> run drc
Yu-Jen Huang
1.Read cpu_dft.vg tsmc18.v RAM_64B.tv 1 Read cpu dft vg & tsmc18 v & RAM 64B tv
Yu-Jen Huang
1.Build 1 Build
Yu-Jen Huang
1.DRC
3.Run 3R
Yu-Jen Huang
4.Test Mode
Test mode
TEST> report summaries f lt patterns t i faults tt TEST> add faults -all TEST report summaries f lt patterns TEST> t i faults tt TEST> run atpg -auto TEST> report summaries f S faults patterns Increase fault coverage
run atpg -fast seq. (or full seq.) f ( f ll )
Yu-Jen Huang
Test Coverage
Yu-Jen Huang
Reference
DFT compiler user guide T t M user guide TetraMax id
/APP/cad/synopsys/sold/2004.12/doc/online/test/
Yu-Jen Huang
Yu-Jen Huang