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

High speed hardware multiplier for fixed floating point operands

Assignee: International Business Machines Corp
•
Filing: 1983-07-21
•
Granted: 1986-06-10
•
Expires: 2003-07-21
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A high speed multiplier unit for multiplying both fixed point and floating point operands is disclosed and claimed. This multiplier unit is a system level functional unit which allows floating point and fixed point operations to be performed directly. In addition to multiplication, the multiplier unit performs exponent calculation, post-normalization, and error detection. The multiplier unit also provides for overlapped loading of operands.

Inventors

  • 👤 Steven L. George
  • 👤 James L. Hefner

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 18:36
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/38; G06F7/48; G06F7/52; G06F7/523; G06F7/53; G06F7/5324; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F7/483; G06F7/487; G06F7/4876; G06F11/0703; G06F11/0751; G06F2207/00; G06F2207/38; G06F2207/3804; G06F2207/3808; G06F2207/3812; G06F2207/3816; G06F2207/3824; G06F7/499; G06F7/49905; G06F7/4991; G06F7/49936

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 296 words
A high speed digital multiplier unit for mulitplying two operands in a parallel fashion, comprising: a fixed point and floating point multiplication means further comprising: an input bus for receiving said operands; a plurality of registers coupled to said input bus for receiving at least a portion of each of two operands; a plurality of parallel multipliers, each of said plurality of parallel multipliers coupled to at least two of said plurality of registers for generating the partial produce created by multiplying the contents of at least two of said plurality of registers; an adder means coupled to each of said plurality of parallel multipliers for summing the partial products generated by each of said plurality of parallel multipliers to produce a final product; a plurality of exponent registers coupled to said input bus for receiving the sign and exponent information associated with said two operands; a logic means coupled to at least two of said plurality of exponent registers for generating a resultant sign bit; an exponent adder means coupled to at least two of said plurality of exponent registers for generating a plurality of resultant characteristic bits; an exponent assembler means coupled to said adder means, said logic means and said exponent adder means for assembling the correct sign and characteristic bits associated with said final product; a shifter means coupled to said adder means and at least one of said plurality of multipliers for performing any necessary shifts of the final product; a fraction assembler means coupled to said shifter means for assembling the correct fraction bits associated with said final product; and an output bus coupled to said exponent assembler means and said fraction assembler means for receiving the sign, characteristic and fraction bits which comprise the product of said two operands.
Claim 2
Dependent Claim 296 words
A high speed digital multiplier unit for mulitplying two operands in a parallel fashion, comprising: a fixed point and floating point multiplication means further comprising: an input bus for receiving said operands; a plurality of registers coupled to said input bus for receiving at least a portion of each of two operands; a plurality of parallel multipliers, each of said plurality of parallel multipliers coupled to at least two of said plurality of registers for generating the partial produce created by multiplying the contents of at least two of said plurality of registers; an adder means coupled to each of said plurality of parallel multipliers for summing the partial products generated by each of said plurality of parallel multipliers to produce a final product; a plurality of exponent registers coupled to said input bus for receiving the sign and exponent information associated with said two operands; a logic means coupled to at least two of said plurality of exponent registers for generating a resultant sign bit; an exponent adder means coupled to at least two of said plurality of exponent registers for generating a plurality of resultant characteristic bits; an exponent assembler means coupled to said adder means, said logic means and said exponent adder means for assembling the correct sign and characteristic bits associated with said final product; a shifter means coupled to said adder means and at least one of said plurality of multipliers for performing any necessary shifts of the final product; a fraction assembler means coupled to said shifter means for assembling the correct fraction bits associated with said final product; and an output bus coupled to said exponent assembler means and said fraction assembler means for receiving the sign, characteristic and fraction bits which comprise the product of said two operands.
Claim 3
Dependent Claim 44 words
A multiplier unit according to claim 1 further comprising: postnormalization means coupled to said adder means and said shifter means for shifting said final product and decrementing said exponent adder means when at least one zero high order digit exists in said final product.
Claim 4
Dependent Claim 41 words
A multiplier unit according to claim 1 further comprising: error detection means coupled to said plurality of register exponent adder means, said plurality of multipliers, and said adder means for detecting operand parity errors, exponent adder errors, and multiplication hardware errors.
Claim 5
Dependent Claim 94 words
A multiplier unit according to claim 1 wherein each of said plurality of registers further comprises: a first register coupled to said input bus for receiving a portion of one of said two operands; a second register coupled to said input bus for receiving a portion of the other of said two operands; and a third register coupled to said first register for receiving the contents of said first register when said second register receives said portion of the other of said two operands whereby said multiplier unit provides for overlapped loading of operands.
Claim 6
Dependent Claim 42 words
A multiplier unit according to claim 2 further comprising: error detection means coupled to said plurality of registers, said exponent adder means, said plurality of multipliers, and said adder means for detecting operand parity errors, exponent adder errors, and multiplication hardware errors.
Claim 7
Dependent Claim 94 words
A multiplier unit according to claim 2 wherein each of said plurality of registers further comprises: a first register coupled to said input bus for receiving a portion of one of said two operands; a second register coupled to said input bus for receiving a portion of the other of said two operands; and a third register coupled to said first register for receiving the contents of said first register when said second register receives said portion of the other of said two operands whereby said multiplier unit provides for overlapped loading of operands.
Claim 8
Dependent Claim 94 words
A multiplier unit according to claim 3 wherein each of said plurality of registers further comprises: a first register coupled to said input bus for receiving a portion of one of said two operands; a second register coupled to said input bus for receiving a portion of the other of said two operands; and a third register coupled to said first register for receiving the contents of said first register when said second register receives said portion of the other of said two operands whereby said multiplier unit provides for overlapped loading of operands.
Claim 9
Dependent Claim 94 words
A multiplier unit according to claim 5 wherein each of said plurality of registers further comprises: a first register coupled to said input bus for receiving a portion of one of said two operands; a second register coupled to said input bus for receiving a portion of the other of said two operands; and a third register coupled to said first register for receiving the contents of said first register when said second register receives said portion of the other of said two operands whereby said multiplier unit provides for overlapped loading of operands.
Claim 10
Dependent Claim 252 words
A high speed digital multiplier unit for multiplying first and second operands in a parallel fashion, comprising: a fixed point and floating point m:ltiplication means further comprising: an input bus; a first plurality of registers coupled to said input bus for receiving a portion of one of said two operands; a second plurality of registers coupled to said input bus for receiving a portion of the other of said two operands; a third plurality of registers each coupled to a different one of said first plurality of registers for receiving the contents of said first plurality of registers when said second plurality of registers receives said portion of the other of said two operands; a parallel multiplier means coupled to said second and third plurality of registers for generating partial products of said operands; an adder means coupled to said parallel multiplier means for summing said partial products to produce a final product; an exponent means coupled to said input bus for generating the correct sign and characteristic bits associated with said final product; a postnormalization means coupled to said adder means for shifting said final product and decrementing said exponent means when at least one zero high order digit exists in said final product and; an error detection means coupled to said first and second plurality of registers, said exponent means, said parallel multiplier means, and said adder means for detecting operand parity errors, exponent adder errors, and multiplication hardware errors whereby said multiplier unit provides for overlapped loading of operands.
Claim 11
Dependent Claim 252 words
A high speed digital multiplier unit for multiplying first and second operands in a parallel fashion, comprising: a fixed point and floating point m:ltiplication means further comprising: an input bus; a first plurality of registers coupled to said input bus for receiving a portion of one of said two operands; a second plurality of registers coupled to said input bus for receiving a portion of the other of said two operands; a third plurality of registers each coupled to a different one of said first plurality of registers for receiving the contents of said first plurality of registers when said second plurality of registers receives said portion of the other of said two operands; a parallel multiplier means coupled to said second and third plurality of registers for generating partial products of said operands; an adder means coupled to said parallel multiplier means for summing said partial products to produce a final product; an exponent means coupled to said input bus for generating the correct sign and characteristic bits associated with said final product; a postnormalization means coupled to said adder means for shifting said final product and decrementing said exponent means when at least one zero high order digit exists in said final product and; an error detection means coupled to said first and second plurality of registers, said exponent means, said parallel multiplier means, and said adder means for detecting operand parity errors, exponent adder errors, and multiplication hardware errors whereby said multiplier unit provides for overlapped loading of operands.

References Cited (Backward Citations)

US3508038A Cited
US3670956A Cited
US3873820A Cited
US4130879A Cited
US4208722A Cited
US4228520A Cited
US4338675A Cited
US4366548A Cited
US4523210A Cited
US4528640A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1989-06-09 1989-12-09 1990-06-10 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1993-06-09 1993-12-09 1994-06-10 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1997-06-09 1997-12-09 1998-06-10 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag