Block Address Entropy Tracking for SSD Garbage Collection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Garbage collection in SSDs is resource-intensive due to the need to read and rewrite valid data from non-volatile memory, which can be slowed by the mismatch between write and erase granularities, and limited RAM cache sizes that reduce performance by requiring frequent retrieval of mapping table pieces.
Innovation Solution
Implementing a system that tracks block address entropy to estimate the number of mapping table reads required for garbage collection, allowing for more efficient selection of source blocks and data routing by using block-level data structures and counters to determine the number of mapping table pieces needed for each block.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If garbage collection is performed in foreground with frequent mapping table retrieval from non-volatile memory, then data validity can be checked, but SSD performance decreases due to time-consuming retrieval operations
Solution Approach 1:
The system pre-calculates and stores block address entropy values for all blocks before garbage collection begins. This preliminary action allows the garbage collection process to quickly identify suitable source blocks without performing time-consuming mapping table retrievals during the actual garbage collection operation, thus maintaining both data validity accuracy and SSD performance
2Quantity of substance
If RAM cache size is reduced, then device cost decreases, but garbage collection performance decreases due to insufficient mapping table caching
Solution Approach 1:
The invention changes the parameter being optimized from RAM cache size to block address entropy calculation. By using entropy-based block selection criteria, the system can achieve efficient garbage collection with smaller RAM cache sizes, as the entropy pre-calculation compensates for the reduced ability to cache mapping table pieces
3Productivity
If block address entropy tracking is implemented, then source block selection efficiency improves, but device complexity increases due to additional data structures and counters
Solution Approach 1:
The system segments the large mapping table into smaller pieces and tracks which pieces are needed for each block using entropy counters. This segmentation approach allows efficient block selection by focusing on blocks that require fewer mapping table pieces, while the modular counter structure keeps the complexity manageable through systematic organization
Data Source
AI summary
A system and method is disclosed for tracking block mapping overhead in a non-volatile memory. The system may include a non-volatile memory having multiple memory blocks and a processor configured to track a block level mapping overhead for closed blocks of the multiple memory blocks. The processor may be configured to track predetermined logical address ranges within which data written to a block fall, and then store the sum of the number of different logical address ranges for each respective block as a block address entropy metric. The method may include the processor using the block address entropy metric to select source blocks for garbage collection with a lower block address entropy metric or to adjust other operational characteristics such as data routing within the non-volatile memory system based on average block address entropy for a group of blocks.


