DE1296427B - Datenbearbeitungssystem - Google Patents

Datenbearbeitungssystem

Info

Publication number
DE1296427B
DE1296427B DEW40048A DEW0040048A DE1296427B DE 1296427 B DE1296427 B DE 1296427B DE W40048 A DEW40048 A DE W40048A DE W0040048 A DEW0040048 A DE W0040048A DE 1296427 B DE1296427 B DE 1296427B
Authority
DE
Germany
Prior art keywords
gate
bits
gates
command
register
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.)
Pending
Application number
DEW40048A
Other languages
English (en)
Inventor
Ulrich Werner
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.)
AT&T Corp
Original Assignee
Western Electric Co Inc
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 Western Electric Co Inc filed Critical Western Electric Co Inc
Publication of DE1296427B publication Critical patent/DE1296427B/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30018Bit or string instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • G06F9/30038Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Complex Calculations (AREA)
  • Executing Machine-Instructions (AREA)
  • Bus Control (AREA)

Description

1 2
Die Erfindung betrifft ein Datenbearbeitungssystem bung in Verbindung mit den Zeichnungen. Es und im einzelnen eine Anordnung zur Vergrößerung zeigen
der Datenbearbeitungskapazität solcher Systeme. Fig. 1 und 2 in aneinandergelegter Form eine
Ein häufig benutzter Datenbearbeitungsvorgang ist schematische Darstellung eines erfindungsgemäßen das Maskieren, bei dem gewählte Bits eines gegebe- 5 Ausführungsbeispiels für eine Datenbearbeitungsnen Datenwortes dadurch ausgespart werden, daß anlage,
das Datenwort mit einem anderen, Maskierwort Fig. 3 eine ins einzelne gehende schematische
genannten Datenwort logisch kombiniert wird. Die Darstellung eines Ausführungsbeispiels einer Schal-Wirkung des Maskierens besteht darin, daß die Über- tung, die den Übersetzer 44 nach Fig. 2 bilden tragung gewählter Bits eines Wortes von einem Teil io kann,
des Systems zu einem anderen gesperrt wird. Fig. 4 eine Tabelle, welche die Codierung ver-
In bekannter Weise ist bisher bei einem Maskier- schiedener Befehle bei dem erfindungsgemäßen Ausvorgang ein Maskierwort zu einem Maskierregister führungsbeispiel angibt.
übertragen worden, und anschließend wurde das ge- In Fig. 1 und 2 ist ein Ausführungsbeispiel der
wählte Datenwort unter Verwendung des Maskier- 15 Erfindung bei einer Datenbearbeitungsanlage in verwortes durch die Maskierschaltung gegeben. Die einfachter Form dargestellt. Es sind also verschie-Maskierschalrung hat dabei die Aufgabe, das zu mas- dene, bereits bekannte Elemente einer Datenbearkierende Datenwort mit einem Maskierwort logisch beitungsanlage, die für das Verständnis der Erfindung zu kombinieren. In Datenbearbeitungssystemen, nicht erforderlich sind, beispielsweise Zeitgeberschalweiche durch Folgen von Programmbefehlsworten 20 tungen, weggelassen worden. Da weiterhin eine Angesteuert werden, ist es wünschenswert, eine Maskier- zahl der dargestellten Blockschaltungen bekannte möglichkeit für eine Vielzahl unterschiedlicher Be- Operationen ausführen, wurden die Einzelheiten diefehle bereitzustellen. Beispielsweise kann ein Befehl, ser Schaltungen nicht angegeben, der angibt, daß ein Wort in einem Speicher zu einem Zunächst soll unter Bezugnahme auf die Fig. 1
Register zu übertragen ist, einen Maskierwunsch ent- 25 die Betriebsweise der Datenbearbeitungsanlage unter halten. In diesem Fall durchläuft das Wort auf sei- Verwendung normaler Befehle und dann unter Vernem Weg zu dem Register die Maskierschaltung. wendung der abgekürzten Maskierbefehle nach der Analog kann ein Befehl, der die Übertragung eines Erfindung beschrieben werden. Wortes aus einem Register zu einem anderen be- Bei dem Ausführungsbeispiel der Erfindung nach
stimmt, den Maskierwunsch enthalten. In diesem Fall 30 F i g. 1 und 2 beträgt die Länge aller Datenworte und wird das Wort maskiert, bevor es in das Empfangs- aller Befehlsworte 23 Bits. Die Datenworte und Beregister eingeschrieben wird. fehlsworte sind im Speicher 10 gespeichert. Der Spei-
In jedem Fall muß das Maskierwort zur Verfü- eher weist 216 Wortstellen auf. Folglich wird ein begung stehen, wenn der den Maskiersonderwunsch stimmtes Wort durch eine Adresse mit 16 Bits idenenthaltende Befehl ausgeführt werden soll. Es ist 35 tifiziert. Die Anlage enthält drei Adressierschaltundaher nach dem Stand derTechnik bisher erforderlich gen, nämlich die Befehlsleseschaltung 11, die Datengewesen, immer dann aufeinanderfolgende Befehle leseschaltung 12 und die Schreibadressenschaltung bereitzustellen, wenn ein Maskiersonderwunsch in 13. Wenn eine Adresse auf dem Kabel 14 zu der die beiden Befehle aufzunehmen ist. Der erste Befehl Befehlsleseschaltung gegeben wird, wird das Wort in überträgt das Maskierwort aus dem Speicher zum 40 der entsprechenden Stelle des Speichers über das Maskierregister. Der zweite Befehl kann dann den Kabel 15 zum Befehlsregister 16 übertragen. Wenn Maskiersonderwunsch enthalten, weil sich das Mas- eine Adresse auf dem Kabel 17 zur Datenleseschalkierwort bereits im Maskierregister befindet. tung 12 gegeben wird, wird das Wort in der entspre-
Die Erfindung hat sich die Aufgabe gestellt, eine chenden Speicherstelle vom Speicher über das Kabel Datenbearbeitungsanordnung zu schaffen, bei der ein 45 18 zur Maskierschaltung 19 übertragen. Wenn eine Maskierwunsch für eine Vielzahl von Befehlsworten Adresse auf dem Kabel 20 zur Schreibadressenschaldurchgeführt werden kann, ohne daß vorher ein Be- tung 13 gegeben wird, wird das Wort auf der Schreibfehl zur Gewinnung des Maskierwortes ausgeführt Sammelleitung 9 in die entsprechende Speicherstelle werden muß. im Speicher 10 eingeschrieben.
Die Erfindung geht dazu aus von einem Daten- 50 Ein im Befehlsregister 16 erscheinendes Befehlsbearbeitungssystem mit einem Speichermedium, das wort wird im Dekodierer-Verteiler 30 dekodiert. Der Folgen von Befehlsworten und Daten enthält, wobei Dekodierer-Verteiler legt bei allen Befehlen die Bits jedes Befehlswort einen Operationsabschnitt und 15 bis 0 an das Kabel 31. Diese Bits bilden die Koneinen konstanten Abschnitt aufweist, und mit einer stante in jedem Befehlswort. Die Anlage enthält eine Steueranordnung, die auf jedes Befehlswort anspricht 55 Gruppe von Befehlskabeln, nämlich RD (Lesen), und dem Speichermedium entnommene Datenworte WRT (Schreiben), XFR (Übertragen) und RTR (Rebearbeitet. Die Erfindung ist dadurch gekennzeichnet, gister-zu-Register), die jeweils durch eine strichpunkdaß ein Übersetzer, der auf eine Gruppe von Bits im tierte Linie dargestellt sind. Der Dekodierer-Verteiler konstanten Abschnitt eines Befehlswortes anspricht, gibt entsprechend der in Fig. 4 gezeigten Befehlsein Maskierwort ableitet und das abgeleitete Maskier- 60 kodierung verschiedene Bits an eines dieser vier Bewort in ein Maskierregister eingibt und eine Maskier- fehlskabel. Die oberen sechs Zeilen in Fi g. 4 stellen schaltung auf gewählte Befehlsworte anspricht und die normalen Befehle dar, die in der Anlage ausgeden Inhalt des Maskierregisters mit einem gewählten führt werden können. Die Bits 22 bis 16 bezeichnen Wort logisch kombiniert, dessen Speicherstelle durch den Befehl und die verschiedenen Register, die bei weitere Bits im konstanten Abschnitt des Befehls- 65 seiner Ausführung verwendet werden sollen. Der Bewortes definiert ist. fehl selbst wird entweder durch die Bits 22 und 21
Ein besseres Verhältnis der Erfindung ergibt sich oder die Bits 22 bis 20 bestimmt. Die Bits, welche aus der folgenden ins einzelne gehenden Beschrei- den bestimmten Typ des auszuführenden Befehls fest-
legen, sind in F i g. 4 durch starke Striche eingerahmt. Ein Lesebefehl wird also durch den Kode 00 in den Bits 22 und 21 bestimmt. Ein Schreibbefehl wird durch die Bits 010 in den Bitstellen 22 bis 20 dargestellt, und ein Übertragungsbefehl durch die Bits 011 in den Positionen 22-20. Schließlich wird ein Register-zu-Register-Befehl ausgeführt, wenn die Kombination 10 in den Positionen 22 und 21 erscheint. Es wird jeweils immer nur eines der vier Befehlskabel zu einem bestimmten Zeitpunkt erregt, und zwar in Abhängigkeit von dem auszuführenden Befehl.
Die in F i g. 1 und 2 in Klammern angegebenen Zahlen stellen die Bits dar, deren Werte über die Befehlskabel übertragen werden. Bestimmten Kabeln in F i g. 1 und 2, die keine Befehlskabel sind, sind ebenfalls in Klammern gestellte Zahlen zugeordnet. Diese Zahlen bezeichnen auf entsprechende Weise die Bits, die über diese Kabel übertragen werden. Beispielsweise werden die Bits 15 bis 0 der 23 Bits im Index-Addierer 32 über das Kabel 33 zur Datenleseschaltung 12 und zur Schreibadressenschaltung 13 übertragen.
Einige Zweige der Befehlskabel sind mit verschiedenen Blockschaltungen verbunden, für deren Betrieb keine bestimmten Bits erforderlich sind. Beispielsweise ist das Befehlskabel RD mit der Datenleseschaltung 12 verbunden, ohne daß eines der Bits 20 bis 16, die auf diesem Kabel erscheinen, zur Datenleseschaltung übertragen wird. Der Grund dafür besteht darin, daß bei der Ausführung eines Lesebefehls (RD) die Datenleseschaltung in Tätigkeit treten muß. Sie arbeitet jedoch, ohne daß bestimmte Bits in dem Befehl erforderlich sind. Wenn daher ein Lesebefehl ausgeführt wird, sind die Datenleseschaltung 12 und der Index-Addierer 32 in Tätigkeit, da sie durch das Befehlskabel RD erregt wurden. Wie in F i g. 1 gezeigt, werden die fünf auf dem Befehlskabel erscheinenden Bits zur Maskierschaltung 19, dem Registerleser 34 und dem Registerwähler 35 gegeben. Diese drei Einheiten benötigen für ihre richtige Funktion zusätzlich zu einem Erregungssignal bestimmte Bit-Werte.
Bevor die vier Befehle, die ausgeführt werden können, besprochen werden, sollen einige Bemerkungen bezüglich der individuellen Einheiten der Anlage vorangestellt werden. Das bestimmte Befehlswort, das in das Befehlsregister 16 eingegeben wird, wird gesteuert von dem Programmadressenregister 36. Dieses Register enthält 16 Positionen. Das Programmadressenregister legt nacheinander Adressen mit 16 Bits an das Kabel 14, das an die Befehlsleseschaltung 11 angeschaltet ist. Die Befehlsworte in den entsprechenden Speicherstellen im Speicher 10 werden nacheinander über das Kabel 15 zum Befehlsregister 16 übertragen. Die Adresse im Programmadressenregister 36 wird nach jedem Befehl durch die Inkrement-Schaltung 67 erhöht. Die zum Befehlsregister 16 übertragenen Befehlsworte werden normalerweise aus nacheinander adressierten Speicherstellen gewonnen. Es besteht jedoch die Möglichkeit, auf ein Befehlswort überzugehen, das nicht in der Folge liegt. Wenn ein Wort mit 16 Bits auf dem Kabel 37 erscheint und das Befehlskabel XFR das Programmadressenregister erregt, wird das Wort mit 16 Bits auf dem Kabel 37 im Programmadressenregister gespeichert. Diese Adresse wird dann über das Kabel 14 zur Befehlsleseschaltung 11 übertragen, und dann wird diese Adresse im Programmadressenregister zur Gewinnung der Adressen nachfolgender Befehle erhöht.
Der Registerleser 34 wird bei allen vier Befehlen erregt und liest das Wort mit 23 Bits ab, das in einem der Register A, B und C gespeichert ist. Die Bits 22 bis 0 werden über das Kabel 21 zum Index-Addierer 32 und über die Schreibsammelleitung 9 zum Speicher 10 übertragen. Wenn eine Adresse über das Kabel 20 zur Schreibadressenschaltung 13 übertragen worden
ίο ist, wird das Wort mit 23 Bits auf der Schreibsammelleitung in den Speicher eingeschrieben. Wenn statt dessen der Index-Addierer 32 erregt ist, wird das Wort mit 23 Bits im Index-Addierer zu den 16 Bits in der konstanten des auf dem Kabel 31 erscheinenden Befehls addiert. Die volle Summe von 23 Bits, die durch den Index-Addierer abgeleitet wird, wird an das Kabel 38 gegeben, wenn der Index-Addierer durch eines der vier Befehlskabel erregt wird, wie weiter unten beschrieben wird. Wenn der Index-Addierer von einem der drei anderen Befehlskabel statt durch das an das Kabel 38 gegebene Wort mit vollen 23 Bits, werden nur seine ersten 16 Bits an das Kabel 33 angelegt.
Ein Wort mit 23 Bits wird über das Kabel 18 oder 38 der Maskierschaltung 19 zugeführt. Wenn bei einem Lesebefehl (RD) oder Register-zu-Register-Befehl (RTR) das Bit 20 eine 1 ist, wird das an die Maskierschaltung gegebene Wort mit 23 Bits durch das im Maskierregister 39 enthaltene Maskierwort maskiert. Das sich ergebende maskierte Wort erscheint auf dem Kabel 40 und wird an den Registerwähler 35 gegeben. Für das Kabel 40 ist zwar angegeben, daß es 23 Bits führt, aber diese Angabe ist als Maximalwert anzusehen, da, wenn die Maske weniger als 23 1-Werte enthält, weniger als 23 Bits zum Registerwähler übertragen werden. Wenn das Bit 20 in dem ausgeführten Befehl eine 0 ist und damit angegeben wird, daß eine Maskierung nicht erforderlich ist, wird das Wort mit 23 Bits auf dem Kabel 18 oder 38 direkt durch die Maskierschaltung zum Registerwähler übertragen. Der Registerwähler gibt das Wort auf dem Kabel 40 in Abhängigkeit vom Wert der Bits 17 und 16 auf dem Lesebefehlskabel oder dem Register-zu-Register-Befehlskabel entweder zu dem Maskierregister oder einem der Register Λ, B und C. Die Betriebsweise der Datenbearbeitungsanlage nach den F i g. 1 und 2 läßt sich am besten durch eine getrennte Betrachtung jeder der vier möglichen Befehle verstehen. Wie in F i g. 5 gezeigt, wird ein Lesebefehl angegeben, wenn die Bits 22 und 21 beide 0 sind. Das ist symbolisch durch die Angaben 22, ZI im Dekodierer-Verteiler 30 dargestellt. Wenn beide Bits 22 und 21 0 sind, haben ZZ und 21 beide den Wert 1, und das Befehlskabel RD wird erregt. Die Bits 20 bis 16 werden über das Befehlskabel zu den verschiedenen Einheiten übertragen, die sie benötigen. Das Bit 20 wird zur Maskierschaltung 19 gegeben und steuert, wie in F i g. 4 gezeigt, die Maskieroperation nur dann, wenn es eine 1 ist. Die Bits 19 und 18 werden zum Registerleser 34 gegeben. Diese beiden Bits bezeichnen eines von vier Registern, nämlich das Maskierregister oder die Register Λ, Β oder C. Es ist keine Verbindung vom Maskierregister zum Registerleser vorhanden, so daß, wenn das Maskierregister durch die Bits 19 und 18 bestimmt wird, der Registerleser nicht arbeitet. Wenn eines der Register^, B oder C angegeben wird, wird sein Inhalt über das Kabel 21 zum Index-Addierer 32 ge-
geben. Der Index-Addierer wird durch das Befehlskabel RD erregt und addiert das Wort mit 23 Bits von dem angegebenen Register zu den konstanten mit 16 Bits in dem Befehlswort, das bei allen Befehlen auf dem Kabel 31 erscheint. Während dieses »Indexe-Schrittes wird auf diese Weise eine Summe mit 23 Bits im Index-Addierer abgeleitet. Es werden jedoch nur die ersten 16 Bits dieser Summe vom Index-Addierer zum Kabel 33 gegeben. Wenn der Index-Addierer durch das Lesebefehlskabel erregt wird, gibt er seinen Inhalt nicht zur Maskierschaltung über das Kabel 38.
Das Wort mit 16 Bits auf den Kabeln 33 und 37 hat keinen Einfluß auf das Programmadressenregister 36, da diese Einheit nicht erregt ist, wenn ein Lesebefehl ausgeführt wird. Das gleiche Wort mit 16 Bits hat auch keinen Einfluß auf die Schreibadressenschaltung 13, weil diese Einheit bei der Ausführung eines Lesebefehls ebenfalls nicht erregt ist. Die Datenleseschaltung 12 wird jedoch durch das Lesebefehlskabel erregt. Sie steuert das Ablesen des Wortes aus der Speicherstelle im Speicher 10, die durch die Adresse mit 16 Bits auf den Kabeln 33 und 17 dargestellt wird, sowie die Übertragung des Wortes über das Kabel 18 zur Maskierschaltung. Wenn das Bit 20 eine 1 ist, wird das Wort durch den Inhalt des Maskierregisters 39 maskiert, und das sich ergebende maskierte Wort erscheint auf dem Kabel 40. Wenn das Bit 20 auf dem Lesebefehlskabel eine 0 ist, wird das Wort nicht maskiert, und das gesamte Wort in der angegebenen Adresse erscheint auf dem Kabel 40. Der Registerwähler 35 gibt das Wort dann entweder zum Maskierregister oder einem der Register A, B oder C. Welches dieser vier Register gewählt wird, hängt vom Wert der Bits 17 und 16 ab, die über das Lesebefehlskabel zum Registerwähler übertragen werden.
Man beachte, daß in F i g. 4 die Bits 19 und 18 in dem Befehlswort ein »Index-Register« bezeichnen. Diese Bits bezeichnen tatsächlich die Register^!, B oder C oder das Maskierregister, wenn der Registerleser nicht arbeiten soll. Die Bezeichnung »Index-Register« wird benutzt, weil der Inhalt des angegebenen Registers zum Index-Addierer gegeben wird, um während des Indexschrittes zu der Konstanten des Befehlswortes addiert zu werden. Die Bits 17 und 16 sind bezeichnet mit »Bestimmungsregister«, da diese Bits dasjenige der vier Register bezeichnen, das der Bestimmungsort des aus dem Speicher abgelesenen Wortes ist.
Immer dann, wenn die Maskierung entweder bei einem normalen Lesebefehl oder, wie weiter unten gezeigt wird, bei einem normalen Register-zuRegister-Befehl erforderlich ist, muß zuerst ein anderer Lesebefehl ausgeführt werden. Es muß nämlich zuerst die Maske, die bei der Ausführung des nachfolgenden Befehls benutzt wird, im Maskierregister gespeichert werden. Ein Lesebefehl ist erforderlich, um die Maske aus dem Speicher 10 in das Maskierregister einzugeben. Das Befehlswort würde 0-Werte in den Bits 22 und 21 enthalten, um den Lesebefehl anzugeben. Das Bit 20 wäre ebenfalls eine 0, da, wenn das vollständige Maskierwort sich im Speicher befindet, dieses bei der Eingabe in den Registerwähler nicht maskiert werden soll. Die Bits 17 und 16 steuern den Registerwähler, so daß die Maske zum Maskierregister gegeben wird. Die Bits 19 und 18 bezeichnen dasjenige der Register A, B und C, dessen Inhalt nach Addition zur Konstanten des Befehls die Adresse der Speicherstelle im Speicher ergibt, welche das Maskierwort enthält.
Man beachte, daß die Ausführung eines Lesebefehls ohne Bezugnahme auf die bestimmten Betriebszeitpunkte der verschiedenen beteiligten Einheiten beschrieben worden ist. Es sind nur relative Zeitpunkte angegeben worden. Beispielsweise arbeitet der Registerleser 34 vor dem Registerwähler 35. Die ίο zeitliche Steuerung der verschiedenen Einheiten der Anlage kann mit Hilfe eines Zeitgebernetzwerkes erfolgen. Solche Netzwerke sind bekannt. Die F i g. 1 und 2 sind auch noch in anderer Hinsicht vereinfacht, so daß nur die Einheiten dargestellt sind, die für das Verständnis der Erfindung erforderlich sind. Weiterhin können die meisten Anlagen mehr als vier Grundbefehle ausführen. Für das Verständnis der Erfindung genügt jedoch die Darstellung des vereinfachten Systems nach den F i g. 1 und 2. Aus F i g. 4 ergibt sich, daß der zweite Befehl, ein Schreibbefehl, ausgeführt wird, wenn die Bits 22 bis 20 den Kode 010 enthalten. Zu diesem Zeitpunkt ist das Befehlskabel WRT erregt. Das ist symbolisch durch die Ausdrücke 22, 21, 20 innerhalb des Dekodierer-Verteilers 30 gezeigt. Man beachte, daß für Schreibbefehle keine Maskiermöglichkeit verfügbar ist. Das Bit 20, das bei Lesebefehlen und Registerzu-Register-Befehlen die Maskierschaltung 19 steuert, wird statt dessen benutzt, um zwischen Schreib- und Ubertragungsbefehlen zu unterscheiden, für die beide keine Maskiermöglichkeit verfügbar ist. Die auf dem Befehlskabel WRT erscheinenden Bits sind 19 bis 16.
Bei einem Schreibbefehl arbeitet der Registerleser 34 zweimal nacheinander. Zuerst lassen die Bits 19 und 18 den Registerleser den Inhalt eines der Register Λ, B und C ablesen. Das Wort mit 23 Bits wird sowohl zum Index-Addierer 32 als auch zum Speicher 10 gegeben. Das auf der Schreibsammelleitung 9 zum Speicher 10 übertragene Wort beeinflußt den Speicher nicht, da die Schreibadressenschaltung 13 zu diesem Zeitpunkt nicht erregt ist. Es ist zwar richtig, daß das Befehlskabel WRT diese Schaltung bei der Ausführung eines Schreibbefehls erregt, aber die Schreibadressenschaltung wird erst erregt, wenn der Registerleser 34 bei der Ausführung des Befehls zum zweitenmal in Tätigkeit tritt. Der Index-Addierer 32 wird jedoch jetzt erregt, und das von dem Registerleser 34 abgelesene Wort wird zu der Konstanten des Befehlswortes addiert. Nur die 16 Bits der niedrigsten Stellenzahl der Summe werden zum Kabel 33 gegeben. Das volle Wort mit 23 Bits, das im Index-Addierer abgeleitet worden ist, wird nicht zum Kabel 38 gegeben, wenn der Index-Addierer durch das Befehlskabel WRT erregt wird. Die 16 Bits auf dem Kabel 37 haben keinen Einfluß auf das Programmadressenregister 36, das bei der Ausführung eines Schreibbefehls nicht erregt ist. Auch die Datenleseschaltung 12 wird nicht beeinflußt, da sie durch das Befehlskabel WRT nicht erregt ist. Das Wort mit 16 Bits auf dem Kabel 20 wird jedoch in der Schreibadressenschaltung 13 gespeichert. Diese Schaltung wird durch das Befehlskabel WRT während der Ausführung eines Schreibbefehls zu einem Zeitpunkt erregt, nachdem der Index-Addierer 32 seine Tätigkeit beendet hat. Die in der Schreibadressenschaltung 13 gespeicherten 16 Bits stellen die Adresse im Speicher dar, in welche das
anschließende abzuleitende Wort eingeschrieben wird.
Der Registerleser 34 arbeitet dann ein zweites Mal und liest das Wort mit 23 Bits aus dem bestimmten der Register A, B und C ab, welches durch die Bits 17 und 18 bezeichnet wird. Das Wort mit 23 Bits wird wiederum sowohl zum Speicher 10 als auch zum Index-Addierer 32 gegeben. Der Index-Addierer ist jedoch zu diesem Zeitpunkt nicht durch das Befehlskabel WRT erregt. Er ist nur während des ersten Betriebsvorganges des Registerlesers 34 erregt. Das Wort mit 23 Bits auf der Schreibsammelleitung 9 wird an derjenigen Stelle in den Speicher 10 eingeschrieben, welche durch die in der Schreibadressenschaltung 13 gespeicherte Adresse angegeben wird.
Entsprechend F i g. 4 geben die Bits 19 und 18 bei einem Schreibbefehl ein »Index-Register« an, und die Bits 17 und 16 ein »Quellen-Register. Der Inhalt des angegebenen Index-Registers wird zuerst zu der Konstanten des Befehlswortes addiert, um die Adresse im Speicher zu bestimmen, in welche das Wort einzuschreiben ist. Dann werden die Bits 17 und 16 zur Feststellung des Registers benutzt, das die Quelle des Wortes mit 23 Bits ist, welches in den Speicher an der früher festgestellten Stelle eingeschrieben werden soll. Die Bits 19 und 18 können das Maskierregister 39 bezeichnen, in welchem Falle der Registerleser 34 nicht arbeitet und die zur Schreibadressenschaltung 13 über das Kabel 33 übertragene Adresse lediglich die Konstante des Befehlswortes ist. Die Bits 17 und 16 können nur eines der Register Λ, B und C bezeichnen. Bei einem Schreibbefehl ist eine Angabe des Maskierregisters 39 durch die Bits 17 und 16 nicht möglich, da, wenn dies der Fall wäre, der Registerleser 34 nicht arbeitet und keine Bits auf der Schreibsammelleitung erscheinen, die in den Speicher an der vorher festgestellten Adresse einzuschreiben sind. Bei dem System nach F i g. 1 und 2 ist eine Maskierung bei Schreibbefehlen nicht durchführbar. Bei anderen Systemen kann jedoch eine Maskiermöglichkeit für Schreibbefehle gegeben sein. Wie sich im folgenden noch zeigen wird, sind die Grundgedanken der Erfindung auch bei solchen Systemen anwendbar. Der dritte Befehl, ein Übertragungsbefehl, wird durch die Folge 011 in den Bits 22 bis 20 des Befehlswortes dargestellt. Wie gesagt, ist auch bei einem Übertragungsbefehl keine Maskiermöglichkeit gegeben, und das Bit 20 wird zur Unterscheidung zwischen Schreib- und Übertragungsbefehlen benutzt. Die Bits 19 und 18 geben ein Index-Register an, und die Bits 17 und 16 werden nicht verwendet. Das Befehlskabel XFR ist erregt, und die Bits 19 und 18 werden über das Kabel zum Registerleser 34 übertragen. Diese Bits können das Maskierregister 39 bezeichnen, in welchem Falle der Registerleser 34 nicht arbeitet oder eines der Register A, B und C. Das Wort mit 23 Bits auf dem Kabel 21 wird sowohl zum Speicher 10 als auch zum Index-Addierer 32 gegeben. Die Schreibadressenschaltung 13 ist bei einem Ubertragungsbefehl nicht erregt, und die Bits auf der Schreibsammelleitung haben keinen Einfluß auf den Speicher. Der Index-Addierer ist jedoch erregt, und das vom Registerleser 34 abgelesene Wort wird zu der Konstanten des Befehlswortes im Index-Addierer addiert. Die Summe wird nicht an das Kabel 38 gegeben. Statt dessen werden nur ihre ersten 16 Bits an die Kabel 33 und 37 angelegt. Die Bits auf dem Kabel 33 beeinflussen weder die Datenleseschaltung 12 noch die Schreibadressenschaltung 13, die bei der Ausführung eines Übertragungsbefehls nicht erregt sind. Die 16 Bits auf dem Kabel 37 werden jedoch in das bei einem Übertragungsbefehl erregte Programmadressenregister 36 eingeschrieben. Diese 16 Bits werden über das Kabel 14 zur Befehlsleseschaltung 11 gegeben, und das nächste vom Speicher 10 zum Befehlsregister 16 über das Kabel 15 übertragene Befehlswort wird durch diese Adresse
ίο mit 16 Bits bestimmt. Die Adresse wird im Programmadressenregister 36 gespeichert, und diese Adresse wird jetzt zur Ableitung nachfolgender Adressen für Befehlsworte erhöht, bis ein weiterer Ubertragungsbefehl ausgeführt wird. Das Befehlswort, das einen Übertragungsbefehl steuert, weist keine Bits in den Positionen 17 und 16 auf, die normalerweise entweder ein Bestimmungsregister oder ein Quellenregister angeben. Ein Bestimmungsregister muß angegeben werden, wenn eine Information entweder in das Maskierregister oder eines der Register A, B und C einzuschreiben ist. Ein Quellenregister muß bei einem Schreibbefehl angegeben werden, wenn das Wort in einem der Register Λ, B und C in den Speicher 10 einzuschreiben ist. Keiner dieser Fälle liegt jedoch bei der Ausführung eines Übertragungsbefehls vor. Es werden nur die Bits 19 und
18 benötigt, die ein Index-Register angeben. Bei einem Indexvorgang handelt es sich allgemein darum, die Konstante eines Befehlswortes mit Hilfe von Daten, die vorher in einem der Register ,4, B und C gespeichert worden sind, (durch Addition) zu verändern. Ein Indexvorgang ist für alle Befehle verfügbar, und wenn er nicht erforderlich ist, geben die Bits 19 und 18 lediglich das Maskierregister an, in welchem Falle der Registerleser 34 nicht arbeitet.
Die vierte Befehlsart, die bei dem System ausgeführt werden kann, ist ein Register-Zu-Register-Befehl. Dieser Befehl wird durch den Kode 10 in den Bits 22 und 21 angegeben. Wie bei einem Lesebefehl ist eine Maskiermöglichkeit gegeben, die durch den Wert des Bits 20 gesteuert wird. Der Registerleser 34 liest die 23 Bits in dem durch die Bits 19 und 18 angegebenen Register. Das Wort wird zum Index-Addierer gegeben, wo es zu der Konstanten des Befehlswortes addiert wird. Bei der Ausführung eines Register-zu-Register-Befehls steuert das Befehlskabel RTR den Index-Addierer 32 derart, daß er die Summe mit 23 Bits auf das Kabel 38 an Stelle der ersten 16 Bits der Summe auf das Kabel 33 gibt. Die Summe mit 23 Bits läuft durch die Maskierschaltung
19 und wird nur dann durch den Inhalt des Maskierregisters 39 maskiert, wenn der Wert des Bits 20 im Befehlswort eine 1 ist. Das Ausgangssignal der Maskierschaltung 19 wird zum Registerwähler 35 gegeben, der dann das Wort entweder in das Maskierregister 39 oder eines der Register A, B und C überträgt, und zwar in Abhängigkeit vom Wert der Bits 16 und 17, die bei einem Register-zu-Register-Befehl ein Bestimmungsregister angeben. Der Zweck des Register-zu-Register-Befehls besteht darin, die Übertragung des im Register A, B oder C gespeicherten Wortes mit 23 Bits entweder zu dem Maskierregister 39 oder einem anderen der Register A, B und C zu ermöglichen. Bei dieser Übertragung kann das Wort auf eine von zwei Arten verändert werden. Der ursprüngliche Inhalt des Index-Registers läßt sich ändern, wenn die Konstante des Befehlswortes nicht die Zahl 0 ist. Außerdem kann der ursprüngliche
909522/385
Inhalt des Index-Registers verändert werden, wenn Die Bits 17 und 16 geben wiederum an, welches der
die Maskierung befohlen wird. (Man beachte, daß, vier Register der endgültige Bestimmungsort des ein-
wenn die Bits 19 und 18 das Maskierregister 39 an- zuspeichernden Wortes ist.
geben, das zur Maskierschaltung über das Kabel 38 Die vollständige Konstante mit 16 Bits des Beübertragene Wort lediglich die Konstante mit 16 Bits 5 fehlswortes wird aber nicht mehr zum Index-Addiedes Befehlswortes ist.) Normalerweise wird ein Wort rer gegeben. Das Kabel 45 überträgt die Bits 15 bis 6 mit 23 Bits über das Kabel 38 zur Maskierschaltung der Konstanten zum Übersetzer 44. Das Tor 42 ist übertragen, aber wenn die Bits 19 und 18 das Mas- normalerweise erregt, und wenn einer der vier norkierregister angeben, arbeitet der Registerleser nicht, malen Befehle ausgeführt wird, wird die Konstante und nur die 16 Bits des konstanten Abschnittes des to mit 16 Bits über dieses Tor zum Index-Addierer geBefehlswortes werden über den Index-Addierer und geben. Bei der Ausführung des abgekürzten Maskierdie Maskierschaltung zu dem angegebenen Bestim- befehls Register-zu-Register betätigt jedoch das Bemungsregister übertragen. Diese 16 Bits können fehlskabel ABRTR das ODER-Tor 70. Die Betätidurch den Inhalt der ersten 16 Bits des Maskier- gung dieses ODER-Tores sperrt das Tor 42 und registers 39 maskiert werden, wenn der Maskiervor- 15 erregt statt dessen das Tor 41. Die Bits 15 bis 0 der gang befohlen wird. Das hat zur Folge, daß hoch- Konstanten des Befehlswortes werden dann nicht stens ein Wort mit 16 Bits entweder im Maskier- mehr über das Tor 42 zum Index-Addierer Überregister 39 oder einem der Register A, B und C tragen. Das Kabel 46 führt nur die Bits 5 bis 0 der gespeichert wird. Wenn das Wort im Maskierregister Konstanten mit 16 Bits. Wenn das Befehlskabel gespeichert und anschließend bei einem Maskiervor- ao ABRTR erregt ist, werden nur die ersten sechs Bits gang benutzt wird, steuern die Stufen 22 bis 16 im der Konstanten des Befehlswortes zum Index-Maskierregister die entsprechenden Stufen in der Addierer übertragen.
Maskierschaltung, so daß die entsprechenden Bits Die Bits 15 bis 6 der Konstanten werden über das
des ankommenden Wortes durch den Registerwähler Kabel 45 zum Übersetzer 44 gegeben. Es werden
hindurchgehen können, d. h., die Bits 22 bis 16 der 25 zwar auch bei der Ausführung irgendeines anderen
Maske haben den Wert 1. Befehls die Bits 15 bis 6 der Konstanten des Befehls-
Die früheren Angaben bezüglich des Lesebefehls wortes zum Übersetzer übertragen, aber diese Bits treffen in gleicher Weise auch für den normalen haben keinen Einfluß auf den Übersetzer, der nur Register-zu-Register-Befehl zu. Wenn eine Maskie- dann erregt ist, wenn die beiden abgekürzten Masrung bei der Ausführung des Befehls erforderlich ist, 30 kierbefehle ausgeführt werden. Wenn das Befehlsmuß zunächst eine Maske im Maskierregister 39 be- kabel ABRTR erregt ist, tritt das ODER-Tor 43 in reitgestellt werden. Es muß also zunächst ein ge- Tätigkeit, und der Übersetzer 44 wird erregt. Er artrennter Lesebefehl ausgeführt werden, um eine beitet mit den Bits 16 bis 6 der Konstanten und leitet Maske mit 23 Bits aus dem Speicher 10 in das von diesen zehn Bits eine vollständige Maske mit Maskierregister 39 zu geben. Die Hauptaufgabe der 35 23 Bits ab. Der Übersetzer speichert dann die Maske Erfindung besteht darin, Mittel bereitzustellen, die im Maskierregister 39. Diese wird bei der Ausfühermöglichen, daß Befehlsworte für Lese-, Register- rung des Befehls verwendet.
zu-Register- und ähnliche Befehle innerhalb des Bei der Ausführung des normalen Register-zukonstanten Abschnittes mit 16 Bits des Wortes In- Register-Befehls wird das durch den Register 34 abformationen enthalten, die eine Maske mit 23 Bits 40 gelesene Wort zu der Konstanten mit 16 Bits des bestimmen, welche bei der Ausführung des Befehls Befehlswortes im Index-Addierer addiert. Die Bits benutzt werden kann, so daß zur Speicherung der 15 bis 6 der Konstanten geben jedoch jetzt die erforderlichen Maske im Maskierregister kein Lese- Maske an, die bei der Ausführung des Befehls zu befehl vorher ausgeführt werden muß. verwenden ist. Es verbleiben nur die Bits 5 bis 0, die
Die Befehlskabel ABRD und ABRTR werden er- 45 als Daten zu dem ursprünglichen Registerwort im regt, wenn die abgekürzten Maskierbefehle nach der Index-Addierer addiert werden können. Diese Bits Erfindung ausgeführt werden. Die Kodierung der werden über das Tor 41 zum Index-Addierer überBits 22 bis 16 des Befehlswortes, die für die beiden tragen. Obwohl die effektive Konstante, soweit der abgekürzten Maskierbefehle erforderlich sind, sind Index-Addierer betroffen ist, jetzt nur aus sechs an in den letzten beiden Zeilen der Fig. 4 gezeigt. Zu- 50 Stelle von 16 Bits besteht, reichen für viele Anwenerst sei der abgekürzte Maskierbefehl Register-zu- düngen sechs Bits aus, um die Konstante darzu-Register betrachtet, der durch das Befehlskabel stellen, die zu dem vom Registerleser 34 abgelesenen ABRTR gesteuert wird. Die Bits 22 bis 20 enthalten Registerwort zu addieren zum Index-Addierer zu den Kode 111, wenn dieser Befehl ausgeführt wer- übertragen ist.
den soll. Man beachte, daß das Befehlskabel ABRTR 55 Die bei der Ausführung eines abgekürzten Masmit dem Befehlskabel RTR verbunden ist, so daß die kierbefehls Register-zu-Register von den verschiede-Bits 20 bis 16 auf dem Befehlskabel ABRTR auch nen Einheiten des Systems durchgeführte Operationsauf dem Befehlskabel RTR erscheinen, wenn der ab- folge soll jetzt erläutert werden. Wenn die Bits 22 gekürzte Maskierbefehl Register-zu-Register ausge- bis 20 den Kode 111 enthalten, wird das Befehlsführt wird. Die Bits 20 bis 16 werden zu den gleichen 60 kabel ABRTR erregt, und die Bits 20 bis 16 werden Einheiten gegeben, denen sie auch bei der Ausfüh- an die entsprechenden Adern des Kabels angelegt, rung des normalen Register-zu-Register-Befehls zu- Man beachte, daß das Bit 20 als eines der Bits im geführt werden. Analog werden bei der Ausführung Kode benutzt wird, um den Befehl sowohl bei des neuen Befehls die gleichen Einheiten erregt, die Schreib- als auch bei Übertragungsbefehlen anzuauch durch das Befehlskabel RTR erregt werden. 65 geben, so daß weder das Befehlskabel WRT noch Die Bits 19 und 18 steuern wiederum den Register- das Befehlskabel XFR das Bit 20 führt. Außerdem leser derart, daß er das Wort aus einem der Register wird das Bit 20 bei der Ausführung normaler Lese- A, B und C abliest und zum Index-Addierer gibt. und Register-zu-Register-Befehle benutzt, um anzu-
11 12
geben, ob die Maskierung erforderlich ist. Bei der Die auf den Befehlskabeln ABRD und RD erschei-
Ausführung des abgekürzten Maskierbefehls Re- nenden Bits 19 und 18 steuern die Funktion des
gister-zu-Register wird die Maskierung gefordert. Registerlesers 34. Der Registerleser liest entweder
Folglich muß das Bit zur Maskierschaltung gegeben das Wort aus den Registern A, B oder C ab oder
werden, und wird außerdem benutzt, um den Befehl 5 arbeitet nicht, wenn das Maskierregister 39 ange-
selbst anzugeben. Das Bit 20 ist eine 1, wenn der geben wird. Das abgelesene Wort wird zum Index-
bei dem normalen Register-zu-Register-Befehl besteht. Addierer 32 gegeben. Das Befehlskabel ABRD stellt
zeichnet wird, und folglich ist im Befehlskabel das zweite Eingangssignal für das ODER-Tor 70,
ABRTR eine Ader enthalten, welche das Bit 20 zum und das ODER-Tor tritt bei der Ausführung des ab-
Befehlskabel RTR überträgt. Dieses Befehlskabel io gekürzten Maskierlesebefehls in Tätigkeit. Zu diesem
enthält eine Ader zur Übertragung des Bits 20 zur Zeitpunkt ist das Tor 42 gesperrt und das Tor 41 er-
Maskierschaltung, da die Maskiermöglichkeit auch regt. Folglich werden nur die Bits 5 bis 0 der Kon-
bei dem normalen Register-zu-Register-Befehl besteht. stanten des Befehlswortes über das Kabel 46 zum
Die Bits 19 und 18 werden vom Befehlskabel Index-Addierer übertragen. Die Bits 15 bis 0 werden ABRTR über das Befehlskabel RTR zum Register- 15 nicht über das Kabel 31 zum Index-Addierer gegeleser 34 gegeben. Das Wort im Register Λ, B oder C ben. Die Bits 5 bis 0 werden zu dem vom Registerwird abgelesen und zum Index-Addierer übergeführt. leser 34 abgelesenen Wort addiert. Wie bei der AusWenn das Maskierregister 39 durch die Bits 19 und führung des normalen Lesebefehls gibt der Index-18 bezeichnet wird, arbeitet der Registerleser 34 Addierer nur die Bits 15 bis 0 der Summe an das nicht. Das zum Index-Addierer 32 übertragene Wort ao Kabel 33. Die Summe mit 23 Bits erscheint nicht auf wird zu den Bits 5 bis 0 im konstanten Abschnitt des dem Kabel 38. Das Programmadressenregister 36 Befehlswortes addiert. Das Befehlskabel ABRTR wird bei einem Lesebefehl nicht erregt, und folglich betätigt das ODER-Tor 70, das das Tor 41 erregt, haben die Bits auf dem Kabel 37 keinen Einfluß auf damit die Bits 5 bis 0 zum Index-Addierer über- diese Einheit. Die Adresse mit 16 Bits auf dem Kabel tragen werden können. Wenn das Tor 70 in Tätig- 95 33 wird an die Datenleseschaltung 12 und die keit tritt, wird das Tor 42 gesperrt, und die Bits 15 Schreibadressenschaltung 13 gegeben. Bei einem bis 0 der Konstanten werden nicht mehr über das Lesebefehl ist die Schreibadressenschaltung jedoch Kabel 31 zum Index-Addierer übertragen. Der Index- nicht erregt. Die Datenleseschaltung 12 ist erregt, da Addierer wird auf die gleiche Weise wie bei einem das Befehlskabel ABRD erregt und mit dem Befehls-Register-zu-Register-Befehl erregt und die vom 30 kabel RD verbunden ist. Die Datenleseschaltung 12 Index-Addierer abgeleitete Wortsumme mit 23 Bits steuert das Ablesen des Wortes in der Speicherstelle wird über das Kabel 38 zur Maskierschaltung über- des Speichers 10, welche durch die vom Index-Adtragen. dierer32 an das Kabel 33 gelieferte Adresse mit
Während der Registerleser 34 und der Index- 16 Bits angegeben wird. Das abgelesene Wort wird Addierer 32 in Tätigkeit gewesen sind, ist der Über- 35 über das Kabel 18 zur Maskierschaltung 19 übersetzer 44 betätigt worden. Das Befehlskabel ABRTR tragen.
betätigt das ODER-Tor 43, das den Übersetzer 44 Während dieser Zeit ist der Übersetzer 44 wie bei erregt. Der Übersetzer arbeitet auf Grund der Bits der Ausführung des abgekürzten Maskierbefehls 15 bis 6 der Konstanten des Befehlswortes und leitet Register-zu-Register in Tätigkeit gewesen. Das Beeine Maske mit 23 Bits ab. Diese Maske wird zum 40 fehlskabel ABRD ist erregt und setzt das ODER-Tor Maskierregister 39 gegeben. Wenn das Wort mit 43 in Tätigkeit. Der Übersetzer 44 setzt die Bits 15 23 Bits auf dem Kabel 38 erscheint, tritt die Maskier- bis 6 der Konstanten des Befehlswortes, die auf dem schaltung 19 in Tätigkeit. Das Bit 20, das auf den Kabel 45 erscheinen, in eine Maske mit 23 Bits um, Befehlskabeln ABRTR und RTR erscheint, ist eine 1 welche zum Maskierregister 39 gegeben wird. Das und steuert die Tätigkeit der Maskierschaltung. Die 45 Bit 20 auf dem Befehlskabel RD ist auf Grund des Maskierschaltung verwendet bei dem Maskiervor- zwischengeschalteten Inverters 48 eine 1. Die Masgang auf übliche Weise die im Register 39 ge- kierschaltung maskiert das aus dem Speicher 10 abspeicherte Maske. Das maskierte Wort wird dann gelesene Wort mit der abgeleiteten und im Register über das Kabel 40 zum Registerwähler 35 geleitet. 39 gespeicherten Maske. Das sich ergebende mas-Die Bits 17 und 16 auf den Befehlskabeln ABRTR 50 kierte Wort wird über das Kabel 40 zum Registerund RTR lassen den Registerwähler das Wort in wähler 35 gegeben. Die Bits 17 und 18 auf dem Beeinem der vier Bestimmungsregister einspeichern. fehlskabel RD lassen den Registerwähler das mas-
Entsprechende Angaben gelten für den abgekürz- kierte Wort entweder in das Maskierregister 39 oder ten Maskierlesebefehl. Der Kode für diesen Befehl eines der Register A, B und C geben,
ist 110 in den Bits 22 bis 20 des Befehlswortes. In 55 Es zeigt sich, daß die beiden abgekürzten Maskierdiesem Falle wird das Befehlskabel ABRD erregt. befehle für die Anlage auf zwei von den normalen Zur Ausführung des normalen Lesebefehls benötigt Befehlen beruhen. Die beiden Befehlskabel für abgedas Befehlskabel RD die Bits 20 bis 16. Dement- kürzte Maskierbefehle können mit den entsprechensprechend ist das Befehlkabel ABRD direkt mit dem den normalen Befehlskabeln verbunden werden, da bisherigen Befehlskabel RD verbunden. Man beachte, 60 die gleichen Einheiten, die bei der Ausführung der daß, damit die Maskierschaltung arbeitet, das Bit 20 normalen Befehle in Tätigkeit sind, auch bei der eine 1 sein muß. In dem Kode für den abgekürzten Ausführung der abgekürzten Maskierbefehle arbei-Maskierlesebefehl ist das Bit 20 jedoch eine 0. Aus ten, und die gleichen Bits zu ihrer Erregung und zur diesem Grunde ist der Inverter 48 vorgesehen. Wäh- Angabe bestimmter Informationen erforderlich sind, rend die Bits 19 bis 16 direkt zum Befehlskabel RD 65 beispielsweise der Angabe eines Index-Registers. Es übertragen werden, wird das Bit 20 zunächst inver- ist nur erforderlich, den Übersetzer 44 bei der Austiert, so daß es auf dem Befehlskabel RD als 1 er- führung einer der abgekürzten Maskierbefehle zu erscheint, regen, damit der Übersetzer eine Maske von den
Bits 15 bis 6 der Konstanten des Befehlswortes ableitet, um die Übertragung aller 16 Bits der Konstanten zum Index-Addierer zu verhindern, da zehn von den 16 Bits eine Maske darstellen und nur die ersten sechs Bits der Konstanten Daten sind, die bei dem Indexvorgang benutzt werden. Es muß also die vollständige Konstante mit 16 Bits vom Index-Addierer ferngehalten und statt dessen ein anderer Weg geschaffen werden, der nur dann in Betrieb ist, wenn i i bk Mkibfhl
Adern schreibt eine 0 in die entsprechenden Registerstufen ein. Der Impuls auf der Ader 50 läuft durch die Verzögerung 61 und betätigt die Impulsschaltung 62 kurze Zeit nach der Impulsschaltung 5 60. Die Impulsschaltung 62 gibt einen positiven Impuls an einen der Eingänge jeder der 23 Tore GO bis G 22. Wenn alle Eingänge eines oder mehrerer dieser Tore erregt sind, legen die Tore positive Impulse an entsprechende der Adern 50 bis S 22. Positive Im-
Register-Befehle verbunden ist. Außerdem muß ein Inverter vorgesehen sein, der zur Steuerung der Masleerschaltung 19 die 0 im Bit 20 des abgekürzten Maskierlesebefehls in eine 1 umwandelt.
Die Grundgedanken der Erfindung sind immer dann anwendbar, wenn bei einem Befehl eine Maskiermöglichkeit besteht. Beispielsweise ist bei dem dargestellten System keine Maskiermöglichkeit für
g , , p
einer der beiden abgekürzten Maskierbefehle aus- io pulse erscheinen auf denjenigen der Adern 50 bis geführt wird, um die Bits 5 bis 0 der Konstanten 522, die mit entsprechenden Stufen des Maskierrezum Index-Addierer zu geben. Es ist nur ein Mini- gisters verbunden sind, in welche binäre 1-Werte einmum von Schaltungen erforderlich, um die abge- zuschreiben sind. In alle Registerstufen sind zu Ankürzten Maskierbefehle zu ermöglichen, da jedes der fang 0-Werte eingeschrieben, und in diejenigen, beiden Befehlskabel mit einem entsprechenden Be- 15 welche eine 1 enthalten sollen, werden 1-Werte einfehlskabel für die normalen Lese- und Register-zu- geschrieben, nachdem das Register zunächst zurück-
i gestellt ist. In Abhängigkeit von den Werten der Bits 15 bis 6 auf dem Kabel 45 wird eine bestimmte Folge von aufeinanderfolgenden Toren der 23 Tore GO ao bis G 22 erregt, wenn der Impulsgeber 62 einen positiven Impuls an einen Eingang jedes dieser Tore anlegt.
Jede der 23 Stufen des Übersetzers mit Ausnahme
g y g der ersten weist ein entsprechendes Tor der UND-
einen Schreibbefehl gegeben. Ein Wort, das in den »5 Tore Hl bis #22 auf. Jedes UND-Tor wird erregt, Speicher 10 eingeschrieben werden soll, wird aus wenn die Bits 15 bis 11 die Nummer der entsprecheneinem der Register^, B und C abgelesen und direkt den Stufe darstellen. Alle fünf Eingänge eines beüber die Schreibsammelleitung zum Speicher über- stimmten Tores müssen auf hohem Potential liegen, tragen. Bei einigen Systemen kann die Maskierschal- damit das Tor betätigt wird. Binäre 1-Werte werden tung jedoch das abgelesene Wort maskieren, bevor 30 durch positive Spannungen und binäre 0-Werte es an die Schreibsammelleitung gegeben wird. In die- durch negative Spannungen dargestellt. Dementsen Systemen kann auf analoge Weise ein abgekürz- sprechend sind eine Anzahl von Invertern / jedem ter Maskierschreibbefehl bereitgestellt werden. Das Tor zugeordnet, um eine 0 in einem der Bits 15 bis neue Befehlskabel würde die gleichen Einheiten be- 11 in eine 1 an dem entsprechenden Eingang des tätigen, aber es wird nicht die vollständige Konstante 35 Tores umzuwandeln. (Die vielen Inverter, die in diezum Index-Addierer übertragen. Nur ein Teil wird ser Schaltung individuell dargestellt sind, könnten an den Index-Addierer gegeben, und der Rest zur auf zehn herabgesetzt werden, und zwar einen für Ableitung der in der Maskierschaltung benutzten jedes der Bits 15 bis 6.)
Maske verwendet. Die abgekürzten Maskierbefehle Es sei beispielsweise das Tor H 20 betrachtet. Die
sind in hohem Grade vorteilhaft, da sie die Ausfüh- 40 Binärzahl, welche die Dezimalzahl 20 darstellt, laurung eines Befehls einschließlich des Maskierwun- tet 10100. Die Ader, welche das Bit 15 führt, ist sches ermöglichen, ohne daß erst eine Maske aus direkt an einem Eingang des Tores H 20 angeschaltet, dem Speicher in das Maskierregister gegeben wer- Entsprechendes gilt für die Ader, welche das Bit 13 den muß. überträgt. Die anderen drei Adern, über welche die
Die Register A, B und C sind getrennt vom Spei- 45 Bits 11, 12 und 14 laufen, sind an entsprechende eher 10 dargestellt worden. Es kann jedoch auch ein Inverter angeschaltet, die dem Tor H 20 zugeordnet einziger Speicher in einem System an Stelle getrenn- sind. Das Tor #20 tritt also nur dann in Tätigkeit, ter Register und eines Speichers verwendet werden. wenn die Bits 15 bis 11 die Zahl 20 darstellen, weil In einem solchen Falle würden die Register^, B nur dann die fünf Eingänge des Tores erregt sind, und C lediglich drei Speicherstellen im Speicher dar- 50 Entsprechendes gilt für die Tore Hl bis 7/19, H 21 stellen. und .ff 22. In Abhängigkeit von der durch die Bits
Der Übersetzer 44 ist in F i g. 2 nur in Form eines 15 bis 11 dargestellten Zahl wird immer nur eines Blockschaltbildes dargestellt. Die Eingangssignale der UND-Tore gleichzeitig erregt. Diese Bits identides Übersetzers bestehen aus zwei Arten. Die Bits 15 fizieren das höchststellige Bit in der zu erzeugenden bis 6 erscheinen auf dem Kabel 45, wenn irgendein 55 Maske, das eine binäre 1 enthält. Es wird dann das-Befehl ausgeführt wird. Der Übersetzer arbeitet je- jenige der Tore Hl bis #22 erregt, dessen entdoch nur dann, wenn ein Erregungsimpuls auf der
Ader 50 erscheint. Die im Übersetzer aus den zehn
Bits 15 bis 6 abgeleitete Maske mit 23 Bits wird über
das Kabel 51 zum Maskierregister 39 übertragen. Ein 60
bestimmter Übersetzer, der in Fig. 2 verwendet werden kann, ist im einzelnen in F i g. 3 gezeigt.
Der Übersetzer 44 weist 23 ähnliche Stufen auf.
Wenn die Ader 50 zum erstenmal erregt wird, spricht
die Impulsschaltung 60 an und legt einen negativen 65 die fünf Eingänge jedes dieser Tore angeschaltet. In Impuls an die 23 Adern 50 bis 522. Diese Adern Abhängigkeit von der durch die Bits 10 bis 6 darführen zu den entsprechenden Stufen des Maskier- gestellten Binärzahl arbeitet nur eines dieser Tore, registers 39, und der negative Impuls auf jeder dieser Wenn beispielsweise die Binärzahl 00000 ist, werden
jg g,
sprechende Adern 51 bis 522 die höchststellige Ader
ist, die durch die Impulsschaltung 62 zu beaufschlagen ist.
Auf entsprechende Weise ist eines der Tore L 0
bis L21 für jede Stufe mit Ausnahme der letzten
vorgesehen. Die fünf Adern, über welche die Bits 10
bis 6 der Konstanten des Befehlswortes übertragen
werden, sind entweder direkt oder über Inverter an

Claims (1)

15 16
positive Eingangsspannungen an fünf Eingänge des entsprechenden der Tore Gl bis G 22 und außerdem Tores L 0 angelegt, und nur dieses Tor ist erregt. Die ein Eingang jedes niedrigerstelligen Tores erregt. Bits 10 bis 6 stellen die Binärzahl des niedrigststelli- Für jeden der durch die Bits 10 bis 6 dargestellten gen Bits in der zu erzeugenden Maske dar, das eine Werte 0 bis 21 ist einer der Eingänge des entsprebinäre 1 enthalten soll. Wenn daher das Tor Ll 5 chenden Tores GO bis G21 und außerdem ein Einerregt ist, ist das zweite Bit der Maske 1. Das erste gang jedes höherstelligen Tores erregt. Bei einigen Bit ist eine 0, und die Bits mit höheren Ziffernstellen der Tore Gl bis G 21 ist kein Eingang erregt, bei als das zweite Bit haben Werte, die durch das be- einigen ist nur ein Eingang und bei einigen sind zwei stimmte der Tore Hl bis H 22 angegeben werden, Eingänge erregt. Nur die letztere Gruppe von Toren welches erregt ist. Es sei beispielsweise angenommen, io tritt in Tätigkeit, wenn ein Impuls von der Impulsdaß die Binärzahl der Bits 15 bis 11 10101 und die schaltung 62 an den verbleibenden Eingang jedes Binärzahl der Bits 10 bis 6 00001 ist. Von den Toren Tores angelegt wird.
Hl bis #22 tritt nur das Tor H 21 in Tätigkeit. Von Die erste Stufe weist kein den Toren Hl bis H 22
den Toren LO bis L 21 ist nur das Tor Ll erregt. entsprechendes Tor auf. Wenn das höchststellige Bit Folglich sind alle Bits in der Maske zwischen und 15 der Maske als erstes eine 1 enthalten soll, erscheint
einschließlich der Positionen 1 und 21 1-Werte. Nur die Zahl 00000 in beiden Gruppen von Bits 15 bis
die Bits 0 bis 22 enthalten binäre 0-Werte. 11 und 10 bis 6. (Wenn das höchststellige Bit in der
Alle Stufen mit Ausnahme der ersten und der Maske als erstes eine 1 enthalten soll, muß das
letzten enthalten eines der ODER-Tore A1 bis A 21 niedrigststellige Bit in der Maske, das eine 1 enthalten
und eines der ODER-Tore B1 bis B 21. Es sei die ao soll, notwendigerweise das erste sein. Im anderen
Stufe 20 betrachtet. Das Tor G 20 weist drei Ein- Fall würde das gesamte Wort, das aus dem Speicher
gänge auf, von denen einer mit dem Ausgang der abzulesen ist oder von einem Register zu einem ande-
Impulsschaltung 62 verbunden ist. Die anderen bei- ren zu übertragen ist, durch die Maskierschaltung ge-
den Eingänge sind an die entsprechenden Ausgänge sperrt.) Das UND-Tor GO weist nur zwei Eingänge
der Tore A 20 und B 20 angeschaltet. Wenn beide 25 auf, von denen einer mit der Impulsschaltung 62 und
Tore A 20 und B 20 erregt sind, legt das Tor G 20 der andere mit dem Ausgang des Tores LO verbun-
einen positiven Impuls an die Ader S 20, wenn die den ist. Ein drittes Eingangssignal von einem Tor,
Impulsschaltung 62 arbeitet. Wenn nur eines der das den Toren Hl bis H 22 entspricht, ist nicht erfor-
Tore A 20 und B 20 oder keines von beiden erregt derlich, da, wenn nur das erste Bit in der Maske
ist, wird der Ader S 20 kein Impuls zugeführt, und es 30 eine 1 sein soll, die Maske durch das UND-Tor LO
verbleibt eine 0 in der Stufe 20 des Maskierregisters. allein bestimmt werden kann. Auch ein ODER-
Jedes der ODER-Tore Al bis Λ 21 weist zwei Tor B 0 ist für die erste Stufe nicht erforderlich. Es ist
Eingänge auf. Einer von ihnen liegt am Ausgang des kein Tor vorhanden, das eine niedrigere Ziffer als das
entsprechenden der Tore Hl bis H 21. Der andere Tor LO aufweist, welches, wenn es betätigt ist, das
ist mit dem Ausgang des ODER-Tores der auf der 35 ODER-Tor SO erregen würde. Das ODER-Tor BO
linken Seite benachbarten Stufe verbunden. Mit die- ist nicht erforderlich, und der Ausgang des Tores LO
sen Verbindungen soll sichergestellt werden, daß ist direkt mit einem Eingang der beiden Tore GO
immer dann, wenn eines der Tore Hl bis H 22 er- und Bl verbunden.
regt ist, einer der Eingänge der entsprechenden Tore In analoger Weise ist die Stufe 22 nicht mit einem Gl bis G 22 erregt ist, d. h. einer der Eingänge jedes 40 UND-Tor L 22 ausgerüstet. Wenn das niedrigststelder niedrigststelligeren Tore Gl bis G 22. Es sei bei- lige Bit in der Maske als letztes eine 1 enthalten soll, spielsweise angenommen, daß das UND-Tor H 21 in muß das UND-Tor H 22 notwendigerweise erregt Tätigkeit tritt. Das ODER-Tor A 21 spricht an und sein, d. h. die Bits 15 bis 11 müssen der Zahl 22 enterregt einen der Eingänge des G 21. Der Ausgang sprechen. Im anderen Fall würde die Maske wiedes ODER-Tores H 21 ist an einen der Eingänge des 45 derum aus 23 0-Werten bestehen. Es ist auch kein ODER-Tores A20 angeschaltet, und dieses Tor ODER-TorA22 für die Stufe22 erforderlich, da wird erregt, obowhl sein entsprechendes Tor H 20 kein Tor vorhanden ist, das höher beziffert ist als das nicht in Tätigkeit ist. Demgemäß ist einer der Ein- UND-Tor H 22.
gänge des Tores G 20 auf entsprechende Weise erregt. Die Betriebsweise des Übersetzers läßt sich wie
Der Ausgang des Tores H 20 ist mit einem der Ein- 50 folgt zusammenfassen. In Abhängigkeit von dem
gänge des ODER-Tores A19 (nicht gezeigt) verbun- Wert der durch die Bits 15 bis 11 dargestellten Zahl
den, und dieses ODER-Tor tritt auf entsprechende tritt eines der UND-Tore Hl bis H 22 in Tätigkeit.
Weise in Tätigkeit und erregt einen der Eingänge des Das Ansprechen dieses Tores steuert die Erregung
Tores G19 (nicht gezeigt). Auf analoge Weise eines entsprechenden der Tore Gl bis G 22 und die
sprechen alle ODER-Tore A1 bis A18 an, und einer 55 Erregung aller niedrigstelligeren dieser Tore. Die
der Eingänge jedes der Tore Gl bis G18 ist erregt. durch die Bits 10 bis 6 dargestellte Zahl steuert die
Wenn also das Tori?21 anspricht, ist einer der Ein- Erregung eines der ToreLO bis L21. Das Anspre-
gänge jedes der Tore Gl bis G 21 erregt. Nur das chen dieses Tores steuert die Erregung des ent-
Tor G 22 ist nicht erregt. sprechenden der Tore GO bis G 21 und die Erregung
Ein entsprechendes Schema ist für die UND-Tore 60 aller höherstelligen dieser Tore. Es werden also zwei
LO bis L 21 und die ODER-Tore Bl bis B 21 vor- Ketten gebildet, und zwar eine nach rechts und eine
gesehen. Immer dann, wenn eines der UND-Tore in nach links. Von den Toren GO bis G 22 werden nur
Tätigkeit tritt, sprechen das ihm zugeordnete ODER- diejenigen erregt, denen Stufen zugeordnet sind, bei
Tor und alle höherstelligen ODER-Tore an, um die denen sich die beiden Ketten überlappen.
entsprechenden Eingänge der Tore GO bis G 21 zu 65 _
erregen Patentanspruch:
Es ist also für jeden der durch die Bits 15 bis 11 Datenbearbeitungssystem mit einem Speicherdargestellten Werte 1 bis 22 einer der Eingänge des medium, das Folgen von Befehlsworten und
Daten enthält, wobei jedes Befehlswort einen Operationsabschnitt und einen konstanten Abschnitt aufweist, und mit einer Steueranordnung, die auf jedes Befehlswort anspricht und dem Speichermedium entnommene Datenworte bearbeitet, dadurchgekennzeichnet, daß ein Übersetzer (43 bis 45, 50, 51), der auf eine Gruppe von Bits im konstanten Abschnitt eines
Befehlswortes anspricht, ein Maskierwort ableitet und das abgeleitete Maskierwort in ein Maskierregister (39) eingibt und eine Maskierschaltung (19, 38, 20) auf gewählte Befehlsworte anspricht und den Inhalt des Maskierregisters (39) mit einem gewählten Wort logisch kombiniert, dessen Speicherstelle durch weitere Bits im konstanten Abschnitt des Befehlswortes definiert ist.
Hierzu 2 Blatt Zeichnungen
DEW40048A 1964-10-07 1965-10-06 Datenbearbeitungssystem Pending DE1296427B (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US402311A US3343139A (en) 1964-10-07 1964-10-07 Abbreviated mask instructions for a digital data processor

Publications (1)

Publication Number Publication Date
DE1296427B true DE1296427B (de) 1969-05-29

Family

ID=23591401

Family Applications (1)

Application Number Title Priority Date Filing Date
DEW40048A Pending DE1296427B (de) 1964-10-07 1965-10-06 Datenbearbeitungssystem

Country Status (6)

Country Link
US (1) US3343139A (de)
BE (1) BE670566A (de)
DE (1) DE1296427B (de)
GB (1) GB1105812A (de)
NL (1) NL6513021A (de)
SE (1) SE304402B (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3454929A (en) * 1966-03-25 1969-07-08 Burroughs Corp Computer edit system
DE1524091B2 (de) * 1966-04-30 1970-11-19 Anker Werke Ag Schaltung zum Ausblenden von Informationsteilen fuer elektronische Datenverarbeitungsanlagen
US3439347A (en) * 1966-12-13 1969-04-15 Gen Electric Sub-word length arithmetic apparatus
US3543245A (en) * 1968-02-29 1970-11-24 Ferranti Ltd Computer systems
US3969704A (en) * 1974-07-19 1976-07-13 Nanodata Corporation Word transformation apparatus for digital information processing
US4771281A (en) * 1984-02-13 1988-09-13 Prime Computer, Inc. Bit selection and routing apparatus and method
US4756147A (en) * 1986-11-03 1988-07-12 Savell Kenneth J Weed-trimmer-to-lawn-mower conversion carriage

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL135203C (de) * 1958-08-13
US3161763A (en) * 1959-01-26 1964-12-15 Burroughs Corp Electronic digital computer with word field selection
US3111648A (en) * 1960-03-31 1963-11-19 Ibm Conversion apparatus
US3274558A (en) * 1961-01-03 1966-09-20 Burroughs Corp Digital data processor
NL274015A (de) * 1961-01-27
US3277449A (en) * 1961-12-12 1966-10-04 Shooman William Orthogonal computer
US3238508A (en) * 1961-12-18 1966-03-01 Ibm Logical manipulator

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None *

Also Published As

Publication number Publication date
GB1105812A (en) 1968-03-13
US3343139A (en) 1967-09-19
SE304402B (de) 1968-09-23
NL6513021A (de) 1966-04-12
BE670566A (de) 1966-01-31

Similar Documents

Publication Publication Date Title
DE2712224C2 (de) Datenverarbeitungsanlage
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE2145120A1 (de) Digitales Datenverarbeitungsgerat
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE1774052B1 (de) Rechner
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE1185404B (de) Fehlerermittlungsanlage
DE1296427B (de) Datenbearbeitungssystem
DE2245284A1 (de) Datenverarbeitungsanlage
DE1499286B2 (de) Datenbearbeitungsanlage
DE1285218B (de) Datenverarbeitungsanlage
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE2933830A1 (de) Programmierbarer polynomgenerator
DE1296429B (de) Datenbearbeitungsanlage
DE1250489B (de) I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher
DE1499284C3 (de) Datenverarbeitungsanlage
DE1774771A1 (de) Anordnung,um wechselweise eine Addition oder eine aus einer Anzahl logischer Funktionen zwischen den Inhalten einer Stelle zweier Binaerworte durchzufuehren
DE1774849C3 (de) Adressierungseinrichtung für eine Speicherabschnittkette
DE2419836C3 (de) Schaltungsanordnung zur Durchführung von Unterprogramm-Sprungbefehlen in Datenverarbeitungsanlagen
DE2601379C3 (de) Schaltungsanordnung zum Umwandeln virtueller Adressen in reelle Adressen
DE1499286C (de) Datenbearbeitungsanlage
DE1549582B1 (de) Anordnung zur bestimmung der niedrigstwertigen bit position
DE1424756B2 (de) Schaltungsanordnung zum fehlergesicherten Einführen oder Wiedereinführer, von Programmen in den Hauptspeicher einer datenverarbeitenden Anlage
DE3340078A1 (de) Prozessor-zelle zur verwendung in einer aus derartigen zellen gebildeten anordnung