DE19509954A1 - Verfahren zur Multiplikation zweier komplexer Eingangsgrößen - Google Patents

Verfahren zur Multiplikation zweier komplexer Eingangsgrößen

Info

Publication number
DE19509954A1
DE19509954A1 DE1995109954 DE19509954A DE19509954A1 DE 19509954 A1 DE19509954 A1 DE 19509954A1 DE 1995109954 DE1995109954 DE 1995109954 DE 19509954 A DE19509954 A DE 19509954A DE 19509954 A1 DE19509954 A1 DE 19509954A1
Authority
DE
Germany
Prior art keywords
variable
product
sign
multiplier
sign factor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE1995109954
Other languages
English (en)
Other versions
DE19509954C2 (de
Inventor
Bernd Dipl Ing Dr Vetters
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Atmel Germany GmbH
Original Assignee
Temic Telefunken Microelectronic GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Temic Telefunken Microelectronic GmbH filed Critical Temic Telefunken Microelectronic GmbH
Priority to DE1995109954 priority Critical patent/DE19509954C2/de
Publication of DE19509954A1 publication Critical patent/DE19509954A1/de
Application granted granted Critical
Publication of DE19509954C2 publication Critical patent/DE19509954C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/4806Computations with complex numbers
    • G06F7/4812Complex multiplication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Complex Calculations (AREA)

Description

Die Erfindung betrifft ein Verfahren gemäß dem Patentanspruch 1 und eine Schaltungsanordnung zur Durchführung dieses Verfahrens.
Verfahren zur Multiplikation zweier Eingangsgrößen sind aus U. Tietze, Ch. Schenk, Halbleiter-Schaltungstechnik, 4. Auflage, Springer-Verlag, 1978, bekannt. Auf den Seiten 222 bis 236 werden dort mehrere als analoge Schal­ tungen ausgeführte Multiplizierer zur Multiplikation analoger Eingangsgrö­ ßen und auf den Seiten 484 bis 487 ein als digitale Schaltungsanordnung aus­ geführter Multiplizierer zur Multiplikation zweier digitaler Datenwörter be­ schrieben. Die Multiplikation dieser beiden Datenwörter wird dabei auf meh­ rere Bit-Multiplikationen, bei denen das eine Datenwort mit den Bits des an­ deren Datenwortes multipliziert wird - üblicherweise wird eine derartige Bit- Multiplikation mit UND-Gattern durchgeführt -, und auf eine geeignete Addi­ tion, bei der die durch die Bit-Multiplikationen gebildeten Datenwörter je­ weils um eine Bitstelle versetzt miteinander addiert werden, zurückgeführt. Die Multiplizierer können mit bekannten Verfahren, beispielsweise dem so­ genannten Booth-Verfahren (K. Hwang: Computer Arithmetic, Principles, Ar­ chitecture and Design, Wiley, New York, 1979), dem sogenannten Wallace- Verfahren (C. S. Wallace: A suggestion for fast multipliers, IEEE Transactions on Electronic Computers, Vol. EC-13, pp. 14-17, Feb. 1964) oder dem soge­ nannten Carry-Save-Verfahren (K. Hwang: Computer Arithmetic, Principles, Architecture and Design, Wiley, New York, 1979), hinsichtlich der Reduzie­ rung der Rechenzeit optimiert werden. Beim Booth-Verfahren wird die An­ zahl der zu summierenden Datenwörter reduziert, indem mehrere Bit-Multi­ plikationen und die Summation der dabei gebildeten Datenwörter auf eine Bit-Multiplikation und eine Subtraktion zweier Datenwörter zurückgeführt werden. Hierzu wird eines der zu multiplizierenden Datenwörter codiert, je­ des Bit dieses codierten Datenwortes mit dem anderen zu multiplizierenden Datenwort multipliziert und die durch diese Bit-Multiplikation gebildeten Da­ tenwörter mehreren Additions-/Subtraktions-Einheiten zugeführt, die je­ weils eine Addition oder eine Subtraktion durchführen.
Beim Wallace-Verfahren werden, da mit einer Additionseinheit üblicherweise nur zwei Datenwörter summiert werden können, mehrere Additionseinhei­ ten eingesetzt um möglichst viele Additionen gleichzeitig durchzuführen. Die Addition der Datenwörter erfolgt dabei in mehreren Additionsschritten, wobei in einem Additionsschritt durch den Einsatz von einer ausreichenden Anzahl von Additionseinheiten möglichst viele Datenwörter gleichzeitig ad­ diert werden und die dabei gebildeten neuen Datenwörter im folgenden Additionsschritt in der gleichen Art summiert werden. Die Additionseinhei­ ten sind hierzu in einer Baumstruktur (Wallace-Baum) angeordnet, d. h. einer Gruppe von Additionseinheiten ist eine weitere Gruppe von Additionseinhei­ ten nachgeschaltet, wobei die Ausgänge der Additionseinheiten aus der ei­ nen Gruppe mit den Eingängen der Additionseinheiten aus der nachgeschal­ teten Gruppe verbunden sind.
Das Carry-Save-Verfahren wird mittels Carry-Save-Additions-/Subtraktions-Ein­ heiten durchgeführt, die jeweils drei Datenwörter addieren/subtrahieren und als Ergebnis dieser Addition/Subtraktion jeweils zwei Datenwörter lie­ fern, wobei das eine Datenwort das Ergebnis dieser Addition/Subtraktion ohne Berücksichtigung der dabei auftretenden Überträge und das andere Datenwort die dabei auftretenden Überträge darstellt.
Ein Verfahren gemäß Patentanspruch 1 ist aus dem Digital Signal Processing IC Handbook, GEC Plessey Semiconductors, 1990, Seite 37, bekannt. Bei die­ sem Verfahren wird aus den Realteilen der beiden Eingangsgrößen mittels eines ersten Multiplizierers ein erstes Produkt, aus den Imaginärteilen der beiden Eingangsgrößen mittels eines zweiten Multiplizierers ein zweites Pro­ dukt, aus dem Realteil der ersten Eingangsgröße und dem Imaginärteil der zweiten Eingangsgröße mittels eines Dritten Multiplizierers ein drittes Pro­ dukt und aus dem Imaginärteil der ersten Eingangsgröße und dem Realteil der zweiten Eingangsgröße mittels eines vierten Multiplizierers ein viertes Produkt gebildet. Anschließend wird mittels eines Subtrahierers der das zweite Produkt vom ersten Produkt subtrahiert der Realteil der Ausgangs­ größe und mittels eines Addierers, der das dritte und das vierte Produkt mit­ einander addiert, der Imaginärteil der Ausgangsgröße gebildet.
Der Schaltungsaufwand und die Herstellungskosten für eine Schaltungsan­ ordnung zur Durchführung dieses Verfahrens sind hoch, da vier Multiplizie­ rer benötigt werden und der Bauelementebedarf und demzufolge der Chip­ flächenbedarf eines in einen Schaltkreis integrierten Multiplizierers hoch ist. Zudem ist, bedingt durch die große Anzahl von Bauelementen der Energie­ verbrauch der Schaltungsanordnung groß, was insbesondere bei ihrem Ein­ satz in einem batteriebetriebenen Gerät die Betriebskosten dieses Gerätes erhöht.
Der Erfindung liegt die Aufgabe zugrunde ein Verfahren gemäß dem Ober­ begriff des Patentanspruchs 1 anzugeben, das einfach ist, das mit einer Schaltungsordnung durchführbar ist, die einfach und kostengünstig reali­ sierbar ist und die einen geringen Energieverbrauch aufweist. Diese Aufgabe wird erfindungsgemäß durch die Merkmale des Patentanspruchs 1 gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen ergeben sich aus den Unteransprüchen.
Beim erfindungsgemäßen Verfahren werden in einem ersten Summations­ schritt mit drei Addierern/Subtrahierern drei Zwischengrößen, in einem Mul­ tiplikationsschritt mit drei Multiplizierern drei weitere Zwischengrößen und in einem zweiten Summationsschritt mit zwei weiteren Addierern/Subtrahie­ rern Realteil und Imaginärteil der Ausgangsgröße gebildet.
Im ersten Summationsschritt werden zur Bildung der ersten Zwischengröße der Realteil und der Imaginärteil der ersten Eingangsgröße dem ersten Ad­ dierer/Subtrahierer, zur Bildung der zweiten Zwischengröße der Realteil und der Imaginärteil der ersten Eingangsgröße dem zweiten Addierer/Subtrahie­ rer und zur Bildung der dritten Zwischengröße der Realteil und der Imagi­ närteil der zweiten Eingangsgröße dem dritten Addierer/Subtrahierer zuge­ führt. Im Multiplikationsschritt werden zur Bildung der vierten Zwischengrö­ ße die erste Zwischengröße und eine der Teilgrößen der zweiten Eingangs­ größe dem ersten Multiplizierer, zur Bildung der fünften Zwischengröße die zweite Zwischengröße und die andere Teilgröße der zweiten Eingangsgröße dem zweiten Multiplizierer und zur Bildung der sechsten Zwischengröße die dritte Zwischengröße und eine der Teilgrößen der ersten Eingangsgröße dem dritten Multiplizierer zugeführt. Im zweiten Summationsschritt werden zur Bildung des Realteils der Ausgangsgröße die vierte und die sechste Zwi­ schengröße dem vierten Addierer/Subtrahierer und zur Bildung des Imagi­ närteils der Ausgangsgröße die fünfte und die sechste Zwischengröße dem fünften Addierer/Subtrahierer zugeführt. Dabei stellt die im ersten und im zweiten Summationsschritt von einem Addierer/Subtrahierer gebildete Grö­ ße die Summe aus den mit jeweils einem Vorzeichenfaktor versehenen, dem Addierer/Subtrahierer zugeführten Größen dar; die im Multiplikationsschritt von einem Multiplizierer gebildete Zwischengröße stellt das Produkt aus den dem Multiplizierer zugeführten Größen dar. Aufgrund einer geeigneten Vor­ gabe der Vorzeichenfaktoren erhält man dann als Ausgangsgröße das Pro­ dukt der beiden Eingangsgrößen.
Ein Addierer/Subtrahierer führt vorzugsweise entweder nur Additionen oder nur Subtraktionen durch, d. h., er ist entweder als Addierer oder als Subtra­ hierer ausgeführt. Die Vorzeichenfaktoren aus der von ihm gelieferten Grö­ ße, die vorzugsweise die Werte -1 oder +1 aufweisen, geben dabei an, ob er als Addierer oder als Subtrahierer ausgeführt ist.
Die von den fünf Addierern/Subtrahierern durchgeführten Operationen las­ sen sich mit zehn Vorzeichenfaktoren bestens beschreiben. Die erste Zwi­ schengröße wird demzufolge als Summe aus dem mit dem ersten Vorzei­ chenfaktor versehenen Realteil und dem mit dem zweiten Vorzeichenfaktor versehenen Imaginärteil der ersten Eingangsgröße gebildet, die zweite Zwi­ schengröße als Summe aus dem mit dem dritten Vorzeichenfaktor versehe­ nen Realteil und dem mit dem vierten Vorzeichenfaktor versehenen Imagi­ närteil der ersten Eingangsgröße gebildet, die dritte Zwischengröße als Sum­ me aus dem mit dem fünften Vorzeichenfaktor versehenen Realteil und dem mit dem sechsten Vorzeichenfaktor versehenen Imaginärteil der zwei­ ten Eingangsgröße gebildet, der Realteil der Ausgangsgröße als Summe aus der mit dem siebenten Vorzeichenfaktor versehenen vierten Zwischengröße und der mit dem achten Vorzeichenfaktor versehenen sechsten Zwischen­ größe gebildet und der Imaginärteil der Ausgangsgröße als Summe aus der mit dem neunten Vorzeichenfaktor versehenen fünften Zwischengröße und der mit dem zehnten Vorzeichenfaktor versehenen sechsten Zwischengröße gebildet.
Vorzugsweise werden dem ersten Multiplizierer der Realteil der zweiten Ein­ gangsgröße, dem zweiten Multiplizierer der Imaginärteil der zweiten Ein­ gangsgröße und dem dritten Multiplizierer der Imaginärteil der ersten Ein­ gangsgröße zugeführt. Für die Vorzeichenfaktoren müssen dann die Bedin­ gungen, daß das Produkt aus erstem und zweiten Vorzeichenfaktor und das Produkt aus drittem und viertem Vorzeichenfaktor betragsmäßig gleich sind und ein entgegengesetztes Vorzeichen ausweisen, daß das Produkt aus er­ stem und zweitem Vorzeichenfaktor und das Produkt aus fünftem und sech­ sten Vorzeichenfaktor gleich sind, daß die Produkte aus erstem und sieben­ tem Vorzeichenfaktor, aus drittem und neuntem Vorzeichenfaktor und aus fünftem und zehntem Vorzeichenfaktor jeweils den Wert +1 ergeben und daß das Produkt aus sechstem und achtem Vorzeichenfaktor den Wert -1 er­ gibt, erfüllt werden.
Dem ersten Multiplizierer kann aber auch der Imaginärteil der zweiten Ein­ gangsgröße, dem zweiten Multiplizierer der Realteil der zweiten Eingangs­ größe und dem dritten Multiplizierer der Realteil der ersten Eingangsgröße zugeführt werden. Für die Vorzeichenfaktoren müssen dann wiederum die Bedingungen, daß das Produkt aus erstem und zweiten Vorzeichenfaktor und das Produkt aus drittem und viertem Vorzeichenfaktor betragsmäßig gleich sind und ein entgegengesetztes Vorzeichen aufweisen und daß das Produkt aus erstem und zweitem Vorzeichenfaktor und das Produkt aus fünftem und sechstem Vorzeichenfaktor gleich sind, erfüllt werden. Für die verbleibenden Vorzeichenfaktoren müssen hingegen die Bedingungen, daß die Produkte aus viertem und neuntem Vorzeichenfaktor, aus fünftem und achtem Vorzeichenfaktor und aus sechstem und zehntem Vorzeichenfaktor jeweils den Wert +1 und das Produkt aus zweitem und siebentem Vorzei­ chenfaktor den Wert -1 ergeben, erfüllt werden.
Die Eingangsgrößen, die Zwischengrößen und die Ausgangsgröße werden vorzugsweise als digitale Datenwörter - vorteilhafterweise als parallele Da­ tenwörter, d. h. alle Bitstellen eines Datenwortes stehen gleichzeitig zur Ver­ fügung, - bereitgestellt; die Schaltungsanordnung weist dann als digitale Schaltungen ausgebildete Addierer/Subtrahierer und Multiplizierer auf, die in einen gemeinsamen Schaltkreis integrierbar sind. Für einen derartigen Schaltkreis werden gegenüber der bekannten Schaltungsanordnung, da le­ diglich drei Multiplizierer erforderlich sind, deutlich weniger Transistoren benötigt. Demzufolge weist die erfindungsgemäße Schaltungsanordnung auch einen geringeren Energieverbrauch auf. Aufgrund der geringeren An­ zahl von Transistoren und aufgrund des durch die reguläre Architektur be­ dingten kompakten Layouts der Schaltungsanordnung sind zudem der Chip­ flächenbedarf und die Herstellungskosten der Schaltungsanordnung gering.
Die Multiplizierer werden vorzugsweise mit bekannten Verfahren, beispiels­ weise mit dem Booth-, dem Wallace- oder dem Carry-Save-Verfahren hin­ sichtlich der Reduzierung der Rechenzeit optimiert. Diese Verfahren können auch miteinander kombiniert werden. Beim Booth-Verfahren werden vor­ teilhafterweise die den Multiplizierern direkt zugeführten Teilgrößen co­ diert.
Bei der Optimierung gemäß dem Wallace-Verfahren werden für die von den drei Multiplizierern und den fünf Addierern/Subtrahierern durchzuführen­ den Additionen/Subtraktionen eine ausreichende Anzahl von Additions-/Sub­ traktions-Einheiten vorgesehen, von denen möglichst viele parallel betrie­ ben werden. Die Additions-/Subtraktions-Einheiten der drei Multiplizierer und der fünf Addierer/Subtrahierer sind dabei vorzugsweise in einem ge­ meinsamen Wallace-Baum angeordnet, der mit zwei Additions-/Subtraktions- Einheiten endet, welche den Realteil bzw. den Imaginärteil der Ausgangsgrö­ ße liefern. Der erste, der zweite und der dritte Addierer/Subtrahierer sowie die drei Multiplizierer führen die jeweiligen Additionen/Subtraktionen vor­ zugsweise gemäß dem Carry-Save-Verfahren mittels Carry-Save-Addi­ tions-/Subtraktions-Einheiten durch. Der vierte und der fünfte Addierer/Sub­ trahierer addiert/subtrahiert die ihm zugeführten Datenwörter vorteilhaf­ terweise gemäß dem sogenannten Carry-Propagate-Verfahren, bei dem als Ergebnis der jeweiligen Addition/Subtraktion ein einziges Datenwort gebil­ det wird, in dem etwaige Überträge dieser Addition/Subtraktion berücksich­ tigt sind.
Während der Multiplikation der beiden komplexen Eingangsgrößen führen die Additions-/Subtraktions-Einheiten vorzugsweise jeweils eine Addi­ tion/Subtraktion durch. Ein Teil der Additions-/Subtraktions-Einheiten kann auch sequentiell betrieben werden, d. h. sie führen während der Multiplika­ tion der Eingangsgrößen nacheinander mindestens zwei Additionen/Subtrak­ tionen durch.
Die Multiplizierer weisen vorzugsweise jeweils eine Rundungseinheit auf, die die Wortlänge der durch die Multiplikation der den Multiplizierern zugeführ­ ten Datenwörtern gebildeten Datenworte durch Abschneiden oder durch Runden reduzieren.
Mit dem Verfahren lassen sich auch als analoge Größen, beispielsweise als analoge Spannungen oder analoge Ströme, bereitgestellte komplexe Ein­ gangsgrößen miteinander multiplizieren. Die Additionen/Subtraktionen wer­ den dann mit analogen Addierern/Subtrahierern - beispielsweise mit Opera­ tionsverstärkerschaltungen - und die Multiplikationen mit analogen Multipli­ zierern durchgeführt.
Die Erfindung wird im folgenden anhand der Figur näher beschrieben. Die Figur zeigt dabei ein Ausführungsbeispiel einer integrierten Schaltungsan­ ordnung zur Multiplikation zweier komplexer analoger oder digitaler Ein­ gangsgrößen. Der Realteil aR der ersten Eingangsgröße a wird dem ersten Addierer/Subtrahierer ADD1 und dem zweiten Addierer/Subtrahierer ADD2 zugeführt; der Imaginärteil aI der ersten Eingangsgröße a wird ebenfalls dem ersten und dem zweiten Addierer/Subtrahierer ADD1 und ADD2 zuge­ führt; der Realteil bR und der Imaginärteil bI der zweiten Eingangsgröße b werden dem dritten Addierer/Subtrahierer ADD3 zugeführt. Der erste Addie­ rer/Subtrahierer ADD1 liefert die erste Zwischengröße z₁, der zweite Addie­ rer/Subtrahierer ADD2 die zweite Zwischengröße z₂, der dritte Addie­ rer/Subtrahierer ADD3 die dritte Zwischengröße z₃. Die erste Zwischengröße z₁ und der Realteil bR der zweiten Eingangsgröße werden dem ersten Multiplizierer MUL1 zugeführt, die zweite Zwischengröße z₂ und der Imaginärteil bI der zweiten Eingangsgröße b werden dem zweiten Multiplizierer MUL2 zugeführt, die dritte Zwischengröße z₃ und der Imagi­ närteil aI der ersten Eingangsgröße a werden dem dritten Multiplizierer MUL3 zugeführt. Die Multiplizierer MUL1 bzw. MUL2 bzw. MUL3 multiplizieren die ihnen zugeführten Größen miteinander und liefern als Ergebnis dieser Multiplikationen die vierte Zwischengröße z₄ bzw. die fünfte Zwischengröße z₅ bzw. die sechste Zwischengröße z₆. Die vierte und die sechste Zwischengröße z₄ und z₆ werden dem vierten Addierer/Subtrahierer ADD4 und die fünfte und die sechste Zwischengröße z₅ und z₆ dem fünften Addie­ rer/Subtrahierer ADD5 zugeführt. Der vierte Addierer/Subtrahierer ADD4 liefert dabei den Realteil cR der Ausgangsgröße c und der fünfte Addie­ rer/Subtrahierer ADD5 den Imaginärteil cI der Ausgangsgröße c. Für die Zwischengrößen z₁ . . . z₆ und für den Realteil cR und für den Imaginärteil cI der Ausgangsgröße c gelten folgende Beziehungen:
z₁ = v₁ × aR + v₂ × aI
z₂ = v₃ × aR + v₄ × aI
z₃ = v₅ × bR + v₆ × bI
z₄ = z₁ × bR
z₅ = z₂ × bI
z₆ = z₃ × aI
cR = v₇ × z₄ + v₈ × z₆
cI = v₉ × z₅ + v₁₀ × z₆.
v₁ . . . v₁₀ stellen dabei die Vorzeichenfaktoren dar. Sie nehmen lediglich die Werte +1 oder -1 an und geben an, ob der jeweilige Addierer/Subtrahierer ADD1 . . . ADD5 eine Addition oder eine Subtraktion durchführt. Da die Aus­ gangsgröße c das Produkt aus den beiden Eingangsgrößen a und b darstellt, gelten für den Realteil cR und Imaginärteil cI der Ausgangsgröße c die Bezie­ hungen:
cR = aR × bR - aI × bI und
cI = aR × bI + aI × bR,
d. h., die Vorzeichenfaktoren v₁ . . . v₁₀ müssen folgende Bedingungen erfül­ len:
v₁ × v₂ = -v₃ × v₄
v₁ × v₂ = v₅ × v₆
v₁ × v₇ = 1
v₃ × v₉ = 1
v₅ × v₁₀ = 1
v₆ × v₈= -1.
Da vier dieser zehn Vorzeichenfaktoren v₁ . . . v₁₀ voneinander unabhängig sind, gibt es für diese Bedingungen 16 verschiedene Lösungen. Wenn bei­ spielsweise mit v₁ = v₂ = v₃ = v₅ = v₆ = v₇ = v₉ = v₁₀ = 1 und v₄ = v₈ = -1 eine dieser Lösungen dargestellt wird, gelten für die Zwischengrößen z₁ . . . z₆ und für die Ausgangsgröße c die Beziehungen:
z₁ = aR + aI
z₂ = aR - aI
z₃ = bR + bI
z₄ = z₁ × bR
z₅ = z₂ × bI
z₆ = z₃ × aI
cR = z₄ - z₆
cI = z₅ + z₆.
In diesem Falle führen der erste, der dritte und der fünfte Addierer/Subtra­ hierer ADD1, ADD3 und ADD5 jeweils eine Addition und der zweite und der vierte Addierer/Subtrahierer ADD2 und ADD4 jeweils eine Subtraktion durch, d. h. der erste, der dritte und der fünfte Addierer/Subtrahierer ADD1, ADD3 und ADD5 sind als Addierer und der zweite und vierte Addierer/Subtrahierer ADD2 und ADD4 als Subtrahierer ausgeführt. In der gleichen Art kann auch für die restlichen Lösungen angegeben werden, welche der fünf Addie­ rer/Subtrahierer ADD1 . . . ADD5 als Addierer und welche als Subtrahierer aus­ geführt sind. Statt dem ersten Multiplizierer MUL1 den Realteil bR der zwei­ ten Eingangsgröße b, dem zweiten Multiplizierer MUL2 den Imaginärteil bI der zweiten Eingangsgröße b und dem dritten Multiplizierer MUL3 den Ima­ ginärteil aI der ersten Eingangsgröße a zuzuführen, können, wie in der Figur in Klammern angedeutet, dem ersten Multiplizierer MUL1 der Imaginärteil bI der zweiten Eingangsgröße b, dem zweiten Multiplizierer MUL2 der Realteil bR der zweiten Eingangsgröße b und dem dritten Multiplizierer MUL3 der Realteil aR der ersten Eingangsgröße a zugeführt werden. Die Beziehungen für die erste, die zweite und die dritte Zwischengröße z₁, z₂, z₃ und für den Realteil cR und Imaginärteil cI der Ausgangsgröße c werden dadurch nicht verändert. Für die restlichen Zwischengrößen z₄, z₅ und z₆ erhält man hin­ gegen die Beziehungen:
z₄ = z₁ × bI
z₅ = z₂ × bR und
z₆ = z₃ × aR.
Die Vorzeichenfaktoren v₁ . . . v₁₀ müssen dann die Bedingungen:
v₁ × v₂ = -v₃ × v₄
v₁ × v₂ = v₅ × v₆
v₂ ×v₇ = -1
v₄ ×v₉ = 1
v₅ ×v₈ = 1
v₆ ×v₁₀ = 1
erfüllen. Für diese Bedingungen gibt es wiederum 16 verschiedene Lösun­ gen, die in der gleichen Art wie im vorherigen Fall angeben, welche der fünf Addierer/Subtrahierer ADD1 . . . ADD5 als Addierer und welche als Subtrahierer ausgeführt sind.

Claims (20)

1. Verfahren zur Multiplikation zweier komplexer Eingangsgrößen (a, b) zu ei­ ner komplexen Ausgangsgröße (c), wobei die Eingangsgrößen (a, b) aus zwei, Realteil (aR, bR) und Imaginärteil (aI, bI) darstellenden Teilgrößen (aR, aI, bR, bI) bestehen, dadurch gekennzeichnet, daß
  • - in einem ersten Additionsschritt mittels dreier Addierer/Subtra­ hierer (ADD1, ADD2, ADD3) drei Zwischengrößen (z₁, z₂, z₃) als Summe der beiden mit einem Vorzeichenfaktor (v₁ . . . v₆) versehe­ nen Teilgrößen (aR, aI, bR, bI) einer Eingangsgröße (a, b) gebildet werden, wobei zur Bildung der ersten Zwischengröße (z₁) die er­ ste Eingangsgröße (a) dem ersten Addierer/Subtrahierer (ADD1), zur Bildung der zweiten Zwischengröße (z₂) die erste Eingangs­ größe (a) dem zweiten Addierer/Subtrahierer (ADD2) und zur Bil­ dung der dritten Zwischengröße (z₃) die zweite Eingangsgröße (b) dem dritten Addierer/Subtrahierer (ADD3) zugeführt wird,
  • - in einem Multiplikationsschritt mittels dreier Multiplizierer (MUL1, MUL2, MUL3) drei weitere Zwischengrößen (z₄, z₅, z₆) als Produkt zweier Größen gebildet werden wobei zur Bildung der vierten Zwischengröße (z₄) die erste Zwischengröße (z₁) und eine der Teil­ größen (bR, bI) der zweiten Eingangsgröße (b) dem ersten Multi­ plizierer (MUL1), zur Bildung der fünften Zwischengröße (z₅) die zweite Zwischengröße (z₂) und die andere Teilgröße (bI, bR) der zweiten Eingangsgröße (b) dem zweiten Multiplizierer (MUL2) und zur Bildung der sechsten Zwischengröße (z₆) die dritte Zwischen­ größe (z₃) und eine der Teilgrößen (aR, aI) der ersten Eingangsgrö­ ße (a) dem dritten Multiplizierer zugeführt werden,
  • - in einem zweiten Additionsschritt mittels zweier weiterer Addie­ rer/Subtrahierer (ADD4, ADD5) der Realteil (cR) und der Imaginär­ teil (cI) der Ausgangsgröße (c) jeweils als Summe zweier mit einem Vorzeichenfaktor (v₇ . . . v₁₀) versehenen Zwischengrößen (z₄ . . . z₆) gebildet werden, wobei zur Bildung des Realteils (cR) der Aus­ gangsgröße (c) die vierte und die sechste Zwischengröße (z₄, z₆) dem vierten Addierer/Subtrahierer (ADD4), zur Bildung des Imagi­ närteils (cI) der Ausgangsgröße (c) die fünften und die sechste Zwischengröße (z₅, z₆) dem fünften Addierer/Subtrahierer (ADD5) zugeführt werden und durch eine geeignete Vorgabe der Vorzei­ chenfaktoren (v₁ . . . v₁₀) gewährleistet wird, daß die Ausgangsgrö­ ße (c) das Produkt der beiden Eingangsgrößen (a, b) darstellt.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß ein Addie­ rer/Subtrahierer (ADD1 . . . ADD5) die ihm zugeführten Größen (aR, aI, bR, bI, z₄, z₅, z₆) addiert oder subtrahiert, wobei die Vorzeichenfaktoren (v₁ . . . v₁₀) aus der von ihm gelieferten Größe (z₁, z₂, z₃, cR, cI), die jeweils einen der Werte -1 oder +1 aufweisen, angeben, ob eine Addition oder eine Subtraktion durchgeführt wird.
3. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeich­ net, daß
  • - mit dem ersten Addierer/Subtrahierer (ADD1) die erste Zwischen­ größe (z₁) als Summe aus dem mit dem ersten Vorzeichenfaktor (v₁) versehenen Realteil (aR) und dem mit dem zweiten Vorzei­ chenfaktor (v₂) versehenen Imaginärteil (aI) der ersten Eingangs­ größe (a) gebildet wird,
  • - mit dem zweiten Addierer/Subtrahierer (ADD2) die zweite Zwi­ schengröße (z₂) als Summe aus dem mit dem dritten Vorzeichen­ faktor (v₃) versehenen Realteil (aR) und dem mit dem vierten Vor­ zeichenfaktor (v₄) versehenen Imaginärteil (aI) der ersten Ein­ gangsgröße (a) gebildet wird,
  • - mit dem dritten Addierer/Subtrahierer (ADD3) die dritte Zwi­ schengröße (z₃) als Summe aus dem mit dem fünften Vorzeichen­ faktor (v₅) versehenen Realteil (bR) und dem mit dem sechsten Vorzeichenfaktor (v₆) versehenen Imaginärteil (bI) der zweiten Eingangsgröße (b) gebildet wird
  • - mit dem vierten Addierer/Subtrahierer (ADD4) der Realteil (cR) der Ausgangsgröße (c) als Summe aus der mit dem siebenten Vorzei­ chenfaktor (v₇) versehenen vierten Zwischengröße (z₄) und der mit dem achten Vorzeichenfaktor (v₈) versehenen sechsten Zwi­ schengröße (z₆) gebildet wird,
  • - mit dem fünften Addierer/Subtrahierer (ADD5) der Imaginärteil (c₁) der Ausgangsgröße (c) als Summe aus der mit dem neunten Vorzeichenfaktor (v₉) versehenen fünften Zwischengröße (z₅) und der mit dem zehnten Vorzeichenfaktor (v₁₀) versehenen sechsten Zwischengröße (z₆) gebildet wird.
4. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeich­ net, daß dem ersten Multiplizierer (MUL1) der Realteil (bR) der zweiten Ein­ gangsgröße (b), dem zweiten Multiplizierer (MUL2) der Imaginärteil (bI) der zweiten Eingangsgröße (b) und dem dritten Multiplizierer (MUL3) der Imagi­ närteil (aI) der ersten Eingangsgröße (a) zugeführt.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß die Vorzeichen­ faktoren (v₁ . . . v₁₀) so vorgegeben werden, daß
  • - das Produkt aus erstem und zweitem Vorzeichenfaktor (v₁, v₂) und das Produkt aus drittem und viertem Vorzeichenfaktor (v₃, v₄) betragsmäßig gleich sind und entgegengesetztes Vorzeichen ausweisen,
  • - das Produkt aus erstem und zweitem Vorzeichenfaktor (v₁, v₂) und das Produkt aus fünftem und sechstem Vorzeichenfaktor (v₅, v₆) gleich sind,
  • - das Produkt aus erstem und siebentem Vorzeichenfaktor (v₁, v₇), das Produkt aus drittem und neuntem Vorzeichenfaktor (v₃, v₉) und das Produkt aus fünftem und zehntem Vorzeichenfaktor (v₅, v₁₀)jeweils den Wert +1 ergeben und
  • - das Produkt aus sechstem und achtem Vorzeichenfaktor (v₆, v₈) den Wert -1 ergibt.
6. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß dem ersten Multiplizierer (MUL1) der Imaginärteil (bI) der zweiten Ein­ gangsgröße (b), dem zweiten Multiplizierer (MUL2) der Realteil (bR) der zwei­ ten Eingangsgröße (b) und dem dritten Multiplizierer (MUL3) der Realteil (aR) der ersten Eingangsgröße (a) zugeführt wird.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß die Vorzeichen­ faktor (v₁ . . . v₁₀) so vorgegeben werden, daß
  • - das Produkt aus erstem und zweitem Vorzeichenfaktor (v₁, v₂) und das Produkt aus drittem und viertem Vorzeichenfaktor (v₁, v₄) betragsmäßig gleich sind und entgegengesetztes Vorzeichen ausweisen,
  • - das Produkt aus erstem und zweiten Vorzeichenfaktor (v₁, v₂) und das Produkt aus fünftem und sechstem Vorzeichenfaktor (v₅, v₆) gleich sind
  • - das Produkt aus zweitem und siebentem Vorzeichenfaktor (v₂, v₇) den Wert -1 ergibt,
  • - das Produkt aus viertem und neuntem Vorzeichenfaktor (v₄, v₉), das Produkt aus fünftem und achtem Vorzeichenfaktor (v₅, v₈) und das Produkt aus sechstem und zehntem Vorzeichenfaktor (v₆, v₁₀)jeweils den Wert +1 ergeben.
8. Verfahren nach einem der vorherigen Ansprüche, dadurch gekennzeich­ net, daß der Realteil (aR, bR) und der Imaginärteil (aI, bI) der Eingangsgrößen (a, b), die Zwischengrößen (z₁ . . . z₆) und der Realteil (cR) und der Imaginärteil (cI) der Ausgangsgröße (c) als digitale Datenwörter bereitgestellt werden, die von als digitale Schaltungen ausgebildeten Addierern/Subtrahierern (ADD1
ADD5) oder Multiplizierern (MUL1, MUL2, MUL3) geliefert bzw. verarbeitet werden.
9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, daß die Datenwör­ ter als parallele Datenwörter bereitgestellt werden.
10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß zwei einem Multiplizierer (MUL1, MUL2, MUL3) zugeführte Datenwörter miteinander mul­ tipliziert werden, indem der Multiplizierer (MUL1, MUL2, MUL3) durch Multi­ plikation des einen Datenwortes mit den Bits des anderen Datenwortes neue Datenwörter bildet, die er in geeigneter Weise miteinander addiert.
11. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß mit minde­ stens einem Multiplizierer (MUL1, MUL2, MUL3) das sogenannte Booth-Verfah­ ren zur Multiplikation zweier Datenwörter durchgeführt wird, bei dem der Multiplizierer (MUL1, MUL2, MUL3) das eine Datenwort codiert und durch Mul­ tiplikation des anderen Datenwortes mit den Bits des codierten Datenwortes neue Datenwörter bildet, die er in geeigneter Weise miteinander ad­ diert/subtrahiert.
12. Verfahren nach einem der Ansprüche 8 bis 11, dadurch gekennzeichnet, daß mit mindestens einer Carry-Save-Additions-/Subtraktions-Einheit das so­ genannte Carry-Save-Verfahren zur Addition/Subtraktion von zwei oder drei Datenwörtern durchgeführt wird, bei dem die Carry-Save-Additions-/Subtrak­ tions-Einheit zwei Datenwörter liefert, von denen das eine das Ergebnis der Addition/Subtraktion ohne Berücksichtigung von Überträgen und das ande­ re die bei der Addition/Subtraktion auftretenden Überträge darstellt.
13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, daß der erste, der zweite und der dritte Addierer/Subtrahierer (ADD1, ADD2, ADD3) und die drei Multiplizierer (MUL1, MUL2, MUL3) das Carry-Save-Verfahren durchführen.
14. Verfahren nach einem der Ansprüche 8 bis 13, dadurch gekennzeichnet, daß der vierte und der fünfte Addierer/Subtrahierer (ADD4, ADD5) das soge­ nannte Carry-Propagate-Verfahren durchführen, bei dem als Ergebnis einer Addition/Subtraktion ein einziges Datenwort gebildet wird.
15. Verfahren nach einem der Ansprüche 9 bis 14, dadurch gekennzeichnet, daß die Additionen/Subtraktionen der Datenwörter mit mehreren Additions- /Subtraktions-Einheiten durchgeführt werden, wobei ausreichend viele Addi­ tions-/Subtraktions-Einheiten vorgesehen sind, um so viele Additionen/Sub­ traktionen wie möglich parallel durchzuführen.
16. Verfahren nach Anspruch 15, dadurch gekennzeichnet, daß die Additions- /Subtraktions-Einheiten während der Multiplikation der beiden Eingangsgrö­ ßen (a, b) jeweils eine Addition/Subtraktion durchführen.
17. Verfahren nach Anspruch 15, dadurch gekennzeichnet, daß mindestens eine Additions-/Subtraktions-Einheit während der Multiplikation der beiden Eingangsgrößen (a, b) mehrere Additionen/Subtraktionen durchführt.
18. Verfahren nach einem der Ansprüche 8 bis 17, dadurch gekennzeichnet, daß mit einer in einem Multiplizierer (MUL1, MUL2, MUL3) vorgesehene Run­ dungseinheit die Wortlänge des Produktes aus den dem Multiplizierer (MUL1, MUL2, MUL3) zugeführten Datenwörtern durch Runden oder durch Abschnei­ den reduziert wird.
19. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß die Eingangsgrößen (a, b), die Zwischengrößen (z₁ . . . z₆) und die Aus­ gangsgröße (c) als analoge Spannungen oder analoge Ströme bereitgestellt werden, die von als analoge Schaltungen ausgebildeten Addierern/Subtra­ hierern (ADD1 . . . ADD5) oder Multiplizierern (MUL1, MUL2, MUL3) geliefert bzw. verarbeitet werden.
20. Schaltungsanordnung zur Durchführung des Verfahrens nach einem der vorherigen Ansprüche, dadurch gekennzeichnet, daß die Addierer/Subtra­ hierer (ADD1 . . . ADD5) und die Multiplizierer (MUL1, MUL2, MUL3) in einem Schaltkreis integriert sind.
DE1995109954 1995-03-18 1995-03-18 Verfahren zur Verwendung einer Schaltungsanordnung zur Multiplikation zweier komplexer Eingangsgrößen Expired - Fee Related DE19509954C2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1995109954 DE19509954C2 (de) 1995-03-18 1995-03-18 Verfahren zur Verwendung einer Schaltungsanordnung zur Multiplikation zweier komplexer Eingangsgrößen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1995109954 DE19509954C2 (de) 1995-03-18 1995-03-18 Verfahren zur Verwendung einer Schaltungsanordnung zur Multiplikation zweier komplexer Eingangsgrößen

Publications (2)

Publication Number Publication Date
DE19509954A1 true DE19509954A1 (de) 1996-09-19
DE19509954C2 DE19509954C2 (de) 1997-04-24

Family

ID=7757098

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1995109954 Expired - Fee Related DE19509954C2 (de) 1995-03-18 1995-03-18 Verfahren zur Verwendung einer Schaltungsanordnung zur Multiplikation zweier komplexer Eingangsgrößen

Country Status (1)

Country Link
DE (1) DE19509954C2 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19844139C2 (de) * 1998-09-25 2003-12-04 Siemens Ag Vorrichtung und Verfahren zum Durchführen einer komplexen Multiplikation für spezielle Wertemengen

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4354249A (en) * 1980-03-24 1982-10-12 Motorola Inc. Processing unit for multiplying two mathematical quantities including at least one complex multiplier
DD202955A1 (de) * 1981-07-01 1983-10-05 Erhard Rentzsch Anordnung zur multiplikation komplexer signale

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4354249A (en) * 1980-03-24 1982-10-12 Motorola Inc. Processing unit for multiplying two mathematical quantities including at least one complex multiplier
DD202955A1 (de) * 1981-07-01 1983-10-05 Erhard Rentzsch Anordnung zur multiplikation komplexer signale

Also Published As

Publication number Publication date
DE19509954C2 (de) 1997-04-24

Similar Documents

Publication Publication Date Title
DE19758079A1 (de) Verfahren und Vorrichtung zur Galoisfeld-Multiplikation
DE69130623T2 (de) Dividierer mit hoher Grundzahl
EP0453641B1 (de) CORDIC-Prozessor für Vektordrehungen in Carry-Save-Architektur
DE10013068C2 (de) Potenzierungsoperationsvorrichtung
EP0628183B1 (de) Schaltungsanordnung zum digitalen multiplizieren von integer-zahlen
DE4019646C2 (de) Vorrichtung und Verfahren zum Multiplizieren von Datenwörtern in Zweier-Komplement-Darstellung
DE3434777C2 (de)
DE69320218T2 (de) Digitales Filter
DE3447634A1 (de) Dividiervorrichtung
DE19509954C2 (de) Verfahren zur Verwendung einer Schaltungsanordnung zur Multiplikation zweier komplexer Eingangsgrößen
DE10200133B4 (de) Verfahren und Vorrichtung zur Berechnung von Modulo-Operationen
DE19644688B4 (de) Schaltungsanordnung einer digitalen Multiplizierer-Baugruppe, zur Verarbeitung von Binärzahlen sowie Elementen aus GF(2m)
DE10219161A1 (de) Vorrichtung und Verfahren zum Umrechnen eines Terms
DE102013212840A1 (de) Modellberechnungseinheit und Steuergerät zur Berechnung eines datenbasierten Funktionsmodells mit Daten in verschiedenen Zahlenformaten
DE3416536C2 (de)
DE10106085B4 (de) Verfahren und Anordnung zur Finiten Feld Multiplikation
DE3700740A1 (de) Linearapproximationsumformschaltung
DE10223853B4 (de) Verfahren und integrierte Schaltung zur Durchführung einer Multiplikation modulo M
DE10050589B4 (de) Vorrichtung und Verfahren zur Verwendung beim Durchführen einer Gleitkomma-Multiplizier-Akkumulier-Operation
DE69527604T2 (de) Elektronisches Bauelement, insbesondere fähig zum Ausführen einer Division zur Basis 4 von zwei Zahlen
DE69223269T2 (de) Zyklisches digitales Filter
DE4213107C2 (de) Schaltungsanordnung zum digitalen Multiplizieren von Integer-Zahlen
DE2737483A1 (de) Korrektur-schaltungsanordnung fuer additions- oder substraktionsoperationen mit nicht-hexadezimalen operanden in hexadezimalen rechenwerken
DE2432979C3 (de) Mit gemischter Zahlendarstellung arbeitende Einrichtung zum Multiplizieren zweier komplexer Zahlen und Addieren einer dritten komplexen Zahl zum Produkt
DE2743946C2 (de) Umsetzschaltung für Dualzahlen

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 7/49

D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: TEMIC SEMICONDUCTOR GMBH, 74072 HEILBRONN, DE

8320 Willingness to grant licenses declared (paragraph 23)
8327 Change in the person/name/address of the patent owner

Owner name: ATMEL GERMANY GMBH, 74072 HEILBRONN, DE

8339 Ceased/non-payment of the annual fee