Novel Optimizations for Hardware Floating-Point Units in a Modern FPGA Architecture

As FPGA densities have increased, the feasibility of using floatingpoint computations on FPGAs has improved. Moreover, recent innovations in FPGA architecture have changed the design tradeoff space by providing new fixed circuit functions which may be employed in floating-point computations. These include high density multiplier blocks and shift registers. This paper evaluates the use of such blocks for the design of a family of floating-point units including add/sub, multiplier, and divider. Portions of the units that would receive the greatest benefit from the use of multipliers and shift registers are identified. It is shown that the use of these results in significant area savings compared to similar floating-point units based solely on conventional LUT/FF logic. Finally, a complete floating-point application circuit that solves a classic heat transfer problem is presented.

[1]  B.E. Nelson Configurable computing and sonar processing - architectures and implementations , 2001, Conference Record of Thirty-Fifth Asilomar Conference on Signals, Systems and Computers (Cat.No.01CH37256).

[2]  Brent E. Nelson,et al.  Gigaop DSP on FPGA , 2001, 2001 IEEE International Conference on Acoustics, Speech, and Signal Processing. Proceedings (Cat. No.01CH37221).

[3]  Peter M. Athanas,et al.  Quantitative analysis of floating point arithmetic on FPGA based custom computing machines , 1995, Proceedings IEEE Symposium on FPGAs for Custom Computing Machines.

[4]  Behrooz Parhami,et al.  Computer arithmetic - algorithms and hardware designs , 1999 .

[5]  Joseph Cavanagh,et al.  Digital Computer Arithmetic , 1983 .

[6]  Karl S. Hemmert,et al.  A CAD suite for high-performance FPGA design , 1999, Seventh Annual IEEE Symposium on Field-Programmable Custom Computing Machines (Cat. No.PR00375).

[7]  Scott McMillan,et al.  A re-evaluation of the practicality of floating-point operations on FPGAs , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[8]  Earl E. Swartzlander,et al.  Computer Arithmetic , 1980 .

[9]  Yvon Savaria,et al.  A flexible floating-point format for optimizing data-paths and operators in FPGA based DSPs , 2002, FPGA '02.