Multi-Mode Register Semantics for Lower Register Pressure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional instruction set architectures (ISAs) are limited by the number of available architectural registers, which restricts software optimizations and instruction-level parallelism due to increased register pressure and memory latency, necessitating complex workarounds and additional overhead.

Innovation Solution

A data processing system with registers organized in multiple semantic modes (queue or stack behavior) that can be selectively enabled or disabled through a control interface, allowing efficient management without requiring specific management instructions, thereby enhancing parallelism and reducing memory latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the number of architectural registers is increased to reduce register pressure, then the effectiveness of software optimizations improves, but the encoding limitations and instruction format compatibility are violated

Engineering Contradiction:
Improvesoftware optimization effectivenessVSAvoidinstruction encoding complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a new dimension to the register system by adding semantic mode attributes to existing registers. Instead of increasing the number of registers, it enriches the functionality of each register by allowing it to operate in different semantic modes (standard, queue, stack), effectively creating a multi-dimensional register space that resolves the contradiction between optimization effectiveness and encoding complexity

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

Solution Approach 2:

The patent changes the operational parameters of registers by introducing semantic mode switching. Each register can dynamically change its behavior based on its semantic mode, transforming from a simple storage location to a context-aware data structure. This parameter change allows the same physical register to serve multiple purposes without requiring additional register identifiers

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If conventional registers are used with limited availability, then the instruction format remains simple, but register pressure increases forcing frequent spilling to main memory

Engineering Contradiction:
Improveinstruction format simplicityVSAvoidmemory spilling overhead
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent enables registers to serve themselves by automatically managing their own data according to their semantic mode. Queue-mode registers automatically enqueue incoming values and dequeue values in FIFO order, while stack-mode registers automatically push and pop values in LIFO order. This self-service capability eliminates the need for explicit spilling and reloading operations, reducing memory overhead while maintaining simple instruction formats

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent makes registers universal by enabling them to function in multiple modes (standard, queue, stack) depending on the computational needs. This multi-functionality allows the same limited set of registers to handle various data organization requirements without requiring additional registers or complex spilling mechanisms, thereby reducing memory access overhead

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

3Productivity

If out-of-order processing with register renaming is used to resolve WAW dependencies, then instruction-level parallelism improves, but the scope of optimizations such as unrolling, pipelining, and hoisting remains limited

Engineering Contradiction:
Improveinstruction-level parallelismVSAvoidoptimization scope
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent introduces dynamics to the register system by allowing semantic modes to be configured and changed based on optimization opportunities. Registers can dynamically switch between standard, queue, and stack modes to accommodate different optimization techniques such as unrolling, pipelining, and hoisting. This dynamic adaptability extends the scope of optimizations beyond what static register renaming can achieve

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP4617858A1System and method for managing multiple register semantic modes
Publication Date: 2025.09.17 HUAWEI TECH CO LTD
  • EP4617858A1 patent drawingFigure 1~2
  • EP4617858A1 patent drawingFigure 3A~4B
  • EP4617858A1 patent drawingFigure 5A~5B

AI summary

The present disclosure provides a data processing system (100) and a method (200) carried out by the data processing system. The data processing system comprises a plurality of registers (102), wherein each register (RI, R2, up to Rn), has one or more storage locations organised according to one of a plurality of semantic modes, including a first semantic mode and a second semantic mode; and a control interface (104) configured to selectively enable or disable an extended semantic mode functionality for each of the plurality of registers, such that, when enabled, a corresponding register interprets instructions according to the first semantic mode, and when disabled, a corresponding register interprets instructions according to the second semantic mode.