1. Field
Exemplary embodiments of the present disclosure relate to a memory system and an operating method thereof.
2. Description of the Related Art
The computer environment paradigm has shifted to ubiquitous computing systems that can be used anytime and anywhere. Due to this fact, the use of portable electronic devices such as mobile phones, digital cameras, and notebook computers has rapidly increased. These portable electronic devices generally use a memory system having memory devices, that is, a data storage device. The data storage device is used as a main memory device or an auxiliary memory device of the portable electronic devices.
Data storage devices using memory devices provide excellent stability, durability, high information access speed, and low power consumption, since they have no moving parts. Examples of data storage devices having such advantages include universal serial bus (USB) memory devices, memory cards having various interfaces, and solid state drives (SSD).
Turbo-product codes (TPC) are a type of error correction codes. During TPC encoding, payload information is arranged in a matrix, and a TPC encoder encodes the rows and columns using component codes. For example, the rows are grouped in some manner (e.g., each group is 1-bit “high”) and encoded. Then, the columns are grouped in some manner (e.g., each group is 1-bit “wide”) and encoded. On the decoder side, this process is reversed. Sometimes, a TPC decoder encounters a stuck error pattern. For example, a TPC codeword being corrected may come to a steady state where the TPC decoder is unable to remove the final errors in the TPC codeword being corrected. Or, the TPC codeword oscillates back and forth between two error states (e.g., having a different number of errors and/or different error locations). New TPC decoding techniques which help when a stuck error pattern is encountered would be desirable.