Memory Controller Blocklist for Garbage Collection Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current memory systems face inefficiencies in data processing and performance degradation due to complex operational procedures, particularly in determining target blocks for garbage collection, which slows down the identification and selection of blocks with unnecessary or invalid data.
Innovation Solution
A memory system that generates a blocklist with valid page counts for target blocks, updates map data, compares previous and updated valid page counts, and erases invalid data based on the comparison, thereby simplifying the control method for garbage collection and reducing the time required to search for blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If complex operational procedures are used to determine target blocks for garbage collection, then measurement precision of invalid data identification is improved, but loss of time increases
Solution Approach 1:
The patent applies preliminary action by pre-calculating and storing valid page counts for each block in a blocklist before garbage collection operations. This allows the system to quickly identify candidate blocks for garbage collection by simply comparing stored counts with current state, rather than performing complex analysis during the collection process itself, thus reducing the time loss while maintaining identification accuracy.
Solution Approach 2:
The patent creates a copy of block status information (valid page counts) in a separate blocklist structure. This copied data structure serves as a reference for quickly identifying blocks needing garbage collection, eliminating the need to repeatedly access and analyze the main memory structure, thereby reducing search time while preserving measurement precision.
2Measurement precision
If complex operational procedures are used to determine target blocks for garbage collection, then measurement precision of invalid data identification is improved, but device complexity increases
Solution Approach 1:
The patent segments the garbage collection control process into distinct components: a blocklist for storing valid page counts, a comparison mechanism for identifying candidate blocks, and a separate execution phase for garbage collection. This segmentation simplifies the overall device complexity by breaking down the complex operational procedures into manageable, independent modules while maintaining precise identification of invalid data.
Solution Approach 2:
The patent introduces a blocklist as an intermediary data structure that mediates between the raw memory block information and the garbage collection decision-making process. This intermediary stores pre-computed valid page counts, simplifying the control procedure by providing ready-to-use information for block selection without requiring complex real-time analysis.
3Reliability
If traditional garbage collection methods are used, then reliability of data processing is maintained, but productivity decreases
Solution Approach 1:
The patent applies preliminary action by pre-identifying and marking candidate blocks for garbage collection using the blocklist with valid page counts. This allows the actual garbage collection process to proceed quickly through already-identified candidates, improving productivity while maintaining reliability through the systematic comparison of stored counts with current block states.
Solution Approach 2:
The blocklist structure enables self-service by automatically tracking valid page counts and identifying candidate blocks without requiring external intervention or complex control logic. The system serves itself by maintaining up-to-date information about block validity, allowing rapid garbage collection execution while preserving data processing reliability through consistent state tracking.
Data Source
AI summary
A memory system includes a memory device including plural blocks, each capable of storing data, and a controller coupled with the memory device. The controller can generate a blocklist including a valid page count for at least one target block among the plural blocks before updating a map data, update the map data and the valid page count of the at least one target block, compare the previous valid page count stored in the blocklist with the updated valid page count, and erase invalid map data of the at least one target block according to a comparison result.


