LDPC Codes over the q -ary Multi-Bit Channel Rami Cohen Andrew and Erna Viterbi Faculty of Electrical Engineering Technion - Israel Institute of Technology April 2017 Coding Theory Seminar Computer Science Dept., Technion Based on a PhD research advised by Prof. Yuval Cassuto Rami Cohen The q -ary Multi-Bit Channel April 2017 1 / 39
Table of Contents The q -ary Multi-Bit Channel (QMBC) 1 Set Iterative Decoder Decoding Threshold Region Finite-Length Iterative-Decoding Analysis Finite-Length Maximum-Likelihood Decoding Analysis Suggestions for Future Research 2 Rami Cohen The q -ary Multi-Bit Channel April 2017 2 / 39
The q -ary Multi-Bit Channel (QMBC) Table of Contents The q -ary Multi-Bit Channel (QMBC) 1 Set Iterative Decoder Decoding Threshold Region Finite-Length Iterative-Decoding Analysis Finite-Length Maximum-Likelihood Decoding Analysis Suggestions for Future Research 2 Rami Cohen The q -ary Multi-Bit Channel April 2017 3 / 39
The q -ary Multi-Bit Channel (QMBC) Partial Erasure Channels Measurement channel Levels of electric charge represent data symbols New flash memories: up to 32 levels ( 5 bits) per memory cell The read operation is performed by measuring current/voltage levels Partial read Measurement terminates prematurely (e.g., clock limitation) Imperfect current/voltage sensing (e.g., leakage) Inconclusive measurement result: Set of possible levels Rami Cohen The q -ary Multi-Bit Channel April 2017 4 / 39
The q -ary Multi-Bit Channel (QMBC) Partial Erasure Channels x i are taken from X = { 0 , 1 , ..., q − 1 } y i are subsets of X , such that x i ∈ y i Definition: i has a partial erasure when | y i | > 1 Rami Cohen The q -ary Multi-Bit Channel April 2017 5 / 39
The q -ary Multi-Bit Channel (QMBC) Our First Model: The q -ary Partial-Erasure Channel (QPEC) QPEC partial erasure: The output is a random set of cardinality M ( 1 ≤ M ≤ q ) that contains the input symbol Contributions: Set iterative decoder Asymptotic iterative-decoding performance analysis Bounds and approximation models Code design using linear programming [RC, YC ISIT ’14], [RC, YC Iterative Decoding of LDPC Codes over the q -ary Partial Erasure Channel, IT Trans. ’16] Rami Cohen The q -ary Multi-Bit Channel April 2017 6 / 39
The q -ary Multi-Bit Channel (QMBC) Our Second Model: The q -ary Multi-Bit Channel (QMBC) q voltage/current levels represent q -ary ( q = 2 s ) symbols Symbols are read in a threshold-measurement process One symbol bit is provided in each step, starting from the MSB Rami Cohen The q -ary Multi-Bit Channel April 2017 7 / 39
The q -ary Multi-Bit Channel (QMBC) The q -ary Multi-Bit Channel q voltage/current levels represent q -ary ( q = 2 s ) symbols Symbols are read in a threshold-measurement process One symbol bit is provided in each step, starting from the MSB 2 or 3 Binary: 1? Rami Cohen The q -ary Multi-Bit Channel April 2017 7 / 39
The q -ary Multi-Bit Channel (QMBC) The q -ary Multi-Bit Channel q voltage/current levels represent q -ary ( q = 2 s ) symbols Symbols are read in a threshold-measurement process One symbol bit is provided in each step, starting from the MSB 2 Binary: 10 Successful read requires s = log 2 q measurement steps Rami Cohen The q -ary Multi-Bit Channel April 2017 7 / 39
The q -ary Multi-Bit Channel (QMBC) The q -ary Multi-Bit Channel QMBC partial erasure: Measurement terminates after s − j steps ( j = 0 , 1 , ..., s ) Stored symbol belongs to a set of 2 j consecutive symbols 2 or 3 ? Partial erasure of size 2 : only one measurement instead of two Rami Cohen The q -ary Multi-Bit Channel April 2017 8 / 39
The q -ary Multi-Bit Channel (QMBC) The q -ary Multi-Bit Channel Model Input alphabet: X = { 0 , 1 , ..., q − 1 } , q = 2 s M j x denotes the partial-erasure set (of 2 j symbols) due to s − j measurements, given input symbol x Transition probabilities: � � � � X = x Y = M j Pr = ε j x QMBC capacity s � jε j 1 − [ q − ary symbols per channel use ] s j =1 Rami Cohen The q -ary Multi-Bit Channel April 2017 9 / 39
The q -ary Multi-Bit Channel (QMBC) The q -ary Multi-Bit Channel Examples ( q = 4 ) ∆ y = M 0 ε 0 = 1 − ε 1 − ε 2 , 0 = { 0 } Pr ( Y = y | X = 0) = y = M 1 ε 1 , 0 = { 0 , 1 } y = M 2 ε 2 , 0 = { 0 , 1 , 2 , 3 } ∆ y = M 0 ε 0 = 1 − ε 1 − ε 2 , 3 = { 3 } y = M 1 Pr ( Y = y | X = 3) = ε 1 , 3 = { 2 , 3 } y = M 2 ε 2 , 3 = { 0 , 1 , 2 , 3 } Rami Cohen The q -ary Multi-Bit Channel April 2017 10 / 39
The q -ary Multi-Bit Channel (QMBC) Mapping to GF( q ) elements Consider a basis { ω 1 , ω 2 , ..., ω s } to GF( q ) over GF( 2 ), i.e., � s � � GF( q ) = � ω 1 , ω 2 , ..., ω s � ∆ = a i · ω i : a i ∈ { 0 , 1 } . i =1 Mapping M j 0 are mapped to � ω 1 , ω 2 , ..., ω j � , which are subgroups of GF + ( q ) M j x are mapped to the cosets of the subgroups above, with coset representatives taken from � ω j +1 , ω j +2 , ..., ω s � Rami Cohen The q -ary Multi-Bit Channel April 2017 11 / 39
The q -ary Multi-Bit Channel (QMBC) Set Iterative Decoder LDPC Codes over GF( q ) Variable nodes Check nodes Example ( k = 3 , n = 7 , GF( 4 )): Edge labels 0 2 3 0 1 0 1 1 1 0 2 0 0 2 H = 0 0 1 0 2 1 0 3 0 0 1 0 2 0 Recall: Symbols are mapped to GF( q ) elements Rami Cohen The q -ary Multi-Bit Channel April 2017 12 / 39
The q -ary Multi-Bit Channel (QMBC) Set Iterative Decoder LDPC Codes over GF( q ) Variable nodes Check nodes Example ( k = 3 , n = 7 , GF( 4 )): Edge labels 2 · v 1 + 3 · v 3 + 1 · v 5 + 1 · v 7 = 0 0 2 3 0 1 0 1 1 1 0 2 0 0 2 H = 0 0 1 0 2 1 0 3 0 0 1 0 2 0 Recall: Symbols are mapped to GF( q ) elements Rami Cohen The q -ary Multi-Bit Channel April 2017 12 / 39
The q -ary Multi-Bit Channel (QMBC) Set Iterative Decoder Set Iterative Decoder Message passing ”Beliefs” (probabilities) about variable node values are exchanged iteratively over the graph edges in form of messages We use a non-standard message-passing algorithm, in which sets of symbols are exchanged The possible set values are based on local parity-check equations v 1 → c 2 : I think I am { 0 , ω 1 } c 2 → v 1 : I think you are { 0 , ω 2 } Rami Cohen The q -ary Multi-Bit Channel April 2017 13 / 39
The q -ary Multi-Bit Channel (QMBC) Set Iterative Decoder Set Iterative Decoder Check-to-variable (CTV) messages Sumset of edge-label weighted variable-to-check (VTC) message sets 3 · v 1 + v 4 + 2 · v 6 = 0 � 3 · v 1 � ∆ � V 1 = : v 1 ∈ V 1 2 � v 4 � ∆ � V 4 = 2 : v 4 ∈ V 4 � � ∆ Sumset: c 4 → v 6 = ˜ V 1 + ˜ v 1 ∈ ˜ v 4 ∈ ˜ V 4 = ˜ v 1 + ˜ v 4 : ˜ V 1 , ˜ V 4 Rami Cohen The q -ary Multi-Bit Channel April 2017 14 / 39
The q -ary Multi-Bit Channel (QMBC) Set Iterative Decoder Set Iterative Decoder Variable-to-check (VTC) messages Intersection of channel information and CTV message sets CI( v 6 ) v 6 → c 3 = CI( v 6 ) � { c 4 → v 6 } Rami Cohen The q -ary Multi-Bit Channel April 2017 15 / 39
The q -ary Multi-Bit Channel (QMBC) Set Iterative Decoder Subgroup Property Theorem Iterative-decoding analysis can be restricted to CTV/VTC messages that are subgroups of GF + ( q ). Proof outline Sumset/intersection of cosets = coset ⇒ The CTV/VTC messages are cosets Decoding failure: VTC message-set cardinality larger than 1 | Coset | = | Subgroup | Performance depends on the subgroups underlying the M j x cosets All-zero codeword assumption holds Rami Cohen The q -ary Multi-Bit Channel April 2017 16 / 39
The q -ary Multi-Bit Channel (QMBC) Set Iterative Decoder Complexity ( q = 2 s is the field size) Decoding analysis feasibility The number of subgroups (closed form) grows slowly with q Example ( q = 16 ): 67 subgroups, compared to 65535 subsets (e.g., QPEC) Rami Cohen The q -ary Multi-Bit Channel April 2017 17 / 39
The q -ary Multi-Bit Channel (QMBC) Decoding Threshold Region Density-Evolution Analysis Asymptotic analysis of iterative-decoding performance Tracking the CTV/VTC message probabilities as a function of the iteration number For the QMBC, only subgroups of GF + ( q ) need to be tracked Much smaller compared to the 2 q − 1 messages for general partial-erasure channels Pr( Decoding success ) = Pr( VTC messages are all { 0 } ) Rami Cohen The q -ary Multi-Bit Channel April 2017 18 / 39
The q -ary Multi-Bit Channel (QMBC) Decoding Threshold Region Density-Evolution Equations Let H t ( i = 1 , 2 , .., T ) denote the subgroups of GF + ( q ) w ( l ) ( z ( l ) t ) is the probability of CTV (VTC) subgroup H t at iteration l t � � CTV : w ( l ) z ( l − 1) · P t ( H m ∈S VTC , L ) = t m S VTC m ∈S VTC s � � � VTC : z ( l ) · I j w ( l ) = ε j t ( H m ∈S CTV ) t m j =0 S CTV m ∈S CTV Performance depends on the edge-label distribution L Rami Cohen The q -ary Multi-Bit Channel April 2017 19 / 39
Recommend
More recommend