Reliability-Based Flexible Parity for NAND Page Error Correction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage devices experience errors during data storage and reading processes, and existing error correction methods are inadequate in handling varying reliability levels among memory pages, leading to inefficiencies and potential data loss.
Innovation Solution
The storage device generates a flexible parity based on the reliability of each memory page, using inside and outside parities to enhance error detection and correction, particularly for pages with lower reliability, by incorporating a page type table and ECC engine to manage encoding and decoding processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a single parity generation method is used for all memory pages, then the device complexity is reduced, but the data reliability deteriorates due to varying page reliability levels
Solution Approach 1:
The patent applies local quality by differentiating parity generation methods based on the reliability characteristics of specific memory pages. The controller identifies pages with different reliability levels (e.g., based on error rates, wear levels, or manufacturing variations) and applies appropriate parity generation strategies to each page type, rather than using a uniform approach across all pages.
Solution Approach 2:
The patent changes the parameters of parity generation based on page reliability characteristics. This includes adjusting parity bits, code rates, or error correction codes dynamically according to the reliability metric of each page, allowing the system to optimize data protection for high-risk pages while maintaining efficiency for reliable pages.
2Reliability
If reliability-based flexible parity generation is implemented, then error correction capability is improved, but the processing time increases
Solution Approach 1:
The patent implements preliminary action by pre-evaluating and categorizing memory pages according to their reliability characteristics before data writing operations. The controller maintains reliability information for each page in advance, so that when data needs to be stored, the appropriate parity generation method can be immediately selected without time-consuming analysis during the write operation.
Solution Approach 2:
The patent introduces dynamics by making the parity generation process adaptive and flexible based on real-time reliability assessments. The system can dynamically adjust the level of error correction applied to different pages, balancing between enhanced protection for unreliable pages and faster processing for reliable pages, rather than using a static, one-size-fits-all approach.
3Reliability
If multiple parity types are generated and stored, then data integrity is improved, but the memory space requirement increases
Solution Approach 1:
The patent applies partial action by generating and storing only the necessary parity information based on page reliability levels. For pages with high reliability, minimal or no additional parity may be stored, while pages with low reliability receive enhanced parity protection. This selective approach ensures data integrity for critical pages without unnecessarily consuming memory space for already-reliable pages.
Data Source
AI summary
An operating method of a storage device, the storage device including a page type table, a parity table, and a non-volatile memory device, and the method including receiving a write request of first data from a host device, generating a first inside parity and a first outside parity, based on the first data, storing the first outside parity in the parity table, obtaining first reliability type information of a first page for storing the first data, by referring to the page type table, generating a first flexible parity, based on the first inside parity and the first reliability type information, generating first encoding data, based on the first data and the first flexible parity, and storing the first encoding data in the non-volatile memory device.


