Floating-Point Reciprocal Lookup With Mantissa Interpolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing technologies for floating-point numbers, particularly in pixel pipelines, face inefficiencies in computing reciprocals and inverse square roots, leading to higher processing times and resource utilization, especially in real-time graphics applications.
Innovation Solution
An arithmetic unit that converts the exponent and mantissa fields of floating-point numbers using defined rules, storing values in a table and retrieving them using approximated indexes to reduce processing complexity and improve precision, allowing for efficient computation of reciprocals and inverse square roots.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If floating-point arithmetic is used in pixel pipelines, then the ability to represent numbers with small and large absolute values with high precision is improved, but the computation speed deteriorates compared to fixed-point numbers
Solution Approach 1:
The patent pre-computes and stores reciprocal and inverse square root values in lookup tables during system initialization or manufacturing. During runtime, the pixel pipeline retrieves pre-computed values based on exponent and mantissa components, avoiding time-consuming floating-point division operations and achieving both high precision and fast computation speed.
Solution Approach 2:
The patent replaces complex floating-point arithmetic operations (division, square root) with simpler table lookup and interpolation operations. By substituting mechanical computation with data retrieval and linear interpolation, the system achieves faster execution while maintaining precision requirements for lighting computations and image processing.
2Device complexity
If conventional integer-based methods with linear interpolation are used, then hardware resource usage is minimized, but the precision and accuracy of reciprocal and inverse square root computations deteriorate
Solution Approach 1:
The patent changes the parameters used for table indexing from integer-only approaches to using actual floating-point exponent and mantissa components. This allows the lookup tables to be indexed with higher-resolution parameters, enabling more precise retrieval of reciprocal and inverse square root values while maintaining efficient hardware implementation through direct addressing.
3Measurement precision
If full floating-point arithmetic operations are implemented, then computation accuracy is improved, but the amount of arithmetic operations and processing time increases
Solution Approach 1:
The patent segments the floating-point number into exponent and mantissa fields, and separately processes these components to generate lookup table indexes. By dividing the computation into discrete segments (exponent processing, mantissa processing, table lookup, interpolation), the system avoids performing complete floating-point arithmetic operations while maintaining accuracy through structured processing of individual components.
Solution Approach 2:
The patent uses copying by retrieving pre-computed values from lookup tables that contain copied and stored reciprocal and inverse square root data. Instead of computing these values in real-time through complex arithmetic, the system copies pre-calculated results from memory, dramatically reducing processing time while maintaining the accuracy of full floating-point operations.
Data Source
AI summary
Precision of arithmetic operations on floating-point numbers is improved while also preventing an increase in the amount of processing. A second converter converts an exponent included in an exponent field according to an exponent conversion rule defined in accordance with a function. A storage stores in a table a value obtained by converting a mantissa field according to a mantissa conversion rule defined in accordance with the function. A retrieving unit derives an index of the table, by extracting the most significant 8 bits from the 23 bits constituting the mantissa field. The retrieving unit adds 1 to the mantissa field approximated by the most significant 8 bits so as to derive a second index. A deriving unit derives a tentative return value A and a tentative return value B. Further, the deriving unit interpolates between the tentative return value A and the tentative return value B so as to derive a return value of the function.


