Table Of ContentLower Bounds on the Number of Writing
Operations by ILIFC with Inversion Cells
Akira Yamawaki, Hiroshi Kamabe and Shan Lu
Graduate School of Engineering
Gifu University
1–1, Yanagido, Gifu, 501–1193
Email: [email protected],[email protected], [email protected]
7
Abstract—Index-less Indexed Flash Code (ILIFC) is a coding number of writing operations between two consecutive block
1
scheme for flash memories, in which one bit of a data sequence erasures. Computer simulation was used to show that the I-
0
isstored in aslice consistingof several cellsbuttheindexof the
2 ILIFCimprovestheaverageperformanceoftheILIFCinmany
bitisstoredimplicitly.AlthoughseveralmodifiedILIFCschemes
cases[2], [3].
n have beenproposed,in thisresearch weconsideran ILIFCwith
a inversioncells(I-ILIFC).TheI-ILIFCreducesthetotalnumberof This work theoretically shows that the worst-case perfor-
J celllevelchangesateachwritingrequest.Computersimulationis mance of the I-ILIFC is better than that of the ILIFC. Firstly,
1 usedtoshowthattheI-ILIFCimprovestheaverageperformance we derive the lower bounds on the number of writing opera-
of the ILIFC in many cases. This paper presents our derivation
3 tions by I-ILIFC and specify a threshold for the code length
of the lower bounds on the number of writing operations by
I-ILIFC and shows that the worst-case performance of the I- that determines whether the I-ILIFC improves the worst-case
]
T ILIFC is better than that of the ILIFC if the code length performance of the ILIFC. The results show that the I-ILIFC
I is sufficiently large. Additionally, we consider the tight lower is better than the ILIFC in the worst case if the code length
s. boundsthereon. The resultsshow that the threshold of the code is sufficiently large.
c lengththatdetermineswhethertheI-ILIFCimproves theworst- Additionally,we considerunusualwritinginadditiontothe
[ case performance of the ILIFC is smaller than that in the first
lower bounds. usual writing by the I-ILIFC and determine the tight lower
1 bounds on the number of writing operations. Consequently,
v I. INTRODUCTION we show that the threshold is smaller than that in the first
7
In flash memory, data bits are stored in cells in the form lower bounds.
2
of charge levels. One of the most notable characteristics of
9
8 flashmemoryistheasymmetricityofcharginganddischarging II. INDEX-LESSINDEXEDFLASH CODE(ILIFC)
0 operations.Thatis,thechargelevelofthecellcanbeincreased
1. in a cell-by-cell manner but cannot be decreased in this In this work, it is assumed that the level of electric charge
in a cell of a NAND flash memory is in the range A =
0 manner. q
7 Instead, discharging is achieved by way of a special oper- {0,1,··· ,q−1}. A block of data bits of length k is encoded
1 and stored in a block of cells of length n. An ILIFC that
ation known as block erasure, which discharges the cells in
: satisfies these conditions is denoted by ILIFC(n,k,q).
v a long block simultaneously. The disadvantage of the block
i erasure operation is that it partially destroys cells in the In the ILIFC the block of cells of length n is divided into
X
slicesconsistingofk cellsand,therefore,thenumberofslices
flash memory and thus increases the error probability. This
r in the block is m = ⌊n/k⌋. If n is not a multiple of k, the
a necessitates the use of an error correcting code. However, the
remainingcells in the block are unused. Each slice represents
cells invariably become highly unreliable after block erasure
one bit of the k data bits. Since k slices are used to store k
is executed a certain number of times.
Thisledtotheproposalofaflashcodetoreducethenumber data bits, we require m≥k, that is, n≥k2.
ofblockerasureoperations[6],[7].Mahdavifaretal.addressed The state of m slices is denoted by (x1 | x2 | ··· |
the problem by proposing the index-less indexed flash code xm), where xj ∈ Akq for 1 ≤ j ≤ m. For a slice
(ILIFC). The ILIFC is designed in terms of the worst-case x = (x ,x ,··· ,x ), we define wt(x) = k x and
1 2 k i=1 i
performance[1].IntheILIFC,boththevalueofonebitofdata bv(x) = wt(x)mod2. wt(x) is termed the weight of the
P
andtheindexofthebitarestoredinoneslice.TheILIFCuses slice x. A slice x = (x ,x ,··· ,x ) is said to be full and
1 2 k
the cell state space very efficiently even though the code rate to be empty if x = x = ··· = x = q − 1 and if
1 2 k
is not optimal. x = x = ··· = x = 0, respectively. The slice is said
1 2 k
Several modified ILIFC schemes capable of improving the to be active if it is neither full nor empty.
performance of the ILIFC have since been proposed [2], [4], In the ILIFC, the valueof the i-th bit in the k data bits and
[5]. In this paper, we consider an ILIFC with inversion cells the index i of the bit are stored in a slice as follows (See [1]
(I-ILIFC)[2]. The I-ILIFC reduces the total number of cell for details). In the initial state, it is assumed thatall slices are
level changes at each writing request in order to increase the empty and all data bits are 0.
Supposethatthe valueof the i-thbitis changed.If noneof inversion cells is divided into slices consisting of k cells.
the slices representthe i-th bit, an empty slice is reserved for Thesecells,whicharedividedintoslices,aretermeddatacells.
thebitandthenthelevelofthei-thcellinthesliceischanged Hence, there are m = ⌊(n−r)/k⌋ slices. The restriction of
to 1. In the case that no empty slices exist, block erasure is the ILIFCscheme, m≥k, determinesthatn≥k2+r should
incurred. hold.
On the other hand, if there is a slice representing the i-th For w = (w ,w ,··· ,w ) ∈ {0,1}l, we define w =
1 2 l
bit,theweightoftheslice isincreasedby1.Inthe beginning, (w ,w ,··· ,w ), where w is 1 if w = 0, and 0 if w = 1.
1 2 l i i i
the level of the i-th cell in the slice is increased. If the level For w,w′ ∈{0,1}l, let d (w,w′) be the Hammingdistance
H
of the i-th cell is q−1, the level of the i′-th cell is increased between w and w′.
where i′ = (imodk)+1. Similarly, if the level of the i′-th
In the I-ILIFC, the storing mode is represented by r
cell isalso q−1,the levelof the i′′-th cellis increasedwhere
inversion cells. We denote the state of these r inversion cells
i′′ = (i′ modk) + 1. This procedure enables the value of by b = (b ,b ,··· ,b ) ∈ Ar. We denote the state of the
the bit, which is represented by bv(x), to be obtained for the 1 2 r q
inversion cells and m slices by c = (b | x | x | ··· | x ),
1 2 m
activeslice x. Additionally,the indexof the bitis represented
where x ∈ Ak for 1 ≤ j ≤ m. Suppose that the data
by the position of the first updated cell in x. This updating j q
v ∈ {0,1}k is stored in the cell state c. If bv(b) = 0, the
procedure is performed until the slice is filled to capacity.
cell is in the normal mode and D (x | x | ··· | x ) = v
s 1 2 m
Note that any full slice cannot represent the index. In the
is satisfied. If bv(b)=1, the cell is in the inverted mode and
ILIFC the value of a bit without any corresponding slice is
D (x | x | ··· | x ) = v is satisfied. If there is an i that
considered to be 0. Therefore, for the full slice x′, wt(x′)= s 1 2 m
satisfies b <q−1, the mode is changed by increasing b by
i i
k(q−1)shouldbe even.Thus,in this work it is assumed that
1.
k or q−1 is even.
Assume that the state (b | x | x | ··· | x ) is changed
The state of slices (x | x | ··· | x ) enables the k 1 2 m
1 2 m into (b′ | x′ | x′ | ··· | x′ ) by one writing operation. Then
bit data (s ,s ,··· ,s ) to be obtained as follows. For each 1 2 m
1 2 k m wt(x′)−wt(x ) is termed the sum of the data cell
i, s = bv(x ) if there is a slice x representing the i-th bit; j=1 j j
i j j level changes and wt(b′)−wt(b) is termed the sum of the
otherwise,si =0.Thefunctionthatmaps(x1 |x2 |···|xm) iPnversi(cid:0)on cell level chang(cid:1)es. The sum of these two values is
to (s ,s ,··· ,s ) is denoted by D (x |x |···|x ).
1 2 k s 1 2 m referred to as the total number of cell level changes.
Usually,asinglewritingoperationtoflashmemoryinvolves
In the I-ILIFC, when a writing operation is executed, one
changinga single data bit stored in the memory[1], [7]. How-
of two modes is selected such that the total number of cell
ever, in this research, one writing operation entails updating
level changes is minimized. The following theorem holds[2].
all the cells such that the resulting cells represent the new
data. If the new data is equal to the current data, then we
Theorem1. Supposeawritingoperation,inwhichthecurrent
assume that no writing operation has occurred. The number
data v are changed into the new data v′, is carried out by I-
of writing operations that can occur between two consecutive
ILIFC(n,k,q,r), where v,v′ ∈{0,1}k. In order to minimize
blockerasuresissimplyreferredtoasthenumberofwritings.
the total number of cell level changes, the storing mode is
The number of writings depends on the sequence of data to
changed by writing if and only if d (v,v′)>(k+1)/2.
H
be stored. The minimum number of writings is termed the
worst-case number of writings. Proof. We denoted (v,v′)byd. Whenthemodeischanged
H
Assume that the state of m slices (x | x | ··· | x ) by writing, the sum of the data cell level changes is
1 2 m
is changed into (x′ | x′ | ··· | x′ ) by one writing, where d (v,v′)=d (v,v′)=k−d and the sum of the inversion
1 2 m H H
xj,x′j ∈Akq for 1≤j ≤m. Then mj=1 wt(x′j)−wt(xj) cell level changes is 1. Hence, the total number of cell level
is termed the total number of changes in the cell level. changes is (k −d+1). On the other hand, when the mode
P (cid:0) (cid:1)
is not changed by writing, the total number of cell level
III. ILIFCWITHINVERSION CELLS
changes is equal to the sum of the data cell level changes,
Suppose that a writing operation in which the current data d (v,v′) = d (v,v′) = d. Therefore, if d > k − d+ 1,
H H
v is changed into the new data v′ is conducted by ILIFC. that is, d > (k + 1)/2, the writing operation that changes
If such a writing can be achieved without block erasure, the the mode is selected such that the total number of cell level
total number of cell level changes is equal to the Hamming changes is minimized. Additionally, if d ≤ (k + 1)/2, the
distance between v and v′. An ILIFC with inversion cells (I- above discussion shows that a writing operation that does not
ILIFC) was proposed in order to reduce the total number of change the mode is selected.
cell level changes[2]. The I-ILIFC has two storing modes, a
normal mode and an inverted mode, information about which
is contained in the inversion cells. For the state of r inversioncells b=(b ,b ,··· ,b )∈Ar,
1 2 r q
In this research it is assumed that k bit data are stored theinversioncellsaresaid tobeexhaustedifb =b =···=
1 2
in a block of n q-ary cells including r inversion cells. b = q − 1, that is, wt(b) = r(q − 1). Then writing that
r
Such an I-ILIFC is denoted by I-ILIFC(n,k,q,r). In the I- does not change the storing mode occurs until the next block
ILIFC(n,k,q,r), a block of (n − r) cells except for the r erasure takes place.
240 130
125
s 220 s
ng ng 120
writi 200 writi 115
of of 110
er 180 er 105
b b
m m
u 160 u 100
n n
e e 95
g g
a 140 a 90
er er
Av 120 Av 85
80
100 75
0 50 100 150 200 250 300 350 400 0 20 40 60 80 100 120 140 160
r r
Fig.1. Average numberofwritings byI-ILIFC(640,16,4,r) Fig.3. Averagenumberofwritings byI-ILIFC(288,12,4,r)
340
320
s show that the I-ILIFC is better than the ILIFC if the code
writing 238000 length is sufficiently large.
of 260
er 240 V. UPPERBOUND ONTHE WORST-CASE NUMBEROF
umb 220 WRITINGS BY ILIFC
n
e 200 Under the definition of one writing operation in [1],
g
a 180
er it is shown that the worst-case number of writings by
Av 160 ILIFC(n,k,q) is k(⌊n/k⌋− k + 1)(q −1)+k − 1[1]. Let
140
t be the worst-case number of writings by ILIFC(n,k,q)
120 w
0 20 40 60 80 100 120 140 under the definition of one writing in this research. In this
r
section, we derive the upper bound on t .
w
We denote (0,0,··· ,0) and (1,1,··· ,1) by 0 and 1, re-
Fig.2. Averagenumberofwritings byI-ILIFC(192,8,8,r)
spectively.Let T be the numberof writingsby ILIFC(n,k,q)
when the data sequence is 1,0,1,0,···. Then t ≤ T
w
holds. If the state of slices after such T writings is (y |
IV. AVERAGE PERFORMANCE OF I-ILIFC y | ··· | y ), m wt(y ) = kT holds. Additiona1lly,
2 m j=1 j
Inthissection,computersimulationisusedtoshowthatthe mj=1wt(yj)≤mP·k(q−1)=⌊n/k⌋·k(q−1)≤n(q−1).
average number of writings by I-ILIFC(n,k,q,r) is greater Consequently, kT ≤ n(q − 1) holds. We denote the upper
P
than that by ILIFC(n,k,q) in many cases when the length of bound on tw by tub. Then from tw ≤ T ≤ n(q −1)/k we
inversion cells r is optimized[2], [3]. have
The restriction of the ILIFC scheme determines that n− tub =n(q−1)/k. (1)
r ≥ k2 should be satisfied. If (n−r)modk 6= 0, there are
data cells that will never be used for the slice. Therefore, we VI. MAXIMUM NUMBEROF UNUSED CELLLEVELSIN
I-ILIFC
consider only values of r that satisfy n−r ≥ k2 and (n−
r)modk =0. In this work, it is assumed that a sufficient number of
For example, the average number of writings by I- inversion cells are reserved such that the inversion cells are
ILIFC(640,16,4,r) and I-ILIFC(192,8,8,r) for each r are not entirely consumed whenever block erasure takes place.
shown in Fig. 1 and Fig. 2, respectively. Note that I- When blockerasuretakesplace, thatis, a writingoperation
ILIFC(n,k,q,0) is equivalent to ILIFC(n,k,q). In our sim- that minimizes the total number of cell level changes without
ulations, the average number of writings was calculated after the erasure is not possible, we denote the state of slices by
10,000 block erasures took place. It can be seen that (y | y | ··· | y ), where m = ⌊(n − r)/k⌋. Then
1 2 m
the average performance is maximized at r = 32 for I- the weight of each of the slices wt(y ) can be increased
j
ILIFC (640,16,4,r) and at r = 24 for I-ILIFC(192,8,8,r). (k(q−1)−wt(y )) more times. The sum of such unused
j
Similarly the averageperformanceof I-ILIFC(288,12,4,r)is celllevels m (k(q−1)−wt(y ))istermedthenumberof
j=1 j
shown in Fig. 3. This result indicates that the performanceof unusedcelllevels.Inthissection,wedeterminethemaximum
P
I-ILIFC(288,12,4,r) is maximized at r = 0. That is, the I- number of unused cell levels.
ILIFCdoesnotimprovetheperformanceoftheoriginalILIFC. Forv,v′ ∈{0,1}k(v 6=v′),letdbetheHammingdistance
In this research we analyze the worst-case performance betweenvandv′.Ifthedatavischangedintov′suchthatthe
and specify a threshold that determines whether the I-ILIFC totalnumberofcelllevelchangesisminimized,fromTheorem
improvestheworst-caseperformanceoftheILIFC.Theresults 1 the sum of the data cell level changes is d if d≤(k+1)/2
and(k−d)ifd>(k+1)/2.Hence,ifkiseven,themaximum When α ≥δ
1
sum of the data cell level changes δ is as follows. From (2), α < δ holds. Similarly, for a constant value of
2
α , when α =δ−1, the maximum is expressed as follows.
δ = max{ max d, max (k−d)} 1 2
1≤d≤k/2 k/2+1≤d≤k
(k−α )(k(q−1)−1)+(δ−1)·k(q−1).
1
= max{k/2,k/2−1}=k/2.
Hence, when α =δ, the maximum is as follows.
1
Similarly, if k is odd,
(k−1)·k(q−1)−k+δ. (5)
δ = max{ max d, max (k−d)}
We have the following theorem.
1≤d≤(k+1)/2 (k+1)/2+1≤d≤k
= max{(k+1)/2,(k+1)/2−2}=(k+1)/2. Theorem 2. In the I-ILIFC(n,k,q,r), when block erasure
takes place, the number of unused cell levels u satisfies the
Therefore,
following inequality.
k/2 (k is even)
δ = .
u≤(k−1)·k(q−1)−k+δ.
((k+1)/2 (k is odd)
VII. LOWERBOUNDS ON THENUMBER OF WRITINGS BY
For the state of slices (y | y | ··· | y ), let α be the
1 2 m 1 I-ILIFC
number of bits without any corresponding slice and let α
2
Inthissection,weshowthelowerboundsontheworst-case
be the number of empty slices. Then the next writing that
number of writings by I-ILIFC.
minimizes the total number of cell level changes can always
Let (y | y | ··· | y ) be the state of slices, where m =
be carried out if and only if the changes of any δ bits among 1 2 m
⌊(n−r)/k⌋.Then m wt(y )istermedthenumberofused
k data bits can be stored in slices, that is, j=1 j
cell levels. From Theorem 2, we have the following theorem.
P
(α <δ and α ≥α ) or (α ≥δ and α ≥δ).
1 2 1 1 2 Theorem 3. In the I-ILIFC(n,k,q,r), when block erasure
takes place, the number of used cell levels u′ satisfies the
This condition is equivalent to the following condition.
following inequality.
α2 ≥min{α1,δ}. u′ ≥(⌊(n−r)/k⌋−k+1)·k(q−1)+k−δ.
Therefore, block erasure may take place if and only if Proof. Let (y | y | ··· | y ) be the state of slices. From
1 2 m
Theorem 2,
α <min{α ,δ}. (2)
2 1
m
The number of bits that have the corresponding slice is (k− (k(q−1)−wt(yj))≤(k−1)·k(q−1)−k+δ.
α1). Let yji be the slice corresponding to the i-th bit from Xj=1
the left among (k−α ) such bits. Since y is active, 1 ≤ Therefore,
1 ji
wt(yji)≤k(q−1)−1.Thenthenumberofunusedcelllevels m
is as follows. u′ = wt(y )≥(m−k+1)·k(q−1)+k−δ,
j
k−α1 Xj=1
(k(q−1)−wt(y ))+α ·k(q−1). (3) where m=⌊(n−r)/k⌋.
ji 2
Xi=1 Corollary 1. If the numberof used cell levels u′ satisfies the
When(2)holds,themaximumnumberofunusedcelllevelsis following inequality
derived.For fixed valuesof α and α , the numberof unused
1 2 u′ <(⌊(n−r)/k⌋−k+1)·k(q−1)+k−δ,
celllevelsismaximizedwhenwt(y )=···=wt(y )=
j1 jk−α1
1. Hence, the maximum is expressed as follows. thenextwritingbyI-ILIFC(n,k,q,r)canalwaysbeexecuted
without block erasure.
(k−α )(k(q−1)−1)+α ·k(q−1).
1 2
Proof. This is the contraposition of Theorem 3.
When α <δ
1
For fixed values of n, k and q, we define
From (2), α <α holds. For fixedα , when α =α −1,
2 1 1 2 1
the maximum is expressed as follows. U1(r) = (⌊(n−r)/k⌋−k+1)·k(q−1)+k−δ,
U′(r) = ((n−r)/k−k+1)·k(q−1)+k−δ.
1
(k−α )(k(q−1)−1)+(α −1)·k(q−1)
1 1
Then we define t (r) = ⌈U (r)/δ⌉. Let r∗ be the minimum
= (k−1)·k(q−1)−k+α . 1 1 1
1 integer r that satisfies r(q−1)≥U′(r)/δ+1. That is, r∗ is
1 1
Therefore, when α1 =δ−1, the maximum is as follows. the integer r that satisfies R1 ≤r <R1+1, where
n−k2+k+k/(q−1)
(k−1)·k(q−1)−k+δ−1. (4) R = .
1
δ+1
TherestrictionontheILIFCschemerequiresn≥k2+r∗ tobe in the worstcase. Inthispaper,p is simplyreferredto as the
1 1
satisfied.Notethatn>k2+r∗ issatisfiedifn≥k2+R +1, threshold. From (7) and (8), p is derived as follows.
1 1 1
that is,
k+1+k/(q−1) 2(k3+3k+2) − k (k is even)
n≥k2+ δ +1 (6) p1 =(2k(kk2−+23) − kq−1 (k is odd) . (9)
k−3 q−1
holds. Then from R > 0, r∗ ≥ 1 and U (r∗) > 0 hold. In
1 1 1 1 The results show that the I-ILIFC(n,k,q,r∗) improves the
the following, it is assumed that (6) is satisfied. 1
worst-caseperformanceofILIFC(n,k,q)if thecodelengthn
The following theorem holds.
is sufficiently large.
Theorem 4. Let t∗ be the number of writings by I-
1
ILIFC(n,k,q,r∗). Then VIII. TIGHTLOWERBOUND
1
Thus far, we assumed that block erasure takes place when
t∗ ≥t (r∗).
1 1 1 a writing operation that minimizes the total number of cell
Proof. Intheinitialstate(i.e.,immediatelyafterblockerasure) level changes cannot be accomplished by I-ILIFC. However,
the number of used cell levels is 0 and 0 < U (r∗) holds. at the moment it remains possible to carry out a writing
1 1
Hence, Corollary 1 determines that the first writing by I- operationthat doesnotminimize these changes.In this paper,
ILIFC(n,k,q,r∗) can always be executed. such a writing operation is termed unusual. The number of
1
For t < t (r∗) we suppose that t writings by I- block erasures can be reduced by ensuring that, if an unusual
1 1
ILIFC(n,k,q,r∗)canalwaysoccurwithoutblockerasure.Let writing operation can be accomplished without erasure, it
1
(b|y |y |···|y )bethestateofinversioncellsandslices occurs before erasure takes place. Therefore, in this section,
1 2 m
after t writings. Then wt(b) ≤t<t (r∗)<U (r∗)/δ+1≤ it is assumed that block erasure takes place if neither a usual
1 1 1 1
U′(r∗)/δ+1≤r∗(q−1)becausewhenonewritingoperation writing operation (which minimizes the total number of cell
1 1 1
has occurred, the maximum sum of the inversion cell level level changes) nor an unusual writing operation can occur.
changes is 1. Hence, r∗ inversion cells are not used in their Consequently,wederivethetightlowerboundsonthenumber
1
entirety. Additionally, m wt(y ) ≤ δt < δ ·U (r∗)/δ = of writings under this assumption.
j=1 j 1 1
U (r∗).Therefore,accordingtoCorollary1,thenext(t+1)-th
1 1 P A. Maximum number of unused cell levels
writing can always take place.
The abovediscussionservestoconfirmthatt (r∗) writings We determine the maximum number of unused cell levels
1 1
by I-ILIFC(n,k,q,r∗) can always be carried out without when block erasure takes place. We have the following theo-
1
erasure. rem.
We define Theorem 5. For the state of slices (y1 |y2 |···|ym), let β1
be the number of bits that do not have a corresponding slice
Ulb1(r)=(n−k2−r)(q−1)+k−δ. and let β2 be the numberof empty slices. Then block erasure
may take place if and only if ⌊β /2⌋>β .
Then t (r∗) = ⌈U (r∗)/δ⌉ ≥ U (r∗)/δ > U (r∗)/δ > 1 2
1 1 1 1 1 1 lb1 1
U (R +1)/δ.Lett∗ betheworst-casenumberofwritings Proof. Initially,weshowthat,if⌊β /2⌋≤β holds,eitherthe
lb1 1 w1 1 2
byI-ILIFC(n,k,q,r∗).Sincet∗ ≥t (r∗)>U (R +1)/δ, nextusual or unusualwriting can always be executedwithout
1 w1 1 1 lb1 1
U (R +1)/δ is the lower bound on t∗ . blockerasure.Itis supposedthatl bitsamongβ bitswithout
lb1 1 w1 1
We calculate t∗ =U (R +1)/δ. If k is even, any corresponding slice are changed on the data (not on the
lb1 lb1 1
sequence stored in the slices) where 0≤l≤β .
n−k2−2 1 2k 1
t∗ =2 − (q−1)+ −1. (7)
lb1 k+2 k k+2 When l≤⌊β /2⌋
(cid:18) (cid:19) 1
If k is odd, The inequality l ≤β2 determines that the changes that are
madetol bitscanbestoredinl slicesamongβ emptyslices.
n−k2−3 2k 2
t∗ =2 (q−1)+ −1. (8) Hence, writing that does not change the mode can be carried
lb1 k+3 k+3
(cid:18) (cid:19) out.
We compare t∗ and t , where t is the upper bound on
lb1 ub ub When l>⌊β /2⌋
the worst-case number of writings by ILIFC(n,k,q). From 1
(1), t = n(q − 1)/k. If t < t∗ then t ≤ t < If β is even, β −l < β −β /2 = ⌊β /2⌋ ≤ β . If β
ub ub lb1 w ub 1 1 1 1 1 2 1
t∗ < t∗ , that is, the worst-case number of writings by is odd, from β −l < β −(β −1)/2 = (β −1)/2+1 =
lb1 w1 1 1 1 1
I-ILIFC(n,k,q,r∗) is greater than that by ILIFC(n,k,q). ⌊β /2⌋+1,β −l≤⌊β /2⌋≤β .Hence,themodeischanged
1 1 1 1 2
Therefore, t∗ >t is the sufficient condition for improving andthechangesrelatedto(β −l)bitscanbestoredin(β −l)
lb1 ub 1 1
the worst-case performance of ILIFC(n,k,q). For k ≥ 4, it slices amongβ emptyslices. Therefore,writingthat changes
2
is supposed that t∗ > t is equivalent to n > p . Then p the mode can occur.
lb1 ub 1 1
is a threshold of the code length n that determineswhether I- The above discussion shows that either usual or unusual
ILIFC(n,k,q,r∗)improvestheperformanceofILIFC(n,k,q) writing can be executed if ⌊β /2⌋≤β .
1 1 2
Next,weshowthatif⌊β /2⌋>β holds,blockerasuremay Theorem 7. In the I-ILIFC(n,k,q,r), when block erasure
1 2
take place. It is supposed that ⌊β /2⌋ bits among β bits are takes place, the number of used cell levels u′ satisfies the
1 1
changed on the data. The inequality ⌊β /2⌋>β determines following inequality.
1 2
thatwhenwritingthatdoesnotchangethemodeoccurs,there
u′ ≥(⌊(n−r)/k⌋−k+2)·k(q−1)+k−2.
is a bit for which an empty slice cannot be reserved. On the
otherhand,ifβ1 iseven,β1−⌊β1/2⌋=β1/2=⌊β1/2⌋>β2. Proof. Let (y | y | ··· | y ) be the state of slices. From
1 2 m
Ifβ1 isodd,β1−⌊β1/2⌋=β1−(β1−1)/2=(β1−1)/2+1= Theorem 6,
⌊β /2⌋ + 1 > ⌊β /2⌋ > β . Hence, β − ⌊β /2⌋ > β
1 1 2 1 1 2 m
determines that when writing that changes the mode takes
(k(q−1)−wt(y ))≤(k−2)·k(q−1)−k+2.
j
place, there is a bit for which an empty slice cannot be
j=1
reserved. X
The abovediscussion indicates that block erasure may take Therefore,
place if ⌊β /2⌋>β . m
1 2
u′ = wt(y )≥(m−k+2)·k(q−1)+k−2,
j
The number of unused cell levels is as follows
j=1
X
k−β1 where m=⌊(n−r)/k⌋.
(k(q−1)−wt(y ))+β ·k(q−1), (10)
ji 2
i=1 Corollary 2. If the numberof used cell levels u′ satisfies the
X
following inequality
where y ,··· ,y are (k−β ) active slices, that is, 1≤
j1 jk−β1 1
wt(yji)≤k(q−1)−1. When ⌊β1/2⌋>β2 holds, we derive u′ <(⌊(n−r)/k⌋−k+2)·k(q−1)+k−2,
the maximum number of unused cell levels. For fixed values
of β and β , the number of unused cell levels is maximized either the next usual or unusual writing by I-ILIFC(n,k,q,r)
1 2
when wt(y )=···=wt(y )=1. Hence, the maximum can always be executed without block erasure.
ji jk−β1
is expressed as follows.
Proof. This is the contraposition of Theorem 7.
(k−β )(k(q−1)−1)+β ·k(q−1).
1 2 B. Lower bounds on the worst case number of writings
When β1 is even For fixed n, k, and q, we define
Then β /2>β holds. For fixed β , when β =β /2−1,
1 2 1 2 1 U (r) = (⌊(n−r)/k⌋−k+2)·k(q−1)+k−2,
the maximum is expressed as follows. 2
U′(r) = ((n−r)/k−k+2)·k(q−1)+k−2.
2
β (1−k(q−1)/2)+k((k−1)(q−1)−1). (11)
1
Then we define t (r) = ⌈(U (r)−U (r)−δ+1)/(k−1)⌉.
2 2 1
Since 1−k(q−1)/2≤0 and β /2−1≥β ≥0 hold, when Let r∗ be the minimum integer r that satisfies r(q −1) ≥
1 2 2
β =0 and β =2, the maximum is as follows. U′(r)/δ+(U′(r)−U′(r)−δ+1)/(k−1)+2. That is, r∗
2 1 1 2 1 2
is the integer r that satisfies R ≤r <R +1, where
2 2
(k−2)·k(q−1)−k+2. (12)
R
2
When β1 is odd 1
= ×
Then (β −1)/2 > β holds. For a constant value of β , δ+1
1 2 1
when β = (β −1)/2− 1, the maximum is expressed as k+δ kδ δ
2 1 n−k2+k+ + − .
follows. q−1 k−1 (q−1)(k−1)
(cid:18) (cid:19)
β (1−k(q−1)/2)+(k−3/2)·k(q−1)−k. In order to satisfy n ≥ k2+r∗, it is assumed that n ≥ k2+
1 2
R +1, that is,
2
Similarly, since (β −1)/2−1≥β ≥0 holds, when β =0
1 2 2
and β =3, the maximum is as follows. n
1
1 k+δ kδ δ
(k−3)·k(q−1)−k+3. (13) ≥ k2+ k+ + −
δ q−1 k−1 (q−1)(k−1)
(cid:18) (cid:19)
From (12) and (13), we have the following theorem. δ+1
+ (14)
δ
Theorem 6. In the I-ILIFC(n,k,q,r), when block erasure
is satisfied. From (14), we have r∗ ≥1 and U (r∗)>0. The
takes place, the number of unused cell levels u satisfies the 2 1 2
following theorem holds.
following inequality.
Theorem 8. Let t∗ be the number of writings by I-
u≤(k−2)·k(q−1)−k+2. 2
ILIFC(n,k,q,r∗). Then
2
From Theorem 6, we have the following theorem.
t∗ ≥t (r∗)+t (r∗).
2 1 2 2 2
Proof. In the initial state, the number of used cell levels is 0 If k is odd,
and0<U (r∗)holds.Hence,fromCorollary1,thefirstusual
writing by1I-I2LIFC(n,k,q,r∗) can always be carried out. t∗lb2
For t < t1(r2∗) we supp2ose that t usual writings by I- = 2 n−k2+ k3−4k2+k+6 (q−1)
ILIFC(n,k,q,r∗) can always be executed without block era- k+3 2(k+1)(k−1)
2 (cid:18) (cid:19)
sure.Let(b|y |y |···|y )bethe state ofinversioncells k2−7k+4
1 2 m + . (16)
and slices after t writings. Then since wt(b) ≤ t < t1(r2∗) < (k+3)(k−1)
t (r∗)+t (r∗)<U (r∗)/δ+(U (r∗)−U (r∗)−δ+1)/(k−
1 2 2 2 1 2 2 2 1 2 If t∗ > t , the worst-case performance of I-
1)+2≤U′(r∗)/δ+(U′(r∗)−U′(r∗)−δ+1)/(k−1)+2≤ lb2 ub
1 2 2 2 1 2 ILIFC(n,k,q,r∗) is better than that of ILIFC(n,k,q). For
r∗(q − 1), r∗ inversion cells are not used in their entirety. 2
A2dditionally,2 m wt(y ) ≤ δt < δ ·U (r∗)/δ = U (r∗). k ≥ 4, it is supposed that t∗lb2 > tub is equivalent to n > p2.
j=1 j 1 2 1 2 From (15) and (16), the threshold p is as follows.
Therefore, according to Corollary 1, the next (t+1)-th usual 2
P
writing can always take place. p
2
The above discussion indicates that t1(r2∗) usual writings 2k4−3k3+6k2−2k−4 − k(k2−6k+4) (k is even)
can always be executed without block erasure. = (k−1)(k−2) (k−1)(k−2)(q−1) .
Let (b′ | y′ | y′ | ··· | y′ ) be the state of inversion cells (k(2k4−k3+2k2−k−6) − k(k2−7k+4) (k is odd)
1 2 m (k+1)(k−1)(k−3) (k−1)(k−3)(q−1)
and slices after t1(r2∗) usual writings. Then mj=1wt(yj′) ≤ (17)
δ · t (r∗) < δ · (U (r∗)/δ+1) = U (r∗) + δ. Hence,
m1 w2t(y′)≤U (r∗1)+2δ−1. 1 P2 From (9) and (17),
j=1 j 1 2
For t (r∗) ≤ t′ < t (r∗) + t (r∗), we suppose that t′
2wPw,ir·tiht·io·nug,tts1′b-btlhoy2cwIk-rIeiLtriIanFsguCsr(edn.e,Nnkoo1,ttqee,s2rteh2∗ia)thtceeara2ncahau2loswufaatyl1so(rrb2∗eu)na+ucsc1uo,amtl1wp(lrri2∗isth)ine+gd = (p1((k−kk3−4(+qp1−22)(k1k)3−−+23k)k2(2)q+(−q2−1k)1)−3k3−2k2+k ((kk iiss eovdedn)).
(k+1)(k−1)(k−3)(q−1)
operation. Let (b′′ | y′′ | y′′ | ··· | y′′) be the state
of inversion cells and s1lices a2fter t′ writinmgs. Then, since Therefore, for k ≥ 4, we have p1−p2 > 0, that is, p1 >p2.
wt(b′′)≤t′ <t (r∗)+t (r∗)<r∗(q−1), r∗ inversioncells ThisresultshowsthatI-ILIFC(n,k,q,r2∗)improvestheworst-
1 2 2 2 2 2 case performance of ILIFC(n,k,q) also for p <n≤p .
are not entirely used. When either usual or unusual writing 2 1
takes place, the maximum sum of the data cell level changes
IX. CONCLUSION
is (k−1). Note that an unusual writing operation, for which
Thispaperhaspresentedourderivationofthelowerbounds
the sum of the data cell level changes is k, is not executed
on the number of writings by the I-ILIFC and specified the
because such writing can occur by only changing the mode.
Hence, m wt(y′′)≤ m wt(y′)+(k−1)·(t′−t (r∗))≤ threshold for the code length which determines whether the
U (r∗)+δj=−11+(kj−1)·(tj=(r1∗)−1)j<U (r∗)+δ−11+2(k− I-ILIFC improves the worst-case performance of the ILIFC.
1)1·(2U P(r∗)−U (r∗)−Pδ+2 1)2/(k−1)=1U2(r∗). Therefore, The results have shown that the I-ILIFC is better than the
Corolla2ry22 dete1rmi2nes that the next (t′+12)-th2writing, that ILIFCintheworstcaseifthecodelengthissufficientlylarge.
Additionally, we have considered unusual writing operations
is, the next usual or unusual writing can always take place.
Therefore, (t (r∗)+t (r∗)) writings by I- in addition to the usual writing operation by the I-ILIFC
ILIFC(n,k,q,r∗)ca1na2lways2oc2curwithoutblockerasure. andderivedthe tightlowerboundsthereon.Consequently,the
2 threshold could be made smaller than that in the first lower
We define bounds.
Ulb2(r)=(n−r−k2+k)(q−1)+k−2. ACKNOWLEDGMENT
Then t (r∗)+t (r∗) = ⌈U (r∗)/δ⌉+⌈(U (r∗)−U (r∗)− ThisworkwaspartiallysupportedbytheAdvancedStorage
δ+1)/1(k−2 1)⌉≥2 U2 (r∗)/δ1+(2U (r∗)−U (2r∗)2−δ+11)/2(k− Research Consortium and JSPS KAKENHI Grant Number
1) > U (r∗)/δ+(1U 2(r∗)−U2 2(r∗)−1δ2+1)/(k−1) = 15K00010.
lb1 2 lb2 2 lb1 2
U (r∗)/δ+(k(q−1)−1)/(k−1)>U (R +1)/δ+(k(q−
lb1 2 lb1 2 REFERENCES
1)−1)/(k−1).WedenoteU (R +1)/δ+(k(q−1)−1)/(k−
lb1 2
1) by t∗ . Let t∗ be the worst-case number of writings by [1] H. Mahdavifar, P. H. Siegel, A. Vardy, J. K. Wolf, and E. Yaakobi, “A
lb2 w2 NearlyOptimalConstructionofFlashCodes,”Proc.ISIT2009,pp.1239-
I-ILIFC(n,k,q,r∗). Since t∗ ≥ t (r∗)+t (r∗) > t∗ , t∗
2 w2 1 2 2 2 lb2 lb2 1243,2009.
is the lower bound on t∗ . t∗ is as follows. If k is even, [2] M. Ohkawa and H. Kamabe, “Index-less Indexed Flash Codes Using
w2 lb2
InversionBit,”(inJapanese)Proc.ofthe35thSymposiumonInformation
t∗ TheoryanditsApplications, pp.117-122, 2012.
lb2 [3] A. Yamawaki and H. Kamabe, “Maximization of Average Number of
= 2 n−k2+ k3−6k2+2k+4 (q−1) Rewriting of ILIFC with Inversion Operation,” Proc. of ISITA 2016,
k+2 2k(k−1) pp.136-140,2016.
(cid:18) (cid:19) [4] Y. Kaji, “The Expected Write Deficiency of Index-Less Flash Codes
k2−6k+4 andTheirImprovement,”IEEEInformationTheoryWorkshop,pp.35-39,
+ . (15)
(k−1)(k+2) 2011.
[5] R. Suzuki and T. Wadayama, “Modified Index-Less Indexed Flash
CodesforImprovingAveragePerformance,”IEICETrans.Fundamentals,
vol.J94-A,No.12,pp.991-1000, 2011.
[6] A.Jiang,V.Bohossian,andJ.Bruck,“FloatingCodesforJointInforma-
tion Storage in Write Asymmetric Memories,” Proc. IEEEInternational
Symposium on Information Theory, pp.1166-1170, Nice, France, June
2007.
[7] A.JiangandJ.Bruck, “Joint CodingforFlashMemoryStorage,” Proc.
IEEE International Symposium on Information Theory, pp.1741-1745,
Toronto,Canada, July2008.