Storage Controller for Phased Command Completion Responses
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices using nonvolatile memory face challenges in efficiently managing multiple responses for a single command due to the limitations of traditional logical interface standards that only allow a single completion response.
Innovation Solution
Implementing a storage device with a controller that transmits multiple preceding responses for a first type command and a command completion response, allowing it to maintain and process secondary type commands in advance, thereby enhancing communication efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a logical interface standard allowing only one completion response per command is used, then the interface standard is simple and widely compatible, but multiple responses for one command cannot be transmitted
Solution Approach 1:
The patent segments the completion response into multiple independent phases: a first completion response transmitted immediately when the command is received, and a second completion response transmitted later when processing finishes. This segmentation allows multiple responses to be sent for a single command while maintaining the simplicity of the interface standard, as each response phase follows the existing single-response protocol independently.
Solution Approach 2:
The patent applies preliminary action by transmitting the first completion response immediately upon receiving the command, before the command processing is completed. This allows the host to receive partial results or status information in advance, enabling the system to handle multiple responses for one command without requiring complex interface modifications.
2Productivity
If multiple responses for one command are transmitted, then communication efficiency and latency reduction are improved, but the device complexity increases
Solution Approach 1:
The controller complexity is managed through segmentation by dividing the completion response into two distinct phases with different functions: the first completion response handles immediate status notification, while the second completion response handles final processing confirmation. This segmentation allows the controller to manage multiple responses systematically without creating excessive complexity in the control logic.
Solution Approach 2:
The controller transmits the first completion response as a preliminary action immediately upon receiving the command, before completing all processing operations. This preliminary response reduces latency by providing immediate feedback to the host, while the final second completion response is transmitted after processing completes, maintaining clear control flow without excessive complexity.
Data Source
AI summary
According to one embodiment, in response to receiving, from a host, one or more second type commands, a controller of the storage device maintains the received one or more second type commands in a memory region in the storage device without completing processing of the received one or more second type commands. In response to receiving the first type command from the host, the controller completes processing of a second type command, and transmits a command completion response for the first type command to the host as a first preceding response for the first type command. In response to completion of processing of the first type command, the controller transmits a command completion response for the first type command to the host.


