Dynamic Micro-Operation Execution Based on Resource Availability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing processor architectures statically split instructions into micro-operations, which may not optimize performance as it can lead to inefficiencies due to fixed mapping, potentially causing resource bottlenecks and stalls, regardless of resource availability.

Innovation Solution

Implementing processing circuitry with control circuitry that dynamically determines the number of micro-operations to execute based on the availability of processing resources, allowing for flexible partitioning of instructions into micro-operations at the issue stage, either combining or splitting them depending on resource availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If instructions are statically split into micro-operations with fixed mapping, then the processor architecture is simpler to implement, but performance is reduced due to resource bottlenecks and stalls

Engineering Contradiction:
Improveprocessor architecture complexityVSAvoidprocessor performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic determination of micro-operation count based on real-time resource availability. Control circuitry monitors processing resource status and adjusts the number of micro-operations executed in response to instructions, transitioning from static fixed mapping to dynamic adaptive execution that optimizes performance based on current system state

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of micro-operation count dynamically based on resource availability conditions. Control circuitry modifies execution parameters by determining how many micro-operations to execute based on monitored resource states, allowing the processor to adapt its operational characteristics to current conditions

Inventive Principle:
Principle #35Parameter changes

2Productivity

If instructions are dynamically split into micro-operations based on resource availability, then processor performance is improved, but control complexity increases

Engineering Contradiction:
Improveprocessor performanceVSAvoidcontrol circuitry complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The control circuitry performs preliminary monitoring of resource availability and determines the appropriate micro-operation count before instruction execution begins. This advance preparation allows dynamic optimization without adding significant control complexity during the actual execution phase

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where control circuitry monitors processing resource availability and uses this information to adjust micro-operation execution. The feedback loop enables performance optimization while keeping control complexity manageable through systematic resource monitoring and response

Inventive Principle:
Principle #23Feedback

3Ease of operation

If a fixed number of micro-operations are executed for each instruction, then resource allocation is simpler, but resource utilization efficiency decreases due to bottlenecks and stalls

Engineering Contradiction:
Improveresource allocation simplicityVSAvoidresource utilization efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent transitions from static resource allocation to dynamic resource allocation based on real-time availability. Control circuitry adjusts the number of micro-operations executed according to monitored resource states, enabling efficient resource utilization while maintaining manageable allocation through systematic monitoring and adaptive response

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10846092B2Execution of micro-operations
Publication Date: 2020.11.24 ARM LTD
  • US10846092B2 patent drawing
  • US10846092B2 patent drawing
  • US10846092B2 patent drawing

AI summary

Processing circuitry includes execute circuitry for executing micro-operations in response to instructions fetched from a data store. Control circuitry is provided to determine, based on availability of at least one processing resource, how many micro-operations are to be executed by the execute circuitry in response to a given set of one or more instructions fetched from the data store.