Vector Processing Unit Micro-Op Cache for Out-of-Order Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing vector processing units (VPUs) face inefficiencies due to the need for operation caches (OCs) that track micro-ops, leading to increased power consumption, area requirements, and scaling issues as the number of micro-ops increases, and limitations in executing instructions out of order.

Innovation Solution

Introduce a micro-op cache (μOC) separate from the operation cache (OC) to track the state and control logic of micro-ops, allowing instructions to be sent whole and split into micro-ops by the OC, enabling out-of-order execution and reducing the number of micro-ops per instruction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If instructions are split into multiple micro-ops before reaching the operation cache, then the VPU can execute micro-ops separately with proper tracking, but the operation cache requires more entries and storage time, increasing power consumption and area

Engineering Contradiction:
Improveinstruction tracking accuracyVSAvoidoperation cache power consumption
Core Design Contradiction:
ReliabilityVSUse of energy by stationary object

Solution Approach 1:

The patent divides the tracking responsibility into two separate caches: the operation cache (OC) tracks only the instruction-level state, while a new micro-op cache (μOC) tracks the micro-op level state. This segmentation allows the OC to have fewer entries since it doesn't need to track every micro-op individually, thereby reducing power consumption while maintaining reliable instruction tracking.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the micro-op tracking function from the operation cache and places it in a separate micro-op cache. This extraction allows the OC to focus only on instruction-level tracking, reducing the number of entries needed in the OC and consequently reducing its power consumption and area requirements.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If instructions are split into multiple micro-ops before reaching the operation cache, then micro-ops can be tracked individually, but the operation cache area increases due to more entries being required

Engineering Contradiction:
Improvemicro-op state trackingVSAvoidoperation cache area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The patent segments the caching system into two distinct caches with different responsibilities: the OC handles instruction-level tracking with fewer entries, while the μOC handles micro-op-level tracking. This segmentation reduces the area of the OC by eliminating the need for it to store entries for every micro-op, while still maintaining reliable micro-op state tracking through the μOC.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the micro-op tracking functionality from the OC and places it in a separate μOC. This extraction reduces the OC area by removing the need for numerous micro-op entries, while the μOC is optimized specifically for micro-op tracking requirements.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If the operation cache tracks all micro-ops, then complete control state is maintained, but the cache size scales poorly as the number of micro-ops per instruction increases

Engineering Contradiction:
Improvecontrol state completenessVSAvoidcache scaling complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the control state tracking between two caches: the OC maintains instruction-level control state, and the μOC maintains micro-op-level control state. This segmentation allows the system to maintain complete control state information while avoiding the poor scaling behavior of a single large cache, as each cache is optimized for its specific level of abstraction.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the micro-op control state tracking from the OC and places it in a separate μOC. This extraction reduces the scaling complexity of the OC by removing the burden of tracking every micro-op, while the μOC is specifically designed to handle micro-op tracking requirements efficiently.

Inventive Principle:
Principle #2Taking out (Extraction)

4Reliability

If instructions must be executed in order, then correctness is maintained, but performance is limited due to inability to execute ready micro-ops out of order

Engineering Contradiction:
Improveinstruction execution correctnessVSAvoidinstruction execution throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the execution control between the OC, which maintains instruction-order correctness, and the μOC, which enables out-of-order micro-op execution. This segmentation allows the system to maintain correctness at the instruction level while achieving higher throughput through out-of-order execution of micro-ops, resolving the contradiction between reliability and productivity.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20260111227A1Processing Instructions
Publication Date: 2026.04.23 IMAGINATION TECH LTD
  • US20260111227A1 patent drawing
  • US20260111227A1 patent drawing
  • US20260111227A1 patent drawing

AI summary

A vector processing unit contains an operation cache and a separate micro-op cache. The operation cache tracks state and logic of instructions, and is responsible for splitting instructions into micro-ops. The micro-op cache tracks state and logic of micro-ops. Having a separate micro-op cache provides power and area benefits, as well as allowing instructions to be split out of order.