MEMORY TESTING-Yalta04
MEMORY TESTING-Yalta04
MEMORY TESTING-Yalta04
RAM TESTING
Christian LANDRAULT
landraul@lirmm.fr
SUMMARY
Introduction
Memory modeling
Failure mechanisms and fault
modeling
Test algorithms for RAM
Introduction
Address Refresh
WL
WL
Data in
Write
Address latch Column decoder Refresh logic
BL BL Vss
Vss
BL
BL BL
BL
RAM write
Two dimensional 6-devices
6-device SRAM
6-deviceSRAM
circuit decoding scheme cell
SRAMcell
poly
cell depletion
(saves
Row decoder and wiring area)
Memory Write driver
CMOS
decoder
row decoder Cell Array
select row of cells
WL
via WL C
column
BL decoder
Corrosion
Electromigration (burning out of wires due to
collision of electrons and Al grains)
Bonding deterioration (open due to interdiffusion
of materials i.e. Au-Al)
Ionic contamination (modification of threshold
voltages due to ion diffusion into transistor gate)
Alloying (Al atom migration into Si)
Radiation and cosmic rays (soft memory errors,
)
.
Either a
memory cell
Functional faults
or a data Any wiring
registerconnection in
the memory
Address line stuck
Cell stuck
Open in address line
Driver stuck
Shorts between address
Read/write line stuck
lines
Chip-select line stuck Open decoder
Data line stuck Wrong access
Open in data line Multiple access
Shorts between data Cell can be set to 0 and
lines not to 1 (or vice versa)
Pattern sensitive
Crosstalk between
interaction between
data lines cells
Reduced Functional Model
Address Refresh
Address decoder
Sense amplifiers Data register
R/W
and
Data out Data in CE
Reduced Functional Model
(cntd)
Address
Address decoder
Read/write logic
Data
Fault Models: Address decoder
Fault AF
4 Address decoder Faults which cannot stand alone
(assuming same fault during read and write operations and
no sequential behavior of the faulty decoder)
Ay Cy
Fault C: 2+4 Ax Cx
Ay Cy
Fault D: 3+4 Ax Cx
Ay Cy
Conditions for detecting
address faults AF
The March test should contain
the two following march elements
(rx, , wx)
(rx, , wx)
Functional Memory Faults
Type-1 Type-2
Neighborhood Pattern Sensitive
(NPSF)
Active NPSF (ANPSF):
change of the base cell due to a transition in the neighborhood cells
Each base cell must be read in state 0 and in state 1, for all possible
changes in the neighborhood pattern
Passive NPSF (PNPSF):
the change of the base cell is impossible due to a certain neighborhood
cells configuration
Each base cell must be written and read in state 0 and in state 1, for all
permutations in the neighborhood pattern
Static NPSF (SNPSF):
The content of the base cell is forced to a certain state due to a certain
neighborhood pattern
Each base cell must be read in state 0 and in state 1, for all
permutations in the neighborhood pattern
Dynamic Fault models: examples
Linked faults are two or more faults (coupling faults) that affect
the same cell
<;1>
<;1> <;0> <;0>
i j k l i k l
2 CFid faults 2 CFid linked faults
Can be of the same type ( i.e. CF x->y and CF z->y )
or of different types ( i.e. CF x->y and TF rise y )
WL
BLB
Defect 1
COLUMN Tp2
DECODER
Tn2
Tn3 S SB Tn4
Tp1
Tn1
DECODER
ROW
Fault Min
Defect
MEMORY
Model Res(k )
ARRAY 1 dRDF ~130
2 RDF; DRDF ~8
3 RDF; DRDF ~3
I / O DATA
4 TF ~25
5 IRF; TF ~100
6 TF ~2000
Defect 1 involves a dynamic Read Destructive Fault
dynamic Read Destructive Fault
in the core cell
w0 r0 r0 r0 r0 r0
6
w-r-r-r-r-r
4 No Fault
0
1,6 1,8 2 2,5 3 3,5 4 6 8 10
Full
Behavioural test is definitively too
consuming (3.n.2n)
Classical
and early memory testing
methods with test time proportional
to
n (zero-one, checkerboard, )
n2 and n.log2(n) (walking1/0, ping-pong,
Galpat, Galcol, )
Test algorithm: Zero-One
0 0 0 0000
Number of operations
n n n.log2n n2 (hr!!)
1Mb 0.063 1.26 18.33
16Mb 1.01 24.16 4691.3
8774 Years !!
256Mb 16.11 451 1200959.9
2Gb 128.9 3994.4 76861433.7
March tests
Al
MATS+ l
All 5.n
MATS+ Al
All All 6.n
+ l
March Al
All All All 6.n
X l
March Al
All All All All All All 10.n
C- l
RD DR CF CF CF CF CF CF CF
Operat
ion
m SF TF IRF
DF F DF st ds tr wd rd drd ir count
10 10 10
MATS+ 0
50 -
0
-
0
50 25 25 - 50 - 50 5.n
March 10 10 10 10
- - 75 62 50 - 50 - 50 17.n
B 0 0 0 0
March 10 10 10 10 10 10 10 10
- - 66 - - 13.n
U 0 0 0 0 0 0 0 0
March 10 10 10 10 10 10 10 10
- - 66 - - 10.n
C- 0 0 0 0 0 0 0 0
March 10 10 10 10 10 10 10 10
- - 66 - - 14.n
LR 0 0 0 0 0 0 0 0
March 10 10 10 10 10 10 10 10 10
- 66 - 75 14.n
SR 0 0 0 0 0 0 0 0 0
March 10 10 10 10 10 10 10 10 10 10 10 10 10
22.n
SS 0 0 0 0 0 0 0 0 0 0 0 0 0
Testing of Neighborhood
Pattern-Sensitive Faults
Active NPSF (ANPSF):
Each base cell must be read in state 0 and in state 1, for all
possible transitions in the neighborhood pattern
(k-1).2k possible patterns, (type-1: k=5, type-2: k=9)
Passive NPSF (PNPSF):
Each base cell must be written and read in state 0 and in
state 1, for all permutations in the neighborhood pattern
2k possible patterns
Static NPSF (SNPSF):
Each base cell must be read in state 0 and in state 1, for all
permutations in the neighborhood pattern
2k possible patterns
Testing of Neighborhood
Pattern-Sensitive Faults
It is essential to minimize the number of
writes during NPSF testing
SNPSF patterns are produced following
an Hamiltonian sequence (hamiltonian
distance of 1 between patterns, Gray
code for example): k+2k-1 writes
ANPSF and PNPSF patterns are produced
following an Eulerian sequence : k+k.2k
writes
Testing of Neighborhood
Pattern-Sensitive Faults
Number of writes further reduced by testing
the neighborhoods simultaneously
Tilling method: number of Two-group method (type-
writes divided by k 1 only): number of writes
divided by 4
a
d B b
c
Group 1 Group 2
Basic NPSF location
algorithm
write base-cells with 0;
loop
apply a pattern; {it could change the base-cell from 0 to 1}
read base-cell;
endloop;
write base-cells with 1;
loop
apply a pattern; {it could change the base-cell from 1 to 0}
read base-cell;
endloop;
Basic NPSF detection
algorithm
write base-cells with 0;
loop
apply a pattern; {it could change the base-cell from 0 to 1}
read base-cell;
endloop;
write base-cells with 1;
loop
apply a pattern; {it could change the base-cell from 1 to 0}
endloop;
read base-cell;