Floating Point Accumulator with Pre-Aligned Exponents
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
2Productivity
If exponent alignment is performed during accumulation operations, then floating-point data can be processed, but the process becomes complex and performance decreases
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.
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.
Data Source
Figure 1
Figure 2A
Figure 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.