This Article 
 Bibliographic References 
 Add to: 
Hardware Efficient Algorithms for Trigonometric Functions
February 1993 (vol. 42 no. 2)
pp. 235-239

A new algorithm is presented which significantly reduces the minimum amount of logic required to calculate sine, cosine, and square root. It is derived from an old method for computing certain inverse functions which was once considered for use in software, but then abandoned because of efficiency concerns. However, when reversed and combined with a restoring square root algorithm, a unique new design emerges which performs trigonometric calculations without the use of pre-stored constants or any internal operation more complex than binary subtraction. The design has been implemented with common TTL MSI logic and is found to be reasonably fast, very accurate, and to require considerably less hardware than a comparable CORDIC algorithm.

[1] D. Quong, "Floating-pointµP implements high-speed math functions,"EDN, vol. 31, no. 3, pp. 143-150, Feb. 6, 1986.
[2] J. E. Volder, "The CORDIC trigonometric computing technique,"IRE Trans. Electron. Comput., vol. EC-8, no. 3, pp. 330-334, Sept. 1959.
[3] J. S. Walther, "A unified algorithm for elementary functions," inAFIPS Proc. SJCC, vol. 38, 1971, pp. 379-385.
[4] T. W. Curtis, P. Allison, and J. A. Howard, "A CORDIC processor for laser trimming,"IEEE Micro, vol. 6, no. 3, pp. 61-70, June 1986.
[5] G. L. Haviland and A. A. Tuszynski, "A CORDIC arithmetic processor chip,"IEEE Trans. Comput., vol. C-29, no. 2, pp. 68-79, Feb. 1980.
[6] D. R. Morrison, "A method for computing certain inverse functions,"Math. Tables and Other Aids to Comp., vol. 10, no. 56, pp. 202-208, 1956.
[7] J. H. Wensley, "A class of non-analytical iterative processes,"Comput. J., vol. 1, no. 4, pp. 163-167, Jan. 1959.
[8] M. V. Wilkes and D. J. Wheeler, "Note on 'A method for computing certain inverse functions',"Math. Tables and Other Aids to Comp., vol. 11, no. 59, p. 204, 1957.
[9] A. van Wijngaarden, "Erreurs d'arrondiment dans les calculs systématiques," in Centre National de la Recherche Scientifique, Colloques Internationaux, vol. 37, 1953, pp. 285-293.
[10] J. E. Meggitt, "Pseudo division and pseudo multiplication processes,"IBM J. Res. Develop., vol. 6, no. 2, pp. 210-226, Apr. 1962.
[11] M. R. D. Rodrigues, J. H. P. Zurawski, and J. B. Gosling, "Hardware evaluation of mathematical functions,"IEE Proc., vol. 128, pt. E, no. 4, pp. 155-164, July 1981.
[12] I. Flores,The Logic of Computer Arithmetic. Englewood Cliffs, NJ: Prentice-Hall, 1963, pp. 409-417.
[13] J. Cathey, "Integer Square Root,"Dr. Dobb's J., vol. 11, no. 8, pp. 14, 82-85, Aug. 1986.
[14] J. P. Yang, "Gate array for square-root chip meets military systems' needs,"EDN, vol. 29, no. 17, pp. 167-174, Aug. 23, 1984.
[15] P. Montuschi and M. Mezzalama, "Survey of square rooting algorithms,"IEE Proc., pt. E, vol. 137, pp. 31-40, Jan. 1990.
[16] R. E. Fowkes, "Minimal hardware algorithms for trigonometric functions," inWESCON '91 Conf. Rec., 1991, pp. 596-600.
[17] R. Vachss, "The CORDIC magnification function,"IEEE Micro, vol. 7, no. 5, pp. 83-84, Oct. 1987.
[18] R. J. Linhardt and H. S. Miller, "Digit-by-digit transcendental-function computation,"RCA Rev., vol. 30, no. 2, pp. 209-247, June 1969.
[19] J. Lygouras, "Get 16-bit resolution of sine from 1K EPROM,"Electron. Design, vol. 36, no. 11, pp. 67-68, May 25, 1989.
[20] D. G. Steer and S. R. Penstone, "Digital hardware for sine-cosine function,"IEEE Trans. Comput., vol. C-26, no. 12, pp. 1283-1286, Dec. 1977.

Index Terms:
hardware efficient algorithms; trigonometric functions; sine; cosine; square root; inverse functions; common TTL MSI logic; digital arithmetic.
R.E. Fowkes, "Hardware Efficient Algorithms for Trigonometric Functions," IEEE Transactions on Computers, vol. 42, no. 2, pp. 235-239, Feb. 1993, doi:10.1109/12.204796
Usage of this product signifies your acceptance of the Terms of Use.