Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
ECE ILLINOIS Department of Electrical and Computer Engineering
University of Illinois at Urbana-Champaign
Rank Modulation Codesfor Translocation Errors in Flash Memories
F. Farnoudwith V. Skachek and O. Milenkovic
7/6/12
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Permutations for coding
Permutations for coding:
Store (or transmit) a permutation instead of an arbitrarysequence
History:
Introduced by: Slepian [1965]
With substitution errors: Blake [1974]
With adjacent-swap errors: Chadwick and Kurtz [1969]
Application to power-line communications, substitution errors:Vinck [2000]
Application to flash memories, adjacent-swap errors: Jiang etal. [2008]: Rank modulation
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 1
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Motivation: Rank Modulation
Rank modulation for flash memories: proposed for dealing withcharge leakage in flash memories
In an array of cells, each cell stores a charge of certain level
Absolute value of all charges varies due to leakage
Relative order of charges may remain the same if leakage rateis roughly the same among cells
Key idea: coding via permutations (rankings)
Recent work by: Barg, Bruck, Cassuto, Hagiwara, Jiang, Mazumdar, Schwartz,
Yaakobi, Zhou,...
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 2
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Rank Modulation
Rank modulation: record information via permutations of chargelevels in arrays of cellsExample: permutation [6,3,8,1,5,9,2,4,7]
63
81
59
24
7
[ 6 3 8 1 5 9 2 4 7 ]
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 3
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Rank Modulation
Errors occur due to different leakage rates in the form of swaps oftwo adjacent elements
Leakage
63
81
59
24
7
6
81
59
24
3
7
[ 6 3 8 1 5 9 2 4 7 ] [ 6 8 3 1 5 9 2 4 7 ]
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 4
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Rank Modulation: Translocations
Translocation: cyclic shifts of elements.
Leakage
63
81
59
24
7
6
81
59
24
3 7
[ 6 3 8 1 5 9 2 4 7 ] [ 6 8 1 5 9 2 4 3 7 ]
Figure : Translocation errors
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 5
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Results
Achievable coding rate for translocation errors
Two families of codes for translocation errors
Interleaving codes with good Hamming distance
Interleaving codes with good Hamming distance andTranslocation distance: asymptotically good codes
Decoding algorithms
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 6
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Permutations: A Formal Definition
Let [n] = {1, 2, · · · , n}.
A permutation is a bijection from [n] to [n].
Set of all permutations of [n]: Sn.
Set of all permutations of P : SP , P ⊆ [n].
A permutation τ ∈ Sn is a transposition if for i , j ∈ [n],τ = (1, · · · , i − 1, j , i + 1, · · · , j − 1, i , j + 1, · · · , n).
If j = i + 1, then τ is called an adjacent transposition.
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 7
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Translocations: A Formal Definition
A translocation φ(i , j) is a permutation obtained from identity bymoving element i to position j and shifting everything in betweenby one position.
Right translocation: if i ≤ j , eg, φ(2, 7):
1 4 6 2 93 5 7 8
1 3 5 7 92 4 6 8
Left translocation: if i > j , eg, φ(8, 2):
1 2 4 6 98 3 5 7
1 3 5 7 92 4 6 8
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 8
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Distance Measures for Permutations
Hamming distance: number of substitutions required totransform one permutation to another
Transposition distance: number of transpositions required totransform one permutation to another
Kendall τ distance: number of adjacent transpositions requiredto transform one permutation to another
Translocation distance: number of translocations required totransform one permutation to another
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 9
IntroductionResults
Discussion
BackgroundTranslocationsDistance Measures
Permutation Codes for ...
Hamming distance: [Blake, Vinck, Kloeve, Colbourn,...]
Transposition distance: Have not received any interest in thecoding literature.
Kendall τ distance: [ Barg, Bruck, Cassuto, Hagiwara, Jiang,Mazumdar, Schwartz, Yaakobi, Zhou,...]
Translocation distance:Levenshtein’s insertion/deletion codes:For permutations, 1 translocation = 1 deletion + 1 insertionOnly efficient single-deletion-correcting codes known.Beame and Blaise (Ulam distance): zero-rate regime
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 10
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Bounds on the Size of Translocation Codes
Definition: For all n, d ∈ Z, A◦(n, d) denotes the largest number ofpermutations in Sn with pairwise translocation distance at least d .
Theorem: Let C◦ := lim lnA◦(n,d)ln n! and δ = lim d(n)
n. Then
C◦ = 1 − δ.
Theorem: For Hamming and Transposition codes, respectively,
CH = 1 − δ, 1 − 2δ ≤ CT ≤ 1 − δ
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 11
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Code Construction: Single Right-translocation Error
1 Partition [n] into even and odd parts.Eg, P1 = {1, 3, 5, 7, 9},P2 = {2, 4, 6, 8}.
2 Use codes with Hamming distance 2 over P1 and P2.
3 Interleave.
1 3 5 7 92 4 6 8
5 9 7 1 36 8 2 4
Encoding
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 12
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Code Construction: Single Right-translocation Error
1 Partition [n] into even and odd parts.Eg, P1 = {1, 3, 5, 7, 9},P2 = {2, 4, 6, 8}.
2 Use codes with Hamming distance 2 over P1 and P2.
3 Interleave.
5 8 2 6 39 7 1 4
1 3 5 7 92 4 6 8
5 9 7 1 36 8 2 4
Encoding
Channel
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 12
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Code Construction: Single Translocation Error
1 Partition [n] into three parts.Eg, P1 = {1, 4, 7},P2 = {2, 5, 8},P3 = {3, 6, 9}.
2 Use codes with Hamming distance 2 over P1,P2, and P3.
3 Interleave.
1 3 5 7 92 4 6 8
7 9 8 1 32 4 6 5
Encoding
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 13
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Code Construction: Single Translocation Error
1 Partition [n] into three parts.Eg, P1 = {1, 4, 7},P2 = {2, 5, 8},P3 = {3, 6, 9}.
2 Use codes with Hamming distance 2 over P1,P2, and P3.
3 Interleave.
7 2 4 6 35 9 8 1
1 3 5 7 92 4 6 8
7 9 8 1 32 4 6 5
Encoding
Channel
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 13
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Interleaving Hamming Codes
Partition [n] into 2t + 1 classes Pi
Choose Ci to be a permutation code over Pi with minimumHamming distance at least 4t + 1.
Construct code C by interleaving the codes Ci
Theorem: C corrects t errors.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...
Hamming code 1
Hamming code 2
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 14
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Interleaving Hamming Codes
Assuming best Hamming distance codes, cardinality equals
|C | = AH
!" n
d
#
, 2d$d
.
For d ∼ nβ,
limln |C |
ln n!= 1 − β.
Decoding complexity: may be exponential in d .
For constant d , decoding is polynomial (in n) and the rateapproaches 1.
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 15
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Interleaving Translocation and Hamming Codes
Partition [n] into P and Q of sizes p and p − 1, withn = 2p − 1
C ′
1 ⊆ SP with minimum translocation distance d
C1 ⊆ SQ with minimum Hamming distance 3d/2
Theorem: The interleaved code has minimum translocationdistance d .
1 8 2 9 3 10 4 11 5 12 6 13 7
Translocation code Hamming code
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 16
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Interleaving Translocation and Hamming Codes
The translocation code C ′
1 can be constructed in a similar manner.
1 8 2 9 3 10 4 11 5 12 6 13 7
1 5 2 6 3 7 4
Translocation code Hamming code
Translocation code Hamming code
Rate ≃ 1 − 2−k(1 + k), k is the number of levels =
%
log2
3δ
&
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 17
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Decoding
Decoding algorithm for interleaved codes (Translocation/Hamming)
Translocation codes with min distance d
Hamming codes used must have distance 2d
Decoding algorithm is recursive: the inner-most components aredecoded first.The rate of code decodable with this algorithm is lower than whatis implied by min distance since Hamming code must have distance2d instead of 3d/2.
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 18
IntroductionResults
Discussion
Coding CapacityCode ConstructionDecoding
Code Constructions: Asymptotic Rate Comparisons
0.2 0.4 0.6 0.8 1.0δ
0.2
0.4
0.6
0.8
1.0
Rate
Hamming/Translocation with decoding
Hamming/Translocation
Hamming/Translocation (1 level)
Capacity
Figure : Asymptotic rate comparisons.Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors 19
Introduction
Results
Discussion
Discussion
Translocation distance is a lower bound for Hamming distance,Kendall distance, and transposition distance/2Translocation codes with large minimum distance are codeswith large distances in above metricsIn case of Hamming distance, no asymptotic rate loss
Farnoud, Skachek, Milenkovic Rank Modulation for Translocation Errors
20