Dynamic Submission Queue Arbitration for Blocked Commands

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage apparatuses face inefficiencies in managing command execution due to limited resources and varying host device demands, leading to suboptimal utilization of storage resources and potential deadlocks, particularly with FUSED command operations.

Innovation Solution

Implement a data storage apparatus with a processor that can fetch commands from submission queues, determine if execution is blocked, and control command execution based on blocking conditions, including internal and external events, to optimize resource use and prevent deadlocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If static arbitration logic is used to select commands from submission queues, then device complexity is reduced, but productivity decreases due to inability to dynamically adapt to varying host demands and resource availability

Engineering Contradiction:
Improvearbitration logic complexityVSAvoidcommand processing throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic arbitration logic that adapts to varying host demands and storage resource availability. The system monitors resource utilization and dynamically adjusts command selection from submission queues, transitioning from static round-robin or weighted round-robin approaches to a dynamic system that can prioritize commands based on current system state, thereby improving productivity without excessive complexity increase

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system incorporates feedback mechanisms that monitor storage resource availability and host demand patterns. This feedback is used to adjust arbitration decisions in real-time, allowing the system to optimize command processing throughput by selecting commands from submission queues based on current resource capacity and demand characteristics

Inventive Principle:
Principle #23Feedback

2Productivity

If multiple commands are held in command slots awaiting execution, then productivity is improved through batch processing, but device complexity increases due to resource management overhead

Engineering Contradiction:
Improvecommand execution efficiencyVSAvoidresource management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a command slot mechanism that pre-loads and holds multiple commands awaiting execution. By preparing commands in advance and holding them in dedicated slots, the system enables efficient batch processing when resources become available, improving productivity through reduced overhead per command while managing complexity through structured slot allocation

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system divides command storage into discrete command slots, segmenting the resource management task into manageable units. Each slot can be independently tracked and managed, simplifying the overall resource management complexity while enabling efficient batch processing of multiple commands

Inventive Principle:
Principle #1Segmentation

3Reliability

If commands are executed in strict FIFO order from submission queues, then reliability is improved through deterministic behavior, but productivity decreases due to inability to prioritize urgent commands

Engineering Contradiction:
Improvecommand execution determinismVSAvoidcommand processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic command prioritization that balances deterministic FIFO execution with urgent command handling. The system can dynamically adjust priority levels based on command type, host demand, and resource availability, allowing urgent commands to be executed ahead of lower-priority commands while maintaining overall system reliability through controlled deviations from strict FIFO order

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12430073B2Managed fetching and execution of commands from submission queues
Publication Date: 2025.09.30 SANDISK TECHNOLOGIES LLC
  • US12430073B2 patent drawing
  • US12430073B2 patent drawing
  • US12430073B2 patent drawing

AI summary

The disclosure relates in some aspects to managing the fetching and execution of commands stored in submission queues. For example, execution of a command may be blocked at a data storage apparatus due to an internal blocking condition (e.g., a large number of commands of a particular type are pending for execution at the data storage device). As another example, execution of a command may be blocked at a data storage apparatus due to an external blocking condition (e.g., a host device may specify that certain commands are to be executed immediately one after another). The disclosure relates in some aspects to controlling how commands are fetched and executed so that commands that cannot be executed by the data storage apparatus in the near future do not prevent other commands (that are not subject to the same blocking condition) from being executed.