Retention-Aware Block Mapping in Flash SSDs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing SSD systems fail to account for variations in retention capability among different flash blocks, leading to inefficient data storage and potential data loss due to mismatched retention times and update frequencies.
Innovation Solution
The system profiles storage blocks to determine their retention capability and assigns them labels based on retention times, forming superblocks with similar retention capabilities, allowing for dynamic updating and optimal data placement based on expected update times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data writes are assigned to blocks irrespective of retention capability variation, then write speed and simplicity are improved, but data reliability and storage efficiency deteriorate due to mismatched retention times and update frequencies
Solution Approach 1:
The patent applies local quality by assigning different retention characteristics to different superblocks based on their constituent blocks' retention capabilities. Each superblock is characterized by a specific retention time range, and data is placed in superblocks matching its retention requirements. This allows the system to optimize both write performance and data reliability by matching data placement to local retention properties rather than treating all blocks uniformly.
Solution Approach 2:
The patent changes the parameter of block organization from uniform grouping to retention-based grouping. By profiling blocks and assigning retention labels, then organizing them into superblocks with specific retention time ranges, the system transforms the static block structure into a dynamic, retention-aware structure. This parameter change enables the system to simultaneously achieve high write speed through efficient placement and high reliability through matched retention characteristics.
2Device complexity
If all flash blocks are treated uniformly without retention profiling, then device complexity is reduced, but storage efficiency deteriorates due to inability to optimize data placement based on retention requirements
Solution Approach 1:
The patent applies preliminary action by performing retention profiling and superblock formation during initialization and idle periods, before actual data storage operations begin. The controller pre-characterizes each block's retention capability, assigns retention labels, and organizes them into superblocks with defined retention time ranges. This preliminary organization enables efficient, retention-aware data placement during normal operation without adding significant complexity to the data path, thereby improving storage efficiency while maintaining manageable device complexity.
3Ease of manufacture
If superblocks are formed without considering retention capability matching, then formation process is simplified, but data loss risk increases due to retention capability variations within superblocks
Solution Approach 1:
The patent applies local quality by ensuring that each superblock contains blocks with homogeneous retention characteristics. Rather than forming superblocks with uniformly distributed blocks, the system groups blocks with similar retention capabilities together, creating localized regions of consistent retention behavior. This homogeneous grouping within superblocks minimizes retention capability variations while maintaining a relatively simple superblock formation process, thereby improving data retention reliability without excessive complexity.
Data Source
AI summary
Techniques for profiling storage blocks in non-transitory memory (e.g., flash memory dies) to determine their retention capability, and assigning them with labels based on retention, are described. A superblock (SB) can be formed from physical blocks with the same labels located in different dies. The disclosed system and methods improve storage efficiency when the update frequency of stored data is non-uniform, as is typically the case. Moreover, the disclosed embodiments improve the reliability of solid state drives (SSDs), as well as reduce data refresh frequency and write amplification due to periodic refresh. A storage system can comprise a controller configured to obtain expected retention times for a plurality of storage blocks. The controller can partition the blocks into superblocks based on the retention times. A respective superblock is associated with a superblock retention time range, and contains blocks having expected retention times within the retention time range.


