RECURRENT ADRTTHMETICAL
COMPUTATION USING CARRY-SAVE
 Inventors: Ramesh Chandra Agarwal, Yorktown Heights; Bruce Martin Fleischer, Mt. Kisco: Fred Gehrung Gustavson,
Briarcliff Manor, all of N.Y.
 Assignee: International Business Machines
Corporation, Armonk, N.Y.
 Appl. No.: 589,770
 Filed: Jan. 22,1996
 Int Cl.6 G06F 7/38; G06F 7/52
 U.S. Cl 364/736.02; 364/760.02
 Field of Search 364/736, 754,
364/757, 758, 759, 760, 752, 753, 765
 References Cited
U.S. PATENT DOCUMENTS
4,546,446 10/1985 Machida 364/759
4,556,948 12/1985 Mercy 364/757
4,575,812 3/1986 Klocker et al 364/760
4,868,770 9/1989 Nishiyama et al 364/754
4,958,312 9/1990 Ang et al 364/754
4,970,676 11/1990 Filing 364/759
5,025,408 6/1991 Sherman 364/759
5,153,849 10/1992 Venzl et al 364/754
5,253,195 10/1993 Broker et al 364/759
5,265,043 11/1993 Nainietal 364/757
Chai, et al., "A 120 MFlops CMOS Floating-Point Processor", TRP.F. 1991 Custom Integrated Circuits Conference, pp. 15.1.1-15.1.4.
Lyu. et al., "Redundant Binary Booth Receding", 1FF.F., 1995, pp. 50-57.
Primary Examiner—Chuong Dinh Ngo
Attorney, Agent, or Firm—Whitham, Curtis & Whitham;
Stephen C. Kaufman
An arithmetic unit keeps a result in carry-save form and uses this form of the result as an input to the next iteration in recurrent computations. The full adder in the recurrent path is eliminated by implementing multiplication by Y(i), where Y(i) is available only in carry-save form. The carry-save arithmetic unit generates a plurality of partial products whose sum is the product AXB, where A is one binary input and B is either a second binary input B' or the sum C+S' of two binary inputs C and S1. A selection is made as to whether B is equal to B' or C'+S1. The plurality of partial products and an addition input Z are compressed to two partial products C and S whose sum C+S equals the sum of the plurality of partial products and Z. The partial products C and S are added to produce a binary result X equal to AxB+Z. The full adder in the recurrent path is eliminated by a feedback path which returns the partial products C and S to the inputs C and S' for a next iteration.
5 Claims, 9 Drawing Sheets