System and method for calculating floating point exponential values in a geometry accelerator
AssigneeHewlett-Packard Company
InventorsS Paul Tucker, Ted Rakel
Life of this patent
Estimating the term…
Loading patent…
AssigneeHewlett-Packard Company
InventorsS Paul Tucker, Ted Rakel
Estimating the term…
A novel system and method computes a floating point value of an exponential expression in the form of "a.sup.x " in a geometry accelerator. In accordance with one aspect of the invention, the method includes the steps of receiving the values "a" and x of the exponential expression, where both "a" and x are represented in floating point format. As will be appreciated by those skilled in the art, the values will by supplied by software through an appropriate graphics application program interface (API). The method utilizes a mantissa value of the floating point representation of "a" to index a first value in a first look-up table, the value being an approximation for log2(a). Then, the method multiplies the looked-up value by the value of x to obtain an intermediate result. This intermediate result is then partitioned into a fractional component and an integer component, wherein the fractional component is normalized/converted to floating point format. The method then utilizes a mantissa value of the floating point representation of the fractional component of the intermediate result to index a first value in a second look-up table, the value being an approximation for 2.sup.fract, where fract is the fractional component. Thereafter, the method computing 2.sup.integer, where integer is the integer component. This step may be directly computed by the math core of the geometry accelerator, since it is an integer exponent. Finally, the method multiplies the results of steps that compute the 2.sup.fract and 2.sup.integer values to obtain a final value. This final value is a close approximation of the exponential expression a.sup.x.
A method for computing a floating point value of an exponential expression in the form of a.sup.x in a geometry accelerator, comprising the steps of:
A system for computing a floating point value of an exponential expression in the form of a.sup.x in a geometry accelerator, comprising the steps of:
A method for calculating a floating point value of an exponential expression in the form of a.sup.x, comprising the steps of:
A computer readable storage medium containing program code for calculating a floating point value of an exponential expression in the form of a.sup.x, the program code defining the steps of:
Dependencies are inferred from the claim text.