Floating-Point Component Extraction with Significand Bit Shifting
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current processing systems face limitations in speed due to the high number of floating-point operations required to decompose floating-point numbers into their integer and fractional components, which is critical in mathematical computations like exponential and trigonometric operations.
Innovation Solution
A method that reduces the number of floating-point operations necessary to compute integer and fractional components by introducing a constant S to shift the rounded integer portion into the significand, allowing for direct extraction and reducing the number of floating-point instructions needed, thereby optimizing the computational path.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If traditional floating-point operations are used to decompose floating-point numbers into integer and fractional components, then decomposition can be achieved, but the number of floating-point operations is high, increasing computational latency and reducing processing speed
Solution Approach 1:
The patent changes the parameter representation by introducing a constant S that transforms the floating-point decomposition problem into a form where the integer portion can be directly extracted from the significand after addition, reducing the number of required floating-point operations and decreasing computational latency
Solution Approach 2:
The patent performs a preliminary addition of the constant S to the floating-point number before extraction, which pre-shifts the integer portion into the significand, allowing for direct extraction without requiring multiple sequential floating-point operations
Data Source
AI summary
A method is presented including decomposing a first value into many parts. Decomposing includes shifting (310) a rounded integer portion of the first value to generate a second value. Generating (320) a third value. Extracting (330) a plurality of significand bits from the second value to generate a fourth value. Extracting (340) a portion of bits from the fourth value to generate an integer component. Generating (350) a fifth value. Also the third value, the fifth value, and the integer component are either stored (360, 380) in a memory or transmitted to an arithmetic logical unit (ALU).


