DE1499286A1 - Datenbearbeitungsanlage - Google Patents

Datenbearbeitungsanlage

Info

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
Application number
DE19651499286
Other languages
English (en)
Other versions
DE1499286B2 (de
Inventor
Hass Ronald Joseph
Downing Randall William
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 DE1499286A1 publication Critical patent/DE1499286A1/de
Publication of DE1499286B2 publication Critical patent/DE1499286B2/de
Withdrawn 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/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants

Description

Western Electric Company Incorporated 1 4 9 9 2 8 Q New York, N.J. USA Downlng-Hass 3-1 Datenbearbeltungsanlag·
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.
BAD ORIGINAL 0 03810/1333
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 ^- :.
BAD ORJOlNAt
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,
BAD ORSGiNAt
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)

  1. Down !ng-Hau 3-1
    H99286
    Patentansprüche
    1 · Datenbearbeitungsanlage mit
    einem 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. 2. Datenbearbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß der Detektor (54) die niedrigststellige Bit-Position des Inhaltes des ersten Reg isters (39) festste 111.
    BAD
    009810/1393
DE19651499286 1964-10-07 1965-10-06 Datenbearbeitungsanlage Withdrawn DE1499286B2 (de)

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)

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

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

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