Instruction Dispatch Routing via Dual Rotation Orders

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional processor cores face performance degradation due to sequential instruction dispatching, which leads to uneven workload distribution across issue queues, causing bottlenecks and delays, especially when resource-intensive instructions are not properly balanced.

Innovation Solution

Implementing a method where instructions are dispatched using two separate rotation orders, one for priority/resource-intensive instructions and another for non-priority/non-resource-intensive instructions, allowing for dynamic selection based on instruction type and historical data to ensure even distribution across issue queues.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If sequential instruction dispatching is used, then implementation simplicity is maintained, but workload distribution across issue queues becomes uneven causing performance degradation

Engineering Contradiction:
Improvedispatch mechanism complexityVSAvoidprocessor performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the instruction dispatch mechanism into two separate rotation orders: one for resource-intensive instructions and another for non-resource-intensive instructions. This segmentation allows each rotation order to be optimized independently, preventing the bottleneck that occurs when all instructions are dispatched through a single sequential rotation mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic selection of rotation orders based on instruction characteristics. The dispatch unit dynamically determines whether an instruction is resource-intensive and selects the appropriate rotation order accordingly. This dynamic adaptation enables the system to optimize workload distribution in real-time without requiring complex static reconfiguration.

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If resource-intensive instructions are dispatched using the same rotation order as non-resource-intensive instructions, then dispatch uniformity is maintained, but bottlenecks occur when multiple resource-intensive instructions contend for the same issue queues

Engineering Contradiction:
Improvedispatch uniformityVSAvoidinstruction throughput
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent divides the instruction stream into two categories (resource-intensive and non-resource-intensive) and assigns them to different rotation orders. This segmentation prevents resource-intensive instructions from contending for the same issue queues simultaneously, thereby eliminating bottlenecks while maintaining simple rotational dispatching within each category.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different dispatch strategies (different rotation orders) to different types of instructions based on their local characteristics. Resource-intensive instructions receive specialized handling through one rotation order optimized for their needs, while non-resource-intensive instructions use another rotation order, allowing each group to be dispatched with appropriate quality rather than applying a uniform approach to all instructions.

Inventive Principle:
Principle #3Local quality

3Reliability

If issue queues are skipped when full during rotation, then queue overflow is prevented, but performance degrades due to reactive rather than proactive load balancing

Engineering Contradiction:
Improvequeue management reliabilityVSAvoiddispatch efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary classification of instructions into resource-intensive and non-resource-intensive categories before dispatch. This preliminary action allows the system to proactively route instructions to appropriate rotation orders, preventing queue overflow conditions rather than reacting to them after they occur. The load balancing is performed in advance based on instruction characteristics rather than reactively based on queue status.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11327766B2Instruction dispatch routing
Publication Date: 2022.05.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11327766B2 patent drawing
  • US11327766B2 patent drawing
  • US11327766B2 patent drawing

AI summary

A method of instruction dispatch routing comprises receiving an instruction for dispatch to one of a plurality of issue queues; determining a priority status of the instruction; selecting a rotation order based on the priority status, wherein a first rotation order is associated with priority instructions and a second rotation order, different from the first rotation order, is associated with non-priority instructions; selecting an issue queue of the plurality of issue queues based on the selected rotation order; and dispatching the instruction to the selected issue queue.