Floating Point Accumulator with Pre-Aligned Exponents

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing artificial intelligence accelerators face challenges in performing accumulation operations on floating-point data due to errors caused by exponent alignment and normalization processes, leading to reduced reliability and performance.

Innovation Solution

The proposed solution involves an accelerator architecture with a unified buffer unit, a pre-alignment unit that finds and aligns exponents, and processing elements that perform bit shifts and accumulation operations, along with a normalization unit to minimize errors and improve reliability and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional accumulation operations on floating-point data are performed in AI accelerators, then the operations can be executed, but errors occur due to exponent alignment and normalization processes, reducing reliability

Engineering Contradiction:
Improvereliability of accumulation operationVSAvoidaccuracy of accumulation result
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The patent applies preliminary action by performing exponent alignment before the accumulation operation. The alignment unit aligns exponents of floating-point numbers in advance, so that subsequent accumulation operations can be performed on data with uniform exponents, eliminating the need for complex normalization during accumulation and preventing errors.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the exponent alignment function as a separate preprocessing stage. By isolating the exponent alignment operation from the accumulation operation, the system can handle floating-point accumulation more reliably. The alignment unit prepares data by统一 exponents before data is passed to accumulation units, removing the source of errors.

Inventive Principle:
Principle #2Taking out (Extraction)

2Productivity

If exponent alignment is performed during accumulation operations, then floating-point data can be processed, but the process becomes complex and performance decreases

Engineering Contradiction:
Improveperformance of accumulation operationVSAvoidcomplexity of alignment process
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

By performing exponent alignment in advance as a preliminary step, the patent simplifies the main accumulation operation. The alignment unit prepares all floating-point data with unified exponents before accumulation, so that accumulation units only need to perform simple addition on aligned data, improving performance while managing complexity through functional separation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the accumulation system into distinct functional units: an alignment unit that handles exponent alignment and accumulation units that perform the actual accumulation. This segmentation allows each unit to be optimized independently - the alignment unit handles the complex exponent management while accumulation units focus on high-speed arithmetic operations.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP4528477A1Accelerator configured to perform accumulation on data having floating point type and operation method thereof
Publication Date: 2025.03.26 SAMSUNG ELECTRONICS CO LTD
  • EP4528477A1 patent drawingFigure 1
  • EP4528477A1 patent drawingFigure 2A
  • EP4528477A1 patent drawingFigure 2B

AI summary

Disclosed is an accelerator performing an accumulation operation on a plurality of data, each being a floating point type. A method of operating the accelerator includes loading first data, finding a first exponent, which is a maximum value among exponents of the first data, generating aligned first fractions by performing a bit shift on first fractions of the first data based on the first exponent, and generating a first accumulated value by an accumulation operation on the aligned first fractions, loading second data, finding a second exponent, which is a maximum value among exponents of the second data, and generating a first aligned accumulated value by a bit shift on the first accumulated value, generating aligned second fractions by a bit shift on second fractions of the second data, and generating a second accumulated value by an accumulation operation on the aligned second fractions and the first aligned accumulated value.