DE2936763A1 - Multiplikationsanordnung fuer dualzahlen in zweikomplementdarstellung - Google Patents

Multiplikationsanordnung fuer dualzahlen in zweikomplementdarstellung

Info

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
Application number
DE19792936763
Other languages
English (en)
Inventor
Nico Frits Benschop
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Philips Gloeilampenfabrieken NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Gloeilampenfabrieken NV filed Critical Philips Gloeilampenfabrieken NV
Publication of DE2936763A1 publication Critical patent/DE2936763A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5306Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel with row wise addition of partial products
    • G06F7/5312Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel with row wise addition of partial products using carry save adders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5324Multiplying 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/386Special constructional features
    • G06F2207/3884Pipelining

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
BAD ORIGINAL
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
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 ,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-
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
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
DE19792936763 1978-09-15 1979-09-12 Multiplikationsanordnung fuer dualzahlen in zweikomplementdarstellung Withdrawn DE2936763A1 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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