Command Queue Ordering Across Parallel Processing Paths

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing processing units with multiple paths face inefficiencies due to differing capabilities and latencies, leading to potential data errors and reduced overall efficiency, as prior solutions for managing command order require significant resource consumption and complexity.

Innovation Solution

A method involving assigning commands to processing paths using identifiers that indicate receipt order, stored in a queue or buffer, allowing controllers to manage processing order efficiently with reduced resource requirements by leveraging these identifiers to ensure commands are processed in the correct sequence.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If commands are assigned to different processing paths with different capabilities and latencies, then processing efficiency is improved, but processing order may be disrupted leading to data errors

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidprocessing order correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system assigns sequence numbers to commands before distributing them to different processing paths. This preliminary ordering action ensures that even though commands are processed in parallel across multiple paths with different latencies, the original receipt order is preserved and can be used to reassemble results correctly.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary ordering mechanism (sequence numbers and ordering logic) that mediates between the parallel processing paths and the final result assembly. This intermediary ensures that commands are tracked and reassembled in the correct order regardless of which processing path completes them first.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If prior solutions are used to manage command processing order, then processing order is maintained, but resource consumption and system complexity increase significantly

Engineering Contradiction:
Improveprocessing order correctnessVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent changes the approach from using complex inter-queue signaling and coordination mechanisms to a simpler parameter-based solution using sequence numbers. By attaching an ordering parameter (sequence number) to each command, the system maintains processing order without requiring complex communication infrastructure between processing queues.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The invention extracts the ordering information (sequence numbers) from the complex inter-queue coordination mechanism and handles ordering independently. This separation allows each processing queue to operate autonomously while the ordering logic is handled separately through the sequence number tracking mechanism.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12487831B2Systems and methods for managing order of command processing
Publication Date: 2025.12.02 XILINX INC
  • US12487831B2 patent drawing
  • US12487831B2 patent drawing
  • US12487831B2 patent drawing

AI summary

A computer-implemented method for managing processing order for a plurality of commands can include in response to receiving each command of a plurality of commands in a receipt order, assigning each respective command of the plurality of commands to a respective processing queue of a plurality of processing queues to be processed, and setting, for each of the plurality of commands and in the receipt order, an identifier based on the respective queue assigned to each of the plurality of commands, and managing, based on the identifiers for each of the plurality of commands in the receipt order, an order of processing of each of the plurality of commands from the respective processing queue of the plurality of processing queues. Various other methods, systems, and computer-readable media are also disclosed.