Flash Memory Hard Decoding with Component-Code Error Consensus
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional encoding methods are not well suited for supporting codes with high code rates for both hard decoding and soft decoding, particularly in flash memory devices where errors can occur due to noise and interference.
Innovation Solution
The proposed solution involves a code construction based on simple component codes, such as Bose-Chaudhuri-Hocquenghem (BCH) codes, which implement iterative decoding. This allows for a more cost-effective implementation suitable for storage applications in flash memory devices. The ECC structure uses multi-dimensional encoding with a Half Folded-Product Code (HFPC) structure, enabling efficient error correction.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional encoding methods are used for high code rates, then code rate is improved, but implementation complexity increases
Solution Approach 1:
The code is divided into multiple component codes (e.g., several BCH codes) that can be decoded independently and in parallel. Each component code handles a portion of the data, allowing the system to achieve high overall code rates while maintaining manageable complexity in each individual decoder component.
Solution Approach 2:
The encoding scheme transitions from a single-dimensional conventional code to a multi-dimensional structure where data is encoded across multiple component codes. This dimensional expansion allows the system to achieve high code rates by combining multiple simpler codes rather than using a single complex code.
2Productivity
If conventional encoding methods are used for hard decoding, then decoding speed is improved, but error correction capability deteriorates
Solution Approach 1:
The system merges multiple component codes into a unified encoding structure where each component code contributes to both fast hard decoding and enhanced error correction. By combining several simpler BCH codes with good hard decoding properties, the overall system achieves both speed and reliability.
Solution Approach 2:
The encoding scheme uses a composite structure combining multiple different component codes (e.g., various BCH codes with different parameters) to create a hybrid code that leverages the strengths of each component - fast hard decoding capability from individual BCH codes and enhanced error correction from their collective redundancy.
Data Source
AI summary
Various implementations described herein relate to systems and methods for decoding data stored in a non-volatile storage device, including determining error candidates and determining whether at least one first error candidate from the error candidates is found based on two of the component codes agreeing on a same error candidate. In addition, whether at least one second error candidate is found based on two of the component codes agreeing on a same error candidate is determined in response to implementing a suggested correction at one of the error candidates. Errors in the data are corrected based on at least one of whether the at least one first error candidate is found or whether the at least one second error candidate is found.


