Iterative floating point computation using FPGA DSP blocks

This paper presents a single precision floating point unit design for multiplication and addition/subtraction using FPGA DSP blocks. The design is based around the DSP48E1 primitive found in Virtex-6 and all 7-series FPGAs from Xilinx. Since the DSP48E1 can be dynamically configured and used for many of the sub-operations involved in IEEE 754-2008 binary32 floating point multiplication and addition, we demonstrate an iterative combined operator that uses a single DSP block and minimal logic. Logic-only and fixed-configuration DSP block designs, and other state-of-the-art implementations, including the Xilinx CoreGen operators are compared to this approach. Since FPGA based systems typically run at a fraction of the maximum possible FPGA speed, and in some cases, floating point computations may not be required in every cycle, the iterative approach represents an efficient way to leverage DSP resources for what can otherwise be costly operations.

[1]  Suhaib A. Fahmy,et al.  Evaluating the efficiency of DSP Block synthesis inference from flow graphs , 2012, 22nd International Conference on Field Programmable Logic and Applications (FPL).

[2]  Seok-Bum Ko,et al.  A Study on the Floating-Point Adder in FPGAS , 2006, 2006 Canadian Conference on Electrical and Computer Engineering.

[3]  James Demmel,et al.  IEEE Standard for Floating-Point Arithmetic , 2008 .

[4]  Gregory W. Donohoe,et al.  Reconfigurable Block Floating Point Processing Elements in Virtex Platforms , 2011, 2011 International Conference on Reconfigurable Computing and FPGAs.

[5]  Florent de Dinechin,et al.  Floating-point exponential functions for DSP-enabled FPGAs , 2010, 2010 International Conference on Field-Programmable Technology.

[6]  Douglas L. Maskell,et al.  A lean FPGA soft processor built using a DSP block , 2012, FPGA '12.

[7]  Florent de Dinechin,et al.  Designing Custom Arithmetic Data Paths with FloPoCo , 2011, IEEE Design & Test of Computers.

[8]  Florent de Dinechin,et al.  When FPGAs are better at floating-point than microprocessors , 2008, FPGA '08.

[9]  Douglas L. Maskell,et al.  iDEA: A DSP block based FPGA soft processor , 2012, 2012 International Conference on Field-Programmable Technology.

[10]  Peter-Michael Seidel,et al.  On the design of fast IEEE floating-point adders , 2001, Proceedings 15th IEEE Symposium on Computer Arithmetic. ARITH-15 2001.