ECC Decoding Engine Using Intermediate Data for Read Error Correction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional error correction code (ECC) decoding is not always able to correct all errors, necessitating an improvement in reliability and correcting capability.
Innovation Solution
An ECC engine is configured to perform first iteration ECC decoding on read data, select intermediate data when the first iteration fails, and use preprocessed data for a second iteration ECC decoding to enhance error correction capability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional ECC decoding is used, then the decoding process is simple and fast, but the error correction capability is insufficient
Solution Approach 1:
The patent performs preliminary ECC decoding to generate intermediate decoded data before the final decoding attempt. This preliminary action creates a foundation that improves the success rate of the subsequent final decoding, allowing the system to handle more error cases while maintaining a structured two-stage process that balances complexity and capability
2Reliability
If multiple iteration ECC decoding is performed, then the error correction capability is improved, but the processing time increases
Solution Approach 1:
The patent segments the ECC decoding process into two distinct stages: a first ECC decoding stage that generates intermediate decoded data, and a second ECC decoding stage that uses both the original encoded data and intermediate data. This segmentation allows the system to achieve enhanced error correction capability through multiple decoding attempts while organizing the process efficiently to minimize unnecessary time consumption
3Measurement precision
If intermediate decoded data is generated and used for preprocessing, then the final decoding accuracy is improved, but the computational complexity increases
Solution Approach 1:
The patent introduces intermediate decoded data as a mediator between the encoded input data and the final decoded output. This intermediate data serves as a bridge that captures partial decoding results, which are then combined with the original encoded data in the preprocessing stage to improve the accuracy of the final decoding while distributing the computational workload across manageable stages
Data Source
AI summary
A method of responding to a read request from a host includes: obtaining read data from a memory device, performing first iteration ECC decoding on the read data to generate a plurality of pieces of decoded data, selecting one of the plurality of pieces of decoded data as intermediate data as intermediate data, generating preprocessed data based on the read data and the intermediate data and performing second iteration ECC decoding on the preprocessed data when the first iteration ECC decoding fails, and outputting the intermediate data to the host when the first iteration ECC decoding succeeds.


