Dual Processor Memory Controller for SSD Garbage Collection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In memory systems like SSDs with NAND flash memory, the process of garbage collection for reusing storage areas and refresh operations can increase the ratio of writing operations, leading to degraded short-term performance due to the mixing of data transfer for both purposes.
Innovation Solution
A memory system with a controller that includes separate processors for garbage collection and refresh operations, allowing independent execution of these processes to prevent overlapping block selection and optimize data transfer, thereby maintaining efficient free block creation and write performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If garbage collection and refresh operations are executed using a single processor with mixed data transfer, then device complexity is reduced, but write performance degrades due to operation overlap
Solution Approach 1:
The controller is divided into a first processor dedicated to garbage collection operations and a second processor dedicated to refresh operations. This segmentation allows both processors to execute their respective operations independently and simultaneously, preventing the performance degradation that occurs when operations are mixed in a single processor while maintaining reasonable device complexity.
2Quantity of substance
If garbage collection is executed for free block allocation, then free blocks are created for future writes, but the ratio of writing operations increases causing short-term performance degradation
Solution Approach 1:
By separating garbage collection operations into a dedicated first processor, the system can execute free block allocation independently from host write operations and refresh operations. This prevents the mixing of operations that causes performance degradation while still ensuring sufficient free blocks are available for future writes.
Solution Approach 2:
The garbage collection process proactively creates free blocks by transferring valid data before they are needed for future writes. By executing this preliminary action in a dedicated processor, the system prepares storage resources in advance without interfering with ongoing host write operations, thus maintaining short-term write performance.
3Reliability
If refresh operations are executed independently, then data reliability is maintained, but the ratio of writing operations increases
Solution Approach 1:
The controller is divided into a first processor for garbage collection and a second processor for refresh operations. This segmentation allows refresh operations to execute independently and simultaneously with garbage collection and host writes, maintaining data reliability through dedicated refresh execution while preventing performance degradation from operation mixing.
Data Source
AI summary
According to one embodiment, a memory system includes a nonvolatile memory and a controller. The nonvolatile memory includes a plurality of blocks. The controller controls an operation of writing data to the nonvolatile memory and an operation of reading data to the nonvolatile memory. The controller includes a first processor and a second processor. The first processor executes a first process of creating one or more free blocks by transferring valid data in N blocks (where N is a natural number greater than or equal to two) to blocks of number less than N. The second processor executes a second process of transferring valid data including data which needs refresh in M blocks (where M is a natural number greater than or equal to one) to blocks of number less than or equal to M.


