Memory Controller Garbage Collection Policy for Flash Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Garbage collection in flash memory devices leads to accumulation of invalid pages, reducing usable storage space and slowing down operations, as existing techniques do not effectively manage the reclaiming of storage space occupied by invalid data.
Innovation Solution
A memory controller with a garbage collection management unit that executes a policy selecting memory blocks for garbage collection based on different criteria for user data and metadata blocks, considering garbage collection costs and valid data characteristics, such as the number of valid pages and data patterns, to determine if data can be erased without copying, optimizing the process for each type of data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If garbage collection is performed on all memory blocks with invalid pages, then storage space is reclaimed, but operation speed decreases due to unnecessary copying of valid data
Solution Approach 1:
The patent applies different garbage collection criteria to different types of memory blocks based on their data characteristics. User data blocks and metadata blocks are evaluated using different standards, allowing the system to optimize GC operations for each block type rather than applying a uniform approach to all blocks.
Solution Approach 2:
The patent changes the evaluation parameters for garbage collection based on the type of data stored in memory blocks. By considering data patterns and validity characteristics specific to user data versus metadata, the system adjusts which blocks are selected for GC, avoiding unnecessary operations on blocks where valid data can be efficiently handled in-place.
2Quantity of substance
If garbage collection selects blocks with most invalid pages, then storage space reclamation is maximized, but time consumption increases due to copying large amounts of valid data
Solution Approach 1:
The patent evaluates memory blocks using type-specific criteria: user data blocks are assessed based on their invalid page ratio, while metadata blocks are assessed based on whether their valid data can be erased without copying. This localized evaluation approach identifies GC candidates more efficiently.
Solution Approach 2:
The patent performs preliminary assessment of memory blocks to determine their GC suitability before initiating the actual garbage collection process. By pre-evaluating blocks based on their data characteristics and GC costs, the system avoids selecting blocks that would require excessive copying time.
3Device complexity
If uniform garbage collection criteria are applied to all memory blocks, then implementation is simple, but efficiency decreases due to inability to account for different data characteristics
Solution Approach 1:
The patent segments the memory space into different block groups (user data blocks and metadata blocks) and applies tailored garbage collection criteria to each segment. This segmentation allows the system to handle different data types with appropriate strategies, improving overall GC efficiency.
Solution Approach 2:
The patent implements dynamic garbage collection criteria that adapt to the specific characteristics of each memory block type. The GC policy is not static but adjusts its evaluation parameters based on whether the block contains user data or metadata, optimizing performance for each data type.
Data Source
AI summary
A memory controller is for controlling operations of a nonvolatile memory including a first memory block group for storing a first type of data and a second memory block group for storing a second type of data. The memory controller includes a garbage collection management unit configured to execute a garbage collection policy in which a first garbage collection criteria is applied to the first memory block group, and a second garbage collection criteria is applied to the second memory block group, where first garbage collection criteria is different than the second garbage collection criteria.


