DE1499227C3 - Schaltungsanordnung für arithmetische und logische Grundoperationen - Google Patents

Schaltungsanordnung für arithmetische und logische Grundoperationen

Info

Publication number
DE1499227C3
DE1499227C3 DE1499227A DE1499227A DE1499227C3 DE 1499227 C3 DE1499227 C3 DE 1499227C3 DE 1499227 A DE1499227 A DE 1499227A DE 1499227 A DE1499227 A DE 1499227A DE 1499227 C3 DE1499227 C3 DE 1499227C3
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.)
Expired
Application number
DE1499227A
Other languages
English (en)
Other versions
DE1499227A1 (de
DE1499227B2 (de
Inventor
Brian George San Jose Calif. Utley (V.St.A.)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1499227A1 publication Critical patent/DE1499227A1/de
Publication of DE1499227B2 publication Critical patent/DE1499227B2/de
Application granted granted Critical
Publication of DE1499227C3 publication Critical patent/DE1499227C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • 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/57Arithmetic 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/575Basic 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

Description

Die Erfindung betrifft eine Schaltungsanordnung zur Durchführung logischer und arithmetischer Grundoperationen gemäß Oberbegriff des Anspruchs. Schaltungsanordnungen zur Durchführung der arithmetischen Grundoperationen Additionen bzw. Subtraktionen sind bekannt. In »Arithmetic Operations in Digital Computers« von R. K. Richards (D. von Nostrand Co., 1955), insbesondere auf den Seiten 106 bis 124 und nach F i g. 4 bis 17 sind aus zwei Registern bestehende akkumulierende Rechenwerke bekanntgeworden. Bei diesen akkumulierenden Rechenwerken wird die Summe bzw. Differenz in den Kippstufen gebildet. Hierbei befindet sich der erste Operand bereits im Akkumulator, und der zweite wird dazu addiert bzw. davon subtrahiert. Die dabei entstehenden Überträge müssen verzögert oder gespeichert und dem Akkumulator erneut zugeführt werden. Die Steuerung der Übertragung von den Übertragsspeichern in die Akkumulatorkippstufen erfolgt über UND-Schaltungen. Die Überträge werden dabei synchron nacheinander verarbeitet. Dies bedingt, daß eine lange Zeit für deren Verarbeitung zur Verfügung stehen muß. Es ist durch diese Veröffentlichung ferner bekannt, durch Umschaltung der Ausgänge der Akkumulatorkippstufen einen Akkumulator für die Subtraktion geeignet zu machen. In diesem Fall wird ein Übertrag dann weitergegeben, wenn eine Kippstufe von 0 auf L wechselt, anstatt von L auf 0, wie es bei der Addition der Fall ist. Die synchrone Verarbeitung der Überträge hat gewisse Nachteile, die durch die in der DT-AS 1190 707 bekanntgewordene Schaltungsanordnung zur asynchronen Verarbeitung der Überträge vermieden werden. Bei dieser Schaltungsanordnung werden die Kippstufen zur Zwischenspeicherung der Dualüberträge über bei Addition und Subtraktion verschieden gesteuerten UND-Schaltungen durch die bei den Umschaltvorgängen der Akkumulatorkippstufen entstehenden Schaltflanken so lange wiederholt eingeschaltet und durch den Synchrontaktimpuls ausgeschaltet, bis diese Dualüberträge in Form von den Kippstufen des Akkumulators schaltenden Ausschaltflanken der ersten Kippstufe in den Akkumulator übertragen worden sind. Diese Schaltungsanordnung ist ferner mit einer Korrektureinrichtung ausgestattet, die bei tetradisch verschlüsselten Dezimalzahlen die erforderlichen Korrekturen erledigt. Da es sich bei der vorliegenden Erfindung hauptsächlich um rein binäre Verknüpfungen handelt, wird auf die Korrekturvorrichtung nicht näher eingegangen. Wie gezeigt wurde, sind die bekanntgewordenen Schaltungen zwar zur Durchführung der arithmetischen Operationen Addition und Subtraktion geeignet, jedoch sind sie nicht zur Durchführung von logischen Operationen, wie Linksverschiebung, Austausch, UND- bzw. ODER-Funktion geeignet. Die Funktion von logischen Operationen mit von einem akkumulierenden Rechenwerk ausführen zu lassen, ist jedoch bei vielen elektronischen Rechenanlagen sehr zweckmäßig. Zum j Beispiel ist beim Adressenrechenwerk zur Adressenmodifikation nicht nur eine Addition oder Subtraktion notwendig, sondern es sind häufig auch logische Grundoperationen von dem genannten Typ erforderlich.
Weiterhin ist aus dem Taschenbuch der Nachrichtenverarbeitung (Steinbuch), Springer Verlag, 1962, S. 1107 bis 1112 ein Parallelrechenwerk mit miteinander 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 n-Taktsignale zur Addition zweier n-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
F i g. 1 eine beispielsweise Schaltungsanordnung zur Durchführung der parallelen Addition von zwei Binärzahlen,
Fig. 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/Übertrag, das aus den Af-Registerstufen 14 mit den Bezeichnungen X1, Af2, Af3 ... Afn 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 Flipfiops 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 Af-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. Af-Register durch bekannte, nicht dargestellte Einrichtungen eingegeben. Für die Zwecke dieses Beispiels sei A der Augend und JS 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 Af-Flipflop 14 eine 1 enthält, d. h. im binären 1-Zustand ist. Nun enthält das Y-Register das Teilresultat G1. Gleichzeitig bewirkt das Addiersignal, daß die X-Flipflopsl4 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 Af- und Y-Flipflops oder beide im Aus-Zustand waren, wird das nächsthöhere A"-Flipflop ausgeschaltet (geht in den binären O-Zustand). Auf diese Weise werden die Überträge erzeugt und im Af-Register als Faktor F1 gespeichert. Der Umlauf wird wiederholt, bis das Af-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 B ist im Y-Register gespeichert. Diese Operation läßt sich wie folgt zusammenfassen:
C1 Teilresultat
+F1 Übertrag von A und B
C2 Teilresultat Nr. 2
+F2 Übertrag von C1 + F1
C Teilresultat Nr. 3
Cn Teilresultat Nr. η (wobei η die Nummer der Operation bei F = 07)
Operation endet, wenn Fn-Q
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 verwendeten Registerstufen und ist auf keinen Fall 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 F,
0100000110
+ 0001000000
0101000110 C4 =
OOOOOOOOOO' F^ =
Die Regeln der Operation für diese Schaltung von F i g. 1 lauten wie folgt: falls Xn = 1, Umschaltung von Yn; falls Yn und ATn = 1, Einstellen von Afn+1;
falls Yn oder Ä"n=0, Rückstellen von Afn+1, und
falls Afn = 1, Erzeugen des Weiterschaltsperrsignals.
Die F i g. 2 zeigt eine parallele binäre Addieran-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 Torschaltungen der jeweiligen Registerstufen sind durch
die Pfeile 23' dargestellt. Es versteht sich jedoch, daß diese den Eingangssignalen 23 von F i g. 1 entsprechen. Wie man sieht, wird das binäre 1-Ausgangssignal der Y-Flipflops nicht benutzt. Statt dessen werden die binären O-Ausgangssignale der Y-FHpflops zum Einstell-Wechselstromeingang des nächst-, höheren Af-Flipfiops gekoppelt. Logisch zeigt dies an,: daß das Y-Flipflop aus dem binären 1- in den binären; 0-Zustand umschaltet und daher sowohl es selbst und
A 01101
-B 00110
A1 01011
-B1 00100
A2 01111
-B, 01000
Teil-Differenz
Teil-Borger
Teil-Differenz
Teil-Borger
das ihm entsprechende ΛΓ-Flipflop im binären 1-Zustand gewesen sein müssen. Die binären 0-Ausgangssignale der X- und Y-Flipflops einer gegebenen Stufe dienen zum Steuern getrennter Torschaltungen auf der Rückstellseite eines nachfolgenden AT-Flipflops. Wenn also entweder Xn oder Yn = O ist, wird das Xn + 1-FIiPfIOp 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 wechselt, ist Zn + 1 in den 1-Zustand zu stellen. Die Wirkungsweise der Schaltung nach F i g. 2 entspricht der in F i g. 1 dargestellten und vorher beschriebenen Anordnung.
F i g. 3 zeigt eine bestimmte Anordnung für einen parallelen binären Subtrahierer. Ein Vergleich von F i g. 3 mit F i g. 2 läßt erkennen, daß die beiden Schaltungen fast in jeder Hinsicht übereinstimmen, abgesehen davon, daß das binäre 1-Ausgangssignal der Y-Flipflops zur Steuerung des folgenden X-FHpflops statt des binären O-Ausgangssignals benutzt wird. Das Subtrahiersignal wird über eine Leitung 32 zugeführt und entspricht dem Addiersignal auf der Leitung 22 von F i g. 2. Eingangsborg- und Eingangsborg-Signale werden an Stelle der Eingangsübertrag- und Eingangsübertrag-Signale von F i g. 2 angelegt. Die Regel für den Betrieb der Schaltung von F i g. 3 lautet: Wenn Yn von 0 auf 1 übergeht, ist ATn + 1 in den 1-Zustand zu schalten. Der einzige Unterschied zwischen dieser Aussage und der für den Betrieb der Schaltung von F i g. 2 maßgebenden Regel besteht im Umschalten von Y von 1 auf 0 anstatt von 0 auf 1. Ein besonderer Vorteil der Wirkungsweise des binären Subtrahierers von F i g. 3 besteht darin, daß es unnötig ist, zum Zwecke der Subtraktion irgendein Komplement zu bilden. Die Subtrahieroperation wird voll und ganz durch die echte Teildifferenzsubtraktion ausgeführt. Die Schaltung von F i g. 3 arbeitet entsprechend dem folgenden Beispiel, bei dem angenommen wird, daß eine binäre Zahl (J5 = 00110) von einer binären Zahl A (01101) zu subtrahieren ist.
geben, und das Y-Register wird auf 0 gestellt. Am Ende des ersten Subtrahierumlaufs erscheint nun die ursprüngliche Zahl im A'-Register, jedoch um eine Stelle nach links verschoben. Als Beispiel sei diese 5 Operation für die Verschiebung der binären Zahl 011010 dargestellt:
A3 00111 Teil-Differenz
B3 00000 Keine weiteren Borger —
Operationsende
Zunächst ist die Zahl A im Y-Register und die Zahl B im AT-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 Y„-Flipflop dadurch gebildet, daß dessen Zustand umgeschaltet wird, wenn eine binäre 1 am Ausgang des entsprechenden AVFIipflops vorliegt. Ein Borgwert wird in dem nachfolgenden Xn + 1-FHpOOp hergestellt, wenn ein gegebenes Yn-Flipflop in den binären 1-Zustand gebracht wird.
Außer zur Subtraktion kann der binäre Subtrahierer von Fig. 3 zur Ausführung der Funktion einer binären Linksverschiebung verwendet werden. Zu diesem Zweck wird die zu verschiebende Zahl durch in F i g. 3 nicht gezeigte Mittel in das AT-Register einge-Zyklus 1
Zyklus 2
Y 000000
X 011010
Y
X
011010
110100
Die Zahl im A'-Register im Umlauf 1 erscheint also im AT-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:
Tabelle I
Y
X
0 110
10 10
Y1 0 0 1 0
Aus Tabelle I ist zu ersehen, daß jedes Yn-FHpflop in einen binären 0-Zustand gebracht werden muß, ausgenommen, wenn das entsprechende Xn-Flipflop eine binäre 1 enthält. Gemäß F i g. 4 wird das binäre 1-Ausgangssignal des AVFlipflops 14 zur Steuerung des Rückstelleingangssignals von Xn und das binäre O-Ausgangssignal des AVFIipflops 14 zur Steuerung des Rückstelleingangssignals des entsprechenden Y„-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 .Y-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-Rcgister und wird entsprechend der folgenden Tabelle gebildet:
Tabelle II 0
Y 0 1 1 0
X 1 0 1
YlIlO
Aus F i g. 5 geht hervor, daß das binäre 1-Ausgangssignal des AVFIipflops 14 so verknüpft wird, daß es sowohl die Einstellung des entsprechenden Yn-Flipflops 12 als auch die Rückstellung des ATn-FHpflops 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 AT-Flipflops 14 für die Ausführung der exklusi-
509 638/4
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:
Tabelle III
Y
X
0 11
10 1
0 0
Y 1 1 0 0
Exklusive ODER-Signale werden über eine Leitung 62 zugeführt. Die Y- und die A'-Stufen jeweils einer Stelle sind so untereinander verbunden, daß der binäre 1-Zustand des Jf-Flipflops 14 einen Zustandswechsel des entsprechenden Y-Flipfiops 12 und die Rückstellung des A'-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 Af-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-Ausgängssignal 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 0 IV 1
Y 0 1 1 1
X 0 1 0 1
Y 0 0 0 1
X 0 1
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 Umstellung und kein Austausch von Zahlen statt. Das heißt bei den üblichen »Austausche-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 S 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 O-Blöcke entsprechend ATn, 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, Treiber76 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 entsprechenden 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
Xn = 1, binärer Wechsel von Yn (Teil-Summe) Yn wechselt von 1 auf 0, stellt Xn+1 = I
(Übertrag erzeugt und gespeichert)
Xn oder Yn = 0, stellt ATn+1 = 0
(Übertrags-Auslösung)
Subtraktion
Xn = 1, binärer Wechsel von Yn (Teil-Differenz) Yn wechselt von 0 auf 1, stellt Xn+1 = 1
(Borger erzeugt und gespeichert)
γ" = 1 } stellt xn * 1 = 0 (Borger-Auslösung)
UND
Xn = 0, stellt Yn = 0 (UND entsteht)
Austausch
Xn = 1, stellt Yn = 1 (X zu Y)
Xn = 0, stellt Yn = 0 (Z zu Y)
Yn = 1, stellt Xn = 1 (Y 7XL.X)
Yn = 0, stellt Xn = 0 (Y zu X)
ODER
Xn = 1, stellt Yn=I (ODER-Ergebnis bei AT=I)
Exklusiv-Oder
Xn = 1, binärer Wechsel Yn (Exklusiv-Oder) Zn oder Yn = O stelltA-n+i = 0
ti J
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+1 = Q (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 Verbindüngen 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)

  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 Ausgangssignale der Kippschaltungen des ersten Registers und der Kippschaltungen des zweiten Registers in einer Zehnerstelle auf die nächstfolgende Zehnerstelle beider Register gegeben werden, dadurch gekennzeichnet, daß die jeweiligen Operationssignale (Additions-, Subtraktions- oder Austausch-Signal) an die bistabilen Kippschaltungen beider Register (Α' und Y) angelegt werden, daß der wahre Ausgang einer bistabilen Kippschaltung (X1 bis x„) des ersten Registers (X) sowohl mit dem wahren als auch mit dem inversen Eingang der entsprechenden Kippschaltung (V1 bis y„) des zweiten Registers (Y) verbunden ist, daß der inverse Ausgang der Kippstufen (X1 bis Xn) des ersten Registers (X) mit den inversen Eingängen der jeweils entsprechenden Kippstufe (V1 bis y„) des zweiten Registers (Y) bzw. der nachfolgenden Kippstufe (^1 bis *„) 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 Xn) des ersten Registers (X) und mit beiden Eingängen der nachfolgenden 'Kippschaltungen des ersten Registers (X) verbunden ist, während der inverse Ausgang einer Kippschaltung (V1 bis y„) 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 de§ 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 (X) 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 (X und Y) gegeben wird,
    daß zur Oder-Funktion das auf einer Leitung (52) angelegte Oder-Operationssignal mit den in den beiden Registern (X und Y) befindlichen logischen Operanden so verknüpft wird, daß das Ergebnis in den Kippschaltungen des zweiten 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 (X) 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 (X) bei Anliegen des Operationssignals erreicht, so daß am Ende der Operation das Ergebnis in den Kippschaltungen des zweiten Registers (Y) steht,
    daß eine Austauschoperation durch Anliegen des Austausch-Operationssignals an zwei Eingängen sowohl der Kippschaltungen des ersten Registers (X) als auch des zweiten Registers (Y) gesteuert wird, daß die Kippschaltungen einer Stelle bzw. Position der beiden Register (X und Y) jedes binäre Eins-Ausgangssignal auf den Eingang dei entsprechenden Kippschaltung geben und daf jedes binäre Null-Ausgangssignal die Rückstellung der anderen Kippschaltung steuert und
    daß zur Durchführung der Linksverschiebunj einer im ersten Register (X) stehenden Binärzah alle Kippschaltungen des zweiten Registers (Y. auf Null gestellt werden, wodurch die zu ver schiebende Binärzahl nach jeweils zwei Subtrak tionsumläufen in dem ersten Register (X) um eini Stelle nach links verschoben steht.
DE1499227A 1964-12-23 1965-12-11 Schaltungsanordnung für arithmetische und logische Grundoperationen Expired DE1499227C3 (de)

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 DE1499227B2 (de) 1975-02-06
DE1499227C3 true 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)

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

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

Also Published As

Publication number Publication date
NL166558B (nl) 1981-03-16
DE1499227A1 (de) 1969-10-02
ES321002A1 (es) 1966-06-01
BE672601A (de) 1966-03-16
US3417236A (en) 1968-12-17
FR1464946A (fr) 1967-01-06
DE1499227B2 (de) 1975-02-06
NL166558C (nl) 1981-08-17
GB1097085A (en) 1967-12-29
NL6516539A (de) 1966-06-24
CH439809A (de) 1967-07-15

Similar Documents

Publication Publication Date Title
DE1237363B (de) Arithmetisch-Logische-Einheit
DE2911096C2 (de)
DE2814078A1 (de) Addierschaltung mit zeitweiliger zwischenspeicherung des uebertrags
DE2816711A1 (de) Divisionseinrichtung mit uebertrags- rettungsaddierwerk und nicht ausfuehrender vorausschau
DE1549478B1 (de) Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binaerer Operanden
DE1549508C3 (de) Anordnung zur Übertragsberechnung mit kurzer Signallaufzeit
DE2352686B2 (de) Dezimaler Parallel-Addierer/Substrahierer
DE1499227C3 (de) Schaltungsanordnung für arithmetische und logische Grundoperationen
DE1774675A1 (de) Elektronisches Rechengeraet
DE1524117B1 (de) Datenverarbeitungsanlage mit Umlaufregistern
DE2000275A1 (de) Elektronischer Walzenschalter
DE1774771B2 (de) Anordnung, um wechselweise eine addition oder eine aus einer anzahl logischer funktionen zwischen den stellenwerten zweier binaerwoerter durchzufuehren
DE1241159B (de) UEbertragschaltung fuer ein Schnelladdierwerk
DE2017132A1 (de) Binarer Parallel Addierer
DE1549461C3 (de)
DE1549485C3 (de) Anordnung zur Division binärer Operanden ohne Rückstellung des Restes
DE1094020B (de) Periodisch arbeitende numerische Rechenmaschine
DE2060590A1 (de) Digitalrechner
DE1524131C (de) Binär-dezimales Serien-Serien-Rechenwerk mit Dezimalübertragkorrektor zur Addition und Subtraktion zweier binär-codierter Dezimalzahlen
DE1911175A1 (de) Chiffriereinrichtung
DE1524146C (de) Divisionseinrichtung
DE1774825A1 (de) Rechenregister
DE1774301C3 (de) Binäres Rechenelement
DE1239506B (de) Divisionseinrichtung
DE1549483A1 (de) Schaltungsanordnung zur Durchfuehrung logischer und arithmetischer Grundoperationen

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