Exponent Processing Using Table Lookups on Standard Hardware
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing exponent processing systems require a large number of instructions and latency in implementation, and often rely on specialized hardware, which is not cost-effective for frequent utilization in graphics and scientific applications.
Innovation Solution
Implementing exponent processing systems that use standard programmable hardware, such as shader processing units, with optimized instruction sets and table lookups to reduce the number of instructions and eliminate the need for specialized hardware, by breaking down the fractional component of an exponential function into smaller tables and performing shift operations to extract integer and fractional parts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If polynomial evaluation method is used for exponent computation, then hardware resources are efficiently utilized using standard floating-point unit, but the number of instructions required and computational latency increase
Solution Approach 1:
The exponent computation is segmented into three component parts (first component part, second component part, third component part) that are computed separately using table lookups and then combined. This segmentation allows parallel computation of components and reduces the sequential instruction count compared to polynomial evaluation.
Solution Approach 2:
Tables containing pre-computed values for the component parts are prepared in advance. During exponent computation, these pre-computed values are retrieved via table lookups rather than computing them on-the-fly, significantly reducing computational latency while using standard hardware.
2Speed
If Taylor series approximation with dedicated hardware is used, then computation speed improves, but additional specialized components and tables are required increasing device complexity
Solution Approach 1:
The invention uses standard floating-point unit hardware that is already present in the processor for general-purpose operations. The same hardware resources are made multi-functional by implementing exponent computation through table lookups and combination operations, eliminating the need for dedicated exponentiation hardware while maintaining computational speed.
3Device complexity
If polynomial evaluation method is used, then standard floating-point unit hardware suffices, but the number of instructions required increases reducing productivity
Solution Approach 1:
The exponent is divided into component parts that can be looked up in parallel from separate tables. This segmentation transforms a single lengthy polynomial evaluation into multiple shorter table lookup operations followed by combination, reducing the total instruction count and improving throughput.
Solution Approach 2:
Pre-computed values are stored in lookup tables that can be quickly copied into registers during computation. This replaces complex real-time polynomial evaluation with simple data retrieval and combination operations, significantly improving instruction efficiency.
Data Source
AI summary
Embodiments of exponent processing systems and methods are disclosed. One method embodiment, among others, comprises performing a first table lookup using a first address to provide a first value corresponding to the first component part, setting an integer exponent to provide an integer-based value corresponding to the integer component, performing a second table lookup using a second and third address to provide a second value and a third value corresponding to the second component part and the third component part, respectively, expanding and normalizing the second and third values to provide expanded and normalized second and third values, combining the expanded and normalized second and third values to produce a first product, and computing the exponential function by combining the first value, the integer-based value, and the first product.


