SSD Garbage Collection via Spatially Coupled Journals
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional SSD management systems, particularly in block-based storage environments, face inefficiencies due to the lack of flexibility and customizability in garbage collection processes, which can lead to performance degradation and reduced drive longevity.
Innovation Solution
Decoupling SSD management features from the built-in controller and implementing an external controller that uses indirection mapping, spatially coupled journaling, and a garbage collector to efficiently manage logical and physical block addresses, allowing for improved data relocation and erasure processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional garbage collection is performed by reading an entire block to determine valid data, then data validity can be accurately identified, but drive performance degrades due to increased read and write operations
Solution Approach 1:
The patent segments the block management process by introducing a journal that separately tracks valid data locations. Instead of reading the entire block to determine validity, the system divides the tracking function into: (1) the main data blocks and (2) a separate journal structure that records LBA-to-PBA mappings. This segmentation allows the garbage collector to query the journal for validity information without reading user data blocks, thereby maintaining accuracy while improving performance.
Solution Approach 2:
The patent introduces a journal as an intermediary data structure that mediates between the host system and the physical blocks. The journal acts as a lookup table that stores the current valid PBA for each LBA, allowing the garbage collection process to determine data validity through simple journal queries rather than exhaustive block reads. This intermediary mechanism resolves the contradiction by providing accurate validity information with minimal read overhead.
2Reliability
If traditional garbage collection reads entire blocks to identify valid data, then complete data assessment is achieved, but write amplification increases reducing drive longevity
Solution Approach 1:
The system segments the garbage collection workflow into two distinct phases: (1) journal querying to identify valid data locations, and (2) selective data relocation. The journal contains only the necessary validity information (LBA-PBA mappings), allowing the system to assess data completeness without reading entire blocks. This reduces unnecessary read operations and the subsequent write amplification, thereby extending drive longevity while maintaining reliable data assessment.
Solution Approach 2:
Instead of performing excessive actions by reading entire blocks, the patent applies partial action by reading only the minimal necessary information from the journal to determine validity. The journal stores condensed validity metadata that enables the garbage collector to identify relocatable data with far fewer read operations than traditional methods, thus reducing write amplification and preserving drive lifespan.
3Ease of manufacture
If built-in SSD controller is used for garbage collection, then standard management is provided, but flexibility and customizability are insufficient
Solution Approach 1:
The patent extracts the journaling and indirection mapping functions from the built-in SSD controller and implements them as a separate software layer or external controller. This extraction allows the core SSD to maintain its standard, simple controller while enabling flexible, customizable garbage collection strategies through software. Users can implement different garbage collection algorithms, priorities, and policies without modifying the hardware controller, thereby achieving both standard management and high adaptability.
Solution Approach 2:
The patent introduces dynamic configurability to the garbage collection process by implementing it as software rather than fixed hardware logic. The journal structure and indirection mapping allow runtime adjustments to garbage collection parameters, policies, and algorithms. This dynamic approach enables the system to adapt to different workloads and user requirements while maintaining the simplicity of the built-in controller, resolving the contradiction between standardization and flexibility.
Data Source
AI summary
In a solid state drive, a journal may be associated with a cluster block, such that the journal stores updates to an indirection mapping data structure for that cluster block. The journals may be stored on the cluster block. During garbage collection these spatially coupled journals can be retrieved and used to determine the data written to each media location within the cluster block. Logical and physical address information can be determined from the journal content, and used to compare against the current mapping in the indirection mapping data structure, to determine the validity of each media location. Since the journals are physical media aware, this comparison can occur without the consultation of a bad block tracking structure. When a physical media address is deemed to hold valid data it will be relocated as part of garbage collection processing.


