• Oscar GustafssonEmail author
  • Lars Wanhammar


In this chapter fundamentals of arithmetic operations and number representations used in DSP systems are discussed. Different relevant number systems are outlined with a focus on fixed-point representations. Structures for accelerating the carry-propagation of addition are discussed, as well as multi-operand addition. For multiplication, different schemes for generating and accumulating partial products are presented. In addition to that, optimization for constant coefficient multiplication is discussed. Division and square-rooting are also briefly outlined. Furthermore, floating-point arithmetic and the IEEE 754 floating-point arithmetic standard are presented. Finally, some methods for computing elementary functions, e.g., trigonometric functions, are presented.


  1. 1.
    IEEE standard for floating-point arithmetic (2008)Google Scholar
  2. 2.
    Baugh, C.R., Wooley, B.A.: A two’s complement parallel array multiplication algorithm C-22(12), 1045–1047 (1973)Google Scholar
  3. 3.
    Bickerstaff, K.C., Schulte, M.J., Swartzlander Earl E., J.: Parallel reduced area multipliers. J. Signal Process. Syst. 9(3), 181 (1995)CrossRefGoogle Scholar
  4. 4.
    Brent, R.P., Kung, H.T.: A regular layout for parallel adders C-31(3), 260–264 (1982)Google Scholar
  5. 5.
    Chan, S.C., Yiu, P.M.: An efficient multiplierless approximation of the fast Fourier transform using sum-of-powers-of-two (SOPOT) coefficients 9(10), 322–325 (2002)Google Scholar
  6. 6.
    Claasen, T., Mecklenbrauker, W., Peek, J.: Effects of quantization and overflow in recursive digital filters 24(6), 517–529 (1976)Google Scholar
  7. 7.
    Croisier, A., Esteban, D., Levilion, M., Riso, V.: Digital filter for PCM encoded signals (1973). US Patent 3,777,130Google Scholar
  8. 8.
    Dadda, L.: Some schemes for parallel multipliers. Alta Frequenza 34(5), 349–356 (1965)Google Scholar
  9. 9.
    de Dinechin, F., Tisserand, A.: Multipartite table methods 54(3), 319–330 (2005)Google Scholar
  10. 10.
    Ercegovac, M.D., Lang, T.: On-the-fly conversion of redundant into conventional representations C-36(7), 895–897 (1987)Google Scholar
  11. 11.
    Ercegovac, M.D., Lang, T.: Division and square root: digit-recurrence algorithms and implementations. Kluwer Academic Publishers (1994)Google Scholar
  12. 12.
    Ercegovac, M.D., Lang, T.: Digital arithmetic. Elsevier (2004)Google Scholar
  13. 13.
    Eriksson, H., Larsson-Edefors, P., Sheeran, M., Sjalander, M., Johansson, D., Scholin, M.: Multiplier reduction tree with logarithmic logic depth and regular connectivity. In: Proc. IEEE Int. Symp. Circuits Syst., pp. 4–8 (2006)Google Scholar
  14. 14.
    Fettweis, A., Meerkotter, K.: On parasitic oscillations in digital filters under looped conditions 24(9), 475–481 (1977)Google Scholar
  15. 15.
    Gustafsson, O.: A difference based adder graph heuristic for multiple constant multiplication problems. In: Proc. IEEE Int. Symp. Circuits Syst., pp. 1097–1100 (2007)Google Scholar
  16. 16.
    Gustafsson, O.: Lower bounds for constant multiplication problems 54(11), 974–978 (2007)Google Scholar
  17. 17.
    Gustafsson, O., Dempster, A.G., Johansson, K., Macleod, M.D., Wanhammar, L.: Simplified design of constant coefficient multipliers. Circuits Syst. Signal Process. 25(2), 225–251 (2006)MathSciNetCrossRefGoogle Scholar
  18. 18.
    Gustafsson, O., Johansson, K.: An empirical study on standard cell synthesis of elementary function lookup tables. In: Proc. Asilomar Conf. Signals Syst. Comput., pp. 1810–1813 (2008)Google Scholar
  19. 19.
    Gustafsson, O., Wanhammar, L.: Low-complexity and high-speed constant multiplications for digital filters using carry-save arithmetic. In: Digital Filters. InTech (2011)Google Scholar
  20. 20.
    Harris, D.: A taxonomy of parallel prefix networks. In: Proc. Asilomar Conf. Signals Syst. Comput., vol. 2, pp. 2213–2217 Vol.2 (2003)Google Scholar
  21. 21.
    Hartley, R.I.: Subexpression sharing in filters using canonic signed digit multipliers 43(10), 677–688 (1996)Google Scholar
  22. 22.
    Johansson, K., Gustafsson, O., Wanhammar, L.: Power estimation for ripple-carry adders with correlated input data. Proc. Int. Workshop Power Timing Modeling Optimization Simulation (2004)Google Scholar
  23. 23.
    Knowles, S.: A family of adders. In: Proc. IEEE Symp. Comput. Arithmetic, pp. 277–281 (2001)Google Scholar
  24. 24.
    Kogge, P.M., Stone, H.S.: A parallel algorithm for the efficient solution of a general class of recurrence equations C-22(8), 786–793 (1973)Google Scholar
  25. 25.
    Koren, I.: Computer arithmetic algorithms. Universities Press (2002)Google Scholar
  26. 26.
    Kornerup, P., Matula, D.W.: Finite precision number systems and arithmetic, vol. 133. Cambridge University Press (2010)Google Scholar
  27. 27.
    Ladner, R.E., Fischer, M.J.: Parallel prefix computation. J. ACM 27(4), 831–838 (1980)MathSciNetCrossRefGoogle Scholar
  28. 28.
    Liang, J., Tran, T.D.: Fast multiplierless approximations of the DCT with the lifting scheme 49(12), 3032–3044 (2001)Google Scholar
  29. 29.
    Lim, Y.C.: Single-precision multiplier with reduced circuit complexity for signal processing applications 41(10), 1333–1336 (1992)Google Scholar
  30. 30.
    Lim, Y.C., Yang, R., Li, D., Song, J.: Signed power-of-two term allocation scheme for the design of digital filters 46(5), 577–584 (1999)Google Scholar
  31. 31.
    Liu, B.: Effect of finite word length on the accuracy of digital filters–a review 18(6), 670–677 (1971)Google Scholar
  32. 32.
    Liu, B., Kaneko, T.: Error analysis of digital filters realized with floating-point arithmetic 57(10), 1735–1747 (1969)Google Scholar
  33. 33.
    Macsorley, O.L.: High-speed arithmetic in binary computers. Proc. IRE 49(1), 67–91 (1961)MathSciNetCrossRefGoogle Scholar
  34. 34.
    Meher, P.K., Valls, J., Juang, T.B., Sridharan, K., Maharatna, K.: 50 years of CORDIC: Algorithms, architectures, and applications 56(9), 1893–1907 (2009)Google Scholar
  35. 35.
    Mou, Z.J., Jutand, F.: ‘overturned-stairs’ adder trees and multiplier design 41(8), 940–948 (1992)Google Scholar
  36. 36.
    Muller, J.M.: Elementary functions. Springer (2006)Google Scholar
  37. 37.
    Muller, J.M., Brisebarre, N., De Dinechin, F., Jeannerod, C.P., Lefevre, V., Melquiond, G., Revol, N., Stehlé, D., Torres, S.: Handbook of floating-point arithmetic. Springer Science & Business Media (2009)Google Scholar
  38. 38.
    Noll, T.G.: Carry-save architectures for high-speed digital signal processing. J. Signal Process. Syst. 3(1-2), 121 (1991)Google Scholar
  39. 39.
    Oklobdzija, V.G., Villeger, D., Liu, S.S.: A method for speed optimized partial product reduction and generation of fast parallel multipliers using an algorithmic approach 45(3), 294–306 (1996)Google Scholar
  40. 40.
    Omondi, A., Premkumar, B.: Residue number systems: theory and implementation. World Scientific (2007)Google Scholar
  41. 41.
    Oskuii, S.T., Kjeldsberg, P.G., Gustafsson, O.: Power optimized partial product reduction interconnect ordering in parallel multipliers. In: Proc. Norchip 2007, pp. 1–6 (2007)Google Scholar
  42. 42.
    Parhami, B.: Computer arithmetic, vol. 20. Oxford university press (2010)Google Scholar
  43. 43.
    Petra, N., Caro, D.D., Garofalo, V., Napoli, E., Strollo, A.G.M.: Truncated binary multipliers with variable correction and minimum mean square error 57(6), 1312–1325 (2010)Google Scholar
  44. 44.
    Potkonjak, M., Srivastava, M.B., Chandrakasan, A.P.: Multiple constant multiplications: efficient and versatile framework and algorithms for exploring common subexpression elimination 15(2), 151–165 (1996)Google Scholar
  45. 45.
    Puschel, M., Moura, J.M.F., Johnson, J.R., Padua, D., Veloso, M.M., Singer, B.W., Xiong, J., Franchetti, F., Gacic, A., Voronenko, Y., Chen, K., Johnson, R.W., Rizzolo, N.: Spiral: Code generation for DSP transforms 93(2), 232–275 (2005)Google Scholar
  46. 46.
    Rao, B.D.: Floating point arithmetic and digital filters 40(1), 85–95 (1992)Google Scholar
  47. 47.
    Samueli, H., Willson, A.: Nonperiodic forced overflow oscillations in digital filters 30(10), 709–722 (1983)Google Scholar
  48. 48.
    Schulte, M.J., Stine, J.E.: Approximating elementary functions with symmetric bipartite tables 48(8), 842–847 (1999)Google Scholar
  49. 49.
    Stelling, P.F., Oklobdzija, V.G.: Design strategies for optimal hybrid final adders in a parallel multiplier. J. Signal Process. Syst. 14(3), 321 (1996)Google Scholar
  50. 50.
    Timmermann, D., Hahn, H., Hosticka, B., Rix, B.: A new addition scheme and fast scaling factor compensation methods for CORDIC algorithms. Integration, the VLSI J. 11(1), 85–100 (1991)CrossRefGoogle Scholar
  51. 51.
    Volder, J.E.: The CORDIC trigonometric computing technique. IRE Trans. Electron. Comput. EC-8(3), 330–334 (1959)CrossRefGoogle Scholar
  52. 52.
    Volder, J.E.: The birth of CORDIC. J. Signal Process. Syst. 25(2), 101 (2000)Google Scholar
  53. 53.
    Voronenko, Y., Püschel, M.: Multiplierless multiple constant multiplication. ACM Trans. Algorithms 3(2), 11 (2007)MathSciNetCrossRefGoogle Scholar
  54. 54.
    Wallace, C.S.: A suggestion for a fast multiplier EC-13(1), 14–17 (1964)Google Scholar
  55. 55.
    Walther, J.S.: A unified algorithm for elementary functions. In: Proc. Spring Joint Computer Conf., pp. 379–385. ACM (1971)Google Scholar
  56. 56.
    Walther, J.S.: The story of unified CORDIC. J. Signal Process. Syst. 25(2), 107–112 (2000)MathSciNetzbMATHGoogle Scholar
  57. 57.
    Wanhammar, L.: DSP integrated circuits. Academic press (1999)Google Scholar
  58. 58.
    Zeng, B., Neuvo, Y.: Analysis of floating point roundoff errors using dummy multiplier coefficient sensitivities 38(6), 590–601 (1991)Google Scholar
  59. 59.
    Zimmermann, R.: Binary adder architectures for cell-based VLSI and their synthesis. Hartung-Gorre (1998)Google Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2019

Authors and Affiliations

  1. 1.Department of Electrical EngineeringLinköping UniversityLinköpingSweden

Personalised recommendations