DE1499227B2 - Schaltungsanordnung für arithmetische und logische Grundoperationen - Google Patents
Schaltungsanordnung für arithmetische und logische GrundoperationenInfo
- Publication number
- DE1499227B2 DE1499227B2 DE1499227A DE1499227A DE1499227B2 DE 1499227 B2 DE1499227 B2 DE 1499227B2 DE 1499227 A DE1499227 A DE 1499227A DE 1499227 A DE1499227 A DE 1499227A DE 1499227 B2 DE1499227 B2 DE 1499227B2
- Authority
- DE
- Germany
- Prior art keywords
- register
- flip
- flop
- flops
- binary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/50—Adding; Subtracting
- G06F7/505—Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
-
- 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/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
- G06F7/575—Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Logic Circuits (AREA)
- Executing Machine-Instructions (AREA)
- Multi Processors (AREA)
Description
Die Erfindung betrifft eine Schaltungsanordnung ur Durchführung logischer und arithmetischer
irundoperationen gemäß Oberbegriff des Anspruchs.
Schaltungsanordnungen zur Durchführung der ;rithmetischen Grundoperationen Additionen bzw.
iubtraktionen sind bekannt. In »Arithmetic Operations α Digital Computers« von R. K. Richards (D.
on Nostrand Co., 1955), insbesondere auf den Seien 106 bis 124 und nach F i g. 4 bis 17 sind aus zwei
Registern bestehende akkumulierende Rechenwerke bekanntgeworden. Bei diesen akkumulierenden Rehenwerken
wird die Summe bzw. Differenz in den lippstufen gebildet. Hierbei befindet sich der erste
Operand bereits im Akkumulator, und der zweite /ird dazu addiert bzw. davon subtrahiert. Die dabei
ntstehenden Überträge müssen verzögert oder gepeichert und dem Akkumulator erneut zugeführt
/erden. Die Steuerung der Übertragung von den Jbertragsspeichern in die Akkumulatorkippstufen er-•)lgt
über UND-Schaltungen. Die Überträge werden abei synchron nacheinander verarbeitet. Dies beingt,
daß eine lange Zeit für deren Verarbeitung ar Verfügung stehen muß. Es ist durch diese Verffentlichung
ferner bekannt, durch Umschaltung der Ausgänge der Akkumulatorkippstufen einen Akkululator
für die Subtraktion geeignet zu machen. In jesem Fall wird ein Übertrag dann weitergegeben,
/enn eine Kippstufe von 0 auf L wechselt, anstatt on L auf 0, wie es bei der Addition der Fall ist. Die
ynchrone Verarbeitung der Überträge hat gewisse Jachteile, die durch die in der DT-AS 1 190 707 beanntgewordene
Schaltungsanordnung zur asynchroen Verarbeitung der Überträge vermieden werden.
Bei dieser Schaltungsanordnung werden die Kipptufen zur Zwischenspeicherung der Dualüberträge
ber bei Addition und Subtraktion verschieden geteuerten UND-Schaltungen durch die bei den Um-.'haltvorgängen
der Akkumulatorkippstufen entste- : enden Schaltflanken so lange wiederholt eingeschal-
;t und durch den Synchrontaktimpuls ausgeschaltet, is diese Dualüberträge in Form von den Kippstufen
es Akkumulators schaltenden Ausschaltflanken der isten Kippstufe in den Akkumulator übertragen
/orden sind. Diese Schaltungsanordnung ist ferner lit einer Korrektureinrichtung ausgestattet, die bei
itradisch verschlüsselten Dezimalzahlen die erforerlichen Korrekturen erledigt. Da es sich bei der
orliegenden Erfindung hauptsächlich um rein binäre Verknüpfungen handelt, wird auf die Korrekturvorichtung
nicht näher eingegangen. Wie gezeigt wurde, md die bekanntgewordenen Schaltungen zwar zur
mrchführung der arithmetischen Operationen Addion und Subtraktion geeignet, jedoch sind sie nicht
ar Durchführung von logischen Operationen, wie
inksverschiebung, Austausch, UND- bzw. ODER-■unktion
geeignet. Die Funktion von logischen Opeationen mit von einem akkumulierenden Rechenverk
ausführen zu lassen, ist jedoch bei vielen elekronischen
Rechenanlagen sehr zweckmäßig. Zum seispiel ist beim Adressenrechenwerk zur Adressennodifikation
nicht nur eine Addition oder Subtrakion notwendig, sondern es sind häufig auch logische
Jrundoperationen von dem genannten Typ erforderich.
Weiterhin ist aus dem Taschenbuch der Nachrich-■nverarbeitung
(Steinbuch), Springer Verlag, 962, S. 1107 bis 1112 ein Parallelrechenwerk mit
liteinander verbundenen Registern bekanntgeworden, das sowohl logische als auch arithmetische
Grundoperationen durchführen kann, indem es von im Speicher einer Rechenmaschine enthaltenen Mikrooperationen
gesteuert wird. Dieses Parallelrechenwerk besteht aus drei Registern, die aus bistabilen
Kippschaltungen bestehen, die miteinander durch UND- bzw. ODER-Schaltungen verbunden sind und
durch anliegende Operations- und Taktsignale gesteuert werden. Diese Schaltungsanordnung hat jedoch
den Nachteil, daß die Überträge, die bei der Addition bzw. bei der Subtraktion zweier Zahlen gegebenenfalls
entstehen, nacheinander verarbeitet werden, so daß gegebenenfalls «-Taktsignale zur Addition
zweier «-stelliger Zahlen benötigt werden.
Außerdem ist durch die britische Patentschrift 947 143 ein zweistufiges Rechenwerk bekanntgeworden,
das in der ersten Stufe Hilfsgrößen aus nur jeweils bestimmten benachbarten Binärstellen der einzelnen
Operanden bildet, aus denen dann das Endergebnis in relativ wenig Schritten erzeugt wird. Dies
wird insbesondere dadurch möglich, daß die Steuerleitungen nur die Funktion der zweiten Schaltstufe
beeinflussen, während in der ersten Schaltstufe immer nur Hilfsgrößen erzeugt werden, aus denen sich
sämtliche verfügbaren Funktionen der zweiten Schaltstufe ableiten lassen.
Ein derartiges zweistufiges Rechenwerk hat außer der Bildung der erforderlichen Hilfsgrößen für die
eigentlichen Operationen den wesentlichen Nachteil, daß die gesamte Ansteuerung an nur einer Stufe des
Rechenwerks vorgenommen werden kann, weshalb z.B. bei einer Austauschoperation auch nur in diesem
Register ein Ergebnis gebildet werden kann, währenddem der andere an der Austauschoperation
beteiligte Operand verlorengeht.
Der Erfindung liegt deshalb die Aufgabe zugrunde, eine Schaltungsanordnung zu schaffen, die mit einem
akkumulierenden Rechenwerk ohne Hilfsgrößen zur Durchführung von Additionen oder Subtraktionen
ausgestattet ist und die außerdem mit geringem technischem Aufwand und ohne Hilfsgrößen noch die
logischen Grundoperationen UND, ODER, Austausch, Linksverschiebung und Exklusiv-Oder durchführen
kann.
Die erfindungsgemäße Lösung der Aufgabe ist im Anspruch gekennzeichnet.
Durch die Kopplung bzw. Verbindung der informationsführenden Ein- bzw. Ausgänge der einzelnen
Kippstufen von nur zwei Registern ist es möglich, mit sehr geringem schaltungstechnischem Aufwand
die arithmetischen Operationen Addition und Subtraktion sowie die logischen Operationen Und, Oder,
Austausch, Linksverschiebung und Austausch mit. ein und derselben Schaltungsanordnung durchzuführen.
Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet. Ausführungsbeispiele der
Erfindung sind nachfolgend an Hand der Zeichnung näher erläutert. In den Zeichnungen bedeutet
Fig.l eine beispielsweise Schaltungsanordnung
zur Durchführung der parallelen Addition von zwei Binärzahlen, ...'■' ■'...'·■
F i g. 2 eine schaltungstechnisch vereinfachte Ausführung des Addierers nach Fig. 1,
F i g. 3 eine beispielsweise Schaltungsanordnung zur Durchführung der parallelen binären Subtraktion,
F i g. 4 eine Möglichkeit zur Realisierung der logischen
Und-Funktion mit der beispielsweisen Schaltung, ... ; - : : : . . .
F i g. 5 eine Möglichkeit zur Realisierung der logischen Oder-Funktion mit der beispielsweisen Schaltung,
F i g. 6 eine Schaltung zur Durchführung der logischen
Operation eines Vierteladdierers,
F i g. 7 eine Möglichkeit zur Realisierung des Vertauschens der beiden Registerinhalte,
F i g. 8 eine Schaltung, die die arithmetischen und logischen Operationen der in den F i g. 2 bis 7 dargestellten
Schaltung ausführt.
In einem parallelen binären Addierer, wie er in F i g. 1 gezeigt ist, befinden sich ein Register für
Augend und Summe, das aus mehreren individuellen y-Registerstufen 12 mit den Bezeichnungen Y1, Y2,
Y3.. .Yn besteht, und ein Register für Addend/Ubertrag,
das aus den X-Registerstufen 14 mit den Bezeichnungen X1, X2, X3.. .Xn besteht. Die X- und
Y-Register-Stufen sind über UND-Schaltungen 16 und ODER-Schaltungen 18 gemeinsam an die folgende
Stufe angeschlossen und außerdem innerhalb einer Stufe miteinander verbunden, um eine erforderliche
Torsteuerungsfunktion zu haben. Addiersignale werden jeder Stufe von einer Leitung 22 aus zugeführt,
und sie werden in jeder Stufe auf Wechselstrombasis, wie z. B. über Kondensatoren 23, an entsprechende
Toreingänge gekoppelt. Jedes der X- und Y-Register besteht z. B. aus Flipflops mit die binäre
1 und die binäre 0 darstellenden komplementären Ausgangssignalen, die aufrechterhalten werden, bis
durch ein entsprechendes Eingangssignal der Zustand der Registerstufe umgeschaltet wird. Jeder Toreingang
wird durch die ihm benachbarte Torsteuerleitung, wie z. B. die Leitung 24 mittels einer herkömmlichen
Torschaltung in einem individuellen Flipflop 12 oder 14 gesteuert. Die Signale vom 1-Ausgang
jeder AT-Registerstufe werden einer ODER-Schaltung 20 als Weiterschaltsperrsignal zugeführt, durch das
verhindert wird, daß das Datenverarbeitungsgerät zum nächsten Teilschritt in einem Programm weiterschaltet.
Das Weiterschaltsperrsignal bleibt bestehen, solange eine Af-Registerstufe 14 im binären 1-Zustand
ist.
Im Betriebszustand des in F i g. 1 gezeigten parallelen binären Addierers werden zwei Zahlen A in der
Form av a2, a3.. .an und B in der Form bv b2,
b3 ... bn in die Y- bzw. AT-Register durch bekannte,
nicht dargestellte Einrichtungen eingegeben. Für die Zwecke dieses Beispiels sei A der Augend und B der
Addend. Nach der Eingabe werden dem parallelen binären Addierer zyklische Addiersignale zugeführt.
Das erste Addiersignal veranlaßt die Umschaltung jedes Y-Flipflops 12, falls dessen entsprechendes X-Flipflop
14 eine 1 enthält, d. h. im binären 1-Zustand ist. Nun enthält das Y-Register das Teilresultat C1.
Gleichzeitig bewirkt das Addiersignal, daß die X-Flipflops 14 im Ein-Zustand bleiben oder in den binären
1-Zustand gebracht werden, falls die X- und Y-Flipflops der vorhergehenden Stufe im vorhergehenden
Umlauf beide im binären 1-Zustand gewesen sind. Es sei darauf hingewiesen, daß für die Registerstufe
X1, nämlich das Flipflop 14 in der Einerstelle,
X1 durch Wirksammachen des »Übertrag«-Signals ausgeschaltet wird (O-Zustand). Wenn eines der X-
und Y-Flipflops oder beide im Aus-Zustand waren, wird das nächsthöhere AT-Flipflop ausgeschaltet (geht
in den binären O-Zustand). Auf diese Weise werden die Überträge erzeugt und im JV-Register als Faktor
F1 gespeichert. Der Umlauf wird wiederholt, bis das AT-Register eine 0 (Fn) enthält; nun wird das Weiterschaltsperrsignal
aus der ODER-Schaltung 20 beendet, und daher kann das Verarbeitungsgerät seinen Betrieb fortsetzen. Es werden keine weiteren Addiersignale
empfangen, und die Summe der beiden Zahlen A und ß ist im Y-Register gespeichert. Diese
Operation läßt sich wie folgt zusammenfassen:
C1 Teilresultat
+F1 Übertrag von A und B
+F1 Übertrag von A und B
C2 Teilresultat Nr. 2
+F2 Übertrag von C1 + F1
C Teilresultat Nr. 3
+F2 Übertrag von C1 + F1
C Teilresultat Nr. 3
Cn Teilresultat Nr. η (wobei η die Nummer der
Operation bei F = 07)
Operation endet, wenn Fn = 0
Operation endet, wenn Fn = 0
as Jedes Teilergebnis C wird für die nachfolgende
Addieroperation im Y-Register gespeichert. Die Operation endet an einer beliebigen Stelle, wenn die :
Überträge gleich 0 sind; die Zahl der Umläufe in der ; Operation ist gewöhnlich kleiner als die Zahl der ver-;
wendeten Registerstufen und ist auf keinen Fall j größer als die Zahl der Stufen. Nachstehend wird ]
ein Beispiel gegeben, das die Addieroperation für zwei bestimmte binäre Zahlen zeigt (A = 0100111101
und B = 0000001001).
0100111101 A
+ 0000001001 B
0100110100 C1
+ 0000010010 F1
0100100110 C2
+ 0000100000 F2
0100000110 C3
+ 0001000000 F,
0101000110 C4 = Cn
0000000000 FA = F„
0000000000 FA = F„
Die Regeln der Operation für diese Schaltung von' Fig. 1 lauten wie folgt: falls Xn = 1, Umschaltung;
von Yn; falls Yn und Xn = 1, Einstellen von ATn + 1;
falls Yn oder ATn=O, Rückstellen von Xn + 1, und'
falls Xn = I, Erzeugen des Weiterschaltsperrsignalsi
Die F i g. 2 zeigt eine parallele binäre Addieran-j
Ordnung, die ebenso wie die von F i g. 1 betrieben wird, aber infolge der fehlenden UND- und ODER-!
Schaltungen 16 und 18 etwas einfacher im Aufbau ist. Die Wechselstromeingangssignale zu den Τοη
schaltungen der jeweiligen Registerstufen sind durcr.
die Pfeile 23' dargestellt. Es versteht sich jedoch, da£(
diese den Eingangssignalen 23 von F i g. 1 entsprej chen. Wie man sieht, wird das binäre 1-AusgangSj
signal der Y-Flipflops nicht benutzt. Statt dessei· werden die binären O-Ausgangssignale der Y-Flip,
flops zum Einstell-Wechselstromeingang des nächst höheren AT-Flipflops gekoppelt. Logisch zeigt dies ai
daß das Y-Flipflop aus dem binären 1- in den binäre 0-Zustand umschaltet und daher sowohl es selbst un
Jas ihm entsprechende ^-Flipflop im binären 1-Zu-,tand
gewesen sein müssen. Die binären O-Ausgangsjgnale der X- und Y-Flipfiops einer gegebenen Stufe
iienen zum Steuern getrennter Torschaltungen auf ler Rückstellseite eines nachfolgenden A^-Flipflops.
«Venn also entweder Xn oder Yn = O ist, wird das
Xn ^ ,-Flipflop durch das nachfolgende Addiersignal
auf 0 rückgestellt. Die Regel für den Betrieb der
schaltung von F i g. 2 lautet: wenn Yn von 1 auf 0
vechselt, ist An^1 in den 1-Zustand zu stellen. Die
Wirkungsweise der Schaltung nach F i g. 2 entspricht ler in Fig. 1 dargestellten und vorher beschriebenen
Anordnung.
Fig. 3 zeigt eine bestimmte Anordnung für einen
jarallelen binären Subtrahierer. Ein Vergleich von ::ig. 3 mit Fig. 2 läßt erkennen, daß die beiden
Schaltungen fast in jeder Hinsicht übereinstimmen, tbgesehen davon, daß das binäre 1-Ausgangssignal
ler Y-Flipflops zur Steuerung des folgenden Ä"-Fliplops
statt des binären O-Ausgangssignals benutzt vird. Das Subtrahiersignal wird über eine Leitung 32
'.ugeführt und entspricht dem Addiersignal auf der
.eitung 22 von F i g. 2. Eingangsborg- und Eingangsi^rg-Si.enale werden an
Stelle der Eingangsübertragind Eingangstibertrag-Signale von Fig. 2 angelegt.
\)ie Regel für den Betrieb der Schaltung von Fig. 3 autet: Wenn Yn von 0 auf 1 übergeht, ist X„ „, in den
; -Zustand zu schalten. Der einzige Unterschied zwichen dieser Aussage und der für den Betrieb der
Schaltung von Fig. 2 maßgebenden Regel besteht im Jmschalten von Y von 1 auf 0 anstatt von 0 auf 1.
•in besonderer Vorteil der Wirkungsweise des binäen
Subtrahierers von F i g. 3 besteht darin, daß es innötig ist, zum Zwecke der Subtraktion irgendein
Complement zu bilden. Die Subtrahieroperation wird oll und ganz durch die echte Teildifferenzsubtraktion
lusgeführt. Die Schaltung von Fig. 3 arbeitet entprechend
dem folgenden Beispiel, bei dem ange-•lommen wird, daß eine binäre Zahl (B = 00110)
on einer binären Zahl A (01101) zu subtrahieren ist.
A 01101
-B 00110
-B 00110
A1 01011
-B1 00100
-B1 00100
A2 01111
-B2 01000
-B2 01000
A3 00111
B3 00000
Teil-Differenz
Teil-Borger
Teil-Differenz
Teil-Borger
Teil-Differenz
Keine weiteren Borger
Operationsende
Zunächst ist die Zahl A im Y-Register und die
Zahl B im Ä'-Register durch in F i g. 3 nicht gezeigte einrichtungen eingegeben worden. Beim Betrieb des
subtrahierers von F i g. 3 wird jede Teildifferenz in ihrem entsprechenden Yn-Flipflop dadurch gebildet,
Jaß dessen Zustand umgeschaltet wird, wenn eine binäre
1 am Ausgang des entsprechenden Ä"„-Flipflops
vorliegt. Ein Borgwert wird in dem nachfolgenden ^n + j-Flipflop hergestellt, wenn ein gegebenes Yn-Flipflop
in den binären 1-Zustand gebracht wird.
Außer zur Subtraktion kann der binäre Subtrahie-'er
von F i g. 3 zur Ausführung der Funktion einer unären Linksverschiebung verwendet werden. Zu diesem
Zweck wird die zu verschiebende Zahl durch in :"" i g. 3 nicht gezeigte Mittel in das Ä'-Register einge-
geben, und das Y-Register wird auf 0 gestellt. Am Ende des ersten Subtrahierumlaufs erscheint nun die
ursprüngliche Zahl im Ä'-Register, jedoch um eine Stelle nach links verschoben. Als Beispiel sei diese
Operation für die Verschiebung der binären Zahl 011010 dargestellt:
Zyklus 1
Zyklus 2
Zyklus 2
Y
X
X
000000
011010
011010
Y
X
X
011010
110100
110100
Die Zahl im Ä'-Register im Umlauf 1 erscheint also
im Ä'-Register im Umlauf 2, um eine Stelle nach links verschoben.
F i g. 4 veranschaulicht eine Anordnung von X- und Y-Registerstufen, die als logische Schaltung zur
Ausführung der UND-Funktion zwischen im X- bzw. im Y-Register gespeicherten Zahlen dient. Das UND-Ergebnis
steht dann im Y-Register, und die Operation wird gemäß der folgenden Tabelle ausgeführt:
Y
X
0 110
10 10
10 10
45
Y1 0 0 1 0
Aus Tabelle I ist zu ersehen, daß jedes Yp in einen binären 0-Zustand gebracht werden
muß, ausgenommen, wenn das entsprechende Xn-Flipflop
eine binäre 1 enthält. Gemäß Fig. 4 wird das binäre 1-AusgangssignaI des Ä'n-Flipflops 14 zur
Steuerung des Rückstelleingangssignals von Xn und
das binäre O-Ausgangssignal des AVFlipflops 14 zur
Steuerung des Rückstelleingangssignals des entsprechenden Yn-Flipflops 12 verwendet. Ein zugeführtes
UND-Signal auf einer Leitung 42 wird dann entsprechend den beschriebenen Verbindungen in jede
X- und Y-Flipflopstufe eingespeist.
F i g. 5 stellt eine bestimmte Anordnung von Y-Registerstufen 12 und AT-Registerstufen 14 dar, die so
miteinander verbunden sind, daß sie eine logische ODER-Funktion zwischen entsprechenden Stellen
der X- und Y-Register ausführen. Das ODER-Ergebnis steht dann im Y-Register und wird entsprechend
der folgenden Tabelle gebildet:
Tabelle | 1 | II | 0 | |
Y | 0 | 0 | 1 | 0 |
X | 1 | 1 | ||
YlIlO
Aus Fig. 5 geht hervor, daß das binäre 1-Ausgangssignal
des Ä"„-Flipflops 14 so verknüpft wird, daß es sowohl die Einstellung des entsprechenden Yn-Flipflops
12 als auch die Rückstellung des Ä'n-Flipflops 14 durch ein auf Leitung 52 zugeführtes ODER-Signal
bewirkt. Dadurch wird jeder binäre 1-Zustand in einem der X- und Y-Flipflops einer gegebenen
Stufe in dem Y-Flipflop der betreffenden Stufe angezeigt. Sowohl die UND- als auch die ODER-Funktion
treffen auf eine Operation innerhalb einer individuellen Register-Stufe zu und können gleichzeitig für
so viele Stufen, wie im X- und im Y-Register enthalten sind, ausgeführt werden.
F i g. 6 zeigt eine Anordnung von Y-Flipflops 12 und Äf-Flipflops 14 für die Ausführung der exklusi-
409586/105
ven ODER-Funktion bezüglich der in den jeweiligen Registern gespeicherten binären Zahlen. Diese Funktion
wird bezüglich jeder Stelle der X- und Y-Register gemäß der folgenden Tabelle ausgeführt:
0 110
10 10
10 10
Y 1 1 0 0
Exklusive ODER-Signale werden über eine Leitung 62 zugeführt. Die Y- und die AT-Stufen jeweils einer
Stelle sind so untereinander verbunden, daß der binäre 1-Zustand des A'-Flipflops 14 einen Zustandswechsel
des entsprechenden Y-Flipflops 12 und die Rückstellung des AT-Flipflops 14 bei Anliegen des exklusiven
ODER-Signals hervorruft. Wie man sieht, nutzt diese Schaltung bei ihrem Betrieb die gleichen
Funktionen wie bei der Addition und Subtraktion aus, jedoch ohne Übertrag oder Borger.
F i g. 7 zeigt eine Anordnung, bei der zwei Register zur Ausführung einer direkten Austauschfunktion
benutzt werden. Bei diesem Ausführungsbeispiel sind die Y-Flipflops 12 und die A'-Flipflops 14 paarweise
so miteinander verbunden, daß der Zustand jedes Flipflops auf das andere Flipflop eines Paars
beim Anlegen eines Austauschimpulses über eine Leitung 63 übertragen wird. In der dargestellten
Schaltung steuert jedes binäre 1-Ausgangssignal eines
Flipflops den Einstelleingang des anderen Flipflops in derselben Stufe, und jedes binäre O-Ausgangssignal
eines Flipflops steuert den Rückstelleingang des anderen Flipflops in der betreffenden Stufe. Auf einen
Austauschimpuls hin arbeitet die Schaltung entsprechend der nachstehenden Tabelle:
Tabelle IV | 0 | 1 | 1 | |
Y | 0 | 1 | 0 | 1 |
X | 0 | 1 | 0 | 1 |
Y | 0 | 0 | 1 | 1 |
X | 0 |
Das Ergebnis ist also ein zweiseitiger Austausch der jeweiligen gespeicherten binären Zustände innerhalb
jeder Stufe, und die Operation wird für alle vorgesehenen Registerstufen erweitert. Bei den bisher bekannten
Anordnungen zur Ausführung einer ebensolchen Funktion findet gewöhnlich nur eine Umstel
lung und kein Austausch von Zahlen statt. Das heißt bei den üblichen »Austausclu-Befehlen, wie z. B.
»stelle A nach B um«, ersetzt A zwar B, aber B ersetzt
nicht A, und es geht daher verloren. Im Gegensatz dazu sieht die vorliegende Anordnung einen
echten Austausch vor, bei dem A an die Stelle von B und B an die Stelle von A treten.
Fig. 8 stellt in Form einer Blockschaltung die
dritte und die vierte Stufe eines Teils einer zusammengesetzten Schaltung aus η Stufen dar, die aus den
in F i g. 2 bis 7 gezeigten Anordnungen zur Ausführung der Addier- und Subtrahier-Rechenoperationen
und der logischen Funktionen »Und«, »Oder«, »exklusives Oder«, »Linksverschiebung« und »Austausch«
für zwei binäre Zahlen besteht. Zur Vereinfachung der Darstellung sind die X- und Y-Flipflops
14 bzw. 12 in binäre 1- und binäre 0-Blöcke entsprechend Xn, Yn bzw. Xn, Yn aufgeteilt worden.
Abtastverstärker 72 sind über direkte Eingänge an die Xn- bzw. Y„-Stufen angekoppelt, um die X- bzw.
Y-Flipflops in binäre Zustände zu bringen, die den aus dem Speicher empfangenen binären Zahlen, die
zu verarbeiten sind, entsprechen. Mit Ausnahme der direkten Eingangssignale aus den Abtastverstärkern
72 stellt jedes durch einen Pfeil auf der linken Seite eines der Flipflopblöcke dargestellte Eingangssignal
ein durch den Zustand des über die unmittelbar über der dem Pfeil befindliche zugeordnete Leitung zugeführten
Signals gesteuertes Wechselstrom-Eingangssignal dar. Steuersignale werden von den zugeordneten
Steuerimpulstreibern geliefert, die bezeichnet sind als Treiber 74 für die Additionsimpulse, Treiber 75
für die Subtraktions- und Linksverschiebung-Steuerimpulse, Treiber 76 für die UND-Steuerimpulse, Treiber
77 für die ODER-Steuerimpulse, Treiber 78 für die Exklusiv-ODER-Steuerimpulse und Treiber 79
für die Austausch-Steuerimpulse. Durch eine angekoppelte Ausgabeschaltung werden die entsprechen-
ao den Zustände der verschiedenen Registerstufen angezeigt. Diese Ausgabeschaltung besteht aus einem
Treiber 82 für die Anzeige mit zugeordneter Lampe 83. Der Anzeigetreiber 82 empfängt das binäre 0-Ausgangssignal
des ihm zugeordneten Y-Flipflops 12
(d. h. Y), kehrt dieses Signal um, wodurch die Anzeigelampe 83 erregt und eine Anzeige des Zustandes
des Y-Registers ermöglicht wird. Außerdem ist eine ODER-Schaltung 20 vorgesehen, die ein Sperrsignal
für die Steuerimpulstreiber 74, 75 in der in F i g. 1 bis 3 angedeuteten Art und Weise liefert und ein
Weiterschalten verhindert.
Um die Wirkungsweise der Schaltung von F i g. 8 leichter verständlich zu machen, wird auf die F i g. 2
bis 7 zurückgegriffen, in denen die verschiedenen Funktionen Addition, Subtraktion, Oder, Exklusiv-Oder,
Und, Linksverschiebung und Austausch getrennt dargestellt sind. Die Schaltung von F i g. 8
wird entsprechend den verschiedenen Regeln wie folgt betrieben, um die gewünschten Funktionen zu
erreichen (wobei der eigentliche Schritt, der entsprechend der Regel ausgeführt wird, angegeben ist):
Addition
ATn = 1, binärer Wechsel von Yn (Teil-Summe)
Yn wechselt von 1 auf 0, stellt ATn+1 = 1
(Übertrag erzeugt und gespeichert)
Xn oder Yn = 0, stellt Xn + 1 = O
(Übertrags-Auslösung)
(Übertrag erzeugt und gespeichert)
Xn oder Yn = 0, stellt Xn + 1 = O
(Übertrags-Auslösung)
Subtraktion
Xn = 1, binärer Wechsel von Yn (Teil-Differenz)
Yn wechselt von 0 auf 1, stellt Xn+1 = I
(Borger erzeugt und gespeichert)
(Borger erzeugt und gespeichert)
y" = 1 }stellt Xn*1 = ° (Borger-Auslösung)
UND
ATn = 0, stellt Yn = 0 (UND entsteht)
Austausch
Austausch
ATn = 1, stellt Yn = 1 (AT zu Y)
ATn = 0, stellt Yn = 0 (X zu Y)
Yn = l,stelltATn = 1(Y zu X) Yn = 0, stellt Xn = 0 (Y zu X)
ATn = 0, stellt Yn = 0 (X zu Y)
Yn = l,stelltATn = 1(Y zu X) Yn = 0, stellt Xn = 0 (Y zu X)
ODER
ATn = 1, stellt Yn = 1 (ODER-Ergebnis
bei AT = 1) [
Exklusiv-Oder
Xn = 1, binärer Wechsel Yn (Exklusiv-Oder)
oder Yn =
Linksverschiebung
(Dies ist eine Subtraktion mit einem Borgerzyklus beginnend mit jedem Yn = 0)
Xn = 1, binärer Wechsel Yn (Teil-Differenz)
Yn Wechsel von 0 auf 1, stellt Xn + 1 = I (Borger)
Xn = 0, stellt Xn + , = 0 (löst Borger aus)
Weitere Linksverschiebungsfunktionen können erreicht werden, indem alle yn-Flipflops auf 0 gesetzt
werden und der Umlauf wiederholt wird. Auf die Linksverschiebungsfunktion kann auch die Aus-
tauschfunktion folgen, um in der üblichen Form die Zahl im Y-Register anzuzeigen. Die in F i g. 8 dargestellte
zusammengesetzte Schaltung stellt also eine wesentliche Vereinfachung der Schaltungsanordnung
im Gegensatz zu den speziellen Schaltungen dar, die im Bekannten zur Ausführung der verschiedenen beschriebenen
Funktionen verwendet worden sind. Wenn z. B. die zusammengesetzte Schaltung von F i g. 8 mit den in F i g. 2 bis 7 getrennt dargestellten
Spezialschaltungen verglichen wird, ist es offensichtlich, daß die einzigen zusätzlichen Einrichtungen gegenüber
den für eine Einzweckschaltung benötigten Registern und Anzeigevorrichtungen die zusätzlichen
Steuerimpulstreiber und die verschiedenen Verbindungen sind, durch die erreicht wird, daß die zusammengesetzte
Schaltung von F i g. 8 die oben beschriebene Mehrzweckfähigkeit erhält.
Hierzu 3 Blatt Zeichnungen
Claims (1)
- Patentanspruch:Schaltungsanordnung zur Durchführung der logischen Grundoperation Und, Oder, Exklusiv-Oder und Austausch sowie der arithmetischen Grundoperationen Addition und Subtraktion mit Hilfe eines ersten und eines zweiten Registers zur Aufnahme der zu verknüpfenden Operanden, Ergebnisse und gegebenenfalls Überträge, wobei die Register aus bistabilen Kippschaltungen, die jeweils eine Eingangstorschaltungs-Funktion aufweisen oder mit Und- bzw. Oder-Schaltungen miteinander gekoppelt sind und durch anliegende Takt- und Operationssignale sowie gespeicherte Operanden oder Zwischenergebnisse gesteuert werden, wobei die gegebenenfalls entstehenden Überträge bzw. Borger bei der Addition bzw. Subtraktion in einer Zehnerstelle durch logische Verknüpfung der Ausgangssignalc der Kippschaltungen des ersten Registers und der Kippschaltungen des zweiten Registers in einer Zehnerstclle auf die nächstfolgende Zchnerstelle beider Register gegeben werden, dadurch gekennzeichnet, daß die jeweiligen Operationssignale (Additions-, Subtraktions- oder Austausch-Signal) an die bistabilen Kippschaltungen beider Register (Af und Y) angelegt werden, daß der wahre Ausgang einer bistabilen Kippschaltung (x, bis Xn) des ersten Registers (Af) sowohl mit dem wahren als auch mit dem inversen Eingang der entsprechenden Kippschaltung (yt bis y„) des zweiten Registers (Y) verbunden ist, daß der inverse Ausgang der Kippstufen (x{ bis xn) des ersten Registers (X) mit den inversen Eingängen der jeweils entsprechenden Kippstufe (y, bis y„) des zweiten Registers (Y) bzw. der nachfolgenden Kippstufe (.v, bis Jtn) des ersten Registers verbunden ist und daß der wahre Ausgang der Kippschaltungen (V1 bis y„) des zweiten Registers (Y) mit dem wahren Eingang der entsprechenden Kippschaltung (X1 bis x„) des ersten Registers (Af) und mit beiden Eingängen der nachfolgenden Kippschaltungen des ersten Registers (X) verbunden ist, während der inverse Ausgang einer Kippschaltung (V1 bis .v„) des zweiten Registers (Y) mit den inversen Eingängen der entsprechenden Kippschaltungen bzw. der nachfolgenden Kippschaltung des ersten Registers (X) sowie deren wahren Eingang verbunden ist,daß bei der Addition ein Operand (z. B. Addend) und die entstehenden Übertragsignale im ersten Register (X) gespeichert sind, während im zweiten Register (Y) der zweite Operand (z. B. Augend) oder eine Teilsumme gespeichert ist, daß die binären Null-Signale der Kippschaltungen des zweiten Registers (Y) an den Eingang der nächsthöheren Kippschaltung des ersten Registers (X) gelangen und daß das Additionssignal auf zwei Eingänge der Kippschaltungen sowohl des ersten als auch des zweiten Registers (X, Y) gegeben wird, wobei die Teilresultats- und Übertragsverarbeitung in aufeinanderfolgenden Zyklen erfolgt,daß zur Subtraktion die binären Eins-Ausgangssignale der Kippschaltungen des zweiten Registers zum Eingang der jeweils nächsthöheren Kippschaltung des ersten Registers geführt werden, daß das Subtraktions-Operationssignal an beide Eingänge der Kippschaltungen sowohl des ersten als auch des zweiten Registers (X, Y) geführt ist und daß die Eins-Ausgangssignale der Kippschaltungen des ersten Registers (X) an die Eingänge der gleichwertigen Kippschaltung des zweiten Registers (Y) geführt sind, während die Null-Ausgänge der Kippschaltungen des ersten Registers (Af) an die Eingänge der nächstfolgenden Stufe des gleichen Registers geführt sind, und daß die Verarbeitung der entstehenden Borgerund Teildifferenzen zum Endresultat in mehreren Zyklen erfolgt,daß zur Und-Funktion jede Kippschaltung des zweiten Registers auf Null gestellt wird, wenn die mit ihr verbundene Kippschaltung des ersten Registers eine Eins enthält, daß das binäre Eins-Ausgangssignal der Kippschaltungen des ersten Registers zur Rückstellung auf den Eingang zurückgekoppelt und das binäre Null-Ausgangssignal auf den Rückstell-Eingang der entsprechenden Kippschaltung des zweiten Registers (Y) gegeben wird und daß das Und-Operationssignal jeweils an einen Eingang jeder Kippschaltung sowohl des ersten als auch des zweiten Registers (Af und Y) gegeben wird,daß zur Oder-Funktion das auf einer Leitung (52) angelegte Oder-Operationssignal mit den in den beiden Registern (Af und Y) befindlichen lo- j gischen Operanden so verknüpft wird, daß das ; Ergebnis in den Kippschaltungen des zweiten i Registers (Y) steht, wobei das binäre Eins-Ausgangssignal einer Kippschaltung des ersten Registers (X) bewirkt, daß die gegenüberliegende Kippschaltung des zweiten Registers (Y) auf Eins gestellt wird und die Kippschaltung, die das Ausgangssignal erzeugte, gelöscht wird,daß zur Exklusiv-Oder-Funktion das Exklusiv-Operationssignal an zwei Eingänge der Kippschaltungen des zweiten Registers (Y) und an einen Eingang der Kippschaltungen des ersten Registers (A') geführt ist, daß der binäre Eins-Zustand einer Kippschaltung des ersten Registers einen Zustandswechsel der entsprechenden Kippschaltung des zweiten Registers (Y) und die Rückstellung der Kippschaltung des ersten Registers (Af) bei Anliegen des Operationssignals erreicht, so daß am Ende der Operation das Ergebnis in den Kippschaltungen des zweiten Registers (Y) stehtdaß eine Austauschoperation durch Anliegen des Austausch-Operationssignals an zwei Eingängen sowohl der Kippschaltungen des ersten Registers (Af) als auch des zweiten Registers (Y) gesteuert wird, daß die Kippschaltungen einer Stelle bzw. Position der beiden Register (Af und Y) jedes binäre Eins-Ausgangssignal auf den Eingang der entsprechenden Kippschaltung geben und daß jedes binäre Null-Ausgangssignal die Rückstellung der anderen Kippschaltung steuert unddaß zur Durchführung der Linksverschiebung einer im ersten Register (Af) stehenden Binärzahl alle Kippschaltungen des zweiten Registers (Y) auf Null gestellt werden, wodurch die zu verschiebende Binärzahl nach jeweils zwei Subtraktionsumläufen in dem ersten Register (Af) um eine Stelle nach links verschoben steht.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US420568A US3417236A (en) | 1964-12-23 | 1964-12-23 | Parallel binary adder utilizing cyclic control signals |
Publications (3)
Publication Number | Publication Date |
---|---|
DE1499227A1 DE1499227A1 (de) | 1969-10-02 |
DE1499227B2 true DE1499227B2 (de) | 1975-02-06 |
DE1499227C3 DE1499227C3 (de) | 1975-09-18 |
Family
ID=23667003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1499227A Expired DE1499227C3 (de) | 1964-12-23 | 1965-12-11 | Schaltungsanordnung für arithmetische und logische Grundoperationen |
Country Status (8)
Country | Link |
---|---|
US (1) | US3417236A (de) |
BE (1) | BE672601A (de) |
CH (1) | CH439809A (de) |
DE (1) | DE1499227C3 (de) |
ES (1) | ES321002A1 (de) |
FR (1) | FR1464946A (de) |
GB (1) | GB1097085A (de) |
NL (1) | NL166558C (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3582902A (en) * | 1968-12-30 | 1971-06-01 | Honeywell Inc | Data processing system having auxiliary register storage |
NL6908710A (de) * | 1969-06-07 | 1970-12-09 | ||
US3631400A (en) * | 1969-06-30 | 1971-12-28 | Ibm | Data-processing system having logical storage data register |
US3811039A (en) * | 1973-02-05 | 1974-05-14 | Honeywell Inf Systems | Binary arithmetic, logical and shifter unit |
US4254471A (en) * | 1978-04-25 | 1981-03-03 | International Computers Limited | Binary adder circuit |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2936116A (en) * | 1952-11-12 | 1960-05-10 | Hnghes Aircraft Company | Electronic digital computer |
US3008639A (en) * | 1954-04-16 | 1961-11-14 | Ibm | Electronic accumulator in which the component trigger circuits are operated relatively continuously |
US3028088A (en) * | 1956-09-25 | 1962-04-03 | Ibm | Multipurpose logical operations |
US3056552A (en) * | 1959-01-28 | 1962-10-02 | Ibm | Asynchronous parallel adder deriving intermediate sums and carries by repeated additions and multiplications |
US3235718A (en) * | 1962-10-25 | 1966-02-15 | Burroughs Corp | Magnetic device for performing complex logic functions |
US3249747A (en) * | 1963-06-14 | 1966-05-03 | North American Aviation Inc | Carry assimilating system |
US3320410A (en) * | 1964-06-09 | 1967-05-16 | Sperry Rand Corp | Register including inter-stage multivibrator temporary storage |
-
1964
- 1964-12-23 US US420568A patent/US3417236A/en not_active Expired - Lifetime
-
1965
- 1965-11-11 GB GB47848/65A patent/GB1097085A/en not_active Expired
- 1965-11-19 BE BE672601D patent/BE672601A/xx unknown
- 1965-12-10 FR FR41659A patent/FR1464946A/fr not_active Expired
- 1965-12-11 DE DE1499227A patent/DE1499227C3/de not_active Expired
- 1965-12-20 NL NL6516539.A patent/NL166558C/xx not_active IP Right Cessation
- 1965-12-21 ES ES0321002A patent/ES321002A1/es not_active Expired
- 1965-12-23 CH CH1780265A patent/CH439809A/de unknown
Also Published As
Publication number | Publication date |
---|---|
DE1499227C3 (de) | 1975-09-18 |
ES321002A1 (es) | 1966-06-01 |
CH439809A (de) | 1967-07-15 |
GB1097085A (en) | 1967-12-29 |
US3417236A (en) | 1968-12-17 |
BE672601A (de) | 1966-03-16 |
NL166558B (nl) | 1981-03-16 |
NL6516539A (de) | 1966-06-24 |
FR1464946A (fr) | 1967-01-06 |
DE1499227A1 (de) | 1969-10-02 |
NL166558C (nl) | 1981-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2616717A1 (de) | Digitales addierwerk | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE2626432C2 (de) | Arithmetische Einheit für automatische Rechengeräte | |
DE2816711A1 (de) | Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau | |
DE2814078A1 (de) | Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags | |
DE2758130C2 (de) | Binärer und dezimaler Hochgeschwindigkeitsaddierer | |
DE2352686B2 (de) | Dezimaler Parallel-Addierer/Substrahierer | |
DE1549508C3 (de) | Anordnung zur Übertragsberechnung mit kurzer Signallaufzeit | |
DE3440680C2 (de) | ||
DE1499227C3 (de) | Schaltungsanordnung für arithmetische und logische Grundoperationen | |
DE3447634A1 (de) | Dividiervorrichtung | |
DE3424078A1 (de) | Dezimalmultiplikations-einrichtung | |
DE2203143C3 (de) | Rechenanordnung zum Dividieren von Dezimalzahlen | |
DE1524117B1 (de) | Datenverarbeitungsanlage mit Umlaufregistern | |
DE2000275A1 (de) | Elektronischer Walzenschalter | |
DE1184122B (de) | Addiervorrichtung | |
DE1774771B2 (de) | Anordnung, um wechselweise eine addition oder eine aus einer anzahl logischer funktionen zwischen den stellenwerten zweier binaerwoerter durchzufuehren | |
DE1549485C3 (de) | Anordnung zur Division binärer Operanden ohne Rückstellung des Restes | |
DE1549461C3 (de) | ||
DE1965830C3 (de) | Vorrichtung zur Eingabe einer Dezimalzahl mit wählbarer Kommastelle in eine Rechenmaschine | |
DE1094020B (de) | Periodisch arbeitende numerische Rechenmaschine | |
DE1524131C (de) | Binär-dezimales Serien-Serien-Rechenwerk mit Dezimalübertragkorrektor zur Addition und Subtraktion zweier binär-codierter Dezimalzahlen | |
DE1109422B (de) | Asynchrone binaere Additions- und Subtraktionseinrichtung | |
DE1524146C (de) | Divisionseinrichtung | |
DE2135607C2 (de) | Schaltungsanordnung zur Inkrementierung oder Dekrementierung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 | ||
8339 | Ceased/non-payment of the annual fee |