DE2750212A1 - Einrichtung zur bildung und akkumulation von produkten - Google Patents

Einrichtung zur bildung und akkumulation von produkten

Info

Publication number
DE2750212A1
DE2750212A1 DE19772750212 DE2750212A DE2750212A1 DE 2750212 A1 DE2750212 A1 DE 2750212A1 DE 19772750212 DE19772750212 DE 19772750212 DE 2750212 A DE2750212 A DE 2750212A DE 2750212 A1 DE2750212 A1 DE 2750212A1
Authority
DE
Germany
Prior art keywords
circuit
accumulator
bit
bits
gate
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.)
Withdrawn
Application number
DE19772750212
Other languages
English (en)
Inventor
Henri Pierre Duvochel
Roland Edouard Kuhne
Bernard Pierre Laurent
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2750212A1 publication Critical patent/DE2750212A1/de
Withdrawn 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/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
    • G06F7/5095Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators word-serial, i.e. with an accumulator-register
    • 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/544Methods 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 for evaluating functions by calculation
    • G06F7/5443Sum of products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3856Operand swapping

Landscapes

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

Description

Anmelderin: International Business Machines
Corporation, Armonk, N.Y., 10504
km-cn
Einrichtung zur Bildung und Akkumulation von Produkten
Die Erfindung betrifft eine Einrichtung zur Bildung und Akkumulation von Produkten mehrstelliger binärer Operanden.
In der digitalen Signalverarbeitung kommt es vor, daß mit hoher] Geschwindigkeit die Produkte von Wertepaaren zu bilden und zu einer Produktensumme zu akkumulieren sind. Dies ist z.B. in der Technik digitaler Filter der Fall, wo zahlreiche Produkte im Echtzeitbetrieb zu bilden und zu akkumulieren sind. Der gefilterte Wert Y ergibt sich aus
η
1 k=o K x K
worin Xi-k die zu filternden Vierte und C, die Filterkoeffizienten sind. Um die Werte Y. korrekt zu berechnen, ist es notwendig, daß die Multiplikation- und Akkumulationsoperationen eines jeden Eingangswertes X, , beendet sind, bevor der nächste jWert am Eingang des Filters erscheint.
!Bekannte Einrichtungen für diese Zwecke bestehen aus einem ersten Schaltungsteil, der zur Ausführung der Multiplikationen dient, und einem zweiten Schaltungsteil, der die Akkumulationen ausführt. Um die Zeit zur Bildung des Endresultates zu verkürzen, ist es möglich, die Arbeitsgeschwindigkeit einer jeden Teilschaltung zu erhöhen. Dies kann jedoch nur im Rahmen der Arbeitsgeschwindigkeitsgrenzen der elektronischen Schaltungen geschehen.
Die bekannten Einrichtungen zur binären Multiplikation von zwei jeweils η-Bits umfassenden Operanden bilden eine Anzahl von
FR976O1° 809820/0887
Teilprodukten in einer Akkumulatorschaltung, die zwei n-Stellen aufweist. Jedes Teilprodukt wird durch eine Multiplikation des Multiplikanden mit jeweils einem Bit des Multiplikators erhalten. Hierbei steuert das niedrigste Bit des Multiplikators die Erzeugung des ersten Teilprodukts. Bevor jeweils ein neues Teilprodukt akkumuliert werden kann, ist die bis dahin in der ; Akkumulatorschaltung gebildete Summe der Teilprodukte um eine Stelle nach rechts zu verschieben.
Bei diesen bekannten Multiplikationseinrichtungen ist es üblich, idaß das erste Teilprodukt den hochstelligen Teil der Akkumula- !torschaltung, d.h., deren η hohen Bitstellen zugeführt wird. Durch die sich anschließenden Rechtsverschiebungen jeweils vor der Akkumulation eines Teilproduktes enthält die Akkumulator- , schaltung am Ende einer vollständigen Multiplikation das End- ' produkt im niedrigstelligen Teil, d.h., in den η rechten Bit-
I j
!Stellen. Wenn daher diesem Produkt ein weiteres Produkt von > •zwei binären Operanden hinzuzufügen ist, kann zu diesem Zweck : nicht die gleiche Akkumulatorschaltung Verwendung finden, da j die Stellen des bereits vorliegenden Produktes mit den Stellen ! der zu bildenden Teilprodukte nicht übereinstimmen. Es ist da- ;
i ;
her notwendig, zur Bildung der neuen Teilprodukte eine zweite , Akkumulatorschaltung zu verwenden und, nachdem das zweite | Produkt erzeugt worden ist, beide Produkte zu einer Endsumme zuj 'vereinigen. Diese Einrichtungen haben neben dem erhöhten Schal-j tungsaufwand insbesondere den Nachteil eines erhöhten Zeitbe- j darfs, um die Summe von zwei Produkten zu bilden. Außerdem fin-j det bei diesen Einrichtungen das Vorzeichen der Operanden keine! !Berücksichtigung. Die Vorzeichen sind vielmehr separat zu verarbeiten, wozu zusätzliche Schaltmittel und zusätzliche Zeit zur Korrektur des Produktvorzeichens am Ende einer Produktbildung erforderlich sind.
Aufgabe der Erfindung ist es, zur Bildung und Akkumulation von Produkten eine Einrichtung anzugeben, die unter Vermeidung der genannten Nachteile einen geringen Schaltungsaufwand und eine
FR 976 010 A .·-·-
808820/0887
ι - 6 -
i
ι
hohe Arbeitsgeschwindigkeit gestattet. Die Merkmale zur Lösung dieser Aufgabe sind aus dem Patentanspruch 1 ersichtlich. Die Unteransprüche geben vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung an.
Ein Ausführungsbeispiel der Erfindung wird anhand der beiliegenden Zeichnungen nachfolgend beschrieben. Es zeigen:
Fig. 1 eine allgemeine Darstellung eines Ausführungs
beispieles der Erfindung,
Fig. 2 eine Zeittabelle mit den für den Betrieb der
in Fig. 1 gezeigten Schaltung erforderlichen Steuersignalen,
Fig. 3 den Aufbau der logischen Schaltung 20 in
Fig. 1,
Fig. 4 eine im Akkumulator verwendbare Addierzelle,
Fig. 5 eine im Akkumulator verwendbare Subtraktionszelle,
Fig. 6 die Schaltungen 7 und 9 der Fig. 1,
Fig. 7 eine Einrichtung zur Zweierkomplementierung
des Multiplikanden und
Fig. 8 ein weiteres Ausführungsbeispiel eines Teiles
der in Fig. 1 gezeigten Schaltung.
Fig. 1 zeigt eine allgemeine Darstellung eines der erfindungsgemäßen Multipliziererakkumulators, bei dem die Operanden 4 Bit große binäre Zahlen sind, ausgedrückt in Zweierkomplementform.
FR 976 010 " Λm
809820/0887
Das äußerste linke Bit ist das Vorzeichenbit. Für positive ' Zahlen ist es gleich O und für negative Zahlen gleich 1. Um das Zweierkomplement einer in diesem Code ausgedrückten Zahl zu ,
bekommen, genügt es, alle Bits umzukehren und +1 zu der auf !
diese Weise erhaltenen Zahl zu addieren. '
Vor der Multiplikation und Akkumulation der Operanden werden ! diese nach dem Erfindungsgedanken zweierkomplementiert oder ; auch nicht, je nach Bedarf zur Erfüllung der beiden folgenden | Forderungen. ;
1. Multiplizierer: immer positiv.
2. Vorzeichen vor dem Produkt: immer positiv.
Die nachstehende Tabelle gibt entsprechend dem Vorzeichen vor dem Produkt und dem Vorzeichen des Multiplizierers an, ob das Zweierkomplement der Operanden zu nehmen ist oder nicht. Es wird angenommen, daß der Multiplikator der erste Operand des Produktes A. ist und der Multiplikand der zweite Operand B..
Tabelle I
Vorzeichen vor Vorzeichen A. A.-Zweier- B.-Zweier-Idem Produkt komplement? komplement?
! + + Nein Nein
; + - Ja Ja
i - + Nein Ja
ί - - Ja Nein
per erfindungsgeroäße Multipliziererakkumulator wird nachfolgend beschrieben. Die Operanden A. und B. werden der Schaltung über die Sammelleitungen 1 bzw. 2 zugeführt und in den Registern 3 und 4 mit η-Positionen gespeichert, wobei η gleich der Anzahl von Bits ist, d.h. in diesem Beispiel gleich 4. Die äußersten linken Positionen 3-3 und 4-3 enthalten die Vorzeichenbits und die Positionen 3-2 bis 3-0 und 4-2 bis 4-0 die wertdarstellenden Bits. ______
FR 976 01° 009820/0887
— O ~
!Zwei logische Schaltkreise 5 und 6 bestimmen nach der obigen Tabelle, ob die Operanden A. und D komplementiert werden müssen oder nicht.
Die logische Schaltung 5 empfängt die Vorzeicheninformation vom Multiplizierer über die Leitung 5-e, die an die Stufe 3-3 angeschlossen ist. Da das Vorzeichenbit O oder 1 ist, wird ein Komplementierungssteuersignal über die Leitung 5-s an eine iKomplementierschaltung des Multiplizierers 7 gegeben.
Der logische Schaltkreis 6 empfängt die Vorzeicheninformation vom Multiplizierer über die Leitung 6-1 , das vor dem Produkt stehende Vorzeichen über die Leitung 6-2. Nach der obigen Tabelle erzeugt diese Schaltung ein Komplementiersteuersignal auf j ihrer Ausgangsleitung 6-s, das an eine Schaltung zur Komplemenjtierung des Multiplikanden 8 angelegt wird.
Es wird angenommen, daß ein Signal mit hohem Signalpegel oder Eins-Komplementierungssignal anzeigt, daß der Operand komplementiert werden sollte, und daß ein Signal mit niedrigem oder Nullpegel anzeigt, daß der Operand nicht verändert werden sollte. Andere Übereinkünfte können natürlich entsprechend der verwendeten logischen Schaltung getroffen werden.
Je nach dem, ob die Komplementierungssignale nun einen hohen oder niedrigen Signalpegel haben, komplementieren die Schaltungen 7 und 8 die Operanden bzw. lassen sie unverändert. Die viex Bits des zweierkomplementierten oder unveränderten Multiplikators in den Stufen 7-3, 7-2, 7-1, 7-0 werden an einen Serienumsetzer 9 gegeben, der diese Bits seriell der Auegangeleitung 9-s zuführt, gesteuert durch die Taktimpulse H. Die Bits des Multiplikanden oder seines Komplementes in den Stufen 8-3 bis 8-0 werden an vier UND-Glieder 10-3 bis 10-0 angelegt.
FR 976 010 \ Λ \ **»
B09820/0887
Der zweite Eingang der UND-Glieder 10*3 bis 10-0 besteht im Ausgang 9-8 des Serienumsetzers 9. Zu jeder Taktzeit wird daher ein Bit des Multiplikators oder sein Komplement gleichzeitig an die UND-Glieder IO angelegt über die Leitungen 9-3 bis 9-O, beginnend mit dem Wert wie das Bit. Wenn dieses Bit gleich 1 ist, liefern die Ausgange 11-3 bis 11-O der UND-Glieder 1O Signale, deren logische Pegel den Einsen des Multiplikanten oder seines in der Schaltung 8 enthalten Komplementes entsprechen. Wenn andererseits das Bit gleich O ist, stellen die auf den Leitungen 11-3 bis 11-O erscheinenden Signale den logischen Pegel O dar. Die Ausgange 11-3 bis 11-0 der UND-Glieder IO werden an zwei Reihen von Torschaltungen 12-3 bis 12-O und 13-3 bis 13-0 angelegt, wobei der Ausgang 11-3 an die Torschaltungen 12-3 und 13-3 und der Ausgang 11-0 an die Torschaltungen 12-0 und 13-O gleichzeitig angelegt wird. Die Ausgänge 14-3 bis 14-O der Torschaltungen 12-3 bis 12-O sind mit den ersten vier Stufen 166-3 bis 16G-O eines achtstufigen Akkumulators 16 verbunden. Die Ausgänge 15-3 bis 15-O der Torschaltun- ! gen 13-3 bis 13-0 sind mit den vier Stufen 16D-3 bis 16D-0 des i Akkumulators 16 verbunden. Die Anzahl der Stufen im Akkumulatorj hängt natürlich von der Anzahl der Bits der Operanden ab. Bei I Operanden mit η Bits sollte der Akkumulator zwei η-Stufen ha- j ben, und die Anzahl der Torschaltungen und UND-Glieder sowie j jdie Länge der Register 3 und 4 und der Schaltungen 7 und 8 | sollte entsprechend verändert werden.
Die äußerste rechte Stufe 16D-0 ist mit der äußersten linken j Stufe 16G-3 verbunden. Gesteuert durch Taktimpulse wird das am Suramenausgang einer Zelle erscheinende Bit an den Summeneingang der nächsten Zelle angelegt und das am Übertragsausgang erscheinende Bit an den Obertragseingang derselben Zelle.
Stufen 16G-2, 16G-1, 16G-O und 16D-2, 16D-1, 16D-0 beste-Mn aus Addierzellen, von denen ein Aueführungsbeispiel später Lm Zusammenhang mit Fig. 4 besehrieben wira. Die Stufen 16G-3 and 16D-3 bestehen aus Subtraktionszellen, von denen ein Aus ra97601°
- 10 führungsbeispiel im Zusammenhang mit Fig. 5 beschrieben wird.
Die Torschaltungen 12-3 bis 12-0 werden durch ein Akkumulations Steuersignal ACC-G auf der Leitung 17 geöffnet und die Torischaltungen 13-3 bis 13-0 durch ein Akkumulations-Steuersignal
IACC-D auf der Leitung 18.
Die Summenausgänge 19-0 bis 19-7 des Akkumulators 16 sind jmit einer logischen Schaltung 20 verbunden, die die Summenbits ides Akkumulators in ein Ausgaberegister 21 in einer Reihenfolge jüberträgt, die von der Anzahl der akkumulierten Produkte abihängt. Diese logische Schaltung 20 empfängt als Steuersignale die Signale ACC-D und ACC-G über die Leitungen 17 und 18.
Vor der weiteren Beschreibung der Arbeitsweise der in Fig. 1 gezeigten Schaltung wird zuerst die Arbeitsweise des Akkumulators kurz beschrieben.
Bei den Addierzellen 16G-2, 16G-1, 16G-0, 16D-2, 16D-1, 16D-0 handelt es sich um konventionelle Zellen mit drei Eingängen und zwei Ausgängen. Einer der Ausgänge wird Summenausgang genannt und liefert ein Bit gleich der Summe Modulo 2 der drei an die !Eingänge angelegten Bits, und der zweite Ausgang wird Ubertragsausgang genannt und liefert ein Übertragsbit der Summierung der drei Eingangsbits. Ein erster Eingang empfängt ein
jOperandenbit genanntes Bit von der Komplementierschaltung 8 |über die UND-Glieder 10 und die Schaltglieder 12 oder 13, die zu der entsprechenden Zelle gehören, wie es durch die Indizes hinter den Referenzen angezeigt ist. Der zweite Summeneingang empfängt ein Bit auf dem Summenausgang der linken Zelle, und der dritte Ubertragseingang empfängt das Ubertragsbit derselben !Zelle, um eine Taktperiode verzögert,
bie Wahrheitstabelle sieht wie folgt aus:
FR 976 010
609820/0887
Tabelle II Eingabebits Ausgabebits
Summe Übertrag Summe übertrag
Operand
O O O O O
O O 1 1 O
O 1 O 1 O
O 1 1 O 1
1 O O 1 O
1 O 1 O 1
1 1 O O 1
1 1 1 1 1
Die Subtraktionszellen 166-3 und 16D-3 enthalten auch drei Eingänge für Operand, Summe und übertrag und zwei Ausgänge für Summe und übertrag, die wie die Eingänge und Ausgänge der Addierzellen geschaltet sind. In diesen Zellen werden die negativen Eingangsbits Operand und Übertrag von dem positiven Summenbit nach der folgenden Wahrheitstabelle subtrahiert:
Tabelle III Eingabebits Ausgabebits Operand Summe Übertrag Summe übertrag
O O O O O
O O 1 1 1
O 1 O 1 O
O 1 1 O O
1 O O 1 1
1 O 1 O 1
1 1 O O O
1 1 1 1 1
Die Arbeitsweise der Schaltung wird im Zusammenhang mit Fig. 2 beschrieben, die den Operationstakt zeigt. Zum leichteren Verständnis der Beschreibung wird angenommen, daß die algebraische Summe S der drei Produkte A-B-, A2B2, A3B3 zu errechnen ist.
809820/0887
A1 = 1010 B1 = 1101
A2 = 0111 B2 = 1100
A3 = 1010 B3 = 0101
Während einer Anfangsphase werden die Register und Zellen 16G-3 bis 16G-1 und 16D-3 bis 16D-0 des Akkumulators durch ein Signal (a) in Fig. 2 auf 0 gesetzt, und die Zelle 16G-0 wird auf 1 gesetzt. Der Zweck dieser Einstellungen wird später erklärt . Die beiden Operanden des ersten Produktes werden dann in die Register 3 und 4 geladen, gesteuert durch das Signal i(b). Unter Steuerung des Signales (c) wird eine mögliche Komplement ie rung durchgeführt, das Vorzeichen von A1 geprüft und, da es negativ ist, wird A1 in der Schaltung 7 entsprechend der Wahrheitstabelle I im Zweierkomplement ergänzt. B1 wird nicht komplementiert.
Die Schaltung 7 liefert dem Serienumsetzer 9 das Dreierkomplejment von A1, d.h., A1 ..=0110, und die Komplementierschaltung
jliefert den UND-Gliedern 10 den Multiplikanden B1-HOi.
Während einer ersten Multiplikationsphase, gesteuert durch die Taktimpulse H, liefert der Serienumsetzer 9 die Bits des Opejranden A' an seinem Ausgang 9-s. Während dieser ersten Multiplikationsphase öffnet das Signal ACC-G die Schaltglieder 12-3, ί12-2, 12-1 und 12-0 und demzufolge werden die Teilprodukte des Multiplikanden B1 durch die Bits von A1.. im linken Teil 16G des Akkumulators gespeichert.
Wenn die erste Multiplikation beendet ist, steht das Ergebnis im Akkumulator, wobei das wertniederste Bit am Summenausgang der Zelle 16D-1 bereit ist, an den Summeneingang der nächsten Zelle rechts von 16D-0 angelegt zu werden.
FR 976 010
809820/0887
Bevor diese Multiplikation abgeschlossen wird, werden die beiden neuen Operanden in die Register 3 und 4 geladen (Fig. 2). Sie können möglicherweise komplementiert werden. Im vorliegenden Fall bleiben sie jedoch unverändert, und die zweite Multiplikation wird ausgeführt. Die Teilprodukte werden im rechten Teil des Akkumulators addiert, der die wertniederen Bits des vorhergehenden Produktes enthält, una zwar unter Steuerung des Signales ACC-D, dessen Signalpegel in diesem Augenblick hoch Lst und die Schaltglieder 13-3, 13-2, 13-1 und 13-0 öffnet.
tat Ende der zweiten Multiplikation wird das wertniederste Bit der Summe A^B^ + A3B3 an den Summeneingang der Zelle 16G-0 angelegt.
Das dritte Produkt, das wie oben berechnet wird, wird demzufolge im linken Teil des Akkumulators gespeichert. Der Multiplikator A3 ist negativ und sollte im Zweierkomplement ergänzt «erden, woraus sich ergibt A' « 0110. B' sollte ebenfalls im Zweierkomplement ergänzt werden, so daß sich ergibt B' = 1011.
i ■'■■■■
pie nachstehende Tabelle IV zeigt den Zustand der Eingänge und Ausgänge der verschiedenen Zellen G-3 bis G-O und D-3 bis D-O ies Akkumulators 16 bei der Ausführung der Multiplikationen and Additionen an. Die Operanden- und Summeneingänge der Zellen rerden mit IOp und I-S und die Summen- und Übertragsausgänge nit S bzw. C bezeichnet. Der an einer Taktperiode durch eine | Seile vorgesehene Ausgang C schaltet den Eingang X-C derselben j Seile bei der nächsten Taktperiode auf hohes Potential. Die Beseichnungen L und M bedeuten wertniederstes Bit und werthöchites Bit.
fenn die drei Produkte gespeichert sind, braucht man vier weitere Taktperioden, um das Endergebnis zu bekommen, da alle tberträge, die in den verschiedenen Positionen bleiben können, iddiert werden nüssen.
FR 976 010 ^ A . * * » «
809820/0887
iDer Akkumulator wird am Anfang so geladen, daß die Summenausjgänge der acht Zellen auf 00010OO0 entsprechend eingestellt !werden, so daß beim Speichern des ersten Operanden der Summen-
!eingang der Zelle 16D-3 auf 1 gesetzt wird. Dieses Einerbit !an diesem Summeneingang ist ein Trennungsbit, das es gestattet, !die in den Positionen der werthöchsten Bits erzeugten Überträge nicht weiterzuleiten, da sie zu den wertniedersten Bits !addiert würden.
FR 976 010
809820/0887
L Zellen FR 976 010 4 G-2 G-I r G-O D-3 D-2 - 2750212
4
Produkte
I Bedingung 15 - D-I D-O
N S TABELLE I\ O O 1 O O
K C G-3 O O O O O O O
S I-Op O O O O O 0110 χ 1101
- I-S O O O 9 1 O
A S O O O O 1 O O O
C C O O O O O O O O
C I-Op O 1 O 1 O O
I-S O O O O O 1
S O 1 O 1 O 1 O O
C 1 O O O O O O O
I-Op O 1 O 1 O O
I-S 1 1 1 O 1 O
S 1 O 1 1 1 O 1 O
C 1 1 O O O O 1 O
I-Op O O O O O O
I-S O O O 1 1 1
R S 1 1 O 1 1 1 O 1
E C O O O O O O O 1
C I-Op O 1 1 O O Olli χ 1100
H I-S 1 1 1 O 1 1 O O
T S 1 1 1 O O O 1 LO
S C O O O O 1 1 O
A I-Op Ml 1 1 O O
C I-S O O 1 1 O O O O
C S O O 1 1 1 O O 1
C O O O r 1 O 1
I-Op O 1 1 O O
i-s O O O 1 1 1 O O
s. O O O 1 1 1 O O
C O O O 1 1 O O
I-Op 1 O O O O
I-S 1 1 O O 1 1 O O
S O 1 O O O O 1 O
C O O O O 1 1 O
O O O
O
O
809820/0887
r «.-τ
Forts. TABELLE IV
Zellen G-3 G-2 G-I G-O D-3 D-2 D-I D-O Produkte
Bedingung ΟΠΟ χ 1011
I-Op 0 0 0 0
I-S 0 0 1 OL MO 0 0 · 1
S 0 0 1 0 0 1 0 1
C 0 0 0 0 0 0 0 0
I-Op 1 0 1 1
L I-S . 1 0 0 1 0 0 1 0
-IH S 0 0 1 O 0 ü 1 0
ΐ* C 0 0 0 1 0 0 0 0
K
C
I-Op 1 0 1 1
I-S 0 0 0 1 0 0 0 1
A S 1 0 1 1 0 0 0 1
C C 1 0 0 1 0 0 0 0
C I-Op 0 0 0 0
I-S 1 1 0 1 1 0 0 0
S 0 1 0 0 1 0 0 0
C 0 0 0 1 0 0 0 0
R I-S MO 0 1 0 0 1 0 LO
E S 0 0 1 1 0 1 0 0
S C 0 0 0 0 0 0 0 0
U I-S 0 0 0 1 1 0 1 0
L S 0 0 0 ■ ι 1 0 1 0
T C 0 0 0 0 0 0 0 0
A
T I-S 0 0 0 0 1 1 0 1
S 0 0 0 0 1 1 0 1
C 0 0 0 0 0 0 0 0
I-S 1 0 0 0 0 1 1 0
S 1 0 0 0 0 1 1 0
C 0 0 0 0 0 0 0 0
I-S 0 1 0 0 0 0 1 1
S 0 1 0 LO MO 0 1 1
FR 976 010
809820/0887
Aus obigem Beispiel 1st zu ersehen, daß während der vier Taktperloden, In denen das Signal ACC-G hohes Potential einnimmt, die Produkte der Bits des Multiplizierers A'1 durch den Multiplikanden in jeder Taktperiode an die Eingänge I-Op der Zellen 16G-3 bis 16G-0 angelegt werden. Während der nächsten vier JTaktperioden werden die Produkte der Bits des Multiplizierers IA2 mit dem Multiplikanden B, an die Eingänge I-Op der Zellen 16D-3 bis 16D-0 angelegt. Während der nächsten vier Taktperioden werden die Produkte der Bits des Multiplizierers A' mit dem Multiplikanden B'3 an die Eingänge I-Op der Zellen 16G-3 bis 16G-0 angelegt.
Am Ende dieser dritten Multiplikationsperiode ist das Signal jACC-G hoch. Dann sind die Überträge nicht in das Ergebnis eingeschlossen. Daher sind vier weitere Taktperioden (Signal ACC-Q auf hohem Pegel) und ein weiterer Impuls, das Signal f in Fig. 2, erforderlich, um das Endergebnis an den Ausgängen 0-S der Zellen zu erhalten. Siehe hierzu die letzte Zeile S der Tabelle.
Wenn die Summe einer ungeraden Anzahl von Produkten errechnet wird, erscheint das Ergebnis an den Summenausgängen der Akkumulatorzellen und das wertniederste Bit am Ausgang 0-S der Zelle •16G-0. Die logische Schaltung überträgt dieses Ergebnis in das jAusgaberegister dadurch, daß das wertniederste Bit von der
'zelle 16G-0 in die Stufe 21-0 des Registers gespeichert wird.
i ''
In diesem Fall sollte die logische Schaltung 20 die Bits von .
den Ausgängen 19-3, 19-2, 19-1 und 19-0 in die Stufen 21-7, 1 ι
j21-6, 21-5 und 21-4 und die Bits von den Ausgängen 19-7, 19-6, J
119-5 und 19-4 in die Stufen 21-3, 21-2, 21-1 und 21-0 übertra- j
gen. I
Um das durch das Trennungsbit veränderte werthöchste Bit zu in-j vertieren, ist ein Inverter 22 vorgesehen. Im gewählten Bei-
spiel ist das werthöchste Bit eine 0, während das Ergebnis negativ ist. Wenn umgekehrt die Summe einer geraden Zahl von Produkten berechnet wird, erscheint das Ergebnis an den ;
I I
FR 976 010 · . Ä A A-
809820/0887
2750*12
ι (Ausgängen O-S der Zellen und das wertniederste Bit ist ein Aus-!
gang O-S der Zelle 1GD-0 und das werthöchste Bit ein Ausgang JO-S der Zelle 16G-3. In diesem Fall überträgt die logische Schaltung 20 die Bits von den Ausgängen 19-7 bis 19-0 in die Stufen
21-7 bis 21-0 des Registers 21. !
; j
Eine hierfür geeignete Schaltung ist in Fig. 3 gezeigt. Sie enthält zwei Reihen von Torschaltungen 30-7 bis 30-0 und 31-7 j bis 31-0. Die Torschaltungen beider Reihen gehören paarweise zusammen, und jedes Paar ist mit einem Ausgang des Akkumulators j verbunden. Das Torschaltungspaar 30-7 und 31-7 ist beispiels- ι weise mit dem Ausgang 19-7 verbunden. Die Ausgänge der Torschal-jtungen 30-7 bis 30-0 sind mit den Stufen 21-7 bis 21-0 des Regi-j-Sters 21 verbunden. Die Ausgänge der Torschaltungen 31-7 bis ! pi-4 sind an die Stufen 21-3 bis 21-0, und die Ausgänge der ! Torschaltungen 31-3 bis 31-0 sind an die Stufen 21-7 bis 21-4 ! angeschlossen. !
Die Torschaltungen 31-7 bis 31-0 werden durch ein Signal geöff-! net, das vom UND-Glied 33 abgegeben wird, wenn sich das Signal \ ACC-G gleichzeitig mit dem Übertragungssignal auf hohem Pegel j befindet. Die Bits von den Ausgängen 90-3 bis 90-0 werden daherj in die Stufen 21-7 bis 21-4 und die Bits von den Ausgängen 19-7j bis 19-4 in die Stufen 21-3 bis 21-0 übertragen. Diese Bedingung tritt auf, wenn die letzte Akkumulation nach links durch- j
j geführt wurde. j
Die Torschaltungen 30-7 bis 30-0 werden durch ein Signal geöffnet, das vom UND-Glied 32 abgegeben wird, wenn das Signal ACC-D gleichzeitig mit dem Übertragungssignal hoch ist. Die JBits von den Ausgängen 19-7 bis 19-0 werden demzufolge in die jstufen 21-7 bis 21-0 übertragen. Diese Bedingung tritt ein, !wenn die letzte Akkumulation vor der Übertragungsoperation nach rechts durchgeführt wurde.
FR 976 010
809820/088
Die Inverter 22-1 und 22-2 invertieren das werthöchste Bit des Ergebnisses. Im Zusammenhang mit Fig. 4 wird anschließend ein ■ Beispiel für eine Addierzelle beschrieben, wie sie als Zelle :
16G-2 bis 16G-0 und 16D-2 bis 16D-0 verwendet werden kann. j
Diese Zelle enthält ein Antivalenzglied 40 (Exklusiv-Oder-Glied), das das vorher definierte Operandenbit an seinem Eingang I-Op j 41, das Summenbit der vorhergehenden Zelle an seinem Eingang < I-S 42, das Ubertragsbit an seinem Eingang I-C 43 empfängt. Der Ausgang des Antivalanzgliedes 40 ist mit einer Verriegelung 44 i verbunden, die das Summenausgabebit speichert und bei jedem ι [Taktsignal an den Ausgang O-S 45 anliegt, der mit der nächsten ! Zelle verbunden ist. Die Verriegelung 44 empfängt Taktimpulse H Über die Leitung 46 und das Rückstellsignal R (a) über die Lei-: tung 47. Die Zelle enthält außerdem eine Majoritätsabfühlschaltung 48 mit denselben Eingängen 41, 42, 43 wie das Antivalenzglied, die ein Bit 1 ausgibt, wenn die Zahl 1 sich auf eine ajorität auf den drei Eingängen bezieht. Die Ausgabe der chaltung 48 ist mit einer Verriegelung 4» verbunden, die den bertrag der Addieroperation speichert und dieses Ubertragsbit i jedem Taktsignal an die Schaltkreise 40 und 48 anlegt. Die errlegelung 49 empfängt über die Leitung 46 die Taktimpulse H und das Signal R (a) über die Leitung 47. Die Wahrheitstabelle dieser Schaltung ist die oben angeführte Tabelle II.
Fig. 5 zeigt schematisch eine Subtraktionszelle, die in den Stufen 16G-3 oder 16D-3 des Akkumulators verwendet werden kann. Diese Zelle enthält dieselben Grundelemente wie die Additionszelle, nämlich das Antivalenzglied 50, eine Verriegelung 54, eine Majoritätsschaltung 58 und eine Verriegelung 59. Die Antivalenzschaltung 50 hat drei Eingänge X-O 51, I-S 52 und I-C 53 wie vorher schon definiert. Mit der Verriegelung 54 wird das Summenbit gespeichert, und sie wird durch den Taktimpuls H über die Leitung 56 und den Rückstellimpuls R (a) über die Leitung 57 gesteuert.
PR 976 010
809820/0887
275U2 12
Die Majoritätsschaltung 58 empfängt das Operandenbit über die j Leitung 51, das invertierte Summenbit über die Schaltung 60 j
und die Leitung 52' und das Übertragsbit über die Leitung 53. j
i Die Verriegelung 59 speichert das Ubertragsbit der Subtraktion,]
und dieses Bit wird gesteuert über den Taktimpuls H auf der |
Leitung 56 an den Eingang 53 angelegt. Die Verriegelung wird ;
durch das Signal (a) zurückgestellt, das über die Leitung 57 ■
angelegt wird. Nach den an die Eingänge angelegten Bits lie- '
fert diese logische Schaltung die Summen- und Ubertragsbits i
gemäß Wahrheitstabelle III. j
Die Zweierkomplementierung einer binären Zahl erfolgt durch ' Invertieren ihrer Bits und Addieren einer 1 zu der auf diese I Weise erhaltenen binären Zahl. Die Invertierung erfolgt leicht durch Antivalenzglieder, von denen ein Eingang das Vorzeichenbit oder ein Komplementierungssignal von den Schaltungen 5 und 6 empfängt und der andere Eingang ein Bit des zu invertierender Operanden. Das Bit am Ausgang einer jeden Antivalenzschaltung
ist die Invertierung des an den Eingang angelegten Operandenbits, wenn der Operand invertiert werden soll, und es ist dem
an den Eingang angelegten Operandenbit im zweiten Falle gleich, wenn die Umkehrung nicht erwünscht ist. Die Addition des Bit 1 :ist wegen der Weiterleitung möglicher Überträge zeitaufwendig.
Fig. 6 zeigt schematisch die Schaltungen 7 und 9, die zur
j Zweierkomplementierung des Multiplikators dienen und seriell
Bits über die Leitung 9-s, beginnend mit dem wertniedereten Bit, liefern. Diese Schaltung enthält vier Antivalenzglieder 61, 62, 63 und 64, von denen jeweils ein Eingang mit den Stufer 3-3, 3-2, 3-1 und 3-0 des Registers 3 verbunden ist und deren zweiter Eingang jeweils von der Leitung 5-s kommt.
Die durch die Antivalenzglieder 61, 62, 63 und 64 invertierten Multiplikatorbits werden bei negativem Vorzeichen an die Operandeneingänge von vier Addierzellen angelegt, wie es in
Fig. 4 gezeigt ist.
FR 976 010
809820/0887
In der letzten Zelle wird die Übertragsspeicher-Ausgangsverriegelung, dargestellt als Block C, auf 1 gesetzt, wenn das Multiplizierervorzeichenbit negativ ist. Somit wird +1 zu der durch die invertierten Bits des Multiplikators gebildeten !Zahl addiert. Das Komplement wird daher bitweise an den Sumjmenausgang 9-s der Addierzelle 68 gegeben. j
i * . ■
tfenn der Multiplikator positiv ist, werden seine Bits nicht
durch die Antivalenzglieder invertiert und die Übertragsspei- · cherverriegelung der letzten Zelle 68 wird nicht auf 1 gesetzt,j 3o daß der Satz von Zellen 65, 66, 67 und 68 nur dazu dient, i sei jedem Taktsignal die Multipliziererbits seriell auf die j Ausgangsleitung 9-s zu übertragen. ;
! i
pie Schaltung wird hier nicht im einzelnen beschrieben. Ihr vorteil liegt darin, daß sie aus denselben Zellen besteht wie der Akkumulator, wodurch die praktische Ausführung des Multiplizierakkumulators erleichtert wird.
Anschließend wird die Komplementierung des Multiplikanden beschrieben. Die Invertierung der Multiplikandenbits unter Steuerung der Schaltung 6 erfolgt durch vier Antivalenzglieder, leren eine Eingang durch die Leitung 6-s gebildet wird und leren zweiter Eingang je ein Multiplikandenbit empfängt. Zur !weierkomplementierung muß +1 zu der durch Invertierung der iits erhaltenen Zahl addiert werden, wenn das Komplementier- iteuersignal auf der Leitung 6-s hoch ist. Wenn +1 zum Signal segel der Schaltung 8 su addieren ist» braucht man vier Taktrioden zur Heiterleitung der Überträge der Addition, was zu taufwendig wäre. Zur Vermeidung dieses Nachteile wird -»-1 den Zellen 16G-0 oder 16D-0 des Akkumulators addiert, e nach dem der zu invertierende Multiplikand links oder chte akkumuliert wird. Die hierfür vorgesehene, in Fig. 7
«stellte Schaltung zeigt die Verbindung zwischen der Stufe -O des Registers 4 und der Leitung 11-0 des in Fig. 1 darge-
FB976O1° 809820/0887
stellten Akkkumulators einschließlich der Multiplizierschaltungj 10. Die Schaltung in Fig. 7 enthält ein Antivalenzglied 70, das das wertniedere Bit des Multiplikanden von der Stufe 4-0 und das Komplementiersteuersignal von der Schaltung 6 empfängt. Der Ausgang des Antivalenzgliedes 70 ist mit einer Polaritätshalteverriegelung 71 verbunden, die das Eingangsbit an seinen Ausgang 71-a und das invertierte Eingangsbit an den Ausgang 71-b gibt. Diese, das in Fig. 1 gezeigte UND-Glied 10 enthaltende Multiplizierschaltung ist äquivalent der Schaltung 10-0 der Fig. 7.
pie Schaltung 10'-0 enthält drei UND-Glieder mit den drei Eingängen 72, 73 und 74, ein ODER-Glied 75, das als Eingänge die Ausgangssignale der UND-Glieder 72, 73 und einer Verzögerungsschaltung 76 empfängt, die an das UND-Glied 74 angeschlossen 1st. Der Ausgang des ODER-Gliedes 75 ist mit den Schaltgliedern I12-O und 13-0 über die Leitung 11-0 verbunden.
Die ersten Eingänge der UND-Glieder 72 und 74 sind mit der zeitung 71-a und der erste Eingang des UND-Gliedes 73 mit der ueitung 71-b verbunden. Die zweiten Eingänge der UND-Glieder 72, 73 und 74 sind mit der Leitung 9-s verbunden. Die dritten Eingänge der UND-Glieder 73 und 74 sind direkt und der dritte Singang des UND-Gliedes 72 über den Inverter 77 mit der Inkrenentsteuerleitung 6-s verbunden.
Anschließend wird die Arbeitsweise der in Fig. 7 gezeigten Schaltung beschrieben. Wenn der Multiplikand nicht komplementiert werden soll, hat das Inkrementsteuersignal auf der Leibung 6-s niedriges Potential. Demzufolge werden die UND-Glieder 73 und 74 nicht eingeschaltet und liefern ein Nullbit an das ODER-Glied 75 ungeachtet der Bitwerte an ihren anderen Eingänjen, und das UND-Glied 72 wird vorbereitet, so daß das wertnielerste Bit des mit dem Bit des Multiplikators multiplizierten Multiplikanden durch das ODER-Glied 75 an den Akkumulator übertragen wird. In diesem Fall werden die Teilprodukte des nicht-FR 976 010 ^ . _ „
809820/0887
; - 23 -
!komplementierten Multiplikanden multipliziert mit den Bits des {Multiplikators an den Akkumulator übertragen. >
Wenn der Multiplikand zu komplementieren ist, ist das Erhö- * hungssignal auf der Leitung 6-s hoch und die UND-Glieder 73 ! und 74 werden eingeschaltet, das UND-Glied 72 jedoch nicht. Das Bit auf der Leitung 71-a ist die Inversion des wertnieder- : sten Bit des Multiplikanden.
Wenn dieses letzte Bit gleich 1 ist, ist das Bit auf der !Leitung 71-a O und das Bit auf der Leitung 71 -b ebenfalls 1. Das Produkt dieses Multiplikandenbits mit dem Multiplikatorbit Wird daher an die Schaltung über das UND-Glied 73 übertragen. Das entspricht der Addition von +1 zu der durch die invertier- ! ten Bits des Multiplikanden gebildeten Zahl. Nimmt man an, daß j der zu komplementierende Multiplikand 1011 lautet, so ist die ! durch die invertierten Bits gebildete Zahl 0100. Wenn dazu +1 j
ι addiert wird, erhält man 0101. Diese Operation bringt keinen j
Übertrag mit sich. j
Wenn umgekehrt das wertniederste Bit des Multiplikanden im Zweierkomplement zu ergänzen und gleich 0 ist, d.h., der Multiplikand ist gleich 1010, dann ist die durch die invertierten Bits gebildete Zahl 0101 und ihr Zweierkomplement ist 0110. Das Bit auf der Leitung 71-a ist 1 und das Bit auf der Leitung bi-b sind 0. Demzufolge liefert das UND-Glied 73 ein Nullbit, angeachtet der an seinen Eingang angelegten Multipliziererbits. )as UND-Glied 74 liefert ein Ausgangsbit, das gleich dem Prolukt des Multiplikandenbit· und eines Bits des Multiplikators Lst. Wenn dieses Bit eine 1 ist, liefert das UND-Glied 74 iine 1 an die Verzögerungeschaltung 76, die dort für eine Taktf periode unter Steuerung der Taktimpulse H gespeichert wird. )emzufolge liefert das ODER-Glied 75 ein Nullbit an den Akkumulator, was dem letzten Bit des Zweierkomplements entipricht. Nährend der folgenden Taktperiode wird das in der /erzOgerungsschaltung 76 gespeicherte Bit dem Akkumulator FiT 976 Ö1Ö —— — — —
809820/0087
zugeführt, was der Weiterleitung des Übertrages entspricht, der Üurch die Addition der +1 erzeugt wurde, die für das Zweierkomplement erforderlich war.
Die im Zusammenhang mit den Fign. 1 bis 7 beschriebene Schaltung summiert algebraisch positive oder negative Operanden. Natürlich kann sie auch zum Summieren nur positiver Operanden verwendet werden, dann entfällt natürlich die Komplementierung eier Operanden. In diesem Falle können die Schaltungen 5, 6, 7 und ö wegfallen.
in der Beschreibung der in den Fign. 1 bis 7 dargestellten Schaltungen wurde das Ergebnis als eine 8 Bit große Zahl ausgedrückt. Bei manchen Anwendungen muß das Ergebnis einer Operation dieselbe Anzahl von Bits haben wie die Eingabeoperanden. Daher kann es notwendig werden, das Ergebnis auf eine vier feit große Zahl zu beschneiden. Anschließend wird ein Beispiel hierfür beschrieben. Den in Zweierkomplementform ausgedrückten Operanden können folgende Gewichte zugeordnet werden:
1 2+1 2°, 2-1 Γ2.
Das Ergebnis einer Multiplikation wird daher aus vier Zahlen vor dem Punkt bestehen und die Bits haben folgende Gewichte:
-23 22 21 2° , 2"1 2~2 2"3 2~4.
Um homogene Operanden und Ergebnisse zu bekommen, sollten die Bits des abgeschnittenen Ergebnisses dieselben Gewichte haben wie die Bits der Operanden. Im Endergebnis einer Akkumulation müssen die Bits mit folgenden Gewichten gehalten werden:
2+1 2O 2-1 2-2t
und daher werden die beiden linken und die beiden rechten Bits eliminiert und das Ergebnis aus den Positionen 21-5, 21-4, 21-3 und 21-2 des Ausgaberegisters genommen. FR 976 010
809820/088?
! 27bO2l2
j -25-
iBei Anwendung dieses Verfahrens kann ein Überlauf auftreten. Dies läßt sich wie folgt an den beiden zu eliminierenden linken Bits feststellen:
Wenn die beiden linken Bits sich von dem ersten beizubehaltenden Bit unterscheiden, ist ein Überlauf aufgetreten, was aus den Eigenschaften der in Zweierkomplementcode ausgedrückten Zahlen resultiert. Effektiv sind folgende positive oder negative Zahlen:
oooo, xxxx oder 1110, xxxx
gleich mit folgenden Zahlen:
OO, XXXX oder 10, XXXX.
Wenn also die ersten drei Bits identisch sind, können die beiden linken Bits ohne Veränderung des Ergebnisses eliminiert werden. Wenn umgekehrt diese ersten drei Bits unterschiedlich sind, können die beiden linken Bits nicht eliminiert werden, ohne das Ergebnis zu verändern, und in diesem Fall ist ein Überlauf aufgetreten.
Um das Ergebnis rechts zu beschneiden, können die beiden rechten Ergebnisbits eliminiert werden. Um trotz dieser Beschneidung möglichst dicht an das Ergebnis heranzukommen, kann man in der Position +1 addieren, die derjenigen folgt, an der die Beschneidung vorzunehmen ist. Dazu kann man zu Anfang +1 in die Zellen 16G-1 und 16D-1 addieren. Die Ergebnisbits können nämlich in anderer Reihenfolge angeordnet werden, da die Zahl der zu akkumulierenden Produkte gerade oder ungerade ist. Die oben be schriebene Anlage arbeitet mit vier Bit großen Operanden. Dieso Zahl wurde jedoch nur als Beispiel gewählt. Zur Verarbeitung von η Bit großen Operanden muß lediglich die Kapazität der verschiedenen Register und des Akkumulators entsprechend erhöht werden und die Zahl der UND-Glieder 10 sowie der Schaltglieder 12 oder 13 nach Bedarf vergrößert werden.
FR 976 010
809820/0887
Fig. 8 zeigt schematisch ein weiteres Ausführungsbeispiel einerj Schaltung zur Eingabe der Teilprodukte in den Akkumulator. Der Multiplikand wird gleichzeitig über zwei Sammelleitungen 2a und 2b an zwei Sätze von Schaltgliedern 80-a und 80-b geleitet, die durch die Signale ACC-G und ACC-D geöffnet werden.
Wach dem Signalzustand wird der Multiplikand in die Register 4-a oder 4-b geleitet. Die Ausgänge dieser Register sind an j die Komplementschaltungen 0-a und 8-b angeschlossen, deren [ Ausgaben zwei Sätze von UND-Gliedern 10, 10a und 1O-b zugeführt werden, in denen die Bits des Multiplikanden oder seines
Zweierkomplementes multipliziert werden mit den Bits des MuI- !
tiplikators ers oder dessen Zweierkomplementes. Die Ausgänge ,
|der UND-Glieder 10-a und 10-b bilden die Leitungen 14-3 bis ! 14-0 oder 15-3 bis 14-0 der in Fig. 1 gezeigten Schaltung.
Dieses Ausführungsbeispiel verlangt mehr Schaltkreise als das in Fig. 1 gezeigte Ausführungsbeispiel, gestattet jedoch die
Benutzung kürzerer Taktperioden, was von Vorteil sein kann.
Das oben beschriebene Gerät kann mikroprogrammiert werden, d.h., die verschiedenen Operationen können unter Steuerung von an die Steueranschlüsse angelegten Befehlen ausgeführt werden.
FR 976 010
809820/0887

Claims (9)

  1. PATENTANSPRÜCHE
    Einrichtung zur Bildung und Akkumulation von Produkten mehrstelliger binärer Operanden, dadurch gekennzeichnet, daß eine Teilprodukt-Generatorschaltung (9, 10) vorgesehen ist, die jeweils nacheinander, beginnend mit der niedrigsten Binärstelle, die Bits des Multiplikators mit allen Multiplikandenbits multipliziert, daß die Ausgänge der Teilprodukt-Generatorschaluung über zwei parallel angeordnete Sätze von Torschaltungen (12, 13) mit einer Akkumulatorschaltung (16) verbunden sind, die eine dem Resultat entsprechende Stellenzahl sowie eine Schaltung zur Stellenverschiebung aufweist, die mit einer Kopplung von der niedrigsten Akkumulatorstelle zur höchsten Akkumulatorstelle versehen ist und nach jeder Teilprodukterzeugung wirksam wird, daß der erste Satz Torschaltungen (12) mit einem hochstelligen Teil (16G) der Akkumulatorschaltung und der zweite Satz Torschaltungen (13) mit einem niedrigsteiligen Teil (16D) der Akkumulatorschaltung verbunden ist und daß der erste und der zweite Satz Torschaltungen während aufeinanderfolgender Multiplikationen jeweils wechselweise geöffnet sind.
  2. 2. Einrichtung nach Anspruch 1# dadurch gekennzeichnet, daß die Akkumulatorschaltung (16) zwei n-Steilen aufweist, wobei η die binäre Stellenzahl eines jeden der Operanden ist, und daß der erste Satz Torschaltungen (12) mit den η-höchsten Stellen (16G) der Akkumulatorschaltung und der zweite Satz Torschaltungen (16D) mit den η-niedrigsten Stellen der Akkumulatorschaltung verbunden ist.
  3. 3. Einrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Stellen der Akkumualtorschaltung aus einer binären Volladdiererzelle bestehen.
    FR976O1°
  4. 4. Einrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß dem Teilproduktgenerator (9, 10) für jeden Operanden eine Zweierkomplementierschaltung (7, 3) vorgeschaltet ist, daß die Zweierkomplementierschaltung (7) des einen Operanden in Abhängigkeit vom Inhalt der Vorzeichenstelle (3-3) dieses Operanden aktiviert wird und daß beide Zweierkomplernentierschaltungen (7, G) in Abhängigkeit vom Inhalt der Vorzeichenstelle eines Operanden und der Vorzeichenstelle des vorausgehend gebildeten Produkts aktiviert werden.
  5. 5. Einrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Akkumulatorschaltung (16) in den höchsten Stellen des hochstelligen (linken) und des niedrigstelligen (rechten) Teils je eine binäre Subtrahierzelle (16G-3, 16D-3) und in allen anderen Stellen binäre Addierzellen (16G-0 bis 16G-2, 16D-0 bis 16D-2) enthalten und daß die Subtrahierzellen mit Überträgen von den benachbarten Addierzellen der nächstniedrigen Stelle gespeist werden.
  6. 6. Einrichtung nach einem der Ansprüche 1 bis 5, dadurch ! gekennzeichnet, daß jede Stelle der Akkumulatorschaltung (16) eine Verriegelungsschaltung (44, 49, 54, 59) zur Speicherung des Summenbits und des übertragsbits aufweist.
  7. 7. Einrichtung nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß ein Multiplikandenregister in zwei stellengleiche Teilregister (4-a, 4-b) unterteilt ist, | die über je eine Zweierkomplementierschaltung (8-a,
    ι 6-b) und je ein Segment der Teilprodukt-Generatorschaltung (10-a, 10-b) mit je einem Satz der Torschaltungen (12, 13) verbunden sind, der seinerseits je einen Stellenteil der Akkumulatorschaltung (16) speisen.
    FR 976 010
    809820/0687
  8. 8. Einrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß die Ausgänge der Akkumulatorschaltung (16) über je eine als Zusammenfasser dienende Torschaltung (31) mit dem Eingang eines Ausgaberegisters (21) verbunden ist, dessen Stellenzahl kleiner ist als die der Akkumulatorschaltung, daß die Torschaltung in zwei Sätze von Torschaltungen (30, 31) unterteilt ist, von denen der erste den hochstelligen (linken) Teil (16G) der Akkumulatorschaltung mit dem Ausgaberegister und der zweite den niedrigstelligen (rechten) Teil (16D) der Akkumulatorschaltung mit dem Ausgaberegister verbindet, und daß der erste Satz Torschaltungen bei einem ungeradzahligen Abschlußprodukt und der andere Satz Torschaltungen bei einem geradzahligen Abschlußprodukt geöffnet ist.
  9. 9. Einrichtung nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß die mit den Ausgängen der höchsten Stellen des hochstelligen (linken) und des niedrigstelligen (rechten) Teils (16G, 16D) der Akkumulatorschaltung (16) verbundenen Torschaltungen (30-7, 31-3) über je eine Inverterschaltung (22-1, 22-2) an den Eingang der höchsten Stelle (21-7) des Ausgaberegisters (21) angeschlossen sind.
    IV 'i'Jh 010
    H 0 9 8 Ί 0 / Π θ Ö
DE19772750212 1976-11-12 1977-11-10 Einrichtung zur bildung und akkumulation von produkten Withdrawn DE2750212A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7634820A FR2371014A1 (fr) 1976-11-12 1976-11-12 Dispositif multiplicateur-accumulateur

Publications (1)

Publication Number Publication Date
DE2750212A1 true DE2750212A1 (de) 1978-05-18

Family

ID=9180067

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772750212 Withdrawn DE2750212A1 (de) 1976-11-12 1977-11-10 Einrichtung zur bildung und akkumulation von produkten

Country Status (6)

Country Link
US (1) US4142242A (de)
JP (1) JPS5386134A (de)
DE (1) DE2750212A1 (de)
FR (1) FR2371014A1 (de)
GB (1) GB1537810A (de)
IT (1) IT1115735B (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57141753A (en) * 1981-02-25 1982-09-02 Nec Corp Multiplication circuit
GB2108736B (en) * 1981-10-27 1984-12-12 Standard Telephones Cables Ltd Sum of products multiplier
FR2549622B1 (fr) * 1983-07-22 1985-10-04 Thomson Csf Cellule et circuit de calcul a architecture systolique utilisant de telles cellules
JPS61241830A (ja) * 1985-04-19 1986-10-28 Hitachi Ltd 乗算累積器
US4884232A (en) * 1987-12-14 1989-11-28 General Dynamics Corp., Pomona Div. Parallel processing circuits for high speed calculation of the dot product of large dimensional vectors
DE3850096D1 (de) * 1988-03-19 1994-07-14 Itt Ind Gmbh Deutsche CMOS-Parallel-Serien-Multiplizierschaltung sowie deren Multiplizier- und Addierstufen.
CA1311063C (en) * 1988-12-16 1992-12-01 Tokumichi Murakami Digital signal processor
US5475631A (en) * 1989-03-09 1995-12-12 Micron Technology, Inc. Multiport RAM based multiprocessor
US5301341A (en) * 1990-11-28 1994-04-05 International Business Machines Corporation Overflow determination for three-operand alus in a scalable compound instruction set machine which compounds two arithmetic instructions
US6427159B1 (en) 1999-08-03 2002-07-30 Koninklijke Philips Electronics N.V. Arithmetic unit, digital signal processor, method of scheduling multiplication in an arithmetic unit, method of selectively delaying adding and method of selectively adding during a first or second clock cycle
WO2004105241A1 (ja) * 2003-05-21 2004-12-02 Fujitsu Limited 多数決論理回路を有するフリップフロップ回路

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3311739A (en) * 1963-01-10 1967-03-28 Ibm Accumulative multiplier

Also Published As

Publication number Publication date
GB1537810A (en) 1979-01-04
JPS5522824B2 (de) 1980-06-19
JPS5386134A (en) 1978-07-29
FR2371014B1 (de) 1979-03-02
US4142242A (en) 1979-02-27
IT1115735B (it) 1986-02-03
FR2371014A1 (fr) 1978-06-09

Similar Documents

Publication Publication Date Title
DE2616717A1 (de) Digitales addierwerk
DE2803425A1 (de) Digitaleinrichtung zur ermittlung des wertes von komplexen arithmetischen ausdruecken
DE2628473B2 (de) Digitales Faltungsfilter
DE3901995A1 (de) Parallelmultiplizierer
DE2750212A1 (de) Einrichtung zur bildung und akkumulation von produkten
DE3037359A1 (de) Rechenwerkeinheit, insbesondere fuer gleitkomma-operationen
DE69025182T2 (de) Digitaler prozessor für zweierkomplementberechnungen
DE3940897C2 (de) Schaltungsanordnung und Verfahren zur Berechnung digitaler Summen in einem Halbleiteraddierer mit Parallelübertrag
EP0178424B1 (de) Zellenstrukturierter digitaler Multiplizierer mit semisystolischem Aufbau
EP0418412B1 (de) Schaltungsanordnung zur Produktsummenberechnung
DE3447634C2 (de)
DE69206604T2 (de) Schnelle Addierkette.
DE3323607A1 (de) Digitales rechenwerk
DE2727051A1 (de) Einrichtung zur binaeren multiplikation einer zahl mit einer summe aus zwei zahlen
DE3545433C2 (de)
DE2948340C2 (de) Informationsübertragungsanordnung für die Übertragung jeweils ausgewählter Informationseinheiten
DE2017132B2 (de) Binärer Parallel-Addierer
DE2000275A1 (de) Elektronischer Walzenschalter
EP1248186A2 (de) Carry-ripple Addierer
DE2426253B2 (de) Vorrichtung zum ziehen der quadratwurzel aus einer binaeren zahl
DE2605495B2 (de) Multiplikationsschaltung, insbesondere zum filtern von zeitmultiplexinformationen
DE1537307B2 (de) Binäres Schaltwerk
DE10130484B4 (de) 7-zu-3 Bit Carry-Save Addierer und Addierer damit
DE10139099C2 (de) Carry-Ripple Addierer
DE1524177C (de) Multiplikationseinrichtung zur teilweise parallelen Multiplikation binärer Faktoren

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee