IEEE Std 1890:2018 pdf download.IEEE Standard for Error Correction Coding of Flash Memory Using Low-Density Parity Check Codes.
IEEE Std 1890 specifies a method to construct two-level low-density parity-check (LDPC) codes and to utilize them as the error correction coding (ECC) scheme in non-volatile memories (NVM). The encoding and decoding methods as well as the implications on memory and overall system latency are presented. The simulation results comparing the two-level code construction scheme and the traditional one-level scheme, as well as the parity check matrices for several LDPC code rates and lengths are provided.
1.2 Purpose
This draft standard provides a method to utilize error correction coding in non-volatile memories. For this purpose, a two-level code construction method based on LDPC codes along with the decoding method is presented. This scheme outperforms the traditional method, while having slightly higher memory requirements and negligible delay.
1.3 Introduction
Reliable data communications and storage is achieved by employing ECC techniques where desired reliability is determined based on the application. The smallest memory unit in most flash memories is usually used to store several data packets or codewords that arc encoded using an ECC technique. For given packet length, the available memory may not be entirely consumed by the stored codewords. For this scenario, the presented two-level code construction scheme constructs an auxiliary codeword using the primary codewords stored in the memory unit that utilizes only the unconsumed memory, which is insuflicient to store an entire codeword. This scheme is based on PC codes (Gallager [134], Mackay [B7])and improves the frame error rate (FER) performance for a given raw bit error rate (RBER) with negligible latency.
In the two-level code construction scheme, the first level comprises encoding the user information bits using T codewords and the second level comprises encoding a subset of each one of the codewords in level one using an auxiliary codeword. however, only the parity bits of the auxiliary codeword arc stored and thus, the introduced overhead is small especially for high rate codes.
The decoding is also done in two stages. First, the Tprimary codewords are decoded. If the detection of at least one of the primary codewords fails, the auxiliary codeword is decoded. Then the extrinsic information obtained from decoding the auxiliary code is provided to the failed packets and these packets arc decoded one more time. This constitutes one global iteration. Since most packets are decoded successfully at high FERs. the latency due to utilizing the auxiliary code to decode the failed codewords is negligible. With a small overhead, the two-level scheme outperforms the traditional scheme where no auxiliary codeword is used. Moreover, it outperforms the traditional scheme that uses a code that is twice as long in the low raw bit error rate (RBER) regime.IEEE Std 1890 pdf download.