Storage Controller Read Reclaim for Hot Data Reliability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current storage devices face challenges in improving read reliability and performance due to differences in bit density between various memory blocks, leading to varying read speeds and data reliability across different memory types.
Innovation Solution
A storage device with a non-volatile memory system that includes a storage controller capable of identifying 'read hot' data in high-error blocks and transferring it to lower-bit-density blocks for improved reliability, utilizing a read reclaim operation to move data from source blocks to target blocks with higher reliability, thereby enhancing overall read performance and reliability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is stored in high-bit-density blocks (e.g., MLC, TLC, QLC), then storage capacity is improved, but read reliability deteriorates due to higher error rates
Solution Approach 1:
The storage device is segmented into multiple types of memory blocks with different bit densities (SLC, MLC, TLC, QLC). Each block type is used for specific data categories: hot data goes to SLC blocks, cold data goes to high-capacity blocks (MLC/TLC/QLC). This segmentation allows the system to simultaneously achieve high storage capacity and high read reliability by placing data in appropriate block types.
Solution Approach 2:
Different regions of the storage device are assigned different qualities based on their bit density characteristics. SLC blocks provide high reliability for frequently accessed data, while MLC/TLC/QLC blocks provide high capacity for less frequently accessed data. The read reclaim operation dynamically identifies and moves hot data from low-reliability blocks to high-reliability blocks based on local error rate conditions.
2Reliability
If read reclaim operation is performed on all blocks, then read reliability is improved, but device complexity increases
Solution Approach 1:
Instead of performing read reclaim operations on all blocks, the system applies partial action by targeting only specific blocks that meet error threshold conditions. The controller monitors error rates and initiates read reclaim operations only on blocks where errors exceed a threshold, thereby improving reliability while avoiding the excessive complexity of universal read reclaim implementation.
Solution Approach 2:
The read reclaim operation uses information already available during normal read operations (error bit counts from ECC corrections) to identify blocks needing data migration. The system self-identifies candidate blocks for read reclaim based on their error characteristics without requiring additional complex monitoring mechanisms.
3Reliability
If data is frequently moved between blocks, then read reliability is improved, but productivity decreases due to additional program operations
Solution Approach 1:
The read reclaim operation is implemented as a periodic background process rather than an immediate response to every error condition. The controller periodically selects candidate blocks based on error thresholds and performs data migration during idle or low-utilization periods. This periodic approach improves reliability through systematic data protection while minimizing the impact on write throughput by scheduling migrations strategically.
4Reliability
If error threshold is set low, then read reliability is improved, but loss of time increases due to more frequent data migration
Solution Approach 1:
The system dynamically adjusts the error threshold parameter based on block type and usage patterns. Different threshold values are applied to different block types (e.g., lower thresholds for QLC blocks, higher thresholds for SLC blocks). This parameter optimization allows the system to achieve appropriate reliability levels while minimizing unnecessary data migration operations that would consume time and reduce productivity.
Data Source
AI summary
Storage devices and an operating method of a storage controller configured to control storage devices. For example, the storage device may include a non-volatile memory and a storage controller. The non-volatile memory includes a first block and a second block, the first block including first memory cells each storing N-bit data, and the second block including second memory cells each storing M-bit data. During a read reclaim operation on the first block, the storage controller determines read hot data stored in the first block and writes the read hot data to the second block. The storage controller may select a first word line corresponding to a first page in which a number of error bits is equal to or greater than a threshold value and determine data stored in a page corresponding to a second word line adjacent to the first word line as the read hot data.


