Memory Garbage Collection Overlapping Read and Program Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing garbage collection process in memory systems is serial in nature, leading to inefficiencies in processing speed as only one set of valid data is read or programmed at a time, and idle target die groups are not fully utilized.
Innovation Solution
The proposed solution involves a method where a current valid data set is programmed from a cache to a target die group while overlapping with the time period in which a next valid data set is read from a virtual block to a copy buffer, allowing for parallel processing and improved efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If serial processing is used for garbage collection (reading and programming one valid data set at a time), then the system is simple to implement, but the processing speed is slow and target die groups are not fully utilized
Solution Approach 1:
The patent implements continuous useful action by overlapping the programming operation of the current valid data set with the reading operation of the next valid data set. Specifically, while the controller programs the current valid data set from cache to the target die group, it simultaneously reads the next valid data set from the virtual block to the copy buffer. This parallel execution eliminates idle time and maintains continuous productive operations, thereby improving garbage collection processing speed without requiring additional hardware resources
Solution Approach 2:
The patent transitions from one-dimensional sequential processing to two-dimensional parallel processing by introducing a time overlap dimension. The processing flow is reorganized so that reading and programming operations occur in different time phases simultaneously. The controller manages multiple operation streams: reading current valid data sets to cache, programming them to target die groups, and reading next valid data sets to copy buffer in an interleaved manner, effectively utilizing the time dimension to improve throughput
2Productivity
If parallel processing is implemented to improve processing speed, then productivity increases, but the system complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the garbage collection process into distinct operational phases and assigning them to different buffer structures. Valid data sets are segmented into those being programmed (in cache) and those being read (in copy buffer). The controller segments the processing workflow into overlapping time periods, managing each segment independently. This segmentation allows parallel operations while maintaining clear control logic and minimizing controller complexity through structured data flow management
Data Source
AI summary
Embodiments of the present disclosure provide a memory system, and a method for garbage collection of the memory system. The method can include reading N valid data sets in a to-be-collected virtual block (VB) of a memory out to a copy buffer sequentially, where N is an integer greater than or equal to 2, transferring a valid data set in the copy buffer to a corresponding cache, and reading a next valid data set out to the copy buffer, and programming the valid data set in the cache to a corresponding target die group of a target VB. A time period in which a current valid data set is programmed from the cache to the target die group corresponding to the cache overlaps at least partially with a time period in which a next valid data set is read from the to-be-collected VB to the copy buffer.


