Patent References Re33629 3789203 Digital polynomial function generator Numeric data processor Fraction bus for use in a numeric data processor Double precision approximate quotient network Digital tone detection and generation Method and apparatus for floating point operation Method and apparatus for computing square roots of binary numbers Method and apparatus for performing mathematical functions using polynomial approximation and a rectangular aspect ratio multiplier InventorApplicationNo. 053035 filed on 04/23/1993US Classes:708/502, Reciprocal708/446, Solving equation708/500, Evaluation of root708/605Evaluation of rootExaminersPrimary: Mai, Tan V.Attorney, Agent or FirmInternational ClassG06F 007/38AbstractA method and apparatus implement reciprocal and square root calculations using Chebyshev polynomial approximation by scaling the mantissas of IEEE floating point numbers based on splitting them into intervals, thereby allowing Chebyshev polynomials of few terms to approximate each interval and resulting in high performance. A reciprocal or square root operation is implemented in a floating point unit (FPU) of a computer having a pipelined multiply accumulate function using a Chebyshev polynomial approximation. A plurality of Chebyshev coefficients are stored in read only storage. Mantissas m of floating point numbers are scaled based on splitting the mantissas into 2n intervals i as:m'=2N×m-(2N+2i+1),where m' is the scaled mantissa and N is a power of 2. Using a predetermined number of high bits of the scaled mantissa, a set of stored coefficients are read from read only storage to compute the polynomial. The actual computation of the reciprocal or square root is performed by a plurality of multiply accumulates in the piplined function of the FPU to compute the polynomial approximation of the function f(m), which approximation differs from a correct answer by no more than 1 bit:f(m)=c0 +m'×(c1 +m'×(c2 +m'×(c3 + . . . +m'×cn))),where c0. . . cn are the set of coefficients selected by the high bits of the mantissa. In addition, the method and apparatus distinguish approximations potentially requiring one bit error correction from those known to be correct. | |