DE2913327A1 - Multiplizierer fuer binaerdatenwoerter - Google Patents
Multiplizierer fuer binaerdatenwoerterInfo
- Publication number
- DE2913327A1 DE2913327A1 DE19792913327 DE2913327A DE2913327A1 DE 2913327 A1 DE2913327 A1 DE 2913327A1 DE 19792913327 DE19792913327 DE 19792913327 DE 2913327 A DE2913327 A DE 2913327A DE 2913327 A1 DE2913327 A1 DE 2913327A1
- Authority
- DE
- Germany
- Prior art keywords
- multiplier
- signals
- binary data
- data word
- complement
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/53—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
- G06F7/5324—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel partitioned, i.e. using repetitively a smaller parallel parallel multiplier or using an array of such smaller multipliers
Landscapes
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
- Multi Processors (AREA)
- Lock And Its Accessories (AREA)
Description
2913327 Dipl.-Phys. O.E. Weber _ £ D-e München 71
Patentanwalt Hofbrunnstraße 47
Telefon: (089)7915050
Telegramm: monopolweber manchen
M 1110
MOTOROLA ING.
1;)0j; iC-'r't Alfjonquin I-ioscl
SchruBiburg, 111. 60196
Multiolizierer für Binärd-.tenviörter
90984 Ο/0909
RAD ORtGlNAL
RAD ORtGlNAL
Es wird ein erweiterbarer Matrix-Multiplizierer offenbart, der eine asynchrone Folgeadditions-Technik zur Multiplikation
von zwei entweder als Lineargrößen oder als Zweierkomplementgrößen
geschriebenen Zahlen benutzt. Zur Vereinfachung der Erweiterung auf größere Matrixformen sind ein erster und ein
zweiter Steueranschluß vorgesehen. Die Steueranschlüsse können
programmiert werden, um entweder die Zweierkomplement- oder die Lineargrößen-Multiplikation auszuwählen. Pur eine Zweierkomplement-Multiplikation
werden die Steuereingänge entsprechend der relativen Position des einzelnen Multiplizierers
innerhalb einer erweiterten Matrix derart programmiert, daß die geeigneten Zweierkomplement-Korrekturausdrücke innerhalb
des einzelnen Multiplizierers erzeugt werden. Zur weiteren Verbesserung der Arbeitsweise des Multiplizierers wird eine
Übertrag-Erwartungs-Technik benutzt.
Die Erfindung betrifft allgemein betrachtet Multiplizierer-Schaltungen
und insbesondere einen asynchronen Folgeadditions Multiplizierer von hoher Geschwindigkeit.
Eine digitale Hochgeschwindigkeits-Multiplikation ist oft erforderlich zur Echtzeit-Computerverarbeitung bei solchen
Aufgaben wie digitales Filtern, Signalverarbeiten und schnell
Fourier-l'ransformat ionen.
Synchrone iterative Schiftadditions-Techniken sind wenig
geeignet, wenn die Geschwindigkeit ein kritischer Faktor ist. Deswegen wurden Matrix-Multiplizierer zur asynchronen Erzeugung
des Produktes von zwei Zahlen entwickelt. Eine derartige Multiplizierer-Schaltung wurde von Douglas Geist in
dem Aufsatz "MOS Processor Picks Up Speed With Bipolar Multipliers" in Electronics, 31. März 1977, Seiten 113-115
diskutiert.
9Q9840/09G8
Eine wünschenswerte Eigenschaft einer i-iultiplizierer-Schallung
ist die Fähigkeit, die Multiplikation mit Zahlen auszuführen, die in verschiedenen Zahlensystemen präsentiert werden. Bei
einigen Anwendungen erfolgen die Zahlen-Eingaben an die Multiplizierer-Schaltung in Absolutwerten (Lineargrößen-Form).
Bei anderen, sogenannten Zeichengrößen-Anwendungen ist ein Zeichen-Bit mit dem Größen-Abschnitt der Zahl gekoppelt,
um positive und negative Größen anzuzeigen. Bei wieder anderen Anwendungen wird eine Zweierkomplement-Zahlendarstellung
benutzt, um sowohl positive als auch negative Zahlen darzustellen. Ein Vorteil der Zweierkomplement-Niederschrift besteht
darin, daß die Subtraktion einer ersten Zahl von einer zweiten durch Addition des Zweierkomplements der ersten Zahl
zu der zweiten Zahl ausgeführt werden kann, wodurch die Notwendigkeit einer Abzugsgröße ausgeschaltet wird. Sowohl Größen-,
Zeichengrößen- und Zweierkomplement-Zahlensysteme sind der Fachwelt wohl bekannt und bedürfen hier keiner Beschreibung,,
P1Ur eine ausführlichere Übersicht der binären Zahlensysteme
sei auf Gear, Computer Organization and Programming, McGraw-Hill Book Company, 1969 hingewiesen.
Es können Anwendungen vorkommen, bei welchen sowohl Lineargroßenals
auch Zweierkomplement-Zahlen durch die gleiche Multiplizierer-Schaltung zu multiplizieren sind. Matrix-Multiplizierer-Schaltungen
herkömmlicher Art sind nicht dazu ausgelegt, den Multiplizierer programmieren zu können, das
heißt ihn zwischen Lineargrößen- und Zweierkomplementgrößen-Arbeitsweise umschalten zu können. So wird es anzuerkennen
fjoin, daß aiii L'atrix-Kultipliaierer, dex1 wahlweise rs teuerbar
sein kann, zur Interpretierung einer gegebenen Anzahl von Eingangs-ßits entweder als Lineargrößen-Zahl oder als Zweierkomplement-Zahl,
gegenüber dem Stand der Technik eine bedeutende Verbesserung wäre.
Eine weitere wünschenswerte Eigenschaft einer Multipliziererschaltung
ist ihre Einrichtung zur Erweiterung mehrerer
9098^0/0900
solcher Schaltungen in eine Matrix zur Multiplikation von Zahlen mit Bitmengen, welche die Kapazität einer einzelnen
Multiplizierer-Schaltung übersteigen. Da die Standard-Bitlänge
von Computer-Datenwörtern anzusteigen fortfährt, gewinnt die Notwendigkeit größerer Multiplizierer-Matrizen an Bedeutting.
Die Herstellung wirtschaftlich vertretbarer monolithischer IIochgeschwindigkeits-Multiplizierer-Schaltungen ist beim
derzeitigen Stand der integrierten Schaltungstechnik auf eine Schaltung zur Multiplikation von zwei 16-i3it-Operanden beschränkt.
Es sind herkömmliche Multiplizierer-Schaltangen bekannt, welche
zur Bildung einer erweiterten Multiplizierer-Matrix die Zusammenschaltung mit gleichen Schaltungen gestatten. Bei der
Bildung einer erweiterten. Matrix wird jeder der Operanden in Segmente unterteilt, wobei jedes Segment eine Bit-Menge hat,
welche der Kapazität der einzelnen Multiplizierer-Schaltung entspricht. Wenn die Operanden in Zweierkomplement-i'Orm sind,
zeigt das bedeutendste Bit (Zeichen-Bit) eines Operanden an, ob er positiv oder negativ ist. Wenn der Operand negativ ist,
dann müßten innerhalb der Multiplizierer-Schaltung Korrektur-Ausdrucke gebildet werden, um ein geeignetes Zweierkornplement-Produkt
zu liefern. Die herkömmlichen Multiplizierer-Schaltungen haben zusätzliche Eingangsanschlüsse, welche nur dazu
benutzt werden, das Zweierkomp lein ent-Zeichenbit eines jeden
Operanden zu empfangen. Diese zusätzlichen Eingangsanschlüsse müssen aber für diese Multiplizierer-Schaltungen innerhalb der
Matrix, welche die Zweierkomplement-Zeichenbits der Operanden nicht empfängt, auf eine logische "Hull" fest verdrahtet werden.
Diese zusätzlichen Eingangsanschlüsse sind mit den Addierschaltungen verbunden zum Addieren von Korrektur-Ausdrucken
in einer Zweierkomplement-Multiplikation« Füx solche Multiplizierer-Schaltungen
unterer Ordnung, für welche die zusätzlichen Eingangsanschlüsse auf eine logische "Null" fest verdrahtet
sind, sind die zum Addieren der Korrektur-Ausdrucke benutzten Addier-Schaltungen untätig. Somit wird deutlich,
909840/0909
daß eine Multiplizierer-Schnltung, die leicht in eine große Multiplizierer-Mi;trix erweitert werden krnr und nicht der Hinzufiigung
von beponaeren Addierschaltungen zur internen Addition
von Korrektur-Aufdrucken wrhrend cinor Zv/aierkomplemerit-Kultiplikation
bedarf, gegenüber dem Strand der Technik ein bedeutender
Fortöchritt ist.
Äufgrbe der Erfindimp- it-t die Sr-ΐκ ffun.^ einer. Iiultit>li
der durch 3fcouorein;-rän3'e "orofcr.· nitiiert werden k-nn, zwei Operanden
zu multiplizieren, die entweder als Line^r^VOHo/-! oder
If. ZueierkornpleTnenb^röCien ä--r:'-ertell b eind, und Λ-τ entsprechende
Produkt au erzeup:en.
j£ln weitei'er; Anliefen der Erfinduntr .L.rt die Herrtellunf; einec-;
rlaltipliziererr, de:,· zur Bildung einer Multirjlizierer-M; trir
leicht erv/eiterü v/erden k^nn zur Hultiplikfition von zwei Opei·-·.
nden, die entweder in Liner rgrößen- oder in Zweierkomplement
i'ürm d ·: ■ τξ-'βr. te 111 r.ind.
Ein v/eiterer AnJ.iogen der Erfindung ist die Hern teilung einen
Multiplizierex-s, der leicht in eine ZweierkoiiipleFient-Multiplizierer-Iietrix
erweiterbar ist, in welcher jeder Multiplizierer durch iJteuerein^änge progrummiei't werden kenn, während
einer Zweierkomplement-Multiplikation die geeigneten Zweierkomplement-RT-euzprodukt-Aurdrucke
zu liefern.
jJin veiterep Anliegen der Erfindung ±et die Herstellung eines
Multiplizierer?; zur Multiplikation von zvrei entwedei' in Linecr
;:;rößen- oder in Zweiei'komplement-i'orm dargestellten Operanden
und welcher die Notv/endigkeit erübrigt, zurätzlichf Addierer
vorzusehen, um während einer Zweierkomplement-Multiplikation die Zweierkomplement-Korrektur-Auadrucke zu addieren.
Kurz ger.Mgt, betrifft die Erfindung einen Multiplizierer, der
d;ο Produkt eines ersten und eines zweiten entweder in Line:rgrößen-
oder in Zweierkomplement-Notierung vorliegenden Binärdftenwortes
erzeugt. Ein erster und ein zweiter Steuer^nschluß
8098AO/O90S
BAD ORKälNÄL
empfangen ein erstes bzw. ein zweites Steuersignal, welche zu der Anzeige benutzt werden, ob das erste und das zweite
Binärdatenwort in Lineargrößen- oder in Zweierkomplement-Form
vorliegt ο Das erste und das zweite Binärdatenwort werden von
mehreren logischen Toren empfangen, welche auf das erste und das zweite Steuersignal ansprechen und mehrere Kreuzprodukt-Signale
liefern. Die Kreuzprodukt-Signale werden dann durch Addierer summiert in Übereinstimmung mit der binären Bewertung
der einzelnen Kreuzprodukt-Signale, um das Produkt des ersten und des zweiten Binärdatenwortes zu bilden« Der erste und der
zweite Steueranschluß gestatten die Zwischenverbindung einer Mehrzahl derartiger Multiplizierer zur Bildung einer erweiterten
Zweierkomplement-Multiplizierer-Matrix, wobei die relative Position eines jeden der Multiplizierer innerhalb der erweiterten
Matrix durch die Steuersignale angezeigt ist, welche von dem ersten und dem zweiten Steueranschluß empfangen werden.
V/eitere Einzelheiten mögen nun anhand der beigefügten Zeichnungen
erläutert sein, die im einzelnen folgendes darstellen:
Pig. 1 ist ein Blockdiagramm einer erweiterbaren 4x8 Matrix-Multiplizierer-Schaltung,
welches die Eingangs- und Ausgangsanschlüße zum Anschließen der Schaltung zeigt«
Pig. 2 ist eine Tabelle von Zweierkomplement-Kreuzprodukt-Ausdrücken,
welche durch die Multiplikation eines 8-Bit-Multiplikanden und eines 4-Bit-Multiplikators erzeugt werden.
Pig. 3 ist eine Tabelle von Zweierkomplement-Kreuzprodukt-Ausdrücken,
welche entsprechend einem Merkmal der Erfindung durch ein erstes und ein zweites Steuersignal modifiziert
sind ο
Pig. 4 ist ein Blockdiagramm eines erweiterten 8x16 Matrix-Multiplizierers,
welcher vier Multiplizierer der in Pig. 1 gezeigten Art umfaßt.
909840/0903
Jj1Ig0 5 ist ein detailliertes Blockdiagramm der in Pig. 4 gezeigten
erweiterten Matrix und zeigt die Zwischenverbindungen zwischen den einzelnen 4x8 Multiplizierern.
Pig. 6 ist ein Blockdiagramm einer erweiterten Multiplizierer-Matrix,
welche die Programmierung der ersten und der zweiten Steuereingänge für eine Zweierkomplement-Multiplizierer-Matrix
von unbestimmter Größe veranschaulicht.
Pig. 7 ist ein Blockdiagramm eines 4x8 Multiplizierers entsprechend
der bevorzugten Ausgestaltung der Erfindung, welches Torschaltungen, Addierer-Blöcke und einen Übertrag-Erwartungs-BIock
umfaßt.
Pig. 8A, B ist ein Logik-Diagramm, welches die Vorschaltungen im Detail zeigt und die in den Voll- und Halbaddierer-Lücken
enthaltene Logik illustriert.
Pig. 9 ist ein Logik-Diagramm, welches dem in Pig. 7 und Pig. 8A, B
gezeigten Übertrag-Erwartungs-Block entspricht.
In Pig. 1 sind die an einem 4x8 Matrix-Multiplizierer angeschlossenen
Ausgangsanschlüsse entsprechend einer bevorzugten Ausgestaltung der Erfindung gezeigt. Der 8-Bit-Multiplikant
wird dem Multiplizierer über die Eingangsanschlüsse X0-Xn angeboten,
wobei X dem höchstwertigen Bit entsprichto Der 4-Bit-Multiplikator
wird dem Multiplizierer über die Eingangsanschlüsse Y -Y angeboten, wobei Y dem höchstwertigen Bit des Multi-
SO S
plikators entspricht„ Ein 12-Bit-Produkt wird über die Ausgangsanschlüsse
S11-S0 abgegeben, wobei S11 dem höchstwertigen Bit
des Produktes entspricht. Ein erster und ein zweiter Steuereingang O1 und Op werden zur Programmierung des Multiplizierers benötigt,
wie noch beschrieben wirds Die Eingangsanschlüsse M3-M0
und K6-K0 sind Srweiterungs-Eingänge, welche benötigt'werden,
wenn ein Multiplizierer innerhalb einer größeren Matrix derartiger Multiplizierer zwischengeschaltet wird. Die Eingänge
909840/090)
2313327
X3 1 und Y3' dienen als zusätzliche Erweiterungs-Eingänge und
werden ebenso benutzt, wenn der Multiplizierer zur Durchführung
von Zweierkomplement-Multiplikationen benutzt wird, wie
Der von der bevorzugten Ausgestaltung der Erfindung zur Erzeugung des Produktes benutzte Algorithmus ist die "Polgeaddition",
welche kein schiften von Teilprodukten erfordert. Eine kurze Herleitung des zur Durchführung der Zweierkomplement-Multiplikation
benutzten Algorithmus sei nun beschrieben. Ein Zweierkomplement-Multiplikant X mit N-Bits und ein Zweierkomplement-Multiplikator
Y mit M-Bits können angeschoben werden als:
X = -Ϊ214'1 + £ Xlf2iC (1)
3 k=0 ic
M-2
Y = -YS2M"1 + S Yi2i 2)
Y = -YS2M"1 + S Yi2i 2)
Dann ergibt sich das Zweierkomplement-Produkt Z dieser beiden Zahlen mit:
z = χ γ zM+N-2 + I2N-1 (_ j. γ2Ι}
SS S ^_q X
μ λ N-2 . ΒΓ-2 M-2 . ·
2M-1(_ Σ X1 2k) + I Σ XY2k+1 (3)
s k=0 c k=0 i=0
Unter einfacher Anwendung der Zweierkomplement-Arithmetik kann
gezeigt werden, daß:
M-2 j, M-2
- Σ Y.21 = -2M~1 + ( Σ Ϋ.21) + 1 (4)
i=0 X i=0 X
K£2 Xv2k = -2N~1 + ( Ni2 Xv2k) + 1 (5)
k=0 k=0
0/0909
Durch Einfügen von (4) und (5) in (3) ergibt sich das Produkt Z wie folgt:
,M+N-2 . ,r OM-1 -/ N;2
N-2 M-2
+ Σ Σ XvY,2
+ Σ Σ XvY,2
"Durch Anwendung der nachstehenden Gleichungen
γ «M+N-2 «M+N-2 . « «M+N-2 /,,x
-Xs2 = -2 + Xs2 (7)
s2 2 + Xs
_r 2M+N-2 = _2M+N-2 + 7 2M+N-2
Ξ 3
und durch weitere Vereinfachung von (6) kann das Produkt Z wie folgt ausgedrückt werden;
Z = -2M+N-1 + (X Y + X^ + ?
M—2
+ X 2N"1[( Σ Ϋ.21) + 1]
i=0
γ 2M-1 [( Nf2 12^ + ,J
s k=0 K
N-2 M-2 w,
1 I X^r12k+1 (9)
k=0 i=ü
90984Π/0909
Aus der Gleichung (9) erkennt man, daß in dem Algorithmus vier
Typen von Basis-Kreuzprodukt-Ausdrucken auftreten. Zuerst gibt es Kreuzprodukt-Ausdrucke, welche nur das Zeichenbit des Multiplikanden
Xs oder nur das Zeichenbit des Multiplikators Y oder
sowohl X3 als auch Yg enthalten; diese erste Gruppe von Ausdrucken
entspricht (XQYa + la + Ϋσ)2Μ+Ν~2. Zweitens gibt es
Ausdrucke, welche das Zeichenbit des Multiplikanden X multipliziert mit den komplementierten Y-Bits aufweisen entsprechend
Χ 32Ν"1 IK Mf2 %£l) + 1J · Drittens gibt es Ausdrucke, welche
i=0
das Zeichenbit des Multiplikators Y multipliziert mit den komplementierten
X-Bits aufweisen entsprechend Y 2M~1 f( %2 X1 2k) + 17
3 kio *
Schließlich gibt es solche Ausdrucke, welche weder das Zeichenbit des Multiplikanden noch das Zeichenbit des Multiplikators aufweisen.
Diese vierte Gruppe von Ausdrucken ist charakterisiert durch die Multiplikation gerader Größen.
Als Beispiel für die Anwendung des Algorithmus zeigt Pig. 2 eine Tabelle von Kreuzprodukt-Ausdrucken, die für eine Zweierkomplement-Multiplikation
eines 8-Bit-Multiplikanden und eines 4-Bit-Multiplikators
erzeugt sind. Die Kreuzprodukt-Ausdrucke sind entsprechend ihren binären Gewichten in Spalten gruppiert. Das
Produkt Z entsteht durch Addition der Kreuzprodukt-Ausdrucke in den einzelnen Spalten und Addition der in jeder Spalte erzeugten
Überträge zu der nächsthöherwertigen Spalte.
Als weiteres Beispiel zur Anwendung des Algorithmus sei angenommen,
daß ein 16-Bit-Multiplikand X mit einem 8-Bit-Multiplikator Y
multipliziert werden soll. Ferner sei angenommen, daß die Multiplikation durch eine Matrix aus 4x8 Bit-Multiplizierern wie in
Fig. 4 gezeigt durchgeführt wird. Die vier Quadranten der erweiterten Matrix sind als Quadrant 00, Quadrant 10, Quadrant 01
und Quadrant 11 bezeichnet. Der Quadrant 00 empfängt weder das Zeichenbit des Multiplikanden X noch das Zeichenbit des Multiplikators
Y. Somit kann die durch den Quadranten 00 ausgeführte Multiplikation wie folgt ausgedrückt werden:
Σ Σ XkYi2k+i
k=0 i-0
k=0 i-0
809840/0909
Der Quadrant 10 empfängt das Zeichenbit X des Multiplikanden aber nicht das Zeichenbit Y des Multiplikators. Polglich kann
die durch den Quadranten 10 ausgeführte Multiplikation wie folgt ausgedrückt werden:
14 3 · 3
1 I X. Y,2k+1 + X 215 ( £ Ϋ.21) + 1
k=8 i=0x s i=0 x
Der Quadrant 01 empfängt das Zeichenbit des Multiplikators Y , aber nicht das Zeichenbit des Multiplikanden. Deswegen kann die
durch den Quadranten 01 ausgeführte Multiplikation wie folgt angeschrieben werden:
76 k+i 7 7 - k
Z ί XkY.2K+1 + 12' ( t Xk2*) + 1
k=0 i=4 k X S k=0 k
Schließlich empfängt der Quadrant 11 sowohl das Zeichenbit X als auch das Zeichenbit Y . Deswegen kann die durch den Quadranten
11 ausgeführte Multiplikation wie folgt ausgedrückt werden:
-223 + (XsYs + X3 + Ϋ3)·222
-IR 6 i
+ X 2° ( Σ Ϋ.21) + 1
s i=4 χ
7 H k 14 6
+ T2'( I XV2 ) + 1 + £ ί XOT
3 k=8 k k=8 i=4 k X
Somit umfaßt ,jeder der Quadranten der erweiterten Multiplizierer-Matrix
einen oder mehrere der -vorerwähnten vier Basis-Kreuzprodukt-Ausdrucke,
was durch die relative Position des einzelnen Quadranten innerhalb der erweiterten Matrix festgelegt ist.
Nun wird es für den Fachmann deutlich, daß durch Benutzung der in Eig. 4 beschriebenen vier Quadranten eine erweiterte
Zweierkomplement-Multiplizierer-Matrix von beliebiger Größe
809840/0
gebildet werden kann. Beispielsweise zeigt Figo 6 eine erweiterte
Zweierkomplement-Multiplizierer-Matrix, welche zur Multiplikation von Operanden beliebiger Bit-Menge benutzt
werden kann. Die Multiplizierer-Matrix besteht nur aus den vier Typen von Multiplizierer-Quadranden, die schon im Zusammenhang
mit Fig. 4. beschrieben wurden. Die Bereiche 12 und 15 in Fig. 6 zeigen an, daß die Anzahl der Reihen und Spalten
von Multiplizierer-Quadranten zur Anpassung an jede gewünschte
Bit-Länge des Multiplikanden und des Multiplikators erweiterbar ist.
Nun sei gezeigt, daß der Basis-Algorithmus durch Hinzufügen von zwei Steuerleitungen modifiziert werden kann, wodurch man
einen einzigen 4x8 Multiplizierer erhält, der zur Durchführung
der Funktion eines jeden der im Zusammenhang mit Fig.
diskutierten Quadranten programmiert werden kann. Die Steuerleitungen haben folgende Beziehung zu den vier Quadranten:
C2 | G1 | Quadrant |
O | 0 | 00 |
0 | 1 | 01 |
1 | 0 | 10 |
1 | 1 | 11 |
Nach der Modifizierung ergibt sich der Algorithmus zum Erhalt des Produktes Z wie folgt:
+ Y 2M-1(C. E1I2 Xk2kJ + S1 ΕΥ Xk-2kj)
s Ί k=0 k=0
+ X2H-1(CoU V1 +O2LI Y^1J)
3 ^ i=0 x i=0
Y ·2Μ-1 + X ·2Ν-1 + C/ÜXX
S S 1 *- S S
909840/090$
+ "> Σ X Y 2^+-*- wo das Symbol "." die logische UND-k=0
i=Ü k *■
Funktion angibt und das Symbol »+» Addition bedeutet. Die Anwendung
dieses modifizierten Algorithmus auf eine 4x8 Multiplikation resultiert in der in Fig. 5 dargestellten Tafel von
Kreuzprodukt-Ausdrucken. Aus Fig. 5 ist zu sehen, daß für den Fall, in welchem die Steuereingänge G^ und C2 beide "0" sind,
die Kreuzprodukt-Ausdrucke auf die Gerade-Größen-Multiplikation eines 4-Bit- und eines 8-Bit-Operanden zurückgehen. Es ist
auch zu sehen, daß für den Fall, in welchem die Steuereingänge
C.J und O2 beide "1" sind, die Kreuzprodukt-Ausdrucke mit den
in Fig. 2 für eine 4 x 8 Zweier-Komplement-Ilulbiplikabion gezeigten
identisch sind. Durch Programmierung der Steuereingänge O^ und G2 kann der 4 x 8 Multiplizierer die Funktion eines
jeden der vier in Fig. 4 gezeigten Quadranten ausführen. Somit kann der i3asis-4 x 8 Multiplizierer leicht erweitert werden,
um eine Multiplizierer-Matrix von jeder gewünschten Größe zu bilden.
In Fig. 5 ist die 8 χ 16 Zweier-Komplement-Multiplizierer-Matrix
der Fig. 4 detaillierter dargestellt. Die Multiplizierer 16, 18, 20 und 22 sind 4x8 Multiplizierer entsprechend der bevorzugten
Ausgestaltung der Erfindung. Der Multiplizierer 16 ist derart programmiert, daß die Steuereingänge G.. und G2 beide eine
logische "0" sind, wodurch der Multiplizierer 16 dem Quadranten 00 entspricht o Der Multiplizierer 16 empfängt die geringstwertigen
8 Bits (X7-X0) des Multiplikanden und die vier geringstwertigen Bits
(Yz-Yn) des Multiplikators. An den Ausgangsanschlüssen S....-Sq
erhält man ein 12-Bit Produkt des MuItiplizierers 16. Die Ausgangs-Bits
S-^-S0 sind die vier geringstwertigen Produkt-Bits
des endgültigen Multiplikationsprodukteso Die Ausgangs-Bits S11-S.
des Multiplizierers 16 müssen jedoch mit Ausgangs-Bits des Multiplizierers 18 und mit innerhalb des Multiplizierers 20 gebildeten
Kreuzprodukt-Ausdrucken addiert werden, bevor die endgültigen Produkt-Bits für die 2 über 24 Bit-Positionen erzeugt sind.
Das Ausgangs-Bit S. des Multiplizierers 16 ist beispielsweise
909840/0909
über die Leitung 24 mit dem Erweiterungseingang M0 des Multiplizierers
20 verbunden. Innerhalb des Multiplizierers 20 werden das Eingangssignal Y^ auf der Leitung 26 und das Eingangssignal X„
auf der Leitung 28 logisch verarbeitet, um das Signal X,. Y. zu bilden. Dieses Signal wird dann mit den M^-Eingang auf der Leitung
24 addiert, um das endgültige Produkt-Bit P, zu bilden.
Zur Bildung des endgültigen Produkt-Bits P12 des Multiplisierers
sind in ähnlicher Weise der Ausgang S, des Multiplizierers 18
über die Leitung 30 auf den Erweiterungs-Eingang MQ des Multiplizierers
22 und der Ausgang S8 des Multiplizierers 20 über die
Leitung 32 mit dem Erweiterungs-Eingang K0 des Multiplizierers
verbunden. Das Signal Y- und das Signal X8 sind über die Leitungen
34 bzw. 36 ebenfalls mit dem Multiplizierer 22 verbunden.
Die Signale Xß und Y. werden innerhalb des Multiplizierers 22
logisch verarbeitet, um das Signal XQ Y, zu bilden, welches mit
den beiden an den Erweiterungs-Eingängen M0 und K0 empfangenen
Signalen addiert wird, um das endgültige Produkt-Bit P.. ρ zu.
bilden.
Da der Multiplizierer 16 nur die geringstwertigen Bits des Multiplikanden und des Multiplikators empfängt, sind die (nicht
gezeigten) Erweiterungs-Eingänge M und K unbenutzt und müssen auf einen logischen Eingangs-Pegel 11O" gebracht werden. Auch
die (nicht gezeigten) Eingänge X3' und Y3 1 des Multiplizierers
16 sind unbenutzt und müssen ebenso auf einen logischen Eingangs-Pegel "0" gebracht werden. Ähnlich müssen alle unbenutzten Eingänge
der Multiplizierer 18, 20 und 22 auf einen logischen Eingangs-Pegel "0" gebracht werden.
An dem Multiplizierer 18 ist das Eingangssignal X^ an dem Eingang
X angeschlossen, ähnlich ist an dem Multiplizierer 20 das Ein-
gangssignal Y7 an dem Eingang Y3 angeschlossen. Der schon besprochene
Algorithmus der Zweier-Komplement-Multiplikation erfordert, daß die Eingangssignale X1ς und Y7 mit den binär als
2 bzw. 2' bewerteten Positionen addiert werden. Zu diesem Zweck können die Eingänge X ' und Y · benutzt werden. An dem
s s
9098 4 0/0909
Multiplizierer 18 könnte das Eingangssignal X15 direkt mit
dem Eingang X3 1 verbunden werden. Wie in Pig. 5 gezeigt, benutzt
die bevorzugte Ausgestaltung aber einen externen Block mit einem darin befindlichen UND-Tor 33, um das Eingangssignal
X15 auf den Eingang X3' zu koppeln. Für die Zweier-Komplement-Multiplikation
ist das Steuersignal C2 ein logischer "1"-Pegel,
wodurch das Eingangssignal X15 durch das Tor 33 auf den Eingang
X^' übertragen wird» In ähnlicher Weise wird ein externer Block
35 mit einem darin befindlichen UND-Tor 37 benutzt, um das Eingangssignal X7 auf den Eingang Y ' des Multiplizierers 20
zu koppeln. Wiederum ist für die Zweier-Komplement-Multiplikation das Steuersignal C. ein logischer "1"-Pegel.
Die Eingänge X ' und Y_' können außerdem als zusätzliche Er-
S 5
Weiterungs-Eingänge benutzt werden,, Mit kurzer Bezugnahme auf
Fig. 3 ist der Eingang X ' su Kreuzprodukt-Ausdrucken in derjenigen
Spalte addiert, welche der binären Wertigkeit 2 entspricht. Ähnlich ist der Eingang Y ' zu Kreuzprodukt-Ausdrucken
3 in derjenigen Spalte addiert, welche der binären Wertigkeit 2 entspricht. Somit kann X0 1 benutzt werden, um den Erweiterungs-Eingang
M zu ergänzen und Y ' kann benutzt werden, um die Er-Weiterungs-Eingänge
M^ und K^ zu ergänzen. Unter nochmaliger
Bezugnahme auf Fig. 5 empfängt der Eingang Xg' des Multiplizierers
20 den S-, Summen-Aus gang des Multiplizierers 18 und
der Erweiterungs-Eingang M des Multiplizierers 20 empfängt den S11 Summen-Ausgang des Multiplizierers 16, um das P11 Produkt-Ausgangs-Bit
zu bilden, welches der Position mit der binären 11
Wertigkeit 2 entspricht. An dem Multiplizierer 18 ist der
(nicht gezeigte) Eingang Y ! nicht benutzt und deswegen mit
einem logischen "0" Eingangspegel verbunden. Ähnlich sind an dem Multiplizierer 22 die (nicht gezeigten) Eingänge X3 1 und
Y ' nicht benutzt und mit einem logischen "0" Eingangspegel
s
verbunden.
Zur Umwandlung der in Fig. 5 gezeigten Zweierkomplement-Multiplizierer-Matrix
in eine Direktgrößen-Multiplizierer-Matrix
909840/0909
"bedarf es nur der Modifizierung der Steuersignale C1 und Cp.
Die Steuersignale G1 und G2 für die Multiplizierer 18, 20 und
22 werden alle auf eine logische "0" gebracht, so daß diese
Multiplizieren mm die ^lei^he Tj1MnVtion cn/mf-Hhr^n wi« der
Multiplizierer 16. Es ist auch erforderlich, im Multiplizierer 18 das Eingangssignal X1,- von dem .eingang X · abzukoppeln
und im Multiplizierer 20 das Eingangssignal Y7 von dem Eingang
Yß f abzukoppeln. Zur Direktgrößen-Multiplikation müssen der
Eingang X ' des Multiplizierers 18 und der Eingang Y ' des
s s
Multiplizierers 20 an einem logischen "0" Eingangspegel angeschlossen
werden. In der in Fig. 5 gezeigten bevorzugten Ausgestaltung wird ein logischer "0" Pegel an den Eingang X '
des Multiplizierers 18 durch den Block 31 geliefert, weil der logische "0" Pegel des Steuersignals G2 den Ausgang des Tors
auf einen logischen "0" Pegel zwingt. In ähnlicher Weise bewirkt der Block 35 einen logischen "0" Pegel an dem Eingang Y '
des Multiplizierers 20, weil der logische "0" Pegel des Steuersignals C1 den Ausgang des Tors 37 auf einen logischen "0" Pegel
zwingt. Weiterhin können die programmierbaren Übergänge zwischen der Zweierkomplement- und der Direktgrößen-Arbeitsweise vereinfacht werden durch Kopplung der Cg-Anschlüsse des Multiplizierers
18, des MultipIizierers 22 und des Blocks 31 sowie der
C1-AnSChIUSSe des Multiplizierers 20, des Multiplizierers 22
und des Blocks 35 an eine gemeinsame Steuerleitung, welche zur Auswahl der Zweierkomplement-Arbeitsweise einen logischen "1"
Pegel und zur Auswahl der Direktgrößen-Arbeitsweise einen logischen "0" Pegel führt.
In Fig. 7 ist ein Blockdiagramm eines 4x8 Multiplizierers
entsprechend der bevorzugten Ausgestaltung der Erfindung dargestellte
Wie in Figo 7 gezeigt, besteht der Multiplizierer
aus mehreren Tor-Elementen, YoIl- und Halbaddierer-Blöcken und einem Übertrag-Vorwegaddierer-Block. Der Addierer-Block 50
ist ein herkömmlicher Volladdierer mit drei Eingangsleitungen 51, 52 und 53 sowie zwei Ausgangsleitungen 54 und 55.
Die Eingangsleitungen 51 und 53 dienen dem Empfang der
909840/0909
Erweiterungseingang-Signale KQ bzw. MQ. Die Eingangsleitung
empfängt das Kreuzprodukt-Signal XqYq. Der Addierer-Block 50
addiert die Signale KQ, XqXq, und MQ in gemeinsamer binärer
vveiüe und erzeugi; einen binären Summen-Ausgang auf der .Leitung
54 und einen binären Übertrag-Ausgang auf der leitung 55. Die Leitung 54 ist mit dem Ausgang S0 verbunden, der das geringstwertige
Produkt-Bit liefert. Der auf der leitung 55 erzeugte Übertrag-Ausgang ist mit einem \Zolladdierer-Block 56 in der
binär nächstbedeutenderen Position verbunden. Die übrigen Voll-Addierer-Blöcke
in Fig. 7 arbeiten in ähnlicher Weise.
Der Halbaddierer-Block 60 hat zwei Eingangsleitungen 61und 62,
welche die Erweiterungseingang-Signale K-, bzw. M^ empfangen.
Diese beiden Eingangssignale werden binär addiert, um auf der Leitung 63 einen Summen-Ausgang und auf der Leitung 64 einen
Üb ertrag-Ausgang zu erzeugen. Das Summen-Ausgangssignal auf
der Leitung 63 ist mit einem der drei Eingänge des Volladdierer-Blocks 65 verbunden, welcher der gleichen Binärwert-Position
wie der Halbaddierer-Block 60 zugeordnet ist. Das auf der
Leitung 64 erzeugte Übertrag-Ausgangssignal ist mit einem der drei Eingänge des Volladdierer-Blocks 66 in der binär nächsthöherwertigen
Position verbunden. Die übrigen Halbaddierer-Blöcke in Pig. 7 arbeiten in ähnlicher Weise.
Der Übertrag-Vorwegaddierer-Block 70 empfängt mehrere Summen-
und Übertrag-Signale von den Addierer-Blöcken und erzeugt die Bits S1 .j-S-, des Ausgangsproduktes. Die Details des Übertrag-Vorwegaddierer-Blocks
70 sind in Pig. 9 dargestellt. Der Zweck des Übertrag-Vorwegaddierer-Blocks 70 ist die Verbesserung der
Geschwindigkeit des Multiplizierers durch Vorwegnehmen und Erzeugen der Übertrag-Signale zu den binär bedeutenderen Positionen,
wodurch die besondere Verzögerungszeit vermieden wird, die sich
normalerweise ergibt, wenn Übertrag-Signale gleichzeitig eine Bit-Position in Richtung der bedeutendsten Bit-Position gekannt
werden müssen. Pur den Fachmann aber ist ea klar, daß
anstelle des Übertrag-Vorwegaddierer-Blocks 70 zusätzliche
909840/0909
Voll- und Halbaddierer-Blöcke eingesetzt werden können, um die endgültigen Ausgangs-Bits des Produktes zu bilden. Ein solcher
Ersatz würde natürlich, eine längere Verzögerungszeit hervorrufen,
bevor die Ausgangs-Bits des Produktes stabilisiert sind.
Pig. 8A, B ist ein Logik-Diagramm und zeigt den Multiplizierer der Pig. 7 in detaillierterer Form. Der Volladdierer-Block 50
entspricht dem schon in Zusammenhang mit Pig. 7 besprochenen Volladdierer-Block. Wiederum liefern die Leitungen 51, 52 und
53 drei Eingangs-Signale an den Volladdierer-Block 50. Das an die Leitung 52 gelegte Eingangs-Signal wird durch ein logisches
UND-Tor 57 erzeugt. Das UND-Tor 57 hat zwei Eingänge 58 und 59, welche mit den Eingangs-Signalen XQ bzw. YQ verbunden sind.
Wie in der Fachwelt wohl bekannt, ist der Ausgang des logischen Tors 57 nur dann eine logische "1", wenn die Eingangssignale
X„ und Y„ beide eine logische "1" sind. Jede der Eingangsleitungen
51, 52 und 53 ist mit einem Eingang eines EXCLUSIVE-ODER-Tor
51 verbunden, welches die drei Eingangssignale addiert und
auf der Leitung 54 eine Ausgangssumme erzeugt. Wie der Fachwelt
wohl bekannt, ist der Ausgang des Tors 71 eine logische "1", wenn nur einer oder alle drei seiner Eingänge eine logische "1" führen,
während der Ausgang eine logische "0" ist, wenn keiner oder nur zwei der Eingänge eine logische "1" führen. Der erste und der
zweite Eingang des logischen Tors 72 sind mit den Leitungen 52 bzw. 53 verbunden, der erste und der zweite Eingang des logischen
Tors 73 sind mit den Leitungen 51 bzw. 53 verbunden und der erste und der zweite Eingang des logischen Tors 74 sind mit den Leitungen
51 bzw. 52 verbunden. Folglich wird der Ausgang von wenigstens einem der logischen Tore 72, 73 und 74 eine logische
"1" sein, wenn irgendwelche zwei der Eingangsleitungen 51, 52 und 53 eine logische "1" führen„ An den Ausgängen der logischen
Tore 72, 73 und 74 liegen die Eingänge eines logischen ODER-Tors 75. Somit wird der Ausgang des logischen ODER-Tors 75 auf der
Ausgangsleitung 55 für den Übertrag eine logische "1" erzeugen, wenn irgendwelche zwei oder mehr der Eingangsleitungen 51, 52
und 53 eine logische "1" führen.
909840/0909
- ysr-
In Fig. 8A, 3 sind auch die Details des im Zusammenhang mit
Fig. 7 besprochenen Halbaddierer-Blocks 60 gezeigt. Die Eingangsleitungen 61 und 62 sind an die Eingänge des EXCLUSIVE-ODER-Tors
67 angeschlossen, welches auf der Leitung 63 eine Ausgangssumme liefert. Die Eingangsleitungen 61 und 62 sind auch mit
den Eingängen eines logischen UND-Tors 68 verbunden, welches auf der Leitung 64 ein Übertrag-Ausgangssignal liefert, wenn
die Eingänge K5 und M5 beide eine logische "1" sind.
In Fig. 9 ist ein Logik-Diagramm gezeigt, welches dem Übertrag-Vorwegaddierer-Block
70 in der Fig. 7 bzw. in der Fig. 8A, B entspricht. Die Eingangsleitungen 80, 97 in dieser Figur entsprechen
den Summen- und Übertrag-Signalen, welche durch die Addier-Blöcke in Fig. 8A, B erzeugt werden. Der Übertrag-Vorwegaddierer
ist konventioneller Art und wird nicht im Detail beschrieben. Die Vermeidung des vorerwähnten Geschwindigkeits-Verlustes
durch das Kennen der Überträge kann wie folgt dargestellt werden,, Das logische Tor 100 erzeugt das endgültige
Produkt-Ausgangsprodukt für S^5 entsprechend der Binärwert-Position
2*'; das logische Tor 101 erzeugt das endgültige Pro-
dukt-Ausgangsbit für S, entsprechend der Binärwert-Position 2 ;
und das logische Tor 108 erzeugt das endgültige Produkt-Ausgangsbit für Se entsprechend der Binärwert-Position 2 . Die
logischen Tore 102, 103, 104 und 105 erzeugen den' Übertrag von der Binärwert-Position S, zu der Binärwert-Position S,. Der
Ausgang des logischen Tors 105 liefert den Übertrag an einen der Eingänge der Addier-Schaltung 101. Der am Ausgang des
Tors 105 erzeugte Übertrag wird aber nicht von der Logik benutzt, welche den Übertrag von der S.-Position auf die Sc-Position
erzeugt. Statt dessen sind die von den logischen Toren 102 und 103 erzeugten Ausgänge mit den logischen Toren
106 bzw. 107 verbunden, derart, daß der Übertrag von S^ auf
Sc- parallel mit dem Übertrag von S, auf S^ erzeugt wird. Die
innerhalb des Übertrag-Vorwegaddierers 70 benutzte parallele Übertragerzeugungs-Logik erlaubt dem Multiplizierer in dieser
9098 h f) /0909
bevorzugten Ausgestaltung, das Endprodukt in einer kürzeren
Zeitspanne zu erzeugen als es anderweitig der Fall wäre«
Während die Erfindung anhand eines 4x8 Multiplizierers beschrieben
wurde, ist die Beschreibung nur für Erläuterungszwecke gedacht und darf nicht als Beschränkung des Erfindungsgedankens gesehen werden. Auch sind dem Fachmann zahlreiche
Modifikationen und Änderungen möglich, ohne den Erfindungsgedanken zu verlassen.
98/.Ü/09ÖÖ
-20,-
Leerseite
Claims (1)
- Pat ent ar.sprüche ί * \ ·3 3 d '; 1. Multiplizierer zur Erzeugung des Produktes aus einem ersten (X0-X3) und einem zweiten Ci0-Yg) -Binärdatenwort mit einer Torschaltung zum Emfang des ersten und des zweiten ßinärdatenwortes und zur Erzeugung einer ausgewählten Gruppe von Kreuzprodukt-Signalen und mit einer Addierschaltung, die mit der genannten Torschaltung verbunden ist zur Summierung der ausgewählten Gruppe von Kreuzprodukt-Signalen und zur Abgabe des Produktes (S0-S^) des ersten und des zweiten Binärdatenwortes, gekennz eichnet durch einen ersten und einen zweiten Steueranschluß, die mit der Torschaltung "verbunden sind zum Smfang eines ersten und eines zweiten Steuersignals (CL, Op), auf welche die Torschaltung anspricht zur Steuerung der Auswahl der Gruppe an Kreuzprodukt-Signalen.2. Multiplizierer nach Anspruch 1, dadurch gekennzeichnet , daß die ausgewählte Gruppe von Kreuzprodukt-Signalen wechselweise für Lineargrößen- oder Zweierkomplement-Kreuzprodukt-Signale repräsentativ ist, was durch das erste und das zweite Steuersignal festgelegt wird.3. Multiplizierer nach Anspruch 1, dadurch gekennzeichnet, daß das erste Steuersignal in einem ersten logischen Zustand ist, wenn das erste Binärdatenwort Lineargrößen- JTorm hat, und in einem zweiten logischen Zustand, wenn das erste Binärdatenwort Zweierkomplement-Form hat und daß das zweite Steuersignal in einem ersten logischen Zustand ist, wenn das zweite Binärdatenwort Lineargrößen-Form hat und in einem zweiten logischen Zustand, wenn das zweite Binärdatenwort Zweierkomplement-Form hat.4. Multiplizierer nach Anspruch 3, dadurch gekennzeichnet , daß die Addierschaltung mehrere Addierer (50, 60) und eine mit den Addierern verbundene Übertrag-Erwartungsschaltung (70) aufweist, welche mehrere parallele Übertrag-Signale erzeugt und diese zu der ausgewählten Gruppe9098A U/090von Kreuzprodukt-Signalen addiert, wodurch die Zeitverzögerung zum Kämmen der Überträge entfällt.5. Multiplizierer nach Anspruch 4, gekennzeichnet durch seine Ausgestaltung als monolithische integrierte Schaltung.6. Verfahren zur Erzeugung des Produktes aus einem ersten (X -X ) und einem zweiten (Y0-X3) Binärdatenwort, welche Wörter entweder Lineargrößen- oder Zweierkomplement-Form haben unter Einbeziehung folgender Schritte: Empfangen einer ersten Mehrzahl von Eingangs-Bits, welche ein erstes Binärdatenwort darstellen und einer zweiten Mehrzahl von Eingangs-Bits, welche ein zweites Binärdatenwort darstellen; Torsteuern der ersten und der zweiten Mehrzahl von Bits zur Erzeugung mehrerer Kreuzprodukt-Signale; und Summieren der mehreren Kreuzprodukt-Signale zur Erzeugung mehrerer Produkt-Ausgangs-Bits (S0-S11), welche das Produkt des ersten und des zweiten Binärdatenwortes darstellen; gekennzeichnet durch die Schritte des Empfangene eines ersten (G1) und eines zweiten (Cp) Steuersignals; und Steuerns der Erzeugung der mehreren Kreuzprodukt-Signale in Beantwortung des ersten und des zweiten Steuersignals zur Entscheidung, ob die mehreren Kreuzprodukt-Signale Lineargroßen- oder Zweierkomplement-Kreuzprodukt-Signale sindo7ο Multiplizierer zur Erzeugung eines Segmentes des Produktes eines ersten und eines zweiten Digitaldatenwortes, der zur Anwendung innerhalb einer erweiterten Matrix aus solchen Multiplizierern vorgesehen ist und der eine Torschaltung zum Empfang eines Segmentes (X0-X3) des ersten Digitaldatenwortes und zum Empfang eines Segmentes (Y0-Y3) des zweiten Digitaldatenwortes und zur Erzeugung mehrerer Kreuzprodukt-Signale, sowie eine mit der Torschaltung verbundene Addierschaltung zum Summieren einer ausgewählten Gruppe von Kreuzprodukt-Signalen und Liefern des Segmentes (Sq-S11) des Produktes des ersten und des zweiten Digitaldatenwortes§0984 0/090$umfaßt, gekennzeichnet durch einen ersten und einen zweiten mit der Torschaltung verbundenen Steueranschluß zum Empfang eines ersten "bzw. eines zweiten Steuersignals (Cj, G2) zur Begründung der relativen Position des Multiplizierers innerhalb der erweiterten Matrix aus solchen Multiplizierern, wobei die Torschaltung auf ein erstes und ein zweites Steuersignal anspricht zur Auswahl der ausgewählten Gruppe von Kreuzprodukt-Signalen als eine !Funktion der relativen Position des Multiplizierers innerhalb der erweiterten Matrix aus solchen Multiplizierern.Multiplizierer, der zur Anwendung innerhalb einer Matrix aus solchen Multiplizierern vorgesehen ist, wobei die Matrix aus solchen Multiplizierern das Produkt eines ersten und eines zweiten Binärdatenwortes der Zweierkomplement-Form erzeugt und sowohl das erste als auch das zweite Binärdatenwort ein Zeichen-Bit enthält und der genannte Multiplizierer eine Eingangsschaltung zum Empfang eines Segmentes (X-X0) des ersten Binärdatenwortes und zum Empfang eines Segmentes (Y-Y )ο sdes zweiten Binärdatenwortes, eine mit der genannten Eingangsschaltung verbundene Torschaltung zur Erzeugung mehrerer Kreuzprodukt-Signale und eine Addierschaltung zur Summierung der mehreren Kreuzprodukt-Signale und zur Lieferung eines Segmentes (SQ-S^) des Produktes des ersten und des zweiten Binärdatenwortes umfaßt, gekennzeichnet durch einen mit der Torschaltung verbundenen ersten Steueranschluß zum Empfang eines ersten binären Steuersignals (C^), welches sich in einem ersten logischen Zustand befindet, wenn das empfangene Segment des ersten Binärdatenwortes das Zeichen-Bit des ersten Binärdatenwortes umfaßt und welches sich im umgekehrten Fall in einem zweiten logischen Zustand befindet, sowie einen mit der Torschaltung verbundenen zweiten Steueranschluß zum Empfang eines zweiten binären Steuersignals (O2), welches sich in einem ersten logischen Zustand befindet, wenn das empfangene Segment des zweiten Binärdatenwortes das Zeichen-Bit des zweiten Binärdatenwortes umfaßt und welches sich im909840/0909umgekehrten Pall in einem zweiten logischen Zustand befindet, wodurch die Torschaltung auf das erste und auf das zweite binäre Steuersignal anspricht zur Steuerung der Erzeugung der mehreren Kreuzprodukt-Signaleο9. Multiplizierer zur Erzeugung entweder eines Zweierkomplementoder eines Lineargrößen-Produktes von zwei Binardatenwö'rtern, die entweder in Zweierkomplement- oder in Lineargrößen-Form dargestellt sind und der eine erste Anzahl von M Eingangsanschlüssen zum Empfang eines ersten Binärdatenwortes (X -X )ο svon M Bits entweder in Zweierkomplement- oder in Lineargrößenform, eine zweite Anzahl von N Eingangsanschlüssen zum Empfang eines zweiten Binärdatenwortes (Y -Y_) von N Bits entweder in Zweierkomplement- oder in Lineargrößenform, sowie eine mit der ersten und der zweiten Anzahl von Eingangsanschlüssen verbundene Torschaltung zur Erzeugung mehrerer Kreuzprodukt-Signale mit bestimmten binären Bewertungen und eine Addierschaltung zur Summierung der mehreren Kreuzprodukte und Lieferung eines M + N Bit-Produktes (S^-S0) des ersten und des zweiten Binärdatenwortes umfaßt, gekennzeichnet durch eine mit der Torschaltung verbundene Steuerschaltung zum Empfang von Steuersignalen (C^, O2), welche Steuersignale bestimmen, ob das genannte erste und das genannte zweite Binardatenwort von der Zweierkomplement- oder der Lineargrößen-Form sind, wobei die Torschaltung auf die Steuersignale anspricht zur Steuerung der Erzeugung der mehreren Kreuzprodukt-Signale.10. Multiplizierer nach Anspruch 9, dadurch gekennzeich· net, daß die Addierschaltung mehrere Addierer (50, 60) und eine mit den Addierern verbundene Übertrag-Erwartungsschaltung (70) umfaßt, welche mehrere parallele Ubertrag-Signale erzeugt und diese zu den mehreren Kreuzprodukt-Signalen addiert, wodurch die Zeitverzögerung zum Kämmen der Überträge vermieden ist.S09840/090911. Multiplizierer nach Anspruch 10, gekennzeichn et durch seine Ausgestaltung als monolithische integrierte Schaltung.12. Multiplizierer nach Anspruch 9, dadurch gekennzeichnet, daß die Addierschaltung zusätzlich mehrere Erweiterungs-Eingangsanschlüsse (M0-Mg, K0-Kg) mit einer bestimmten binären Bewertung hat zum Empfang von mehreren Erweiterungs-Eingangssignalen und zur Addierung derselben zu den mehreren Kreuzprodukt-Signalen, welche entsprechende binäre Bewertungen haben, wodurch der Multiplizierer zur Anwendung innerhalb einer erweiterten Matrix aus solchen Multiplizierern eingerichtet ist.13. Multiplizierer nach Anspruch 12, gekennzeichnet durch seine Ausgestaltung als monolithische integrierte Schaltung.§09840/0900
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/892,792 US4130878A (en) | 1978-04-03 | 1978-04-03 | Expandable 4 × 8 array multiplier |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2913327A1 true DE2913327A1 (de) | 1979-10-04 |
DE2913327C2 DE2913327C2 (de) | 1986-04-24 |
Family
ID=25400494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2913327A Expired DE2913327C2 (de) | 1978-04-03 | 1979-04-03 | Matrix-Multiplizierer |
Country Status (8)
Country | Link |
---|---|
US (1) | US4130878A (de) |
JP (2) | JPS54134943A (de) |
DE (1) | DE2913327C2 (de) |
FR (1) | FR2422204A1 (de) |
GB (1) | GB2017985B (de) |
HK (1) | HK66984A (de) |
MY (1) | MY8500496A (de) |
SG (1) | SG18584G (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3545433A1 (de) * | 1984-12-28 | 1986-07-03 | Kabushiki Kaisha Toshiba, Kawasaki, Kanagawa | Parallelmultiplizierschaltung |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL7809398A (nl) * | 1978-09-15 | 1980-03-18 | Philips Nv | Vermenigvuldiginrichting voor binaire getallen in twee-complement notatie. |
JPS59149540A (ja) * | 1983-02-15 | 1984-08-27 | Toshiba Corp | 分割型乗算器 |
FR2544105B1 (fr) * | 1983-04-06 | 1988-10-14 | Thomson Csf | Multiplieur du type en cascade utilisant un ensemble d'operateurs elementaires |
GB2166272B (en) * | 1984-10-27 | 1988-06-29 | Stc Plc | Serial multiplier circuit |
US4887233A (en) * | 1986-03-31 | 1989-12-12 | American Telephone And Telegraph Company, At&T Bell Laboratories | Pipeline arithmetic adder and multiplier |
US4768161A (en) * | 1986-11-14 | 1988-08-30 | International Business Machines Corporation | Digital binary array multipliers using inverting full adders |
KR920003908B1 (ko) * | 1987-11-19 | 1992-05-18 | 미쓰비시뎅끼 가부시끼가이샤 | 승산기(乘算器) |
US5032865A (en) * | 1987-12-14 | 1991-07-16 | General Dynamics Corporation Air Defense Systems Div. | Calculating the dot product of large dimensional vectors in two's complement representation |
US4941121A (en) * | 1988-04-01 | 1990-07-10 | Digital Equipment Corporation | Apparatus for high performance multiplication |
DE3823722A1 (de) * | 1988-07-13 | 1990-01-18 | Siemens Ag | Multiplizierer |
US4926371A (en) * | 1988-12-28 | 1990-05-15 | International Business Machines Corporation | Two's complement multiplication with a sign magnitude multiplier |
US5262976A (en) * | 1989-11-13 | 1993-11-16 | Harris Corporation | Plural-bit recoding multiplier |
EP0813143A3 (de) * | 1989-11-13 | 1998-01-28 | Harris Corporation | Zeichenausbreitung in einem mehrere Bit umkodierenden Multiplizierer |
JP2558912B2 (ja) * | 1990-03-08 | 1996-11-27 | 松下電器産業株式会社 | 乗算器回路 |
DE4317074C1 (de) * | 1993-05-21 | 1994-06-23 | Itt Ind Gmbh Deutsche | Multiplizierer für reelle und komplexe Zahlen |
US5751622A (en) * | 1995-10-10 | 1998-05-12 | Chromatic Research, Inc. | Structure and method for signed multiplication using large multiplier having two embedded signed multipliers |
US5956265A (en) * | 1996-06-07 | 1999-09-21 | Lewis; James M. | Boolean digital multiplier |
US7269616B2 (en) * | 2003-03-21 | 2007-09-11 | Stretch, Inc. | Transitive processing unit for performing complex operations |
US20090077145A1 (en) * | 2007-09-14 | 2009-03-19 | Cswitch Corporation | Reconfigurable arithmetic unit |
US20090292756A1 (en) * | 2008-05-23 | 2009-11-26 | Elliot Gibson D | Large-factor multiplication in an array of processors |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3752971A (en) * | 1971-10-18 | 1973-08-14 | Hughes Aircraft Co | Expandable sum of cross product multiplier/adder module |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3670956A (en) * | 1968-09-26 | 1972-06-20 | Hughes Aircraft Co | Digital binary multiplier employing sum of cross products technique |
US3914589A (en) * | 1974-05-13 | 1975-10-21 | Hughes Aircraft Co | Four-by-four bit multiplier module having three stages of logic cells |
-
1978
- 1978-04-03 US US05/892,792 patent/US4130878A/en not_active Expired - Lifetime
-
1979
- 1979-03-12 GB GB7908596A patent/GB2017985B/en not_active Expired
- 1979-03-28 JP JP3767479A patent/JPS54134943A/ja active Pending
- 1979-04-03 DE DE2913327A patent/DE2913327C2/de not_active Expired
- 1979-04-03 FR FR7908379A patent/FR2422204A1/fr active Granted
-
1984
- 1984-02-29 SG SG185/84A patent/SG18584G/en unknown
- 1984-08-23 HK HK669/84A patent/HK66984A/xx unknown
-
1985
- 1985-07-15 JP JP1985108774U patent/JPS6132437Y2/ja not_active Expired
- 1985-12-30 MY MY496/85A patent/MY8500496A/xx unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3752971A (en) * | 1971-10-18 | 1973-08-14 | Hughes Aircraft Co | Expandable sum of cross product multiplier/adder module |
Non-Patent Citations (1)
Title |
---|
US-Z: IEEE Transactions on Computers, Vol. C-22, No. 12, Dez. 1973, S. 1045-1047 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3545433A1 (de) * | 1984-12-28 | 1986-07-03 | Kabushiki Kaisha Toshiba, Kawasaki, Kanagawa | Parallelmultiplizierschaltung |
Also Published As
Publication number | Publication date |
---|---|
HK66984A (en) | 1984-08-31 |
JPS6132437Y2 (de) | 1986-09-20 |
GB2017985B (en) | 1982-04-07 |
GB2017985A (en) | 1979-10-10 |
SG18584G (en) | 1985-02-15 |
DE2913327C2 (de) | 1986-04-24 |
FR2422204B1 (de) | 1984-06-15 |
JPS54134943A (en) | 1979-10-19 |
FR2422204A1 (fr) | 1979-11-02 |
JPS6181347U (de) | 1986-05-30 |
US4130878A (en) | 1978-12-19 |
MY8500496A (en) | 1985-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2913327A1 (de) | Multiplizierer fuer binaerdatenwoerter | |
DE3854321T2 (de) | Populationszählung in Rechnersystemen. | |
DE10105945B4 (de) | Multiplizierer mit Linearsummierungsarray sowohl zur vorzeichenbehafteten als auch zur vorzeichenlosen Multiplikation | |
DE1549476C3 (de) | Anordnung zur Ausführung von Divisionen | |
DE19758079A1 (de) | Verfahren und Vorrichtung zur Galoisfeld-Multiplikation | |
DE3700991A1 (de) | Digitaler uebertragsvorgriffsaddierer | |
DE3686681T2 (de) | Parallelmultiplizierer. | |
DE3927009A1 (de) | Addierschaltung | |
DE2718849A1 (de) | Rechenspeicher mit mehrdimensionalem, parallelem zugriff | |
DE1549477B1 (de) | Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden | |
DE1197650B (de) | Parallel-Addierer | |
DE2230188C2 (de) | Arithmetisch-logische Einheit für einen Digitalprozessor für variable Wortlängen | |
DE4403917A1 (de) | Vorrichtung zum Berechnen einer Besetzungszählung | |
DE69025182T2 (de) | Digitaler prozessor für zweierkomplementberechnungen | |
DE4101004A1 (de) | Paralleler multiplizierer mit sprungfeld und modifiziertem wallac-baum | |
DE1809219A1 (de) | Binaeres Vielfach-Addierwerk zur gleichzeitigen Addition mehrerer binaerer Zahlen | |
DE69521464T2 (de) | Paralleler Prozessor | |
DE10204647A1 (de) | Matrizenrechner des Zeitteilungstyps | |
DE10117041C1 (de) | Carry-Ripple Addierer | |
DE2800598A1 (de) | Parallel-addierwerk | |
DE2952689C2 (de) | ||
DE2046685A1 (de) | Einrichtung zum Konvertieren einer Dezimalzahl in eine Binarzahl | |
DE19635113A1 (de) | Multiplizierer | |
DE1449564A1 (de) | Recheneinrichtung fuer digitale Schnellrechner | |
DE4408789A1 (de) | Ein rechnergestütztes Verfahren zum Konstruieren eines Addierers mit vorgreifender Übertragsbildung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |