Claims
- 1. A method for performing division processing with 2 N-bit precision utilizing only N-bit precision components which perform at least multiplication processing and division processing, wherein the division function to be performed with 2 N-bit precision is expressed as: ##EQU22## (n=N, the number of digit positions in each of the selected binary numbers A, B, C and D) and wherein the answer to said division function is represented by:
- Q.sub.1 +Q.sub.2 .times.2-n
- where Q.sub.1 and Q.sub.2 are binary quotients each of N bits; the method comprising the steps of:
- approximating said binary quotient Q.sub.1, in accordance with division processing of N-bit precision, to produce a Q.sub.1 approximation which includes an error value;
- operating on said Q.sub.1 approximation in accordance with said N-bit precision division processing and in conjunction with said A, B, C and D terms so as to calculate an approximation of said quotient Q.sub.2 ; and
- generating said binary quotient Q.sub.1, from said Q.sub.1 approximation in conjunction with said A and C terms, in accordance with N-bit precision division processing.
- 2. A method as recited in claim 1, further comprising the step of
- calculating said Q.sub.2 quotient based on the value of at least the term D,
- and wherein said operating step comprises extracting the error value from said Q.sub.1 approximation, and transferring said extracted error value to the term D in said Q.sub.2 quotient, whereby said approximation of said quotient Q.sub.2 is calculated.
- 3. A method as recited in claim 1, further comprising the step of
- calculating said Q.sub.2 quotient based on the value of at last the term B,
- and wherein said operating step comprises extracting the error value from said Q.sub.1 approximation, and transferring said extracted error value to the term B in said Q.sub.2 quotient, whereby said approximation of said quotient Q.sub.2 is calculated.
- 4. A method for performing division processing with 2 N-bit precision utilizing only N-bit precision components which perform at least multiplication processing and division processing, wherein the division function to be performed with 2 N-bit precision is expressed as: ##EQU23## (n=N, the number of digit position in each of the selected binary numbers A, B, C and D) and wherein the answer to said division function is represented by:
- Q.sub.1 +Q.sub.2 .times.2-n
- where Q.sub.1 and Q.sub.2 are binary quotients each of N bits; the method comprising the steps of:
- calculating binary quotient C/A, in accordance with division processing of N-bit precision, to produce a Q.sub.1 approximation which includes an error value;
- operating on said C/A quotient in accordance with said N-bit precision division processing and in accordance with said A, B, C and D terms so as to calculate an approximation of said quotient Q.sub.2 ; and
- generating said binary quotient Q.sub.1 from said binary quotient C/A in conjunction with said A and C terms in accordance with N-bit precision division processing.
- 5. A method as recited in claim 4 utilizing a decoder circuit and an adder, wherein said step of calculating C/A includes:
- decoding the value A to define a value R.sub.0 such that the product A.times.R.sub.0 approaches a value of 1,
- determining a first error value as the error of A.times.R.sub.0 relative to said value of 1,
- processing the said first error value to derive a further term R.sub.1 where the product A.times.R.sub.0 .times.R.sub.1 more closely approaches the value of 1,
- deriving a further error value as the error of A.times.R.sub.0 .times.R.sub.1 relative to said value of 1,
- deriving successively, such further error values to define a product A.times.R.sub.0 .times.R.sub.1 .times.R.sub.2 . . . approaching the value of 1 to a desired degree, and
- performing the multiplication C.times.R.sub.0 .times.R.sub.1 .times.R.sub.2 . . . to produce the quotient C/A; and
- wherein the method includes the additional step of storing the quotient result of the operation C/A; and
- wherein said operating step comprises:
- extracting said error value from the C/A quotient by performing C-A.times.(C/A) to produce said error value included in C/A,
- transferring said error value to the term D to define a term D",
- performing the multiplication D".times.R.sub.0 .times.R.sub.1 .times.R.sub.2 . . . , determining the value BC/A.sup.2, and
- performing the operations (D"/A)-(BC/A.sup.2), whereby to derive said approximation of said quotient Q.sub.2.
- 6. A method as recited in claim 4, wherein said operating step comprises:
- extracting said error value from the C/A quotient, and transferring the error value to the term B to produce a term B",
- performing the operation B"C/A.sup.2,
- storing the resultant value of the operation B"C/A.sup.2,
- determining the value D/A, and
- performing subtraction to produce (D/A)-(B"C/A.sup.2).
- 7. A method as recited in claim 4, wherein said operating step comprises:
- extracting said error value from the C/A quotient, and transferring the error value to the term D to produce a term D",
- performing the operation BC/A.sup.2,
- storing the resultant value of the operation BC/A.sup.2,
- determining the value D"/A, and
- performing subtraction to produce (D"/A)-(BC/A.sup.2).
- 8. A system for performing division processing with 2 N-bit precision, wherein the division function to be performed with 2 N-bit precision is expressed as: ##EQU24## (n=N, the number of digit positions in each of the selected binary numbers A, B, C and D) and wherein the answer to said division function is represented by Q.sub.1 +Q.sub.2 .times.2.sup.-n, where Q.sub.1 and Q.sub.2 are each N-bit binary quotients said system comprising:
- means for division processing at least two of said selected binary numbers, in accordance with division processing of N bit precision, to produce a Q.sub.1 approximation;
- means for receiving said Q.sub.1 approximation from said division processing means and for calculating an error value relating said Q.sub.1 approximation to said Q.sub.1 quotient;
- means for storing said Q.sub.1 approximation from said division processing means and said error value from said error value calculating means;
- additional means for processing said selected binary numbers in accordance with said error value from said error value calculating means, and in accordance with division processing of N-bit precision, to produce an approximation of said Q.sub.2 quotient; and
- further means for generating said binary quotient Q.sub.1 from said Q.sub.1 approximation in conjunction with said A and C terms.
- 9. A system as recited in claim 8, wherein said Q.sub.1 approximation=C/A and said Q.sub.2 approximation=(D"/A)-(BC/A.sup.2); and said additional means for division processing comprises means for transferring said error value to D so as to define said term D".
- 10. A system as recited in claim 8, wherein said Q.sub.1 approximation=C/A and said Q.sub.2 approximation=(D/A)-(B"C/A.sup.2); and said additional means for division processing comprises means for transferring said error value to B so as to define the term B".
- 11. A system as recited in claim 8, wherein said Q.sub.1 approximation=C/A; and said means for division processing to produce said Q.sub.1 approximation comprises:
- means for decoding the value A to define a value R.sub.0 such that the product A.times.R.sub.0 approaches a value of 1;
- means for determining a first error value as the error of A.times.R.sub.0 with respect to said value of 1;
- means for processing said first error value from said first error value determining means to derive a further term R.sub.1 where the product A.times.R.sub.0 .times.R.sub.1 more closely approaches the value of 1;
- means for determining a further error value as the error of A.times.R.sub.0 .times.R.sub.1 with respect to said value of 1;
- means for successively deriving such further error values to define a product A.times.R.sub.0 .times.R.sub.1 .times.R.sub.2 . . . approaching the value of 1 to a desired degree; and
- means for performing the multiplication C.times.R.sub.0 .times.R.sub.1 .times.R.sub.2 . . . to produce the quotient C/A and said error value.
- 12. A system as recited in claim 11, wherein said additional means for processing said selected binary numbers comprises:
- means for transferring said error value to the binary number D, thereby defining a term D";
- means for performing the multiplication D".times.R.sub.0 .times.R.sub.1 .times.R.sub.2 . . . to obtain D"/A;
- means for determining the value BC/A.sup.2 ; and
- means for performing the operation D"/A-BC/A.sup.2 to obtain the approximation of Q.sub.2.
- 13. A system as recited in claim 11, wherein said additional means for processing said selected binary numbers comprises:
- means for transferring said error value to the binary number B, thereby defining a term B";
- means for performing the multiplication D.times.R.sub.0 .times.R.sub.1 .times.R.sub.2 . . . to obtain D/A;
- means for determining the value B"C/A.sup.2 ; and
- means for performing the operating D/A-B"C/A.sup.2 to obtain the approximation of Q.sub.2.
Priority Claims (1)
Number |
Date |
Country |
Kind |
49-61510 |
May 1974 |
JPX |
|
CROSS REFERENCE TO RELATED APPLICATION:
This is a continuation-in-part of U.S. application, Ser. No. 816,799, filed on July 18, 1977, now abandoned, which is a continuation of U.S. application, Ser. No. 582,362, filed on May 30, 1975, now abandoned.
US Referenced Citations (4)
Number |
Name |
Date |
Kind |
3389379 |
Erickson et al. |
Jun 1968 |
|
3591787 |
Freiman et al. |
Jul 1971 |
|
3777132 |
Bennett, Jr. |
Dec 1973 |
|
3787673 |
Watson et al. |
Jan 1974 |
|
Non-Patent Literature Citations (2)
Entry |
Allen et al. "Double Precision Arithmetic" IBM Tech. Disclosure Bulletin vol. 5, No. 1, Jun. 1962, pp. 36-37. |
Mifsud "A Multiple-Precision Division Algorithm" Communications of the ACM vol. 13, No. 11, Nov. 1970, pp. 666-668. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
582362 |
May 1975 |
|
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
816799 |
Jul 1977 |
|