Write-back rescheduling for processor power reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data processing apparatuses, the process of writing-back results to registers consumes energy and time, and often results in unnecessary operations where the result would be overwritten before access, leading to complexity in forwarding logic between execution units and registers.

Innovation Solution

The apparatus stalls operations at a stage prior to the write-back stage, allowing the result to be forwarded directly to other execution units as operands instead of writing it back to registers, and uses write-back reschedule circuitry to determine whether to forward the result to registers or other execution units based on subsequent operations, thereby reducing the need for write-back operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If results are written back to registers after operation completion, then results can be accessed by upcoming operations, but power consumption increases and time is consumed

Engineering Contradiction:
Improveresult availabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary actions by forwarding results directly to execution units that will need them soon, rather than waiting for the traditional write-back to register and subsequent read. The write-back reschedule circuitry proactively identifies when a result can be forwarded directly based on monitoring upcoming operations, performing the forwarding action before the result would normally be written back to registers.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts the result forwarding function from the traditional write-back-to-register pathway. Instead of all results going through the register file, the system extracts and forwards results directly to execution units when appropriate, based on the determination made by the write-back reschedule circuitry about upcoming operation needs.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If results are written back to registers, then results can be accessed by upcoming operations, but the number of write-back operations increases unnecessarily

Engineering Contradiction:
Improveresult availabilityVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The write-back reschedule circuitry monitors upcoming operations in advance and determines beforehand when a result can be forwarded directly to an execution unit rather than written back to registers. This preliminary determination allows the system to skip unnecessary write-back operations while ensuring result availability when needed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of performing all possible write-back operations, the system performs only the necessary write-backs by selectively forwarding results based on the determination made by the write-back reschedule circuitry. This partial action approach eliminates excessive write-back operations that would not be needed given upcoming operation patterns.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If traditional write-back to register mechanism is used, then results are available to upcoming operations, but forwarding logic complexity increases

Engineering Contradiction:
Improveresult availabilityVSAvoidforwarding logic complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The write-back reschedule circuitry acts as an intermediary between the execution unit and the register file. It receives results from execution units, monitors upcoming operations, determines whether direct forwarding or traditional write-back is appropriate, and controls the forwarding path accordingly. This intermediary simplifies the overall forwarding logic by centralizing the decision-making function.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback by having the write-back reschedule circuitry monitor upcoming operations and use that information to determine the appropriate forwarding path. This feedback loop allows the system to adapt its forwarding behavior based on actual operation patterns, simplifying the forwarding logic through intelligent control rather than complex static routing.

Inventive Principle:
Principle #23Feedback

4Use of energy by moving object

If results are forwarded directly to execution units, then power consumption is reduced, but the ability to access results from registers is limited

Engineering Contradiction:
Improvepower consumptionVSAvoidresult access flexibility
Core Design Contradiction:
Use of energy by moving objectVSAdaptability or versatility

Solution Approach 1:

The system dynamically adjusts the forwarding path based on real-time conditions. The write-back reschedule circuitry continuously monitors upcoming operations and determines whether to forward results directly to execution units or write back to registers. This dynamic adaptation allows the system to optimize power consumption when direct forwarding is possible while maintaining register accessibility when needed, balancing energy efficiency with operational flexibility.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20240078035A1Write-back rescheduling
Publication Date: 2024.03.07 ARM LTD
  • US20240078035A1 patent drawing
  • US20240078035A1 patent drawing
  • US20240078035A1 patent drawing

AI summary

An apparatus has processing circuitry with one or more execution units to perform operations in response to instructions. The apparatus also has registers to store data accessed by the processing circuitry and forwarding circuitry to forward results of the operations from the execution units to be written back to the registers and to the execution units for use as operands of further operations. The apparatus also has write-back reschedule circuitry which for each operation causes an execution unit performing the operation to stall the operation prior to a write-back stage of the execution unit and determine, based on monitoring subsequent operations whether to forward the result of the operation to be written back to a register or to forward the result to an execution unit. The write-back reschedule circuitry also controls the forwarding circuitry to forward the result according to the determination.