q ary asymmetric loco codes constrained codes supporting
play

Q-ary Asymmetric LOCO Codes: Constrained Codes Supporting Flash - PowerPoint PPT Presentation

Q-ary Asymmetric LOCO Codes: Constrained Codes Supporting Flash Evolution Ahmed Hareedy, Beyza Dabak, and Robert Calderbank Duke University International Symposium on Information Theory June 2020 Presentation Outline Motivation and


  1. Q-ary Asymmetric LOCO Codes: Constrained Codes Supporting Flash Evolution Ahmed Hareedy, Beyza Dabak, and Robert Calderbank Duke University International Symposium on Information Theory June 2020

  2. Presentation Outline ➢ Motivation and technical vision ➢ Introduction and history ➢ Q-ary asymmetric LOCO codes ➢ Rates and reconfigurability ➢ Conclusion and future directions 2

  3. Storage Densities Are Rapidly Growing ➢ Modern applications (IoT) require storage densities to grow rapidly. ❑ Data storage is a story where density increases as a result of advances in physics/architectures and innovations in signal processing. ➢ Data storage types: TDMR ❑ Magnetic, non-volatile (HDD). Tunneling MR head ❑ Electronic, non-volatile (Flash). Giant MR head ❑ Resistive, non-volatile (3D XPt). MR head ❑ Electronic, volatile (DRAM). ➢ The cold-warm-hot axis. V-NAND QLC ➢ Densities approach 10 Tbpsi! V-NAND TLC ❑ With the vertical NAND NAND MLC (3D NAND), Flash devices NAND SLC are already winning! 3

  4. Understanding Flash Operation ➢ The Flash cell is a MOSFET but with a floating gate (FG). Very high +ve voltage ❑ Programming is performed via applying very G high positive voltage to the gate (NPN). - - - - - - FG ❑ Electrons tunnel into the FG. N N ❑ The charge level in the FG controls threshold. P ➢ Advances in physics enabled more than two charge levels per cell (SLC vs. M/T/Q/P-LC). ➢ How to read Word 3 in NAND Flash: ❑ Apply ON voltage on all word lines except 3, and read voltage on 3. ……………………………… 4

  5. Sources of Error in Flash Devices ➢ Inter-cell interference (ICI): ❑ Parasitic capacitances result in charge propagation ( 101 in SLC). ➢ Programming errors: ❑ Failed programming/erasing operations result in asymmetric errors. ➢ Other sources of error: ❑ Charge leakage over time and Gaussian electronic noise. MLC Flash High Low High ➢ What about magnetic recording devices? ❑ Inter-symbol interference (ISI), inter-track interference (in TDMR), jitter or timing problems, and Gaussian noise. 5

  6. How Can We Take Full Advantage? ➢ Data storage devices operate at very low frame error rates. ➢ Our technical vision is: ❑ To devise efficient coding techniques that exploit the advances in physics to significantly improve performance. ➢ Mitigating interference: ❑ Constrained codes prevent error-prone patterns from being written. ❑ LOCO codes forbid these patterns with minimal redundancy. ❑ LOCO codes can be easily reconfigured as the device ages. ➢ Handling other sources of error: ❑ Graph-based (LDPC) codes correct the errors after reading. ❑ Examples are spatially-coupled and multi-dimensional LDPC codes. ➢ These techniques result in significant lifetime and density gains! 6

  7. Presentation Outline ➢ Motivation and technical vision ➢ Introduction and history ➢ Q-ary asymmetric LOCO codes ➢ Rates and reconfigurability ➢ Conclusion and future directions 7

  8. Introduction to Constrained Codes ➢ Constrained codes impose restrictions on written (transmitted) data. ❑ The set of forbidden patterns can be symmetric or asymmetric. ❑ The rate is (# of information bits)/(# of coded bits or symbols). ➢ The universe of constrained sequences is represented by an FSTD. The capacity is the highest achievable rate. ➢ Example: 𝒯 1 = {010, 101} constraint. ❑ The adjacency matrix of this FSTD is: 𝑇 1 𝑇 2 𝑇 3 𝑇 4 𝑇 1 𝑇 2 𝑇 3 𝑇 4 ❑ The capacity is log 2 (𝜇 max ) , which is 0.6942 here. 8

  9. History and Our LOCO Codes 𝒯 𝑦 ≜ {010, 101, 0110, 1001, … , 0𝟐 𝑦 0, 1𝟏 𝑦 1} 1948 Shannon: FSTD of constrained codes [R1] 1970 Tang and Bahl: RLL codes [R2] Cover: Enumerative source coding [R3] Franaszek Claude Shannon 1980 Adler, Coppersmith, and Hassner: State splitting and merging to produce FSMs [R4] Karabed, Immink, Siegel, and Wolf: 1990 Optimization of FSMs [R5, R6] Constrained codes based on lexicographic 2000 indexing [R7, R8] Kees Immink LOCO codes are 𝒯 𝑦 -constrained (symmetric) codes: 2019 Capacity-achieving, simple, and reconfigurable [H1] 9

  10. Presentation Outline ➢ Motivation and technical vision ➢ Introduction and history ➢ Q-ary asymmetric LOCO codes ➢ Rates and reconfigurability ➢ Conclusion and future directions 10

  11. Device Physics Determine Patterns to Forbid ➢ Consider Flash devices with 𝑟 levels per cell: ❑ SLC ( 𝑟 = 2 ), MLC ( 𝑟 = 4 ), TLC ( 𝑟 = 8 ), QLC ( 𝑟 = 16 ), PLC ( 𝑟 = 32 ). ❑ Symbols in GF( 𝑟 ) = {0, 1, 𝛽, … , 𝛽 𝑟−2 } are written as charge (threshold) levels in {0, 1, 2, … , 𝑟 − 1} . ➢ What should we forbid? ❑ Patterns resulting in max charge at the outer cells but less at the inner ones [R9]. ❑ Let 𝜀 be in GF( 𝑟 ) \{𝛽 𝑟−2 } . The set of 𝑟 − 1 < 𝑟 − 1 𝑟 − 1 forbidden patterns is: 𝑟 ≜ 𝛽 𝑟−2 𝜺 𝑧 𝛽 𝑟−2 , ∀𝜺 𝑧 ∈ GF( 𝑟 ) \{𝛽 𝑟−2 } 𝑧 | 1 ≤ 𝑧 ≤ 𝑦 . 𝒭 𝑦 ❑ If 𝑟 = 2 (binary), 𝜺 𝑧 has to be only 𝟏 𝑧 . Then, 2 = 101,1𝟏 2 1, … , 1𝟏 𝑦 1 . 𝒭 𝑦 ❑ The codes are 𝑟 -ary asymmetric LOCO (QA-LOCO) codes. ❑ Handling 𝑦 > 1 can increase the lifetime and reduce the time to market. 11

  12. Formal Definition and Group Structure 𝑟 ➢ A QA-LOCO code 𝒭𝒟 𝑛,𝑦 is defined by: 𝑟 ❑ Each codeword 𝐝 ∈ 𝒭𝒟 𝑛,𝑦 has symbols in GF( 𝑟 ) and is of length 𝑛 . 𝑟 ❑ Codewords in 𝒭𝒟 𝑛,𝑦 are ordered lexicographically. 𝑟 𝑟 , 𝑦 ≥ 1 . ❑ Each codeword 𝐝 ∈ 𝒭𝒟 𝑛,𝑦 does not contain any pattern in 𝒭 𝑦 ❑ All codewords satisfying the above properties are included. 𝑟 , 𝑛 ≥ 2 , are partitioned into three groups: ➢ Codewords in 𝒭𝒟 𝑛,𝑦 ❑ Group 1: Codewords starting with 𝜀, ∀𝜀, from the left. ❑ Group 2: Codewords starting with 𝛽 𝑟−2 𝛽 𝑟−2 from the left. ❑ Group 3: Codewords starting with 𝛽 𝑟−2 𝜺 𝑦+1 , ∀𝜺 𝑦+1 , from the left. ➢ What QA-LOCO codes offer [H2]: ❑ They mitigate ICI, and they are capacity-achieving. ❑ They have simple encoding-decoding, and they are reconfigurable. 12

  13. QA-LOCO Codes with 𝑟 = 2 and 𝑦 = 1 2 Codewords of the code 𝒭𝒟 𝑛,1 Index 𝑕(𝐝) 𝑛 = 1 𝑛 = 2 𝑛 = 3 𝑛 = 4 0 0 00 000 0000 1 1 01 001 0001 2 10 010 0010 3 11 011 0011 Group 1 4 100 0100 5 110 0110 6 111 0111 7 1000 Group 3 8 1001 9 1100 10 1110 Group 2 11 1111 13

  14. Enumerating the Codewords 𝑟 . Define: ➢ Theorem: Let 𝑂 𝑟 (𝑛, 𝑦) be the cardinality of 𝒭𝒟 𝑛,𝑦 𝑂 𝑟 𝑛, 𝑦 ≜ 𝑟 − 1 𝑛 , 𝑛 ≤ 0 , and 𝑂 𝑟 1, 𝑦 ≜ 𝑟 . Then, 𝑂 𝑟 (𝑛, 𝑦) , 𝑛 ≥ 2 , is recursively given by: 𝑂 𝑟 𝑛, 𝑦 = 𝑟𝑂 𝑟 𝑛 − 1, 𝑦 − 𝑟 − 1 𝑂 𝑟 𝑛 − 2, 𝑦 + 𝑟 − 1 𝑦+1 𝑂 𝑟 (𝑛 − 𝑦 − 2, 𝑦). ➢ Example: For 𝑟 = 2 and 𝑦 = 1 : 𝑂 2 𝑛, 1 = 2𝑂 2 𝑛 − 1, 1 − 𝑂 2 𝑛 − 2, 1 + 𝑂 2 (𝑛 − 3,1). ❑ 𝑂 2 −1,1 ≜ 1, 𝑂 2 0, 1 ≜ 1, 𝑂 2 1, 1 ≜ 2. ❑ 𝑂 2 2, 1 = 2𝑂 2 1, 1 − 𝑂 2 0, 1 + 𝑂 2 −1,1 = 4. ❑ 𝑂 2 3, 1 = 2𝑂 2 2, 1 − 𝑂 2 1, 1 + 𝑂 2 0,1 = 7. ❑ 𝑂 2 4, 1 = 2𝑂 2 3, 1 − 𝑂 2 2, 1 + 𝑂 2 1,1 = 12. ❑ The numbers are consistent with the table. 14

  15. Codeword to Index and Vice Versa 𝑟 , ➢ Theorem: The index of a QA-LOCO codeword 𝐝 ≜ 𝑑 𝑛−1 𝑑 𝑛−2 … 𝑑 0 ∈ 𝒭𝒟 𝑛,𝑦 𝑛 ≥ 2 , is given by the rule: 𝑛−1 𝑏 𝑗 𝑟 − 1 𝛿 𝑗 𝑂 𝑟 𝑗 − 𝛿 𝑗 , 𝑦 , 𝑕 𝐝 = σ 𝑗=0 where 𝑏 𝑗 ≜ gflog 𝛽 (𝑑 𝑗 ) + 1 is the level equivalent of 𝑑 𝑗 , and 𝛿 𝑗 = 𝑦 − 𝑙 𝑗 + 1; 𝑙 𝑗 is the distance to the closest 𝛽 𝑟−2 symbol. ❑ For example, if 𝑑 𝑗 = 𝛽 𝑟−2 , 𝑏 𝑗 = 𝑟 − 1 . ❑ For example, if 𝑑 𝑗+1 𝑑 𝑗 = 𝛽 𝑟−2 𝑑 𝑗 , 𝑙 𝑗 = 1 and 𝛿 𝑗 = 𝑦 . ➢ The theorem gives the encoding-decoding rule of QA-LOCO codes. ❑ Encoding: Mapping from index to codeword. ❑ Decoding: Demapping from codeword to index. ➢ The same hardware can support multiple constraints by updating 𝑂 ’s! ❑ Runtime operations are only subtractions and additions. 15

  16. Example of QA-LOCO Rule 𝑛−1 𝑏 𝑗 𝑂 2 𝑗 − 𝑏 𝑗+1 𝑦, 𝑦 . ➢ For the binary case ( 𝑟 = 2 ): 𝑕 𝐝 = σ 𝑗=0 ➢ Example: 𝑟 = 2 , 𝑛 = 4 , and 𝑦 = 1 : 3 ❑ 𝑕(𝐝 = 0111) = σ 𝑗=0 𝑏 𝑗 𝑂 2 𝑗 − 𝑏 𝑗+1 , 1 = 𝑂 2 2, 1 + 𝑂 2 0, 1 + 𝑂 2 −1, 1 2 Index 𝑕(𝐝) Codewords of the code 𝒭𝒟 4,1 = 4 + 1 + 1 = 6 . 0 0000 1 0001 ❑ 𝑕 𝐝 = 1110 2 0010 3 = σ 𝑗=0 𝑏 𝑗 𝑂 2 𝑗 − 𝑏 𝑗+1 , 1 3 0011 Group 1 4 0100 = 𝑂 2 3, 1 + 𝑂 2 1, 1 + 𝑂 2 (0, 1) 5 0110 = 7 + 2 + 1 = 10 . 6 0111 7 1000 Group 3 Both are consistent with the indices 8 1001 9 1100 in the table. 10 1110 Group 2 1111 11 16

  17. Presentation Outline ➢ Motivation and technical vision ➢ Introduction and history ➢ Q-ary asymmetric LOCO codes ➢ Rates and reconfigurability ➢ Conclusion and future directions 17

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend