Non-Volatile Memory Block Degradation Threshold Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for managing bad blocks in non-volatile memory devices lead to reduced overprovisioning and increased write amplification, causing premature wear and reduced reliability due to the practice of marking entire blocks as bad upon detection of a single bad page or word line.
Innovation Solution
Implementing an intermediate state for blocks with a threshold-based classification system, where blocks with fewer bad pages are considered degraded rather than immediately marked as bad, allowing for continued use and delaying retirement, and utilizing degraded blocks for read and program operations while excluding bad blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a single bad page in a block causes the whole block to be removed from usage, then data integrity is maintained, but overprovisioning is reduced and write amplification increases
Solution Approach 1:
The patent segments the block status into three distinct categories: good blocks, degraded blocks, and bad blocks. This segmentation allows the system to differentiate between blocks with zero bad pages, blocks with fewer bad pages than a threshold, and blocks with bad pages equal to or exceeding the threshold. By segmenting the block classification, the system can maintain data integrity for good and degraded blocks while preserving overprovisioning capacity, avoiding the need to retire entire blocks due to single bad pages.
Solution Approach 2:
The patent changes the parameter of block retirement criteria from a binary condition (any bad page = bad block) to a threshold-based condition (bad pages >= threshold = bad block). This parameter change allows blocks with fewer bad pages than the threshold to remain in the degraded state and continue being used for read and program operations, thereby maintaining overprovisioning and reducing write amplification while still ensuring data integrity through the threshold mechanism.
2Reliability
If a single bad page in a block causes the whole block to be removed from usage, then reliability is maintained, but write amplification increases
Solution Approach 1:
The patent segments the block status into three distinct categories: good blocks, degraded blocks, and bad blocks. This segmentation allows the system to differentiate between blocks with zero bad pages, blocks with fewer bad pages than a threshold, and blocks with bad pages equal to or exceeding the threshold. By segmenting the block classification, the system can maintain data integrity for good and degraded blocks while preserving overprovisioning capacity, avoiding the need to retire entire blocks due to single bad pages.
Solution Approach 2:
The patent changes the parameter of block retirement criteria from a binary condition (any bad page = bad block) to a threshold-based condition (bad pages >= threshold = bad block). This parameter change allows blocks with fewer bad pages than the threshold to remain in the degraded state and continue being used for read and program operations, thereby maintaining overprovisioning and reducing write amplification while still ensuring data integrity through the threshold mechanism.
3Reliability
If blocks are retired immediately upon detecting a bad page, then data integrity is ensured, but the number of available blocks for operations decreases
Solution Approach 1:
The patent segments the block status into three distinct categories: good blocks, degraded blocks, and bad blocks. This segmentation allows the system to differentiate between blocks with zero bad pages, blocks with fewer bad pages than a threshold, and blocks with bad pages equal to or exceeding the threshold. By segmenting the block classification, the system can maintain data integrity for good and degraded blocks while preserving overprovisioning capacity, avoiding the need to retire entire blocks due to single bad pages.
Solution Approach 2:
The patent changes the parameter of block retirement criteria from a binary condition (any bad page = bad block) to a threshold-based condition (bad pages >= threshold = bad block). This parameter change allows blocks with fewer bad pages than the threshold to remain in the degraded state and continue being used for read and program operations, thereby maintaining overprovisioning and reducing write amplification while still ensuring data integrity through the threshold mechanism.
Data Source
AI summary
A method is provided for controlling a storage system, which can include a plurality of memory cells arranged in blocks and a memory controller coupled to the plurality of memory cells for controlling data write and read in the plurality of memory cells. The method includes identifying a block as a good block, if a count of bad pages in the block is zero, identifying the block as a degraded block if the count of bad pages is below a threshold number, and identifying the block as a bad block if the count of bad pages is above or equal to the threshold number. The method includes using good blocks and degraded blocks for read and program operations, and not using the bad blocks.


