236601 - Coding and Algorithms for Memories Lecture 8 1.

15
236601 - Coding and Algorithms for Memories Lecture 8 1

Transcript of 236601 - Coding and Algorithms for Memories Lecture 8 1.

Page 1: 236601 - Coding and Algorithms for Memories Lecture 8 1.

1

236601 - Coding and Algorithms for

MemoriesLecture 8

Page 2: 236601 - Coding and Algorithms for Memories Lecture 8 1.

2

Relative Vs. Absolute Values

01

Less errors

More retention

Jiang, Mateescu, Schwartz, Bruck,

“Rank modulation for Flash Memories”,

2008

Page 3: 236601 - Coding and Algorithms for Memories Lecture 8 1.

3

The New Paradigm Rank Modulation

Absolute values Relative values

Single cell Multiple cells

Physical cell Logical cell

Page 4: 236601 - Coding and Algorithms for Memories Lecture 8 1.

4

Rank Modulation

3

2

1

4

1 2 3 4

Ordered set of n cells

Assume discrete levels

Relative levels define a permutation

Basic operation: push-to-the-top

Overshoot is not a concern

Writing is much faster

Increased reliability (data retention)

Page 5: 236601 - Coding and Algorithms for Memories Lecture 8 1.

5

New Number Representation System

permutation in lexicographical order

[Lehmer 1906, Laisant 1888]

FACTORADIC decimal

an-1…a3a2a1 = an-1·(n-1)! + … + a3·3! + a2·2! + a1·1! 0 ≤ ai ≤ i

0 1 20 2 11 0 21 2 02 0 12 1 0

0 00 11 01 12 02 1

012345

Page 6: 236601 - Coding and Algorithms for Memories Lecture 8 1.

6

231

312

123

132

213

321

Gray Codes for Rank Modulation

Find cycle through n! states by push-to-the-top transitions

231

312

123

132

213

321

Transition graph, n=3

n=3

3 cycles23

1

1 2 3

The problem: Is it possible to transition between all permutations?

Page 7: 236601 - Coding and Algorithms for Memories Lecture 8 1.

7

Gray Codes for Arbitrary n• Recursive construction:

– Keep bottom cell fixed– (n-1)! transitions with others

1 2 3 4

4

~ (n-1)!

23

1

231

312

123

132

213

321

1 3 2 3 1 22 1 3 2 3 13 2 1 1 2 34 4 4 4 4 4

4 1 2 1 4 22 4 1 2 1 41 2 4 4 2 13 3 3 3 3 3

3 4 2 4 3 22 3 4 2 4 34 2 3 3 2 41 1 1 1 1 1

Page 8: 236601 - Coding and Algorithms for Memories Lecture 8 1.

8

Rewriting with Rank Modulation

• If we represent n! symbols then in the worst case we apply n-1 push-to-the-top operations to transfer from one permutation to another

• Problem: Is it possible to use less push-to-the-top operations in case less than n! symbols are represented?

• Rank Modulation Rewriting code (RMRC) (n,M) consists of– Update function: E: Sn×[M] -> Sn

– Decoding function D: Sn -> [M]

Page 9: 236601 - Coding and Algorithms for Memories Lecture 8 1.

9

Rewriting with Rank Modulation

• Definition: The cost of changing s1 into s2,α(s1->s2), is the min number of push-to-the-top operations needed to change s1 to s2 – Ex: α([123]->[213]) = 1, α([123]->[321]) = 2

• The rewriting cost of a RMRC is the maximum update cost

• The transition graph Gn=(Vn,En)– Vn = Sn, En ={(s1,s2) : α(s1->s2)=1}

• The ball or radius r: Br(s)={ s’ : α(s->s’) ≤ r }

• The sphere or radius r: Sr(s)={ s’ : α(s->s’) = r }

• The balls and the sphere sizes do not depend on rBr,Sr

231

312

123

132

213

321

231

312

123

132

213

321

Page 10: 236601 - Coding and Algorithms for Memories Lecture 8 1.

10

Rewriting with Rank Modulation

• Lemma: Br =n!/(n-r)!

• For n,M, define r(n,M) to be the smallest integer such that Br(n,M) ≥ M

• Lemma (Lower Bound): For any RMRC (n,M), its rewriting cost is at least r(n,M)

• A tight upper bound on the rewriting cost is given by a construction

• Theorem: There exists a RMRC with parameters (n,M≤Br) and cost r– Ex. (n,n) with cost 1– Ex. (n,n(n-1)) with cost 2– Ex. (n,n!) with cost n-1– Ex. (n,n!/2) with cost n-2

Page 11: 236601 - Coding and Algorithms for Memories Lecture 8 1.

11

3 2 1 4

2 3 1 4

3 2 4 1

Page 12: 236601 - Coding and Algorithms for Memories Lecture 8 1.

12

2134 2143

Kendall’s Tau Distance

• For a permutation an adjacent transposition is the local exchange of two adjacent elements

• For ,π∊Sm, dτ(,π) is the Kendall’s tau distance between and π= Number of adjacent transpositions to change to be π

=2413 and π=23142413

dτ(,π) = 3

It is called also the bubble-sort distanceLemma: Kendall’s tau distance induces

a metric on Sn

The Kendall’s tau distance is the number of pairs that do not agree in their order

2143 2134 2314

Page 13: 236601 - Coding and Algorithms for Memories Lecture 8 1.

13

Kendall’s Tau Distance

• Lemma: Kendall’s tau distance induces a metric on Sn

• The Kendall’s tau distance is the number of pairs that do not agree in their order

• For a permutation , Wτ() = {(i,j) | i<j, -1(i) > -1(i) }

• Lemma: dτ(,π) = |Wτ()Wτ(π)| = |Wτ()\Wτ(π)| + |Wτ(π)\Wτ()|

• dτ(,id) = |Wτ()|• The maximum Kendall’s tau distance is n(n-1)/2• The inversion vector of is x =(x(2),…,x(n))

x(i) = # of elements to the right of i and are less then i

• dτ(,id) = |Wτ()| = Σ2≤i≤nx(i)

Page 14: 236601 - Coding and Algorithms for Memories Lecture 8 1.

14

Kendall’s Tau Distance

• The Kendall’s tau ball: Br() = {π|dτ(,π) ≤ r}

• The Kendall’s tau sphere: Sr() = {π|dτ(,π) = r}

• They do not depend on the center • |B1()| = n, |S1()| = n-1

Page 15: 236601 - Coding and Algorithms for Memories Lecture 8 1.

15

How to Construct ECCs for the Kendall’s Tau Distance?

• Goal: Construct codes with some prescribed min Kendall’s tau dist d