Nonvolatile Memory Zone Management for Garbage Collection Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing memory systems face challenges in efficiently performing garbage collection, leading to deterioration of write amplification (WAF) and quality of service (QoS) due to overlapping host device access and garbage collection processes.
Innovation Solution
The memory system provides the host device with a list of recommended zones for garbage collection, allowing the host device to determine valid data for rewriting based on this information, thereby reducing the need for garbage collection within the memory system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of substance
If the memory system performs garbage collection to remove invalid data, then storage efficiency is improved, but write amplification deteriorates
Solution Approach 1:
The memory system performs preliminary actions by proactively identifying and preparing garbage collection tasks before storage efficiency deteriorates significantly. The controller monitors storage status and initiates garbage collection in advance, organizing valid data relocation operations beforehand to minimize write amplification when actual cleanup occurs.
Solution Approach 2:
The garbage collection process is segmented into manageable tasks. The memory system divides the storage space into zones or blocks, performs garbage collection on specific segments independently, and manages valid data relocation in smaller batches rather than attempting to clean the entire storage space at once, thereby reducing overall write amplification.
2Loss of substance
If the memory system performs garbage collection to remove invalid data, then storage efficiency is improved, but quality of service deteriorates due to overlapping host device access and garbage collection
Solution Approach 1:
The memory system performs preliminary actions by pre-identifying garbage collection candidates and preparing relocation operations before host device access patterns change. This allows the system to anticipate storage needs and execute garbage collection during low-activity periods, reducing overlap with host access operations.
Solution Approach 2:
The memory system implements feedback mechanisms where the controller continuously monitors storage status, host access patterns, and garbage collection progress. Based on this feedback, the system dynamically adjusts garbage collection timing and scope to avoid overlapping with critical host access operations, thereby maintaining quality of service.
3Loss of substance
If the memory system manages garbage collection internally, then storage efficiency is improved, but device complexity increases
Solution Approach 1:
The memory system implements self-service by enabling the host device to participate in garbage collection management. The host device receives information about valid data locations and storage status from the memory system, and autonomously manages garbage collection operations. This distributes the complexity burden from the memory system to the host device, reducing internal management complexity.
Solution Approach 2:
The memory system acts as an intermediary by providing simplified information interfaces between the host device and the complex garbage collection process. The controller translates complex storage status into manageable information formats (such as valid data location maps), enabling the host device to participate in garbage collection without needing to understand the underlying complexity.
Data Source
AI summary
According to one embodiment, a controller of the memory system manages a plurality of zones using first information indicating (i) a correspondence between the zones and storage areas of a nonvolatile memory and (ii) a status of each of the zones. The status includes a first status indicating that data is written over an entire logical address range corresponding to a zone and a second status indicating that a zone is reset. In response to receiving a first command from a host device, the controller transmits to the host device a first list including information indicating a zone which is to be garbage collected. The zone is determined based on the first information.


