Method and apparatus for division using interpolation approximation
AssigneeHitachi, Ltd.
InventorHiraku Nakano
Life of this patent
Estimating the term…
Abstract
A divide method and a divide apparatus for use in a data processing system. The divisor and dividend are normalized in a normalization circuit. A table unit stores a plurality of approximate reciprocal divisors and differences between adjacent approximate reciprocal divisors and is addressed by the high-order bits of the normalized divisor. The approximate reciprocal divisor read out from the table unit is, in an interpolation approximation circuit, changed into an interpolation approximated approximate reciprocal divisor in accordance with a plurality of bits following the high-order bits and the difference. A multiplication unit multiplies the interpolation approximated approximate reciprocal divisor by the normalized dividend to output a quotient.
Claims8
A divide apparatus comprising:
- normalizing means for normalizing a divisor and a dividend;
- table means for storing a plurality of approximate reciprocal divisors, said table means further storing differences, corresponding to respective ones of said approximate reciprocal divisors, between said respective ones and adjacent others of said approximate reciprocal divisor, and outputting said approximate reciprocal divisor difference by using the high-order bits of the normalized divisor from said normalizing means as an address of said table means;
- interpolation approximation circuit means for outputting an approximate reciprocal divisor obtained through interpolation approximation in accordance with said approximate reciprocal divisor and difference from said table means and a plurality of bits following said high-order bits of the normalized divisor as the address of said table means;
- and
- multiplier means input with said normalized divisor and dividend and the interpolation approximated approximate reciprocal divisor from said interpolation approximation circuit means for outputting a quotient through multiplication.
A divide method for use in a data processing system which has a normalization circuit for normalizing an operand, a table unit for storing a plurality of approximate reciprocal divisors M.sub.0 and differences .DELTA., corresponding to respective ones of said approximate reciprocal divisors, between said respective ones and adjacent others of said approximate reciprocal divisors, an interpolation approximation circuit, a multiplication unit, and a partial quotient correction circuit, comprising the steps of:
- outputting a normalized divisor D.sub.0 and a normalized dividend N.sub.0 normalized both by said normalization circuit;
- addressing said table unit by the high-order bits of said normalized divisor D.sub.0 in order to access said approximate reciprocal M.sub.0 and difference .DELTA.;
- adding a difference proportionate to the value of plural bits following said high-order bits of the normalized divisor as the address of said table unit to said difference .DELTA. in order to obtain an interpolation approximated approximate reciprocal divisor M in said interpolation approximation circuit;
- multiplying in said multiplication unit said normalized divisor D.sub.0 by said interpolation approximated approximate reciprocal divisor M;
- performing 1-D.sub.0 .times.M in said multiplication unit in order to obtain A by using said D.sub.0 .times.M;
- multiplying in said multiplication unit said normalized dividend N.sub.0 by said interpolation approximated approximate reciprocal divisor M in order to obtain Q.sub.1 +N.sub.1 as a partial quotient Q.sub.1 ;
- and
- performing in said multiplication unit successive iterations of A.times.Q.sub.i-1 +N.sub.i-1 in order to obtain Q.sub.i +N.sub.i.
Dependencies are inferred from the claim text.