Multi-threaded Register File Resource Sharing and Layout

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern microprocessors and digital signal processors face high power consumption due to the size and layout of register files, leading to inefficiencies and increased power density, particularly in portable devices where multiple register files are used.

Innovation Solution

A multi-threaded processor architecture is introduced, where multiple register files share hardware resources and are positioned non-sequentially to reduce power density and manufacturing costs, allowing concurrent access without conflicts and optimizing chip performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple register files are used to support multi-threaded processing, then processing capability and productivity are improved, but power consumption increases

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

Solution Approach 1:

Multiple register files are merged to share common hardware resources including read ports, write ports, and interconnect structures. This consolidation allows the system to maintain multiple register files for multi-threaded processing while reducing the total power consumption by eliminating redundant circuitry in shared resources.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Shared hardware resources are designed with multi-functionality to serve multiple register files. The read ports, write ports, and interconnect structures can be dynamically allocated to different register files based on which threads are currently active, allowing a single resource to perform multiple functions and reducing overall power consumption.

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

2Speed

If multiple register files are placed in adjacent areas to improve access efficiency, then processing speed is improved, but power density increases due to circuit heating

Engineering Contradiction:
Improveaccess efficiencyVSAvoidpower density
Core Design Contradiction:
SpeedVSTemperature

Solution Approach 1:

The register file system is segmented into multiple groups that can be spatially distributed across the chip. By segmenting the register files and placing them in non-adjacent locations, the design maintains access efficiency through shared resources while reducing power density by distributing heat generation across different physical areas of the chip.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of placing register files in adjacent two-dimensional areas, the design transitions to a three-dimensional organization where register files can be distributed across multiple layers or spatial regions. This dimensional change allows maintain access efficiency through logical organization while physically separating heat-generating circuits to reduce power density in any single location.

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

3Ease of manufacture

If register files share hardware resources to reduce manufacturing cost, then manufacturing precision is improved, but access conflicts may occur

Engineering Contradiction:
Improvemanufacturing costVSAvoidaccess conflict
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The shared hardware resources incorporate dynamic allocation mechanisms that can adaptively assign read ports, write ports, and interconnect resources to different register files based on current thread activity. This dynamic control prevents access conflicts by ensuring that only active threads access shared resources at any given time, maintaining reliability while enabling resource sharing for cost reduction.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8725991B2Register file system and method for pipelined processing
Publication Date: 2014.05.13 QUALCOMM INC
  • US8725991B2 patent drawing
  • US8725991B2 patent drawing
  • US8725991B2 patent drawing

AI summary

The present disclosure includes a multi-threaded processor that includes a first register file associated with a first thread and a second register file associated with a second thread. At least one hardware resource is shared by the first and second register files. In addition, the first thread may have a pipeline access position that is non-sequential to the second thread. A method of accessing a plurality of register files is also disclosed. The method includes reading data from a first register file while concurrently reading data from a second register file. The first register file is associated with a first instruction stream and the second register file is associated with a second instruction stream. The first instruction stream is sequential to the second instruction stream in an execution pipeline of a processor, and the first register file is in a non-adjacent location with respect to the second register file.