Alias Register File for Mixed Width Datapath Power Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional configurable processor design tools face inefficiencies due to multiple independently developed custom instruction extensions with unique computation blocks and shared storage elements, leading to wasted area and power usage, especially when different datapath widths are involved, and lack of fine-grained control over power consumption.

Innovation Solution

The implementation of alias register files and states allows designers to share logic area and minimize power usage by declaring narrower register files as aliases of wider ones, enabling clock gating of unused lanes to conserve power.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate register files are used for different instruction extensions, then each extension can have its own dedicated storage, but area usage and power consumption increase

Engineering Contradiction:
Improveextension functionalityVSAvoidregister file area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The patent implements a universal register file system where a single vector register file serves multiple instruction extensions with different datapath widths. The register file is designed with configurable width support (e.g., 32-bit, 64-bit, 128-bit) that can accommodate both scalar and vector operations, as well as different extension requirements. This multi-functional approach allows the same hardware resource to be shared across multiple extensions, reducing total area while maintaining extension-specific functionality through software-configurable width and clock gating mechanisms.

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

2Speed

If full-width clocking is used for register files, then all operations can execute at full speed, but power consumption increases when not all lanes are needed

Engineering Contradiction:
Improveoperation speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent segments the register file into multiple independent lanes or slices, each capable of being independently clocked. For example, a 128-bit vector register file is divided into multiple 32-bit or 64-bit lanes. Clock gating control logic selectively enables or disables clock signals to specific lanes based on the current operation requirements. When only scalar operations are needed, only the necessary lane is clocked, reducing power consumption while maintaining full operational speed for the active lanes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic clock gating control that adapts the clocking behavior of register file lanes based on real-time operational requirements. Control logic monitors the current instruction being executed and dynamically adjusts which lanes receive clock signals. This dynamic adaptation allows the system to optimize power consumption for each operation, enabling full-speed operation when needed while minimizing power usage when fewer resources are required.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If multiple independent extensions are developed, then each can be optimized for its specific function, but area and power efficiency decrease due to redundancy

Engineering Contradiction:
Improveextension functionalityVSAvoidpower waste
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent merges multiple extension-specific register files into a single shared vector register file system. Instead of having separate 32-bit, 64-bit, and 128-bit register files for different extensions, the system combines them into one unified structure that can be configured to serve any extension's requirements. This merging eliminates redundant storage elements and shared logic while maintaining the ability to support multiple extension types through configurable width and selective clock gating, thereby reducing power waste from unused resources.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10282206B1Alias register file for supporting mixed width datapath in a configurable processor
Publication Date: 2019.05.07 CADENCE DESIGN SYST INC
  • US10282206B1 patent drawing
  • US10282206B1 patent drawing
  • US10282206B1 patent drawing

AI summary

According to certain general aspects, the present embodiments allow register files and states with different data types to share logic area while minimizing unnecessary use of power in a configurable processor. Embodiments include allowing configurable processor designers to describe alias register files and states. Using alias register files and states, designers can implement vector and scalar operations on different register files, but the scalar register file can be implemented on the vector register file. In addition, the upper lanes of the vector register file can be clock gated when the scalar operation performs computations. With this gating, the clocks for the entire upper lanes (including the register file, state, semantic, mux, decoder) can be disabled, which provides power savings.