This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
BKM: A New Hardware Algorithm for Complex Elementary Functions
August 1994 (vol. 43 no. 8)
pp. 955-963

A new algorithm for computing the complex logarithm and exponential functions is proposed. This algorithm is based on shift-and-add elementary steps, and it generalizes some algorithms by Briggs and De Lugish (1970), as well as the CORDIC algorithm. It can easily be used to compute the classical real elementary functions (sin, cos, arctan, ln, exp). This algorithm is more suitable for computations in a redundant number system than the CORDIC algorithm, since there is no scaling factor when computing trigonometric functions.

[1] T. Asada, N. Takagi, and S. Yajima, "Redundant cordic methods with a constant scale factor,"IEEE Trans. Comput., vol. 40, no. 9, pp. 989-995, Sept. 1991.
[2] A. Avizienis, "Signed-digit number representations for fast parallel arithmetic,"IRE Trans. Elect. Comput., vol. 10, pp. 389-400, 1961. Reprinted inComputer Arithmetic, vol. 2, E.E. Swartzlander, Ed. CA: IEEE Computer Society Press Tutorial, 1990.
[3] W. P. Burleson, "Polynomial evaluation in VLSI using distributed arithmetic,"IEEE Trans. Circuits and Syst., vol. 37, no. 10, 1990.
[4] T. C. Chen, "Automatic computation of logarithms, exponentials, ratios and square roots,"IBM J. Res. and Dev., vol. 16, pp. 380-388, 1972.
[5] W. Cody and W. Waite,Software Manual for the Elementary Functions. Englewood Cliffs, NJ: Prentice-Hall, 1980.
[6] J. Duprat and J. M. Muller, "Hardwired polynomial evaluation,"J. Parallel and Distrib. Comput., Special Issue onParallelism in Computer Arithmetic, vol. 5, 1988.
[7] J. Duprat and J. M. Muller, "The cordic algorithm: New results for fast VLSI implementation,"IEEE Trans. Comput., vol. 42, no. 2, pp. 168-178, Feb. 1993.
[8] M. D. Ercegovac, "A general method for evaluation of functions and computation in a digital computer," Ph.D. Thesis, Dept. of Computer Sci., Univ. of Illinois, Urbana-Champaign, 1975.
[9] M. D. Ercegovac, "A general hardware-oriented method for evaluation of functions and computations in a digital computer,"IEEE Trans. Comput., vol. C-26, no. 7, pp. 667-680, 1977.
[10] J. F. Hart,Computer Approximations. New York: Wiley, 1968.
[11] Y. H. Hu, "Cordic-based VLSI architectures for digital signal processing,"IEEE Signal Processing Mag., 1992.
[12] B. De Lugish, "A class of algorithms for automatic evaluation of functions and computations in a digital computer," Ph.D. Thesis, Dept. of Comput. Sci., Univ. of Illinois, Urbana, 1970.
[13] J. M. Muller, "Discrete basis and computation of elementary functions,"IEEE Trans. Comput., vol. C-34, no. 9, pp. 857-862, Sept. 1985.
[14] J. E. Robertson, "A new class of digital division methods,"IRE Trans. Elec. Comput., vol. EC-7, pp. 218-222, 1958. Reprinted inComputer Arithmetic, vol. 1, E.E. Swartzlander, Ed. CA: IEEE Computer Society Press Tutorial, 1990.
[15] W. H. Specker, "A class of algorithms for In(x), exp(x), sin(x), cos(x), tan-1(x) and cot-1(x),"IEEE Trans. Elect. Comput., vol. EC-14, 1965. Reprinted inComputer Arithmetic, vol. 1, E.E. Swartzlander, Ed. CA: IEEE Computer Society Press Tutorial, 1990.
[16] N. Takagi, T. Asada, and S. Yajima, "A hardware algorithm for computing sine and cosine using redundant binary representation (in Japanese),"Trans. IECE Japan, vol. J69-D, no. 6, pp. 841-847, June 1986. English translation available inSystems and Computers in Japan, vol. 18 no. 8, pp. 1-9, Aug. 1987.
[17] J. Volder, "The cordic computing technique,"IRE Trans. Elect. Comput., 1959. Reprinted inComputer Arithmetic, vol. 1, E.E. Swartzlander, Ed. CA: IEEE Computer Society Press Tutorial, 1990.
[18] J. Walther, "'A unified algorithm for elementary functions," inJoint Comput. Conf. Proc., 1971. Reprinted inComputer Arithmetic, vol. 1, E.E. Swartzlander, Ed. CA: IEEE Computer Society Press Tutorial, 1990.

Index Terms:
digital arithmetic; functions; hardware algorithm; complex elementary functions; BKM; complex logarithm; exponential functions; shift-and-add elementary steps; CORDIC algorithm; real elementary functions; redundant number system; scaling factor; trigonometric functions; logarithm function.
Citation:
J.-C. Bajard, S. Kla, J.-M. Muller, "BKM: A New Hardware Algorithm for Complex Elementary Functions," IEEE Transactions on Computers, vol. 43, no. 8, pp. 955-963, Aug. 1994, doi:10.1109/12.295857
Usage of this product signifies your acceptance of the Terms of Use.