Pipeline Registers Enable Combo-Move Instructions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing processing units face inefficiencies when moving multiple values between general-purpose registers, as executing separate instructions for each move operation can be inefficient and power-consuming, and often require additional registers for temporary storage.

Innovation Solution

The use of pipeline registers as temporary storage within processing units to execute combo-move instructions, which allow multiple values to be moved between registers in fewer clock cycles without the need for additional general-purpose registers, thereby reducing power consumption and avoiding register unavailability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If separate instructions are executed for each move operation between GPRs, then data movement can be performed, but processing efficiency decreases and power consumption increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent combines multiple separate move instructions into a single combo-move instruction that can transfer multiple values between GPRs in one operation. This merging of operations reduces the total number of instructions executed, thereby improving processing efficiency and reducing power consumption associated with instruction fetch, decode, and execution cycles.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The combo-move instruction provides multi-functionality by enabling simultaneous movement of multiple data values between different GPR pairs. This single instruction can handle various data transfer scenarios (swap, rotate, parallel move) that would otherwise require multiple separate instructions, enhancing productivity without proportionally increasing power consumption.

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

2Ease of operation

If additional GPRs are used for temporary storage during value swapping, then move operations can be completed, but register availability decreases and device complexity increases

Engineering Contradiction:
Improveregister availabilityVSAvoidregister file structure
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces pipeline registers as intermediary storage elements that are distinct from the GPR file. These pipeline registers serve as temporary holding locations during combo-move operations, allowing values to be swapped between GPRs without requiring additional GPRs. This mediator approach maintains GPR availability while enabling complex move operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent separates the storage dimension by introducing a different type of register (pipeline register) that exists outside the traditional GPR hierarchy. This dimensional separation allows temporary storage functionality to be added without increasing the number of general-purpose registers, thus maintaining register availability while enabling efficient value swapping operations.

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

3Loss of time

If multiple separate instructions are used to move values between GPRs, then data transfer can be performed, but the number of clock cycles increases

Engineering Contradiction:
Improveclock cyclesVSAvoidinstruction execution rate
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent merges multiple sequential move instructions into a single combo-move instruction that executes in one clock cycle. By combining the functionality of multiple instructions (e.g., swapping two values, rotating three values) into one operation, the patent eliminates the sequential execution overhead and reduces the total clock cycles required, thereby reducing time loss and improving productivity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs preliminary organization of data transfer paths and pipeline register allocations before instruction execution. This pre-preparation allows the combo-move instruction to execute multiple value transfers simultaneously or in tightly coordinated fashion within a single clock cycle, eliminating the sequential delays that would occur with separate instructions.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3143495B1Utilizing pipeline registers as intermediate storage
Publication Date: 2023.08.16 QUALCOMM INC
  • EP3143495B1 patent drawingFigure 1
  • EP3143495B1 patent drawingFigure 2
  • EP3143495B1 patent drawingFigure 3A

AI summary

In one example, a method includes responsive to receiving, by a processing unit, one or more instructions requesting that a first value be moved from a first general purpose register (GPR) to a third GPR and that a second value be moved from a second GPR to a fourth GPR, copying, by an initial logic unit and during a first clock cycle, the first value to an initial pipeline register, copying, by the initial logic and during a second clock cycle, the second value to the initial pipeline register, copying, by a final logic unit and during a third clock cycle, the first value from a final pipeline register to the third GPR, and copying, by the final logic unit and during a fourth clock cycle, the second value from the final pipeline register to the fourth GPR.