DOI QR코드

DOI QR Code

Goldschmidt's Double Precision Floating Point Reciprocal Computation using 32 bit multiplier

32 비트 곱셈기를 사용한 골드스미트 배정도실수 역수 계산기

  • Cho, Gyeong-Yeon (Department of IT Convergence and Application Engineering, Pukyong National University)
  • 조경연 (부경대학교 IT 융합응용공학과)
  • Received : 2013.11.04
  • Accepted : 2014.05.08
  • Published : 2014.05.31

Abstract

Modern graphic processors, multimedia processors and audio processors mostly use floating-point number. Meanwhile, high-level language such as C and Java uses both single-precision and double precision floating-point number. In this paper, an algorithm which computes the reciprocal of double precision floating-point number using a 32 bit multiplier is proposed. It divides the mantissa of double precision floating-point number to upper part and lower part, and calculates the reciprocal of the upper part with Goldschmidt's algorithm, and computes the reciprocal of double precision floating-point number with calculated upper part reciprocal as the initial value is proposed. Since the number of multiplications performed by the proposed algorithm is dependent on the mantissa of floating-point number, the average number of multiplications per an operation is derived from some reciprocal tables with varying sizes.

최근 그래픽 프로세서, 멀티미디어 프로세서, 음성처리 프로세서 등에서 부동소수점이 주로 사용된다. 한편 C, Java 등 고급언어에서는 단정도실수와 배정도실수를 사용하고 있다. 본 논문에서는 32비트 곱셈기를 사용하여 배정도실수의 역수를 계산하는 알고리즘을 제안한다. 배정도실수 가수를 상위 부분과 하위 부분으로 나누고, 상위 부분의 역수를 골드스미스 알고리즘으로 계산하고, 이를 초기값으로 하여 배정도실수의 역수를 계산하는 알고리즘을 제안한다. 제안한 알고리즘은 입력값에 따라서 곱셈 횟수가 다르므로, 평균 곱셈 횟수를 계산하는 방식을 유도하고, 여러 크기의 근사 역수 테이블에서 평균곱셈 횟수를 계산한다.

Keywords

References

  1. V. Lappalainen, et al, "Overview of Research Efforts on Media ISA Extension and their Usage in Video Coding," IEEE Transactions on Circuits and Systems for Video Technology, Vol. 12, pp. 660-670, 2002. DOI: http://dx.doi.org/10.1109/TCSVT.2002.800865
  2. R. B., Lee, "Multimedia extensions for general purpose processor," Signal Processing Systems, SIPS 97 - Design and Implementation., IEEE Workshop, pp. 9-23, 1997.
  3. S. F. McQuillan, J. V. McCanny, and R. Hamill, "New Algorithms and VLSI Architectures for SRT Division and Square Root," Proc. 11th IEEE Symp. Computer Arithmetic, IEEE, pp. 80-86, 1993. DOI: http://dx.doi.org/10.1109/ARITH.1993.378106
  4. D. L. Harris, S. F. Oberman, and M. A. Horowitz, "SRT Division Architectures and Implementations," Proc. 13th IEEE Symp. Computer Arithmetic, Jul. 1997. DOI: http://dx.doi.org/10.1109/ARITH.1997.614875
  5. W. F. Wong, et al, " Fast Hardware-Based Algorithms for Elementary FUnction Computations Using Rectangular Multiplier," IEEE Transactions on Computers, Vol. 43, No. 3, pp. 278-294, Mar. 1994. https://doi.org/10.1109/12.272429
  6. T. Brightman, "Advancing the standard in floating point performance," High Perform., Syst., pp 59-64. Nov. 1989.
  7. Metin Mete Ozbilen, Mustafa Gok, "A Single/Double Precision Floating-Point Reciprocal Unit Design for Multimedia Applications," International Conference on Electrical and Electronics Engineering, 2009, Vol. 2, pp 352-356, Nov. 2009.
  8. Sung-Gi Kim, Hing-Bok Song, and Gyeong-Yeon Cho, "A Variable Latency Goldschmidt's Floating Point Number Divider," Journal of the Korea Institute of Maritime Information and Communication Sciences Vol. 9, No. 2, pp. 380-389, Feb. 2005.
  9. IEEE, IEEE Standard for Binary Floating-Point Arithmetic, ANSI/IEEE Standard, Std. 754-1985.
  10. Secure Hash Standards, Federal Information Processing Standards Publication 180-3, http://www.itl.nist.gov/fipspubs, Oct. 2008.
  11. D. DasSarma and D. Matula, "Measuring and Accuracy of ROM Reciprocal Tables," IEEE Transactions on Computer, Vol.43, No. 8, pp. 932-930, Aug. 1994. DOI: http://dx.doi.org/10.1109/12.295855
  12. Dimitri Tan, et al, "Low-Power Multiple-Precision Iterative Floating-Point Multiplier with SIMD Support," IEEE Transactions on Computers, Vol. 58, No. 2, pp. 175-187, Feb. 2009. DOI: http://dx.doi.org/10.1109/TC.2008.203
  13. Michael J. Schulte, et al, "Floating-Point Division Algorithms for an x86 Microprocessor with a Rectangular Multiplier," Proceeding IEEE International Conference Computer Design(ICCD'07), pp. 304-310, Oct. 2007.