Storage Controller Garbage Collection Invalidation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage systems, garbage collection processes are inefficient due to the need to copy and validate data, even when data is no longer needed, leading to increased latency and unnecessary resource usage.
Innovation Solution
A storage device with a controller that maintains a mapping of logical addresses to physical blocks, allowing for the identification and invalidation of data prior to garbage collection, reducing the need to copy unnecessary data during the process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If garbage collection copies all valid data from target physical blocks, then data integrity is maintained, but garbage collection latency increases and processing efficiency decreases
Solution Approach 1:
The system performs preliminary invalidation of data before garbage collection by receiving a list of logical addresses from the host and invalidating corresponding data in physical blocks. This preliminary action removes unnecessary data prior to the actual garbage collection process, so that when garbage collection runs, there is less data to copy, thereby improving efficiency while maintaining integrity of remaining valid data.
Solution Approach 2:
The invention extracts and removes invalid data from physical blocks before garbage collection. By taking out the unnecessary invalid data through invalidation operations, the garbage collection process only needs to handle valid data, reducing the copying workload and improving overall garbage collection efficiency without compromising data integrity.
2Difficulty of detecting and measuring
If the storage device maintains a mapping of logical addresses to physical blocks, then data location tracking is improved, but device complexity increases
Solution Approach 1:
The mapping structure serves multiple functions: it tracks data locations for garbage collection, enables invalidation operations, and maintains the relationship between logical and physical addresses. By making the mapping system multi-functional, the invention improves data location tracking capability without proportionally increasing controller complexity, as the same mapping structure is reused for multiple purposes.
3Productivity
If the host sends a list of logical addresses for invalidation, then unnecessary data copying is reduced, but communication overhead increases
Solution Approach 1:
The host sends a list of logical addresses that may include more addresses than strictly necessary (excessive action), ensuring that all potentially valid data is marked for invalidation. This partial list approach allows the storage device to efficiently process only the relevant data without requiring complete scanning of all blocks, reducing garbage collection time while the communication overhead is minimized by sending only necessary address information.
Data Source
AI summary
A storage device includes a non-volatile semiconductor storage device including a plurality of physical blocks, and a controller. The controller is configured to maintain a mapping of logical addresses to locations within the physical blocks, send, to a host, a first list that contains logical addresses corresponding to one or more target physical block that are targeted for garbage collection, and then receive, from the host, a second list that contains one or more logical addresses in the first list, and invalidate data stored in the logical addresses in the second list prior to the garbage collection.


