Floating-Point Rounding Normalization With Direct Mantissa Overflow Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing technologies lack a direct method for converting a floating-point number with higher mantissa precision to a floating-point number with lower mantissa precision during floating-point rounding normalization, and there is no efficient way to determine if a mantissa overflow occurs during this conversion.
Innovation Solution
A method for floating-point conversion that involves determining exponent and mantissa data, padding with 1s if the exponent value is less than the mantissa bit width, performing left-shift operations, and checking for carry and overflow to achieve accurate floating-point rounding normalization without intermediate integer conversions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If floating-point rounding normalization is performed without direct conversion method, then conversion accuracy is maintained, but conversion efficiency deteriorates due to intermediate integer conversions
Solution Approach 1:
The patent extracts and eliminates the intermediate integer conversion step from the floating-point conversion process. By directly converting from high-precision floating-point to low-precision floating-point through mantissa rounding and exponent adjustment, the method removes the unnecessary intermediate representation that caused efficiency degradation while maintaining accuracy through proper carry and overflow detection.
Solution Approach 2:
The patent performs preliminary detection of carry and overflow conditions before finalizing the conversion result. By calculating the carry amount based on the relationship between exponent value and mantissa bit width, and detecting overflow through the first part of intermediate data, the method prepares the conversion in advance to ensure accuracy while enabling direct efficient conversion.
2Productivity
If direct floating-point rounding normalization is implemented, then conversion efficiency is improved, but difficulty in detecting mantissa overflow increases
Solution Approach 1:
The patent segments the mantissa data into two distinct parts: the first part corresponding to reserved bits and padding data, and the second part corresponding to the remaining mantissa bits. This segmentation enables independent analysis of each portion, making overflow detection straightforward by examining only the first part after left-shift operation, thereby reducing detection difficulty while maintaining efficiency.
Solution Approach 2:
The patent introduces an intermediate data structure that captures the result of left-shifting the concatenated padding and mantissa data. This intermediate representation serves as a mediator that makes overflow detection easier by positioning the critical bits in a predictable location, allowing simple examination of the first part of intermediate data to determine overflow conditions.
3Measurement precision
If padding data with 1s is concatenated to mantissa data, then floating-point rounding normalization accuracy is improved, but device complexity increases
Solution Approach 1:
The patent changes the parameter of padding data from variable content to fixed pattern (all 1s). By using a predetermined pattern of 1s for padding instead of dynamically generated values, the method simplifies the generation process and reduces computational complexity while maintaining rounding accuracy. The fixed pattern allows for optimized hardware implementation through simple bit-filling operations.
Data Source
AI summary
A method includes: determining the exponent data and mantissa data of the floating-point number; in response to the floating-point conversion being a floating-point rounding normalization, performing: determining, based on the exponent data and the mantissa data, the exponent value of the floating-point number; concatenating, in response to the exponent value being less than the bit width of the mantissa data, first padding data to the left of the mantissa data to determine first concatenated data; performing, based on the exponent value, a first left-shift operation on the first concatenated data to determine first intermediate data; determining, based on the exponent data and the mantissa data, a carry amount of the floating-point number; performing, in response to the carry amount of the floating-point number indicating that a carry occurs during the floating-point rounding normalization, a carry operation on a first part of the first intermediate data; determining a normalized floating-point number.


