Floating Point Multiply-Add Unit with Selective Mantissa Bit Gating
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current processors face inefficiencies in performing floating point multiply-add operations due to high energy consumption, particularly in calculating the least significant bit portion of the mantissa product, which often does not affect the final result, leading to unnecessary energy expenditure.
Innovation Solution
Incorporating mantissa multiplier energy consumption reduction logic that gates the least significant bit portion of the mantissa multiplier, reducing energy consumption by determining if the uncalculated portion could impact the final result, and selectively calculating or bypassing it based on the floating point addend's exponent.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the least significant bit portion of the mantissa multiplier is fully calculated, then calculation accuracy is maintained, but energy consumption increases
Solution Approach 1:
The mantissa multiplier is segmented into two distinct portions: a most significant bit portion that is always calculated, and a least significant bit portion that is conditionally calculated. This segmentation allows the system to selectively activate only the necessary computational units based on the specific operation requirements, thereby reducing energy consumption while maintaining calculation accuracy when needed.
Solution Approach 2:
The least significant bit portion of the mantissa multiplier is designed to be dynamically configurable, allowing it to be selectively enabled or disabled based on the calculation requirements. This dynamic configuration enables the system to adapt its computational resources to the actual needs of each operation, avoiding unnecessary energy expenditure on calculations that will not affect the final result.
2Measurement precision
If the least significant bit portion is always calculated, then complete precision is achieved, but calculation time increases
Solution Approach 1:
By dividing the mantissa multiplier into most significant bit and least significant bit portions, the system can complete the critical high-precision calculations in the most significant bit portion quickly, while optionally skipping the less critical least significant bit portion when full precision is not required, thus reducing calculation time.
Solution Approach 2:
The system performs partial calculation by computing only the most significant bit portion when full precision is not necessary. This partial action approach achieves sufficient precision for most operations without the time penalty of calculating the complete mantissa product, including the least significant bits that often do not affect the final result.
3Use of energy by moving object
If the least significant bit portion is skipped, then energy consumption is reduced, but calculation accuracy may be compromised
Solution Approach 1:
The system dynamically determines whether to calculate the least significant bit portion based on the specific operation requirements and desired precision level. This dynamic approach allows the system to skip the least significant bit calculation when energy efficiency is prioritized and full precision is not critical, while enabling it when high accuracy is required, thus balancing energy consumption and calculation accuracy.
Solution Approach 2:
The precision parameter of the calculation is made changeable by selectively enabling or disabling the least significant bit portion of the mantissa multiplier. This parameter change allows the system to adjust its output precision based on the application requirements, energy availability, and timing constraints, optimizing the trade-off between accuracy and resource consumption.
Data Source
AI summary
A floating point multiply-add unit having inputs coupled to receive a floating point multiplier data element, a floating point multiplicand data element, and a floating point addend data element. The multiply-add unit including a mantissa multiplier to multiply a mantissa of the multiplier data element and a mantissa of the multiplicand data element to calculate a mantissa product. The mantissa multiplier including a most significant bit portion to calculate most significant bits of the mantissa product, and a least significant bit portion to calculate least significant bits of the mantissa product. The mantissa multiplier has a plurality of different possible sizes of the least significant bit portion. Energy consumption reduction logic to selectively reduce energy consumption of the least significant bit portion, but not the most significant bit portion, to cause the least significant bit portion to not calculate the least significant bits of the mantissa product.


