IP Library Granted Patent US 7,054,898
Granted Patent B1
US 7,054,898 · App. 09/632,235 · Granted May 30, 2006

Elimination of end-around-carry critical path in floating point add/subtract execution unit

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,054,898
App. No.
09/632,235
Granted
May 30, 2006
Kind
B1
Abstract

A processor having a floating point execution unit with improved parallelism in the adder (add/subtract) unit is disclosed. A preferred aspect of the invention is a new use of the compare logic in the floating point execution unit, coupled with an end-around-carry bit value calculator, to allow the correct rounding choice of the operands to be made before the mantissa portions of the operands are subtracted (added) rather than after.

Claims (21)

1. A processor comprising:

at least one local storage designed to contain a plurality of floating point values;

at least one floating point execution unit, said floating point execution unit further including a separator configured to retrieve said plurality of floating point values from said local storage and make available a mantissa portion from and corresponding to each of said plurality of floating point values, said floating point execution unit further including at least one adder unit configured to receive said mantissas in an order and number determined by said adder unit;

a compare unit operatively coupled to said at least one local storage further comprising a separator configured to retrieve said plurality of floating point values from said local storage and make available at least a mantissa portion of each of said floating point values, and the compare unit configured to make available a carry-out bit value resulting from an addition of said mantissas portions;

an end-around-carry bit calculator unit operatively coupled to said compare unit and configured to provide a correct value of an end-around-carry calculation available as output, based on values received from said compare unit; and

a rounding calculator operatively coupled to the end-around-carry bit calculator to calculate a rounding choice upon having the adder unit complete the addition and communicating the choice to the adder unit.

2. The processor of claim 1 where said compare unit further comprises as a component contained therein said end-around-carry bit calculator unit.

3. The processor of claim 1 where said at least one floating point execution unit further comprises as a component therein said end-around-carry bit calculator unit.

4. A method for computing a floating point subtraction comprising:

(a) providing a first floating point value having a sign, an exponent, and a mantissa;

(b) providing a second floating point value having a second sign, a second exponent, and a second mantissa;

(c) performing a compare of said two floating point values and providing the output of said compare to an end-around-carry calculator unit;

(d) calculating an end-around-carry value in said end-around-carry calculator unit;

(e) sending said first and second mantissas to an adder;

(f) aligning said second mantissa to said first mantissa in said adder;

(g) starting an addition of said first mantissa and a two's compliment form of said second mantissa in said adder;

(h) providing said calculated end-around-carry value;

(i) using said end-around-carry value to calculate a Guard Round Sticky and determine a rounding choice before said addition is completed;

(j) completing said addition in said adder;

(k) using said rounding choice to choose a correct rounded answer from said addition upon having said addition is completed; and

(l) providing a final answer using said rounding choice, said first and second signs, and said first and second exponents.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037302/0633 →
MERGER AND CHANGE OF NAME Recorded Dec 14, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037280/0232 →