Block Health Checking via Mini Read Scrub Tests
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional read scrub code rate (RSCR) tests in storage devices, such as solid state drives (SSDs), are not performed frequently enough and are resource-intensive, leading to potential performance degradation and data loss due to abrupt changes in NAND flash block fail bit counts, as they read all pages at each test initiation and are typically triggered only at predefined criteria.
Innovation Solution
Implementing a mini RSCR test that reads a portion of a block after each program/erase cycle, adjusting the code rate based on a maximum error count exceeding a threshold, and optionally invoking a full RSCR test for higher quality assessment, thereby increasing testing frequency with minimal performance impact.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional RSCR tests read all pages at each test initiation, then measurement precision is improved, but productivity deteriorates due to resource-intensive operations and infrequent testing
Solution Approach 1:
The patent divides the block into multiple pages and selects a subset of pages for reading during health checks. Instead of reading all pages in a block, the controller reads only a portion (e.g., one or more pages) to determine error metrics. This segmentation allows frequent health monitoring with reduced resource consumption, resolving the contradiction between measurement precision and productivity.
2Device complexity
If traditional RSCR tests are triggered only at predefined criteria, then device complexity is reduced, but reliability deteriorates due to delayed detection of block degradation
Solution Approach 1:
The patent implements a feedback mechanism where health check results (error metrics from read operations) are used to dynamically adjust future testing behavior. When error metrics exceed thresholds, the system triggers additional health checks or adjusts code rates. This feedback loop enables timely detection of degradation while maintaining manageable device complexity through rule-based responses.
3Device complexity
If code rate adjustments are delayed, then device complexity is reduced, but loss of information increases due to undetected block failures
Solution Approach 1:
The patent performs preliminary health checks by reading portions of blocks after program/erase cycles to detect errors before they lead to data loss. By proactively monitoring block health and detecting degradation early, the system can adjust code rates or migrate data before catastrophic failures occur, preventing information loss while maintaining manageable complexity through scheduled monitoring.
Data Source
AI summary
A method includes determining a portion of a block of a storage device to read after programming, and reading the portion of the block and determining a maximum error count for the portion of the block. The maximum error count is compared to a threshold. When the maximum error count exceeds the threshold, a code rate of an error correction coding used to program the block is adjusted, or a code rate test is performed on the entire block.


