Storage Device TRIM Path Selection for Faster Data Invalidation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory devices face inefficiencies in processing TRIM commands due to unnecessary tasks like garbage collection on blocks containing deleted data, as they cannot accurately determine invalid data, leading to delayed response times.
Innovation Solution
A storage device with a host interface that determines a trim path by comparing a trim range threshold value with the TRIM command, using a trim manage module to generate status data and a processor to process the command based on this path, optimizing data detection methods through range or single logical page number paths.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the storage device processes all TRIM commands using a comprehensive search method, then data invalidation accuracy is improved, but response speed deteriorates
Solution Approach 1:
The patent segments the TRIM command processing into two distinct paths: a fast path for small trim ranges and a comprehensive path for large trim ranges. The host interface compares the trim range size against a threshold to determine which path to use, enabling differentiated processing that optimizes both speed and accuracy for different scenarios.
Solution Approach 2:
The patent implements dynamic processing by adjusting the TRIM command handling strategy based on real-time conditions. The trim range threshold comparison enables the system to dynamically select between processing modes, making the response adaptive to the specific trim range size rather than using a fixed approach.
2Reliability
If the storage device performs comprehensive data detection for TRIM commands, then data invalidation completeness is improved, but processing time increases
Solution Approach 1:
The patent applies partial action by performing only the necessary data detection based on trim range size. For small trim ranges, a simplified detection method is used that performs partial validation, while for large trim ranges, comprehensive detection is executed. This prevents excessive processing for small ranges while ensuring completeness when needed.
Solution Approach 2:
The patent changes the processing parameters dynamically based on the trim range size. By comparing the trim range against a threshold parameter, the system adjusts detection depth and processing intensity, transforming a static comprehensive approach into a variable parameter system that adapts to input characteristics.
3Speed
If the storage device uses a simplified data detection method, then response speed is improved, but data invalidation accuracy deteriorates
Solution Approach 1:
The patent segments the processing into accuracy-focused and speed-focused paths based on trim range size. The segmentation criterion (threshold comparison) automatically routes appropriate complexity levels to different scenarios, ensuring simplified processing for small ranges where accuracy requirements are lower and comprehensive processing for large ranges where accuracy is critical.
Solution Approach 2:
The system dynamically adjusts detection accuracy based on the trim range size. Rather than using a fixed accuracy level, the processing depth changes dynamically - shallow detection for small ranges and deep detection for large ranges - optimizing the balance between speed and accuracy for each specific case.
Data Source
AI summary
A storage device may include a plurality of non-volatile memories, a host interface configured to receive at least one packet including a TRIM command from a host device, and the host interface configured to determine a trim path for processing the TRIM command by comparing a first trim range threshold value and a trim range of the TRIM command, a trim manage module configured to generate status data by monitoring the at least one packet, the trim manage module configure to determine the first trim range threshold value based on the status data, and a processor configured to process the TRIM command based on the trim path.


