Skip to main content

FPGA Optimizations for a Pipelined Floating-Point Exponential Unit

  • Conference paper
Book cover Reconfigurable Computing: Architectures, Tools and Applications (ARC 2011)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6578))

Included in the following conference series:

Abstract

The large number of available DSP slices on new-generation FPGAs allows for efficient mapping and acceleration of floating-point intensive codes. Numerous scientific codes heavily rely on executing the exponential function. To this end, we present the design and implementation of a pipelined CORDIC/TD-based (COrdinate Rotation DIgital Computer/Table Driven) Exponential Approximation Unit (EAU) that will be made freely available for download (including the hardware description). The EAU supports single and double precision arithmetics and we provide appropriate configurations for Virtex2, Virtex4, and Virtex5 FPGAs. The architecture has been verified via simulations and by testing on a real FPGA. The implementation achieves the highest clock frequency reported in literature to date. Moreover, the EAU only occupies 5% of hardware resources on a medium-size FPGA such as the Virtex 5 SX95T. In addition, a general framework for safely conducting application-specific optimizations of floating-point operators on FPGAs is presented. We apply this framework to a bioinformatics application and optimize the EAU architecture using width-reduced floating-point operators and application-specific performance tuning. The optimized application-specific EAU occupies approximately 70% less hardware resources than the initial single precision implementation.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Alachiotis, N., Sotiriades, E., Dollas, A., Stamatakis, A.: Exploring FPGAs for Accelerating the Phylogenetic Likelihood Function. In: Proceedings of HICOMB 2009, Rome, Italy, pp. 1–8 (2009)

    Google Scholar 

  2. Alachiotis, N., Stamatakis, A., Sotiriades, E., Dollas, A.: A Reconfigurable Architecture for the Phylogenetic Likelihood Function. In: Proceedings of FPL 2009, Prague, pp. 674–678 (September 2009)

    Google Scholar 

  3. Stamatakis, A.: RAxML-VI-HPC: maximum likelihood-based phylogenetic analyses with thousands of taxa and mixed models. Bioinformatics 22(21), 2688–2690 (2006)

    Article  Google Scholar 

  4. Pottathuparambil, R., Sass, R.: A Parallel/Vectorized Double-Precision Exponential Core to Accelerate Computational Science Applications. In: Proceedings of FPGA 2009, Monterey, California, USA, pp. 285–285 (2009)

    Google Scholar 

  5. Pottathuparambil, R., Sass, R.: Implementation of a CORDIC-based Double-Precision Exponential Core on an FPGA. In: Proceedings of RSSI 2008, Urbana, Illinois, USA (2008)

    Google Scholar 

  6. Jamro, E., Wiatr, K., Wielgosz, M.: FPGA Implementation of 64-bit Exponential Function for HPC. In: Proceedings of FPL 2007, pp. 718–721 (2007)

    Google Scholar 

  7. Wielgosz, M., Jamro, E., Wiatr, K.: Highly Efficient Structure of 64-bit Exponential Function Implemented in FPGAs. In: Woods, R., Compton, K., Bouganis, C., Diniz, P.C. (eds.) ARC 2008. LNCS, vol. 4943, pp. 274–279. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  8. Doss, C.C., Robert, J., Riley, L.: FPGA-based Implementation of a Robust IEEE-754 Exponential Unit. In: Proceedings of FCCM 2004, pp. 229–238 (2004)

    Google Scholar 

  9. de Dinechin, F., Klein, C., Pasca, B.: Generating High-Performance Custom Floating-Point Pipelines. In: Proceedings of FPL 2009, Prague (2009)

    Google Scholar 

  10. Detrey, J., de Dinechin, F.: Parameterized Floating-Point Logarithm and Exponential Functions for FPGAs. In: Proceedings of Microprocess. Microsyst., pp. 537–545 (2007)

    Google Scholar 

  11. Alachiotis, N., Stamatakis, A.: Efficient Floating-Point Logarithm Unit for FPGAs. In: Proceedings of RAW 2010, Atlanta, GA, USA, pp. 1–8 (2010)

    Google Scholar 

  12. Volder, J.E.: The CORDIC trigonometric computing technique. Proceedings of IRE Transactions on Electronic Computers, 330–334 (1959)

    Google Scholar 

  13. Walther, J.S.: A Unified Algorithm for Elementary Functions. In: Spring Joint Computer Conference, pp. 379–385 (1971)

    Google Scholar 

  14. Burkardt, J.: CORDCIC Approximation of Elementary Functions, http://people.sc.fsu.edu/~burkardt/cpp_src/cordic/cordic.html (last visited: 17-05-2010)

  15. Xilinx: Floating Point Operator v.4.0, http://www.xilinx.com/support/documentation/ip_documentation/floating_point_ds335.pdf (last visited: 17-05-2010)

  16. Boudabous, A., Ghozzi, F., Kharrat, M., Masmoudi, N.: Implementation of Hyperbolic Functions using CORDIC Algorithm. In: Proceedings of ICM 2001, pp. 738–741 (2004)

    Google Scholar 

  17. McGrath, R.: GNU C Library, http://www.gnu.org/software/libc (last visited: 17-05-2010)

  18. Goldberg, D.: What every computer scientist should know about floating-point arithmetic. ACM Comput. Surv., 5–48 (1991)

    Google Scholar 

  19. Intel: Intel Math Kernel Library Reference Manual, http://www.intel.com/software/products/mkl/docs/WebHelp/mkl.htm

  20. Goldman, N., Anderson, J.P., Rodrigo, A.G.: Likelihood-based tests of topologies in phylogenetics. Systematic Biology 49(4), 652–670 (2000)

    Article  Google Scholar 

  21. Shimodaira, H., Hasegawa, M.: CONSEL: for assessing the confidence of phylogenetic tree selection. Bioinformatics 17(12), 1246 (2001)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Alachiotis, N., Stamatakis, A. (2011). FPGA Optimizations for a Pipelined Floating-Point Exponential Unit. In: Koch, A., Krishnamurthy, R., McAllister, J., Woods, R., El-Ghazawi, T. (eds) Reconfigurable Computing: Architectures, Tools and Applications. ARC 2011. Lecture Notes in Computer Science, vol 6578. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-19475-7_34

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-19475-7_34

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-19474-0

  • Online ISBN: 978-3-642-19475-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics