An FPGA Implementation of the Powering Function with Single Precision Floating-Point Arithmetic ⁄

In this work we present an FPGA implementation of a single-precision ∞oating-point arithmetic powering unit. Our powering unit is based on an indirect method that transforms x y into a chain of operations involving a logarithm, a multiplication, an exponential function and dedicated logic for the case of a negative base. This approach allows to use the full input range for the base and exponent without limiting the range of the exponent as in direct methods. A tailored hardware implementation is exploited to increase the accuracy of the unit reducing the relative errors of the operations while high performance is obtained taking advantage of the FPGA capabilities for parallel architectures. A careful design of the pipeline stages of the involved operators allows a clock cycle of 201.3 MHz on a Xilinx Virtex-4 FPGA.

[1]  Florent de Dinechin,et al.  A parameterized floating-point exponential function for FPGAs , 2005, Proceedings. 2005 IEEE International Conference on Field-Programmable Technology, 2005..

[2]  Jean-Michel Muller,et al.  Elementary Functions: Algorithms and Implementation , 1997 .

[3]  Ping Tak Peter Tang Table-driven implementation of the logarithm function in IEEE floating-point arithmetic , 1990, TOMS.

[4]  Miriam Leeser,et al.  Advanced Components in the Variable Precision Floating-Point Library , 2006, 2006 14th Annual IEEE Symposium on Field-Programmable Custom Computing Machines.

[5]  Christopher C. Doss,et al.  FPGA-based implementation of a robust IEEE-754 exponential unit , 2004, 12th Annual IEEE Symposium on Field-Programmable Custom Computing Machines.

[6]  J.D. Bruguera,et al.  FPGA implementation of a faithful polynomial approximation for powering function computation , 2001, Proceedings Euromicro Symposium on Digital Systems Design.

[7]  Javier D. Bruguera,et al.  Algorithm and architecture for logarithm, exponential, and powering computation , 2004, IEEE Transactions on Computers.

[8]  Ping Tak Peter Tang Table-driven implementation of the Expm1 function in IEEE floating-point arithmetic , 1992, TOMS.