Memory Controller Free-Block Preparation for Sustained Write Speed
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage apparatuses face challenges in maintaining high write performance due to the limited availability of high-speed program regions, which are quickly filled, necessitating a method to ensure continuous allocation of these regions for efficient data processing.
Innovation Solution
A memory controller manages a storage medium with separate high-speed and high-density memory regions, employing a background operation to convert open blocks in the high-density region to free blocks, ensuring the availability of high-speed regions for write requests by reallocating data during idle times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If a programming method that primarily programs data in a high-speed program region and then programs the primarily programmed data in a high-density program region is used, then write performance is enhanced, but the high-speed program region is quickly filled and becomes unavailable for subsequent write requests
Solution Approach 1:
The system performs background operations during idle periods to proactively generate free blocks in the high-speed program region before write requests arrive. The background operation manager identifies victim blocks and relocates their data to the high-density program region, thereby preparing the high-speed region for future write operations without waiting for it to be filled during active write requests
Solution Approach 2:
The patent implements continuous background operations that run during idle periods to maintain the availability of the high-speed program region. By continuously performing garbage collection and block relocation operations, the system ensures that the high-speed region remains ready for write requests without interruption, transforming a periodic maintenance approach into a continuous availability guarantee
2Quantity of substance
If background operations are performed to generate free blocks, then the availability of high-speed program region is improved, but the complexity of managing multiple memory regions and blocks increases
Solution Approach 1:
The storage medium is divided into distinct memory regions (high-speed program region and high-density program region) with specific functions. The background operation manager operates independently within this segmented structure, managing victim blocks and relocating data between regions without interfering with active write operations. This segmentation isolates the complexity of background management from the simplicity of foreground write operations
Solution Approach 2:
The background operation manager acts as an intermediary component that coordinates between the high-speed program region and high-density program region. It monitors the state of both regions, identifies when relocation operations are needed, and executes data movement to maintain optimal block distribution. This intermediary role simplifies the overall system by centralizing the complexity management function
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
A memory controller controls a storage medium including a first memory region and a second memory region, each of which has a plurality of memory blocks. The memory controller is configured to close an open block in the second memory region when a background operation is performed. The memory controller is configured to move data of at least one victim block of the first memory region and the second memory region, and erase the at least one victim block to generate at least one free block.