Patent US2852726A successfully refreshed from Google Patents.
Patent US2629669A successfully refreshed from Google Patents.
Patent US4994996A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4994996A Expired / Lapsed US ⏱️ 0.0 years remaining

Pipelined floating point adder for digital computer

Assignee: Hewlett Packard Development Co LP
•
Filing: 1989-02-03
•
Granted: 1991-02-19
•
Expires: 2009-02-03
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system for subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor by aligning the two fractions for substraction; arbitrarily designating the fraction of one of the two floating-point numbers as the subtrahend, and producing the complement of that designated fraction; adding that complement to the other fraction, normalizing the result; determining whether the result is negative and, if it is, producing the complement of the normalized result; and selecting the larger of the exponents of the two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of the result. The preferred system produces a sticky bit signal by aligning the two fractions for subtraction by shifting one of the two fractions to the right; determining the number of consecutive zeros in the one fraction, prior to the shifting thereof, beginning at the least significant bit position; comparing the number of positions the one fraction is shifted in the aligning step, with the number of consecutive zeros in the one fraction; and producing a sticky bit signal when the number of consecutive zeros is less than the number of positions the one fraction is shifted in the aligning step, the sticky bit signal indicating the truncation of at least one set bit during the aligning step.

Inventors

  • 👤 Tryggve Fossum
  • 👤 William R. Grundmann
  • 👤 Muhammad S. Hag

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 05:12
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/38; G06F7/48; G06F7/483; G06F7/485; G06F7/499; G06F7/49936; G06F7/49942; G06F7/49947; G06F7/49952

Claims Analysis

Total Claims: 41
Claim 1
Independent Claim 114 words
A method of subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor in a digital computer, each of said numbers having a fraction, an exponent and a sign, said method comprising the steps of aligning the two fractions for subtraction, arbitrarily designating the fraction of one of the two floating-point numbers as the subtrahend, subtracting the designated fraction from the other fraction to obtain a corresponding difference, and normalizing said difference, determining whether said difference is negative and, when it is, complementing the normalized difference, and selecting the larger of the exponents of said two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of said difference.
Claim 2
Independent Claim 114 words
A method of subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor in a digital computer, each of said numbers having a fraction, an exponent and a sign, said method comprising the steps of aligning the two fractions for subtraction, arbitrarily designating the fraction of one of the two floating-point numbers as the subtrahend, subtracting the designated fraction from the other fraction to obtain a corresponding difference, and normalizing said difference, determining whether said difference is negative and, when it is, complementing the normalized difference, and selecting the larger of the exponents of said two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of said difference.
Claim 3
Dependent Claim 38 words
The method of claim 1 wherein said aligning step shifts to the right the fraction associated with the smaller exponent, and the shift is a number of bit positions equal to the numerical difference between the two exponents.
Claim 4
Dependent Claim 39 words
The method of claim 1 wherein said subtracting step is carried out in an adder that has two inputs and always receives at a preselected one of said two inputs the fraction which is not designated as the subtrahend.
Claim 5
Dependent Claim 27 words
The method of claim 1 wherein said step of determining whether said result is negative comprises detecting when the most significant bit of said difference is set.
Claim 6
Dependent Claim 33 words
The method of claim 1 which includes the step of rounding said normalized difference by adding thereto a rounding constant, and said complementing of said normalized difference is performed during said rounding step.
Claim 7
Dependent Claim 32 words
The method of claim 5 wherein the complementing of said normalized difference is performed by an adder/subtractor that adds a rounding constant, and adds a carry-in bit when said difference is negative.
Claim 8
Dependent Claim 118 words
The method of claim 1 wherein said aligning step comprises shifting one of the two fractions to the right, and which includes the steps of determining the number of consecutive zeros in said one fraction, prior to the shifting thereof, beginning at the least significant bit position, comparing (1) the number of positions said one fraction is shifted in the aligning step, with (2) said number of consecutive zeros in said one fraction, and producing a sticky bit signal when said number of consecutive zeros is less than the number of positions said one fraction is shifted in the aligning step, said sticky bit signal indicating the truncation of at least one set bit during said aligning step.
Claim 9
Dependent Claim 45 words
The method of claim 7 which includes the step of preventing a carry-in during said subtracting of said designated fraction in response to the production of a sticky bit signal when the fraction shifted during said aligning step is the fraction designated as said subtrahend.
Claim 10
Dependent Claim 54 words
The method of claim 7 which includes the steps of rounding said normalized difference by adding thereto a rounding constant, and preventing a carry-in during said rounding step in response to the production of a sticky bit signal when the fraction shifted during said aligning step is not the fraction designated as said subtrahend.
Claim 11
Independent Claim 176 words
A method of subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor in a digital computer, each of said numbers having a fraction, an exponent and a sign, the exponent of one of said numbers being smaller than the exponent of the other of said numbers, said method comprising the steps of aligning the two fractions for subtraction by shifting one of the two fractions to the right, said one of the two fractions being the fraction associated with the smaller exponent, determining the number of consecutive zeros in said one fraction, prior to the shifting thereof, beginning at the least significant bit position, comparing (1) the number of positions said one fraction is shifted in the aligning step, with (2) said number of consecutive zeros in said one fraction, and producing a sticky bit signal when said number of consecutive zeros is less than the number of positions said one fraction is shifted in the aligning step, said sticky bit signal indicating the truncation of at least one set bit during said aligning step.
Claim 12
Independent Claim 176 words
A method of subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor in a digital computer, each of said numbers having a fraction, an exponent and a sign, the exponent of one of said numbers being smaller than the exponent of the other of said numbers, said method comprising the steps of aligning the two fractions for subtraction by shifting one of the two fractions to the right, said one of the two fractions being the fraction associated with the smaller exponent, determining the number of consecutive zeros in said one fraction, prior to the shifting thereof, beginning at the least significant bit position, comparing (1) the number of positions said one fraction is shifted in the aligning step, with (2) said number of consecutive zeros in said one fraction, and producing a sticky bit signal when said number of consecutive zeros is less than the number of positions said one fraction is shifted in the aligning step, said sticky bit signal indicating the truncation of at least one set bit during said aligning step.
Claim 13
Dependent Claim 32 words
The method of claim 10 wherein the number of positions said one fraction is shifted in said aligning step is equal to the numerical difference between the exponents of said two numbers.
Claim 14
Independent Claim 167 words
A method of subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor in a digital computer, each of said numbers having a fraction, an exponent and a sign, said method comprising the steps of aligning the two fractions for subtraction by shifting to the right the fraction associated with the smaller exponent, by a number of bit positions equal to the numerical difference between the two exponents, subtracting one of said fractions from the other of said fractions, after said fractions have been aligned for subtraction, in an adder/subtractor that receives the two fractions at two inputs, the fraction received at a preselected one of said two inputs always being the fraction designated as the subtrahend, normalizing the result produced by the subtraction step, determining whether said result is negative and, when it is, complementing the normalized result, and selecting the larger of the exponents of said two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of said result.
Claim 15
Independent Claim 167 words
A method of subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor in a digital computer, each of said numbers having a fraction, an exponent and a sign, said method comprising the steps of aligning the two fractions for subtraction by shifting to the right the fraction associated with the smaller exponent, by a number of bit positions equal to the numerical difference between the two exponents, subtracting one of said fractions from the other of said fractions, after said fractions have been aligned for subtraction, in an adder/subtractor that receives the two fractions at two inputs, the fraction received at a preselected one of said two inputs always being the fraction designated as the subtrahend, normalizing the result produced by the subtraction step, determining whether said result is negative and, when it is, complementing the normalized result, and selecting the larger of the exponents of said two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of said result.
Claim 16
Dependent Claim 54 words
The method of claim 12 wherein the fraction received at said preselected input is selectively complemented in response to the exclusive ORing of a signal representing the sign of one of said numbers, a signal representing the sign of the other of said numbers, and a signal commanding a subtraction of said two numbers.
Claim 17
Dependent Claim 27 words
The method of claim 12 wherein said step of determining whether said result is negative comprises detecting when the most significant bit of said result is set.
Claim 18
Dependent Claim 44 words
The method of claim 12 which includes the step of rounding said normalized result by adding thereto a rounding constant, and said complementing of said normalized result is performed during said rounding step by an adder/subtractor which performs the adding of the rounding constant.
Claim 19
Dependent Claim 31 words
The method of claim 15 wherein said complementing of said normalized result is performed in response to detection of a set bit in the most significant bit position of said result.
Claim 20
Dependent Claim 103 words
The method of claim 12 which includes the steps of determining the number of consecutive zeros in said one fraction, prior to the shifting thereof, beginning at the least significant bit position, comparing (1) the number of positions said one fraction is shifted in the aligning step, with (2) said number of consecutive zeros in said one fraction, and producing a sticky bit signal when said number of consecutive zeros is less than the number of positions said one fraction is shifted in the aligning step, said sticky bit signal indicating the truncation of at least one set bit during said aligning step.
Claim 21
Dependent Claim 54 words
The method of claim 17 which includes the steps of rounding said normalized result by adding thereto a rounding constant, and preventing a carry-in during said rounding step in response to the production of a sticky bit signal when the fraction shifted during said aligning step is not the fraction designated as said subtrahend.
Claim 22
Dependent Claim 42 words
The method of claim 12 which includes the step of preventing a carry-in during said subtracting step in response to the production of a sticky bit signal when the fraction shifted during said aligning step is the fraction designated as said subtrahend.
Claim 23
Dependent Claim 155 words
A pipelined floating-point adder/subtractor for subtracting two floating-point binary numbers in a digital computer, each of said numbers having a fraction, an exponent and a sign, said adder/subtractor comprising means for aligning the two fractions for subtraction, a complementing unit for selectively complementing one of the fractions of the two floating point numbers arbitrarily designated as the subtrahend, an adder having two inputs, one of said inputs being connected to an output of said complementing unit, and the other of said inputs receiving the one of the two fractions which is not designated as the subtrahend, normalizing means for normalizing the result produced by said adder, means for determining whether said result is negative and, when it is, complementing said normalized result, and an exponent processing unit for selecting the larger of the exponents of said two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of said result.
Claim 24
Dependent Claim 155 words
A pipelined floating-point adder/subtractor for subtracting two floating-point binary numbers in a digital computer, each of said numbers having a fraction, an exponent and a sign, said adder/subtractor comprising means for aligning the two fractions for subtraction, a complementing unit for selectively complementing one of the fractions of the two floating point numbers arbitrarily designated as the subtrahend, an adder having two inputs, one of said inputs being connected to an output of said complementing unit, and the other of said inputs receiving the one of the two fractions which is not designated as the subtrahend, normalizing means for normalizing the result produced by said adder, means for determining whether said result is negative and, when it is, complementing said normalized result, and an exponent processing unit for selecting the larger of the exponents of said two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of said result.
Claim 25
Dependent Claim 25 words
The pipelined floating-point adder/subtractor of claim 20 wherein the complement of the designated fraction is produced after said alignment of the two fractions for subtraction.
Claim 26
Dependent Claim 40 words
The pipelined floating-point adder/subtractor of claim 20 wherein said aligning means shifts to the right the fraction associated with the smaller exponent, and the shift is a number of bit positions equal to the numerical difference between the two exponents.
Claim 27
Dependent Claim 56 words
The pipelined floating-point adder/subtractor of claim 22 which includes means for the exclusive ORing of a signal representing the sign of one of said numbers, a signal representing the sign of the other of said numbers, and a signal commanding a subtraction of said two numbers, to produce a control signal for controlling said complementing unit.
Claim 28
Dependent Claim 31 words
The pipelined floating-point adder/subtractor of claim 20 wherein said means for determining whether said result is negative comprises means for detecting when the most significant bit of said result is set.
Claim 29
Dependent Claim 39 words
The pipelined floating-point adder/subtractor of claim 20 which includes means for rounding said normalized result by adding thereto a rounding constant, and wherein said means for adding thereto a rounding constant receives a carry-in for complementing aid normalized result.
Claim 30
Dependent Claim 31 words
The pipelined floating-point adder/subtractor of claim 25 wherein said means for determining whether said result is negative includes means for detecting when the most significant bit of said result is set.
Claim 31
Dependent Claim 127 words
The pipelined floating-point adder/subtractor of claim 22 wherein said aligning means comprises means for shifting one of the two fractions to the right, and which includes a trailing zeros detector for determining the number of consecutive zeros in said one fraction, prior to the shifting thereof, beginning at the least significant bit position, comparison means for comparing (1) the number of positions said one fraction is shifted in the aligning step, with (2) said number of consecutive zeros in said one fraction, and producing a sticky bit signal when said number of consecutive zeros is less than the number of positions said one fraction is shifted in the aligning step, said sticky bit signal indicating the truncation of at least one set bit during said aligning step.
Claim 32
Dependent Claim 43 words
The pipelined floating-point adder/subtractor of claim 27 which includes means for preventing a carry-in during said adding step in response to the production of a sticky bit signal when the fraction shifted during said aligning step is the fraction designated as said subtrahend.
Claim 33
Dependent Claim 57 words
The pipelined floating-point adder/subtractor of claim 27 which includes means for rounding said normalized result by adding thereto a rounding constant, and means for preventing a carry-in during said rounding step in response to the production of a sticky bit signal when the fraction shifted during said aligning step is not the fraction designated as said subtrahend.
Claim 34
Dependent Claim 177 words
A pipelined floating-point adder/subtractor for subtracting two floating-point binary numbers is a digital computer, each of said numbers having a fraction, an exponent and a sign, the exponent of one of said numbers being smaller than the exponent of the other of said numbers, said adder/subtractor comprising means for aligning the two fractions for subtraction by shifting one of the two fractions to the right, said one fraction being the fraction associated with the smaller exponent, a trailing zeros detector for determining the number of consecutive zeros in said one fraction, prior to the shifting thereof, beginning at the least significant bit position, comparison means for comparing (1) the number of positions said one fraction is shifted in the aligning step, with (2) said number of consecutive zeros in said one fraction, and producing a sticky bit signal when said number of consecutive zeros is less than the number of positions said one fraction is shifted in the aligning step, said sticky bit signal indicating the truncation of at least one set bit during said aligning step.
Claim 35
Dependent Claim 177 words
A pipelined floating-point adder/subtractor for subtracting two floating-point binary numbers is a digital computer, each of said numbers having a fraction, an exponent and a sign, the exponent of one of said numbers being smaller than the exponent of the other of said numbers, said adder/subtractor comprising means for aligning the two fractions for subtraction by shifting one of the two fractions to the right, said one fraction being the fraction associated with the smaller exponent, a trailing zeros detector for determining the number of consecutive zeros in said one fraction, prior to the shifting thereof, beginning at the least significant bit position, comparison means for comparing (1) the number of positions said one fraction is shifted in the aligning step, with (2) said number of consecutive zeros in said one fraction, and producing a sticky bit signal when said number of consecutive zeros is less than the number of positions said one fraction is shifted in the aligning step, said sticky bit signal indicating the truncation of at least one set bit during said aligning step.
Claim 36
Dependent Claim 35 words
The pipelined floating-point adder/subtractor method of claim 30 wherein the number of positions said one fraction is shifted by said aligning step is equal to the numerical difference between the exponents of said two numbers.
Claim 37
Independent Claim 150 words
A method of subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor in a digital computer, each of said numbers having a fraction, an exponent and a sign, said method comprising the steps of aligning the two fractions for subtraction, arbitrarily designating the fraction of one of the two floating-point numbers as the subtrahend, subtracting said designated fraction from the other fraction to obtain a difference, and normalizing said difference, determining whether said difference is negative and, when it is, complementing the normalized difference, rounding said normalized difference, and selecting the larger of the exponents of said two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of said difference, wherein the complementing of said normalized difference is performed during the rounding of said difference by an adder/subtractor that adds a rounding constant, and adds a carry-in bit when said difference is negative.
Claim 38
Independent Claim 150 words
A method of subtracting two floating-point binary numbers in a pipelined floating-point adder/subtractor in a digital computer, each of said numbers having a fraction, an exponent and a sign, said method comprising the steps of aligning the two fractions for subtraction, arbitrarily designating the fraction of one of the two floating-point numbers as the subtrahend, subtracting said designated fraction from the other fraction to obtain a difference, and normalizing said difference, determining whether said difference is negative and, when it is, complementing the normalized difference, rounding said normalized difference, and selecting the larger of the exponents of said two floating-point numbers, and adjusting the value of the selected exponent in accordance with the normalization of said difference, wherein the complementing of said normalized difference is performed during the rounding of said difference by an adder/subtractor that adds a rounding constant, and adds a carry-in bit when said difference is negative.
Claim 39
Dependent Claim 58 words
The method as claimed in claim 32, wherein the aligning step comprises shifting one of the two fractions, and the method further comprises preventing the adding of said carry-in bit in response to the production of a sticky bit signal when the fraction shifted during said aligning step is the fraction that is not designated as said subtrahend.
Claim 40
Dependent Claim 45 words
The method of claim 32 which includes the step of preventing a carry-in during said subtracting of said designated fraction in response to the production of a sticky bit signal when the fraction shifted during said aligning step is the fraction designated as said subtrahend.
Claim 41
Dependent Claim 117 words
The method of claim 32, wherein said aligning step comprises shifting one of the two fractions, and the method further includes the steps of determining the number of consecutive zeros in said one fraction, prior to the shifting thereof, beginning at the least significant bit position, comparing (1) the number of positions said one fraction is shifted in the aligning step, with (2) said number of consecutive zeros in said one fraction, and producing a sticky bit signal when said number of consecutive zeros is less than the number of positions said one fraction is shifted in the aligning step, said sticky bit signal indicating the truncation of at least one set bit during said aligning step.

References Cited (Backward Citations)

US4395758A Cited
US4592006A Cited
US4562553A Cited
US4796217A Cited
US4779220A Cited
US4800516A Cited
US4858165A Cited
US4864527A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-02-18 1994-08-20 1995-02-19 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-02-18 1998-08-20 1999-02-19 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-02-18 2002-08-20 2003-02-19 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag