ABSTRACT
Performance of Field Programmable Gate Arrays (FPGAs) used for floating-point applications is poor due to the complexity of floating-point arithmetic. Implementing floating-point units on FPGAs consume a large amount of resources. This makes FPGAs less attractive for use in floating-point intensive applications. Therefore, there is a need for embedded floating-point units (FPUs) in FPGAs. However, if unutilized, embedded FPUs waste space on the FPGA die. To overcome this issue, we propose a flexible multi-mode embedded FPU for FPGAs that can be configured to perform a wide range of operations. The floating-point adder and multiplier in our embedded FPU can each be configured to perform one double-precision operation or two single-precision operations in parallel. To increase flexibility further, access to the large integer multiplier, adder and shifters in the FPU is provided. Benchmark circuits were implemented on both a standard Xilinx Virtex-II FPGA and on our FPGA with embedded FPU blocks. The results using our embedded FPUs showed a mean area improvement of 5.2 times and a mean delay improvement of 5.8 times for the double-precision benchmarks, and a mean area improvement of 4.4 times and a mean delay improvement of 4.2 times for the single-precision benchmarks.
- M.J. Beauchamp, S. Hauck, and K.S. Hemmert. Embedded Floating-Point Units in FPGAs. In Proceedings of the IEEE Symposium of Field Programmable Gate Arrays (FPGA'06), pages 12--20, February 2006. Google ScholarDigital Library
- C.H. Ho, P.H.W. Leong, W. Luk, S.J.E. Wilton, and S. Lopez-Buedo. Virtual Embedded Blocks: A Methodology for Evaluating Embedded Elements in FPGAs. In IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'06), pages 35--44, April 2006. Google ScholarDigital Library
- C.H. Ho, C.W. Yu, P.H.W. Leong, W. Luk, and S.J.E. Wilton. Domain-Specific Hybrid FPGA: Architecture and Floating Point Applications. In International Conference on Field Programmable Logic and Applications (FPL 2007), pages 196--201, August 2007.Google Scholar
- J. Rose. Hard vs. Soft: The Central Question of Pre-Fabricated Silicon. In Proceedings of the 34th International Symposium on Multiple-Valued Logic (ISMVL'04), 2004. Google ScholarDigital Library
- A. Akkas. Dual-Mode Quadruple Precision Floating-Point Adder. In Proceedings of the 9th Euromicro Conference on Digital System Design (DSD'06), pages 211--220, 2006. Google ScholarDigital Library
- Guy Even, Silvia M. Mueller, and Peter-Michael Seidel. A dual precision ieee floating-point multiplier. Integr. VLSI J., 29(2):167--180, 2000. Google ScholarDigital Library
- A. Akkas and M.J. Schulte. A Quadruple Precision and Dual Double Precision Floating-Point Multiplier. In Proceedings of the Euromicro Symposium on Digital System Design (DSD'03), page 76, 2003. Google ScholarDigital Library
- P.C. Diniz and G. Govindu. Design of a Field-Programmable Dual-Precision Floating-Point Arithmetic Unit. In International Conference on Field Programmable Logic and Applications (FPL'06), pages 1--4, August 2006.Google ScholarCross Ref
- IEEE standard for binary floating-point arithmetic, 1985.Google Scholar
- D.A. Patterson and J.L. Hennessy. Computer Organization and Design, chapter H.5. Morgan Kaufmann Publishers, 3rd edition, 2005. Google ScholarDigital Library
- V.G. Oklobdzija. An Algorithmic and Novel Design of a Leading Zero Detector Circuit: Comparison with Logic Synthesis. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2(1):124--128, March 1994.Google ScholarDigital Library
- H. Suzuki, H. Morinaka, H. Makino, Y. Nakase, K. Mashiko, and T. Sumi. Leading-zero anticipatory logic for high speed floating-point addition. IEEE Journal of Solid-State Circuits, 31(8):157--1164, 1996.Google ScholarCross Ref
- M. Farmwald. On the Design of High Performance Digital Arithmetic Units. PhD thesis, Stanford University, Department of Electrical Engineering, August 1981. Google ScholarDigital Library
- Michael Nicolaidis and Ricardo O. Duarte. Fault-secure parity prediction booth multipliers. IEEE Des. Test, 16(3):90--101, 1999. Google ScholarDigital Library
- Wen-Chang Yeh and Chein-Wei Jen. High-speed booth encoded parallel multiplier design. IEEE Trans. Comput., 49(7):692--701, 2000. Google ScholarDigital Library
- J.A. Hidalgo, V. Morena-Vegara, O. Oballe, and A.Ü Gago A.ÜDaza, M.J. Martin-Vázquez. A Radix-8 Multiplier Unit Design for Specific Purpose. In XIII Conference of Design of Circuits and Integrated Systems, 1998.Google Scholar
- A.D. Booth. A signed binary multiplication technique. Quarterly J. Mechanical and Applied Math, 4:236--240, 1951.Google ScholarCross Ref
- H. Sam and A. Gupta. A generalized multibit recoding of two's complement binary numbers and its proof with application in multiplier implementations. IEEE Trans. Comput., 39(8):1006--1015, 1990. Google ScholarDigital Library
- C.S. Wallace. A suggestion for a fast multiplier. IEEE Transactions on Electronic Computers, EC-13:14--17, February 1964.Google ScholarCross Ref
- V. Betz and J. Rose. VPR: A new packing, placement and routing tool for FPGA research. In the 7th International Workshop on Field-Programmable Logic and Applications, pages 213--222, 1997. Google ScholarDigital Library
Index Terms
- Flexible multi-mode embedded floating-point unit for field programmable gate arrays
Recommendations
Embedded floating-point units in FPGAs
FPGA '06: Proceedings of the 2006 ACM/SIGDA 14th international symposium on Field programmable gate arraysDue to their generic and highly programmable nature, FPGAs provide the ability to implement a wide range of applications. However, it is this nonspecific nature that has limited the use of FPGAs in scientific applications that require floating-point ...
Improving Floating-Point Performance in Less Area: Fractured Floating Point Units (FFPUs)
Embedded systems designers often use fixed-point instead of floating-point due to the performance and area overhead of floating-point units. If the range of floating-point representation is required, the system may use a software-based floating-point ...
Design space exploration of an open-source, IP-reusable, scalable floating-point engine for embedded applications
This paper describes an open-source and highly scalable floating-point unit (FPU) for embedded systems. Our FPU is fast and efficient, due to the high parallelism of its architecture: the functional units inside the datapath can operate in parallel and ...
Comments