Command Draining Using Host Memory Buffer for Storage Abort

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems face inefficiencies in aborting commands, particularly when commands have already started execution, as they require terminating all tasks and waiting for completion before issuing a completion message, leading to high latency and resource inefficiency.

Innovation Solution

The data storage device modifies command pointers to point to host memory buffers (HMBs), waits for ongoing transactions to complete, and then posts a failure completion message, allowing for efficient abort processing and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the data storage device waits for already started tasks to complete before issuing a completion message, then command abort reliability is improved, but command abort latency increases

Engineering Contradiction:
Improvecommand abort reliabilityVSAvoidcommand abort latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by setting up the command structure and data paths before the abort occurs. When an abort is requested, the system has already prepared the completion message format and data transfer paths, allowing it to quickly issue the completion message after verifying task completion status, thus reducing abort latency while maintaining reliability

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms to track the status of already started tasks. By continuously monitoring task completion status and providing feedback to the abort handling logic, the system can determine when it is safe to issue the completion message, ensuring reliability while minimizing waiting time

Inventive Principle:
Principle #23Feedback

2Reliability

If the data storage device terminates all tasks associated with a command before issuing a completion message, then command abort safety is improved, but system productivity decreases

Engineering Contradiction:
Improvecommand abort safetyVSAvoidsystem productivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system extracts and isolates the abort handling logic from the general command processing flow. By separating the task termination verification from the completion message issuance, the system can efficiently manage abort scenarios without disrupting the overall command processing pipeline, thus maintaining system productivity while ensuring abort safety

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system performs preliminary verification of task completion status before issuing the completion message. This preliminary check ensures that all associated tasks have been properly terminated or completed, maintaining abort safety, while the pre-prepared message format and efficient verification process minimize the impact on system productivity

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the data storage device scans pending activities to terminate tasks, then command abort completeness is improved, but device complexity increases

Engineering Contradiction:
Improvecommand abort completenessVSAvoidabort processing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system maintains preliminary records of pending activities and their associated tasks in a structured format. When an abort is requested, the system can quickly scan these pre-organized records to identify and terminate all associated tasks, ensuring abort completeness without requiring complex real-time analysis, thus reducing the effective complexity of the abort processing

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11954369B2Command draining using host memory buffer
Publication Date: 2024.04.09 SANDISK TECHNOLOGIES LLC
  • US11954369B2 patent drawing
  • US11954369B2 patent drawing
  • US11954369B2 patent drawing

AI summary

The present disclosure generally relates to aborting a command efficiently using the host memory buffer (HMB). The command contains pointers that direct the data storage device to various locations on the data storage device where relevant content is located. Once the abort command is received, the content of the host pointers stored in the data storage device RAM are changed to point to the HMB. The data storage device then waits until any already started transactions over the interface bus that are associated with the command have been completed. Thereafter, a failure completion command is posted to the host device.