Macro-Op Fusion Prediction Across Fetch Boundaries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing macro-op fusion techniques in pipelined architectures, particularly in RISC-V architectures, fail to capitalize on numerous opportunities for enhancing efficiency due to limited application and suboptimal branch prediction strategies, leading to increased instruction set complexity and performance degradation.

Innovation Solution

Implement a dynamic fusion predictor to determine whether to delay or execute macro-ops in the fetch buffer, using a performance model to assess the benefits of fusion, and incorporate a branch speculation mechanism to handle mispredictions effectively, thereby optimizing macro-op fusion across instruction fetch boundaries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If macro-op fusion is applied to reduce instruction count, then processor productivity is improved, but device complexity increases due to additional decode stage logic and fusion prediction mechanisms

Engineering Contradiction:
Improveprocessor throughputVSAvoiddecode stage complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The decode stage is segmented into multiple independent fusion predictor units (e.g., fusion predictor 202, 204, 206) that can be selectively enabled. Each predictor handles specific fusion patterns, allowing the system to incrementally add complexity only where beneficial for productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The fusion prediction mechanism is made dynamic through configurable enable bits (e.g., ENBFUS0, ENBFUS1) and performance counters that adaptively control fusion behavior. The system can dynamically adjust the level of fusion complexity based on workload characteristics and performance measurements.

Inventive Principle:
Principle #15Dynamics

2Use of energy by moving object

If aggressive macro-op fusion is implemented to enhance efficiency, then use of energy is reduced, but reliability decreases due to increased pipeline flushes from mispredictions

Engineering Contradiction:
Improveenergy consumptionVSAvoidexecution correctness
Core Design Contradiction:
Use of energy by moving objectVSReliability

Solution Approach 1:

The system implements partial fusion prediction by only predicting fusion for specific instruction patterns (e.g., branch followed by independent instructions) rather than all instructions. This selective approach reduces misprediction penalties while still achieving energy savings on predictable fusion opportunities.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

Performance counters (e.g., PCNT0, PCNT1) provide feedback on fusion prediction accuracy and pipeline flush frequency. This feedback mechanism allows the system to adjust fusion aggressiveness to maintain reliability while optimizing energy consumption.

Inventive Principle:
Principle #23Feedback

3Productivity

If fusion prediction mechanisms are added to optimize macro-op fusion, then productivity increases, but manufacturing precision requirements increase due to tighter timing constraints in the pipeline

Engineering Contradiction:
Improveinstruction execution rateVSAvoidpipeline timing precision
Core Design Contradiction:
ProductivityVSManufacturing precision

Solution Approach 1:

Fusion prediction is performed in advance during the decode stage, before instructions enter the execution pipeline. This preliminary action allows fusion decisions to be made early, providing sufficient time for complex prediction logic without compromising pipeline timing precision.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The fusion prediction mechanism adds a temporal dimension to the decode stage by introducing multi-cycle prediction logic and buffer stages. This allows the system to perform complex predictions without increasing clock frequency requirements, thereby maintaining manufacturing precision.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Adaptability or versatility

If dynamic fusion strategies are implemented to improve performance, then adaptability increases, but ease of operation decreases due to complex fusion decision logic

Engineering Contradiction:
Improvefusion optimization capabilityVSAvoidcontrol complexity
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The fusion prediction system operates autonomously using hardware-based predictors and performance counters. The complex fusion decision logic is self-contained in dedicated circuitry (e.g., fusion predictors 202-206) that automatically makes fusion decisions without requiring software intervention or complex control sequences.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20260072689A1Macro-op fusion for pipelined architectures
Publication Date: 2026.03.12 SIFIVE INC
  • US20260072689A1 patent drawing
  • US20260072689A1 patent drawing
  • US20260072689A1 patent drawing

AI summary

Systems and methods are disclosed for macro-op fusion in pipelined architectures. For example, some methods include detecting a sequence of macro-ops stored in an instruction decode buffer, the sequence of macro-ops including a first macro-op, followed by one or more intervening macro-ops, followed by a last macro-op; determining a micro-op that is equivalent to the first macro-op combined with the last macro-op; and forwarding the micro-op to one or more execution resource circuitries for execution.