return of the hardware floating point elementary functions
play

Return of the hardware floating-point elementary functions J er - PowerPoint PPT Presentation

ARITH 18 June 2527, 2007 Return of the hardware floating-point elementary functions J er emie Detrey, Florent de Dinechin, and Xavier Pujol Projet Ar enaire LIP UMR CNRS ENS Lyon UCB Lyon INRIA 5668


  1. ARITH 18 – June 25–27, 2007 Return of the hardware floating-point elementary functions J´ er´ emie Detrey, Florent de Dinechin, and Xavier Pujol Projet Ar´ enaire – LIP UMR CNRS – ENS Lyon – UCB Lyon – INRIA 5668 http://www.ens-lyon.fr/LIP/Arenaire/ CENTRE NATIONAL� DE LA RECHERCHE� SCIENTIFIQUE ECOLE NORMALE SUPERIEURE DE LYON

  2. 1 Outline of the talk ◮ Context ◮ Double-precision exponential ◮ Results ◮ Conclusion J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 1 / 22

  3. 2 Outline of the talk ◮ Context ◮ Double-precision exponential ◮ Results ◮ Conclusion J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 2 / 22

  4. 3 A long time ago... (in a galaxy not so far away) ◮ a bit of paleo-bibliography J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 3 / 22

  5. 3 A long time ago... (in a galaxy not so far away) ◮ a bit of paleo-bibliography • M. D. Ercegovac (IEEE TC, 1975) Radix-16 evaluation of certain elementary functions. • G. Paul and M. W. Wilson (ACM TOMS, 1976) Should the elementary functions be incorporated into computer instruction sets? • C. Wrathall and T. C. Chen. (ARITH 4, 1978) Convergence guarantee and improvements for a hardware exponential and logarithm evaluation scheme. • P. Farmwald (ARITH 5, 1981) High-bandwidth evaluation of elementary functions. • M. Cosnard, A. Guyot, B. Hochet, J.-M. Muller, H. Ouaouicha, P. Paul, and E. Zysmann (ARITH 8, 1987) The FELIN arithmetic coprocessor chip. J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 3 / 22

  6. 4 FPUs strike back ◮ ... then came the floating-point unit • dedicated efficient hardware operators • only basic operations: +, − , × , ÷ and √ J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 4 / 22

  7. 4 FPUs strike back ◮ ... then came the floating-point unit • dedicated efficient hardware operators • only basic operations: +, − , × , ÷ and √ ◮ what about elementary functions? • comparatively rare operations • hardware implementation would be a waste of silicon • dedicate silicon to more useful units (ALUs, FPUs, caches) J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 4 / 22

  8. 4 FPUs strike back ◮ ... then came the floating-point unit • dedicated efficient hardware operators • only basic operations: +, − , × , ÷ and √ ◮ what about elementary functions? • comparatively rare operations • hardware implementation would be a waste of silicon • dedicate silicon to more useful units (ALUs, FPUs, caches) ◮ only software or micro-code implementations J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 4 / 22

  9. 5 FPGAs: a new hope? ◮ Field-Programmable Gate Arrays ◮ reconfigurable integrated circuits J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 5 / 22

  10. 5 FPGAs: a new hope? ◮ Field-Programmable Gate Arrays ◮ reconfigurable integrated circuits ◮ architecture based on programmable logic cells and routing resources • lower performances than ASICs • high flexibility • fine-grain parallelism • lower cost per unit J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 5 / 22

  11. 5 FPGAs: a new hope? ◮ Field-Programmable Gate Arrays ◮ reconfigurable integrated circuits ◮ architecture based on programmable logic cells and routing resources • lower performances than ASICs • high flexibility • fine-grain parallelism • lower cost per unit ◮ 1 billion transistor FPGAs: huge computational capacity ◮ many application domains: • digital signal and image processing • cryptography • bioinformatics • scientific computing • ... J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 5 / 22

  12. 6 FPGAs and arithmetic ◮ initially: LUT-based logic cells J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 6 / 22

  13. 6 FPGAs and arithmetic ◮ initially: LUT-based logic cells ◮ currently: only integer arithmetic • dedicated logic and routing for fast adders • small embedded multipliers (18 × 18 bits) • multiply-and-accumulate blocks ◮ not enough for many applications J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 6 / 22

  14. 6 FPGAs and arithmetic ◮ initially: LUT-based logic cells ◮ currently: only integer arithmetic • dedicated logic and routing for fast adders • small embedded multipliers (18 × 18 bits) • multiply-and-accumulate blocks ◮ not enough for many applications ◮ strong need for more complex operators • other operations: division, square root, elementary functions, ... • other number systems: modular arithmetic, real arithmetic, ... J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 6 / 22

  15. 6 FPGAs and arithmetic ◮ initially: LUT-based logic cells ◮ currently: only integer arithmetic • dedicated logic and routing for fast adders • small embedded multipliers (18 × 18 bits) • multiply-and-accumulate blocks ◮ not enough for many applications ◮ strong need for more complex operators • other operations: division, square root, elementary functions, ... • other number systems: modular arithmetic, real arithmetic, ... J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 6 / 22

  16. 7 FPLibrary ◮ library of portable VHDL operators for floating-point ◮ all operators are parameterized in terms of range and precision J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 7 / 22

  17. 7 FPLibrary ◮ library of portable VHDL operators for floating-point ◮ all operators are parameterized in terms of range and precision single precision double precision + / − � � � � × � � ÷ √ � � J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 7 / 22

  18. 7 FPLibrary ◮ library of portable VHDL operators for floating-point ◮ all operators are parameterized in terms of range and precision single precision double precision + / − � � � � × � � ÷ √ � � log x � e x � sin x / cos x � J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 7 / 22

  19. 7 FPLibrary ◮ library of portable VHDL operators for floating-point ◮ all operators are parameterized in terms of range and precision single precision double precision + / − � � � � × � � ÷ √ � � log x � e x � sin x / cos x � ◮ single-precision logarithm and exponential • hardware-specific algorithms • ad-hoc range reduction • table-based fixed-point evaluation • small and fast operators J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 7 / 22

  20. 7 FPLibrary ◮ library of portable VHDL operators for floating-point ◮ all operators are parameterized in terms of range and precision single precision double precision + / − � � � � × � � ÷ √ � � log x ? � e x ? � sin x / cos x � ◮ single-precision logarithm and exponential • hardware-specific algorithms • ad-hoc range reduction • table-based fixed-point evaluation • small and fast operators J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 7 / 22

  21. 8 Double precision: using the same method? ◮ range reduction and reconstruction are scalable J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 8 / 22

  22. 8 Double precision: using the same method? ◮ range reduction and reconstruction are scalable ◮ table-based method for the actual computation • exponential growth of the area • estimations w.r.t. single precision: 15 × larger for the exponential, and 40 × larger for the logarithm!! • unacceptable overhead for usual FPGAs ◮ need for another algorithm, suited to higher precisions J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 8 / 22

  23. 8 Double precision: using the same method? ◮ range reduction and reconstruction are scalable ◮ table-based method for the actual computation • exponential growth of the area • estimations w.r.t. single precision: 15 × larger for the exponential, and 40 × larger for the logarithm!! • unacceptable overhead for usual FPGAs ◮ need for another algorithm, suited to higher precisions ◮ iterative method • smaller architecture • higher scalability • longer critical path J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 8 / 22

  24. 9 Outline of the talk ◮ Context ◮ Double-precision exponential ◮ Results ◮ Conclusion J. Detrey, F. de Dinechin, and X. Pujol – Return of the hardware floating-point elementary functions 9 / 22

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend