On Relative Performances and Decoding of CRC Concatenated Polar Codes with Different Lists for Solid-State Drives

The storage capacity and cost-per-bit of solid-state drives (SSDs) have improved gradually in recent years, which have driven to the extensive acceptance in data storage of modern computing systems. SSDs convey greater read and write performance, enhancement in random-access input/output (I/O) operations, and resistance to physical shock, while form factor and static power requirement are not as much of magnetic hard disk drives (HDDs). Though HDDs are progressively replaced by SSDs as a primary data storage, error correction is still severe to SSDs as NAND flash memories have worsening reliability which can diminish the life span of the flash storage devices. Presently, popular error control codes show inadequate error correction ability or poor error floor, and the growing storage density of NAND flash memory cells exhibits more data errors. All of these stimulate probing for finest channel coding to recover NAND flash reliability. Polar codes are favorable for SSDs as they are theoretically verified optimal codes with good error floor behavior. With the low computational complexity and the high error correction competency, cyclic redundancy check (CRC) concatenated polar code with list decoding can beat existing error correction codes in data communication applications. Hence, it also steered to implement in flash storage devices. In this paper, CRC concatenated polar codes with different list sizes for SSDs are designed and error correction performances are evaluated in C/C++ environment. Evaluated outcomes illustrate the decoding performance achieving preferred error floor behavior for error correction in flash storage devices. While the outcomes display that concatenated polar codes with list decoding are favorable for SSDs, some open problems are remained there for further investigations.

[1]  Aijun Liu,et al.  CRC Code Design for List Decoding of Polar Codes , 2017, IEEE Communications Letters.

[2]  M. Darnell,et al.  Error Control Coding: Fundamentals and Applications , 1985 .

[3]  Kai Chen,et al.  A Hybrid ARQ Scheme Based on Polar Codes , 2013, IEEE Communications Letters.

[4]  Michael Gastpar,et al.  On LP decoding of polar codes , 2010, 2010 IEEE Information Theory Workshop.

[5]  Tei-Wei Kuo,et al.  Antiwear Leveling Design for SSDs With Hybrid ECC Capability , 2017, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[6]  Rüdiger L. Urbanke,et al.  Universal polar codes , 2013, 2014 IEEE International Symposium on Information Theory.

[7]  Kai Chen,et al.  CRC-Aided Decoding of Polar Codes , 2012, IEEE Communications Letters.

[8]  Bin Li,et al.  An Adaptive Successive Cancellation List Decoder for Polar Codes with Cyclic Redundancy Check , 2012, IEEE Communications Letters.

[9]  Keshab K. Parhi,et al.  Low-Latency Sequential and Overlapped Architectures for Successive Cancellation Polar Decoder , 2013, IEEE Transactions on Signal Processing.

[10]  Hideki Ochiai,et al.  On design of CRC codes for polar codes with successive cancellation list decoding , 2017, 2017 IEEE International Symposium on Information Theory (ISIT).

[11]  Qing Li,et al.  Noise modeling and capacity analysis for NAND flash memories , 2014, 2014 IEEE International Symposium on Information Theory.

[12]  Alexander Vardy,et al.  How to Construct Polar Codes , 2011, IEEE Transactions on Information Theory.

[13]  Xiaohu You,et al.  Polar code-based error correction code scheme for NAND flash memory applications , 2016, 2016 8th International Conference on Wireless Communications & Signal Processing (WCSP).

[14]  Toshiyuki Tanaka,et al.  Performance of polar codes with the construction using density evolution , 2009, IEEE Communications Letters.

[15]  Tei-Wei Kuo,et al.  Proactive Channel Adjustment to Improve Polar Code Capability for Flash Storage Devices , 2018, 2018 55th ACM/ESDA/IEEE Design Automation Conference (DAC).

[16]  Erdal Arikan,et al.  Channel Polarization: A Method for Constructing Capacity-Achieving Codes for Symmetric Binary-Input Memoryless Channels , 2008, IEEE Transactions on Information Theory.

[17]  Onur Mutlu,et al.  Error patterns in MLC NAND flash memory: Measurement, characterization, and analysis , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).