DE1499286A1 - Datenbearbeitungsanlage - Google Patents
DatenbearbeitungsanlageInfo
- Publication number
- DE1499286A1 DE1499286A1 DE19651499286 DE1499286A DE1499286A1 DE 1499286 A1 DE1499286 A1 DE 1499286A1 DE 19651499286 DE19651499286 DE 19651499286 DE 1499286 A DE1499286 A DE 1499286A DE 1499286 A1 DE1499286 A1 DE 1499286A1
- Authority
- DE
- Germany
- Prior art keywords
- register
- command
- word
- bits
- cable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 230000000873 masking effect Effects 0.000 claims description 40
- 230000005540 biological transmission Effects 0.000 description 6
- 238000006073 displacement reaction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000005284 excitation Effects 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 210000004072 lung Anatomy 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30018—Bit or string instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
Description
Die Erfindung betrifft Datenbearbeitungsanlagen und im einzelnen Anordnungen ,
die eine Kombination von Datenbearbeitungsvorgängen in einem einzigen Befehl
ermöglichen,
Datenbearbeitungsonjagen mit einem Speicher für Befehlsworte und Daten,
wobei jedes Befehlswort ein Operationsfeld und ein konstantes Feld aufweist,
sind bekannt. Dabei kann eine Steueranordnung vorgesehen sein, welche die
Befehlsworte aus dem Speicher entnimmt und ausführt. Aus dem Speicher entnommene Daten lassen steh In einem oder mehreren einer Vielzahl von Registern
darstellen.
Häufig besteht der Wunsch, logische Operationen bei Daten auszufuhren, während diese von einem Register zu einem anderen Übertragen werden. Diese
wahrend des Übergangs erfolgende Bearbeitung erhöht die Geschwindigkeit,
mit der logische Operationen durchgeführt werden kennen. Zu den am häufigsten durchgeführten logischen Operationen zählt das "Maskieren". Darunter
wird die wahlweise Ausschaltung der Bit eines Wortes In Abhängigkeit vom
Vorhandensein oder NichtVorhandensein aktiver Bit in den entsprechenden Positionen eines zweiten oder Masklerwortes verstanden. Wenn das Datenwort
also 1010 lautet und das Maskierwort 0110, dann ergibt sich bei einer sogenannten Produktmaskierung das Wort 0010. Für die Produktmaskierung hat ein
Bit In dem maskierten Wort nur denn den Wert 1, wenn die entsprechenden
Bit des Datenwortes und des Maskierwortes 1 sind.
at
Das Maskierwort wird in ein erstes Register eingegeben· Zwischen dem
Speicher und den Registern kann sich eine logische Schaltung befinden, die
auf ein dem Speicher entnommes Befehlswort anspricht. Die logische Schaltung
kam ein Dotenwort, denen Adresse durch das konstante Feld des gewonnenen
Befehlswortes angegeben wird, mit dem Inhalt des ersten Registers maskieren·
Das maskierte Wort kann darm in einem gewühlten einer Vielzahl weiterer
Register gespeichert oder zuiück zum Speicher gegeben werden·
Nach dem Stand der Technik war es bisher erforderlich, zwei getrennte Befehle
zur Ausführung eines Masklerwunsches in einem ersten Befehl und zur Durchfuhrung
einer Venchiebeoperation, die durch einen zweiten Befehi angegeben
wird, zu benutzen
Der Erfindung liegt die Aufgabe zugrunde, ein Datenbearbeitungssystem zu
schaffen, bei dem die Ausführung einer durch einen ersten Befehl angegebenen logischen Operation mit einer durch einen zweiten Befehl angegebenen
Venchiebeoperation kombiniert werden kann, so daß nur ein einziger Befehl fUr die kombinierte Operation erforderlichist.
Die erfindungsgemafie Lesung sieht die Verwendung eines Detektors vor, der
die Positlonsidentitat einer aktiven Grenzzelle im ersten Register feststellt«
Das kann wahlwebe die Bit-Position entweder der höchsten oder der niedrigsten
Ziffemstelle (die am weitestem rechts oder am weitesten links stehende "I")
des im ersten Register gespeicherten Maskierwortes sein. Zusätzlich sind Schaltungen
vonjesehen, die auf das Signal für die Positionsidentität ansprechen
und den Inhalt desjenigen Registers von der Vielzahl von Registern verschieben,
das durch das konstante Feld des gleichen Befehlswortes argegeben wird. Es kann also der Inhalt des Registers, welches das maskierte Wort enthalt, um
eine vorgegebene Zahl von Bit-Positionen verschoben werden, da die Lunge
des Registers und die aktive maskierende Bit-Grenzposituion bekannt sind.
S 1 0 / 1 3 9 3 - BAD
3 H99286 8
Fur ein Ausfuhrungsbelspiet sei angenommen, daß alle Register eine Kapazität von vier Bit aufweisen. Wenn der Inhalt eines ersten oder Maskierregisters 0110 Ist und die Übereinkunft lautet "Rechfsverschiebung, Anzeigen
der nledrlgsstellfgen 1", donn wird die dritte Bitposition von links angezeigt·
Es sei angenommen, da8 dee inhalt des ersten Registers einer Produktmaskierung
mit dem Datenwort 1010 unterworfen weiden soll. Der Detektor erregt, nachdem
er das Bit mit der niedrigsten Stelienzahf Im ersten Register festgestellt hat, zusätzlich· Schaltungen, die das produkfmaskterte Wort 0010 im Register A um
eine Position nach rechts verschieben. Der Inhalt des Registers A sei 0001 · Man beachte, daß die Adresse des Datenwortes (1010) und die Adresse des
Registers (A), essi Inhalt zu verschieben ist, dann beide im konstanten Abschnitt eines einzigen Befehls angegeben weiden kennen.
Die Erfindung lall im folgenden anhand der Zeichnungen noch näher erläutert
werden. Es zeigen:
Figur 1 und 2 in aneinander^-^sj?«r Fom; <§!ne seheagstlsche Darstellung
einer Datenbearbeitungsanlage als Aueftlhrungsbelspiel der Erfindung;
Figur 3 eine ins einzelne gehende schematische Darstellung einer Schaltun^sanordnung, die ajs Ausftlhrungsbeispief den Umsetzer nach Figur 2
bilden kann;
F-.. 4 eine Tabelle r'-A der Kodierung verschiedener Befehle in dem
« iimgsgemüGen £« ijhrungsbeispiel einer Datenbearbeitungsan-
In den Zeichnungen und de» icchfotgenden Beschreibung sind die Bit der verschiedener Aorte mit 15-C kl-O und so weiter nummeriert, wobei das höhersteil ige Ei' iuient genannt ^- :.
Anhand der Figuren 1 und 2 soli zunächst die normale Betriebsweise der
Datenbearbeitungsanlage unter Verwendung der individuellen Befehle beschrieben
werden, und dann die Betriebsweise unter Verwendung der kombinierten
Lese-Verschiebebefehie nach der Erfindung. Bei dem Ausftlhrungsbeispiel
der Erfindung sind alle Daten- und alle Befehlsworte 23 Bit lang· Dafertworte und Befehlsworte werden im Speicher 10 gespeichert. Der Speicher
weist 2 Wertstellen auf. Folglich wird ein bestimmtes Wort im Speicher
durch eine Adresse mit 16 Bit identifiziert. Die Anlage enthält drei Adressierschaltungen,
nämlich die Befehlsleseschaltung 11, die Datenleseschaltung
und die Schreibadressenschaltung 13. Wenn eine Adresse Über das Kabel 14
zur Befehisleseschaltung gegeben wird, wird das Wort in der entsprechenden
Speicherzelle über das Kabel 15 zum Befehlsregister 16 übertragen. Wenn
eine Adresse Über das Kabel 17 zur DatenIeinschaltung 12 gegeben wird,
wird das Wort in der entsprechenden Speicherstelle vom Speicher Über das
Kabel 18 zur Masklerschaltung 19 Übertragen. Wenn eine Adresse Über das
Kabel 20 zur Schreibadrettertichaitung 13 gegeben wird, wird das Wort auf
der Schreibsammelleitung 9 in die entsprechende Speichersteiie des Speichers 10 eingeschrieben.
fin Befehlswort im Befehlsregister 16 wird im Dekoder-Verteiler 30 dekodiert.
Der Dekoder-Verteiler legt bei allen Befehlen die Bit 15-0 an das Kabel
Diote Bit steilen die Konstante {edes Befehlsworts dar. Die Anlege enthält
sfchf BefehUkabei, RD (Lesen), WRT (Schreiben), XFR (Übertragen)/
PTR (Regisler»zu-Ree»tfer}, SFT (Verichleben) und RD-SFT (Usen-Verschieben),
die jeweils in Form strichpunktierter Linien dargestellt sind. Der Dekoder-Verteiler
legt entsprechend der in Figur 4 gezeigten ßefehlskodierung verschiedene
Bit an eines dieser sechs Befeltiikabel, Die oberen sieben Zeilen
in Figur 4 sfelien die Kodierung der fünf Einkeibefehle dar, die in der Anlage
cuiijiefuhit werden können. Die letzten ZeI!en geben die Kodierung des
kombinierten Lexe-Vcrtehiebebefehls nach der Erfindung wieder. Zunächst
sollen die fünf Lmzelbefehle und dann der «rflndungsgemäße Kombinatlombefehl
beschrieben werden.
00981 ϋ/Ί39 3
Die 22-16 geben den Befehl und die verschiedenen Register an, die bei
seiner Ausfuhrung zu benutzen sind. Der Befehl selbst ist entweder durch
Bit 22 und 21 oder die Bit 22-20 bestimmt, in Figur 4 sind die Bit, welche
den jeweils auszuführenden besonderen Befehl darstellen, durch stark ausgezogene
Linien eingerahmt. Beispielsweise wird ein Lesebefehl durch den Kode 00 fUr die Bit 22 und 21 angegeben. Ein Schreibbefehl wird durch den Kode
010 für die Bit 22-20 und ein Übertragungsbefehl durch den Kode 011 für die
Bit-Positionen 22-20 dargestellt. Der Kode 10 für die Bit 22 und 21 gibt einen
Register-zu-Rogister-Befehl an, und ein Verschiebebefehl wird ausgeführt,
wenn die Kombination 110 fUr die Bit 22-20 erscheint. Es wird immer nur
eines der fünf Befehlskabel gleichzeitig erregt, und zwar in Abhängigkeit
von dem auszuführenden Befehl.
Die in Klammern gestellten Zahlen in den Figuren 1 und 2 geben die Bit
wieder, deren Werte Über die Befehlskabel Übertragen werden. Bestimmten
Kabeln, die keine Befehlskabel sind, sind ebenfalls in Klammern gestellte Zahlen zugeordnet. Diese Zahlen geben in analoger Weise die Bit an, die
Über diese Kabel übertragen werden. Beispielsweise werden die Bit 15-0 der
23 Bit im Index-Addierer 32 über das Kabel 33 zur Datenleseschaltung 12 und
zur Schreibaiiressenschaltung 13 übertragen.
Einige Zweige der ßefehtskabel sind mit verschiedenen Blockschaltungen verbunden,
fUr deren Betrieb keine bestimmten Bit erforderlich sind. Beispielsweise ist das Befehlskabei RD mit der Datenleseschaltung 12 verbunden, ohne
daß eines der Bit 20-16, die auf diesem Kabel erscheinen, zur Datenleseschaltung
Übertragen wird. Der Grund dafUr besteht darin, daß bei der Ausführung
eines Lesebefehls (RD) die Datenleseschaltung in Tätigkeit treten muß. Sie
arbeitet jedoch, ohne daß bestimmte Bit in dem Befehl erforderlich sind. Wenn daher ein Lesebefehl ausgeführt wird, sind die Datenleseschaltung 12
und der Indexaddierer 32 in Tätigkeit, da sie durch das Befehlskabei RD erregt
wurden. Wie in den Figuren 1 und 2 gezeigt, werden die fünf auf dem
Befehlskabel erscheinenden Bit zur Maskiertcholtung 19, dem Regiererleser
009810/1393 bad orio.nal
■ U-99286 *
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 fünf individuellen 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 von dem Programmadressenregister
36 gesteuert. Dieses Register enthält 16 Stufen, und die darin enthaltene Binärzahl
gibt die Adresse des nächsten Befehls an. Das Programmadressenregister legt nacheinander Adressen mit 16 ßit an das Kabel 14, das an die Befehlsieseschaitung
11 eingeschalter 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 durch die Inkremenr-Schalrung 37 kontinuierlich weitergeschaltet· Die
zum Befehlsregister 16 übertragenen Befehisworte werden 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 Bit auf dem Kabel 37 erscheint und das Befehlskabei XFR das
Programmadressenregister erregt, wird das Wirt mit 16 Bit auf dem Kabel 37
im Programmadressenregister gespeichert. Diese Adresse wird dann über das
Kabel 14 zur Befehlsleseschaitung 11 Übertragen, und dann wird diese Adresse
im Programmadressenregister zur Gewinnung der Adressen nachfolgender Befehle weitergeschaltet.
Der Registerleser 34 wird bei vier Befehlen erregt und liest das Wort mit 23 Bit
ab, das in einem der Register A, B und C gespeichert ist. Die Bit 22-0 werden Über das Kabel 21 zum Indexaddierer 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 Bit auf der Schreibsammei leitung in den Speicher eingeschrieben. Wenn stattdessen
der Indexaddierer 32 «rragt ist, wird das Wort mit 23 Bit im Indexoddierer zu
den 16 Bit In der Konstanten des auf dem Kabel 31 erscheinenden Befehlswort·«
0 O'ffS W/ 1393 BAD0R.G.NAL
addiert« Die volle, durch den Indexaddierer abgeleitete Summe von 23 Bit
wird an das Kabel 38 gegeben, wenn der Indexaddierer durch das Befehlskabel RTR erregt wird, wie wetter unten beschrieben ist. Wenn der Indexaddierer von einem der Befehlskabel RD, XFR oder WRT erregt wird, statt
durch das an das Kabel 38 gegebene Wort mit vollen 23 Bit, werden nur "eine
ersten 16 Bit an das Kabel 33 angelegt.
Ein Wort mit 23 Bit wird Über das Kabel 18 oder 38 der Maskierschultung
zugeführt. Wenn bei einem Lesebefehl (RD) oder Regisfer-zu-Register-Befehl
(RTR) dat Bit 20 eine 1 ist, wird das an die Maskierschaltung gegebend Wort
mit 23 Bit durch das im Maskierregister 39 enthaltene Maskierwort maskiert. Das sich ergebende maskierte Wort erscheint auf dem Kabel 40 und wird on
den Reglsferwähler 35 gegeben. 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 Bit auf dem Kabel 18 oder 38 direkt durch die
Mask ie schaltung zum Regiiterwähler Übertragen* Der Registerwähler gibt
das Wort auf dem Kabel 40 in Abhängigkeit vorn Wert der Bit \7 und 16
auf dem Lesebefehlskabel oder dem Register-zu-Register-Befehlskabe! entweder zu dem Maskierregister oder einem der Register A, B und C.
Die Betriebsweise der Datenbearbetrungsanloge läßt sich am besten durch
•ine getrennte Betrachtung jeder der fünf möglichen Befehle verstehen. Wie
In Figur 4 gezeigt, wird ein Lesebefehl angegeben, wenn die Bit 22 und 21
beide 0 sind. Da* ist symbolisch durch die Angabe 55, 5T im Dekoder-Verteiler 30 dargestellt. Wenn beide Bit 22 und 21 0 sind, haben die Bit Ti
und 5T beide den Wert 1 und das Befehlskode! RD ist erregt. Die Bit 20-16
werden über das Befehlskabel zu den verschiedenen Einheiten Übertragen,
die si« benötigen. Das Bit 20 wird zur Maskierschaltung 19 gegeben und
steuert, wie fn Figur 4 gezeigt, die Maskieroperation nur dann, wenn es
•ine 1 ist. Die Bit 19 und 18 werden zum Registerleser 34 gegeben. Diese
beiden Bit bezeichnen eines von vier Registern, nämlich das Maskierregister
009810/1393 BADORIQ1NM.
Z H99286
oder die Register A, B oder C. Es istkeine Verbindung vom Masklerregister
zum Registerleser vorhanden, so daß, wenn das MaskierregUter durch die
Bit 19 und 18 bestimmt wird, der Registerieser nicht arbeitet· Wenn eines
der Register A, B oder C angegeben wird, wird sein Inhalt Über das Kabel
21 zum Indexaddierer 32 gegeben. Der Indexaddierer wird durch das Befehls -"kabel RD erregt und addiert das Wort mit 23 Bit von dem angegebenen Register
zu der Konstanten mit 16 Bit in dem Befehlswort, das bei vier von den fünf
Befehlen auf dem Kabel 31 erscheint. Das normalerweise geöffnete Tor 52 ist nur bei Ausführung eines Verschiebebefehls gesperrt. Bei Ausführung einer
der vier anderen Befehle ist das Tor 52 geöffnet und Übertragt die Konstante
mit 16 Bit des Befehlswortes zum Indexaddierer. Wahrend dieses "Index"-Schrittes wird auf diese Weise eine Summe mit 23 Bit Im Indexaddierer abgeleitet. Es werden jedoch nur die ersten 16 Bit dieser Summe vom Indexaddierer
zum Kabel 33 Übertragen. Wenn der Indexaddierer durch das Lesebefehlskabel
erregt wird, gibt er seinen inhalt nicht zur Maskierschaltung Über das Kabel
38.
Das Wort mit 16 Bit 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 Bit auf dem Kabel 20
hat auch keinen Einfluß auf die Schreibad reihenschaltung 13, well diese
Einheit bei der Ausführung eines Lesebefehls ebenfalls nicht erregt !it. Die
Datenieseschaltung 12 wird jedoch durch da: Lesebefehiskabel erregt. Sie
steuert das Ablesen des Wortes ou$ der SpeichersteHe im Speicher 10, die
durch die Adresse mil 16 Bit auf den Kabeln 33 und 17 dargestellt igt, so wie
die Übertragung des Wortes über das Kabeü IS zur Masklerschaltuna,· Wenn
das Bit 20 eine 1 ist, wird das Wort durch den Inhalt des Maskierregiiren
maskiert, und das sich ergebende maskiert® Wort erschsint ssif dem Kabel 40«
Wenn das Bit 20 auf dem Lesebefshlskcsbel eine Q ist, wtsti des Wort nicht
maskiert, und dos gesamte Wort isi der abgegebenen Adresse erscheint auf dem
Kabel 40. Der Regliterwühler 35 gibt das Wort dann entweder zum Messkler·*
Ϊ3 9 3
BAD
register oder einem der Register A, B und C. Welches dieser vier Register
gewühlt wird, hangt vom Wert der Bit 17 und 16 ab, die über das Lesebefehlskabel zum Registerwähier übertragen werden.
Man Beachte, daß in Figur 4 die Bit 19 und 18 in dem Befehlswort ein "Indexregister" bezeichnen. Diese Bit bezeichnen tatsächlich die Register A, B oder
C oder das Maskierregister, wenn der Registerleser nicht arbeiten soll. Die
Bezeichnung "Indexregister" wird benutzt, weil der Inhalt des angegebenen Registers zum Indexaddierer gegeben wird, um während des Index-Schrittes
zu der Konstanten des Befehlswortes addiert zu werden· Die Bit 17 und 16
sind bezeichnet mit "Bestimmungsregister", da diese Bit dasjenige der vier Register bezeichnen, das der Bestimmungsort des aus dem Speicher abgelesenen Wortes ist.
Immer dann, wenn die Maskierung·entweder bei einem Lesebefehl oder, wie
weiter unten gezeigt wird, bei einem Reglster-zu-RegIster-Befehl erforderlich ist, muß zuerst ein anderer Lesebefehl ausgeführt werden. Es muß nämlich
zuerst die Maske, die bei der Ausfuhrung des nachfolgenden Befehls benutzt
wird, im Maskierregisfer gespeichert werden. Ein Lesebefehl ist erforderlich,
um die Maske aus dem Speicher 10 in das Maskierregister einzugeben. Das
Befehlswort wUrde O-Werte in den Bit 22 und 21 enthalten, um den Lesebefehl
anzugebsn. Das Sit 20 wäre ebenfalls eine 0, da, wenn das vollständige Maskierworf sich im Register befindet, dieses bei der Eingabe in den Registerwähler nicht maskiert werden soll. Die Bit 17 und 16 steuern den Registerwähler, so daß die Maske zum Maskierregister gegeben wird. Die Bit 19 und
13 bezeichnen dasjenige der Register A, B und C, dessen Inhalt nach Addition
zur Konsfanten des Befehlswortes die Adresse der Speicherstelle Im Speicher
ergibt, welche das Masklerwort enthält.
Man beachte, daß die Ausfuhrung eines Lesebefehls ohne Bezugnahme auf die
bestimmten Betriebszeitpunkte der verschiedenen beteiligten Einheiten beschrieben worden ist. Es sind nur relative Zeitpunkte angegeben worden.
0 0 9 810/1393
40 H99286 w
Beispielsweise arbeitet der Registerleser 34 vor dem Registerwähler 35» Die
zeitliche Steuerung der verschiedenen Einheiten der Anlage kann mit Hilfe
eines Zeitgeber-Netzwerkes erfolgen. Solche Netzwerke sind bekannt. Die Zeichnung ist 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 /nlagen mehr als fünf individuelle Grundbefehle ausfuhren. FUr das Verständnis der Erfindung genügt jedoch die Darstellung des vereinfachten Systems, wobei nur die Elemente im einzelnen gezeigt sind, die zur praktischen Verwirklichung der Erfindung nötig sind.
Aus Figur 4 ergibt sich, daß der zweite Befehl, ein Schreibbefehl, ausgeführt wird, wenn die Bit 22-20 den Kode 010. Zu diesem Zeitpunkt ist das
Befehlskabel WRT erregt. Das ist symbolisch durch die Ausdrücke H, 21, 50~
innerhalb des Dekoder-Verteilers 30 gezeigt. Man beachte, daß für Schreibbefehle keine Maskiermöglichkeit verfügbar ist. Das Bit 20, das bei Lesebefehlen
und RegIster-zu-Register-Befehlen die Maskierschaltung 19 steuert, wird stattdessen benutzt, um zwischen Schreib- und Jbertragungsbefehlen zu unterscheiden, fUr die beide keines Maskiermöglichkeit verfügbar ist. Die auf
dem Befehlskabel WRT erscheinenden Bit sind 19-16.
Bei einem Schreibbefehl arbeitet der Registerleser 34 zweimal nacheinander .
Zuerst lassen die Bit 19 und 18 den Registerleser den inhalt eines der Register
A, B und C ablesen. Das Wort mit 23 Bit wird sowohl zum Indexaddterer 32 als
auch zum Speicher 10 gegeben. Das auf der 5chreibsammeIleitung 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 Schaltang bei der Ausfuhrung eines Schreibbefehls erregt, aber die Schreibodressenschaltung wird erst erregt, wenn der
Registerleser 34 bei der Ausführung des Befehls zum zweitenmal in Tätigkeit tritt. Der Indexaddierer 32 wird jedoch jetzt erregt, und das von dem Register -leser 34 abgelesene Wort wird zu der Konstanten des Befehlswortes addiert.
009810/1393 BAD OWO.NAL
^ K99286 w
Nur die ersten 16 Bit der Summe werden zum abel 33 gegeben* Das volle
Wort mit 23 Bit, das im tndexaddierer abgeleitet worden ist, wird nicht zum
Kabel 38 gegeben, wenn der Indexaddierer durch das Befehlskabel WRT
erregt wird. Die 16 Bit 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 Befehlskabei V/RT nicht erregt, ist. Das Wort mit 16 Bit auf
dem Kabel 20 wird jedoch in der Schreibadressenschal rung 13 gespeichert. Diese Schaltung wird durch das Befehlskabei WRT während der Ausfuhrung
eines Schreibbefehls zu einem Zeitpunkt erregt, nachdem der Indexaddierer
seine Tätigkeit beendet hat« Die in der Schreibadressenschaltung 13 gespeicherten 16 Bit stellen die Adresse im Speicher dar, in welche das anschließend abzuleitende Wort eingeschrieben wird.
Der Registerleser 34 arbeitet dann ein zweitesmal und liest das Wort mit 23 Bit
aus dem bestimmten der Register A, B und C ab, welches durch die Bit 17 und
16 bezeichnet wird. Das Wort mit 23 Bit wird wiederum sowohl zum Speicher
10 als auch zum Indexaddierer 32 gegeben. Der Indeeaddlerer ist jedoch zu
diesem Zeitpunkt nicht durch das Sefehlskabel WRT erregt. Er ist nur während
der ersten Operation des Registerlesers 34 erregt. Das Wort mit 23 Bit auf der Schreibsanmelleitung 9 wird an derjenigen Stelle in den Speicher 10 eingeschrieben, welche durch die in der Schreibadressenschal rung 13 gespeicherte
Adresse angegeben wird.
Entsprechend Fig. geben die Bit 19 und 18 bei einem Schreibbefehl ein "Indexregister" an, und die Bit 17 und 16 ein "Quellenregister". Der Inhalt des angegebenen Indexregisters wird zuerst zu der Konstanten (Bit 15-0) des Befehlswortes
addiert, um die Adresse im Speicher zu bestimmen, in welche das Wort einzuschreiben ist» Dann werden die 8it 17 und 16 zur Feststellung des Registers
benutzt, das die Quelle des Wortes mit 23 Bit ist, weiches in den Speieher
en der früher festgestellten Stelle eingeschrieben werden soll· Die Bit 19 und
können das Maskierregister 39 bezeichnen, in welchem Falle der Registerleser
00981 C/-393 ßAD
U99286" *
34 nicht arbeitet und die zur Schreibadressenschaltung 13 über das Kabel
Übertragene Adresse lediglich die Konstante des Befehlswortes ist. Die Bit
und 16 können nur eines der Register A, B und C bezeichhnsn. Be! einem
Schreibbefehl ist eine Angabe des Masklerregisters 39 durch die Bit 17 und
16 nicht möglich, da, wenn dies der Fall wäre, der Registerleser 34 nicht arbeitet und keine Bit auf der Schreibsammelleitung erscheinen, die in den
Speicher an der vorher festgestellten Adresse einzuschreiben sind.
Der dritte Befehl, ein Jbertragungsbefehl, wird durch die Folge 011 In den
Bit 22-20 de$ Befehlswortes dargestellt. Wie gesagt, ist bei einem Übertragungsbefehl
keine Maskiermttglichkeit gegeben, und das Bit 20 wird zur Unterscheidung
zwischen Schreib- und Ibertragungsbefehien benutzt. DU Bit
und 18 geben ein indexregister an, und die Bit 17 und 16 werden nicht benutzt.
Das Befehlskabel XFR ist erregt, und die Bit 19 und 18 werden Über
das Kabel zum Registerleser 34 übertragen. Diese Bit 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 Bit auf dem Kabel 21
wird sowohl zum Speicher 10 als auch zum Indexaddierer 32 gegeben. Die
Schreibadressenschaifung 13 ist bei einem Jbertragungsbefehl nicht erregt,
und die Bit auf der Schreibeammei leitung haben keinen Einfluß auf dtn Speicher«
Der Indexoddierer ist jedoch erregt, und das vom Registerleaer 34 abg·-
lesone Y**ort wird zu dor'Konstanten des Befehlswortes im Indexaddierer
addiert. Die Summe v/irci nicht an das Kabel 38 gegeben. Stattdessen werden
nur die ersten 16 Bit on das Kabel 33 angelegt. Die Bit auf dem Kabel 33 beeinflussen weder die Datenleseschaltung 12 noch die Schrelbodressenschaltung
13, die bei der Ausfuhrung eines Jb&rtragungshefehls nicht erregt
sind. Die 16 Bit auf den Kabeln 33 und 37 v/erden jedoch in das bei einem
Jbertragungsbefehl erregie Programm dressenregtster 26 eingsscl;rieben. Diese
16 Bit werden über des Kabel 14 zur Befehlsleseschaitung 11 gegeben, und dos
nächste vom Speicher 10 zum Befehlsregister 16 Über das Kabel 15 Übertragene
Befehlswort wird durch diese Adresse mit 16 Bit bestimmte Die Adresse wird Im
009 8 1G/139 3
BAD OBiGiNAL
n H99286
Progranmadressenregister 36 gespeichert, und diese Adresse wird jetzt zur
Ableitung nachfolgender Adressen von Befehlsworten weitergeschaltet, bis ein weiterer überrragungsbdfehl ausgeführt wird. Das Befehlswort, das einen
Übertragungsbefehl steuert, weist keine Bit 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 A, B und C in den Speicher
einzuschreiben ist. Keiner dieser Fälle liegt jedoch bei der Ausfuhrung eines
Jbertragungsbefehls vor. Es werden nur die Bit 1? und 18 benötigt, die ein
indexregister angeben. Bei einem index-Vorgang handelt es sich allgemein
darum, die Konstante eines Befehlswortes mit Hilfe von Daten, die vorher in einem der Register A, B und C gespeichert worden sind, (durch Addition) zu
verändern. Ein Index-Vorgang ist für alle Befehle (mit Ausnahme des Verschiebebefehls)
verfügbar, und wenn er nicht erforderlich ist, geben die Bit und 18 lediglich das Maskierregister an, in welchem Falle der Registerleser
nicht arbeitet.
Die vierte Befehlsart, die bei dem System ausgeführt werden kann, ist ein
Register-zu-Register-Be£ehi. Dieser Befehl wird durch den Kode 10 in den
Bit 22 und 21 angegeben. VvMe bei einem Lesebefehl ist eine Maskiermöglichkeit gegeben, die durch den Wert des Bit 20 gesteuert wird. Der Registerleser
34 Hest die 23 Bit in dem durch die Bit 19 und 18 angegebenen Register. Das
Wort wird zum indexaddiersr gegeben, wo es zu der Konstanten des Befehlswortes
addiert wird. Bei der Ausfuhrung eines Register-zu-Register-Befehls
steuert das Befehiskabel RTR den Indexaddierer 32 derart, daß er die Summe
mit 23 Bit auf das Kabel 38 anstelle der ersten 16 Bit der Summe auf das
Kabel 33 gibt. Die Summe mit 23 Bit löuft durch die Maskierschaltung 19
und wird nue dann durch den Inhalt des MaskierregIsters 39 maskiert, wenn
der Wert des Bit 20 im Befehlswort eine 1 ist. Das / AusgangesignaI der Maskierschaltung
19 wird zum Reyisterwähler 35 gegeben, der dann das Wort
009810/1393 BAD
entweder in aas Maskierregister 39 oder eines der Register A, B und C überträgt, und zwar in Abhängigkeit vorn Wert der Bit 17 und 16, die bei einem
Reg isrer-zu-Reg ister-Befehl ein Bestimmungsregister angeben. Der Zweck des
Register-zu-Register-Befehls besteht darin, die übertragung des im Register
A, ß oder C gespeicherten Wortes mit 23 Bit entweder zum Maskierreg ister
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
ursprungliche Inhalt des Indexregisters läßt sich ändern, wenn die Konstante
des Befehlswortes nicht die Zahl 0 ist. Außerdem kann der ursprungliche
Inhalt des Inddx-Registers verändert werden, wenn die Maskierung befohlen
wird.
Man beachte, daß, wenn die Bit 19 und 18 das Maskierregister 39 angeben,
das zur Maskierschaltung Über das Kabel 38 Übertragene Wort lediglich die
Konstante mit 16 Bit des Befehlswortes ist. Normalerweise wird ein Wort mit
23 Bit Über das Kabel 38 zur Maskierschaltung übertragen, aber wenn die Bit
und 18 das Maskierregister angeben, arbeiter der Registerleser nicht, und nur die 16 Bit des konstanten Abschnittes des Befehlswortes werden Über den Indexaddierer und die Maskierschaltung zu dem angegebenen Bestimmungsregistsr
übertragen. Diese 16 Bit können durch den Inhalt der ersten 16 Bit des Maskierregisters 39 maskiert werden, wenn der Maskiervorgang befohlen wird,
um ein Wort mit 23 Bit abzuleiten. Wenn eine Maskierung nicht befohlen
wird, erscheint nur ein Wort mit 16 Bit auf dem Kabel 40, das entweder im
Maskierregister 39 oder einem der Register A, B und C einzuspeichern ist. Die sieben Bit mit der höchsten Ziffemsteiie im Register bleiben unverändert.
Der fünfte Befehl, der in der Anlage ausgeführt werden kann, ist eine Verschiebung. Wenn der Kode 110 in den Bit-Positionen 22-20 des Befehlsregisters
erscheint, wird das Befehlskabel SFT erregt. Bei der Ausfuhrung eines Verschiebebefehls wird der Index-Vorgang nicht benötigt. Aus diesem Grund wird
der Indexaddierer 32 durch das Befehlskabel SFT nicht erregt. Die Erregung
des BefehUkabels sperrt das Tor 52 und öffnet das Tor 53. Die Bit 15-0 in der
0 0 9 810/1393 BAD ORIGINAL
H99286 *
Konstanten des Befehlswortes werden nicht mehr durch das Tor 52 zum
Indexaddierer Übertragen. Stattdessen werden die Bit 15-11 über das Tor 53
zur Schiebesteuerschaltung 51 gegeben. Diese 5 Bit stellen in binärer Form
die Große der erforderlichen Verschiebung dar· (Normalerweise stellen die Bit 15-0 eines Befehlswortes eine Konstante dar. Wie Figur 4 zeigt, geben
jedoch bei der Ausführung eines Verschiebebefehls fünf dieser Bit Steuer-Informationen an. Der Rest der Konstanten wird nicht benutzt.)
Die Bit 17 und 16 auf dem Befehlskabel SFT werden zum Registerwähler 35
Übertragen. Wenn die gleichen Bit bei der Ausführung entweder eines Lesebefehls oder eines Register-zu-Reglster-Befehls zum Reglsterwähler übertragen
werden, steuert dieser das Einschreiben ddt Wortes auf dem Kabel 40 in das
entsprechende Register. Wenn jedoch das Befehlskabel SFT erregt ist, wird, obwohl der Reglsterwähler eines der vier Register erregt, kein Wort zum
Kabel 40 gegeben, um in eines dieser Register eingeschrieben zu werden. Es
wird lediglich eines der vier Register erregt, und statt daß ein Wort über den
Registerwähler zu diesem Register übertragen wird, wird das sich bereits in dem Register befindende Wort entsprechend den Ausgangssignalen der Schtebesteuerschaltung 51 auf dem Kabel 56 verschoben.
Wie Figur 4 zeigt, wird das Bit 19 zur Schiebesteuerschalhmg 51 gegeben und
gibt dieser Schaltung an, ob die Verschiebung nach linkt oder rechts erfolgen
soll· Das Bit 18 wird ebenfalls zur Schiebesteuerschaltung übertragen und
gibt der Schaltung die Art der auszuführenden Operation an, d.h., Verschieben oder Rotieren. Die Bit 15-11 in der Konstanten des Befehlswortes geben
die Grüße der Verschiebung an· Die entsprechenden Steuersignale werden
an das Kabel 56 angelegt und den vier Registern zugeführt. Die Verschiebeoperotion findet jedoch nur in dem Register statt, das durch den Register-Wähler 35 erregt ist.
G 0 9 8 1 C /■ 3 3 3 BAD ORIQiNAt
Wie oben beschrieben, muß häufig ein Wort aus dem Speicher abgelesen ,
maskiert und in einem der vier Register der Anlage gespeichert werden·
Danach muß das Wort im Register nach recht« verschoben werden. Um die
Ausführung dieser beiden Befehle zu steuern, sind Üblicherweise zwei Befehlsworte erforderlich. Der Grund dafür ist, daß die Zahl von 23 Bit eines
Befehlswortes nicht ausreicht, um sowohl einen Lesebefehl als auch einen
Verschiebebefehl anzugeben. DerMaskler-Lesebefehl benötigt alle 23 Bit
im Befehlswort, und der Verschiebebefehl 12 Bit. Es wöre also ein Befehlswort mit 35 Bit erforderlich, um beide Befehle anzugeben. Da die Befehlsworte nur 23 Bit enthalten, sind zwei aufeinanderfolgende Befehle nötig.
Erfindungsgemäß wird jedoch ein kombinierter Lese-Verschiebebefehl durch
ein einziges Befehlswort gesteuert. Der kombinierte Befehl wird ausgeführt,
wenn dta Befehlskabel RD-SFT erregt ist.
Wenn der Kode 111 In den Bit 22-20 des Befehlswortes im Register 16 erscheint,
wird das Befehlskabel RD-SFT erregt. Die Bit 20-16 sind In diesem Kabel vorhanden, das mit dem Befehltkabel RD verbunden Ist. Die Bit 20-16 steuern
auf Übliche Weise einet maskierte Leseoperation. Das Tor 52 Ist geöffnet und
der Index-Vorgang findet wie üblich statt. Eine Adresse wird zum Speicher
Übertragen, und ein Wort aus dem Speicher Über die Maskierschalrune zum
Registerwähler gegeben. Das Bit 20 ist eine 1 und veranlaßt, doü die Maskierschaltung 19 das abgelesene Wort entsprechend dom Maskierwort im Register 39 maskiert. Die Bit 17 und 16 steuern den Reglsterwuhler 35 derart,
daß das maskierte Wort an eines der vier Register übertragen wird.
Das Bfcfeh Iskabei RD-SFT erregt außerdem den Umsetzer 54 und die Lese-Verschiebe-Steuerschaltung 55. Der Umsetzer 54 prüft das Maskier register
und gibt Bit-Werte an seine fünf Ausgangsadern, die In binärer Form die
Zahl von Positionen darstellen , um die das gerade In eines der Register gegebene Wort zu verschieben ist. Wenn beispielsweise das Bit 4 in sfer Maske
als erstes eine 1 enthält, ist das Autgangssif nal des Umsetzen 54 00100.
00981 C/'333 rtnifMK!i,
Die fünf Ausgangladern des Umsetzers sind Über das Kabel 60 mit dem
fünf Eingangsadern der Schiebesteuerschaltung 51 verbunden, deren Bit-Werte
die Größe der erforderlichen Verschiebung darstellen. Die Lese-Verschiebe-Steuerschaltung 55 weist zwei Ausgangladern auf, die mit den zwei Eingangsadern der Schiebesteuerschaltung 51 verbunden sind, welche die Richtung
und Art der erforderlichen Verschiebung angeben (Bit 1? und 18 in einem Verschiebebefehl). Die zwei von der Lese-Verschiebe-Steuerschaltung 55 zur
Schiebesteuerschaltung 51 übertragenen Bit geban immer eine Verschiebeoperation und die Richtung rechts an. Diese beiden Bit laufen über die Verzögerungsschaltung 58, damit die SchlebestsuertchalfungrnTcht arbeitet, bevordas aus dem Speicher abgelesene Wort in dem durch die Bit 17 und 16 angegebenen Register gespeichert ist. Der Schiebesteuerschaltung 51 wird die Art
der erforderlichen Verschiebung (Verschieben im Gegensatz zu Rotieren), die Richtung (rechts) und die Größe der Verschiebung angegeben. Die an das
Kabel 56 angelegten Kommandosignale werden zu den vier Registern gegeben. Es ist jedoch nur eines dieser Register durch den Registerwäbler 35 erregt
worden, nämlich das Register, in weiches das gerade abgelesene Wort einge-ä
schrieben worden ist. Dieses Wort dann, wie gewünscht, verschoben.
Wie Figur 4 zeigt, stellen mit Ausnahme des Befehlskode 111 die verschiedenen
Bit des Lese-Verschiebe-Befehlswortes genau das gleiche dar, was sie auch
bei einem maskierten Lesebefehl darstellen. Das Befehlswort selbst führt keine
zusätzlichen Informationen. Der neue Befehlskode erregt jedoch ein neues Befehlskabel, das automatisch die Verschiebung des in eines der Register gegebenen Wortes steuert. In dem Befehlswort selbst muß jedoch keine Verschiebe-lnformation Übertragen werden. Bei der Ausfuhrung des kombinierten
Lese-Verschiebebefehls ist die Richtung und Art der Verschiebung immer die
gleich·. Das speziell« Register wird durch die Bit 17 und 16 angegeben, da
daß Register, dessen Inhalt zu verschieben ist, immer dasjenige Register ist, in welches ein Wort gerade eingeschrieben worden ist. Schließlich wird auch
dit Groß« der Verschiebung in dem Befehlswort nicht benötigt, da diese durch
di« im Maskierregister 39 gespeichert· Mask« selbst ang«g*b«n wird.
009810/1393 bad original
H99286
Ein spezieller Umsetzer, der in der Datenbearbeitungsanlage nach den
Figuren 1 und 2 benutzt werden kann, isti m einzelnen in Figur 3 gezeigt.
Die 23 Bit im Maskierregister erscheinen auf dem mit dem Umsetzer 54 verbundenen Kabel 75, und zwar ein Bit auf jeder Ader. Mit Ausnahme der
Ader FUr das Bit O, ist jede Ader mit dem Eingang eines normalerweise geöffneten Tores verbunden, beispielsweise den Toren 61 und 62. Die Betriebsweise der Schaltung läßt sich am besten unter Betrachtung eines bestimmten
Beispieles verstehen· Es sei angenommen, daß die tm Register 39 gespeicherte
Maske das Wort 00...111100 ist. Positive Potentiale stellen 1-Werte und
negative Potentiale 0-Werte dar. Das erste Bit (Bit 0) in der Maske ist eine
0 und negatives Potential erscheint am Steueranschluß des Tores 61. Folglich
bleibt dieses Tor geöffnet und der Wert des Bit 1 der Maske wird Über dieses
Tor zum Tor 71 und zur Ader 76 übertragen. Das Bit 1 ist ebenfalls eine 0 und
das negative Potential auf der Ader 76 betätigt das ODER-Tor 81 nicht« An
beiden Eingängen des ODER-Tores 71 liegt negatives Potential, so daß dessen Ausgangsspannung ebenfalls negativ ist. (Jedes der ODER-Tore liefert negative
Ausgangsspannung, wenn nicht wenigstens einer seiner Eingänge positiv ist·)
Das Tor 62 ist geöffnet, da das ODER-Tor 71 nicht erregt ist, und das Bit 2
wird Ober dieses Tor zur Ader 77 und zu einem der Eingänge des ODER-Tores
Übertragen. Das Bit 2 ist eine 1 und day positive Potential auf der Ader 77 erregt das ODER-Tor 82. Außerdem wird dieses Tor durch das positive Potential
am Eingang des ODER-Tores 72 erregt. Das positive Potential am Ausgang des ODER-Tores 72 sperrt das Tor 73 und öffnet stattdessen das Tor 63. Das Tor 73
wiederum steuert des Tor 74. Alle den Bit 2-21 zugeordneten ODER-Tore bewirken eine Sperrung der entsprechenden Steuertore für die übertragung der
restlichen Bit des Maskierwortes zu den ODER-Toren 81-85. Positives Potential erscheint auf der Ader Ή, und nur das ODER-Tor 82 von den Toren 81 bis 85
tritt in Tätigkeit. Das Ausgangssignal des ODER-Tores 82 hat den Binärwert 2.
Der Ausgang dieses Tores ist an einen der Eingänge des UND-Tores 92 angeschaltet. Dos Erregungssignal auf dem Befehlskabel RD-SFT liegt an einem
der Eingang· jedes der Tore 91-95. Es Ist jedoch nur das Tor 92 erregt, da nur
Ό0981Ό/1393
BAD
J5 U99286. w
das diesem Tor zugeordnete ODER-Tor betätigt worden ist. Der Ausgang des
Tores 92 liegt auf hohem Potential und die Ausgänge der Tore 91 und 93-95 auf niedrigem Potential. Folglich wird der Binärwert 00010 Über das Kabel 60
zur Schiebesteuerschaltung 51 Übertragen, um die Verschiebung des Wortes in
dem angegebenen Register um zwei Positionen zu steuern. (Der auf dem Befehlskabel RD-SFT zum Umsetzer 54 Übertragene Erregungsimpuis ist kurz. Der
ursprungliche Inhalt des Maskierreg is te π bestimmt das Ausganguignal des Umsetzen. Auch wenn das aut dem Speicher abgelesene Wort in das Maskierregister
selbst eingeschrieben wird, steuert die ursprüngliche Maske in dem Register das Ausgangssignal des Umsetzen. Zu dem Zeitpunkt, in dem das neue Wort
in das Maskierregister eingeschrieben wird, ist der auf dem Befehlskabel 0/
RD-SFT zum Umsetzer 54 gegebene Impuls beendet. Die bereits zur Schiebesteuerschaltung 51 Übertragene Zahl 00010 veranlaßt, daß diese Schaltung das gerade
im Maskterregister gespeicherte Wort verschiebt, sobald die beiden Bit von der
Lese-Venchiebe-Sreuenchaitung 55 über die Verzägerungsschaltung 58 Übertragen sind.)
Als weiteres Beispiel sei angenommen, daß die im Register 3? enthaltene Maske
00... 111110000 Ist. Die Ausgänge aller Tore 61-63 liegen auf niedrigem
Potential und keines der CDER-Tore 71-73 ist erregt. Der Ausgang des Tores 64 liegt hoch, und dot ODER-Tor 74 und alle ODER-Tore, die hohentelligeren Bit
zugeordnet sind, sind erregt. Folglich sind die den Bit 22-5 zugeordneten
Steuertore gesperrt. Das einzige Steuertor, das eine positive Ausgangsspannung aufweist, ist das Tor 64. Der Ausgang des Tores 64 ist mit einem der Eingänge
des OD ER-Tores 63 verbunden, und wenn der Erregungsimpuls auf dem Befehlskobei RD-SFT an den Umsetzer angelegt wird, wird die Binärzahl 00100 zur
Schiebesteuerschalfung 51 übertragen.
Einige der Steuertor-Ausgangsadern sind mit mehr als einem ODER-Tor verbunden. Beispielswese ist der Ausgang des dem Bit 21 zugeordneten Steuertores
mit einem Eingang jedes der ODER-Tore 85, 83 und 81 verbunden, und wenn
das erst« Bit in der Maske, das eine 1 enthält, das Bit 21 ist, wird die Bintir-
0 0 9 8 10/1393 BAD ORfGINAL
H99286
zahl 10101 zur Schiebesteuerschaltung 51 gegeben. Man beachte, daß die
Ader, welche das Bit 0 der Maske führt, nicht an eines der ODER-Tore 81-85
angeschaltet ist. Wenn das erste Bit in der Maske eine 1 ist, soll das gerade in dem Register gespeicherte Wort nicht verschoben werden. Das ODER-Tor 71
und alle entsprechenden, höhernummerierten ODER-Tore sind betätigt, und keines der dem Tor al entsprechenden Steuertore sowie keines der ODER-Tor·
81-85 ist erregt. Tatsächlich ist es, wenn das erste Bit der Maske eine 1 ist, Überhaupt nicht erforderlich, den Lese-Verschiebebefehl zu benutzen. Der
normale Lesebefehl reicht aus, da keine Verschiebeoperation erforderlich Ut.
Der Aufbau des Umsetzers ist leicht zu übersehen. Das erste Bit der Maske,
das eine 1 ist, sperrt alle höhernummerierten Steuertore, und die höhemummerierten Bit, können, auch wenn sie den Wert 1 haben, die Operation der
ODER-Tore 81-85 nicht steuern. Auf analoge Weise werden diese Oder-Tore
auch nicht durch Bit niedrigerer Stelienzahl gesteuert, da diese Bit atte
den Wer! 0 haben.
Die oben beschriebene Anordnung stellt lediglich ein Ausfuhrungsbeispiel für
die Grundgedanken der Erfindung dar. Beispielsweise kann ein anderer Operationskode vorgesehen sein, um die Ausfuhrung sowohl von Lese- als auch von
Verschiebebefehlen selbst dann zu steuern, wenn eine Maskierung nicht erforderlich ist. Der Verschiebebefehl läßt sich auch mit anderen Befehlen als
dem Lesebefehl kombinieren, beispielsweise mit einem Register-zu-Reglster-Befehl. In Anlagen, bei denen die Länge eines Befehlswortes größer ist als
bei einem Daterwiort, besteht die Möglichkeit, die zu verwendende Maske In
dem Befehlswort selbst zu übertragen, erst das Maskierregister einzustellen
und dann unter Verwendung dar vorher hergestellten Maske und der von Ihr
abgeleiteten Schi&bcrfcucrinfomatlon die erforderliche Datenbearbeitungsoperation durchzuführen.
00981 C/1393 BAD
Claims (2)
- Down !ng-Hau 3-1H99286Patentansprüche1 · Datenbearbeitungsanlage miteinem Speicher für Befehlsworte und Daten, wobei jedes Befehlswort ein Operationsfeld und ein konstantes Feld ausweist, einer an den Speicher angestalteten Steueranordnung zur Gewinnung und Ausfuhrung jedes Befehlswortes,
einem an den Speicher angeschalteten ersten Register, einer auf ein gewonnenes Befehlswort ansprechenden logischen Schaltung zur Maskierung eines Wortes, dessen Adresse durch das konstante Feld zusammen mit dem Inhalt des ersten Registers tingegeben wird, und mit einer Vielzahl von Registern, von denen wenigstens eines das maskierte Wort steuert,dadurch gekennzeichnet, daß die Steueranordnung einen Detektor (54) aufweist, der die Positionsidentität einer aktiven Grenzzeile im ersten Register (39) feststellt, und ferner,Schaltungen (55, 56, 58), die auf die angezeigte Positionsidentität ansprechen und den Inhalt desjenigen Registers der Vielzahl von Registern (A, B, C) verschieben, welches durch das konstante Feld des gleichen, gewonnenen Befehlswortes angegeben wird. - 2. Datenbearbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß der Detektor (54) die niedrigststellige Bit-Position des Inhaltes des ersten Reg isters (39) festste 111.BAD009810/1393
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US40227164A | 1964-10-07 | 1964-10-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE1499286A1 true DE1499286A1 (de) | 1970-03-05 |
DE1499286B2 DE1499286B2 (de) | 1971-11-25 |
Family
ID=23591232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19651499286 Withdrawn DE1499286B2 (de) | 1964-10-07 | 1965-10-06 | Datenbearbeitungsanlage |
Country Status (6)
Country | Link |
---|---|
US (1) | US3430202A (de) |
BE (1) | BE670568A (de) |
DE (1) | DE1499286B2 (de) |
GB (1) | GB1119002A (de) |
NL (1) | NL143707B (de) |
SE (1) | SE316934B (de) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1245441A (en) * | 1968-08-27 | 1971-09-08 | Int Computers Ltd | Improvements in or relating to adders operating on variable fields within words |
US3906459A (en) * | 1974-06-03 | 1975-09-16 | Control Data Corp | Binary data manipulation network having multiple function capability for computers |
GB1524850A (en) * | 1975-12-23 | 1978-09-13 | Ferranti Ltd | Data processing apparatus |
FR2356202A1 (fr) * | 1976-03-31 | 1978-01-20 | Cit Alcatel | Logique sequentielle programmable |
US4085447A (en) * | 1976-09-07 | 1978-04-18 | Sperry Rand Corporation | Right justified mask transfer apparatus |
US4139899A (en) * | 1976-10-18 | 1979-02-13 | Burroughs Corporation | Shift network having a mask generator and a rotator |
US4219874A (en) * | 1978-03-17 | 1980-08-26 | Gusev Valery | Data processing device for variable length multibyte data fields |
US10725685B2 (en) * | 2017-01-19 | 2020-07-28 | International Business Machines Corporation | Load logical and shift guarded instruction |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
USB325107I5 (de) * | 1961-01-27 | |||
US3275989A (en) * | 1961-10-02 | 1966-09-27 | Burroughs Corp | Control for digital computers |
US3277449A (en) * | 1961-12-12 | 1966-10-04 | Shooman William | Orthogonal computer |
US3229260A (en) * | 1962-03-02 | 1966-01-11 | Ibm | Multiprocessing computer system |
-
1964
- 1964-10-07 US US402271A patent/US3430202A/en not_active Expired - Lifetime
-
1965
- 1965-10-06 DE DE19651499286 patent/DE1499286B2/de not_active Withdrawn
- 1965-10-06 GB GB42343/65A patent/GB1119002A/en not_active Expired
- 1965-10-06 BE BE670568D patent/BE670568A/xx unknown
- 1965-10-06 SE SE12960/65A patent/SE316934B/xx unknown
- 1965-10-07 NL NL656513018A patent/NL143707B/xx unknown
Also Published As
Publication number | Publication date |
---|---|
BE670568A (de) | 1966-01-31 |
DE1499286B2 (de) | 1971-11-25 |
US3430202A (en) | 1969-02-25 |
NL143707B (nl) | 1974-10-15 |
SE316934B (de) | 1969-11-03 |
NL6513018A (de) | 1966-04-12 |
GB1119002A (en) | 1968-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2704842C2 (de) | Im Pipeline-Betrieb arbeitende Datenverarbeitungseinrichtung | |
DE2714805C2 (de) | ||
DE3338345C2 (de) | ||
DE1931966C3 (de) | Datenverarbeitungsanlage mit Assoziativspeichern | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE2718110A1 (de) | Datenverarbeitungseinheit | |
DE2036729A1 (de) | Digital Datenverarbeiter | |
DE3043653A1 (de) | Datenverarbeitungsanlage | |
DE3632603A1 (de) | Verfahren und vorrichtung zur druckersteuerung | |
DE3043100A1 (de) | Datenprozessor mit datenkorrekturfunktion | |
DE2900586C2 (de) | Anordnung zum Decodieren von Codewörtern variabler Länge | |
DE2617485C3 (de) | Schaltungsanordnung für Datenverarbeitungsanlagen zur Abarbeitung von Mikrobefehlsfolgen | |
DE1499286A1 (de) | Datenbearbeitungsanlage | |
DE3121046C2 (de) | ||
DE3501903A1 (de) | Im pipelinebetrieb arbeitende datenverarbeitungseinrichtung | |
EP0075893B1 (de) | Schaltungsanordnung zum Ausrichten von Speicheroperanden für dezimale und logische Befehle | |
DE2235883C3 (de) | Datenverarbeitungseinrichtung | |
DE1296427B (de) | Datenbearbeitungssystem | |
DE1296429B (de) | Datenbearbeitungsanlage | |
DE2419836C3 (de) | Schaltungsanordnung zur Durchführung von Unterprogramm-Sprungbefehlen in Datenverarbeitungsanlagen | |
DE2527236C3 (de) | Anordnung zum Einsetzen von Daten in ein Register | |
DE3003465C2 (de) | Einrichtung zur Erzeugung von Bedingungscodes in mikroprogrammgesteuerten Universalrechnern | |
DE1499286C (de) | Datenbearbeitungsanlage | |
DE2837709C2 (de) | Schaltungsanordnung zur Behandlung von Teilwörtern in Rechnersystemen | |
DE3326898A1 (de) | Datenverarbeitungsmaschine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E77 | Valid patent as to the heymanns-index 1977 | ||
8339 | Ceased/non-payment of the annual fee |