DE2936763A1 - Multiplikationsanordnung fuer dualzahlen in zweikomplementdarstellung - Google Patents
Multiplikationsanordnung fuer dualzahlen in zweikomplementdarstellungInfo
- Publication number
- DE2936763A1 DE2936763A1 DE19792936763 DE2936763A DE2936763A1 DE 2936763 A1 DE2936763 A1 DE 2936763A1 DE 19792936763 DE19792936763 DE 19792936763 DE 2936763 A DE2936763 A DE 2936763A DE 2936763 A1 DE2936763 A1 DE 2936763A1
- Authority
- DE
- Germany
- Prior art keywords
- multiplication
- modules
- bit
- full
- arrangement
- 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
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/5306—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel with row wise addition of partial products
- G06F7/5312—Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel with row wise addition of partial products using carry save adders
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/3804—Details
- G06F2207/386—Special constructional features
- G06F2207/3884—Pipelining
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)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
- Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
- Logic Circuits (AREA)
Description
Λ-
ΛΗΛ. 1979 r PI1N 9223
Multiplikationsanordnung für Dualzahlen in Zweikomplementdarstellung«
Die Erfindung betrifft eine
Anordnung zum Multiplizieren einer ersten und einer zweiten Dualzahl, die höchstens q bzw. ρ (ρ, q ^, Ζ)
Bitstellen enthalten, mit ersten Mitteln zur Bildung der höchstens ρ χ q bitweisen Teilprodukte der beiden Dual-Zahlen
und zweiten Mitteln, die ein Datenfeld (array) von (p-i) x q arithmetischen Moduln enthalten, von denen
(p~i) mit mindestens zwei und die übrigen mit drei Eingängen
versehen sind, um jeweils aus zwei bzw, drei empfangenen Dualzahlen unter Berücksichtigung des jeweiligen
Vorzeichens eine algebraische Summe und daraus eine Zweibitzahl des Ergebnisses und des Übertrags zu bilden,
welche Moduln nach bitweise entsprechenden Bedeutsamkeitspegeln geschaltet sind, um die Teilprodxikte sowie ent-
sprechende Bits der Ergebnisse zu erhalten, bis je Bedeutsamkeitspegel ein einziges Endergebnisbit an den Ausgängen
von ( ρ + q - 2) Moduln sowie ein zusätzliches Bit höchster Bedeutsamkeit an einem besonderen Ausgang
des bedeutsamsten der (p + q - 2) Moduln und ein Bit niedrigster Bedeutsamkeit am Ausgang mit der niedrigsten
Bedeutsamkeit der ersten Mittel erzeugt ist.
Multiplikationsanordnungen
von unterschiedlichen Typen sind im Buch "Theory and application of digital Signal processing" von L.R. Rabiner
030013/0779
14.4.1979
und D. Gold, Prentice Hall, 1975 insbesondere im Abschnitt S. 51k bis 524, und namentlich Fig. 8.35 beschrieben.
Zweikoraplcment --darstellung wurde insbesondere beim Addieren
binärer Zahlen üblich, aber in geringerem Ausmass bei der Multiplikation. Im letzten Fall wird noch oft.die
"sign magnitude"-Darstellung bevorzugt. Einer der Nachteile der bekannten Anordnung besteht darin, dass die erwähnten
zweiten Mittel aus drei Arten von Moduln aufgebaut sind, die mit I, II bzw. V bezeichnet sind, und wobei jeder Typ
eine andere Wahrheitstabelle besitzt. Für die Multiplikation zweier Faktoren mit ρ bzw. q Bitstellen besitzt die
bekannte Anordnung (p-2) (q-2) Moduln vom Typ I, (q-2) Moduln vom Typ II und (p+q-2) Moduln vom Typ V. Weiterhin
erwähnt die Literaturstelle noch Moduln von den anderen
Typen III und IV, die jedoch bei der erwähnten Fig. 8,35
nicht benutzt werden. In diesem Zusammenhang wird schon
auf Fig. 1a, 1b, 1c, 1d der vorliegenden Anmeldung verwiesen.
Fig. 1a-1d geben die vier Möglichkeiten zum Addieren
bzw. Subtrahieren zweier Binärziffern innerhalb einer dual dargestellten Zahl. Es gibt drei Eingangsgrössen a, b, d,
von welchen drei eine das Ubertragseingangssignal (carry)
bzw. Eingangsborgsignal (borrow) aus dar benachbarten Bitstelle mit niedriger Bedeutsamkeit angibt. Weiter sind
diese drei Grossen von vornherein gleichwertig,d.h. sie
" haben die gleichen Bedeut sainkextspegel, wenn sie auch ein
verschiedenes Wertintervall haben können. In Fig. 1a bis 1d wurde dafür angenommen, dass die Grossen a und b immer
das gleiche Wertintervall und die Grosse d in Fig. 1b und 1c ein abweichendes Wertintervall aufweisen. Es gibt zwei
Ergebnisbits c und s} von denen s wiederum den Eingangs—
grö'ssen gleichwertig und c als Übertragsausgangs signal bzw. Ausgangssignal hinsichtlich der benachbarten Bitstelle mit
höherer Bedeutsamkeit arbeitet. Letztex^e hat also ein zweimal grösseres Gewicht. Mit η ist der numerische Wert
des Ergebnisses in arithmetischen Darstellung bezeichnet.
Die erste]! acht Zifferweichen geben die acht Möglichkeiten
für die Grossen a, b und d0 Die neunte Ziffernzeile
030013/0779
14.4.1979 <r PHN 9223
gibt den numerischen Vert des von Null abweichenden Binärwerts
der betreffenden Grosse : er kann also + 1 +2
betragen. Der andere Binärwert dieser Grosse ist dabei immer gleich Null. Die zehnte Ziffernzeile gibt das
geschlossene Intervall des Vertbereichs des Endergebnisses
.an. Es ist klar, dass alle Spalten unter "s" identisch sind. Weiterhin zeigt es sich, dass die Spalten unter "c"
in Fig. 1a und 1d identisch sind9 was auch für die Bg. Ib
und 1c untereinander gilt. Weiter sind diese Spalten zwischen den beiden Paaren gleich bei a = b, aber entgegengesetzt
bei a^b oder a©b=1, wobei φ die Modulo-2-Addition
bzw. die EXCLUSIV-ODER-Funktion angibt. Es zeigt
eich also, dass alle vier Kombinationen lediglich mit einem Volladdierer und einem Vollstibtrahierer als aritlimetischem
Modul verwirklicht werden können.
Es ist die Aufgabe der Erfindung, eine Anordnung anzugeben, in der die Anzahl bezüglich
ihrer Wahrheitstabelle verschiedener Moduln auf zwei verringert und die ausserdem auf einfache Weise zum
Multiplizieren von Zahlen sowohl in Zweikompleinentdarstellung wie in der Darstellung nach Vorzeichen und
Grosse geeignet ist.
Die Aufgabe wird erfindungsgemäss dadurch gelöst, dass für die Multiplikation zweier
Zahlen in Zweikompleinentdarstellung die zweiten Mittel enthalten: ein erstes Modul (29)» das als Volladdierer
das bedeutsamste Teilpx'odukt mit positivem Vorzeichen
und 2-Bit-Zwischenergebnis mit negativem Vorzeichen erzeugt, eine zweites Modul (25)» das als Volladdierer
die zwei benachbarten Teilprodukte mit niedriger Bedeutsamkeit mit negativem Vorzeichen und ein Bit Zwischenergebnis
mit negativem Vorzeichen erzeugt, eine Gruppe von (q-3) dritten Moduln (19)> die als Volladdierer jeweils
ein von der bedeutsamsten Bitposition der zweiten Zahl und der entsprechenden (q-3) drittbedeutsamsten Bitpositionen
der ersten Zahl mit negativem Vorzeichen herrührendes Teilprodukt, ein weiteres Tcilpz'odukt, das
030013/0779
PHN 922
9367Γ
nicht aus der bedeutsamsten Bitposition der ersten Zahl mit positivem Vorzeichen herrührt, und ein Bit
Zwischenergebnis mit negativem Vorzeichen erzeugen, ein viertes Modiil (19), das wenigstens -als Halbsubtrahierer
ein von der bedeutsamsten Bitpositione der zweiten Zahl und der unbedeutsamsten Bitposition der ersten Zahl mit
negativem Vorzeichen herrührendes Teilprodukt und ein weiteres Teilprodukt, das nicht aus der bedeutsamsten
Bitstelle der ersten Zahl mit positivein Vorzeichen herrührt, erzeugt, eine Gruppe von (p-2) fünften Modulen
(23, 2h) die als Volladdierer jeweils ein von der bedeutsamsten Bitstelle der ersten Zahl und der entsprechenden
(p-2) unbedeutsameren Stellen der zweiten Zahl herrührendes
Teilprodukt mit negativem Vorzeichen und weiter zwei Bits Zwischenergebniss mit positivem Vorzeichen erzeugen,
eine Gruppe von (p-2) sechsten Moduln (17» 18),
die wenigstens als Halbaddierer jeweils zwei Teilprodukte mit positivem Vorzeichen erhalten, eine Gruppe von (p-2)
(q-3) siebten Moduln (20, 21), die als Volladdierer jeweils ein Teilprodukt mit positivem Vorzeichen und zwei Bits
Zwischenergebnis mit positivem Vorzeichen erzeugen, eine Gruppe von (p-2) achten Moduln (27, 28), die als Volladdierer
jeweils ein aus der Gruppe vierier Moduln herrührendes Ergebnisbit mit negativem Vorzeichen einschliesslieh
eines Ubertragsbits mit positivem Vorzeichen sowie das Ergebnisbit des zweiten Moduls mit negativem Vorzeichen
erhalten und die seriell ein Ausgangsborgbit innerhalb der Gruppe achter Moduln und anschliessend an
das erste Modul weiterleiten, und (p-i) Ergebnisbits parallel den Ausgängen der achten Gruppe zuzuführen; dass
dritte Mittel vorgesehen sind, die dem unbedeutsamsten Modul der Gruppe achter Modulo das Endergebnisbit des
benachbarten Pegels mit niedrigerer Bedeutsamkeit mit negativem Vorzeichen zuzuführen, dass die Volladdierer der
ersten, dritten, fünften und achten Moduln zur Bildung gleicher logischer Funktionen aufgebaut sind, und dass für
die Bildung des Produkts zweier Zahlen ausschliesslich
030013/0779
mit Bits mit positivem Vorzeichen alle (Halb-)Subtrahierer
einen Steuereingang aufweisen und durch ein Signal an diesen Eingang als (Halb-) Addierer gesteuert werden,
und dass die dritten Mittel einen Steuereingang aufweisen und durch ein Signal an diesen Eingang unwirksam gemacht
werden.
So gibt es jetzt
](p~2) (q-2) +1 J Volladdierer und 2p+q-5 Vollsubtrahierer.
Durch die beschränkte Anzahl verschiedener Bausteine wird beim Arbeiten in diskreten Bauteilen eine Vereinfachung
verwirklicht. Die Vereinfachung gilt auch für eine Integrierte Schaltung, weil die Anzahl der Elemtnbe
in der "Bibliothek" kleiner sein kann. Es ist klar, dass, wenn in den erwähnten Formeln eine negative Anzahl auftritt,
beispielsweise bei q=2,für q-3» dafür der Wert "0" gelesen werden muss. Das Umschalten nach dem MuJ.tiplizieren
von Zahlen ausschliesslich mit positiven Bits lässt sich dadurch erleichtern, dass auch die Ergebnisse
des (Voll-)Addierers und des (Voll—) Subtrahierers so
vieles gemeinsam haben. Es Atfird sich herausstellen, dass
in einer integrierten Schaltung Moduln mit gleichen logischen Funktionen eine verschiedene Geometrie aufweisen,
aber dies wird durch die Beschränkungen verursacht, die die nahezu zweidiinensionale Konfiguration einer
integrierten Schaltung auferlegt. Es ist klar, dass auch alle Volladdierer die gleiche Wahrheit stabeile besitzen
und damit einen entsprechenden logischen Aufbau haben,
obgleich auch hier die UbereinStimmung nicht bis zum
Gattcrpegel zu erstrecken braucht. Ein zusätzlicher Vorteil des erwähnten Entwurfs ist die regelinassige Rangordnung
der Zufuhr der Eingangssignale, so dass die geometrische Einrichtung einer integrierten Schaltung sehr
systematisch sein kann.
Ein weiterer Nachteil der
bekannten Anordnung ist folgender. Bei der Multiplikation
wird die Genauigkeit des Produkts, d.h. dessen Anzahl Bits, grundsätzlich (-von der Abrundung abgesehen)
030013/0779
lh. '4.1979 J>
PHN 9223
gleich der Summe der Genauigkeiten der Faktoren. Grundsätzlich ist es daher notwendig, bei der Multiplikation
die Stellenzahl der Operanden demgemäss zu erweitern. Stellenzalilerweitenuig in. Zweikonvpleinentdarstellung
lässt sich einfach durch eine Wiederholung der Daten (O bzw. 1) des bedeutsamsten Bits so oft wie
erforderlich durchführen, wobei jedoch nur das allererste
das negative Vorzeichen besitzt. Die vorangehende Erweiterung der Operanden erfordert viele Teile. Weiterhin
verlangt man MuItiplikationsanordnungen für verschiedene
Operandenlängen, die aus Normal-Moduln nach obiger Beschreibung aufgebaut sind. Für die Multiplikation
zweier Zahlen in Zweikoinplementdarstellung mit höchstens ap bzw. bq Bits mit Hilfe von (a χ b) Multiplikationsanordnungen
nach obiger Beschreibung ist es vorteilhaft, wenn die (a χ b) Multiplikation.sanordnungen ein
zweites Datenfeld (array) mit aufeinanderfolgenden
Bedeutsamkeiten nach
Ma, 1 Ma-1,1 M2,1 M1,1 )
Wia, 2 ■ Ma-1,2 M2,2 ; M1,2 ^
Ma,b-1 Ma-1,b-1 M2,b-1 M1,b Ma,b Ma-1,b M2,b M1,b
bilden, wobei die Multiplikationsanordnung Ma,b die höchste und M1,1 die niedrige Bedeutsamkeit besitzt und
weiterhin die Bedeutsamkeiten von Mi,j und Mk,1 gleich
sind, wenn i + j = k + 1, und dass weiter*hlii Steuereingänge
vorgesehen sind, die durch ein an diesen Eingängen auftretendes Signal a) in Multiplikationsanordnungen Ma,
1t.. Ma, b-1 die Wirkung zweiter, fünfter und achter
arithmetischer Moduln in bezug auf die Wirkung bei der Multiplikationsanordnimg Ma,b bei der Durchführung einer
Multiplikation zweier Zahlen in Zweikoinplementdarstellung
ändern, d.h. (Voll-) Addierer zu (Voll-) Subtz^ahierer
umzubilden und umgekehrt, b) in den Multiplikationsall-Ordnungen
Ma-1,b ... M1»b die Wirkung zweiter, dritter und
vierter arithmetischer Modulen dj e Wirkung· in bezug auf
03001 3/0779
die Wirkung beim Modul Ma,b zu ändern, um von den übrigen
Multiplikationsanordnungen ausser der Multiplikationsanordnung Ma, b alle arithmetischen Moduln als (Voll-)
Addierer steuern und alle weiteren arithmetischen Moduln auf gleiche Veise wie in der Multiplikationsanordnung
Ma, b, c) in allen Multiplikationsanordnungen ausser Ma,b ... M1,b die dritten Mittel unwirksam machen, und
dass weiter vierte Mittel vorgesehen sind, die durch algebraische Addition der Endergebnisbits der Multiplikationsanordnungen
unter Berücksichtigung derer Bedeutsamkeitspegel ein Endprodukt bilden. Es gibt dabei
höchstens vier verschiedene Programmierungen (nur zwei, wenn entweder a = 1 oder b = 1 ist, im Zusammenhang
damit, dass beide Operanden unabhängig die Bitposition des höchsten Bedeutsamkeitspegels (der auch das negative
Vorzeichen verarbeitet hat) erreichen können muss. Die Tatsache, dass für die arithmetischen Moduln nur zwei
Wahrheitstabellen relevant sind, die ausserdem noch die
Teile für das Ergebnisbit gemeinsam haben, erleichtert
die Anpassung Schrittstelle mit den Steuersignalen»
Fig. a )> 2 ist es dabei vorteilhaft,
wenn von den Multiplikationsanordnungen Mafb
..oM2,b die dritten Mittel jeweils einen Volladdierer mit nächstniedrigerer Bedeutsamkeit bei den achten Moduln
sind, die neben dein Endergebnisbit mit negativem Vorzeichen
der gleiche Bedeutsamkeit aus dieser gleichen Multiplikationsanordnung von der Multiplikationsanordnung
mit nächstniedrigerer Bedeutsamkeit innerhalb der
Reihe Ma, b ... M2,b das bedeutsamste Endergebnisbit mit 30
negativem Vorzeichen unter AusSchliessung der Zufuhr
nach den erwähnten vierten Mitteln erhalten, und weiterhin das bis auf eins bedeutsamste Endergebnisbit mit positivem
Vorzeichen. Dies ergibt eine Vereinfachung bei den
erwähnten vierten Mitteln.
35
35
Es ist weiterhin vorteilhaft,
wenn die arithmetischen Moduln als integrierte Schaltungen
in dynamischer MOS-Logik mit einer inhärenten
030013/0779
14.4.1979 y PHN 9223
Speicher-Funktion an den Ausgängen für Endergebnisbit und Übertrag ausgeführt sind und die Ausgänge für die Endergebnisbits
mit entsprechenden Eingängen einer weiteren Gruppe in Serie geschalteter Moduln entsprechenden logisehen
Aufbaus wie die erwähnten q(p— 1) nioduln verbunden sind, die mit Hilfe ihrer Volladdiererfunktion ein
Akkumulatorregister bilden. Auf diese Weise ist ein besonders vorteilhafter Akkumulator für eine Produktreihe
von Zweikoinplementzahlen geschaffen, beispielsweise für die Berechnung innerer Produkte vieldimensionaler Vektoren.
Derartige und andere Produkte werden in der Technik oft verwendet, wobei die Rohr.Ieitungswirkung der Anordnung
nach der Erfindung eine grosse Verarbeitungsgeschwindigkerit
ermöglicht, ohne dass die Moduln selbst aussergewöhnlich
schnell zu sein brauchen.
Ausführvmgsbeispiele der
Erfindung werden nachstehend an Hand der Zeichnung naher beschrieben. Es zeigen
Fig. 1a, 1b, 1c, 1d die bereits erwähnten vier Möglichkeiten zum Addieren bzw. Subtrahieren
einer binär dargestellten Zahl,
Fig. 2a ein einfaches Schema eines Volladdierers,
Fig. 2b ein einfaches Schema eines programmierbaren Volladdierer/Subtrahierers,
Fig. 3 einen Volladdierer in n-MOS-Technologie,
Fig. h einen programmierbaren
Volladdierer/Subtrahierer in ii-MOS-Technologie ,
Fig. 5 ein Taktimpulsdiagramm,
Fig. 6 eine Multiplikationsanordnung,
Fig. 7 eine Erweiterung der
Schaltung nach Fig. 6,
Fig. 8 Teilschaltungen, in die
die Schaltung nach Fig. 7 aufgeteilt werden kann,
Fig. 9 ein aus sechs Moduln
030013/0779
14.4.1979 V PHN 9223
bestellendes Detail einer MuI tiplika ti ons anordnung,
Fig. 10 eine Funktionstabelle
für Fig. 9,
Fig. 11 einen einzigen Modul δ nach Fig. 9,
Fig. 12 dessen Ausführung in n-MOS-Transistoren,
Fig. 13 eine Kopplung zweier Schaltungen nach Fig. 8,
Fig. 14 einen schematisehen
Zusammenbau von Teilschaltungen nach Fig. 8.
In Fig. 2a ist ein einfaches
Schema eines Volladdierers dargestellt. Der Eingang 530
erhält das Signal a, der Eingang 531 das Signal b und der
Eingang 532 das Signal d. UND-Gatter 533 bis ^35 bilden
die Kombinationen a.b, b.d und d.a. Das NOR-Gatter 530
bildet daraus a.b+b.d+doa. Dies wird durch eine Serien—
schaltung dreier Inverter als das Ubertragssignal c am Ausgang 5k$ dargestellt. Die drei Inverter werden durch
die spezifischen Eigenschaften der nachstehend zu beschreibenden Verwirklichung in dynamischer n-MOS Logik
benötigt. Das ODER-Gatter 537 bildet das Signal a+b+d, so dass das UND-Gatter 539 nur eine logische "1" abgibt, wenn
eines und nicht mehr als eines der Eingangssignale eine "1" ist. Das UND-Gatter 538 bildet a.b.d. und das NOR-Gatter
54O stellt in Serie mit dem Inverter 544 das
Signal s am Ausgang 5''6 deir, das den Wert 1 hat, wenn eine
ungerade Anzahl der Eingangsdaten den Wert 1 besitzt«
In Figo 2b ist ein einfaches
3" Schema eines programmierbaren Volladdierer/Subtrahierejrs
dargestellt, der in einer erfindungsgemässen Anordnung zu
verwenden ist. Die Anordnung enthält drei Dateneingänge 100, 101 und 102 für die Binärdaten a, b, d, wie sie bei
den Fig. 1a <. . . 1d definiert wurden. Weiter gibt es zwei J Stouereingänge 103 und 103Λ für das Funktionssteuersignal
f und dessen invertierten Wert f, einen Ergebnisausgang 104 für das Signal S und einen Übertragsborgsignalausgang
030013/0779
14./+.1979 J*) PHN 9223
105 für das Signal c. Weiter enthält die Schaltung sechs
UND-Gatter IO6, 107, 108, 110, 111 und 112, ein NAND-Gatter
109, vier NOR-Gatter 113 ... Ho und fünf Inverter
117, 118, 118A, 119 und 120A. Das logische Schema ist eigens für die später zu beschreibende Verwirklichung in
dynamischer n-MOS~Logik mit mehrfacher Verwendung verschiedener
logischer Termen aufgebaut. Durch die alternativ vorhandenen Signale f und f wird nur eines von beiden UND-Gattern
110 und 111 freigegeben. Die Verwirklichung er-W folgt nach den folgenden Formeln, wobei ein Punkt eine
logische UND-Funktion und ein Pluszeichen eine logische ODER-Funktion angibt:
c = (a.b) + (b.d) + (d.a) (f=0)
Volladdierer '
s = (a+b+d) .'c + (a.b.d)
Vo11subtrahierer
\
c' := (a+b+d).d + (a.b.d) (f=i)
Umschaltung : c„ = (c.f) + (c'.f)
Hierbei gibt ein Strich über einer Variablen den invertierten Wert an, und c1 ist das Ausgangsborgsignal. Das
Gatter 106 bildet das Signal a.b, das Gatter 107 das Signal b,d und das Gatter 108 das Signal d.a. Das Gatter
113 bildet das Signal ab+bc+da und das Element 117 also
das Signal c. Das Gatter 115 bildet das Signal a+b+d und das Gatter 111 das Signal f.d .(a+b+d). Die Elemente
109 und 118 bilden das Signal a.b.d. Die Elemente 116 und
120A bilden dabei das Signal
a.b.d + f.d (a+b+d) + f. (ab+b.d+d.a)
Davon sind einige Terme redundant : wenn der dritte den
Wert 1 besitzt, ist der erste redtindant und der zweite
kann verkürzt geschrieben werden als:
f.d .(a+b)
030013/0779
ρην 9223
Die Verwendung dieser redundanten Terme erfordert jedoch
keine zusatz liolien Teile und ist also nicht schädlich:
der elektronische Entwurf vereinfacht sich eben dadurch; Das Element 112 bildet das Signal c.(a.b.d). Das Gatter
bildet das Signal:
a+b+d+c(a.b.d) = (a+b+d).(c+a.b.d) = c(a+b+d) + a.b.d;
Im letzten Ausdruck ist wieder der redundante Teil fortgelassen.
In Fig. 3 ist ein Volladdierer in n-MOS-Technologie dargestellt, wobei ein Teilproduktbildner
mit angebracht worden ist. Die Schaltung arbeitet nach den Grundsätzen der dynamischen Logik, und zu
ihver Erläuterung ist in Fig. 5 ein Taktiinpulsdiagram mit vier Phasen und vier Signalen 01, 02, 03» 04 dargestellt,
die ein der Kürze halber nicht dargestellter Taktimpulsgeber erzeugte Vierphasenlogik ist in der Technik der
n-MOS-Anwendungen bekannt und basiert darauf, dass die Information durch die Ladung an einer Knotenpunktkapazität
gebildet wird. Bei einem ersten Typ eines Logikgatters lädt die Vorderflanke von 01 die Kapazität immer auf, es
ist die Vorladungs- oder "precharge"-Phase. Nachdem der
Taktimpuls 01 niedrig geworden ist, wird die eigentliche logische Funktion in der Abtast- oder l! sample "-Phase
^ implementiert, solange 0 2 noch hoch ist. Für den restlichen
Teil des Zyklus (0 3 und / oder 0 4 hoch) ist die
Information für weitere Verarbeitung verfügbar. Nachdem 0 4 wiederum niedrig geworden ist, fängt der nächste
Taktimpulszyklus an. Die verschiedenen Gatterarten sind in einer Veröffentlichung von S.P. Asija, "Four phase logic
is practical ", Electronic Design, 20 Dezember 1977» S. 16O bis 163 beschrieben. Es ist weiter üblich, je
Taktimpulszyklus zwei aufeinanderfolgende Pegel logischer
Funktionbildung zu verwirklichen: für den zweiten Pegel ist dabei die Wirkung der Paare von Taklimpulsphasen 0 1/0
gegenüber 0 3/0 4> vertauscht.
In Fig. 3 ist eine Verwirklich-
030013/0779
14.4.1979 *2 PHN 9223
'<tf-
ung des Volladdierers nach Fig. 2a als integrierte Schaltung dargestellt. Hier wird der Taktimpuls 0 1 auf
den Polysiliziumleitungen I20/163 und 126/167, der Taktimpuls 0 3 auf den Polysiliziumleitungen 121/164 und
127/168, der invertierte Wert eines Eingangsbits a. auf
der durchgehende Polysiliziumleitung I25/166, ein Eingangsübertragssignal
c· aus dem nächsthöher liegenden arithmetischen Modul am Anschluss 123» aus dem eine Polysiliziumleitung
abgeht, und ein Eingangsergebnissignal W s' am Anschluss 122 erhalten, aus dem ebenfalls eine Polysiliziumleitung
abgeht. Die erwähnten Polysiliziumleitungen sowie weitere dazu parallel verlaufenden Leitungen in
Polysilizium bilden eine erste Verdrahtungsschicht. Am
Anschluss 169 ist ein zweites Eingangsbit b . empfangbar,
wobei die dargestellte gestrichelte Linie quer durch die Figur geht und in Aluminium ausgeführt ist. So verlaufen
die Bitleiter quer über die arithmetischen Moduln, wodurch die Bitsignale an allen Stellen leicht verfügbar sind. An
den Anschlüssen 124 und I62 ist der Taktimpuls 0 2 jeweils
2" über einen derartigen, senkrecht verlaufenden Aluminium—
leiter empfangbar. Am Anschluss I6I ist der Taktimpuls 0
längs eines derartigen Aluminiumleiters empfangbar· Die
erwähnten Aluminiumleiter bilden zusammen eine zweite Verdrahtungsschicht.
Am Anschluss I65 erscheint das
Ausgangssignal c und am Ausgang I70 das Ausgangssignal s fit
die Verarbeitung in angrenzenden Moduln. Die Figux" enthält weiter noch eine Vielzahl horizontal verlaufender und
ununterbrochen dargestellter Verbindungsleitungen, denen 3^ an mehreren Stellen vertikal verlaufende Zwischenverbindungsleitungen
zugeordnet sind, beispielsweise die Verbindung zwischen dem Punkt 173 und dem Transistor 148.
Sie sind als n+-Diffusionsbereich ausgeführt und bilden
zusammen eine dritte Verdrahtungsschicht. An den Stellen,
+
an denen ein η -Bereich und ein Polysiliziumleiter
kreuzen, entsteht ohne wreitere Massnalimen ein Transistor.
Wenn diese Kreuzung kontaktlos sein soll, was an der
030013/0779
14.4.1979 yf PHN 9223
Stelle durch eine durchgehende Linie angegeben ist, ist eine sogenannte Unterführung vorgesehen, die in der
LOCOS-Technologie bekannt sind, wobei stellenweise die
η als eine vertiefte, As-dotierte Schicht ausgeführt 5
ist, über die die kreuzende Polysiliziumleitung erhöht
angebracht ist« Der Zwischenbereich bildet eine Trennung, wobei sich keine grosse Belastungskapazität bildet. So
ist eine vollständige Üreischichtenverdrahtung möglich.
Verbindungen zwischen den Leiterschichten sind mit einem 10
Punkt bezeichnet. Die Schaltung enthalt weiter 33 Transistoren 128 ... I60. Unter der Steuerung des Taktimpulses
0 1 (koinzident mit 0 2) lädt sich der Knotenpunkt 171 auf. Wenn a. und b. beide nicht gleich Null
sind, wird dieser Knotenpunkt am Ende in der Abtastphase 15
(0 1 wiederum niedrig) wiederum gleich null. So liegt am Knotenpunkt 171 die Information ai-bj. Mit Hilfe
des Transistors 139 wird auch der Knotenpunkt 172 in
der Phase 0 1 vorgeladen. In dieser Schaltung arbeiten die Signale s1 (Anschluss 122), c«(Anschluss 123) und
a..b. (Knotenpunkt 171) als die entsprechenden Signale
a, b und d in Fig. 2a.
Die Transistoren 131 und bilden das Analogon des Gatters 533 in Fig. 2a; die
Transistoren 134 und 135 entsprechen dem Gatter 535 und
25
die Transistoren 137 und I38 dem Gatter 134. Unter der
Steuerung des Taktimpulses 0 3 entlädt sich der Knotenpunkt 172, wenn ein Ausgangsübertragssignal erzeugt
werden muss, um dabei ausserdem den Transistor 142 zu
sperren. So 1st am Knotenpunkt 172 die NOR-Funktion des
30
Gatters 536 implementiert. Mit dem Taktimpuls 0 3 erfolgt mit Hilfe der Transistoren 143 und i44 das Vorladen
des Knotenpunkts 173» Dieser Knotenpunkt entlädt sich während des Taktimpulses 0 4, wenn nur eine der Verbindüngen
122, 123, und 171 mit Hilfe der Transistoren 14O,
141 und 145 hoch ist, die dazu eine ODER-Funktion bilden.
Wenn der Knotenpunkt 172 jedoch entladen ist, bleibt der Transistor 142 im gesperrten Zustand. Der Knotenpunkt
030013/0779
14.4.1979 VtT PHN 9223
entlädt sich auch, wenn alle drei Eingangsgröße sen den
Wert 1 über die Transistoren 146, 147- und 148 besitzen,
die dazu eine UND-Funktion bilden. So ist am Knotenpunkt 173 die NOR-Funktion des Gatters 54O implementiert.
Der Taktimpuls 0 3 macht mit dem Transistor 151 auch den Knotenpunkt 174 hoch, der
sich darauf entlädt, wenn sich der Knotenpunkt 172 nicht
entladen hat und der Transistor 149 nach wie vor durchlässig
ist β So ist am Knotenpunkt 174 der Inverter 541
implementiert. Der Taktimpuls 0 1 arbeitet mit dem Transistor 152 auch noch zum Vorladen des Knotenpunktes
175» Dieser wird durch den anschliessenden Taktimpuls 0 1
(also den zweiten) entladen, wenn nur der Knotenpunkt 174
hoch ist. So ist am Knotenpunkt 175 der Inverter 542 imple-
"> mentiert. Der folgende 0 2 Taktimpuls (also der zweite) am
Anschluss 162 macht den Transistor 157 durchlässig. Der 0 1 Taktimpuls hatte gerade zuvor mit Hilfe des Transistors
159 den Knotenpunkt des Anschlusses 165 vorgeladen.
Wenn also der Knotenpunkt 175 hoch war, entlädt sich der
*" Knotenpunkt des Anschlusses I65 über die Transistoren 155
und 157. Am Anschluss I65 ist damit der Inverter 543 implementiert,
und das Signal c ist verfügbar, um am Anschluss 123 eines folgenden arithmetischen Moduls verarbeitet
zu werden. Die Transistoren 143, I56, 158 und I60
entsprechen' den Transistoren I50» 155» 157 void 159» so
dass für das Signal s abgesehen von den zwei Inversionen die gleichen elektronischen Bedingungen gelten und es zur
Weiterverarbeitung am Anschluss I70 erscheint. Es ist dazu
noch zu bemerken, dass der Modul nach Fig. 3 intern gewis-
sermassen eine Rohrleitungsfunktion hat, wobei Signale
zweier aufeinanderfolgender Verarbeitungen in verschiedenen Teilen des Moduls dargestellt sind.
In Fig. 4 ist ein programm!erbarer Volladdierer/Vollsubtrahierer in n-MOS-Teclmologie
nach Fig. 2b dargestellt. Die Schaltung entspricht teilweise der nach Fig. 3» und entsprechende Elemente sind mit den
gleichen Bezugsziffern bezeichnet. Die Anschlüsse 120/125
030013/0779
14.4.1979 y$ PHN 9223
erlialteii den Taktimpuls 0 1, die Anschlüsse 121/126 den
Taktimpuls 0 3» In diesem Fall wird die dritte Eingangsgrösse
b am Eingang 200 erhalten (bei einem Volladdierer sind die Eingangssignal gegenseitig auswechselbar) ,
der Taktimpuls 0 2 gelangt noch an die Eingänge 203 und 206 und dei- Taktimpuls 0 4 an die Eingänge 204 und 205 ·
Das Vorladen des Knotenpunktes 201 erfogt mit Hilfe des
Transistors 202 (0 3) und das Abtasten mit Hilfe des
Transistors 207 (0 4). Die Transistoren 146, 147 und
bilden an diesem Punkt die Funktion aeb.d.(Gatter IO9 in
Fig. 2b). Das Vorladen des Knotenpunkts 210 erfolgt mit Hilfe des Transistors 208 (0 3) und das Abtasten mit Hilfe
des Transistors 209 (0 4). Die Transistoren 131, 132, 137, 138, 134 und 135 bilden an diesem Punkt die Funktion
a.b+b.d+d.a (Gatter 113 in Fig. 2b). Der Knotenpunkt wird mit Hilfe des Transistors 214 {0 3) vorgeladen und
durch die Serienschaltung aus dem Transistor 213 (^ 1)
und dem Transistor 216 abgetastet, die durch die Spannung am Knotenpunkt 210 geöffnet werden kann. So ist der Iiiverter
117 aus Fig. 2b implementiert. Der Knotenpunkt 217 wird mit Hilfe des Transistors 211 (0 3) vorgeladen und mit
Hilfe des Transistors 212 (0 4) abgetastet, so dass am Knotenpunkt 217 die Funktion a+b+d (Gatter 115 in Fig. 2b)
implementiert ist. Die Transistoren 218, 219 und 220
^5 invertieren dieses Signal auf die gleiche Weise wie für
die Transistoren 213, 216 und 214 beschrieben, so dass am Knotenpunkt 221 der Inverter 119 nach Fig. 2b implementiert
ist. Der Knotenpunkt 201 steuert den Transistor 223, der Knotenpunkt 215 den Transistor 222 und der Knotenpunkt
den Transistor 224. Das Vorladen des Knotenpunkts 228 erfolgt
mit Hilfe des Transistors 227 (0 1) und das Abtasten
mit Hilfe des Transistors 226, der mit zwei parallel geschalteten Abzweigen in Serie geschaltet ist. Der erste
Abzweig enthält Transistoren 223 und 222 in Serienschal-
tung, wodurch das Gatter 112 nach Fig. 2b implementiert ist. Der zweite Abzweig enthält den Transistor 22h, der
vom Knotenpunkt 217 gesteuert wird. So i&t am Knoten-
030013/0779
14.4.1979 \# PHN 9223
punkt 228 der Ausgang des Gatters 114 nach Fig. 2b
implementiert; dies ist also das Signal s.
Die Transistoren 229, 230 und
231 bilden einen Inverter auf entsprechende Weise wie die
Transistoren 213, 216 und 214, so dass am Knotenpunkt
der Inverter II8 nach Fig. 2b implementiert ist. Die
Transistoren 233, 234 und 235 bilden wieder einen Inverter
für das Signal d am Eingang 123, so dass am Knotenpunkt
236 der Inverter II8A nach Fig. 2b implementiert ist.
10
Die Eingänge IO3A und IO3 erhalten wieder das Steuersignal
f bzw. f. Durch die Serienschaltung der Transistoren und 238 (ersterer erhält das Signal c aus dem Knotenpunkt
215) wird die UND-Funktion des Gatters 110 in Fig. 2b implementiert.
Durch die Serienschaltung der Transistoren 15
(er erhält das Signal aus dem Knotenpunkt 221) und 240
(dieser erhält das Signal f am Anschluss 103A) und 241 (dieser wird vom Signal des Knotenpunkts 236 gesteuert)
wird die UND-Funktion des Gatters 111 in Fig. 2b implementiert. Letztere zwei Serienschaltungen bilden zusammen
20
mit dem Transistor 242 drei parallelgeschaltete Abzweige.
Der Knotenpunkt 246 wird mit Hilfe des Transistors 245
(0 1) vorgeladen und mit Hilfe der Serienschaltung aus dem Transistor 244 (0 2) und den erwähnten drei parallelgeschalteten
Abzweigen abgetastet, mit denen das Gatter 25
nach Fis 2 implementiert ist. Der Knotenpunkt 247 wird mit
dem Transistor 248 (0 1) vorgeladen und mit der Serienschaltung
des Transistors 249 (Taktimpuls ff 3) und des
Transistors 250 abgetastet, die durch die Spannung am
Knotenpunkt 247 gesteuert wird, so dass hiermit der In-
verter 120 A nach Fig. 2 implementiert ist, womit das
Ausgangsübertrag/Borgsignal gebildet ist; So ist beispielsweise der arithmetische Modul 127 nach Fig. 6
implementiert, dessen Funktion in der Einrichtung arithmetischer
Moduln näher erläutert wird. Es sei darauf 09
hingewiesen,, dass die Schaltung nach Fig. 4 als integrierte
Schaltung in der Breite die gleiche Teilung wie die der Fig. 3, jedoch eine grössere Höhe hat. Weiterhin
030013/0779
YT PHN 9223
ist es klar, dass die Anordnung der Transistoren, bzw.
der Knotenpunkte geändert werden kann, ohne dass sich die logische Funktion ändert.
In Fig. 6 ist als Beispiel eine Multiplikationsanordnung für zwei Dualzahlen von je
vier Bits in Zweikomplementdarstellung dargestellt, wobei zum Vergleich auf! die Fig. 8.35 aus dem herangezogenen
Buch von Rabiner und Gold hingewiesen wird. Die Figur gibt nur die logischen Funktionselemente an,
wobei die nähere Implementierung und Steuerung beispielsweise durch Taktimpulse nicht beschrieben wurde. Wesentliche
Unterschiede von der bekannten Anordnung bestehen darin, dass durch die gewählte Technologie an den
Ausgängen der arithmetischen Moduln Merkfunktionen vorgesehen sind, dass dies zusammen mit der zugeordneten
Akkuinulatoranordnung eine Rohrleitungsfunktion ermöglicht, wodurch viel schneller" gearbeitet werden kann,
dass die Moduln auf nur zwei Gattungen mit verschiedenen logischen Funktionen zwischen den Gattungen verteilt
sind und dass durch die Verwendung umschaltbarer (Voll-) Addierer/Subtrahierer verschiedene zusätzliche Verwendungsmöglichkeiten
geschaffen sind. Die Anordnung enthält sechzehn logische UND-Gatter (1 ... 16), zwanzig arithmetische
Moduln (17 ..o 25, 27 ... 37)» einundvierzig
Speicherschaltungen, die als· Merkelemente arbeiten (38 ... 78), einen Schalter 26 und acht Datenausgänge 79 ···
86. Die beiden Eingangsgrössen werden als die Bitreihen
(a3a2a1aO) bzw. (b3b2b1bO) geschrieben, wobei die bedeutsamsten Bits a3 bzw. b3 einen negativen Wert
Ό besitzen. In der Figur stellen die grossen Quadrate arithmetische
Moduln mit drei Eingängen dar, die als Volladdierer arbeiten. Die Kreise sind arithmetische Moduln
mit drei Eingängen, die als Vollsubtrahierer arbeiten. Die Moduln 19, 22 ... 25 27 ... 29 können programmierbar
sein, um in einer von zwei Betriebsarten operationsfähig zu sein, wie näher erläutert wird, aber in dieser Figur
ist die entsprechende Steuerung der Einfachheit halber
030013/0779
14.4.1979 ' >& PHN 9223
fortgelassen. Die UND-Gatter 1 ... 16 erhalten alle
eine spezifische Kombination der Bits der zwei Eingangsgrössen und bilden damit also jeweils ein Teilprodukt,
das selbst ebenfalls eine zweiwertige Grosse ist. Das S UND-Gatter 1 bildet das Teilprodukt aObO, das dem Modul
30 zuführbar ist. Das UND-Gatter 2 bildet das Teilprodukt a1bO. Das UND-Gatter 5 bildet das Teilprodukt a0b1.
Letztgenannte zwei Teilprodukte werden im Modul 17 addiert, der auf zwei A/eisen ausgeführt sein kann. Die erste Weise
ist als ein bereits beschriebener Volladdierer; in diesem Fall erhält der dritte angegebene Eingang ein bildes
Signal, das als logische "O" arbeitet. Die zweite Weise ist, dass dieser Modul als ein bekannter Halbaddierer
arbeitet, wobei das Summensignal durch die Exclusiv— ODER-Funktion und das Ausgangsübertragssignal durch die
logische UND-Funktion der Eingangssignale gebildet wird. Man kann den Modul 17 also als "wenigstens ein Halbaddierer"
angeben. Dabei werden die Ergebnisbits jedoch auf logisch gleiche Weise von den Eingangsinformationen
hergeleitet. Das UND-Gatter 3 bildet die Funktion a2bO
und das UND-Gatter 6 die Funktion a1b1, die im Modul 18 addiert werden. Der Modul 18 kann den gleichen Aufbau wie
der Modul 17 haben. Das UND-Gatter 7 bildet die Funktion a2b1 und das UND-Gatter k die Funktion a3bO; letzteres
hat durch die Eigenschaften der Zweikomplementdarstellung'
ein negatives Vorzeichen, und daher arbeitet der Modul als Subtrahierer. Dies kann wiederum auf zwei Weisen erfolgen,
zunächst dadurch, dass der Modul 19 als ein an sich bekannter Volladdierer arbeitet. Der dritte, freie
Eingang erhält dabei ein bildes Signal, das als logische Null arbeitet. Zum anderen kann dieser Modul auch als
"Halbsubtrahierer" arbeiten: wenn beide Eingangssignale gj.eich sind, sind alle Ausgangs signale Null; sind sie
ungleich, ist das Ergebnissignal immer 1 und das Ausgangsborgsignal
gleich dem Signal des Gatters a3bO. Der
numerische Wert des Ergebnisses liegt im geschlossenen Intervall (, -1, +1 J und es ist dafür gewählt, dass das
Ergebnisbit ein positives Vorzeichen und das An.&gangs~
030013/0779
14.4.1979 "19 JPHN 9223
borgbit ein negatives Vorzeichen hat. Man kann den Modul 19 also als "wenigstens ein Halbsubtrahierer" angeben. Von
den Moduln 17 .·· 19 werden die Ergebnisbits den Speicherschaltungen
38» 40 und 42 und die Ausgangsübertragsbits
(bzw. das Ausgangsborgbit des Moduls 19) den entsprechenden Triggerschaltungen 39, 4i und 43 zugeführt. In den
Moduln 17 ... 19 erfolgt die arithmetische Bearbeitung innerhalb eines einzigen Taktzyklus. Am Ende des Zyklus
werden die gebildeten Informationen in den Triggerschaltungen gespeichert. Das UND-Gatter 8 bildet das Teilprodukt
a0b2, das UND-Gatter 9 das Teilprodukt a1b2, das UND-Gatter 10 das Teilprodukt a2b2 und das UND-Gatter
das Teilprodukt a3b1, von welchen Teilprodukten letzteres
ein negatives Vorzeichen aufweist. Weiter erhält der arithmetische Modul 20 die Ausgangssignale der Triggerschaltungen
39 und 40, der arithmetische Modul 21 die der Triggerschaltungen 41 und"42 und der arithmetische
Modul 22 das Ausgangs signal der Triggersclialtung 43·
Letztgenanntes Signal weist durch die (Voll-)Subtrahiererwirkung im Modul 19 ein negatives Vorzeichen auf. Die
Information der Triggerschaltung 38 wird dem weiter unten
zu erläuternden Akkumulatorregister zugeführt. Im folgenden Taktimpulszyklus arbeiten die Moduln 20 und 21 als
Volladdierer und der Modul 22 als Vollsubtrabierer, und es werden die gebildeten Ergebnisse auf entsprechende
Weise wie bei den Moduln 17 ... 19 beschrieben in die Triggerschaltungen 44 ... 49, geschrieben.
Das UND-Gatter 11 bildet das Teilprodukt a0b3 und das UND-Gatter 12 das Teilprodukt
a1b3, die beide ein negatives Vorzeichen haben. Die Moduln 23 und 24 erhalten daneben die Informationen aus den
Triggerschaltungen 45 ... 48 (die alle ein positives Vorzeichen
aufweisen), so dass diese zwei Moduln als Vollsubtrahierer arbeiten. Das UND-Gatter 13 bildet das
Teilprodukt a2b3 und das UND-Gatter 15 das Teilprodukt a3t>2, die beide, wie das Ausgangsborgsignal aus der
Triggerschaltung 49 ein negatives Vorzeichen aufweisen,
so dass der Modul 25 als Volladdierer arbeitet,
030013/0779
14.4.1979 2Θ PHN 9223
auch für Informationen, die alle ein negatives Vorzeichen
aufweisen. Die Ergebnisse dieser Bearbeitungen v/erden wiederum in die entsprechenden Triggerschaltungen 50 ···
55» wie für die Trigger schaltungen kk ... 49 beschrieben,
geschrieben. Das UND-Gatter 16 bildet das Teilprodukt a.3b3,
das durch die negativen Vorzeichen in beide Faktoren desselben ein positives Vorzeichen hat. Für die Multiplikation
zweier Zahlen in Zweikomplementdarstellung ist der Schalter 26 (er kann ein Eingangstransistor des Moduls
26 oder eine diskrete Komponente sein) geschlossen.
Das Ausgangssignal des Moduls 23 hat einen numerischen. Wert
im geschlossenen Intervall J +2, -1 I . Deshalb hat das Ergebnisbit des Moduls 23 ein positives Vorzeichen fftr..die
Behandlung im weiter unten zu beschreibenden Akkumulator, jedoch ein negatives Vorzeichen für· die Behandlung im
Modul 27. Der Modul 27 erhält also aus der Triggerschaltung 51 ein Bit mit positivem Vorzeichen und aus der
Triggerschaltung 52 ein Bit mit negativem Vorzeichen. Der
Modul 50 arbeitet weiter als Volladdierer und erzeugt ein
Ergebnis mit numerischem Wert im geschlossenen Intervall +1, -2 j .Das Bit der Triggerschaltung 50 wird zugeführt,
um eine geeignete Korrektur zu erhalten, wodurch das Produkt in Zweikomplementdarstellung den geeigneten
Wert bekommt. Das Ergebnisbit des Moduls 27 gelangt an
die Triggerscha.ltung 58 und das Ausgangsübertragsborgbit*
an die Triggerschaltung 59* Die Moduln 28 und 29 arbeiten
wie der Modul 27» so dass die positiven Endergebnisbits stets in den Triggerschaltungen 38, 44, 50, 58, 60
und 62 erscheinen, das Ausgangsborgbit mit negativem Vorzeichen aus dem Modul 29 in der Triggerschaltung 63
und das Teilprodukt mit niedrigster Bedeutsamkeit am Ausgang des Gatters 1. Diese acht Produktbits gelangen
jeweils an den entsprechenden Volladdierermodul der Reihe 30 ... 37* Die Ergebnisbits gelangen an die Triggerschaltungeri
71 ··. 78, die Ausgangsübertragsbits an die
Triggerschaltungen 64 ... 70, von denen jeweils de.r
Ausgang mit einem Eingang des Moduls mit nächsthöherer
Bedeutsamkeit verbunden ist. Das akkumulierte Endergebnis
030013/0779
1^.4.1979 «Μ PHN 9223
erscheint für die Weiterverarbeitung an den entsprechenden Ausgängen 79 ··· 86. Venn ein Produkt bestimmt werden
muss, und jeder arithmetischer Modul kommt für eine Elementarbearbeitung mit einem einzigen Taktimpulszyklus
aus, so kann es höchstens acht Taktimpulszyklen dauern, bevor das ganze Produkt bekannt und die Fortplanzung aller
Ausgangsübertrags.- und Ausgangsborgsignale vollendet ist (beispielsweise in der Modulreihe 17-20-23-27-34-35-36-37)·
Andererseits dauert die Bildung der Teilprodukte und ihre Verarbeitung in den Moduln der ersten Zeile
(also die Ziffern 17 ··· 25, 29, 30 ) nur einen einzigen
Taktimpulszyklus, und diese Moduln sind danach zum Erhalten zweier folgender, zu multiplizierender Zahlen verfügbar.
So kann mit jedem Taktimpuls ein Produkt gebildet werden, da die Produkte sowieso akkumuliert werden. Letzteres
ist beispielsweise der Fall bei der Bestimmung des inneren Produktes zweier Vektoren ; (a3 ··· aO) bildet
dabei eine bestimmte Komponente eines derartigen Vektors. Die Schaltung nach Fig. 6 kann um einen zusätzlichen
arithmetischen Modul statt des Schalters 26 erweitert werden. Dieser arbeitet hier dann als Vollsubtrahierer
und empfängt das Signal aus der Triggerschaltung 50. Das Ergebnisbit wird wiederum mit positivem Vorzeichen
dem Modul 33 und das Ausgangsborgbit mit negativem Vorzeichen dem Modul 27 zugef ülirt. Der Durchfluss der Sigiale
dauert dabei jedoch um einen Taktimpuls länger : nach dem Zuführen der letzten Komponenten einer Reihe von
Faktorpaaren dauert es noch p+q+1 (hier neun) Taktimpulsperioden, bevor das Ergebnis bekannt ist. Wenn die Triggerschaltungen
nicht vorhanden sind, muss mit dem Zuführen neuer Informationen gewartet werden, bis die vollständige
Schaltung im Ruhezustand ist. Es ist klar, dass dies bei der gleichen Verarbeitungsgeschwindigkeit in den
Moduln viel träger ist, als nach dem Aufbau nach J1-1Ig. 6
erfordert wird.
Die arithmetischen Moduln können gesonderte Komponenten oder zusammen integriert
030013/0779
14.4.1979 2£ PHN 9223
sein. In obiger Beschreibung wurde dynamische (Vierphasen)MOS-Logik
als vorteilhafte Ausführungsform erwähnt, wobei insbesondere die Ausgangsknotenpunkte der
Gatter als Merkelemente oder als Triggerschaltungen arbeitcn, so dass dafür keine zusätzliche Substratfläche
benötigt wird. Die Schaltung nach Fig. 3 kann in Fig. 6 zur Verwirklichung der Moduln 20 und 21 sowie der Moduln
der Akkumulatorregister 30 ... 37 verwendet werden, wobei
im letzteren die Bildung des Teilproduktes unterbleibt und noch jeweils der Ergebnisbitausgang zum Eingang ringgekoppelt
ist. Für den Modul 25 ist die Bildung zweier Teilprodukte erforderlich. Die Schaltung nach Fig. h
kann für die Moduln 27 und 28 und unter Zusatz eines zusätzlichen UND-Gatters für den Modul 29 verwendet
werden. Der Modul 29 wird in einer anderen Form in Fig.12
dargestellt. Die Änderungen in den übrigen Modulen in bezug auf den explizit dargestellten sind entweder das
Fortlassen bestimmter Elemente (wie der Ha3.baddierer in bezug auf die Volladdierer), oder das geänderte Vorzeichen
des Eingangssignals, das aus einer bestimmten Richtung
ankommt, so dass das Verdrahtungsmuster des Eingangssignals geändert werden muss. Der weitere Aufbau der Schaltung
nach Fig. 6 und ihre Verwendung bei grössei- StelJ.enzahl
der Operanden wird näher erläutert.
In Fig. 7 ist eine Erweiterung der Schaltung nach Fig. 6 für zwei Operanden von je acht
Bits dargestellt, wozu 73 arithmetische Moduln benötigt werden. Die Achtbitoperanden werden von links (b7 ... bO)
und von oben (a7 ... aO) eingeführt, wobei a7 und b7 das
negative Vorzeichen haben. Das bedeutsamere Bit aus einem Modul (Übertrag/Borgen) wird nach unten abgeführt, das
unbedeutsamere Bit jeweils nach unten rechts. Die Bildung eines Produktbits ist mit einem Punkt bezeichnet. Der
Modul 260 kann ein Halbsubtrahierer und die Modulen 261..
3j 266 können Halbaddierer mit der symbolischen Bezeichnung
eines Eingangssignals "0" sein» Die Moduln 267, 274, 281,
288, 295, 303 ... 316 sind Vollsubtrahierer und die
übrigen Moduln Volladdierer. Der Modul 316 liegt hier an
030013/0779
14.4.1979 <3 PHN 9223
der Stelle des Schalters 26 in Fig. 6. Die Anordnung kann für Operanden mit beliebiger Länge bemessen werden. Es
ist weiter möglich, die Anordnung aus einer Anzahl von Teilanordnungen aufzubauen, die je einen Teil des
Produkts bilden. Dazu können die zwei Operanden beispielsweise in je einen bedeutsameren Teil und einen
unbedeutsaraeren Teil getrennt werden, beide von vier
Bits. Dabei besitzen die bedeutsamsten Bits der unbedeutsameren Teile der Operanden jetzt ein positives
Vorzeichen. Es ist dabei möglich, für die vier Kombinationen gesonderte Multiplikationsanordnungen aufzubauen.
In Fig. 8a«..d sind die in den entsprechenden Anordnungen
zu erfüllenden Funktionen dargestellt, und weiter unten wird die Ausführungsfonn mit programmierbaren arithmetischen
Moduln beschrieben. Die Schaltung nach Fig. 8c entspricht Fig. 6 und erhält einen bedeutsamsten Teil
der beiden Operanden, damit sind in Fig. 7 die Moduln ... 290, 295 ... 297, 302 ... 304 und 309 ... 311 dargestellt
(das Akkiamulatorregister ist fortgelassen worden) Die Moduln 281 ... 283 sind nicht dargestellt, weil die
Moduln 343 und 344 jetzt zwei Teilprodukte (siehe Moduln
17 und 18 in Fig. 6) erhalten können iuid weiterhin das
unbedeutsamste Teilprodukt keinen Modul zugeführt zu werden braucht (siehe UND-Gatter 1 in Fig. 6). Weiter ist
der Modul 345 der Stelle des Schalters 26 in Fig. 6 zugeordnet,
um das Eingangssignal zum links daneben liegenden
Modul auf den entsprechenden Wert zu bringen. Durch ein Minus/Pluszeichen an einem Eingang eines Moduls
ist das Vorzeichen eines Eingangsbits zu diesem Eingang angegeben, durch das Vorzeichen (-/+) in einem Modul das
Vorzeichen eines nicht durch einen Pfeil angegebenen Eingangsbits. Quadrate sind wieder Addierer und Kreise
sind Subtrahierer. Durch einen dickeren Pfeil ist eine Eingangsgrösse mit negativem Vorzeichen angegeben. Die
Schaltung nach Fig. 8a erhält den bedeutsameren Teil dos
ersten Operanden (a) und dem unbedeutsameren Teil des zweiten Operanden (b). Diese Schaltung stellt in Fig.
die Moduln 26o ... 262, 267 ... 269 und 274 ... 276 dar.
030013/0779
14.4.1979 2Λ PHN 9223
Weiterhin sind die Moduln 3^0 ··· 3^2 vorhanden, die den
Moduln 27, 28 und 29 in Fig. 6 entsprechen. Die Moduln
3^1, 3^2, 346 und 3^7 sind jetzt Volladdierer, weil in
bezug auf den zweiten Operanden kein negatives Vorzeichen verarbeitet zu werden braucht. Aus demselben Grund ist
der Modul 3h8 ein Vollsubtrahierer, der jetzt einziges
Teilprodukt mit negativem Vorzeichen empfängt. In diesem Fall kann der Schalter 26 (Fig. 6) so gesteuert werden,
dass er offen steht. Zum anderen kann statt des Vollsubtrahierers 3^5 in Fig. 8c an dieser Stelle ein als Volladdierer
arbeitender Modul implementiert werden. Veil er nur ein einziges Eingangsbit erhält, wird ja nie ein
Ubertragssignal zum Modul 3^2 auftreten. Die Schaltung
nach Fig. 8d erhält den unbedeutsameren Teil des ersten Operanden (a) und den bedeutsameren Teil des zweiten Operanden.
Diese Schaltung stellt in Fig. 7 die Moduln 292
29^, 299 ... 301, 306 ... 308 und 313 ... 315 clar, wobei
in diesem Fall die Moduln 350 und 351 Volladdierer sind,
und der Modul 3^9 ein Vollsubtrahierer ist, weil hinsichtlich
des ersten Operanden kein negatives Vorzeichen verarbeitet zu werden braucht. Es gibt jetzt schon einen
dem Modul 3^5 in Fig. 8c (und also dem Modul 316 in Fig.7)
entsprechenden Modul, der als Vollsubtrahierer arbeitet, oder sonst einen Schalter nach Fig. 6, Element 26, der
jetzt geschlossen ist. Es gibt weiter keine den Moduln 285 ... 287 entsprechenden Moduln, weil die Moduln 351A und
351D jezwei Teilprodukte erhalten können und das Teilprodukt
mit niedrigster Bedeutsamkeit direkt akkumuliert wird. Die Schaltung nach Fig. 8b erhält die unbedeutsamsten
Teile der beiden Operanden und besteht vollständig aus (Voll-)Addierern, weil jetzt ausschliosslich positive
Vorzeichen verarbeitet zu werden brauchen. Diese Schaltung stellt in Fig. 7 die Moduln 264 ... 266 271 ... 273 und
278 ... 28O dar, während auch wiederum eine zusatzliche
Reihe von Volladdierern entsprechend den Moduln 27 ... ^9
in Fig. 6 zugeordnet ist. Auch jetzt wird der Schalter 26 in den offenen Zustand gesteuert. An sich eignet sich die
Schaltung nach Fig. 8b zum Multiplizieren zweier Vierbit-
030013/0779
zahlen in der Darstellung nach Vorzeichen und Grosse.
So wird, wenn alle (Voll-)Subtrahierer in Fig. 6 zu (Voll-)Addierern umschaltbar sind, eine Multiplikationsanordnung für zwei Zahlenarten gebildet. Die Doppelverwendung
ist selbstverständlich äusserst vorteilhaft.
Eine jede der Schaltungen
8a ... d liefert ein teilweise Endergebnis von 8 Bits. Den Moduln 318 ... 321 und 330 ... 333 nach Fig. 7 entspricht
jeweils ein Bit im Bedeutsamkeitspegel, den 10
Moduln 322 ... 329 jeweils drei Bits. Sie werden auf
nicht gesondert dargestellte Weise je\ieils summiert, beispielsweise in zwei aufeinanderfolgenden Bereclinungsvorgängen:
in einem ersten Berechnungsvorgang werden die
erwähnten drei Bits auf zwei reduziert; in einem zweiten 15
werden alle Bits zu einem einzigen Produkt addiert: dabei genügen 9 + 12 = 21 Addierbearbeitungen (für die vier
unbedeutsamsten Bits ist keine Addition erforderlich).
Dahinter kann wiederum ein Akkumulatorregister (Moduln
318 ... 333) geschaltet sein, um mit der laufenden
20
Summe aufeinanderfolgend gebildeter Produkte gleichen
Schritt zu halten. Bei der Bildung dex^ Produkte muss
selbstverständlich das negative Vorzeichen der bedeutsamsten Bits aus den Schaltungen nach Fig. 8b und d
berücksichtigt werden. Auf entsprechende Weise ist ein 25
Aufbau von (mxn) Teilmultiplikationsanordnungen möglich.
In Fig. 9 ist ein Teil einer
Multiplikationsanordnung nach Fig. 6 dargestellt, um damit alle Funktionen nach Fig. 8a ... d erfüllen zu
können. Es handelt sich um die Moduln 22, 25, 2k, 29, 28 30
und 27! die nacheinander den Moduln 352 ... 357 entsprechen.
Die teilproduktbildenden Mittel und die Speicherschaltungen sind der Einfachheit halber fortgelassen.
In FJg. 6 wird der Modul 19 auf gleiche Weise wie hier der Moxlul 352, der Modul 23 auf gleiche Weise wie hier die
Modul 35'·» 356 und 357 gesteuert (dies gilt auch für den
möglicherweise statt dos Schalters 26 vorgesehenen und als VoJ laddierer/Vollsubtruhiei-er programmierbaren arith-
030013/0779
metischen Modul); Moduln 17, 18, 20 und 21 erfüllen immer die gleiche Funktion als (Voll-)Addierer, während
die Anordnung auf entsprechende Weise an Operanden einer grösseren Bitanzahl angepasst werden kann. Die
Moduln entsprechen nach äusserem Betrieb stets der Schaltung nach Fig. 2a und b, von der eine Verwirklichung
in dynamischer n-MOS-Logik in Fig. 3 und 4 angegeben ist.
Bei allen Moduln ist weiter die Art der Signale a, b und d und ausserdem durch einen vergrösserten Pfeil angegeben,
woher das Signal d stammt. Dieses letzte hat je nach dem Wert des Steuersignals f ein positives Vorzeichen
(Volladdierer) bzw. ein negatives Vorzeichen (Vollsubtrahierer)· Der Modul 355 wird gesondert betrachtet.
Jeder Modul erhält weiterhin ein Steuersignal, das aus den Komponenten h und g aufgebaut ist, die durch das Vorzeichen
des bedeutsamsten Bits des zu verarbeitenden Operandenteils bestimmt werden« Die gegenseitige Verbindung der
Moduln wird auf bekannte Weise durch die Leiterbahnen verwirklicht, die auf der integrierten Schaltung angebracht
sind. Der Modul 352 wird vom Signal h (f= h) gesteuert. Der Wert von h=1, wenn es sich um den bedeutsamsten
Teil des ersten Operanden handelt (Fig. 8a und c). Zum anderen ist der Wert von h=0. Die Moduln 354, 356 und 357
werden vom Signal g (f=g) gesteuert. Der Wert von g=1, wenn
es sich um den bedeutsamsten Teil des zweiten Operanden handelt (Fig. 8a und d). Sonst ist der Wert von g=0. Der
Modul 353 wird dadurch gesteuert, dass im Exclusiv-ODER-Gatter 358 die Signale g und h addiert werden (f=g(ph).
Der Wert von g<ph=O, wenn es sich um den bedeutsamsten Teil
beider Operanden oder um einen weniger bedeutsamen Teil beider Operanden handelt. Sonst ist der Wert von g(?h= 1 .
Wenn das Steuersignal zu den Moduln gemäss der Beschreibung den Wert 1 hat, werden sie als Vollsubtrahierer, und wenn
das Steuersignal den Wert 0 hat, werden sie als \ro.lladdier-
er gesteuert.
Im Zusammenhang mit dem Modul 355 gibt die Fig. 10 eine Funktionstabelle für einen jeden
030013/0779
14.k. 1979 37 ΓΗΝ ?223
der vier Fälle nach Fig. 8a ... de Wie bei Fig. 2b und
k beschrieben wurde, ist nach aussen die Art der gebildeten
Funktionen für alle Subtraktionsfunktionen gleich, nur wechselt jeweils die Lage des Bits mit abweichendem
Vorzeichen: in der Situation nach Fig. 8c ist es das Bit a (bedeutsamstes Teilprodukt), in Fig. 8a
ist es das Bit b (positives Übertragssignal des Moduls 35Ö) und in Fig. 8d ist das Signal ein positives Übertrags
signal des Moduls 353» während die zwei anderen Signale negativ sind. Mann könnte die Steuerung der
Additions/Subtraktionsfunktion von der Selek'borftuiktion
für das Signal mit abweichendem Vorzeichen trennen Stets wird das Sumirenbit (Ergebnisbit ) auf gleiche Weise
gebildet.
In diesem Zusammenhang zeigt Fig. 11 eine Ausführungsform in Gattern und Fig. 12 eine
Ausführungsform in dynamischer Vierphasen-MOS-Logik des
Moduls 355· In der Schaltung nach Fig. 11 kommen die
Signale a, b und d (von denen a und d in invertierter Form) und die Steuersignale g und h an. Zunächst bilden
390 ... 393 der Steuersignale alle vier Kombinationen :
g.h, g.h, g.h und g.H. Die Gatter 36Ο ... 362 und 363
entsprechen den Gattern IO6 ... 108 und 113 in Fig. 2a.
Die Umkehrstufen 36k ... 366 arbeiten für jedes Eingangssignal
als Umkehrstufe 118A in Fig. 2. Die Gatter 367, 37Ο, 383 und 377 arbeiten wie Gatter IO9, II5, 112 und
114, um am Anschluss 389 die Summe s zu bilden. Es sei
dabei bemerkt, dass das Suinmenbit der Datenbits a, b und d immer gleich dem der Datenbits a, b und d ist. wobei
also zwei davon invertiert sind. Das invertierte Zuführen ist im Zusammenhang mit der Verwirklichung der
Schaltung nach Fig. 12 vorteilhaft. Diese Signale werden
durch "Typ 2"-Gatter erzeugt, die für Übersprechen auf verhältnismässig langen Leitungen weniger empfindlich als
"Typ I"-Gatter sind» An sich ist diese Eigenschaft in der
benutzten Technologie bekannt.
An den Anschluss 378 gelangt
das Signal g.h, an den Anschluss 379 das Signal g.h, an
030013/0779
. 1979 28 PHN ?223
den Anschluss 380 das Signal g.h, an den Anschluss 381
das Signal g.h, an den Anschluss 382 das Signal g und an
den Anschluss 38^ das Signal g. Wenn die Anordnung als
Addierer arbeiten soll (g = h = θ), sind also Gatter
373 und 376 aktiv. Das Gatter 373 bildet das Signai
(lüb„d).b = (a+b+d).b = ab+bd
Das Gatter 376 bildet das Signal a+b+d = a.b.d, und
die Gatter 385, 386 und 387 bilden daraus die ODER-Funktion.
Wenn g = h = 1, sind die Gatter 37^ und 375 aktiv. Das Gatter 37^ bildet d.(a+b+d") =
d.(a+b). Das Gatter 375 bildet (a.b.d). Sie wei-den kombiniert
als :
d.(a+b) + (a.b.d) = a(d+b.d) + b.d
= a(d+b+a) + b.d.a
Für g = 1 und h = 0 sind die Gatter 372 und 375 aktiv.
Das Gatter 372 bildet a.(^+b+d). Das Gatter 375 bildet
a.b.d. Sie werden kombiniert als a(b+d) + a.b.d.= d(a+a.b) + ab = d(a+b+d) + abd.
Für g = 0 und h = 1 sind die Gatter 371 und 376 aktiv.
Das Gatter 371 bildet ä\b + fcud + d.a. Das Gatter 376
bildet a.b.d Sie bilden zusammen:
a.b.d + a.d. + b.d + b.a = b(a+d+a.d) + a.d = b( a+b+d) + a.b.d.
Auf entsprechende Weise wie bereits beschrieben zeigt die
Fig. 12 eine Ausführungsform in dynamischer Vierphasenn-MOS-Logik
dieser Funktion. Die Anschlüsse für die Taktimpulse sind als 0 1 - 0 k angegeben. Die Taktimpuls-Leitungen
0 1 und 0 3 und die Anschlüsse für die Datenbits a, b un d ' verlaufen in einer erster Richtung ebenso
wie der Ausgang für die Summsnbits. Die Anschlüsse für
die Steuersignale gh, gh, gh und gh sowie die Taktimpulsleitungen 0 2 und 0 k und der Ausgang für das Übertragssignal
verlaufen in einer Richtung senkrecht dazu. Sie sind als die bereits erwähnte Aluminiumverdrahtungsschicht
angegeben. Dies gilt auch für die gestrichelten
030013/0779
14.4.1979 39 PHN 9223
Verbindungen für (Zwischensignale) 400, 401 und 402. Der Knotenpunkt 4O4 wird vom Taktimpuls 0 3 mit Hilfe des
Transistors 403 vorgeladen und vom Taktimpuls 0 4 abgetastet,
wobei die Transistoren 405 ... 41O die UND-Funktionen der Gatter 36O ... 362 bilden. So ist am
Knotenpunkt 4O4 die Funktion des Gatters 363 erfüllt. Der Transistor 411 lädt den Knotenpunkt 4i4 auf, der wiederum
von einer Serienschaltung von Transistoren 412 (vom Signal am Knotenpunkt 4O4 betätigt) und 413 (von 0 1
erregt) abgetastet wird. So ist der Inverter 369 verwirklicht.
Der Knotenpunkt 419 wird vom Transistor 41 4A
(Taktimpuls 0 3) vorgeladen und von einer Serienschaltung aus den Transistoren 415 ... Ί-18 (0 4 und die Eingangsinformation) abgetastet. So ist am Knotenpunkt 419 die
Gatterfunktion 367 gebildet. Der Knotenpunkt 424 wird vom Taktimpuls 0 3 am Transistor 420 vorgeladen und von
einer Serienschaltung aus dem Transistor 421 (0 4) und dem Transistor 422 (a) abgefragt. So wird am Knotenpunkt
hzk der Inverter 364 implementiert. Der Knotenpunkt 425
wird vom Taktimpuls 0 3 am Transistor 426 vorgeladen und von einer Serienschaltung aus dem Transistor 427 (0 4)
und dem Transistor 428 (Signal b) abgefragt. So wird am Knotenpunkt 425 der Inverter 365 implementiert. Der
Knotenpunkt 430 wird vom Transistor 427 A (0 3) vorgeladen
und von einer Serienschaltung aus den Transistoren 429 A (vom Knotenpunkt 425 gesteuert) und den Transistor 428 A
(0 1) abgefragt. So ist am Knotenpunkt 430 der Inverter
368 implementiert. Der Knotenpunkt 431 wird vom Transistor 432 (Taktimpuls 0 3) vorgeladen und von einer Serienschaltung
aus den Transistoren 433 (Taktimpuls 0 4) \md 434 (vom Signal d betätigt) abgefragt. So ist am
Knotenpunkt 431 der Inverter 366 implementiert. Der
Knotenpunkt 435 wird vom Transistor 436 (Taktimpuls 0 3)
vorgeladen und vom Transistor 44O (Taktimpuls 0 4) in
Serie mit einer Parallelschaltung der Transistoren 437t
438 und 439 abgefragt, die von je einem dcv Eingangsdaten
erregt werden. So ist am Knotenpunkt 435 die N0R~Funktion des Gatters 370 implementiert*
030013/0779
14.4.1979 30 PHN 9223"
Der Knotenpunkt 442 wird mit
Hilfe des Transistors 441 vorgeladen (vom Taktimpuls 0 3
betätigt) und von einer Serienschaltung aus dem ., Transistor 443 (vom Taktimpuls 0 4 betätigt) und den
Transistoren ^44, 445 und 446 abgetastet, die von je
einem der Datensignale betätigt werden, So ist am Knotenpunkt 442 abermals (vergleiche mit dem bereits beschriebenen
Knotenpunkt 419) das NAND-Gatter 367 implementiert. So ist diese Information an geometrisch weit auseinander
liegenden Stellen verfügbar, und es ist in diesem Fall keine lange Zwischenverbindung erforderlich, die für
Störungen im Zusammenhang mit Übersprechen empfindlich
wären. Der Knotenpunkt 447 wird vom Transistor 448 (vom Taktimpuls 0 1 betätigt) vorgeladen und von einer
Serienschaltung aus dem Transistor 450 (Taktimpuls 0 z)
und einer Parallelschaltung zweier Abzweige abgetastet. Der erste Abzweig enthält den Transistox1" 449 (vom Signal des
Knotenpunkts 435, d.h. des NOR~Gatters 370 gesteiiert)
Der zweite Abzweig enthält in Serie den Transistor 452,
der vom Signal des Knotenpunkts 4i4; d.h. des Inverters
369 betätigt wird, und den Transistor 451 (vom Signal
am Knotenpunkt 442 betätigt). So ist am Knotenpunkt 447
das Ausgangssignal s (Gatter 383 und 377) gebildet.
Der Knotenpunkt 453 wird vom
Transistor 423 (Taktimpuls 0 3) vorgeladen und von einer Serienschaltung aus den Transistoren 455 (vorn Taktimpuls
0 1 betätigt) und dem Transistor 454 (vom Signal am Knotenpunkt
435 betätigt) abgetastet. So ist am Knotenpunkt 453 der Inverter 37OA nach Fig. 11 implementiert. Auf
entsprechende Weise wird mit Hilfe der Transistoren 429, k$6 und 457 am Knotenpunkt 458 der Inverter 3^7 A implementiert.
Der Knotenpunkt 459 wird mit Hilfe des Transistors 460 (vom Taktimpuls 0 I betätigt) vorgeladen und mit
Hilfe des Transistors 461 (vom Taktimpuls 0 2 betätigt)
und drei parallelgeschalteter Abzweige abgetastet. Der erste Abzweig enthält eine Serienschaltung aus den
Transistoren 462 (vom Steuersignal g betätigt) und 463
030013/0779
14.4· 1979 £-1 PHN
(vom Knotenpunkt 435 betätigt), womit das Gatter 376
implementiert ist. Der zweite Abzweig enthält eine Serienschaltung aus den Transistoren 464 (vom Steuersignal
g betätigt) und 465 (vom Knotenpunkt 458 betätigt),
womit das Gatter 375 implementiert ist. Der dritte Abzweig enthält eine Serienschaltung aus dem Transistor
466 (vom Steuersignal g.h. betätigt), 467 (vom Knotenpunkt
431 betätigt) und 468 (vom Knotenpunkt 453 betätigt),
womit das Gatter 374 implementiert ist. So ist am Knotenpunkt 459 das Gatter 385 implementiert.
Der Knotenpunkt 470 wird mit
Hilfe des Transistors 471 (Taktimpuls 0 1) vorgeladen und
mit Hilfe einer Serienschaltung aus dem Transistor 472
(vom Taktimpuls 0 2 betätigt) und drei untereinander parallelgeschalteten Abzweigen abgetastet. Der erste
Abzweig enthält eine Serienschaltung aus den Transistoren 473 (vom Knotenpunkt 424 betätigt),474 (vom Steuersignal
h.g betätigt) und 475 (vom Signal am Knotenpunkt 453
betätigt), womit das Gatter 372 implementiert ist. Der
zweite Abzweig enthält eine Serienschaltung aus den Transistoren 476 (vom Knotenpunkt 419 betätigt), 477
(vom Steuersignal g.h. betätigt) und 478 (vom Knotenpunkt
430 - Inverter 368 betätigt), womit das Gatter 373 implementiert
ist» Der dritte Abzweig enthält eine Serienschaltung aus den Transistoren 480 (vom Steuersignal g.h
betätigt) und 481 (vom Knotenpunkt 4θ4 gesteuert), womit das Gatter 371 implementiert ist. So ist am Knotenpunkt
470 das NOR-Gatter 386 implementiert. Der Knotenpunkt 485
wird vom Transistor 482 (vom Taktimpuls 0 1 betätigt)
vorgeladen und mit Hilfe einer Serienschaltung aus den Transistoren 479 (0 3), 483 (vom Knotenpunkt 459 betätigt)
und 484 (vom Knotenpunkt 470 betätigt), abgetastet, womit
schliesslJch das Gatter 387 implementiert ist, um das
Signal c zu erzeugen. Hiermit ist die Fig. 12 beschrieben.
Ein Vergleich der Schaltungen nach den Fig. 3> 4 und 12 ergibt, dass Fig. 3 einen Normalmodul,
Fig. 4 einen mit gleicher Breite (quer zu den Takt-
030013/0779
14.4.1979 22 PHN 9223
impulsleitungen 0 1 und 0 3)» jedoch grösserer Höhe und
Fig. 12 einen mit gleicher Höhe wie Fig. 4, jedoch doppelter Breite bietet. An sich kann die Wahl zwischen
verschiedenen geometrischen Entwürfen (lay-outs) unabhängig
vom logischen Aufbau sein. Der Entwurf der nicht explizit bis auf Transistorpegel gegebenen arithmetischen
Moduln erfolgt auf entsprechende, in der betreffenden
Technik übliche Weise.
In Fig. 13 ist noch die Kopplung zwischen zwei Schaltungen 8c und d, oder auch
8a und b dargestellt, wenn in letzterer statt des Schalters 26 ein programmierbarer Volladdierer/Subtrahierer
vorhanden ist. Der Einfachheit halber sind in der unteren Zeile nur drei Vollsubtrahierer (5OO ... 502 bzw. 503
505) vorgesehen. Weiterhin sind für die bedeutsamere
Anordnung vier Moduln (5O6 ... 509) des Akkumulatorregisters
angegeben (die weiteren zwei sind fortgelassen). Alle 6 Moduln des Akkumulatorregisters 510 ... 515 der unbedeittsamoren
Anordnung sind dargestellt. Die Moduln 509/
510 haben also gleiche Bedeutsamkeit. In diesem Fall
würde die Information im Modul ein negatives Vorzeichen haben. Für die Verwirklichung ausschliesslich positiver
Vorzeichen wird das Übertragssignal des Moduls 503 mit
negativem Vorzeichen und das Ubertragssignal des Moduls 511 mit positivem A^orzeichen dem Modul 502 zugeführt, der
jetzt als Vollasubtrahierer mit drei EingangsSignalen gesteuert ist. Für die Vervielfachungsallordnung nach 8a
und b ist dies auf gleiche Weise möglich, wenn statt des Schalters 26 ein als Volladdierer gesteuerter Modul
vorgesehen ist. Im Entwurf nach Fig. 8 (4 χ 4 Bit Operanden) erzeugen die entsprechenden Teilanordnungen
die in Fig0 14 angegebenen Bitreihen 6OO ... 6Ο3. Die mit
einem Kreuz bezeichneten Bits sind blind. Das mit einem
Kreis bezeichnete Bit hat ein negatives Vorzeichen. Addition erfolgt in einer bekannten Addieranordnung, um
das Endergebnis zu erhalten.
030013/0779
Leerseite
Claims (1)
15-'f. 1979 y^ PHN 9223
PATENTAN SPRUCHE.
I.) Anordnung zum Multiplizieren einer ersten
und einer zweiten Dualzahl, die höchstens q bzw. ρ (ρ, q >
2) Bitstellen enthalten, mit ersten Mitteln zur Bildimg der höchstens ρ χ q bitweisen Teilprodukte der
beiden Dual-Zahlen und zweiten Mitteln, die ein Datenfeld (array) von (p—1) χ q arithmetischen Moduln enthalten,
von denen (p-i) mit mindestens zwei und die übrigen mit drei Eingängen versehen sind, um jeweils aus zwei bzw.
drei empfangenen Dualzahlen unter Berücksichtigung des jeweiligen Vorzeichens eine algebraische Summe und daraus
eine Zweibitzahl des Ergebnisses und des Übertrags zu bilden, welche Moduln nach bitweise entsprechenden Bedeutsamkeitspegeln
geschaltet sind, um die Teilprodukte sowie entsprechende Bits der Ergebnisse zu erhalten, bis je
Bedeutsamkcitspegel ein einziges Endergebnisbit an den
Ausgängen von (p + q - 2) Moduln sowie ein zusätzliches Bit höchster Bedeutsamkeit an einem besonderen Ausgang
des bedeutsamsten der (p + q - 2) Moduln und ed η Bit
niedrigster Bedeutsamkeit am Ausgang mit der niedrigsten Bedeutsamkeit der ersten Mittel erzeugt ist, dadurch
gekennzeichnet, dass für die Mulplikation zweier Zahlen in Zweikomplenientdar s teilung die zweiten Mittel enthalten;
ein erstes Modul (29)» das als Vollsubtrahi erer das bedeutsamste
TeiIprodiikt mit positivem Vorzeichen und zwei Bit-Zwischenergebnis
mit negativem Vorzeichen empfängt, eine zweite Gruppe eines einziger Modul (25), das als VoIladdiorer
die zwei benachbarten Teilprodukte mit niedrigerer
Bedeutsamkeit mit negativem Vorzeichen und ein Bit Zwischenergebnis mit negativem Vorzeichen empfängt, eine
dritte G nipp ο von (q-3) Moduln (22), die als Vollsubtrahierer
jewo.il«; ein von der b ed out sam s ten Bitposition der
zweiten Zahl und der entsprechenden (θ,—.3) dritt bz\^.
nächstbedeutsomsten Bi tpo si ti onen der ersten Zahl- mit
030013/0779
ORIGINAL INSPECTED
15-4.1979 2
negativem Vorzeichen herrührendes Teilprodukt, ein weiteres Teilprodukt, das nicht aus der bedeutsamsten Bitposition
der ersten Zahl mit positivem Vorzeichen herrührt, und ein Bit Zwischenergebnis mit negativem Vorzeichen empg
fangen, eine vierte Gruppe eines einziger Modul (19)>
das wenigstens als Halbsubtrahierer ein von der bedeutsamsten
Bitposition der zweiten Zahl und der unbedeutsainsten Bitposition der ersten Zahl mit negativem Vorzeichen herrührendes
Teilprodukt und ein weiteres Teilprodukt, das nicht ^q aus der bedeutsamsten Bitstelle der ersten Zahl mit positivem
Vorzeichen herrührt, empfängt, eine fünfte Gruppe von (p-2) Moduln (23. 24), die als Volladdierer jeweils
ein von der bedeutsamsten Bitstelle der ersten Zahl und der entsprechenden (p-2) unbedeutsameren Stellen der zweijg
ten Zahl herrührendes Teilprodukt mit negativem Vorzeichen und weiter zwei Bit Zwischenergebis mit positivem Vorzeichen
empfangen, eine sechste Gruppe von (p-2) Moduln (17> 18), die wenigstens als Halbaddierer jeweils zwei Teilprodukte
mit positivem Vorzeichen erhalten, eine siebte Gruppe von (p-2) (q-3) Moduln (20, 21), die als Volladdierer
jeweils ein Teilprodukt mit positivem Vorzeichen und zwei Bit Zwischenergebnis mit positivem Vorzeichen empfangen,
eine achte Gruppe von (p-2) Moduln (27> 28), die als Volladdierer jeweils ein aus der Gruppe vierter Moduln
herrührendes Ergebnisbit mit nsgativem Vorzeichen ein-
schliesslich eines Ubertragsbits mit positivem Vorzeichen
sowie das Ergebnisbit des zweiten Moduls mit negativem Vorzeichen erhalten und die seriell ein Ausgangsborgbit
innerhalb der achten Gruppe Moduln und anschliessend ,η an das erste Modul weiterleiten, und (p-'l) Ergebnisbits
parallel den Ausgängen der achten Gruppe zuzuführen; dass dritte Mittel vorgesehen sind, die dem unbedeutsainsten
Modul der achten Gruppe Moduln das Endergebnisbit des benachbarten
Pegels mit niedrigerer Bedeutsamkeit mit nega-3g tivem Vorzeichen zuzuführen, dass die Volladdierer der
ersten, dritten, fünften und achten Gruppe zur Bildung gleicher logischer Funktionen aufgebaut sind, und dass
für die Bildung des Prodiakts zweier Zahlen aussohliesslich
030013/0779
ORIGINAL INSPECTED
15.*..979 3
mit Bits mit positivem Vorzeichen alle (Halb-) Subtralii
crer einen Steuereingang aufweisen und durch ein Signal
a?i diesen Eingang als (Halb-) Addierer gesteuert werden, und dass die dritten Mittel einen Steuereingang aufweisen
g und arischliesseiid durch ein Signal an diesen Eingang unwirksam
gemacht werden.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, dass die Volladdierer zweiter und siebter Gruppen
zur Bildung gleicher logischer Funktionen aufgebaut sind.
3. Anordnung zum Multiplizieren zweier Binärzahlen in Zweikomplementdarstellung, die höchstens ρ bzw.
höchstens bq Bitstellen enthalten, mittels b Multiplikationsanordiiungen
nach Anspruch 1 mit b ^> 1 , dadurch gekenn-
,c zeichnet, dass die erwähnten b Multiplikationsanordnungen
ein zweites Feld mit aufeinanderfolgenden Bedeutsamkeiten
nach
M1 , 1
M1 ,2
M1 ,2
M1 ,b
bilden, wobei die Multiplikationsanordnung M1,b die höchste
Bedeutsamkeit besitzt und weiterhin Steuereingänge vorgesehen
sind, die durch ein an diesen Eingängen auftretendes
Signal in MultipJikationsanordnungen M1,1...M1,b—1 (Fig.
8a) die Wirkung arithmetischer Moduln der zweiten, fünften und achten Gruppen in bezug auf die Wirkung bei der* MuI-tiplikationsanordnung
M1,b (Fig. 8c) bei der Durchführung einer Multiplikation zweier Zahlen in Zweikomplernentdarstellung
ändern, d.h. (Voll-)-Addierer zu (Voll-)Subtrahierer
umzubilden und umgekehrt, und dass weiter noch vierte Mitte L vorgesehen sind, die durch algebraische
Addition der Endergebnisbits der Multiplikationsanordnung unter Berücksichtigung derer Bedeutsanikeitspegel ein Endprodukt
bilden.
Ί. Anordnung zum Multiplizieren zweier Binär-
Ί. Anordnung zum Multiplizieren zweier Binär-
030013/0779
ORIGINAL INSPECTED
15·^. 1979 2I ΡΠΝ 9223
zahlen in Zweikoinp] ementdarste] limg, die höchstens ap bzw.
höchstens q Bitstellen enthalten, mittels a Multiplikationsanordnungen
nach Anspruch 1 mit a ^- 1 , dadurch gekennzeichnet,
dass die erwähnten a Mu.ltiplikationsanordnujigen
ein zweites Feld mit aufeinanderfolgenden Bedeutsamkeiten
nach
Ma, 1
Ma-1,1
M2, 1
M1 , 1
M1 , 1
bilden, wobei die Multiplikationsanordnung Ma,1 die hoch—
ste Bedeutsamkeit besitzt und weiterhin Steuereingänge
vorgesehen sind, die durch ein an diesen Eingängen auftretendes
Signal in Multiplikationsanordnungen Ma-1,1.··
M1,1 (Fig. 8a) die Wirkung der arithmetischen Moduln der
zweiten, dritten und vierten Gruppe in bezug auf die Virkung bei der Multi plikationsaiiordnung Ma, 1 (Fig. 8c) bei
der Durchführung einer Multiplikation zweier Zahlen in Zweikomplementdarsteilung ändern, d.h. (Voll-)-Addierer
zu (Vol 1-) Subtrahierer umzubilden und umgekehrt, und dass
weiter noch vierte Mittel vorgesehen sind, die durch algebraische Addition der Endergebnisbits der MuItiplikaticmsanordnung
unter Berücksichtigung derer Bedeutsarnkei tspegel ein Endprodukt bilden, und dass in den Multiplikation.·» —
anordnungen Ma,1...M2,1 die erwähnten dritten Mittel jeweils einen Volladdierer (502) bei der achten Gruppe
bilden, der das Endergebnisbit mit negativem Vorzeichen der betreffenden Bedeutsamkeit aus dieser selben Multiplikationsanordnung
sowie auch in der Multiplikationsanordnung mit nächstniedrigerer Bedeutsamkeit die beiden
als Ubertragssignale der zweithöchsten Bedeutsamkeit an. die erwähnten vierten Mittel gelangenden Bits erhält, insbesondere
eines mit negativem Vorzeichen (503) und eines
mit positivem Vorzeichen (5II) unter Ausschluss direkter
Veiterverarbeitung der erwähnten Ubertragssignale in den
030013/0779
15.^- 1979 5
erwähnten vierten Mitteln.
5. Anordnung zum Multiplizieren zweier Binärzahlen
in Zweikoniplenientdarstellung, die höchstens ap bzw.
bq Bitstellen enthalten, mittels (a χ b) Multiplikationsanordnungen nach Anspruch 1 mit (a + b) >
3» dadurch gekennzeichnet, dass die (a χ b) Multiplikationsanordnungen ein zweites Feld (array) mit aufeinanderfolgenden
Bedeutsamkeiten nach
Ma,1 Ma-1,1 M2,1 M1,1
Ma, 2 Ma-1,2 M2, 2 M1 , 2
Ma,b-1 Ma-1,b-1 M2,b-1 M1,b-1
Ma, b Ma-1,b M2, b M1,b bilden, wobei, die Multiplikationsanordnung Ma,b die höchste
und M1,1 die niedrige Bedeutsamkeit besitzt und weiterhin
die Bedeutsamkeiten von M1,j und Mk,1 gleich sind, wenn
i + j = k + 1, und dass weiterhin Steuereingänge vorgesehen sind, din durch ein an diesen Eingängen auftretendes
Signal in Multiplikationsanordnungen Ma,1 ... Ma,b-1 (Fig. 8a) die Wirkung arithmetischer Moduln der zweiten,
fünften und achten Gruppe in bezug auf die Wirkung bei
der MuItiplikationsanordnurig Ma, b (Fig. 8c) bei der Durchführung
einer Multiplikation zweier Zahlen in Zweikomplementdarstellung
ändern, d.h. (Voll-)-Addierer zu (Voll-) Subtrahierer umzubilden und umgekehrt, in den Multiplikationsanordnungen
Ma-1,b ... MI,b (Fig. 8d) die Wirkung der arithmetischer Moduln der zweiten, dritten und vierten
3Q Gruppe die Wirkung in bezug auf die Wirkung beim Modul
Ma, b zu ändern, um von den übri'gen Multiplikationsanordnungen
ausser der Multiplikationsanordnung Ma,b alle arithmetischen Moduln als (Voll-)Addierer steuern (Fig. 8b),
dass weiter vierte Mittel vorgesehen sind, die durch algebraisehe
Addition der Endergebnisbits der Multiplikationsanordnimgon
unter Berücksichtigung derer Bedeutsamkeitspegel ein Endprodukt bilden, dass in den Multiplikationsanordnungen (ausser in M1,b...M1,i) die erwähnten dritten
030013/0779
15-^.1979
Mittel jeweils einen Volladdierer (502) bei der erwähnten
achten Gruppe bilden, der das Endergebnisbit mit negativem Vorzeichen der betreffenden Bedeutsamkeit aus dieser selben
Multiplikationsanordnung sowie auch in einer Multiplika-
tionsanordnuiig mit nächstniedrigerer Bedeutsamkeit die
5 beiden als Ubertragssignale der zweithöchsten Bedeutsamkeit an die erwähnten vierten Mittel gelangenden Bits erhält,
insbesondere eines mit negativem Vorzeichen (503)
und einer mit positivem Vorzeichen (5II) unter Ausschluss
direkter Weiterverarbeitung der erwähnten Ubertragssignale in den erwähnten vierten Mitteln.
6. Anordnung nach einem der Ansprüche 1 bis 5>
dadurch gekennzeichnet, dass die arithmetischen Moduln als integrierte Schaltungen in dynamischer MOS-Logik mit einer
,. inhärenten Speicher-Funktion an den Ausgängen für Ergeb-Ib
nisbit und übertrag ausgeführt sind und die Ausgänge für die Endergebnisbits mit entsprechenden Eingängen einer
weiteren Gruppe in Serie geschalteter Moduln entsprechenden logischen Aufbaus wie die erwähnten q(p—1) Moduln verbunden
sind, die mit Hilfe ihrer Volladdiererfunktion ein Akkumulatorregister bilden.
030013/0779
ORIGINAL INSPECTED
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL7809398A NL7809398A (nl) | 1978-09-15 | 1978-09-15 | Vermenigvuldiginrichting voor binaire getallen in twee-complement notatie. |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2936763A1 true DE2936763A1 (de) | 1980-03-27 |
Family
ID=19831544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19792936763 Withdrawn DE2936763A1 (de) | 1978-09-15 | 1979-09-12 | Multiplikationsanordnung fuer dualzahlen in zweikomplementdarstellung |
Country Status (6)
Country | Link |
---|---|
US (1) | US4432066A (de) |
JP (1) | JPS5541600A (de) |
DE (1) | DE2936763A1 (de) |
FR (1) | FR2436441B1 (de) |
GB (1) | GB2030743B (de) |
NL (1) | NL7809398A (de) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2524175A1 (fr) * | 1982-03-25 | 1983-09-30 | Labo Cent Telecommunicat | Structure de multiplieur rapide en circuit integre mos |
JPS58181143A (ja) * | 1982-04-15 | 1983-10-22 | Matsushita Electric Ind Co Ltd | デイジタル乗算器 |
JPS58165312U (ja) * | 1982-04-30 | 1983-11-04 | 加藤発条株式会社 | 連結具 |
US4556948A (en) * | 1982-12-15 | 1985-12-03 | International Business Machines Corporation | Multiplier speed improvement by skipping carry save adders |
DE3482532D1 (de) * | 1983-07-06 | 1990-07-19 | Secr Defence Brit | Prozessor mit zwangseinstellung. |
US4748583A (en) * | 1984-09-17 | 1988-05-31 | Siemens Aktiengesellschaft | Cell-structured digital multiplier of semi-systolic construction |
US4736335A (en) * | 1984-11-13 | 1988-04-05 | Zoran Corporation | Multiplier-accumulator circuit using latched sums and carries |
US4706210A (en) * | 1984-12-13 | 1987-11-10 | The Johns Hopkins University | Guild array multiplier for binary numbers in two's complement notation |
US4750144A (en) * | 1985-12-31 | 1988-06-07 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Real time pipelined system for forming the sum of products in the processing of video data |
US4887233A (en) * | 1986-03-31 | 1989-12-12 | American Telephone And Telegraph Company, At&T Bell Laboratories | Pipeline arithmetic adder and multiplier |
US4831577A (en) * | 1986-09-17 | 1989-05-16 | Intersil, Inc. | Digital multiplier architecture with triple array summation of partial products |
JPS63108460A (ja) * | 1986-10-09 | 1988-05-13 | ゾ−ラン コ−ポレ−シヨン | ラツチされた和及びキヤリイを用いるマルチプライヤ回路 |
US4768161A (en) * | 1986-11-14 | 1988-08-30 | International Business Machines Corporation | Digital binary array multipliers using inverting full adders |
US4796219A (en) * | 1987-06-01 | 1989-01-03 | Motorola, Inc. | Serial two's complement multiplier |
US4926371A (en) * | 1988-12-28 | 1990-05-15 | International Business Machines Corporation | Two's complement multiplication with a sign magnitude multiplier |
US7743085B2 (en) * | 2004-11-08 | 2010-06-22 | Tabula, Inc. | Configurable IC with large carry chains |
US7917559B2 (en) * | 2004-11-08 | 2011-03-29 | Tabula, Inc. | Configurable IC's with configurable logic circuits that perform adder and/or subtractor operations |
US7236009B1 (en) * | 2004-12-01 | 2007-06-26 | Andre Rohe | Operational time extension |
US7818361B1 (en) * | 2005-11-07 | 2010-10-19 | Tabula, Inc. | Method and apparatus for performing two's complement multiplication |
US7372297B1 (en) | 2005-11-07 | 2008-05-13 | Tabula Inc. | Hybrid interconnect/logic circuits enabling efficient replication of a function in several sub-cycles to save logic and routing resources |
US8463836B1 (en) | 2005-11-07 | 2013-06-11 | Tabula, Inc. | Performing mathematical and logical operations in multiple sub-cycles |
US7765249B1 (en) | 2005-11-07 | 2010-07-27 | Tabula, Inc. | Use of hybrid interconnect/logic circuits for multiplication |
US7679401B1 (en) * | 2005-12-01 | 2010-03-16 | Tabula, Inc. | User registers implemented with routing circuits in a configurable IC |
EP2597776A3 (de) * | 2007-03-20 | 2014-08-20 | Tabula, Inc. | Konfigurierbares IC mit einem koppelfeld mit speicherelementen |
US8863067B1 (en) | 2008-02-06 | 2014-10-14 | Tabula, Inc. | Sequential delay analysis by placement engines |
US8166435B2 (en) * | 2008-06-26 | 2012-04-24 | Tabula, Inc. | Timing operations in an IC with configurable circuits |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1774483A1 (de) * | 1967-06-30 | 1972-01-27 | Ibm | Binaeres Multiplizierwerk |
DE2505653A1 (de) * | 1974-02-11 | 1975-08-14 | Trw Inc | Hochdichter multiplizierer |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3469086A (en) * | 1964-10-09 | 1969-09-23 | Burroughs Corp | Majority logic multiplier circuit |
US3670956A (en) * | 1968-09-26 | 1972-06-20 | Hughes Aircraft Co | Digital binary multiplier employing sum of cross products technique |
US3752971A (en) * | 1971-10-18 | 1973-08-14 | Hughes Aircraft Co | Expandable sum of cross product multiplier/adder module |
JPS56816B2 (de) * | 1972-12-27 | 1981-01-09 | ||
US3947670A (en) * | 1974-11-22 | 1976-03-30 | General Electric Company | Signed multiplication logic |
JPS51115742A (en) * | 1975-04-03 | 1976-10-12 | Nec Corp | 2's complement parallel type multiplication circuit |
JPS52128026A (en) * | 1976-04-21 | 1977-10-27 | Nec Corp | Multi-input adding circuit for multiplication |
US4130878A (en) * | 1978-04-03 | 1978-12-19 | Motorola, Inc. | Expandable 4 × 8 array multiplier |
-
1978
- 1978-09-15 NL NL7809398A patent/NL7809398A/nl not_active Application Discontinuation
-
1979
- 1979-09-12 FR FR7922800A patent/FR2436441B1/fr not_active Expired
- 1979-09-12 GB GB7931615A patent/GB2030743B/en not_active Expired
- 1979-09-12 DE DE19792936763 patent/DE2936763A1/de not_active Withdrawn
- 1979-09-17 JP JP11917079A patent/JPS5541600A/ja active Granted
-
1981
- 1981-07-13 US US06/282,887 patent/US4432066A/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1774483A1 (de) * | 1967-06-30 | 1972-01-27 | Ibm | Binaeres Multiplizierwerk |
DE2505653A1 (de) * | 1974-02-11 | 1975-08-14 | Trw Inc | Hochdichter multiplizierer |
Non-Patent Citations (2)
Title |
---|
US-Z.: IEEE Transactions on Computers, April 1971, S. 442-447 * |
US-Z.: IEEE Transactions on Computers, Oct. 1975, S. 1020-1027 * |
Also Published As
Publication number | Publication date |
---|---|
JPS6310450B2 (de) | 1988-03-07 |
US4432066A (en) | 1984-02-14 |
FR2436441A1 (fr) | 1980-04-11 |
JPS5541600A (en) | 1980-03-24 |
FR2436441B1 (fr) | 1986-03-28 |
NL7809398A (nl) | 1980-03-18 |
GB2030743B (en) | 1982-07-14 |
GB2030743A (en) | 1980-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2936763A1 (de) | Multiplikationsanordnung fuer dualzahlen in zweikomplementdarstellung | |
DE3586201T2 (de) | Digitaler datenprozessor fuer matrix-vektor-multiplikation. | |
DE68923541T2 (de) | Programmierbare Logikeinrichtung mit einer Vielzahl von programmierbaren Logikarrays, die sich in mosaikförmiger Anordnung zusammen mit einer Vielzahl von vermischt angeordneten Interface-Blöcken befinden. | |
DE3645221C2 (de) | ||
DE68926783T2 (de) | Paralleler datenprozessor | |
DE68927611T2 (de) | Digitales neuronales Netwerk | |
DE69133327T2 (de) | Programmierbare logische Schaltung | |
DE2707451A1 (de) | Einrichtung und verfahren zum addieren von wenigstens zwei aus mehreren bits bestehenden binaerzahlen | |
EP0178424B1 (de) | Zellenstrukturierter digitaler Multiplizierer mit semisystolischem Aufbau | |
DE2706807A1 (de) | Einrichtung und verfahren zum verarbeiten von information in form digitaler signale | |
DE3587944T2 (de) | Konfigurierbare logische Matrix. | |
DE68925303T2 (de) | Zellenstapel für Serien-Architektur mit variabler Ziffernbreite | |
DE3688146T2 (de) | Auslegungsverfahren zur Schaltungslogik mit Kaskodenspannung. | |
DE1474581C3 (de) | Schiebe- und Rotierschaltungsanordnung | |
DE2543023C3 (de) | Speicheranordnung mit Bausteinen aus Ladungsverschiebespeichern | |
DE4236452C2 (de) | Halbleiterspeichereinrichtung | |
DE2165445B2 (de) | ||
DE2025857A1 (de) | Datenspeicherschaltung in der Form einer zweiphasigen Schieberegisterzelle sehr hoher Arbeitsgeschwindigkeit und geringer Leistungsaufnahme | |
DE60307050T2 (de) | Schaltung und verfahren für logische operationen | |
DE3933172A1 (de) | Akkumulator fuer komplexe zahlen | |
DE4317074C1 (de) | Multiplizierer für reelle und komplexe Zahlen | |
DE1574660B2 (de) | Schieberegister hoher geschwindigkeit | |
EP0424410B1 (de) | Multiplizierer | |
DE3785762T2 (de) | Mehrwertige Ale. | |
DE2045833C3 (de) | Schaltungsanordnung bestehend aus zwei miteinander verbundenen integrierten Schaltungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8139 | Disposal/non-payment of the annual fee |