Module 8 Memory Testing
Module 8 Memory Testing
(ET4076)
Lecture 7
Memory Testing
Said Hamdioui
s-a-0
Stuck-at faults & s-a-0 t=1
time-frame expansion
t=0
VLSI Test Technology and Reliability 3
Motivation
• Memory contains millions of states
Memory Testing:
1. Basics of memory devices
Topics:
• History of memory
• History of DRAM
• History of SRAM
• Importance of memory testing
• Test objectives and requirements
used:
• Registers: Flip flops Main memory
• Cache: SRAM
• Main: DRAM
Secondary storage
• Secondary: Hard disk
DRAMs are
• Widely used
• Standalone chip
• Most sensitive VLSI
chip
• Increase exponentially
in size
• 32 GB+ in 2020!
SRAMs are
• Widely used
• Embedded with logic
• More sensitive than
logic
• Increase in size
• Dominate chip area
• 94% in 2014!
Repair capabilities
BIST required BISR
Memory Testing:
2. Semiconductor memory architecture
Topics:
• Memory models
• Behavioral model
• Functional model
• Electrical model
• Layout model (rarely reported)
Column decoder
Row decoder
Functional Memory Functional fault;
array <1; 0/1/->
Increasing
level Logical
of abstraction Electrical
fault
Electrical
Layout Defect
• Functions of
the system
• functional blocks
(with behavior model)
• Memory cell array
consist of n cells
n=RxC
R: Rows (Word lines)
C: Columns (Bit lines)
• Physical implementation
of the system
• Diffusion regions, metal
layers, contacts, etc.
• Usually confidential
• Physical implementation
of the system
• Diffusion regions, metal
layers, contacts, etc.
• Usually confidential
Memory Testing:
3. Functional fault models
Topics:
• Reduced memory model
• Memory cell array faults
• Fault primitive concept
• Classification
• Definition of fault models
• Neighborhood pattern sensitive faults
• Address decoder faults
• Read/Write logic faults
Addresses
Address decoders
Control
Data-out
Read/write circuits
Data-in
Data
Memory Data outputs
inputs
Fault primitives
#C #O
Neighborhood
Single cell Coupling pattern sensitive Static Dynamic
Cv Ca Cv Ca Cv Ca Cv
K-coupling
Ax Cx Cx Ax Cx
Ay Cy Ay
Fault 1 Fault 2 Fault 3 Fault 4
• Fault combinations
Ax Cx Ax Cx Ax Cx Ax Cx
Ay Cy Ay Cy Ay Cy
Fault A (1+2) Fault B (1+3) Fault C (2+4) Fault D (3+4)
Volt
Time
• Consist of e.g.,:
• Slow Sense Amplifier Fault (SSAF)
• Slow Write Driver Fault (SWDF)
• Slow PRecharge circuit Fault (SPRF)
⇒Speed related faults
Memory Testing:
4. Memory test development
Topics:
1. Test notation
How we can describe a memory test
2. Detection conditions
Fault model test requirements
Addresses N
Data-in B Data-out
Memory
Controls C
Cell
w1 r1 w0 r0 time
Memory (c = cell)
c c c c c
• Going up, read 0, then write 1
c c c c c
• Going down, read 1 c c c c c
c c c c c
c c c c c
Memory (c = cell)
• Example:
• Transition Fault 1 (TF1) = <0w1/0/->
• To detect, start with 0, write 1, then read it!
State
• Detection condition 0
# Sa Sv F R <Sa; Sv/F/R>
Compile the 4 FPs into 1 FM: 1 0 0 1 - <0; 0/1/->
State Coupling Fault (CFst)
2 0 1 0 - <0; 1/0/->
3 1 0 1 - <1; 0/1/->
4 1 1 0 - <1; 1/0/->
Ax Cx Ax Cx Ax Cx Ax Cx
Ay Cy Ay Cy Ay Cy
Fault A (1+2) Fault B (1+3) Fault C (2+4) Fault D (3+4)
Detection condition
A test detects AFs iff it contains the following two march elements;
x=0 or x=1:
• (rx, …, wx*, [rx*]h)
⇑
• ⇓ (rx*, …, wx , [rx]h)
h for hammer; h≥ 1
Question: what is the optimal test detecting all AFs?
Memory Testing:
5. Well-known memory tests
0 1 0 1
• Test length: 4n => O(n)
1 0 1 0
• March tests:
+ Based on fault models
+ Linear time complexity
+ Acceptable fault coverage
• With newer technologies
• New defects
• New fault models required
• New advanced tests
March MSS={
(w0); M0
⇑(r0,r0,w1,w1); M1
⇑(r1,r1,w0,w0); M2
⇓(r0,r0,w1,w1); M3
⇓(r1,r1,w0,w0); M4
(r0)} M5
IRF/ RDF 2/2 2/2 2/2 2/2 2/2 2/2 2/2 2/2
CFds [rx] 3/8 8/8 8/8 8/8 7/8 8/8 8/8 8/8
CFds [xwx*] 3/8 8/8 7/8 8/8 8/8 7/8 4/8 8/8
CFds [xwx] 0/8 0/8 0/8 0/8 0/8 7/8 0/8 8/8
CFrd/ CFir 4/8 8/8 8/8 8/8 4/8 8/8 8/8 8/8