Issue Queue Bank Partitioning for Multi-Instruction Picking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing superscalar out-of-order processors face challenges in efficiently selecting multiple instructions per cycle due to dependencies between picker circuits, leading to reduced throughput and instructions-per-cycle (IPC) performance.

Innovation Solution

The issue queue is logically partitioned into banks, with corresponding picker circuits operating independently to select ready instructions from their respective banks or alternate banks based on priority, allowing simultaneous selection of instructions from different banks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If picker circuits operate independently on partitioned banks, then instructions-per-cycle performance is improved, but device complexity increases

Engineering Contradiction:
Improveinstructions-per-cycle performanceVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The issue queue is segmented into multiple banks (first bank and second bank), with each bank having its own dedicated picker circuit. This segmentation allows parallel independent operation of picker circuits, enabling multiple instructions to be selected per cycle without dependency constraints, thereby improving instructions-per-cycle performance while managing complexity through modular organization.

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple instructions are selected per cycle, then throughput is enhanced, but dependency constraints between picker circuits increase

Engineering Contradiction:
ImprovethroughputVSAvoiddependency constraints
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

By dividing the issue queue into separate banks and assigning dedicated picker circuits to each bank, the system eliminates dependency constraints between pickers. Each picker operates independently on its assigned bank, allowing simultaneous selection of multiple instructions per cycle without coordination overhead, thus enhancing throughput while avoiding complexity from inter-picker dependencies.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If picker circuits can access any bank, then adaptability is improved, but device complexity increases

Engineering Contradiction:
ImproveadaptabilityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Each picker circuit is designed to be universal by allowing access to both its corresponding bank and the alternate bank. This multi-functionality provides adaptability: pickers primarily select from their corresponding bank but can seamlessly access the alternate bank when needed, enhancing versatility without requiring complex cross-bank coordination mechanisms.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS12517733B2Circuits and methods for picking multiple ready instructions per cycle
Publication Date: 2026.01.06 ARM LTD
  • US12517733B2 patent drawing
  • US12517733B2 patent drawing
  • US12517733B2 patent drawing

AI summary

The present disclosure relates generally to circuitry and methods for picking instructions ready for execution in out-of-order processing circuitry.