Memory Testing Algorithm
-
Upload
siddhi-doshi -
Category
Documents
-
view
19 -
download
0
description
Transcript of Memory Testing Algorithm
-
5/22/2018 Memory Testing Algorithm
1/50
Memory Fault Models and
Testing Algorithms
Hardik Doshi
-
5/22/2018 Memory Testing Algorithm
2/50
Memory Functional Faults
Stuck at Faults (SAF)
Transition Faults (TF)
Coupling Faults (CF) Neighborhood Pattern Sensitive Faults (NPSF)
2
-
5/22/2018 Memory Testing Algorithm
3/50
Stuck at Faults (SAF)
The logic value of a cell or line is stuck at always 0 or 1.
Stuck at 0 (SA0) If stuck at always is 0 logic value.
Stuck at 1 (SA1) if stuck at always is 1 logic value.
From each cell, a 0 and 1 must be read.
3
-
5/22/2018 Memory Testing Algorithm
4/50
Stuck at Fault
4
-
5/22/2018 Memory Testing Algorithm
5/50
Transition Fault (TF)
A special case of SAF is Transition Fault (TF).
A cell or line which fails to undergo a from 0 to 1 when it is
written is said to contain an up transition fault .
A cell or line which fails to undergo a from 1 to 0 when it is
written is said to contain an down transition fault.
Each cell must undergo a transition and a transition, andbe read after each transition before any further transitions.
5
-
5/22/2018 Memory Testing Algorithm
6/50
Transition Fault (TF)
6
transition fault
-
5/22/2018 Memory Testing Algorithm
7/50
Coupling Faults (CF)
Write Operation which transits or in one cellchanges the contents of a second cell.
Ci coupled to Cj means that an transition incell j causes or transition in cell i.
Inversion Coupling Faults (Cfin)
Idempotent Coupling Faults (Cfid)
Bridging and State Coupling Faults
7
-
5/22/2018 Memory Testing Algorithm
8/50
State Transition Diagram of Two Good
Cells, iand j
8
Sij represent the state of cell i and j.
-
5/22/2018 Memory Testing Algorithm
9/50
Inversion & Idempotent Coupling Faults
An or transition in one cell inverts thecontents of the second cell is called inversion
coupling cell (Cfin).
Ci is coupled to Cj means transition inCj inverts the content of the Ci.
Ci Cj coupled to Cj means transition inCj inverts the content of the Ci.
9
-
5/22/2018 Memory Testing Algorithm
10/50
Inversion Coupling Cfin
Sij represent the state of cell i and j
10
-
5/22/2018 Memory Testing Algorithm
11/50
Coupling Fault (CF)
A CF is called Asymmetric fault when the coupled cell only undergoes from0 to 1 or a 1 to 0 transition due to fault.
A CF is called Symmetric fault when the coupled cell undergo both from 0 to1 and from 1 to 0 due to fault.
The Cfid is asymmetric fault and the Cfin is a symmetric fault.
A CF is called one way CF if the CF is sensitized only upon one transition ofthe coupling cell.
A CF is called two way CF if the CF is sensitized upon either transition of thecoupling cell.
Single Cfid is a one way, asymmetric CF.
Combination of the Cfids and is a two way asymmetric CF. 11
-
5/22/2018 Memory Testing Algorithm
12/50
Idempotent Coupling Fault(Cifd)
An or transition in one cell force thecontents of the second cell to a particular
value 0 or 1 is called inversion coupling cell
(Cfid).
Ci is coupled to cj means transition in cell j would make 0 in cell i.
Ci Cj , Ci Cj, Ci Cj12
-
5/22/2018 Memory Testing Algorithm
13/50
Idempotent Coupling Fault Cfid
Sij represent the state of cell i and j
13
-
5/22/2018 Memory Testing Algorithm
14/50
Neighborhood Pattern Sensitive Faults(NPSF)
The content of a cell is influenced by the contents of all other cells in thememory. The content consists of a pattern of 0s and 1s, or changes inthese contents.
Its also considered as K-coupling fault.
Active NPSF
Passive NPSF
Static NPSF
Memory Array
b : Base cell
d : Deleted Neighborhood cell
b+d : Neighborhood
14
d
d b d
d
-
5/22/2018 Memory Testing Algorithm
15/50
Active NPSF
The base cell changes its contents due to a change in the
deleted neighborhood pattern.
This transition is in only one deleted neighbor cell whileother neighbor and bas cell contain a certain pattern.
Example Ci,j
where Ci,j is location of base cell.
15
-
5/22/2018 Memory Testing Algorithm
16/50
Passive & Static NPSF (PNPSF & SNPSF)
The content of the base cell cant be changed due tocertain deleted neighborhood pattern.(PNPSF)
The content of the base cell is forced to certain state dueto certain deleted neighborhood pattern.(SNPSF)
Ci,j < 0,0,1,1; /x >
Ci,j < 0,1,0,0; -/0 >
16
-
5/22/2018 Memory Testing Algorithm
17/50
Address Decoder Faults (AF)
Fault 1 Ax
Fault 2 Cx
Fault 3 Cx
Ay Cy
Fault 4 AxAy Cx
17
-
5/22/2018 Memory Testing Algorithm
18/50
Address Decoder Fault Combinations(AF)
Fault A:- (1+2) Ax Cx
Fault B:- (1+3) Ax Cx
Ay Ay Fault C:- (2+4) Ax Cx
Ay Cy
Fault D:- (3+4) Ax Cx
Ay Cy
18
-
5/22/2018 Memory Testing Algorithm
19/50
Condition for detection AF
The in a march element indicates thepresence of read or write operations.
1. (rx,,wx)
2. (rx,,wx)
19
-
5/22/2018 Memory Testing Algorithm
20/50
Linked and Unlinked Faults
When the fault may influence the behavior of the other
faults is called Linked Faults.
When the fault does not influence the behavior of otherfaults called Unlinked Faults.
SAF linked with TFs and CFs
TFs linked with CFs
Afs linked with SAFs/TFs/CFs
20
-
5/22/2018 Memory Testing Algorithm
21/50
Zero-One
(w0);(r0);(w1);(r1);
This test algorithm has minimum set to detect
the fault
All SAFs are detectable.
TF is not detectable.
CFs , and are not detectable.
Not all Afs are detectable.
21
-
5/22/2018 Memory Testing Algorithm
22/50
Checkerboard
22
Cells are divided in two groups cell-1 & cell-2.
0s and 1s are written alternate pattern and make the
checkerboard pattern.
All SAFs are detectable.
Not all Afs ,TFs and CFs are detectable.
Mainly used for sleeping sickness in DRAM chip.
Pattern 1 Pattern 2
1 0 1 0
0 1 0 1
1 0 1 0
0 1 0 1
0 1 0 1
1 0 1 0
0 1 0 1
1 0 1 0
-
5/22/2018 Memory Testing Algorithm
23/50
Walking 1/0
Memory is filled with 0s(or 1s) except for the base-cell, whichcontains 1(respectively a 0).
During Test, the base cell walks through the memory.
All cells read with the base cell last.
All Afs, SAF, TFs, Coupling faults are detectable.
0 0 0 0
0 1 0 0
0 0 0 0
0 0 0 0
23
-
5/22/2018 Memory Testing Algorithm
24/50
GALPAT
Memory is filled with 0s(or 1s) except for the base-cell,which contains 1(respectively a 0).
During Test, the base cell walks through the memory.
Base cell is read after each cell of memory read.
0 0 0 0
0 1 0 0
0 0 0 0
0 0 0 0
24
-
5/22/2018 Memory Testing Algorithm
25/50
Sliding Diagonal
Uses diagonal of base cell instead of single base cell because eachcell has a different row and column address so that it checking the
row and column simultaneously.
Writes diagonal 1s to background of 0s. All memory cells are read,after which diagonal is shifted until all diagonal are not covered.
1 0 0 0 0 0 1 0
0 1 0 0 0 0 0 1
0 0 1 0 1 0 0 0
0 0 0 1 0 1 0 0
First Diagonal Third Diagonal
25
-
5/22/2018 Memory Testing Algorithm
26/50
MATS Algorithm MATS requires total 4*n operations.
(w0); (r0,w1); (r1) ;
M0 M1 M2
M0=(w0); M1=(r0,w1); M2=(r1);
M0:for :=0 to n-1 do
begin
A[i]:=0;
end; Same for M1 and M2;
Fault coverage is very poor not capable of detection of
Coupling Faults.
26
-
5/22/2018 Memory Testing Algorithm
27/50
Moving 1/0 Algorithm
(w0); (r0,w1,r1); (r1,w0,r0); (w1); (r1,w0,r0);(r0,w1,r1); Here ji (;) Operation Cj Ci
M5 on Cj r0 0 0
M5 on Cj w1 1 1
M5 on Cj r1 1 1
M5 on Ci r0 1 1
j
-
5/22/2018 Memory Testing Algorithm
28/50
MATS++ Algorithm
(w0);(r0,w1);(r1,w0,r0);
SAFs :- (M1) and (M2)
TFs :- (M1 and M2) and (M2) Afs are detected by given above conditions.
This algorithm cant detect any coupling faults.
28
-
5/22/2018 Memory Testing Algorithm
29/50
March X Algorithm
(w0);(r0,w1);(r1,w0)(r0);
All Afs are detected.
SAF :- (M1 or M3) and (M2)
TFs :- (M1 followed by M2) and (M2 followed by M3)
Cfin (ji) :- Ci Cj detected by M1 followed by M2
Ci Cj detected by M2 Idempotent faults ,(only when j
-
5/22/2018 Memory Testing Algorithm
30/50
March C- Algorithm
(w0);(r0,w1);(r1,w0);(r0,w1);(r1,w0);(r0);
Unlinked Idempotent Coupling Faults(Cfid), SAF, TFS, Cfin, Afs.
Ci Cj :- M3 followed by M4 and M1 followed by M2
Ci is coupled to Cj means transition in j cell causes cell i to 0 logicvalue.
30
ji Operation Cj Ci
M1 on Ci r0 0 0
M1 on Ci w1 0 1M1 on Cj r0 0 1
M1 on Cj w1 1 0
M2 on Ci r1 1 0
-
5/22/2018 Memory Testing Algorithm
31/50
March C- Algorithm (w0);(r0,w1);(r1,w0);(r0,w1);(r1,w0);(r0);
Ci Cj :- M1 and M3
Ci Cj :- M4 followed by M5 and M2 followed by M3
31
ji (;1) Operation Cj Ci
M3 on Cj r0 0 0
M3 on Cj w1 1 1
M3 on Ci r0 1 1
ji (;1) Operation Cj Ci
M2 on Ci r1 1 1
M2 on Ci w0 1 0
M2 on Cj r1 1 0
M2 on Cj w0 0 1
M3 on Ci r0 0 1
-
5/22/2018 Memory Testing Algorithm
32/50
March C- Algorithm
(w0);(r0,w1);(r1,w0);(r0,w1);(r1,w0);(r0);
Ci Cj :- M2 and M4
Ci Cj :- M1 as well as M3 followed by M4 and M3
Ci Cj:- M2 as well as M4 followed by M5 and M4
32
j
-
5/22/2018 Memory Testing Algorithm
33/50
March A Algorithm
(w0);(r0,w1,w0,w1);(r1,w0,w1);(r1,w0,w1,w0);(r0,w1,w0);
AFs,SAFs Unlinked TFs
Unlinked Cfins
Linked Cfids
33
-
5/22/2018 Memory Testing Algorithm
34/50
March A Algorithm
(w0);(r0,w1,w0,w1);(r1,w0,w1);(r1,w0,w1,w0);(r0,w1,w0);
Ci Cj:- M2 and M1 as well as M4
Ci Cj :- M1 as well as M2 and M4
Ci Cj & Ci Cj:- M1 and M3
34
j
-
5/22/2018 Memory Testing Algorithm
35/50
March A Algorithm
(w0);(r0,w1,w0,w1);(r1,w0,w1);(r1,w0,w1,w0);(r0,w1,w0);
Ci is coupled to Cj means transition in j cell causes cell i to 0 logicvalue.
Ci Cj (possibly Ci Cj or Ci Cj) :- M2
Ci Cj (possibly Ci Cj or Ci Cj) :- M1
35
j
-
5/22/2018 Memory Testing Algorithm
36/50
March A Algorithm
(w0);(r0,w1,w0,w1);(r1,w0,w1);(r1,w0,w1,w0);(r0,w1,w0);
Ci Cj (not possibly Ci Cj or Ci Cj) :- M2 Ci Cj (not possibly Ci Cj or Ci Cj) :- M1
36
j
-
5/22/2018 Memory Testing Algorithm
37/50
March A Algorithm
(w0);(r0,w1,w0,w1);(r1,w0,w1);(r1,w0,w1,w0);(r0,w1,w0);
Ci is coupled to Cj means transition in j cell causes cell i to 0 logicvalue.
Ci Cj (possibly Ci Cj or Ci Cj ) :- M3 Ci Cj (possibly Ci Cj or Ci Cj ) :-M4
37
j>i (;0) Operation Cj Ci
M3 on Cj r1 1 1
M3 on Cj w0 0 0
M3 on Cj w1 1 0/1
M3 on Cj w0 0 0
M4 on Ci r1 0 0
j>i (;1) Operation Cj Ci
M4 on Cj r0 0 0
M4 on Cj w1 1 0/1
M4 on Cj w0 0 1
M4 on Ci r0 0 1
-
5/22/2018 Memory Testing Algorithm
38/50
March A Algorithm
(w0);(r0,w1,w0,w1);(r1,w0,w1);(r1,w0,w1,w0);(r0,w1,w0);
Ci is coupled to Cj means transition in j cell causes cell i to 0 logicvalue.
Ci Cj (not possibly Ci Cj or Cj) :- M3
Ci Cj (not possibly Ci Cj or Cj) :-M4
38
j>i (;0) Operation Cj Ci
M3 on Cj r1 1 1
M3 on Cj w0 0 1
M3 on Cj w1 1 0
M3 on Cj w0 0 0
M4 on Ci r1 0 0
j>i (;1) Operation Cj Ci
M4 on Cj r0 0 0
M4 on Cj w1 1 1
M4 on Cj w0 0 1
M4 on Ci r0 1 1
-
5/22/2018 Memory Testing Algorithm
39/50
March Y Algorithm
(w0);(r0,w1,r1);(r1,w0,r0);(r0);
AFs,SAFs are detectable.
TFs,Cfins are detectable. TFs linked with Cfins.
Ci Cj, Ci Cj Idempotent Faults are detectable.(j>i and j
-
5/22/2018 Memory Testing Algorithm
40/50
March Y Algorithm
(w0);(r0,w1,r1);(r1,w0,r0);(r0);
Ci Cj :- M2 (j>i)
Ci Cj :- M1 (j
-
5/22/2018 Memory Testing Algorithm
41/50
March B Algorithm
(w0);(r0,w1,r1,w0,r0,w1);(r1,w0,w1);(r1,w0,w1,w0);(r0,w1,w0);
Afs ,SAFs are detectable.
TFs ,CFs are detectable.
TF Linked Cfins & Cfids are detectable due to extra read operation is
performed immediately after the transition.
This extra read is not allowed TFs to masked by CFs because no
other write operations are performed to other cells.
41
-
5/22/2018 Memory Testing Algorithm
42/50
Comparison Between March Algorithms
Algorithms No. of Operation Fault Coverage
Mats 4n SAF, Some AF
Mats++ 6n SAF,AF
March X 6n SAF, AF, TF, Cfin
March C- 10n SAF, AF, TF,CF
March A 15n SAF, AF, TF, Linked Cfid ,Cfin
March Y 8n SAF, AF, Linked TF with Cfin
March B 17n SAF, AF, Linked TF with CFin &
CFid
42
-
5/22/2018 Memory Testing Algorithm
43/50
Moving Inversion (MOVI)
(w0);(r0,w1,r1);(r1,w0,r0);(r0,w1,r1);(r1,w0,r0)
MOVI used for functional test as well as the AC Parametric
test.
Any read or write operation in cell j disturb the content ofcell i will detect and also determine best & worst access
time with different address and different data pattern of
the chip.
Memory initialized to contain all 0s then this string of 0s isinverted successively to become all 1s and vice versa.
43
-
5/22/2018 Memory Testing Algorithm
44/50
Moving Inversion (MOVI)
Detection of read /write disturbances
44
Operation on
bit j
Disturbance of bit i Fault detected by
j>i i>j
r0 M3 M1 M4 M2
r1 M3 M1
M4 M2
w0 M2-M3 M0-M1
M4 M2
w1 M3 M1
M1-M2 M3-M4
-
5/22/2018 Memory Testing Algorithm
45/50
Moving Inversion (MOVI)
Determination of the access time
45
Current Next Performed by
March
element
Address Operation Address Operation
Ax r0 Ay r1 M2
Ay r0 Ax r1 M4
Ax r1 Ay r0 M1
Ay r1 Ax r0 M3
-
5/22/2018 Memory Testing Algorithm
46/50
Future Work
Test time and test operations are crucial factor formemory testing.
Develop such algorithm that find the maximum fault
coverage with efficient test time and test operation.
Develop effective algorithm which can find the
dynamic and physical defect fault with functional
faults.
Write recovery, Refresh line stuck-at, Sleepingsickness, Static data loss.
46
-
5/22/2018 Memory Testing Algorithm
47/50
Conclusion
Zero-one, Checkerboard are simple algorithms to test only SAFs
and address decoder faults.
GALPAT, Sliding window are used to test for coupling faults.
March algorithms are very well suitable with different patterns
to detect the common memory functional faults.
March B and March Y are covered to detect most of the
functional faults but it requires many operations and too much
time so that trade off requires between time of test, operation
to fault detection.
NPS fault are also crucial in large density memory to test but
these types of faults are complicated, not easy to locate and
requires large time to test them.
47
-
5/22/2018 Memory Testing Algorithm
48/50
Reference
Testing Semiconductor Memories by Van De
Goor
Design For Testability by wang-wu-wen
48
-
5/22/2018 Memory Testing Algorithm
49/50
49
Any Question
-
5/22/2018 Memory Testing Algorithm
50/50
Thank You