Claims
- 1. A method for determining the product of a plurality of N numbers, each number of said N numbers having a plurality of digits hierarchically arranged from a least-significant digit to a most-significant digit, the method comprising the steps of:
- (1) providing a logic means for determining a plurality of partial products;
- (2) determining said plurality of partial products by said logic means, said plurality of partial products comprising a respective partial product for each combination of said plurality of digits of each of said N numbers, each of said partial products having a combinational significance, said combinational significance being established by said significance of each said digit of each of said N numbers of said combination involved in said respective partial product;
- (3) providing an accumulator means for selectively accumulating accumulated values, said accumulated values being selected partial products of said plurality of partial products;
- (4) providing a register means for storing information, said register means comprising a plurality of register cell means for storing said accumulated values, each of said plurality of register cell means having a hierarchical significance;
- (5) accumulating said accumulated values in specific register cell means of said plurality of register cell means according to the following relationships:
- P[m,n,o,p, . . . ] - - - [accumulates in].fwdarw.r[x];
- where:
- x=(m+n+o+p+ . . . )-(N-1);
- P[m,n,o,p, . . . ] represents said selected partial product;
- m=significance of said digit from a first number of said N numbers involved in said selected partial product, m=1,2,3, . . . ;
- n=significance of said digit from a second number of said N numbers involved in said selected partial product, n=1,2,3, . . . ;
- o=significance of said digit from a third number of said N numbers involved in said selected partial product, o=1,2,3, . . . ;
- p, . . . =significance of said digits from subsequent numbers involved in said selected partial product, p (and each subsequent significance)=1,2,3, . . . ;
- r[x]=said specified register cell means having a significance "x";
- (6) effecting a shifting accumulation operation comprising shifting specific digits of said accumulated value stored in a lesser-significant register cell means of said plurality of register cell means to the next-higher-significant register cell means of said plurality of register cell means containing an accumulated value, and adding said specific digits to said accumulated value stored in said next-higher-significant register cell means as least-significant digits; said specific digits being those digits of said accumulated value stored in said lesser-significant register cell means having higher significance than the least-significant digit of said accumulated value; said shifting accumulation operation being effected sequentially between significance-adjacent register cell means of said plurality of register cell means from the least-significant register cell means to the most-significant register cell means within said register means; and
- (7) shifting the contents of said plurality of register cell means from said plurality of register cell means.
- 2. A method for determining the product of a plurality of N numbers, each number of said N numbers having a plurality of digits hierarchically arranged from a least-significant digit to a most-significant digit, the method comprising the steps of:
- (1) determining a plurality of partial products, said plurality of partial products comprising a respective partial product for each combination of said plurality of digits of each of said N numbers, each of said partial products having a combinational significance, said combinational significance being established by said significance of each said digit of each of said N numbers of said combination involved in said respective partial product;
- (2) providing an accumulator means for selectively accumulating accumulated values, said accumulated values being selected partial products of said plurality of partial products;
- (3) providing a register means for storing information, said register means comprising a plurality of register cell means for storing said accumulated values, each of said plurality of register cell means having a hierarchical significance;
- (4) accumulating said accumulated values in specific register cell means of said plurality of register cell means according to the following relationships:
- P[m,n,o,p, . . . ]---[accumulates in].fwdarw.r[x];
- where:
- x=(m+n+o+p+ . . . )-(N-1);
- P[m,n,o,p, . . . ] represents said selected partial product;
- m=significance of said digit from a first number of said N numbers involved in said selected partial product, m=1,2,3, . . . ;
- n=significance of said digit from a second number of said N numbers involved in said selected partial product, n=1,2,3, . . . ;
- o=significance of said digit from a third number of said N numbers involved in said selected partial product, o=1,2,3, . . . ;
- p, . . . =significance of said digits from subsequent numbers involved in said selected partial product, p (and each subsequent significance)=1,2,3, . . . ;
- r[x]=said specified register cell means having a significance "x";
- (5) effecting a shifting accumulation operation comprising shifting specific digits of said accumulated value stored in a lesser-significant register cell means of said plurality of register cell means to the next-higher-significant register cell means of said plurality of register cell means containing an accumulated value, and adding said specific digits to said accumulated value stored in said next-higher-significant register cell means as least-significant digits; said specific digits being those digits of said accumulated value stored in said lesser-significant register cell means having higher significance than the least-significant digit of said accumulated value; said shifting accumulation operation being effected sequentially between significance-adjacent register cell means of said plurality of register cell means from the least-significant register cell means to the most-significant register cell means within said register means; and
- (6) shifting the contents of said plurality of register cell means from said plurality of register cell means.
- 3. A method for determining the product of a plurality of N numbers, each number of said N numbers having a plurality of digits hierarchically arranged from a least-significant digit to a most-significant digit, the method comprising the steps of:
- (1) providing a logic means for determining a plurality of partial products;
- (2) determining said plurality of partial products by said logic means, said plurality of partial products comprising a respective partial product for each combination of said plurality of digits of each of said N numbers, each of said partial products having a combinational significance, said combinational significance being established by said significance of each said digit of each of said N numbers of said combination involved in said respective partial product;
- (3) providing a register means for storing information, said register means comprising a plurality of register cell means for storing said accumulated values, each of said plurality of register cell means having a hierarchical significance;
- (4) accumulating selected partial products of said plurality of partial products in specific register cell means of said plurality of register cell means according to the following relationships:
- P[m,n,o,p, . . . ] - - - [accumulates in] - - - r[x];
- where:
- x=(m+n+o+p+ . . . )-(N-1);
- P[m,n,o,p, . . . ] represents said selected partial product;
- m=significance of said digit a first number of said N numbers involved in said selected partial product, m=1,2,3, . . . ;
- n=significance of said digit from a second number of said N numbers involved in said selected partial product, n=1,2,3, . . . ;
- o=significance of said digit from a third number of said N numbers involved in said selected partial product, o=1,2,3, . . . ;
- p, . . . =significance of said digits from subsequent numbers involved in said selected partial product, p (and each subsequent significance)=1,2,3, . . . ;
- r[x]=said specified register cell means having a significance "x";
- (5) effecting a shifting accumulation operation comprising shifting specific digits of said accumulated value stored in a lesser-significant register cell means of said plurality of register cell means to the next-higher-significant register cell means of said plurality of register cell means containing an accumulated value, and adding said specific digits to said accumulated value stored in said next-higher-significant register cell means as least-significant digits; said specific digits being those digits of said accumulated value stored in said lesser-significant register cell means having higher significance than the least-significant digit of said accumulated value; said shifting accumulation operation being effected sequentially between significance-adjacent register cell means of said plurality of register cell means from the least-significant register cell means to the most-significant register cell means within said register means; and
- (6) shifting the contents of said plurality of register cell means from said plurality of register cell means.
- 4. A method for determining the product of a plurality of N numbers, each number of said N numbers having a plurality of digits hierarchically arranged from a least-significant digit to a most-significant digit, the method comprising the steps of:
- (1) determining a plurality of partial products, said plurality of partial products comprising a respective partial product for each combination of said plurality of digits of each of said N numbers, each of said partial products having a combinational significance, said combinational significance being established by said significance of each said digit of each of said N numbers of said combination involved in said respective partial product;
- (2) providing a register means for storing information, said register means comprising a plurality of register cell means for storing said accumulated values, each of said plurality of register cell means having a hierarchical significance;
- (3) accumulating selected partial products of said plurality of partial products in specific register cell means of said plurality of register cell means according to the following relationships:
- P[m,n,o,p, . . . ]---[accumulates in].fwdarw.r[x];
- where:
- x=(m+n+o+p+ . . . )-(N-1);
- P[m,n,o,p, . . . ] represents said selected partial product;
- m=significance of said digit from a first number of said N numbers involved in said selected partial product, m=1,2,3, . . . ;
- n=significance of said digit from a second number of said N numbers involved in said selected partial product, n=1,2,3, . . . ;
- o=significance of said digit from a third number of said N numbers involved in said selected partial product, o=1,2,3, . . . ;
- p, . . . =significance of said digits from subsequent numbers involved in said selected partial product, p (and each subsequent significance)=1,2,3, . . . ;
- r[x]=said specified register cell means having a significance "x";
- (4) effecting a shifting accumulation operation comprising shifting specific digits of said accumulated value stored in a lesser-significant register cell means of said plurality of register cell means to the next-higher-significant register cell means of said plurality of register cell means containing an accumulated value, and adding said specific digits to said accumulated value stored in said next-higher-significant register cell means as least-significant digits; said specific digits being those digits of said accumulated value stored in said lesser-significant register cell means having higher significance than the least-significant digit of said accumulated value; said shifting accumulation operation being effected sequentially between significance-adjacent register cell means of said plurality of register cell means from the least-significant register cell means to the most-significant register cell means within said register means; and
- (5) shifting the contents of said plurality of register cell means from said plurality of register cell means.
- 5. An apparatus for determining the product of a plurality of N numbers, each number of said N numbers having a plurality of digits arranged from a least-significant digit to a most-significant digit; the apparatus comprising:
- a logic means for determining a plurality of partial products; said plurality of partial products comprising a respective partial product for each combination of said plurality of digits of each of said N numbers, each of said partial products having a combinational significance, said combinational significance being established by said significance of each said digit of each of said N numbers of said combination involved in said respective partial product;
- a register means coupled with said logic means for storing information; said register means comprising a plurality of register cell means for storing accumulated values, each of said plurality of register cell means having a hierarchical significance; and
- an accumulating means coupled with said logic means and with said register means for accumulating selected partial products of said plurality of partial products to produce accumulated values in specified register cells of said plurality of register cell means according to the following relationships:
- P[m,n,o,p, . . . ]---[accumulates in].fwdarw.r[x];
- where:
- x=(m+n+o+p+ . . . )-(N-1);
- P[m,n,o,p, . . . ] represents said selected partial product;
- m=significance of said digit from a first number of said N numbers involved in said selected partial product, m=1,2,3, . . . ;
- n=significance of said digit from a second number of said N numbers involved in said selected partial product, n=1,2,3, . . . ;
- o=significance of said digit from a third number of said N numbers involved in said selected partial product, o=1,2,3, . . . ;
- p, . . . =significance of said digits from subsequent numbers involved in said selected partial product, p (and each subsequent significance)=1,2,3, . . . ;
- r[x]=said specified register cell means having a significance "x";
- said register means effecting a shifting accumulation operation comprising shifting specific digits of said accumulated value stored in a lesser-significant register cell means of said plurality of register cell means to the next-higher-significant register cell means of said plurality of register cell means containing an accumulated value, and adding said specific digits to said accumulated value stored in said next-higher-significant register cell means as least-significant digits; said specific digits being those digits of said accumulated value stored in said lesser-significant register cell means having higher significance than the least-significant digit of said accumulated value; said shifting accumulation operation being effected sequentially between significance-adjacent register cell means of said plurality of register cell means from the least-significant register cell means to the most-significant register cell means within said register means.
- 6. An apparatus for determining the product of a plurality of N numbers, each number of said N numbers having a plurality of digits arranged from a least-significant digit to a most-significant digit; the apparatus comprising:
- a logic means for determining a plurality of partial products; said plurality of partial products comprising a respective partial product for each combination of said plurality of digits of each of said N numbers, each of said partial products having a combinational significance, said combinational significance being established by said significance of each said digit of each of said N numbers of said combination involved in said respective partial product; and
- a register means coupled with said logic means for storing information; said register means comprising a plurality of register cell means for storing accumulated values, each of said plurality of register cell means having a hierarchical significance;
- said register means accumulating selected partial products of said plurality of partial products to produce accumulated values in specified register cells of said plurality of register cell means according to the following relationships:
- P[m,n,o,p, . . . ]---[accumulates in].fwdarw.r[x];
- where:
- x=(m+n+o+p+ . . . )-(N-1);
- P[m,n,o,p, . . . ] represents said selected partial product;
- m=significance of said digit from a first number of said N numbers involved in said selected partial product, m=1,2,3, . . . ;
- n=significance of said digit from a second number of said N numbers involved in said selected partial product, n=1,2,3, . . . ;
- o=significance of said digit from a third number of said N numbers involved in said selected partial product, o=1,2,3, . . . ;
- p, . . . =significance of said digits from subsequent numbers involved in said selected partial product, p (and each subsequent significance)=1,2,3, . . . ;
- r[x]=said specified register cell means having a significance "x";
- said register means effecting a shifting accumulation operation comprising shifting specific digits of said accumulated value stored in a lesser-significant register cell means of said plurality of register cell means to the next-higher-significant register cell means of said plurality of register cell means containing an accumulated value, and adding said specific digits to said accumulated value stored in said next-higher-significant register cell means as least-significant digits; said specific digits being those digits of said accumulated value stored in said lesser-significant register cell means having higher significance than the least-significant digit of said accumulated value; said shifting accumulation operation being effected sequentially between significance-adjacent register cell means of said plurality of register cell means from the least-significant register cell means to the most-significant register cell means within said register means.
- 7. An apparatus for determining the product of a plurality of N numbers, each number of said N numbers having a plurality of digits arranged from a least-significant digit to a most-significant digit; the apparatus comprising:
- means for determining a plurality of partial products; said plurality of partial products comprising a respective partial product for each combination of said plurality of digits of each of said N numbers, each of said partial products having a combinational significance, said combinational significance being established by said significance of each said digit of each of said N numbers of said combination involved in said respective partial product;
- a register coupled with said means for determining a plurality of partial products for storing information; said register comprising a plurality of register cells for storing accumulated values, each of said plurality of register cells having a hierarchical significance;
- means coupled with said register and with said means for determining a plurality of partial products for accumulating selected partial products of said plurality of partial products to produce accumulated values in specified register cells of said plurality of register cells according to the following relationships:
- P[m,n,o,p, . . . ]---[accumulates in].fwdarw.r[x];
- where:
- x=(m+n+o+p+ . . . )-(N-1);
- P[m,n,o,p, . . . ] represents said selected partial product;
- m=significance of said digit from a first number of said N numbers involved in said selected partial product, m=1,2,3, . . . ;
- n=significance of said digit from a second number of said N numbers involved in said selected partial product, n=1,2,3, . . . ;
- o=significance of said digit from a third number of said N numbers involved in said selected partial product, o=1,2,3, . . . ;
- p, . . . =significance of said digits from subsequent numbers involved in said selected partial product, p (and each subsequent significance)=1,2,3, . . . ;
- r[x]=said specified register cell means having a significance "x"; and
- means coupled with said register for effecting a shifting accumulation operation comprising shifting specific digits of said accumulated value stored in a lesser-significant register cell of said plurality of register cells to the next-higher-significant register cell of said plurality of register cells containing an accumulated value, and adding said specific digits to said accumulated value stored in said next-higher-significant register cell as least-significant digits; said specific digits being those digits of said accumulated value stored in said lesser-significant register cell having higher significance than the least-significant digit of said accumulated value; said shifting accumulation operation being effected sequentially between significance-adjacent register cells of said plurality of register cells from the least-significant register cell to the most-significant register cell within said register.
Parent Case Info
This is a Continuation-in-Part of U.S. application Ser. No. 08/042,825 filed Apr. 5, 1993, which will issue as U.S. Pat. No. 5,291,430 on Mar. 1, 1994; which was a Continuation-in-Part of U.S. application Ser. No. 07/924,346, filed Aug. 13, 1992, which issued as U.S. Pat. No. 5,200,912 on Apr. 6, 1993; which was a Continuation-in-Part of U.S. application Ser. No. 07/794,995, filed November 19, 1991, which issued as U.S. Pat. No. 5,136,537 on Aug. 4, 1992.
US Referenced Citations (2)
Number |
Name |
Date |
Kind |
4573136 |
Rossiter |
Feb 1986 |
|
4809212 |
New et al. |
Feb 1989 |
|
Continuation in Parts (3)
|
Number |
Date |
Country |
Parent |
42825 |
Apr 1993 |
|
Parent |
924346 |
Aug 1992 |
|
Parent |
794995 |
Nov 1991 |
|