US4680727A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Complex multiplier for binary two's complement numbers
Assignee: Boeing Co
•
Filing: 1984-09-24
•
Granted: 1987-07-14
•
Expires: 2004-09-24
Abstract
Abstract A method and apparatus for multiplying two digital pairings representing complex numbers is described. The method includes preloading a memory with contents based on the second complex combination and the basis vector, and repeatedly addressing the memory based on the first complex combination taken L bits at a time in order to accumulate a complex product combination. The complex multiplication apparatus is preferably constructed as high speed circuitry on a gallium arsenide integrated circuit chip.
Inventors
- 👤 Stanley A. White
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-03 22:16
CPC Classifications
G; G06; G06F; G06F7/00; G06F7/38; G06F7/48; G06F7/4806; G06F7/4812
Claims Analysis
Total Claims: 22
Claim 1
Independent Claim
250 words
A method of performing complex multiplication of a complex multiplier comprising a multiplier real portion and a multiplier imaginary portion, and a complex multiplicand comprising a multiplicand real portion and a multiplicand imaginary portion, wherein said multiplicand real portion comprises a plurality of real L-bit subwords and said multiplicand imaginary portion comprises a plurality of imaginary L-bit subwords, wherein L is greater than 1, and wherein said complex multiplication method comprises: (a) loading a memory with first and second numbers representative of said complex multiplier; (b) addressing said memory with a first of said real L-bit subwords and a first of said imaginary L-bit subwords to produce a first memory output at a first memory port and a second memory output at a second memory port; (c) applying said first memory output to a first input port of a first adder/subtractor and applying a first recirculation input to a second input port of said first adder/subtractor; (d) combining said first memory output and said first recirculation input to produce a first adder/subtractor output; (e) applying said second memory output to a first input port of a second adder/subtractor and applying a second recirculation input to a second input port of said second adder/subtractor; (f) combining said second memory output and said second recirculation input to produce a second adder/subtractor output; and (g) repeating steps (b) through (f) for successive real and imaginary L-bit subwords of said complex multiplicand until all such subwords of a single complex multiplicand hve been processed.
Claim 2
Independent Claim
250 words
A method of performing complex multiplication of a complex multiplier comprising a multiplier real portion and a multiplier imaginary portion, and a complex multiplicand comprising a multiplicand real portion and a multiplicand imaginary portion, wherein said multiplicand real portion comprises a plurality of real L-bit subwords and said multiplicand imaginary portion comprises a plurality of imaginary L-bit subwords, wherein L is greater than 1, and wherein said complex multiplication method comprises: (a) loading a memory with first and second numbers representative of said complex multiplier; (b) addressing said memory with a first of said real L-bit subwords and a first of said imaginary L-bit subwords to produce a first memory output at a first memory port and a second memory output at a second memory port; (c) applying said first memory output to a first input port of a first adder/subtractor and applying a first recirculation input to a second input port of said first adder/subtractor; (d) combining said first memory output and said first recirculation input to produce a first adder/subtractor output; (e) applying said second memory output to a first input port of a second adder/subtractor and applying a second recirculation input to a second input port of said second adder/subtractor; (f) combining said second memory output and said second recirculation input to produce a second adder/subtractor output; and (g) repeating steps (b) through (f) for successive real and imaginary L-bit subwords of said complex multiplicand until all such subwords of a single complex multiplicand hve been processed.
Claim 3
Dependent Claim
135 words
The method of performing complex multiplication of claim 1 wherein: during the processing of the first real L-bit subword of a single complex multiplicand, said first recirculation input to said first adder/subtractor comprises a first initial condition value; during the processing of the first imaginary L-bit subword of said single complex multiplicand, said second recirculation input to said second adder/subtractor comprises a second initial condition value; during the processing of the second and subsequent real L-bit subwords of said single complex multiplicand, said first recirculation input to said first adder/subtractor comprises an output of said first adder/subtractor, shifted L bits; and during the processing of the second and subsequent imaginary L-bit subwords of said single complex multiplicand, said second recirculation input to said second adder/subtractor comprises an output of said second adder/subtractor, shifted L bits.
Claim 4
Dependent Claim
72 words
The method of performing complex multiplication of claim 2 additionally comprising: producing first operation selection signals based on said real L-bit subwords; applying said first operation signals to said first adder/subtractor to control whether said combining step comprises addition or subtraction; producing second operation selection signals based on said imaginary L-bit subwords; and applying said second operation signals to said second adder/subtractor to control whether said combining step comprises addition or subtraction.
Claim 5
Dependent Claim
55 words
The method of performing complex multiplication of claim 3, wherein: said multiplicand real portion includes a real sign bit; said multiplicand imaginary portion includes an imaginary sign bit; said first operation selection signal is produced based on said real sign bit; and said second operation selection signal is produced based on said imaginary sign bit.
Claim 6
Dependent Claim
32 words
The method of claim 2 additionally comprising: loading said first initial condition value into a first initial condition register; and loading said second initial condition value into a second initial condition register.
Claim 7
Dependent Claim
180 words
The method of performing complex multiplication of claim 2, wherein: (a) said first initial condition value comprises A' IC ; (b) said second initial condition value comprises B' IC ; (c) the memory location of said memory addressed at a clock time "n" has contents A' n and B' n ; (d) said memory contents A' n are output from said memory at said first memory port; (e) said memory contents B' n are output from said memory at said second memory port; (f) said complex multiplier comprises a+vb and said complex multiplicand comprises c+vd, wherein v is a basis vector; (g) N is the number of binary bits in the real portion a or imaginary portion b of said multiplier; (h) α n is the nth bit of said real portion a, α n is the complement of α n , and α' n =α n -α n ; and (i) β n is the nth bit of said imaginary portion b, β n is the complement of β n , and β' n =β n -β n .
Claim 8
Dependent Claim
26 words
The method of performing complex multiplication of claim 6, wherein the basis vector v is orthogonal to the real basis vector, and is defined as √-1.
Claim 9
Dependent Claim
11 words
The method of performing complex multiplication of claim 7 wherein: ##EQU7##
Claim 10
Dependent Claim
29 words
The method of performing complex multiplication of claim 8, wherein: said first adder/subtractor output comprises a real portion A, wherein: ##EQU8## said second adder/subtractor output comprises B, wherein: ##EQU9##
Claim 11
Dependent Claim
37 words
The method of performing complex multiplication of claim 6, wherein values f 1 and f 2 are related to the basis vector v according to the equation v 2 =f 1 +vf 2 , and wherein: ##EQU10##
Claim 12
Dependent Claim
32 words
The method of performing complex multiplication of claim 10, wherein: said first adder/subtractor output comprises a real portion A, wherein: ##EQU11## said second adder/subtractor output comprises an imaginary portion B, wherein: ##EQU12##
Claim 13
Independent Claim
319 words
An apparatus for performing complex multiplication of a complex multiplier comprising a multiplier real portion and a multiplier imaginary portion, and a complex multiplicand comprising a multiplicand real portion and a multiplicand imaginary portion, wherein said multiplicand real portion comprises a plurality of real L-bit subwords and said multiplicand imaginary portion comprises a plurality of imaginary L-bit subwords, wherein L is greater than 1, and wherein said complex multiplication apparatus comprises: (a) a memory having first and second output ports, wherein said memory has stored in it first and second numbers representative of said complex multiplier so that when said memory is addressed with a pair of said real and imaginary L-bit subwords, a first memory output is produced at said first memory output port and a second memory output is produced at said second memory output port; (b) a first adder/subtractor having an output port, a first input port connected to said first memory output port for receiving said first memory output, and a second input port connected to said output port for receiving a first recirculation input, wherein said first adder/subtractor combines said first memory output and said first recirculation input to produce a first adder/subtractor output on said output port; (c) a first scaling multiplier connected to said first adder/subtractor between said output and said second input to shift said first adder/subtractor output L bits; (d) a second adder/subtractor having an output port, a first input port connected to said second memory output port for receiving said second memory output, and a second input port connected to said output port for receiving a second recirculation input, wherein said second adder/subtractor combines said second memory output and said second recirculation input to produce a second adder/subtractor output on said output port; and (e) a second scaling multiplier connected to said second adder/subtractor between said output and said second input to shift said second adder/subtractor output L bits.
Claim 14
Independent Claim
319 words
An apparatus for performing complex multiplication of a complex multiplier comprising a multiplier real portion and a multiplier imaginary portion, and a complex multiplicand comprising a multiplicand real portion and a multiplicand imaginary portion, wherein said multiplicand real portion comprises a plurality of real L-bit subwords and said multiplicand imaginary portion comprises a plurality of imaginary L-bit subwords, wherein L is greater than 1, and wherein said complex multiplication apparatus comprises: (a) a memory having first and second output ports, wherein said memory has stored in it first and second numbers representative of said complex multiplier so that when said memory is addressed with a pair of said real and imaginary L-bit subwords, a first memory output is produced at said first memory output port and a second memory output is produced at said second memory output port; (b) a first adder/subtractor having an output port, a first input port connected to said first memory output port for receiving said first memory output, and a second input port connected to said output port for receiving a first recirculation input, wherein said first adder/subtractor combines said first memory output and said first recirculation input to produce a first adder/subtractor output on said output port; (c) a first scaling multiplier connected to said first adder/subtractor between said output and said second input to shift said first adder/subtractor output L bits; (d) a second adder/subtractor having an output port, a first input port connected to said second memory output port for receiving said second memory output, and a second input port connected to said output port for receiving a second recirculation input, wherein said second adder/subtractor combines said second memory output and said second recirculation input to produce a second adder/subtractor output on said output port; and (e) a second scaling multiplier connected to said second adder/subtractor between said output and said second input to shift said second adder/subtractor output L bits.
Claim 15
Dependent Claim
62 words
The apparatus for performing complex multiplication of claim 12, additionally comprising means connected to said first and second adder/subtractors and responsive to at least a portion of said real and imaginary L-bit subwords to produce operation signals to control whether said adder/subtractors add or subtract said first memory output and first recirculation input, and said second memory output and second recirculation input.
Claim 16
Dependent Claim
56 words
The apparatus for performing complex multiplication of claim 12, additionally comprising: a first initial condition register selectively connected to said second input of said first adder/subtractor, for storing a first initial condition value; and a second initial condition register selectively connected to said second input of said second adder/subtractor, for storing a second initial condition value.
Claim 17
Dependent Claim
179 words
The apparatus for performing complex multiplication of claim 14, wherein: (a) said first initial condition value comprises A' IC ; (b) said second initial condition value comprises B' IC ; (c) the memory location of said memory addressed at a clock time "n" has contents A' n and B' n ; (d) said memory contents A' n are output from said memory at said first memory port; (e) said memory contents B' n are output from said memory at said second port; (f) said complex multiplier comprises a+vh and said complex multiplicand comprises c+vd, wherein v is a basis vector; (g) N is the number of binary bits in the real portion a or imaginary portion b of said multiplier; (h) α n is the nth bit of said real portion a, α n is the complement of α n , and α' n =α n -α n ; and (i) β n is the nth bit of the imaginary portion b, β n is the complement of β' n , and β' n =β n -β n .
Claim 18
Dependent Claim
26 words
The apparatus for performing complex multiplication of claim 22, wherein the basis vector v is orthogonal to the real basis vector, and is defined as √-1.
Claim 19
Dependent Claim
11 words
The apparatus for performing complex multiplication of claim 16 wherein: ##EQU13##
Claim 20
Dependent Claim
29 words
The apparatus for performing complex multiplication of claim 17, wherein: said first adder/subtractor output comprises a real portion A, wherein: ##EQU14## said second adder/subtractor output comprises B, wherein: ##EQU15##
Claim 21
Dependent Claim
37 words
The apparatus for performing complex multiplication of claim 15, wherein values f 1 and f 2 are related to the basis vector v according to the equation v 2 =f 1 +vf 2 , and wherein: ##EQU16##
Claim 22
Dependent Claim
32 words
The apparatus for performing complex multiplication of claim 19, wherein: said first adder/subtractor output comprises a real portion A, wherein: ##EQU17## said second adder/subtractor output comprises an imaginary portion B, wherein: ##EQU18##
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1990-07-13 | 1991-01-12 | 1991-07-14 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1994-07-13 | 1995-01-12 | 1995-07-14 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 1998-07-13 | 1999-01-12 | 1999-07-14 | $7700.00 | Window Closed / Lapsed |