Non-Volatile Memory Controller Data Rearrangement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current non-volatile memory control technologies face inefficiencies in data rearrangement and garbage collection due to the complex management of logical-to-physical mapping tables, leading to resource-intensive operations and reduced performance in flash memory storage devices.
Innovation Solution
A controller is implemented to dynamically select and rearrange data from blocks with excessive logical group amounts, transferring data to a destination block while updating sub-tables, thereby reducing the logical group count and optimizing storage efficiency through background data rearrangement and dynamic threshold adjustments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data rearrangement is performed to reduce logical group amount in source blocks, then garbage collection efficiency is improved, but device complexity increases due to additional controller operations
Solution Approach 1:
The controller performs data rearrangement operations in advance during background tasks, identifying source blocks with excessive logical group amounts and proactively redistributing data before garbage collection is needed. This preliminary action reduces the workload during actual garbage collection operations, improving overall efficiency without requiring complex real-time decision-making during critical operations.
Solution Approach 2:
The system implements self-service mechanisms where the controller automatically monitors logical group amounts in each block and autonomously initiates data rearrangement when thresholds are exceeded. This self-monitoring and self-correction capability reduces the need for external intervention and simplifies the overall control architecture by making the system self-regulating.
2Stability of the object's composition
If logical group amount threshold is set low, then data distribution uniformity is improved, but write performance deteriorates due to frequent rearrangement operations
Solution Approach 1:
The controller dynamically adjusts the logical group amount threshold based on system conditions, workload characteristics, and block usage patterns. Rather than using a fixed low threshold that would trigger frequent rearrangements, the threshold is adaptively modified to balance data distribution uniformity with write performance, allowing higher thresholds during heavy write periods and lower thresholds when the system is idle.
Solution Approach 2:
The data rearrangement system transitions from a static threshold-based approach to a dynamic adaptive mechanism. The controller continuously evaluates block states and adjusts rearrangement triggers in real-time, making the system responsive to changing conditions. This dynamic behavior allows the system to maintain good data distribution while avoiding excessive rearrangement operations that would degrade write performance.
3Productivity
If data is collected from multiple blocks to destination block, then data rearrangement effectiveness is improved, but resource consumption increases
Solution Approach 1:
The controller merges multiple data collection operations into consolidated batches, combining data from multiple source blocks into single destination block operations when possible. This merging reduces the total number of separate read-modify-write cycles required, thereby improving rearrangement effectiveness while minimizing the cumulative resource consumption associated with individual operations.
Solution Approach 2:
The system maintains continuous background data rearrangement operations that continuously collect and redistribute data across blocks. Rather than performing discrete, interruptive rearrangement operations, the continuous action ensures data is gradually balanced across the storage medium, improving overall effectiveness while distributing resource consumption evenly over time rather than concentrating it in intensive bursts.
Data Source
AI summary
An efficient control technology for non-volatile memory is shown. A controller selects the main source block from the non-volatile memory, wherein the main source block has a logical group amount exceeding a threshold amount. The controller selects a target logical group from the main source block, and collects data of the target logical group to a destination block provided by the non-volatile memory to reduce the logical group amount of the main source block.


