This Article 
 Bibliographic References 
 Add to: 
Improving Goldschmidt Division, Square Root, and Square Root Reciprocal
July 2000 (vol. 49 no. 7)
pp. 759-763

Abstract—The aim of this paper is to accelerate division, square root, and square root reciprocal computations when the Goldschmidt method is used on a pipelined multiplier. This is done by replacing the last iteration by the addition of a correcting term that can be looked up during the early iterations. We describe several variants of the Goldschmidt algorithm, assuming 4-cycle pipelined multiplier, and discuss obtained number of cycles and error achieved. Extensions to other than 4-cycle multipliers are given. If we call $G_m$ the Goldschmidt algorithm with $m$ iterations, our variants allow us to reach an accuracy that is between that of $G_3$ and that of $G_4$, with a number of cycle equal to that of $G_3$.

[1] M.A. Cornea-Hasegan, R.A. Golliver, and P. Markstein, “Correctness Proofs Outline for Newton-Raphson Based Floating-Point Divide and Square Root Algorithms,” Proc. 14th IEEE Symp. Computer Arithmetic, I. Koren and P. Kornerup, eds., pp. 86-105, Apr. 1999.
[2] D. Das Sarma and D.W. Matula, “Measuring the Accuracy of ROM Reciprocal Tables,” IEEE Trans. Computers, vol. 43, no. 8, Aug. 1994.
[3] D. DasSarma and D.W. Matula, “Faithful Bipartite ROM Reciprocal Tables,” Proc. 12th Symp. Computer Arithmetic, pp. 17-28, 1995.
[4] M.D. Ercegovac and T. Lang, Division and Square Root—Digit-Recurrence Algorithms and Implementations. Kluwer Academic, 1994.
[5] M.J. Flynn, “On Division by Functional Iteration,” IEEE Trans. Computers, vol. 19, no. 8, pp. 702-706, Aug. 1970. Reprinted in Computer Arithmetic, E.E. Swartzlander, vol. 1. Los Alamitos, Calif.: IEEE CS Press, 1990.
[6] R.E. Goldschmidt, “Applications of Division by Convergence,” MSc dissertation, Massachusetts Inst. of Tech nology, June 1964.
[7] S. Oberman and M.J. Flynn, “Implementing Division and Other Floating-Point Operations: A System Perspective,” Scientific Computing and Validated Numerics, Alefeld, Fromer, and Lang, eds., pp. 18-24, Akademie Verlag, 1996.
[8] ANSI/IEEE Std. 754-1985, Binary Floating-Point Arithmetic, IEEE Press, Piscataway, N.J., 1985 (also called ISO/IEC 559).
[9] C. Iordache and D.W. Matula, “On Infinitely Precise Rounding for Division, Square Root, Reciprocal and Square Root Reciprocal,” Proc. 14th IEEE Symp. Computer Arithmetic, I. Koren and P. Kornerup, eds., pp. 233-240, Apr. 1999.
[10] W. Kahan, “Square Root without Division,” pdf file accessible electronically, reciprt.pdf, 1999.
[11] C.V. Ramamoorthy, J.R. Goodman, and K.H. Kim, “Some Properties of Iterative Square-Rooting Methods Using High-Speed Multiplication,” IEEE Trans. Computers, vol. 21, pp. 837-847, 1972.
[12] P.W. Markstein, “Computation of Elementary Functions on the IBM RISC System/6000 Processor,” IBM J. Research and Development, vol. 34, no. 1, pp. 111-119, Jan. 1990.
[13] S.F. Oberman, “Floating Point Division and Square Root Algorithms and Implementation in the AMD-K7 Microprocessor,” Proc. 14th Symp. Computer Arithmetic (ARITH14), pp. 106-115, Apr. 1999.
[14] M. Parks, “Number-Theoretic Test Generation for Directed Roundings,” Proc. 14th IEEE Symp. Computer Arithmetic, I. Koren and P. Kornerup, eds., pp. 241-248, Apr. 1999.
[15] M.J. Schulte and K.E. Wires, “High-Speed Inverse Square Roots,” Proc. 14th IEEE Symp. Computer Arithmetic, I. Koren and P. Kornerup, eds., pp. 124-131, Apr. 1999.

Index Terms:
Division, square root, square root reciprocal, convergence division, computer arithmetic, Goldschmidt iteration.
Milos D. Ercegovac, Laurent Imbert, David W. Matula, Jean-Michel Muller, Guoheng Wei, "Improving Goldschmidt Division, Square Root, and Square Root Reciprocal," IEEE Transactions on Computers, vol. 49, no. 7, pp. 759-763, July 2000, doi:10.1109/12.863046
Usage of this product signifies your acceptance of the Terms of Use.