DE3789132T2 - Digitale Multipliziererarchitektur mit Dreifachgitter zur Summation von Teilprodukten. - Google Patents

Digitale Multipliziererarchitektur mit Dreifachgitter zur Summation von Teilprodukten.

Info

Publication number
DE3789132T2
DE3789132T2 DE3789132T DE3789132T DE3789132T2 DE 3789132 T2 DE3789132 T2 DE 3789132T2 DE 3789132 T DE3789132 T DE 3789132T DE 3789132 T DE3789132 T DE 3789132T DE 3789132 T2 DE3789132 T2 DE 3789132T2
Authority
DE
Germany
Prior art keywords
carry
array
bits
sum
multiplier
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.)
Expired - Fee Related
Application number
DE3789132T
Other languages
English (en)
Other versions
DE3789132D1 (de
Inventor
Khosrow Hedayati
James Yuan Wei
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.)
Intersil Corp
Original Assignee
Intersil Inc
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 Intersil Inc filed Critical Intersil Inc
Publication of DE3789132D1 publication Critical patent/DE3789132D1/de
Application granted granted Critical
Publication of DE3789132T2 publication Critical patent/DE3789132T2/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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/533Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
    • 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/509Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

    Hintergrund der Erfindung
  • Die Erfindung bezieht sich allgemein auf digitale Multiplizierer und insbesondere auf die Verbesserung der Geschwindigkeit, mit der Teilprodukte summiert werden, um das Endprodukt der Multiplikation zu bilden.
  • Die binäre Multiplikation ist eine wichtige Funktion bei vielen Verarbeitungs-Applikationen digitaler Signale. Derartige Applikationen erfordern ferner eine Akkumulation von einem Produkt mit den Ergebnissen von vorherigen Operationen (z. B. Bildung einer Summe von Produkten). Eine vielseitige Multiplizierschaltung muß die Fähigkeit haben, diese Funktionen in entweder der Zweier-Komplement-Notation oder der Notation von Größen ohne Vorzeichen auszuführen.
  • Es sind in der Technik viele Schemata bekannt, um die Zeit zu verkürzen, die zur Ausführung einer binären Multiplikation erforderlich ist. Beispielsweise sind viele verschiedene Kodiermethoden entwickelt worden, die die Anzahl von Teilprodukten verkleinern, die addiert werden müssen, um das Endprodukt zu bilden. Der modifizierte Booth-Algorithmus ist einer von ihnen, der häufig in digitalen Multiplizierern von integrierten Schaltungen verwendet wird.
  • Es sind Versuche gemacht worden, die Summierung von Teilprodukten zu beschleunigen. Gemäß dem US-Patent 4 545 028, das für Ware erteilt wurde, wird die Addierer-Array in Blöcke unterteilt, so daß die verschiedenen Blöcke verschiedene Teile der Addition parallel ausführen können, selbst wenn die gesamte Addition innerhalb jedes Blockes in einer sogenannten Ripple- bzw. Riffel-Weise durchgeführt wird. Weiterhin kann der erste Block nur vier Teilprodukte enthalten, und die verbleibenden Blöcke müssen an eine arithmetische Progression angepaßt sein, so daß Überträge von dem einen Block erscheinen, wenn sie von dem nächsten Block gefordert werden.
  • Die Summierung kann auch durch die Verwendung von einem Übertrag-Vorgriffsaddierer beschleunigt werden. Die Ausbreitung von Überträgen durch eine sequentielle Reihe von Addierstufen in einer Ripple- bzw. Riffel-Weise erfordert eine größere Zeitperiode, je größer die Anzahl von Bits in den Summanden sind. In einem Übertrag-Vorgriffsaddierer sorgt eine Logik-Schaltung für eine gleichzeitige Übertragsausbreitung anstatt einer sequentiellen. Jedoch ist die Bit-Größe von einem Übertrag-Vorgriffsaddierer begrenzt, weil die Komplexität der Schaltungsanordnung, der Gate-Zählwert und die Chipfläche rasch zunimmt, wenn die Bit-Größe zunimmt.
  • In THE RADIO AND ELECTRONIC ENGINEER, Band 49, Nr. 5, Mai 1979, Seiten 250-254, F. Demmelmeir: "A fast multiplier module" ist ein digitaler Multiplizierer beschrieben, der eine Pipeline-Architektur verwendet, die in Kaskade zwei Übertrag-Sicherungs-Addierer und einen Übertrag-Propagate- Addierer verwendet. Dadurch wird zwar eine Beschleunigung der Multiplizier-Operation erreicht, aber die Pipeline als eine Technik ist nicht unter allen Umständen geeignet.
  • Zusammenfassung der Erfindung
  • Mit der vorliegenden Erfindung wird eine alternative Lösung geschaffen für eine schnelle, parallele Summierung von Teilprodukten mit minimaler zusätzlicher Komplexität und zusätzlichem Raum.
  • Die vorliegende Erfindung schafft eine Multiplizierschaltung zum Erzeugen der Summe von einem Multiplikatorsignal und einem Multiplikandsignal, enthaltend: eine Teilprodukt-Generatoreinrichtung zum Generieren von N Summanden unterschiedlichen Ranges, wobei jeder Summand einen Satz von Teilprodukten aufweist, die einen geordneten Satz von Bits enthalten, wenn ein Multiplikatorsignal und ein Multiplikandsignal an die Eingänge der Teilprodukt-Generatoreinrichtung angelegt sind; eine Übertrag-Sicherungs- Array, die mit der Teilprodukt-Generatoreinrichtung verbunden ist, zum Addieren der Bits von einer ersten Gruppe von R Summmanden, die aus den N Summanden entnommen sind, und zum Generieren der niederwertigsten Bits der Summe und zum Generieren von Zwischensummen- und Übertragssignalen; gekennzeichnet durch eine erste Übertrag-Vorgriffsarray, die parallel und gleichzeitig mit der Übertrag- und Sicherungsarray arbeitet, die mit der Teilprodukt-Generatoreinrichtung verbunden ist, zum Addieren im wesentlichen aller Bits der N Summanden, die nicht in der ersten Gruppe enthalten sind, um ein Zwischenprodukt zu generieren; und eine zweite Übertrags-Vorgriffsarray, die mit der Übertrag-Sicherungsarray und der ersten Übertrag-Vorgriffsarray verbunden sind, wobei die zweite Übertrag-Vorgriffsarray die höchstwertigsten Bits der Summe aus dem Zwischenprodukt und aus den Zwischensummen- und Übertragssignalen generiert; wobei N und R ganze Zahlen sind und R größer als die Hälfte von N ist.
  • Ein zweiter Aspekt der Erfindung ist eine Verfahren, wie es in Anspruch 8 beansprucht ist.
  • Kurzbeschreibung der Zeichnungen
  • Die neuartigen Merkmale der Erfindung sind insbesondere in den beigefügten Ansprüchen angegeben. Die Erfindung selbst, bezüglich ihrer Organisation und dem Arbeitsverfahren, in Verbindung mit weiteren Aufgaben und Vorteilen kann am besten anhand der folgenden detaillierten Beschreibung in Verbindung mit den beigefügten Zeichnungen verstanden werden, in denen:
  • Fig. 1 ein Blockdiagramm von einem Ausführungsbeispiel eines digitalen Multiplizierers ist, der eine Dreifach-Array- Summierung gemäß der Erfindung enthält.
  • Fig. 2 zeigt die Gruppierung von Summanden-Bits für einen als Beispiel angegebenen 16·16 Multiplizierer/Akkumulator mit neun Teilprodukten, die unter Verwendung von Kodierung erzeugt werden.
  • Fig. 3-8 stellen zusammen ein schematisches Diagramm von einem Ausführungsbeispiel der Dreifach-Array-Architektur dar, die dem Multiplizierer/Akkumulator gemäß Fig. 2 entspricht.
  • Detaillierte Beschreibung der Erfindung
  • Es wird nun anhand von Fig. 1 eine Dreifach-Array-Multiplizierer-Architektur beschrieben. Die Schaltungsanordnung enthält einen Multiplikatorreingang 10 und einen Multiplikandeneingang 11. Ein Multiplikatorsignal am Multiplizierereingang 10 wird an eine Kodierschaltung 12 angelegt und in ein kodiertes Eingangssignal 13 umgewandelt. Die Kodierung kann nach mehreren bekannten Algorithmen ausgeführt werden (z. B. ein modifizierter Booth-Algorithmus), so daß die Anzahl von Teilprodukten, die aus dem kodierten Eingangssignal 13 und dem Multiplikanden-Eingangssignal 11 generiert werden, kleiner ist, als sie anderenfalls generiert werden würde. Beispielsweise wird unter Verwendung eines modifizierten Booth-Algorithmus mit einer Multiplizierer- und Multiplikandenlänge von jeweils 16 Bits das kodierte Eingangssignal 13 in 9 Terme kodiert. Als eine Folge würde der Teilproduktgenerator 14 neun Teilprodukte generieren, die addiert werden müssen, um das Endprodukt zu bilden.
  • Der Teilproduktgenerator 14 hat als seine Ausgangsgröße eine Anzahl von Teilprodukten mit zunehmendem Rang. Die Bits der Teilprodukte werden in Gruppen unterteilt, die in einer Dreifach-Addierer-Array summiert werden. SETA, eine Gruppe von Teilproduktbits, wird in die ADDA Addier-Array eingegeben. SETB, eine andere Gruppe von Teilproduktbits, wird in die ADDB Addierer-Array eingegeben. Eine kleine Anzahl von verbleibenden Teilproduktbits SETC' kann optional an die ADDC Addierer-Array geliefert werden.
  • In einem bevorzugten Ausführungsbeispiel der Erfindung enthält SETA die Bits von den r Teilprodukten niedrigster Ordnung. Der Wert von r ist vorzugsweise größer als die Hälfte von n, wobei n die Gesamtzahl von Teilprodukten ist. Die Ergebnisse der Addition in der ADDA Array enthalten einen einen niedrigen Rang aufweisenden Teil des Endproduktes, eine Zwischensumme SUMA und einen Zwischenübertrag CARA. Das einen niedrigen Rang aufweisende Ergebnis wird an ein Register 15 geliefert, und die SUMA und CARA Signale werden in die ADDC Addierer-Array eingegeben.
  • In SETB sind alle oder im wesentlichen alle übrigen Teilproduktbits enthalten. Das Ergebnis der Addition in der ADDB Array ist SUMB, das in die ADDC Addierer-Array eingegeben wird. Es kann eine kleine Anzahl von Teilproduktbits geben, die verfügbaren Addierer-Stellen in der ADDC Array entsprechen, die nicht verwendet werden, um SUMA CARA und SUMB zu addieren. Diese Bits können in SETC' enthalten sein, die im Bypass an den ADDA und ADDB Arrays vorbeigeleitet werden, um in der ADDC Array enthalten zu sein. Das Ergebnis der Addition in der ADDC Addierer-Array ist der einen hohen Wert aufweisender Abschnitt des Endergebnisses, der an das Register 15 geliefert wird.
  • Gemäß der Dreifach-Array-Architektur gemäß der vorliegenden Erfindung wird hohe Geschwindigkeit und geringe Komplexität dadurch erreicht, daß ADDA als eine Übertrag-Sicherungsarray (carry safe array) und ADDB und ADDC als Übertrag-Vorgriffsarray (carry look-ahead arrays) implementiert werden. Somit summiert die ADDA Array die einen niedrigen Rang aufweisenden Teilprodukte, während Vorteil aus der geringen Komplexität und der kleinen Chipfläche von einer Übertrag- Sicherungsarray gezogen wird. Die hohe Geschwindigkeit der Übertrag-Vorgriffsarray wird in vorteilhafter Weise in den ADDB und ADDC Arrays ausgenutzt, in denen die einen höheren Rang aufweisende Summation ausgeführt wird. Genauer gesagt, enthält die ADDA Array vorzugsweise r-1 Reihen von Übertrag-Sicherungsaddierern zum Addieren der Teilprodukte in SETA. ADDA kann auch eine Reihe (d. h. eine Gesamtzahl von r Reihen) zur Handhabung der Akkumulation und der Zweier-Komplement-Notation aufweisen. ADDB und ADDC enthalten vorzugsweise jeweils eine oder mehrere Reihen von Übertrag-Sicherungsaddierern, denen ein Übertrag-Vorgriffsaddierer folgt.
  • Gemäß einem anderen Aspekt des bevorzugten Ausführungsbeispiels wird der Wert von r so gewählt, daß die Verzögerung der Übertrag-Sicherungsaddition in ADDA möglichst gleich der Zeitverzögerung der Übertrag-Vorgriffaddition in ADDB ist. Auf diese Weise wird die Architektur optimiert, und SUMA, CARA und SUMB werden gleichzeitig an die ADDC Array geliefert.
  • Die Inhalte des Registers 15 bilden die Ausgangsgröße des Multiplizierers. Um eine Akkumulation auszuführen, können die Inhalte des Registers 15 in die ADDA Array rückgeführt werden für einen Einschluß in eine nachfolgende Verarbeitung.
  • Um eine Notation für Größen entweder mit oder ohne Vorzeichen zu handhaben, wird der Multiplikand (am Eingang 11) um 2 Bits verlängert und der Multiplikator (am Eingang 10) wird um ein Bit verlängert. Der Wert der verlängerten höherwertigen Bits hängt von der verwendeten Notation und dem Wert des höchstwertigen Bits der Ursprungszahl ab. Wenn also eine Notation mit Vorzeichen verwendet wird, wird der Wert des höchstwertigen Bits in jedem der Extrabits wiederholt, z. B. eine logische "1" in der MSB Position des Multiplikanden würde in den zwei Verlängerungsbits der Eingangsgröße 11 wiederholt. Wenn eine Notation ohne Vorzeichen verwendet wird, wird jedes der Extrabits auf eine logische "0" gebracht.
  • Um auch eine Zweier-Komplement-Notation mit Vorzeichen zu handhaben, kann der Teilproduktgenerator 14 auch ein Zweier-Komplement-Register 16 enthalten. Das Register 16 hat mehrere Bits, wobei jedes Bit einem Teilprodukt entspricht. Jedes Bit kann gesetzt werden, um anzuzeigen, daß das entsprechende Teilprodukt in der Zweier -Komplement -Notation negativ ist. Wenn die Addition der Teilprodukte ausgeführt wird, müssen die Inhalte des Registers 16 hinzuaddiert werden. Vorzugsweise wird jedes Zweier-Komplement-Bit in der Array hinzuaddiert, die sein entsprechendes Teilprodukt enthält.
  • Ein Beispiel von einer speziellen Gruppierung von Bits für einen Dreifach-Array-Multiplizierer, der in der Lage ist, eine 16 Bit mal 16 Bit Multiplikation/Akkumulation auszuführen, wobei eine modifizierte Booth-Algorithmus-Kodierung verwendet wird, um neun Teilprodukte zu generieren, ist in Fig. 2 gezeigt. Die neun Teilprodukte sind mit P und PO bis P7 bezeichnet. Jeder Bezeichnung folgt eine Bit-Bezeichnung 0 bis H. P ist das den niedrigsten Rang aufweisende oder niederwertigste Teilprodukt. P7 ist das Teilprodukt höchster Ordnung. Die niederwertigsten Bits sind mit 0 bezeichnet und die höchstwertigsten Bits mit H. Fig. 2 zeigt auch die Zweier-Komplement-Bits, die mit TC und TC0 bis TC7 bezeichnet sind. Die Inhalte des Akkumulatorregisters sind mit OR0 bis ORX2 bezeichnet, und das Zweier-Komplement-Bit für das Akkumulatorregister ist als TCA gezeigt.
  • Die Bits in Fig. 2 sind so angeordnet, daß die Bits von gleicher Wertigkeit in der gleichen vertikalen Spalte sind. Somit nimmt die Bit-Wertigkeit zu, wenn man sich nach rechts bewegt. Jedes Zweier-Komplement-Bit hat die gleiche Wertigkeit wie das niederwertigste Bit seines entsprechenden Teilproduktes (oder des Akkumulatorregisters im Falle von TCA).
  • Wie in Fig. 2 gezeigt ist, enthält SETA die Bits von sechs Teilprodukten, nämlich P und P0 bis P4, die Akkumulator-Inhalte OR0 bis ORX2 und die entsprechenden Zweier-Komplement-Bits TC, TC0 bis TC4 und TCA. SETB enthält Teilprodukte P6 und P7 und entsprechende Zweier-Komplement-Bits TC6 und TC7 und enthält Bits P52 bis P5H von Teilprodukt PS. Niederwertige Bits P50 und P51 und Zweier-Komplement- Bit TC5 sind in SETC' gruppiert.
  • Eine Dreifach-Array-Summierungssschaltung zur Ausführung der Addition gemäß den Gruppierungen von Fig. 2 ist schematisch in den Fig. 4 bis 8 gezeigt, wobei Fig. 3 zeigt, wie die Fig. 4 bis 8 anzuordnen sind.
  • ADDA ist eine Übertrag-Sicherungsarray, die in den Fig. 4 bis 6 gezeigt ist. Die erste Reihe besteht aus Halbaddierern, außer in den 16. und 19. Bitpositionen. Ein Volladdierer wird in der 16. Bitposition verwendet, um ein Abrundungsbit RND einzuführen, um das Ergebnis abzurunden, wenn dies erwünscht ist. Ein Diamond-Addierer befindet sich in der 19. Bitposition der 1. Reihe und ihm wird an seinem b Eingang von dem vorhergehenden Halbaddierer das Bit PG zugeführt. Die Eingangsbezeichnungen des Volladdierers, Diamond-Addierers und des ersten Halbaddierers in derer ersten Reihe werden wiederholt (aber nicht gezeigt) für die anderen Addierer der gleichen Typen in den Figuren.
  • Bekanntlich hat ein Volladdierer (wie beispielsweise Volladdierer 40 in Fig. 5) Summanden-Eingänge a und b, einen Übertrag-Eingang Cin', einen Summen-Ausgang s und einen Übertrag-Ausgang cout. Ein Halbaddierer, wie beispielsweise Halbaddierer 41, hat a und b Eingänge und s und cout Ausgänge. Ein Diamond-Addierer, wie beispielsweise der Diamond-Addierer 42, hat a und b Eingänge, einen s Ausgang und einen "s oder c" Ausgang, was das logische OR der s und c Ausgänge eines Halbaddierers sind. Die Bits, die in jeden Addierer eingegeben werden, sind wie gezeigt. Weiterhin sind einige Größen durch Verdrahtung auf eine logische "1" oder eine logische "0" gesetzt, wie es angegeben ist.
  • Die ADDA Array enthält auch bedingte Summenaddierer MX0 bis MX8. Dies sind Hochgeschwindigkeits-Addierer, die einen Multiplexer verwenden, um einen von zwei Volladdieren gemäß ihrem cin Eingang zu wählen, wie es in der Technik bekannt ist. Die invertierten niederwertigen Bits des Endproduktes sind in Fig. 4 als S0 bis S10 gezeigt.
  • ADDB weist eine Reihe von Volladdierern auf, denen ein 20 Bit-Vorgriffsaddierer (CLA) 100 folgt, wie es in Fig. 7 und 8 gezeigt ist. Die ADDC Array weist eine Reihe von Volladdierern auf, denen ein 24 Bit CLA 101 folgt. Die invertierten hochwertigen Bits des Endproduktes werden von CLA 101 ausgegeben und sind als S11 bis S34 gezeigt. Bei der Ausführung der Endaddition empfängt die ADDC Array ein Zwischensummensignal von der ADDB Array und empfängt sowohl ein Zwischensummensignal als auch ein Zwischenübertragssignal von der ADDA Array.
  • CLA 100 und CLA 101 sind so gezeigt, daß sich ihre Eingänge oben und ihre Ausgänge unten befinden. Die CLAs können eine typische Konfiguration haben, wie sie in der Technik bekannt ist und, beispielsweise, in N. Scott, Computer Number Systems and Arithmetic (1985) und in dem US Patent 4 153 938 gezeigt ist, wobei beide durch diese Bezugnahme hier inkorporiert werden.
  • Die vorstehend beschriebene Dreifach-Array-Multiplizierer- Architektur mit paralleler Summierung durch eine Übertrag- Sicherungsarray und eine erster Übertrag-Vorgriffsarray, der eine Endsummierung durch eine zweite Übertrag-Vorgriffsarray folgt, erzielt eine hohe Leistungsfähigkeit mit hoher Geschwindigkeit und einer kleinen Chipfläche in einer Schaltungsanordnung, die mit üblicher IC Technologie implementiert werden kann. Die Schaltungsanordnung ist vielseitig, kann eine Akkumulation ausführen und kann mit einer Größendarstellung entweder mit oder ohne Vorzeichen arbeiten.

Claims (9)

1. Multiplizierschaltung zum Erzeugen der Summe von einem Multiplikatorsignal und einem Multiplikandsignal, enthaltend:
eine Teilprodukt-Generatoreinrichtung (13, 14) zum Generieren von N Summanden unterschiedlichen Ranges, wobei jeder Summand einen Satz von Teilprodukten aufweist, die einen geordneten Satz von Bits enthalten, wenn ein Multiplikatorsignal und ein Multiplikandsignal an die Eingänge (10, 11) der Teilprodukt-Generatoreinrichtung angelegt sind,
eine Übertrag-Sicherungsarray (ADDA), die mit der Teilprodukt-Generatoreinrichtung verbunden ist, zum Addieren der Bits einer ersten Gruppe von R Summanden, die aus den N Summanden entnommen sind, und zum Generieren der niederwertigsten Bits der Summe und zum Generieren von Zwischensummen- und Übertragssignalen, gekennzeichnet durch
eine erste Übertrag-Vorgriffsarray (ADDB), die parallel und gleichzeitig mit der Übertrag- und Sicherungsarray arbeitet, die mit der Teilprodukt- Generatoreinrichtung verbunden ist, zum Addieren im wesentlichen aller Bits der N Summanden, die nicht in der ersten Gruppe enthalten sind, um ein Zwischenprodukt zu generieren, und
eine zweite Übertrag-Vorgriffsarray (ADDC), die mit der Übertrag-Sicherungsarray und der ersten Übertrag- Vorgriffsarray verbunden ist, wobei die zweite Übertrag- Vorgriffsarray die höchstwertigsten Bits der Summe aus dem Zwischenprodukt und aus den Zwischensummen- und Übertragssignalen generiert, wobei N und R ganze Zahlen sind und R größer als die Hälfte von N ist.
2. Multiplizierschaltung nach Anspruch 1, wobei die Teilprodukt-Generatoreinrichtung eine Kodierschaltung (12) aufweist zum Kodieren des Multiplikatorsignals, um die Anzahl von Teilprodukten zu verkleinern, die generiert werden.
3. Multiplizierschaltung nach Anspruch 2, wobei die Kodierschaltung einen modifizierten Booth-Algorithmus ausführt.
4. MULTIPLIZIERSCHALTUNG nach Anspruch 1, wobei ferner ein Akkumulator-Register (15), das mit der Übertrag- Sicherungsarray und der zweiten Übertrag-Vorgriffarray verbunden ist, zum Empfangen der Summe vorgesehen ist, wobei die Übertrag-Sicherungsarray die Inhalte des Akkumulator-Registers zu der ersten Gruppe von Bits addieren kann, um eine Akkumulation auszuführen.
5. Multiplizierschaltung nach Anspruch 1, wobei ferner ein Zweierkomplement-Register (16) vorgesehen ist, das mit der Übertrag-Sicherungsarray verbunden ist und mehrere Bits aufweist, wobei jedes Bit auf entsprechende Weise das Vorzeichen von einem entsprechenden Teilprodukt angibt, wobei die Inhalte des Zweierkomplement-Registers zu der Summe addiert werden.
6. Multiplizierschaltung nach Anspruch 1, wobei die erste Gruppe von R Summanden ferner so gewählt ist, daß die Zwischensummen- und Übertragssignale und das Zwischenprodukt im wesentlich gleichzeitig generiert werden.
7. Multiplizierschaltung nach Anspruch 1, wobei die Teilprodukt-Generatoreinrichtung neun Summanden generiert, wobei die erste Gruppe von Summanden, die durch die Übertrag-Sicherungsarray addiert werden, die Bits von den 6 niederwertigsten Summanden enthält, wobei die erste Übertrag-Vorgriffsarray eine Reihe von Volladdierern (P60 . . . P69, P6A . . . P6H) und einen Übertrag-Vorgriffsaddierer (CLA100) aufweist und wobei die zweite Übertrag- Vorgriffsarray eine Reihe von Volladdierern (P50, P51 . . . ) und einen Übertrag-Vorgriffsaddierer (CLA101) aufweist.
8. Verfahren zum Addieren von n Teilprodukten in einem digitalen Multiplizierer, enthaltend die Schritte:
Addieren der r niederwertigsten Teilprodukte der n Teilprodukte in einer Übertrag-Sicherungsarray (ADDA), um die niederwertigsten Bits der Endsumme zu generieren und Zwischensummen- und Übertragssignale zu generieren, wobei die Übertrag-Sicherungsarray die Addition in einer Zeitverzögerung A ausübt, gekennzeichnet durch
gleichzeitiges Addieren der Bits von allen verbleibenden Teilprodukten in einer ersten Übertrag- Vorgriffsarray (ADDB), um ein Zwischenprodukt in einer Zeitverzögerung B zu generieren, und
Addieren der Zwischensummen- und Übertragsignale und der Zwischenprodukte in einer zweiten Übertrag- Vorgriffsarray, um die höherwertigsten Bits der Endsumme zu generieren, wobei der Wert von r eine ganze Zahl größer als eine Hälfte von n ist.
9. Verfahren nach Anspruch 8, wobei der Wert von r so gewählt ist, daß die Differenz zwischen der Zeitverzögerung A und der Zeitverzögerung B minimiert ist.
DE3789132T 1986-09-17 1987-08-31 Digitale Multipliziererarchitektur mit Dreifachgitter zur Summation von Teilprodukten. Expired - Fee Related DE3789132T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/908,489 US4831577A (en) 1986-09-17 1986-09-17 Digital multiplier architecture with triple array summation of partial products

Publications (2)

Publication Number Publication Date
DE3789132D1 DE3789132D1 (de) 1994-03-31
DE3789132T2 true DE3789132T2 (de) 1994-10-13

Family

ID=25425888

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3789132T Expired - Fee Related DE3789132T2 (de) 1986-09-17 1987-08-31 Digitale Multipliziererarchitektur mit Dreifachgitter zur Summation von Teilprodukten.

Country Status (4)

Country Link
US (1) US4831577A (de)
EP (1) EP0260515B1 (de)
JP (1) JPS6375932A (de)
DE (1) DE3789132T2 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4839848A (en) * 1987-09-14 1989-06-13 Unisys Corporation Fast multiplier circuit incorporating parallel arrays of two-bit and three-bit adders
US5278781A (en) * 1987-11-12 1994-01-11 Matsushita Electric Industrial Co., Ltd. Digital signal processing system
US4972362A (en) * 1988-06-17 1990-11-20 Bipolar Integrated Technology, Inc. Method and apparatus for implementing binary multiplication using booth type multiplication
JPH0776914B2 (ja) * 1988-10-18 1995-08-16 三菱電機株式会社 乗算回路
GB2226899A (en) * 1989-01-06 1990-07-11 Philips Electronic Associated An electronic circuit and signal processing arrangements using it
US4969118A (en) * 1989-01-13 1990-11-06 International Business Machines Corporation Floating point unit for calculating A=XY+Z having simultaneous multiply and add
EP0383965A1 (de) * 1989-02-21 1990-08-29 International Business Machines Corporation Multiplizierwerk
JP2540934B2 (ja) * 1989-03-09 1996-10-09 三菱電機株式会社 論理回路装置
JPH07118630B2 (ja) * 1989-06-29 1995-12-18 三菱電機株式会社 乗算用信号処理回路
US5121352A (en) * 1990-02-06 1992-06-09 Micron Technology, Inc. Multiplier-accumulator circuit array operable in multiple modes
US5121431A (en) * 1990-07-02 1992-06-09 Northern Telecom Limited Processor method of multiplying large numbers
US5153850A (en) * 1990-08-24 1992-10-06 Mass Microsystems Method and apparatus for modifying two's complement multiplier to perform unsigned magnitude multiplication
JPH04116720A (ja) * 1990-09-07 1992-04-17 Hitachi Ltd 半導体装置
JP2838326B2 (ja) * 1991-04-16 1998-12-16 三菱電機株式会社 ディジタル乗算器
US5218564A (en) * 1991-06-07 1993-06-08 National Semiconductor Corporation Layout efficient 32-bit shifter/register with 16-bit interface
US5220525A (en) * 1991-11-04 1993-06-15 Motorola, Inc. Recoded iterative multiplier
US5375078A (en) * 1992-12-15 1994-12-20 International Business Machines Corporation Arithmetic unit for performing XY+B operation
KR0158647B1 (ko) * 1995-05-22 1998-12-15 윤종용 부호/무부호 수 겸용 곱셈기
US5974437A (en) * 1996-12-02 1999-10-26 Synopsys, Inc. Fast array multiplier
US6571268B1 (en) 1998-10-06 2003-05-27 Texas Instruments Incorporated Multiplier accumulator circuits
US6523055B1 (en) 1999-01-20 2003-02-18 Lsi Logic Corporation Circuit and method for multiplying and accumulating the sum of two products in a single cycle
US6215325B1 (en) 1999-03-29 2001-04-10 Synopsys, Inc. Implementing a priority function using ripple chain logic
AU2003269332A1 (en) * 2002-08-22 2004-03-11 Med-El Elektromedizinische Gerate Gmbh Method and system for multiplication of binary numbers
US20080225939A1 (en) * 2007-03-15 2008-09-18 Jiun-In Guo Multifunctional video encoding circuit system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3508038A (en) * 1966-08-30 1970-04-21 Ibm Multiplying apparatus for performing division using successive approximate reciprocals of a divisor
US3670956A (en) * 1968-09-26 1972-06-20 Hughes Aircraft Co Digital binary multiplier employing sum of cross products technique
US3675001A (en) * 1970-12-10 1972-07-04 Ibm Fast adder for multi-number additions
US3866030A (en) * 1974-04-01 1975-02-11 Bell Telephone Labor Inc Two{3 s complement parallel array multiplier
BE844199A (nl) * 1976-07-16 1976-11-16 Inrichting voor het vermenigvuldigen van binaire getallen
US4153938A (en) * 1977-08-18 1979-05-08 Monolithic Memories Inc. High speed combinatorial digital multiplier
US4215416A (en) * 1978-03-22 1980-07-29 Trw Inc. Integrated multiplier-accumulator circuit with preloadable accumulator register
NL7809398A (nl) * 1978-09-15 1980-03-18 Philips Nv Vermenigvuldiginrichting voor binaire getallen in twee-complement notatie.
US4228520A (en) * 1979-05-04 1980-10-14 International Business Machines Corporation High speed multiplier using carry-save/propagate pipeline with sparse carries
US4484301A (en) * 1981-03-10 1984-11-20 Sperry Corporation Array multiplier operating in one's complement format
JPS593634A (ja) * 1982-06-30 1984-01-10 Fujitsu Ltd 乗算器
JPS5911445A (ja) * 1982-07-13 1984-01-21 Nec Corp 乗算器
US4545028A (en) * 1982-10-13 1985-10-01 Hewlett-Packard Company Partial product accumulation in high performance multipliers
JPH0640301B2 (ja) * 1983-09-22 1994-05-25 ソニー株式会社 並列乗算回路
US4660165A (en) * 1984-04-03 1987-04-21 Trw Inc. Pyramid carry adder circuit
US4575812A (en) * 1984-05-31 1986-03-11 Motorola, Inc. X×Y Bit array multiplier/accumulator circuit
US4679164A (en) * 1984-12-17 1987-07-07 The United States Of America As Represented By The Secretary Of The Army Digital high speed programmable convolver

Also Published As

Publication number Publication date
EP0260515A2 (de) 1988-03-23
JPS6375932A (ja) 1988-04-06
EP0260515B1 (de) 1994-02-23
DE3789132D1 (de) 1994-03-31
EP0260515A3 (en) 1990-09-26
US4831577A (en) 1989-05-16
JPH0543136B2 (de) 1993-06-30

Similar Documents

Publication Publication Date Title
DE3789132T2 (de) Digitale Multipliziererarchitektur mit Dreifachgitter zur Summation von Teilprodukten.
DE69632978T2 (de) Multi-Operand-Addierer, der Parallelzähler benutzt
DE68924477T2 (de) Gleitkommaeinheit mit gleichzeitiger Multiplikation und Addition.
DE3686681T2 (de) Parallelmultiplizierer.
DE3700991C2 (de) Digitaler Übertragsvorgriffsaddierer
DE69838877T2 (de) Architektur eines schnellen regulären multiplizierers
DE69832985T2 (de) Multiplizier-Akkumulatorschaltungen
Bickerstaff et al. Reduced area multipliers
US5347482A (en) Multiplier tree using nine-to-three adders
DE3036747C2 (de) Binäre Multiplikationszellenschaltung als integrierte MOS-Schaltung
DE19758079A1 (de) Verfahren und Vorrichtung zur Galoisfeld-Multiplikation
DE4403917C2 (de) Vorrichtung zum Berechnen einer Bit-Besetzungszählung
DE10105945A1 (de) Linearsummierungsmultipliziererarrayimplementie-rung sowohl zur vorzeichenbehafteten als auch zur vorzeichenlosen Multipliaktion
US5161119A (en) Weighted-delay column adder and method of organizing same
DE69025182T2 (de) Digitaler prozessor für zweierkomplementberechnungen
DE4101004C2 (de) Paralleler Multiplizierer mit Sprungfeld und modifiziertem Wallac-Baum
DE3434777C2 (de)
DE69026414T2 (de) Binäres Addiergerät
EP0109137A2 (de) Teilproduktakkumulation in Hochleistungsmultipliziern
EP0130397B1 (de) Digitales Rechenwerk
DE60316342T2 (de) Multiplizierer mit nachschlagetabellen
EP0090298A1 (de) In MOS-Technik integrierter schneller Multiplizierer
DE3854937T2 (de) Überlappendes Mehrbit untersuchendes Multipliziersystem mit einer Bandmatrix von Teilprodukten
DE3880825T2 (de) Anordnung zur schnellen addition von binärzahlen.
DE19644688B4 (de) Schaltungsanordnung einer digitalen Multiplizierer-Baugruppe, zur Verarbeitung von Binärzahlen sowie Elementen aus GF(2m)

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee