Memory Controller Extended Free Block Garbage Collection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory systems experience performance degradation due to garbage collection operations, which are triggered unnecessarily even when a large portion of memory space is not used, leading to reduced throughput and unexpected performance issues.
Innovation Solution
A controller method that calculates the number of extended free blocks by combining substantive and pseudo free blocks, and only performs garbage collection when the total number of extended free blocks falls below a threshold, thereby avoiding unnecessary garbage collection operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If garbage collection is performed based on substantive free blocks only, then memory management simplicity is improved, but performance degradation occurs due to unnecessary garbage collection operations
Solution Approach 1:
The patent changes the parameter used for garbage collection triggering from only substantive free blocks to extended free blocks, which combines both substantive free blocks and pseudo free blocks. This parameter change allows the system to consider blocks with fewer valid pages (pseudo free blocks) alongside completely empty blocks (substantive free blocks), thereby reducing unnecessary garbage collection operations while maintaining manageable complexity.
2Quantity of substance
If garbage collection is performed frequently to maintain free blocks, then memory availability is improved, but performance degradation occurs due to excessive garbage collection operations
Solution Approach 1:
The patent applies partial action by introducing pseudo free blocks as an intermediate category between substantive free blocks and dirty blocks. Instead of performing garbage collection on all blocks that aren't fully occupied, the system only triggers garbage collection when extended free blocks (substantive + pseudo) fall below the threshold. This partial approach prevents excessive garbage collection operations while still maintaining adequate memory availability.
3Productivity
If the garbage collection threshold is set low to reduce operations, then performance is improved, but memory availability may be compromised
Solution Approach 1:
The patent segments the memory block population into three categories: dirty blocks (many valid pages), pseudo free blocks (few valid pages), and substantive free blocks (no valid pages). By segmenting in this way and creating the combined metric of extended free blocks, the system can set a more appropriate threshold that reflects actual memory availability needs while reducing unnecessary garbage collection operations, thus improving performance without compromising memory availability.
Data Source
AI summary
Provided is an operation method of a controller which controls a memory device including a plurality of memory blocks. The operation method may include calculating a number of extended free blocks in the memory device based on valid page counts of the respective memory blocks, when a number of substantive free blocks in the memory device is less than a first threshold value, and performing a garbage collection operation when the number of extended free blocks is less than a second threshold value.


