Memory Command Queue Timing for Out-of-Order Sequence Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory systems face inefficiencies and potential deadlocks due to out-of-order command delivery from host systems, leading to performance degradation and throughput limitations, as they either reduce command queue depth or reorder commands, which can cause further delays and deadlocks.

Innovation Solution

Implementing a timer-based management system for command queues that maintains a fixed depth and stores out-of-order commands in a pending state, using a timeout policy to ensure missing commands are resent, thereby preventing deadlocks and optimizing command processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the command queue depth is reduced to handle out-of-order commands, then deadlock prevention is improved, but system throughput and productivity deteriorate

Engineering Contradiction:
Improvedeadlock preventionVSAvoidsystem throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The command queue depth is made dynamic rather than fixed. The system adjusts the effective queue depth based on the detection of out-of-order commands, allowing the queue to expand when commands are in order and contract when out-of-order commands are detected, thus balancing deadlock prevention with throughput optimization

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback mechanisms to detect out-of-order commands and adjust queue management accordingly. When out-of-order commands are detected, the system responds by modifying queue depth or command acceptance behavior, creating a closed-loop control system that adapts to maintain both reliability and productivity

Inventive Principle:
Principle #23Feedback

2Manufacturing precision

If commands are reordered to maintain sequence, then command processing correctness is improved, but processing delays and deadlocks increase

Engineering Contradiction:
Improvecommand sequence correctnessVSAvoidprocessing delay
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system performs preliminary detection of out-of-order commands before they cause processing delays or deadlocks. By detecting sequence violations early in the queue management process, the system can take preventive actions such as adjusting queue depth or notifying the host, avoiding the need for time-consuming reordering operations

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an intermediary mechanism (such as a sequence tracker or buffer management layer) between the host and the command execution engine. This intermediary detects out-of-order commands and manages the queue depth dynamically, allowing the system to maintain correctness without direct reordering of commands, thus reducing processing delays

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If the command queue depth is increased to improve throughput, then productivity is improved, but the system becomes more susceptible to deadlocks from out-of-order commands

Engineering Contradiction:
Improvesystem throughputVSAvoiddeadlock susceptibility
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The command queue depth is made dynamic rather than fixed. The system adjusts the effective queue depth based on the detection of out-of-order commands, allowing the queue to expand when commands are in order and contract when out-of-order commands are detected, thus balancing deadlock prevention with throughput optimization

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of queue depth dynamically based on command sequence analysis. When out-of-order commands are detected, the queue depth parameter is adjusted to prevent deadlocks, while maintaining higher depth values during periods of ordered command arrival to maximize throughput

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20260029961A1Handling out-of-order commands using timer-based command queue management
Publication Date: 2026.01.29 MICRON TECHNOLOGY INC
  • US20260029961A1 patent drawing
  • US20260029961A1 patent drawing
  • US20260029961A1 patent drawing

AI summary

Various embodiments described herein provide for handling out-of-order commands by managing a command queue of a memory system based on a timer. In particular, various embodiments stores an out-of-order command in a command queue of a memory system with a pending state that prevents its execution and removal until a missing command preceding (the select command in the sequence of commands) is received and executed by the memory system. For some embodiments, the memory system starts a timer for the out-of-order command and monitors for the expiration of the timer for the out-of-order command. If the timer expires before the missing command is received by the memory system, the memory system can send a response to a host system that causes the host system to restart the sending of the sequence of commands starting from the first command in the sequence.