Table-Based Division by Small Integer Constants

  • Florent de Dinechin
  • Laurent-Stéphane Didier
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7199)

Abstract

Computing cores to be implemented on FPGAs may involve divisions by small integer constants in fixed or floating point. This article presents a family of architectures addressing this need. They are derived from a simple recurrence whose body can be implemented very efficiently as a look-up table that matches the hardware resources of the target FPGA. For instance, division of a 32-bit integer by the constant 3 may be implemented by a combinatorial circuit of 48 LUT6 on a Virtex-5. Other options are studied, including iterative implementations, and architectures based on embedded memory blocks. This technique also computes the remainder. An efficient implementation of the correctly rounded division of a floating-point constant by such a small integer is also presented.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    de Dinechin, F., Pasca, B.: Designing custom arithmetic data paths with FloPoCo. IEEE Design & Test of Computers 28(4) (August 2011)Google Scholar
  2. 2.
    Ercegovac, M.D., Lang, T.: Digital Arithmetic. Morgan Kaufmann (2003)Google Scholar
  3. 3.
    Artzy, E., Hinds, J.A., Saal, H.J.: A fast division technique for constant divisors. Communications of the ACM 19, 98–101 (1976)MathSciNetCrossRefMATHGoogle Scholar
  4. 4.
    de Dinechin, F.: Multiplication by rational constants. IEEE Transactions on Circuits and Systems II (to appear, 2012)Google Scholar
  5. 5.
    Li, S.-Y.R.: Fast constant division routines. IEEE Transactions on Computers C-34(9), 866–869 (1985)Google Scholar
  6. 6.
    Srinivasan, P., Petry, F.: Constant-division algorithms. IEE Proc. Computers and Digital Techniques 141(6), 334–340 (1994)CrossRefMATHGoogle Scholar
  7. 7.
    Doran, R.W.: Special cases of division. Journal of Universal Computer Science 1(3), 67–82 (1995)MathSciNetGoogle Scholar
  8. 8.
    Paplinski, A.: CSE2306/1308 Digital Logic Lecture Note, Lecture 8. Clayton School of Information Technology Monash University, Australia (2006)Google Scholar
  9. 9.
    Muller, J.-M., Brisebarre, N., de Dinechin, F., Jeannerod, C.-P., Lefèvre, V., Melquiond, G., Revol, N., Stehlé, D., Torres, S.: Handbook of Floating-Point Arithmetic. Birkhauser, Boston (2009)MATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Florent de Dinechin
    • 1
  • Laurent-Stéphane Didier
    • 2
  1. 1.LIPUniversité de Lyon (ENS-Lyon/CNRS/INRIA/UCBL)Lyon Cedex 07France
  2. 2.LIP6Université Pierre et Marie Curie (UPMC/CNRS)Paris Cedex 05France

Personalised recommendations