Move-Immediate Logic Circuit for Variable Immediate Value Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processor-based devices face challenges in efficiently executing move-immediate instructions with variable immediate value sizes, leading to increased overhead in area and power consumption, and existing solutions either require additional write ports or are limited to smaller immediate values.

Innovation Solution

A hybrid approach is implemented, using a move-immediate logic circuit to allocate physical registers from an immediate physical register file and write their tags into a most-recent mapping table, with a frequent immediate table tracking occurrences to allocate registers only for frequently encountered values, enabling early execution of move-immediate instructions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the processor always carries the largest possible immediate value size throughout the execution pipeline, then the immediate value can be accessed by dependent instructions, but the processor area and power overhead increases considerably

Engineering Contradiction:
Improveimmediate value accessibilityVSAvoidprocessor area overhead
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

The patent segments the immediate value handling into two parts: small immediate values are stored directly in the MRT entry, while large immediate values are stored in a separate IPRF. This segmentation allows the system to handle variable-sized immediate values efficiently without always allocating space for the largest possible value in every MRT entry.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension by adding a content indicator field to the MRT entry that can indicate whether the immediate value is stored in the MRT itself or in the IPRF. This additional dimension allows flexible access to immediate values of any size without increasing the base MRT size.

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

2Area of stationary object

If physical register inlining is used for small immediate values, then processor area overhead is reduced, but the solution is limited to smaller immediate values only

Engineering Contradiction:
Improveprocessor area overheadVSAvoidimmediate value size support
Core Design Contradiction:
Area of stationary objectVSAdaptability or versatility

Solution Approach 1:

The patent introduces the IPRF as an intermediary structure between the MRT and the physical register file. The IPRF acts as a mediator that stores large immediate values and provides them to dependent instructions, enabling support for larger immediate values without requiring direct integration of all immediate values into the MRT.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The IPRF serves multiple functions: it stores both small and large immediate values, provides early execution support, and reduces the burden on the MRT. This universal structure handles immediate values of any size, making the system versatile while maintaining area efficiency.

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

3Productivity

If move-immediate instructions execute at the rename stage, then subsequent dependent instructions can execute faster, but additional expensive write ports to the physical register file are required

Engineering Contradiction:
Improveinstruction execution speedVSAvoidwrite port complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the immediate value storage function from the physical register file and places it in the dedicated IPRF. This extraction allows move-immediate instructions to write immediate values to the IPRF at the rename stage without requiring write ports to the expensive physical register file, thus maintaining high execution speed while reducing complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates a copy of the immediate value in the IPRF that can be accessed by multiple dependent instructions. Instead of requiring each dependent instruction to access the physical register file, they can access the copied immediate value in the IPRF, reducing the need for expensive write ports.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP4034989B1Enabling early execution of move-immediate instructions having variable immediate value sizes in processor-based devices
Publication Date: 2023.08.02 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP4034989B1 patent drawingFigure 1
  • EP4034989B1 patent drawingFigure 2
  • EP4034989B1 patent drawingFigure 3

AI summary

Enabling early execution of move-immediate instructions having variable immediate value sizes in processor-based devices is disclosed. In one exemplary embodiment, a processor-based device provides a move-immediate logic circuit that detects a move-immediate instruction comprising an immediate value and a destination register. For frequently encountered immediate values, the move-immediate logic circuit allocates a physical register from an immediate physical register file (IPRF), and writes an IPRF tag corresponding to the allocated IPRF register into a most-recent mapping table (MRT) entry for the destination register. Subsequent move-immediate instructions embedding the same immediate value, as well as other dependent instructions, may then obtain the immediate value from the IPRF register by accessing the MRT entry. Additionally, the PE provides a frequent immediate table (FIT) for tracking occurrences of immediate values, and allocates IPRF registers for a given immediate value only when a count of occurrences of that immediate value exceeds a FIT threshold.