Storage Device Command Fetching for Complete Fused Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory-based storage devices face issues with delayed or incomplete execution of fused operations due to non-continuous fetching of commands, leading to increased complexity and the need for additional buffers and scheduling, which affects performance and costs.
Innovation Solution
The storage device method involves fetching and processing commands in an atomic unit, including selectively discarding and re-fetching fused commands to ensure simultaneous fetching, thereby eliminating the need for additional buffers and scheduling, thus simplifying hardware and improving performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If commands are fetched continuously from submission queues, then command processing efficiency is improved, but fused operations may be delayed or incomplete when commands are not continuously fetched
Solution Approach 1:
The storage device performs preliminary detection of fused commands in the fetched command set before processing. When a fused command is detected, the system proactively determines whether to fetch additional commands to complete the fused operation, ensuring the second command is available before execution begins. This preliminary action prevents fusion operation delays while maintaining continuous fetching efficiency.
2Reliability
If additional buffers and scheduling mechanisms are added to handle fused operations, then fused operation reliability is improved, but device complexity increases
Solution Approach 1:
The storage device uses its existing command fetching and processing infrastructure to self-identify and handle fused operations. The system detects fused commands within the normally fetched command set, determines the need for additional fetching, and completes the operation using existing resources. This self-service approach eliminates the need for separate buffers or complex scheduling mechanisms, maintaining reliability while avoiding increased device complexity.
3Speed
If the storage device fetches and processes commands in atomic units without selective re-fetching, then processing speed is improved, but fused operations cannot be completed atomically
Solution Approach 1:
The storage device dynamically adjusts its command fetching behavior based on the content of fetched commands. When a fused command is detected, the system flexibly determines whether to fetch additional commands to complete the fusion operation, allowing the fetching quantity to vary dynamically. This dynamic approach ensures atomic completeness of fused operations while maintaining high processing speed through adaptive rather than rigid fetching patterns.
Data Source
AI summary
An operation method of a storage device connected to a host may include fetching one or more first commands from a first submission queue of the host by performing a first command fetch operation, processing one or more remaining commands other than the last command of the one or more first commands when a last command among the one or more first is a first fused commands, fetching one or more second commands from a second submission queue of the host by performing a second command fetch operation, processing the one or more second commands, and fetching at least two third commands from the first submission queue of the host by performing a third command fetch operation. The at least two third commands may include the first fused command and a second fused command corresponding to the first fused command.


