Storage Controller Dynamic Memory Area Selection for Write Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage devices face performance degradation and lifetime reduction due to unnecessary garbage collection, which is triggered by inefficient data writing operations.
Innovation Solution
The storage device employs a dual-memory approach, utilizing both high-speed SLC memory blocks and lower-speed TLC memory blocks, and dynamically determines the write throughput based on received write commands. Data is written to either the high-speed memory area when the throughput exceeds a set threshold or to the lower-speed memory area when it falls below the threshold.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is written to high-speed memory blocks, then write speed is improved, but garbage collection frequency increases causing performance degradation and lifetime reduction
Solution Approach 1:
The system dynamically switches between high-speed and low-speed memory areas based on real-time throughput conditions. The controller monitors write throughput and adjusts the memory area selection accordingly, transitioning from high-speed memory during high-throughput periods to low-speed memory during low-throughput periods to prevent unnecessary garbage collection and maintain system reliability.
Solution Approach 2:
The system changes the operational parameter of memory area selection based on throughput threshold conditions. When throughput exceeds the threshold, high-speed memory is activated; when throughput falls below the threshold, low-speed memory is activated. This parameter change prevents unnecessary garbage collection operations and extends memory lifetime while maintaining optimal performance.
2Reliability
If garbage collection is performed frequently to maintain performance, then data integrity is improved, but resource consumption increases and lifetime is reduced
Solution Approach 1:
The system extracts and separates data writing operations into two distinct memory areas with different performance characteristics. By taking out the data writing function and dividing it based on throughput conditions, the system avoids unnecessary garbage collection in low-throughput scenarios, thereby reducing resource consumption while maintaining data integrity through selective high-speed memory usage when needed.
3Device complexity
If a single memory type is used, then device complexity is reduced, but performance optimization is limited
Solution Approach 1:
The system segments the memory into two distinct areas: a high-speed memory area and a low-speed memory area. This segmentation allows the system to optimize write throughput by selecting the appropriate memory area based on throughput conditions, achieving better performance without requiring a completely complex memory architecture.
Solution Approach 2:
The memory system provides multi-functionality by supporting both high-speed and low-speed memory areas within a single unified memory structure. This universal design allows the system to adapt to different throughput conditions while maintaining a relatively simple overall device architecture, balancing complexity and performance optimization.
Data Source
AI summary
A storage device may determine write throughput based on a plurality of write commands received from the outside of the storage device, and write target data write-requested from the outside to a first memory area including one or more of a plurality of first type memory blocks or a second memory area including one or more of a second type memory blocks according to whether the write throughput is greater than or equal to a threshold throughput. The first type memory blocks may operate at a higher speed than the second type memory blocks.


