Data Storage Command Segmentation for Latency Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data storage devices experience performance degradation due to unnecessary delays in processing commands with varying data processing sizes, leading to deteriorated service quality and overall performance, as larger commands can prolong processing times, delaying smaller commands.
Innovation Solution
A data storage device divides commands with data processing sizes greater than a reference size into sub-commands, allowing for out-of-order processing of other commands between sub-command processing, using a processor and non-volatile memory with a controller supporting protocol for this functionality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If commands are processed in the order they are received, then command processing order is maintained, but processing time increases for small commands due to large commands being processed first
Solution Approach 1:
The patent divides a large command with data processing size greater than reference size into multiple sub-commands. This segmentation allows the processing system to interleave processing of small commands between sub-commands, reducing the waiting time for small commands while maintaining overall processing order. The first sub-command is stored in a first queue, remaining sub-commands in a second queue, enabling efficient scheduling.
Solution Approach 2:
The patent implements dynamic command processing by allowing the processor to flexibly switch between processing sub-commands and new commands based on current system state. When a small command arrives during sub-command processing, the system can dynamically adjust the processing sequence to handle the small command first, then resume sub-command processing, optimizing real-time performance.
2Productivity
If large commands are processed first, then large data processing is completed, but small commands experience unnecessary delays
Solution Approach 1:
By segmenting large commands into sub-commands, the system creates processing granules that can be interleaved with small command processing. This maintains high throughput for large data while reducing latency for small commands, as the processor can switch to small commands during sub-command execution gaps.
Solution Approach 2:
The patent ensures continuous processor utilization by preventing idle time. When small commands arrive during sub-command processing, the processor immediately switches to process them, then resumes sub-commands. This eliminates unnecessary delays and maintains continuous useful action, improving both throughput and responsiveness.
3Reliability
If commands with different data processing sizes are processed sequentially, then processing order is preserved, but service quality deteriorates due to latency differences
Solution Approach 1:
Segmenting large commands into sub-commands while preserving their logical order allows the system to maintain reliability (processing order) while improving service quality. The first sub-command maintains the original command's position, and remaining sub-commands are processed after associated small commands, achieving both goals.
Solution Approach 2:
The dynamic processing scheme allows flexible scheduling that adapts to incoming command patterns while maintaining overall order. The system can dynamically prioritize small commands during sub-command processing without violating the logical sequence of original commands, improving service quality while preserving reliability.
Data Source
AI summary
A data storage device includes a processor and a non-volatile memory. The processor compares a data processing size of a first command received from the host at a first time point with a reference size and divides the first command into a plurality of sub-commands when the data processing size is greater than the reference size. The data storage device further includes a memory that includes a first queue and a second queue.


