Same-Page Codeword Decoding With Historical ECC Feedback
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current error-correcting codes used in data communication and storage systems, such as Hamming codes and LDPC codes, are computationally complex and require improvements in decoding efficiency, especially when dealing with data corruption in non-volatile storage devices.
Innovation Solution
A method involving a storage system controller with multiple ECC decoders of varying power levels, where a first decoder attempts to decode data without soft information, and if it fails, a more powerful second decoder is used to successfully decode the data, generating soft information that can be used to aid in decoding subsequent codewords from the same storage location.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a more powerful second decoder is used to successfully decode the first codeword, then decoding reliability is improved, but device complexity and computational overhead increase
Solution Approach 1:
The decoding system is segmented into multiple decoders with different power levels (first decoder, second decoder, etc.). The first decoder attempts decoding without soft information, and only if it fails does the system escalate to the more powerful second decoder. This segmentation allows the system to achieve high reliability when needed while maintaining low complexity for the common case.
Solution Approach 2:
The system applies partial action by using the simpler first decoder for initial decoding attempts, which handles the majority of cases. The more powerful second decoder is activated only partially, specifically when the first decoder fails. This approach achieves necessary reliability without consistently incurring the full computational overhead of the most powerful decoder.
2Productivity
If soft information is generated and used for decoding subsequent codewords, then decoding efficiency is improved, but loss of time occurs during soft information generation
Solution Approach 1:
Soft information is generated as a preliminary action during the decoding of the first codeword using the second decoder. This soft information is then reused for decoding subsequent codewords from the same storage location, eliminating the need to regenerate it and thereby improving overall decoding efficiency without repeated time losses.
Solution Approach 2:
The system implements feedback by using the decoding information (soft information) generated from successfully decoding the first codeword to aid in decoding subsequent codewords. This feedback mechanism improves productivity by leveraging previously acquired information, reducing the computational effort and time required for subsequent decoding operations.
3Reliability
If multiple decoders are used to decode codewords, then error correction capability is improved, but device complexity increases
Solution Approach 1:
The decoding system is designed dynamically, allowing the controller to adaptively select which decoder to use based on the decoding needs. The system starts with the simpler first decoder and dynamically escalates to the second decoder only when necessary. This dynamic approach improves error correction capability when needed while minimizing the operational complexity by not always using the most complex decoder.
Data Source
AI summary
Systems and methods are provided for decoding data read from non-volatile storage devices. A method that may include decoding a first codeword read from a storage location of a non-volatile storage device using a first decoder without soft information, determining that the first decoder has failed to decode the first codeword, decoding the first codeword using a second decoder without soft information, determining that the second decoder has succeeded in decoding the first codeword, generating soft information associated with the storage location using decoding information generated by the second decoder and decoding a subsequent codeword from the storage location using the soft information associated with the storage location. The second decoder may be more powerful than the first decoder.


