Dynamic Processor Pipeline Modes for Thread and Register Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing processors face inefficiencies in resource utilization due to varying numbers of general-purpose registers and thread support, leading to increased hardware requirements and potential pipeline conflicts, particularly in multi-threading environments.

Innovation Solution

A processor architecture that switches between different instruction execution modes based on selection signals, supporting varying numbers of threads and general-purpose register sets, utilizing register renaming mapping tables to optimize resource allocation and minimize conflicts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the processor uses a fixed large general-purpose register set to support multiple threads, then thread support capability is improved, but hardware resource requirements increase

Engineering Contradiction:
Improvethread support capabilityVSAvoidhardware resource requirements
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The processor dynamically switches between different instruction execution modes (first mode supporting N threads with first general-purpose register set, second mode supporting M threads with second general-purpose register set) based on runtime requirements. This dynamic mode switching allows the processor to adapt its register set size and thread support capability according to actual workload demands, avoiding the need to permanently allocate resources for the maximum possible thread count.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The same physical register set is used for different purposes in different execution modes. The first general-purpose register set and second general-purpose register set share the same hardware resources, allowing the processor to support both smaller register sets for multi-threaded operations and larger register sets for single-threaded operations using the same physical infrastructure.

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

2Productivity

If the processor allocates resources for N threads, then multi-threading performance is improved, but resource utilization efficiency deteriorates when fewer threads are active

Engineering Contradiction:
Improvemulti-threading performanceVSAvoidresource utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The processor transitions from a static resource allocation model to a dynamic one by switching between execution modes based on the actual number of active threads. When N threads are active, the processor operates in the first instruction execution mode with the first general-purpose register set. When fewer threads (M) are active, it switches to the second instruction execution mode with the second general-purpose register set, optimizing resource utilization for the current workload.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If the processor supports both small and large register sets simultaneously, then adaptability is improved, but device complexity increases

Engineering Contradiction:
Improveregister set adaptabilityVSAvoidprocessor architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The processor merges the first general-purpose register set and second general-purpose register set into a unified register file structure. Both register sets share the same physical hardware resources, including the register file and associated control logic. This merging approach allows the processor to support multiple register set configurations without duplicating hardware resources, thereby reducing overall device complexity.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12461749B2Instruction execution method, processor and electronic apparatus
Publication Date: 2025.11.04 HYGON INFORMATION TECH CO LTD
  • US12461749B2 patent drawing
  • US12461749B2 patent drawing
  • US12461749B2 patent drawing

AI summary

An instruction execution method, a processor and an electronic apparatus. The instruction execution method includes: switching a pipeline architecture of the processor between a first instruction execution mode and a second instruction execution mode according to a selection signal, wherein the first instruction execution mode supports N threads and is suitable for a first general-purpose register set of an instruction set; the second instruction execution mode supports M threads and is suitable for a second general-purpose register set of the instruction set, the first general-purpose register set is less than the second general-purpose register set, M and N are positive integers, and N is greater than M.