MAC Unit Dispatching via 1W/1R Register Files

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional electronic systems for performing multiply and accumulate (MAC) operations are resource intensive and lack energy efficiency, particularly in applications like deep neural networks and image processing.

Innovation Solution

A processor unit with multiple MAC units, each equipped with a 1W/1R register file and an execution unit that can perform MAC operations in a single clock cycle, utilizing a single accumulator for product computation and accumulation, and a dispatch/issue unit for efficient instruction processing across multiple threads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If conventional electronic systems are used for MAC operations, then basic functionality is provided, but energy consumption is high and resource efficiency is low

Engineering Contradiction:
Improveenergy consumptionVSAvoidprocessing efficiency
Core Design Contradiction:
Use of energy by moving objectVSProductivity

Solution Approach 1:

The system is divided into multiple MAC units (first MAC unit, second MAC unit, etc.), each capable of independently performing MAC operations. This segmentation allows parallel processing of multiple operations simultaneously, improving productivity while each unit maintains compact size for energy efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each MAC unit is designed as a universal building block that can perform the same MAC operation independently. The dispatch/issue unit can direct operations to any available MAC unit, creating a multi-functional system that achieves high throughput through parallel execution of identical functional units.

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

2Speed

If multiple register files with multiple ports are provided for each MAC unit, then operation speed is improved, but device complexity and energy consumption increase

Engineering Contradiction:
Improveoperation speedVSAvoidregister file complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

Multiple MAC units share common register files (first register file, second register file) rather than each MAC unit having its own dedicated register files. This merging approach reduces overall device complexity and resource requirements while maintaining high operation speed through parallel access to shared resources.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The dispatch/issue unit intelligently manages and allocates register file resources to multiple MAC units, enabling self-service coordination without requiring complex dedicated infrastructure for each unit. This centralized management reduces overall system complexity while maintaining high performance.

Inventive Principle:
Principle #25Self-service

3Device complexity

If a single accumulator is used per MAC unit, then device complexity is reduced and energy efficiency is improved, but processing throughput may be limited

Engineering Contradiction:
Improveaccumulator structureVSAvoidMAC operations throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system segments MAC operations across multiple MAC units, each with a single accumulator. This segmentation allows parallel execution of multiple MAC operations across different units, achieving high throughput while keeping each individual unit simple with only one accumulator.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from a single-dimension approach (one accumulator per unit) to a multi-dimensional parallel architecture where multiple MAC units with single accumulators operate simultaneously. This dimensional expansion in parallelism achieves high throughput without increasing per-unit complexity.

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

4Adaptability or versatility

If dispatch/issue unit supports multiple threading modes, then adaptability and resource utilization are improved, but control complexity increases

Engineering Contradiction:
Improvethreading mode flexibilityVSAvoiddispatch/issue unit complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The dispatch/issue unit implements dynamic control that can adapt between different threading modes (single-threaded, two-way SMT, four-way SMT) based on workload requirements. This dynamic adaptability allows the system to optimize performance for different application scenarios while managing control complexity through programmable dispatch logic.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The dispatch/issue unit serves as a universal control mechanism that handles multiple threading modes and directs operations to any MAC unit. This multi-functional controller achieves high adaptability while consolidating control logic in a single unit rather than requiring dedicated control logic for each MAC unit.

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

Data Source

PatentUS12061910B2Dispatching multiply and accumulate operations based on accumulator register index number
Publication Date: 2024.08.13 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12061910B2 patent drawing
  • US12061910B2 patent drawing
  • US12061910B2 patent drawing

AI summary

A processor unit for multiply and accumulate (“MAC”) operations is provided. The present invention may include the processor unit having a plurality of MAC units for performing a set of MAC operations. The present invention may include each MAC unit having an execution unit and a one-write one-read (“1W/1R”) register file, where the 1W/1R register file may have at least one accumulator. The present invention may include the execution unit of each MAC unit being configured to perform a subset of MAC operations by computing a product of a set of values received from another register file of the processor unit and adding the computed product to the at least one accumulator. The present invention may include each MAC unit being configured to perform the respective subset of MAC operations in a single clock cycle.