Floating-Point Multiply-Accumulate Unit for AI Processors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current artificial intelligence processors using nonvolatile memory-based Processing-In-Memory (PIM) architecture face challenges with high power consumption and complexity in performing floating-point operations, which are essential for efficient artificial neural network computations.

Innovation Solution

A floating-point multiply-accumulate operation method and apparatus that utilize a Magnetoresistive Random Access Memory Computing-In-Memory (MRAM-CIM) core and high precision neural core to perform exponent and mantissa operations, shifting, accumulation, overflow handling, normalization, and rounding, optimizing power efficiency and computational efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If floating-point operations are implemented in conventional AI processors, then computational precision is improved, but power consumption increases significantly

Engineering Contradiction:
Improvecomputational precisionVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The floating-point operation is segmented into separate exponent and mantissa processing stages. The exponent adder handles exponent operations while the mantissa multiplier handles significand operations independently, allowing parallel processing and reducing overall power consumption while maintaining precision.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An accumulation register is introduced as an intermediary component to store intermediate results of mantissa additions. This allows the system to accumulate precision across multiple operations without immediately writing back to memory, reducing power consumption from memory access operations while maintaining computational accuracy.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If floating-point operations are implemented in AI processors, then computational accuracy is improved, but device complexity increases

Engineering Contradiction:
Improvecomputational accuracyVSAvoiddevice complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The floating-point unit is segmented into distinct functional blocks: exponent adder, mantissa multiplier, mantissa adder, and accumulation register. Each block performs a specific function with simple logic, avoiding the need for a complex general-purpose floating-point unit while achieving the same computational accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs partial floating-point operations by maintaining separate exponent and mantissa processing paths rather than implementing a complete IEEE 754 compliant FPU. This partial implementation achieves sufficient accuracy for AI workloads while dramatically reducing device complexity.

Inventive Principle:
Principle #16Partial or excessive action

3Use of energy by moving object

If nonvolatile memory-based PIM architecture is used, then power efficiency is improved for fixed-point operations, but adaptability to floating-point operations deteriorates

Engineering Contradiction:
Improvepower efficiencyVSAvoidadaptability to floating-point operations
Core Design Contradiction:
Use of energy by moving objectVSAdaptability or versatility

Solution Approach 1:

The PIM architecture is enhanced with a hybrid computational unit that can handle both fixed-point and floating-point operations. The exponent adder, mantissa multiplier, and accumulation register work together to provide universal floating-point capability while maintaining the power-efficient characteristics of the underlying nonvolatile memory PIM architecture.

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

Solution Approach 2:

The system changes operational parameters dynamically by switching between fixed-point and floating-point modes. When floating-point operations are required, the exponent and mantissa processing paths are activated, while the core PIM architecture remains unchanged, preserving power efficiency while gaining floating-point adaptability.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20240176590A1Multiply-accumulate operation method and apparatus
Publication Date: 2024.05.30 ELECTRONICS & TELECOMM RES INST
  • US20240176590A1 patent drawing
  • US20240176590A1 patent drawing
  • US20240176590A1 patent drawing

AI summary

An embodiment of the present disclosure may provide a multiply-accumulate operation method performed by a multiply-accumulate operation apparatus, the multiply-accumulate operation method including accumulating, by an accumulation register, a value within a preset bit value of a mantissa bitwidth in a result of an addition operation of a shifted first mantissa value and a shifted second mantissa value, determining, by an overflow counter, an overflow count based on an overflow value by which the result of the addition operation of the shifted first mantissa value and the shifted second mantissa value exceeds the preset bit value of the mantissa bitwidth, performing normalization and rounding based on the value accumulated in the accumulation register and the overflow count, and updating, by an exponent updater, the exponent using a normalized and rounded value.