DE1499284A1 - Datenbearbeitungsanlage - Google Patents

Datenbearbeitungsanlage

Info

Publication number
DE1499284A1
DE1499284A1 DE19651499284 DE1499284A DE1499284A1 DE 1499284 A1 DE1499284 A1 DE 1499284A1 DE 19651499284 DE19651499284 DE 19651499284 DE 1499284 A DE1499284 A DE 1499284A DE 1499284 A1 DE1499284 A1 DE 1499284A1
Authority
DE
Germany
Prior art keywords
register
word
command
field
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19651499284
Other languages
English (en)
Other versions
DE1499284B2 (de
DE1499284C3 (de
Inventor
Werner Ulrich
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 DE1499284A1 publication Critical patent/DE1499284A1/de
Publication of DE1499284B2 publication Critical patent/DE1499284B2/de
Application granted granted Critical
Publication of DE1499284C3 publication Critical patent/DE1499284C3/de
Expired 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/34Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
    • G06F9/355Indexed addressing

Description

Western Electric Company W. Ulrich 12
Incorporated New York, Ν.Ϊ. IOOO7 USA
U99284
Datenbearbeitungaanlage
Die Erfindung betrifft Datenbearbeitungsanlagen und im einzelnen solche Anlagen, die durch gespeicherte Programme gesteuert werden.
In bekannter Weise enthält eine Datenbearbeitungsanlage folgende Bauteilet einen Speicher, der in diskreten Speicherstellen Programmbefahlsworte und Daten speichert; Zugriffsschaltungen zur Gewinnung und Eingabe von Worten aus bzw. in den Speicher; ein Befehlswortregister sur Darstellung aufeinanderfolgend gewonnener Befehlsworte, wobei jedes Befehlswort ein Operationsfeld, ein Datenadressenfeld und ein Steuerfeld aufweist; eine Vielzahl von indizierbaren Registern, die an die Zugriffeschaltungen angeschaltet sind und auf das Steuerfeld ansprechen; einen auf da· Operationsfeld jedes Befehlswortes ansprechenden Programm-Decodierer, der die Ausführung der Befehle regelt| und einen Index-Addierer, der- den Inhalt des duroh das Steuerfeld angegebenen Indexregisters mit den Inhalt des Datenadressenfeldes im Befehlswortregister arithmetisch kombiniert.
Die arithmetische Kombination eines Registerinhaltes mit dem Inhalt des Datenadressenfeldes eines Befehlewort·· wird "Index"-Torfang genannt and ermöglicht eine größere Anpassungsfähigkeit bei der Abänderung der Adresse, deren Inhalt bei dem Befehl bearbeitet wird.
In einigen Fällen iet es wünschenswert, den Adressenabsehnitt eines Befehls nicht nur durch den Inhalt eines ersten Register·, sondern auch dureh den Inhalt eines zweiten Register· abzuändern· ·
209811/0349
Beispielsweise wäre dann ein erster Befehl nötig, tun das Datenadreesenfeld des Befehls mit dem Inhalt eines ersten indizierbaren Registers arithmetisch zu kombinieren. Ein zweiter Befehl wäre nötig, um die erste Kombination (Datenadresse und Inhalt des ersten Registers) mit dem Inhalt eines zweiten indizierbaren · Registers arithmetisch zu kombinieren. Es müssen also wenigstens zwei Befehle ausgeführt werden, um ein endgültiges Datenadressenfeld abzuleiten, das die Summe von drei Variablen ist« Während des Index-Vorganges kann bei der Ausführung eines einzigen Befehls das Datenadressenfeld des Befehls nur zu dem τοίΐständigen, in einem indixierbaren Register enthaltenen Datenwort addiert werden.
Der Erfindung liegt die Aufgabe zugrunde, eine Datenbearbeitungsanlage zu schaffen, bei der durch die Ausführung eines einzigen Befehle die in zwei der indizierbaren Register enthaltenen Daten zum Datenadressenfeld eines Befehlswortes zur Ableitung eines endgültigen Datenadressenfeldes addiert werden können.
Die mit der Erfindung Targeschlagene Lösung schlägt die Aufteilung des Datenadressenfeld·· eines Befehls in ein erstes und ein zweites Datenadressenfeld vor. Die indizierbaren Register enthalten ein erstes Register und Schaltungen aur übertragung des Inhaltes derjenigen Zellen des ersten Registers sum Index-Addierer, welche durch das erste Datenadreesenfeld angegeben werden· Zusätzliche Schaltungen stellen die gleichseitig· übertragung des Inhalt·· des »weiten Datenadreseenfeldes, des durch das Steuerfeld angegebenen indizierbaren Registers und des Inhaltes gewählter Zellen des ersten Registers, welche durch das erst· Datenadressenfeld angegeben werden, zum Index-Addierer sicher.
Diese Anordnung ermöglicht eine "Doppelindizierung" in einem einzigen Befehlsechritt. Sie macht außerdem Torteilheften Gebrauch von der bestehenden Organisation der Anlage.
Ein Merkmal der Erfindung besteht darin, daß das erste Register in die Lage versetzt werden kann, diejenige Zahl von Ziffern
209811/0349
U99284
niedrigerer Stellenzahlen zu übertragen, die durch das erste Adressenfeld angegeben wird. Zusätzlich kann ei·* eine auf das Datenadressenfeld ansprechende und in das erste Register angeschaltete Schiebesohaltung benutzt werden, welche den Inhalt der in Seihe geschalteten Zellen des Registers in Serienform rerschiebt. Eine Leseschaltung wird zweckmäßig zwischen das erste Register und den Index-Addierer geschaltet, um dessen gewählten Inhalt zu übertragen.
Ein besseres Verständnis der Erfindung mit ihren Vorteilen und Merkaalen ergibt sich aus der folgenden ins Einzelne gehenden Beschreibung in Verbindung mit den Zeichnungen.
Fig. 1 und 2 zeigen in aneinandergelegter Porn ein schematiaches Blockschaltbild eines Ausführungsbeispiels für eine Datenbearbeitungsanlage nach den Grundgedanken der Erfindung.
Der Programmspeicher 40 enthält eine Folg· τοη Befehleworten, die nacheinander über das Kabel 46 zum Befehlswortregister 28 übertragen werden. Bas jeweilige Befehlswort, das sioh im Befehlswortregister befindet, steuert die Operation der rerschiedenen Einheiten der Anlage. Die Speicheradresse des Befehls, der zum Befehlswortregister übertragen wird, ist im Programmadressenregister 56 enthalten. Die Adresse wird über das Kabel 50 sum Programmspeicher gegeben, der den in der entsprechenden Speieherstelle enthaltenen Befehl an das Befehlswortregister gibt. Die Adresse im Register 58 wird kontinuierlich durch die Inkrementschaltung 56 weitergeschaltet. Da aufeinanderfolgend nummerierte Adressen in Register 36 enthalten sind, werden aufeinanderfolgend gespeicherte Befehle sum Befehlewortregister übertragen. Eb besteht jedoch bei der Anlage die Möglichkeit, die Übertragung eines Befehlswortes, das nicht in der Folge liegt, zum BefehlS-wortr'egister zu steuern. Dazu wird eine Adresse über das Kabel zum Programmadressenregister 58 gegeben. Wenn das Befehlskabel XFR"(übertragen) erregt ist, wird diese Adresse in das Programmadressenregieter eingeschrieben und der entsprechende Befehl
209811/0349
U99284
zum Befehlewortregister übertragen. Diese Adresse wird dann weitergeechaltet, um die Übertragung τοη in aufeinanderfolgenden Adressen des Programmspeichers gespeicherten Befehlen an das Befehlewortregister zu steuern.
Jede· Befehlswort besteht aus Tier Teilen, nämlich dem Operations-, den DA-, dem IR- und dem LFA-FeId, deren Bedeutung noch erläutert wird. Das Operationsfeld ist ein Code (invariabel numerisch, wie auch die anderen Felder), der bestimmt, welche der Einheiten des Systems bei der Ausführung des durch das bestimmte Befehlswort angegebenen Befehle in Tätigkeit tritt. Der Decodierer-Verteiler 34 bestimmt aus dem Code des Operationsfeldes den auszuführenden Befehl. Eines der Tier in der Zeichnung strichpunktiert dargestellten Befehlskabel wird erregt und überträgt die zur Ausführung des Befehls erforderliche Information zu den Terschiedenen Einheiten des Systems, die diese benötigen. In dem dargestellten System können nur Tier Befehle ausgeführt werden. Die Erfindung ist jedoch in gleicher Weise bei Systemen anwendbar, bei denen wesentlich mehr Oparationsarten Torgesehen sind.
Das Datenadressenfeld (DA-FeId) gibt.entweder Daten oder eine Adresse an. Gleichzeitig mit der Übertragung des Operationsfeldes an den Decodierer-Verteiler 34 wird das DA.-Unterfeld des DA-Feldes über das Kabel 21 direkt zum Index-Addierer 32 gegeben. Das Tor ist normalerweise geöffnet. Es wird nur dann gesperrt, wenn das bit P des LPA-Feldes im Befehlewortregister 28 ein· 1 ist. Wenn das bit P 0 ist, wird das DA2-UnterfβId des DA-Feldes ebenfalls zum Index-Addierer 32 übertragen. Es wird also, wenn das bi^P 0 ist, das gesamte DA-FeId sum Index-Addierer gegeben. Der Index-Addierer 32 addiert die im DA-FeId des Befehleworte· enthaltene Zahl zum Inhalt «in·· τοη einer Anzahl von im System vorgesehenen Indexregistern. Der Regieterleser16 liest den Inhalt des Pufferregisters 12, de· L-Hegisters 1Θ, des X-Registers 20, des !-Registers 20 oder des Z-Registers 24 ab. Ein entsprechendes Kabel führt τοη jedem dieser fünf Register zum Registerleser. Das Index·« registerfeld (IR-FeId) gibt keines (wenn es leer ist) oder eines
209811/0349
BAD ORIGINAL
U99284
dieser fünf Register an, und der Inhalt des angegebenen Registers wird über das Kabel 62 zum Index-Addierer 52 übertragen. Wenn kein Register im IR-FeId des Befehlewortes angegeben ist, werden keine bit über das Kabel 62 zum Index-Addierer gegeben. Der Index-Addierer bildet die Summe der Zahlen, die in dem DA-FeId des Befehlswortes und dem angegebenen Register enthalten sind. Die Summe am Ausgang des Index-Addierers wird zu verschiedenen Einheiten im System übertragen. Es arbeitet jedoch nur die Einheit mit diesem indizierten Daten- oder Adreseenwort, die durch das erregte der vier Befehlskabel in Tätigkeit gesetzt ist.
Von der Haskierschaltung 14 kann ein Wort zum Registerdirektor 44 übertragen werden. Der Registerdirektor arbeitet, wenn eines der Befehlskabel M (r) oder W (R) erregt ist. Informationen werden zum Eegisterdirektor rom Decodierer-Verteiler über das erregte Befehlskabel übertragen, das entweder das Pufferregister oder eines der Register L, X, Y und Z identifiziert. Das Eingangswort für den Begisterdirektor auf dem Kabel 64 wird zu dem durch die Befehlskabel information angegebenen Register über eines der fünf entsprechenden Ausgangekabel des Registerdirektors übertragen.
Der Index-Addierer 52 wird in der Anlage nicht zur Addition von zwei Datenworten benutzt. Er ist lediglich vorgesehen, um das DA-FeId eines Befehlswortes entsprechend dem Inhalt eines (oder von zwei, wie später gezeigt wird) der Register im System abzuändern. Zur Ableitung der Summe von swei Datenworten ist der Addierer 42 vorgesehen. lamer dann, wenn ein neues Wort durch den Registerdirektor in das T-Register eingeschrieben wird, wird da· Wort zum Addierer 42 übertrafen. Das Z-Regieter ist über das Kabel 58 an den Addierer 42 angeschaltet und übertraft an den Addierer da· in ihm gespeicherte Wort. Wenn ein neues Wort in das Y-Register eingeschrieben wird, addiert der Addierer dieses Wort zu dem Wort im Z-Register, und die Summe wird zum Z-Regiater übertragen und dort gespeichert. Das neue Wort verbleibt la Y-Register und das Z-Register enthält die Summe des neuen Worte· und de· vorhergehenden Inhaltes des Z-Registers. Eine Addition von zwei
209811/0349
Datenworten wird also erreicht, indem zuerst der Registerdirektor so gesteuert wird, daß er eines von ihnen in das Z-Register einschreibt, und dann so gesteu4rt wird, daß er das andere in das Y-Register eingibt wenn der Begisterdirektor ein Wort in das Z-Register einschreibt, arbeitet der Addierer 42 nicht. Sine Addition Ton zwei Datenworten findet nur dann statt, wenn ein Wort zuerst in das Y-Register abgegeben wird.
Bei rielen Batenbearbeitungsmasohinen besteht für verschiedene Befehlsarten eine Produkt-Maskiermöglichkeit Dabei wird das logische Produkt entsprechender bit der Maske und von Datenworten gebildet. Das sich ergebende maskierte Datenwort weist eine 1 nur in den Positionen auf, für welche die Maske und das Datenwort beide eine binäre 1 enthalten. Beispielsweise werde bei einer mit sechs bit arbeitenden Anlage das Datenwort 101011 vom Datenspeicher zu einem Register übertragen. Bei dieser Übertragung läuft das Wort durch die Maskiersehaltung. Es sei angenommen, daß die von der Haekiersohaltung benutzte Maske 011110 ist das sich ergebende maskiert· Wort, das im Register gespeichert ist, ist dann 001010.
Immer dann, wenn «ine Maskierung erforderlich ist, muß das Maskierwort zuerst im L-Regietar gespeichert werden. Dieses Register ist über das Kabel 60 sit der Maskiersohaltung 14 verbunden and steuert die Maskierung eines durch die Maskierechaltung über» tragenen Wort··. Di· Maskierschaltung sweiseitig gerichtet. Ein vom Registerlessr 16 zur Maskiersohaltung über das Kabel 56 übertragenes Wort kann durch die Maske ia L-Register maskiert werden, bevor es im Pufferregieter 12 gespeichert wird. Analog kann das Wort im Pufferregister oder auf des Kabel 55 in der M&skiersehaltung maskiert und über das Kabel 64 zum Registerdirektor 44 übertragen und von dort zu einem der fünf Speieherregieter im System gegeben werden. (Ee kann zurück zum Pufferregister und zu eines der anderen vier Register übertragen werden) Die Maskiersehaltung 14 maskiert das sie durchlaufende Wort mit der Maske ia L-Register
209811/0349
nur dann, wenn das bit L im LPA-FeId des Befehlswortregisters &8 •ine 1 ist. Das bit L wird über die Ader L zur Maskiersohaltung übertragen, und wenn es eine 0 ist, läßt die Maskierschaltune das Datenwort unverändert durch.
Das Pufferregister stellt einen Puffer zwischen dem Datenspeicher 10 und dem Rest der Anlage dar. Di« von der Datenbearbeitungsanlage zu bearbeitenden Daten sind im Datenspeicher 10 enthalten. Eine Adresse wird über die Kabel 53 und 66 vom Index-Addierer 32 sum Datenspeicher 10 übertragen. Veim. ein Wort aus dem Datenspeicher abgelesen werden soll, ist das Befehlskabel M(r) erregt, und das in der angegebenen Stelle des Datenspeichers enthaltene Wort wird zum Pufferregister 12 übertragen. Wenn ein "Yort in den Datenspeicher einzuschreiben ist, ist das Befehlskabel (r)M erregt, und das im Pufferregister gespeicherte Wort wird in die angegebene Stelle des Datenspeichers eingeschrieben.
Wenn ein Wort vom Datenspeicher zum Pufferregister gegeben wird, wird es automatisch aus dem Pufferregieter zur Maskierschaltung übertragen. Entsprechend wird, wenn «in Wort vom Registerleser durch die Maskierschaltung zum Pufferregister gegeben wird, das Wort automatisch' vom Pufferregister zum Datenspeicher übertragen. In beiden Fällen verbleibt das Datenwort außerdem im Pufferregister. Wenn ein Wort in einem der Register in den Datenspeicher einzuschreiben ist, wird es vom Registerleser über die Maskierschaltung zum Pufferregister übertragen. Ss kann erwünscht sein, dieses Wort erneut zu bearbeiten, beispielsweise indem die Inkrsaent-Schaltung 70 so gesteuert wird, daß sie eine 1 zu dem Wort addiert, und aus diesem Grund bleibt das Wort außerdem im Pufferregister gespeichert. Analog kann ·β erwünscht sein, wenn ein Datenwort zuerst aus dsm Datenspeicher über das Pufferregister, die Mftskierschaltung 14 und den Registerdirektor 44 *u einem der Register übertragen wird, das ursprüngliche Wort im Pufferregister zu bearbeiten. Beispielsweise kann das abgelesene Datenwort maskiert und im X-Register gespeichert werden. Das ursprüngliche Datenwort verbleibt im Pufferregister, damit eine Weiterschaltung
209811/0349 BAD or*ginal
H99284
und Rückspeioherung im Datenspeicher möglich ist. Entsprechend bleibt, wenn der Registerleeer 16 ein Datenwort aus dem Pufferregiater abliest, der Inhalt des Pufferregisters unverändert. Auch der Inhalt der anderen Register bleibt unverändert, wenn der Registerleser 16 ein Datemrort aus einem von ihnen abließt.
Der Index-Addierer 32 muß vor der Ausführung eines Befehls zurückgestellt werden. Das im anderen Fall verbleibende Ausgangssignal des Index-Addierers wäre dasjenige, das bei dem Index-Yorgang während der Ausführung des vorhergehenden Befehls abgeleitet worden ist. Der Decodierer-Verteiler 34 legt immer dann einen Rückstellimpuls an die Ader 46, wenn ein neues Befehlswort zum Befehlswortregister 28 übertragen wird. Dieser Rückstellimpuls wird zum Index-Addierer gegeben und st'ellt ihn vor der Ausführung des neuen Befehls zurück.
Daa LPA-FeId des Befehlswortes im Befehlswortregister enthält drei Informations-bit, welche die Erregung der drei entsprechenden Adern L, P und A steuern. Die Erregung der Ader L steuert, wie oben beschrieben, die Maskierechaltung 14. Wenn das bit A eine 1 ist, läßt es die Inkrement-Steuerschaltung 70 eine 1 zum Inhalt des Pufferregistere addieren, bevor der Befehl selbst ausgeführt wird. Das bit P steuert die Übertragung des DA?-Unterfeldes entweder zum Index-Addierer 32 oder zur Schiebesteuerschaltung 72 und zur Leseschaltung 74· Wenn das bit P eine 0 ist, ist das Tor 30 geöffnet und da· Tor 26 gesperrt. Das DA_~Unterfeld auf dem Kabel 19 läuft durch das Tor 30 zum Kabel 17 und zum Index-Addierer 32. Wenn das bit P eine 1 ist, ist das Tor 30 gesperrt und das Tor 26 geöffnet. In diesem Fall wird das DAg-Unterfeld über die Kabel 76 und 86 zur Schiebesteuerschaltung 72 und zur Leseschaltung 74 übertragen.
Die Arbeitsweise des Systems läßt sich am besten verstehen, indem die Ausführung der vier Befehlearten individuell betrachtet wird·
20981170349
BAD ORIGINAL
U99284
Bei der folgenden Analyse der Tier Befehlsarten ist das bit P eine 0 und daa gesamte SA-PeId im Befehlswortregister 28 wird zum Index-Addierer 32.übertragen. Sie Schiebeschaltung 72 und die Leeesohaltung 74 arbeiten nicht. Nach der Analyse der einzelnen Befehle, wobei das bit P in jedem Fall 0 ist, soll die Betriebsweise 'des Systems betrachtet werden, wenn das bit P eine 1 ist.
Ein tjbertragungsbefehl steuert eine Übertragung oder ein Umlegen auf einen neuen Befehl außerhalb der Folge. Ein typischer Befehl kann lauten XFR, 500, Y, 000. Ber Becodierer-Verteiler 34 erregt das Befehlekabel XFE. Dieses Befehlskabel ist nur mit dem Programmadressenregister 38 verbunden, so daß eine neue Adresse, die auf dem Kabel 52 erscheint, in das Register eingeschrieben.werden kann. Sa das bit P 0 ist, ist das Tor 30 geöffnet und das vollständige SA-Feld wird zum Index-Addierer übertragen. Vorher gibt der Decodierer-Verteiler 34 einen Rüokstellimpuls zur Rückstellung des Index-Addierers auf die Ader 46. Sas SA-Feld, 500, irird dann zum Index-Addierer übertragen, und zwar teilweise direkt und teilweise durch das Tor 30. Gleichzeitig wird die Identität des Y-Registers über das Kabel 54 »üb Registerleser 16 gegeben.. Ser Registerleser liest den Inhalt des Y-Registers ab, der beispielsweise aus der Zahl 25 bestehen kann, und überträgt diese Zahl über das Kabel 62 zum Index-Addierer. Ser Index-Addierer verändert das SA-Feld alt seinem Inhalt, und die Sumae525 erscheint an seinen Ausgang. Diese Zahl wird außer zub Programmadressenregister 38 auch sus Datenspeicher 10 und sua Tor 79 übertragen, aber der Datenspeicher und das Tor sind durch dft· Befehlskabel XTB nicht erregt. Sie Zahl auf dea Kabel 52 wird nur in das Programmadressenregister 38 eingesehrieben, da d·· erregte Befehlekabel nur mit dieser Einheit verbunden ist. Ser nlohste über das Kabel 48 sub Befehlswortregister übertragene Befehl ist derjenige, der in der Speieherstelle des Programmspeichers ait der Adresse 525 gespeichert ist. Siese Adresse wird dann nachfolgend im Prograamadressenregister weiter*· geschaltet.
BAD ORICHNAL
209811/0349
Bei der Ausführung eine· Übertragungsbefehle kann das bit L eine 0 sein« aber auoh dann hat es keinen Einfluß auf das System. Sin Wort wird nur dann über die Maskiersehaltung übertragen, wenn der Registerleser 16 aufgrund eine· Befehl« (R)M arbeitet, das Tor 79 bei einem Befehl^W(B) geöffnet ist oder wenn ein Wort zuerst bei der Ausführung eines Befehle M(R) aus dem Datenspeicher in das Fufferregister geschrieben wird, wobei das Wort dann automatisch vom Pufferregister zur Maskierschaltung gegeben wird. Bei der Ausführung eine· tJbertragungsbefehls wird kein Wort zur Maskierschaltung übertragen, so dafi, auoh wenn das bit L eine 1 ist, kein Wort Torhanden ist, das in der Maskiersehaltung maskiert werden könnte.
Man "Hegte, daß der Regigterleeer 16 den Inhalt des im IR-FeId angegebenen Register· zur Übertragung an den Indexaddierer an da· Kabel 62 gibt. Bei eines Befehl (R)M gibt der Registerleser ebenfalls ein Wort an da· Kabel 56» aber diese Operation wird durch das Befehlskabel (R)M gesteuert. Bei der Ausführung eines übertragungsbefehls ist nur das Befehlekabel IFR erregt, und der Registerleser gibt den Inhalt des im IR-FeId angegebenen Registers nur an da« Kabel 62. Die Adresse ie DA-PeId des Befehlswortes kann durch den Inhalt des angegebenen Register· geändert werden, und auf die·· geänderte Adresse erfolgt die Übertragung«
Wenn das in DA-feld eines Befehlswortes enthaltene Wort in ein··
der fünf Register einzuschreiben ist, wird das Befehlskabel WC!) erregt. Der Cod·, der in Operationsfeld des Befehlswortregisters erscheint, ist entweder WB, WL, WX, WT oder WZ. £&· (δ) in der Bezeichnung W(R) gibt an, daß irgend einer der fünf speziellen Codierungen in dem Operationsfeld des Befehlswort·· erscheinen kann. Da· B in dem Code WB gibt an, daß da· ΒΑ-Feld in da· Pufferregister einzuschreiben ist.
Bei der Ausführung eines Befehls W(r) gibt das IR-FeId wiederum dasjenige der fünf Register an, dessen Inhalt bei dem Index-Vorganf su dem DA-FeId su addieren ist. Bas Summenwort wird in dem Register
209811/0349
gespeichert, dessen Identität im Operationsfeld enthalten ißt. Der Registerleser 16 liest das Wort ab, das in dem Angegebenen der Register 12, 18, 20, 22 und 24 gespeichert ist, und übertragt es über das Kabel 62 zum Index-Addierer 52. Bas zum Index-Addierer übertragene DA-FeId wird zu dem Datenwort addiert, das über das Eitel 62 zum Index-Addierer 32 gegeben »orden ist. Das Programmadressenregister 38 und der Datenspeicher 10 sind bei der Ausführung eines Befehls Yi(R) nicht erregt. Der Registerdirektor 44 ist jedooh über das Befehlskabel Win) in Tätigkeit gesetzt und wird von der Identität entweder dee Pufferregisters oder eines der Register L, X, Y und Z in Kenntnis gesetzt. Das abgeänderte DA-PeId wird über das geöffnete Tor 79 zur Maskierschaltung 14 übertragen und ron dort über das Kabel 64 zum Registerdirektor. Der Registerdirektor schreibt das Wort entsprechend dem Speziellen der fünf Befehle W(r), der ausgeführt wird, in eines der fünf Register ein.
Wenn das Befehlskabel W(S) erregt ist, öffnet es das Tor 79. Nur bei der Ausführung ein·· Befehl· W(R) wird das Ausgangssignal des Index-Addierers über daa Kabel 55 sur Maskiersohaltung übertragen. Wenn das bit L «ine 1 i«t, wird das Wort, da· durch die Maskierschaltung läuft, durch die Maske im L-Register maskiert. Das sich ergebende maskierte Wort wird in dem im Operationsfeld angegebenen Register gespeichert.
Das DA-FeId kann nur au· *·» Ζί££·* O-Werten bestehen. In diesen Fell besteht das Ausgangssignal des Index-Addierers lediglich aus dem Inhalt des im IR-FeId angegebenen Register·. Der Befehl W(r) kann auf diese Welse zur Übertragung eines Datenworte· aus «inen Register in ein anderes benutzt werden. Das bit A kann bei der Ausführung «ines Befehls W(R) eine 1 sein. Dann steuert ·· lediglich das Weiterechalten des Wortes im Pafferregist·? vor der Ausführung des Befehls. Wenn jedoch «in Befehl WB ausgeführt wird, hat das bit A auch wenn es eine 1 ist,Meinen Einfluß auf das System.
209811/0349 bad original
U99284
Der Inhalt des Pufferregisters wird weitergeschaltet, aber unmittelbar danach gibt der Registerdirektor das übertragene 7/ort in das Pufferregister, und das weitergeschaltete Wort wird gelöscht. Aus diesem Grunde sollte das bit A bei der Ausführung eines Befehls WB immer 0 sein.
Die dritte Befehlsart steuert das Ablesen eines Wortes im Datenspeicher und dessen Einschreiben in eines der fünf Register. Das Befehlskabel M(r) ist immer erregt, wenn ein Befehl MB, ML, MX, MY oder MZ ausgeführt wird. Der zweite Buchstabe im Operationsfeld des Befehlswortee stellt das Register dar, in welches die Daten oder das Speicherwort einzuschreiben sind. Die Identität des Registers wirö über das Befehlskabel zum Registerdirektor 44 übertragen.
Das IR-FeId gibt Dasjenige der fünf Register an, dessen Inhalt zum Index-Addierer zu übertragen ist, um bei dem Index-Vorgang benutzt zu werden. Wie bei der Ausführung von Befehlen XPR und W(r) wird nach Rückstellung des Index-Addierers das DA-FeId im Index-Addierer zum Inhalt dea im IR-FeId angegebenen Registers addiert. Die Summ· wird über di· Kabel 53 und 56 zum Datenspeicher 10 übertragen und stellt die Adresse im Datenspeicher dar, deren Inhalt zum Pufferregister 12 zu geben ist. Das Wort wird dann automatisch rom Pufferregister über die Maskiersohaltung zum Registerdirektor 44 übertragen. Es wird durch den Inhalt des L-Registers nur dann maskiert, wenn das bit LPA-FeId des Befehlswortes eine 1 ist. Das maskierte Wort auf dem Kabel 64 wird dann vom Registerdirektor zu dem im Operationsfeld angegebenen der fünf Register übertragen. Man beachte, daß das Ausgangssignal des Index-Addierers auf dem Kabel 68 zum Tor 79 und auch zum Datenspeicher gegeben wird. Bei der Ausführung eines Befehle M(R) ist das Tor 79 jedoch nicht geöffnet.
Wenn ein Befehl M(r) ausgeführt wird, kann da· bit A ein« 1 sein. Aber auch in diesem Falle hat es keinen Einfluß auf das System. Wenn es eine 1 ist, wird der Inhalt des Pufferregister· vor Aus-
209811/0349
BAD ORIGINAL
H99284
führung des Befehls weitergeachaltet. Das Wort im Pufferregister wird jedoch gelöscht, wenn das neue Wort aus dem Datenspeicher in das Pufferregister gegeben wird. Aue diesem Grund besteht kein Anlaß, den ursprünglichen Inhalt dee Pufferregister· zunächst weiterzuschalten, und das bit A sollte bei einem Befehl U(ß) eine 0 sein.
Die vierte Befehlsart ist ein Befehl (Β)]!, der die Einspeicherung des in einem bestimmten der fünf Register enthaltenen Wortes in den Datenspeicher steuert. Es sei angenommen, daß der Befehl ZM, 500, Y, 100 ausgeführt wird und der Inhalt des Y-Registera 25 ist. Da das bit F eine 0 ist, wird das vollständige DA-FeId, 500, zum Index-Addierer übertragen. Gleichzeitig gibt der Registerleser 16 den Inhalt des Y-Registers über das Kabel 62 an den Index-Addierer. Die dem Index-Addierer gebildete Summe, 525, wird über die Kabel und 66 zum Datenspeicher 10 übertragen. Das Befehlskabel (R)M wird erregt und setzt den Datenspeicher davon in Kenntnis, daß die Zatfl 525 die Adresse der Speioherstelle ist, in welcher das als nächst·· in da· Pufferregister einzuschreibende Wort gespeichert werden soll. Der Cod· ZX ie Operationsfeld steuert die Übertragung •ine· Kommando· über das Befehlskabel (R)M zum Registerleser 16, den Inhalt de· Z-flegisters abzulesen und da· Datenwort an da· Kabel 56 zu geben. Der Registerleser arbeitet zwei mal nacheinander, und zwar zuerst aufgrund des Cod· Y im IB-FeId und dann aufgrund des Cod· Z im Operationsfeld, wobei der Inhalt de· Y-Registers an das Kabel 62 und dar Inhalt des Z-Regieters an das Kabel 56 gegeben wird. Da· Wort im Z-Register wird über die Maskierschaltung 14 zum Pufferregister 12 übertragen, und, da das bit L eine 1 iat, duroh den Inhalt des L-Regieter· Maskiert. Das maskierte, zum Pufferregieter übertragene Wort wird dann in die Speicheretelle de· Datenspeicher· »it der Adreaae 525 eingeschrieben.
Bisher wurde die Betriebewei·· de· Sy·teas betrachtet, wenn da· Befehlewort in Befehlewortregister 28 für das bit P eine 0 enthält. Der Index-Addierer weist vier Eingänge auf, nämlich die Kabel 2t, . 17, 62 und 78. Wenn da· bit P eine 0 ist, werden die DA1- und TJnterf elder zum Indexaddierer über die Kabel 21 und 17 und der
209811/0349
-Η-
Inhalt des im IR-FeId des Befehlswortes angegebenen Registers über das Kabel 62 zum Index-Addierer übertragen. Über das Kabel wird nicht· zum Index-Addierer übertragen, und der Index-Addierer bildet lediglich die Sumse des DA-Feldes im Befehlswortregister und des Datenwortes in dem durch das IR-FeId angegebenen Indexregister«. Wenn das bit P jedoch eine 1 ist, wird nur dae DA.-Unterfeld sum Index-Addierer übertragen. Sas DA.-Unterfeld wird über das Tor 26 und die Kabel 76 und 86 zur Schiebeschaltung 72 und zur Leseschaltung 74 tibertragen. Die Leseschaltung 74 ist mit den Stufen des Z-Registere verbunden, welche die bit der niedrigsten Stellenzahlen enthalten. Die Zahl von Stufen, mit welcher die Leseschaltung verbunden ist, hängt von der Maximalzahl von bit ab, die bei einer gegebenen Anwendung von Z-Register zum Index-Addierer zu übertragen sind. Das DA_-Unterfeld gibt eine Zahl von bit, beispielsweise 4» an. Die Leseschaltung 74 liest die 4 bit nit der niedrigsten Stellenzahl im Z-Register ab und überträgt sie über das Kabel 78 zum Index-Addierer 32. Der Inhalt des angegebenen Indexregisters erscheint, wie üblich, auf dem Kabel 62. Der Index-Addierer bildet dann die Summe des Dl1-Unterfeldes, des Datenwortes auf dem Kabel 62 und der 4 bit auf den Kabel 78. Das DA-FeId des Befehlswortes, oder genauer, das DA1-Unterfeld, wird auf diese Weise nioht nur durch das Datenwort in dem durch das IR-FeId angegebenen Indexregister verändert, sondern außerdem durch die 4 bit mit der niedrigsten Stellenzahl im Z-Register.
unmittelbar nach der Operation der Leseschaltung 74 tritt die Schiebeschaltung 72 in Tätigkeit. Sie überträgt Steuersignale über das Kabel 84 zum Z-Register. Des Wort im Z-Register wird nach rechte verschoben, also in Richtung auf niedrigere Stellenzahlen. Die Größe der Verschiebung hängt von der Zahl der bit mit der niedrigsten Stellenzahl ab, die durch die Leseschaltung 74 abgelesen worden sind. In dem gewählten Beispiel wird das Datenwort im Z-Register um vier Stellen naoh rechts verschoben. Diese Schiebeoperation findet zur Torbereitung des n&ohaten Befehl· statt. Die bit mit der niedrigsten Stellenzahl im Z-Regieter nach dem Index-Vorgang werden aus dem Register hinausgeschoben. Die bit,
209811/0349
die als nächste bei einem Index-Vorgang· erforderlich sein Dogen, werden in die Stufen mit der niedrigsten Stellenzahl des Z-Segistera gegeben. Auf diese Weise können diese bit durch die Leseschal tuag 74 »us dem Z-Eegister ausgelesen werden, obwohl die Leerschaltung über das Kabel 82 nur mit den Stufen der niedrigsten Stellenzahl des Z-Registers rerbunden.
Der mit der Erfindung erzielte Fortschritt läßt sich am besten anhand eines speziellen Beispiels erkennen. Datenbearbeitungsanlagen werden in immer größerem ÜSmfang auf dem Gebiet der Ifachrichtenübertragungen verwendet. Beispielsweise kann eine Datenbearbeitungsanlage benutzt werden, um die Verfügbarkeit eines Weges durch ein Fernspreckvermittlungsnetzweck festzustellen. Es sei angenommen, daS in einem bestimmten Netzwerk vier Stufen vorhanden sind., die jeweils viele Verbinder (link) Gruppen aufweisen, und daß acht Kreuzpunkte in jeder Verbindergruppe vorhanden sind. Ein Weg kann durch das Hetzwerk nur dann durchgeschaltet werden, wenn ein gleich numerierter Kreuzpunkt in einer Verbindergruppe jeder dieser vier Stufen zur Verfügung steht. Ώ«τ Zustand (verfügbar oder nicht verfügbar) jede· Kreuzpunktes kann durch eine der beiden Bin&rsahlen dargestellt werden, wobei ein· «iff·» 1 anzeigt, daß der Kreuzpunkt verfügbar ist, und eine 0, daß er nicht verfügbar ist. Vier Datenworte mit acht bit können den Zustand der Kreuzpunkte von vier Verbindergruppen darstellen. Ub die Verfügbarkeit eines der acht Wege über diese vier Verbindergruppen festzustellen, muß nur bestätigt.werden,'daß eine de» Ziffer 1 in der entsprechenden Position jedes der vier Datenworte vorhanden ist. Wenn also die vier Worte, welch· den Zustand der Kreuzungepunkt· wiedergeben 11100000, 1101110, 01111101 und 11110011 sind, zeigt sich, daß der einzige verfügbar· Weg über diejenigen vier Kreuzungspunkt· führt, deren Zustand durch das bit mit der zweithöchsten Stellenzahl in jedem der vier Wort· mit acht bit dargestellt wird.
Der verfügbare Weg odor die verfügbaren Weg· la···» el«h wie folft' bestimmen: es wird das logische Produkt der ersten beiden Wort·
209811/0349
H9928A
)0/0.
■it aoht bit gebildet. Bas Ergebnis ist 110000*0. Das logische Produkt dieeee Produkte· mit dem dritten Wort wird gebildet. Das logische Produkt tob 11000010 und 01111101 ist 01000000. Endlich wird das logische Produkt dieses Produktes Bit den vierten Wort gebildet. Das Ergebnis, OtOOOOOO, bestätigt, daß der einzige rerfügbare.Weg über die Tier Verbindergruppen über die vier Kreuzungspunkte führt, deren Zustand durch das zweite bit τοπ links jedes der Tier Worte mit acht bit dargestellt wird.
Zur Erläuterung soll im Folgenden der Octal-Code benutzt werden. Das Z-Register enthält beispielsweise 24 bit, aber ein Octal-Code mit aoht Ziffern reicht aus, um jedes Datenwort im Register darzustellen. Adressen werden ebenfalls im Octal-Code angegeben. Beispielsweise entspricht die Adresse 100 der Dezimal-Adresse
Es sei angenommen, daß das erfindungsgemäße Ausführungsbeispiel einer Datenbearbeitungsanlag· benutzt wird, um die Verfügbarkeit eines Weges durch ein Vermittlungenetswerk zu bestimmen. Sie Worte mit aoht bit, welche den Zustand der entsprechenden Verbindergruppen darstellen, können (nachdem si« auf den neuesten Stand gebracht sind) im Datenspeicher in einer Folge von Tabellen gespeichert werden.' Es sei angenommen, dafi Tier Tabellen A-D τοrhanden sind, die jeweils 100 Verbindergruppen zugeordnet sind. Das Wort, welches den Zustand jedes der aoht Kreuzungspunkte in einer bestimmten Verbindergruppe wiedergibt, wird im Folgenden "Zustandswort" genannt. Jedes Zustandswort wird durch ein Symbol, wie beispielsweise f.,,, wiedergegeben. Die Indizes A-D geben an, ob das Zustandewort der ersten, zweiten, dritten oder Tierten Stufe des speziellen Netzwerkes zugeordnet ist. Eine der Zahlen 00-77 iB Index gibt an, welchem der 100 Verbindergruppen das Zustandswort zugeordnet ist. So ist das Zustandewort W.„ den aoht Kreuzungspunkten in der 33-»ten Verbindergruppe der Stufe A zugeordnet.
Die '400 Zustandsworte werden im Datenspeicher 10 in Tier Tabellen
BAD 209811/0349
A-D ait jeweils 100 Worten gespeichert. Dae erste Wort der Tabelle A ist in der Speioherstelle 1000 und das letzte Wort der Tabelle D in der Speicheretelle 1577 gespeichert. Die 400 Zustandsirorte eind also ie Speicher auf folgende Weise gespeichert«
> Adresse Zustandswort
1000 WA00
1001 WA01
1077 W177
1100
1101 WB01
1177
1200 wcoo
1201 ·
1277 W077
1301
t
1377
Ks sei angenommen, daß festgestellt werden soll, ob ein Weg über di« Verbindergruppe 35 in der Stufe A, die Verbindergruppe 62- in der Stufe B, die Verbindergruppe 54 in der Stufe C und die Verbindergruppe 28 in der Stufe D verfügbar ist. Dann Müssen aus dem
209811/0349
H99284
Datenspeicher die Tier Zustandsworte abgelesen werden, die in den Speioherstellen 1035, 1162, 1254, und 1328 gespeichert sind. Die drei aufeinanderfolgenden logischen Produkte, die aus den
Zustandsworten W.,c, W-^n, W_c., und Έ~ηα ν··υ j. j · j A351 B62' C54 D28 gebildet worden sxnd,
führen zu einem Wort ait aoht bit, das die Verfügbarkeit τοη Wegen über die Tier gewählten Verbindergruppen in den Stufen A, B, C und D anzeigt.
Um jedes dieser vier Zustandsworte aus dem Datenspeicher 10 zum Pufferregister 12 und zur Maskierschaltung 14 zu geben, müssen drei Informationsstüoke angegeben werden. Zuerst muß die Speicherstelle, in welcher das erste Wort in der Tabelle A gespeichert ist, die Speicherstelle 1000, identifiziert werden, um die Tabellen A-D τοη anderen Daten zu unterscheiden, die im Datenspeicher 10 enthalten sein können. Zweitens muß die Zahl τοη Datenspeicherstellen zwischen der Stelle 1000 und der Speicherstelle des ersten Wortes in einer der Tier Tabellen identifiziert werden. Das zweite Informationsstüok ist daher immer eine der Zahlen 0, 100, 200 oder 300. Das dritte Informationsstück ist die Zahl τοη Speicherstellen, welohe das gewünschte Zustandewort von dem ersten Wort in der gleichen Tabelle trennen, das heißt, eine der Zahlen 00-77· Beispielsweise müssen zur Identifizierung des Zustandewortes W_R. die Zahlen 1000, 200 und 54 angegeben werden.
Für die folgende Erläuterung sei daran erinnert, daß der Octal-Code benutzt wird. Das LPA-FeId weist drei Ziffern (jede der Ziffern 0 oder 1) auf. Die Tier Felder eines Befehlswortes sind durch Koamata getrennt. Die Unterfelder DA. und DA- sind durch einen Schrägstrich getrennt. Eine » « ii·* 6 im I)A2-Unterfeld entspricht xwei Oetal-Ziffern - die bit 1* S-gagieter werden um seohs Positionen oder zwei Octal-Positionen Terschoben.
Bei der Herstellung einer Gespraohsverbindung, bei der die Tier oben angegebenen Verbindergruppen in Betraoht gesogen werden, wird die Zahl 28546235 in das Z~Register gegeben. Die Zahl 1000 ■
209811/0349
wird in das Y-Register gegeben. Danach sind nur die folgenden vier Befehle erforderlich, um die Verfügbarkeit eines Weges über die Tier Verbindergruppen festzustellen}
ML, 0/6, Y, 010
ML, 100/6, Y, 110
ML, 200/6, Y, 110
ML, 500/6, Y, 110
Als erstes Befehlswort wird der erst· der oben angegebenen vier Befehle in das Befehlswortregister 28 eingegeben. Sas Y im IR-FeId bewirkt, daß der Registerleser 16 den Inhalt des Y-Registers an den Index-Addierer J2 überträgt. Es erscheint also die Zahl 1000 auf dem Kabel 62. Das bit P im LPA-PeId ist eine 1. Folglich wird das DA1-Unterfeld, 0, zum Index-Addierer 32 über das Kabel wund das DAp-Unterfeld, 2, über die Kabel 76 und 86 zur Schiebeschaltung 72 und zur Leseschaltung 74 übertragen. Die Leseschaltung 74 liest die beiden Ziffern mit der niedrigsten Stellenzahl im Z-Register, 35» *tb und überträgt sie über das Kabel 78 zum Index-Addierer. Der Index-Addierer leitet dann die Summe der Zahlen 1000, 0 und 35 ab. Die sich ergebende Adresse 1055 wird über die Kabel 53 und 66 zum Datenspeicher 10 gegeben, und da das Befehlskabsl m(r) erregt ist, wird das Zustandswort VT _ rom Datenspeicher 10 zum Pufferregister und τοη dort z.ur Maskierschaltung 14 übertragen. Das bit L im Befehlswortregister ist eine 0 und folglich wird das Zustandswort W.,- nioht durch den Inhalt des L-Registers maskiert. Das Zustandswort geht über die Maskierechaltung 14 zum Registerdirektor 44· Ώ& das Operationsfeld ML ist, wird das Zustandswort im L.Register gespeichert. Unmittelbar nachdea die beiden Ziffern mit der niedrigsten Ziffernstelle im Z-Register zum Index-Addierer übertragen worden Bind, tritt die Schiebeschaltung 72 in Tätigkeit und sohiebt den Inhalt des Z-Registers um zwei (Octal) Positionen nach reohts. Die Ziffern, die rorher in der dritten und vierten Stufe des Z-Registers enthalten waren, befinden sich jetzt in den ersten beiden Stufen. Damit wird die Ausführung des nächsten Befehle
209811/0349 BAO QWG.NAL
vorbereitet.
Der zweite ausgeführte Befehl entspricht bis auf drei Abweichungen dem ersten Befehl. Zum einen ist das über das Kabel 4ff"zum Indexaddierer 32 übertragene DA1-ünterfeld 100 statt 0. Zweitens wird die Octalzahl 62 durch die Leseschaltung 74 zum Index-Addierer übertragen. Die im Index-Addierer gebildete Summe XBt 1162. Drittens wird das aus dem Datenspeicher abgelesene und über die Maskierschaltung übertragene Zustandswort W^g„ jetzt durch den Inhalt des L-Registers maskiert, da das bit L im LPA-FeId eine 1 ist. Das Zustandswort Ww- wird also durch das Zustands^ort TA_C maskiert-Das sich ergebende maskierte Wort auf dem Kabel 64 ist das logische Produkt der ersten beiden Zustandswörter. Dieses logische Produkt wird im L-Register gespeichert und ersetzt das vorher darin befindliche Zustandswort W,,-. Dann steuert die Schiebe-
A35
schaltung 72 erneut das Verschieben des Inhaltes des Z-Registers um zwei Ziffern nach rechts.
Bei der Ausführung des dritten Befehle findet eine ähnliche Folge von Vorgängen statt. Die einzigen Unterschiede bestehen darin, daß das zum Index-Addierer übertragene DA^ünterfeld 200 statt ist, und daß die Zahl 54 statt der Zahl 62 von der Leseschaltung 74 zum Index-Addierer gegeben wird. Das Ausgangssignal des Index-Addierers ist daher 1254» und das Zustandswort W__ wird aus dem Datenspeicher abgelesen. Dieses Zustandswort wird durch das logische Produkt maskiert, das vorher gebildet und im L-Register gespeichert worden ist. Das sioh ergebende logische Produkt wird dann in das L-Register eingegeben.
Wenn schlieSlich der vierte Befehl ausgeführt wird, ist das Ausgangssignal des Index-Addierers 1528, und das Zustandswort ¥-.„., wird aus dem Datenspeicher abgelesen. Ss wird durch das logische Produkt maskiert, das vorher im L-Register gespeichert worden ist. Das sich ergebende logische Produkt wird in das L-Register eingespeichert. Wie oben erläutert, zeigt das endgül-tige logische Produkt an, welche Wege durch die gewählten vier Verbindergruppen
209811/034 9
H9928A
verf'-gbar sind. Die Gesprächsverbindung kenn dann entsprechend nachfolgenden, zum Befehlswortregister übertragenen Befehlen hergestellt werden.
Zur rollen Würdigung der mit der Erfindung erreichten Vorteile muß die eben beschriebene Untergruppe von Tier Befehlen noch näher untersucht werden. Man könnte fragen, warum es erforderlich ist, das bit P in jedem der Befehle zu einer 1 zu machen und die beiden Unterfelder des DA-Feldea zu verschiedenen Einheiten zu übertragen, statt nacheinander die vollständigen DA-Pelder 1035, 1162, 1254 und 1J28 direkt zum Index-Addierer zu übertragen. Die Antwort geht dahin, daß die oben betrachtete Untergruppe von vier Befehlen bei beliebigen vier Verbindergruppen in den vier Stufen benutzt werden kann. Es ist nur erforderlich, das Z-Register mit den Identitäten der betrachteten vier Verbiridergruppen einzustellen. Die gleiche Untergruppe von Befehlen kanu dann benutzt werden. Die gleichen vier Befehle sind also die Einzigen, die erforderlich sind, um die Verfügbarkeit eines .'.reges durch die Stufen A, B, C und D bei beliebigen vier Verbindergruppen festzustellen. Wenn das dreifache Indizieren und insbesondere das partielle Indizieren des Z-Registers nicht vorgesehen wäre, müßten wesentlich mehr Befehle benutzt werden, um die Verfügbarkeit eines Weges durch eine gewählte Gruppe von vier Verbindern zu bestimmen.
Bei dem Ausführungsbeispiel der Erfindung schiebt die Schiebeechaltung 72 immer die gleichen bit aus dem Z-Register heraus, die von der Leseschaltung 74 abgelesen werden. Bei einigen Anwendungen kann es wünschenswert sein, das Datenwort im Z-Register um ein· Zahl von Positionen zu verschieben, die nicht gleich der Zahl von bit ist, die von der Leseschaltung aus dem Register abgelesen werden. Beispielsweise kann eine bestimmte Folge erfordern, daß zwei Octal-Ziffern aus dem Register gelesen werden, und das Datenwort dann um vier Octal-Positionen naoh rechts verschoben wird. Bei solchen Systemen kann das DA_-Unterfeld zwei Informationsstücke enthalten. Das erste gibt der Leseschaltung 74
BAD ORlOINAL
209811/0349
U9928A
die Zahl der aus dem Register abzulesenden "bit an, und das zweite der Schiebeschaltung 72 die Größe der Verschiebung. Analog kann es bei manchen Anwendungen erwünscht sein, eine Rotation statt einer Verschiebung des Datenwortes im Z-Register oder sogar eine Verschiebung nach links statt nach rechts zu veranlassen. In einem solchen Fall kann das DAp-ünterfeld zusätzliche Informationen hinsichtlieh der Art der erforderlichen Schiebeoperation enthalten, wobei die Schiebeschaltung 72 die gewünschte Operation für das Datenwort im Z-Register entsprechend dem im DA?-Unterfeld dargestellten Kommando ausführt.
Bei dem Ausführungsbeispiel der Erfindung muß der Index-Addierer 32 drei Zahlen addieren können, nämlich eineu Teil des oder das vollständige DA-PeId, ein über das Kabel 62 übertragenes Indexregister-Datenwort und einen Teil des über das Kabel 78 übertragenen Z-Register-Datenwortes. Addierer, die drei Variable addieren können, sind im allgemeinen teuerer als Addierer, die nur zwei Variable addieren können. Bei vielen Anwendungen besteht die Möglichkeit, den Index-Addierer 32 zu vereinfachen. Für das oben beschriebene Fernsprechsystem sei angenommen, daß das DA.-Unterfeld immer wenigstens η Ootalziffern aufweist, von denen m Ziffern mit der niedrigsten Stellenzahl (m kleiner als oder gleich n) immer O-Werte enthalten, und daß in keinem Fall mehr als m octalziffern vom Z-Register zum Index-Addierer übertragen werden, (n und m können sich von Befehl zu Befehl ändern). In einem solchen Fall sind die 3n binär bit der niedrigsten Ziffernstelle im DA.-Unterfeld immer 0, und der Teil des Z-Register-Datenwortea, der zum Index-Addierer übertragen wird, enthält niemals mehr als 3n binär bit. In ein» solchen Fall besteht die Möglichkeit, die Adern, welche die bit der niedrigsten Stellenzahl im DA -Unterfeld führen und die Adern, welche das Ksbel 78 bilden, über Oder-Tore zusammenzuführen. Es kann eine Anzahl von Oder-Toren vorgesehen ■ein, und da die 1-Werte auf den Adern des Kabels 78 nur dann erscheinen können, wenn die entsprechenden Adern in Kabel 2.1 alle O-Werte führen, sind die Ausgangssignale der Oder-Tore tatsächlich· die Summe der beiden Variablen. In diesem Falle hätte der Index-Addierer nur zwei Eingänge, einen für das Indexregister-Datenwort
209811/0349
U99284
auf dem Kabel 62 und den anderen für ein DA1-WoTt, wobei das DA -Unterfeld des DA-Üortes vorher durch die Ziffern im Z-Re&ister mit der niedrigsten Stellenzahl mit Hilfe einer Anzahl von Oder-Toren verändert wird.
BAD ORIGINAL 209811/0349

Claims (2)

7.r. Ulrich 12 Patentansprüche
1. Datenbearbeitungssystem rait
einem Speicher zur i;peicl:erung von Programmbefehlsworten und Daten,
Zugriffsschalturgen zur Gewinnung und Einfügung von Torten aus bzw. in den Speicher,
einem Befehlsrortregister zur Darstellung aufeinanderfolgend gewonnener Befehlswortes wobei jedes Befehlswort ein üperationsfeld, ein Datenadressenfeld und ein Steuerfeld aufweist, einer Vielzahl von indizierbaren Registern, die an die Zugriff sschaltungen angeschaltet sind und auf das Steuerfeld im Befehlswortregister ansprechen,
einem Programmdecodierer, der auf das Operationsfeld jedes Befelswortes im Befehlswortregister anspricht und deren Ausführung steuert, und mit
einem Index-Addierer zur Arithmetischen Kombination des Inhaltes des durch das Steuerfeld angegebenen Indexregisters mit dem Inhalt des.Batenadreesenfeldes im Befehlswortregister, dadurch gekennzeichnet, daß das Datenadressenfeld eines Befehls ein erstes und ein zweites Datenadressenfeld enthält, und daß die Vielzahl von indizierbaren Registern (18,20,22,24) ein erstes indizierbares Register (24) aufweist, ferner Schaltungen (72, 84, 74,82, 86, 76, 26, 20, 19) zur Übertragung des Inhaltes derjenigen Zellen des ersten Registers (24), die durch das erste Datenadressenfeld angegeben werden, an den Index-Addierer (52) und
zusätzliche Schaltungen (21, 16, 44, 79), die die gleichzeitige Übertragung an den Index-Addierer (32) des Inhaltes des zweiten Datenadressenfeldes, des durch das Steuerfeld angegebenen indizierbaren Registers und des Inhaltes gewählter Zellen des ersten Registers, welche durch das erste Datenadressenfeld angegeben werden, sicherstellen.
2 0 9 811/0349 bM> oWQlNAL
2. Datenbearbeitungssystem nach Anspruch 1, dadurch gekennzeichnet, daß das erste Register (24) diejenige Zahl von Ziffern niedrigerer Stellenzahlen übertragen kann, welche durch das erste Datenadressenfeld angegeben wird, und daß die Schaltungen zur übertragung des Inhaltes angegebener Zellen des ersten Registers eine Schiebeschaltung (72) aufweist, welche auf das erste Datenadressenfeld anspricht und in Serienform den Inhalt in Reihe geschalteter Zellen des ersten Register« verschiebt, und ferner eine Leseschaltung (74)» welche das erste Register mit dem Index-Addierer verbindet.
209811/0349
DE1499284A 1964-10-07 1965-10-06 Datenverarbeitungsanlage Expired DE1499284C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US402272A US3343138A (en) 1964-10-07 1964-10-07 Data processor employing double indexing

Publications (3)

Publication Number Publication Date
DE1499284A1 true DE1499284A1 (de) 1972-03-09
DE1499284B2 DE1499284B2 (de) 1973-03-22
DE1499284C3 DE1499284C3 (de) 1973-10-18

Family

ID=23591239

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1499284A Expired DE1499284C3 (de) 1964-10-07 1965-10-06 Datenverarbeitungsanlage

Country Status (6)

Country Link
US (1) US3343138A (de)
BE (1) BE670567A (de)
DE (1) DE1499284C3 (de)
GB (1) GB1117230A (de)
NL (1) NL6513019A (de)
SE (1) SE316937B (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3906459A (en) * 1974-06-03 1975-09-16 Control Data Corp Binary data manipulation network having multiple function capability for computers
US4079451A (en) * 1976-04-07 1978-03-14 Honeywell Information Systems Inc. Word, byte and bit indexed addressing in a data processing system
US4037213A (en) * 1976-04-23 1977-07-19 International Business Machines Corporation Data processor using a four section instruction format for control of multi-operation functions by a single instruction
JPS54100634A (en) * 1978-01-26 1979-08-08 Toshiba Corp Computer
US4771281A (en) * 1984-02-13 1988-09-13 Prime Computer, Inc. Bit selection and routing apparatus and method
US11525621B2 (en) * 2018-03-12 2022-12-13 Whirlpool Corporation Anti-rolling icebox gasket for refrigerator swing doors

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3015441A (en) * 1957-09-04 1962-01-02 Ibm Indexing system for calculators
US3036773A (en) * 1957-12-26 1962-05-29 Ibm Indirect addressing in an electronic data processing machine
US3061192A (en) * 1958-08-18 1962-10-30 Sylvania Electric Prod Data processing system
US3249920A (en) * 1960-06-30 1966-05-03 Ibm Program control element
NL267513A (de) * 1960-07-25
US3247490A (en) * 1961-12-19 1966-04-19 Sperry Rand Corp Computer memory system
DE1160222B (de) * 1962-01-04 1963-12-27 Siemens Ag Schaltungsanordnung zur Adressenmodifikation bei einer programmgesteuerten digitalen Rechenmaschine
US3299261A (en) * 1963-12-16 1967-01-17 Ibm Multiple-input memory accessing apparatus

Also Published As

Publication number Publication date
BE670567A (de) 1966-01-31
US3343138A (en) 1967-09-19
GB1117230A (en) 1968-06-19
SE316937B (de) 1969-11-03
DE1499284B2 (de) 1973-03-22
NL6513019A (de) 1966-04-12
DE1499284C3 (de) 1973-10-18

Similar Documents

Publication Publication Date Title
DE2457312C3 (de) Anordnung zur Durchführung arithmetischer oder logischer Operationen an ausgewählten Gruppen aufeinanderfolgender Bits in einer Datenverarbeitungsanordnung
DE2062165A1 (de) Verfahren und Anordnung zum Sortieren oder Mischen von Datensätzen
DE1774052B1 (de) Rechner
DE1499206B2 (de) Rechenanlage
DE2632564A1 (de) Schaltung zur selbsttaetigen auswahl einer unter mehreren speichereinheiten mit einem adressenbereich
DE2854782A1 (de) Datenverarbeitungssystem
DE2739525A1 (de) Prozessor
DE1180171B (de) Zahlenrechner
DE1499284A1 (de) Datenbearbeitungsanlage
DE1900007A1 (de) Datenverarbeitungssystem
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE2556357A1 (de) Adressiereinrichtung
DE1250489B (de) I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher
DE1194605B (de) Verbesserung an Geraeten zur Verarbeitung von Angaben, Informationen od. dgl.
DE2601379C3 (de) Schaltungsanordnung zum Umwandeln virtueller Adressen in reelle Adressen
DE1549431A1 (de) Datenverarbeitendes System mit verbesserter Verbindung fuer Untersysteme
DE2136536C3 (de) Anordnung zur Komprimierung binarer Daten
DE1424756B2 (de) Schaltungsanordnung zum fehlergesicherten Einführen oder Wiedereinführer, von Programmen in den Hauptspeicher einer datenverarbeitenden Anlage
DE1524264C3 (de) Einrichtung zur Erzeugung einer Bildaufzeichnung
DE1474090B2 (de) Datenverarbeitungsanlage
DE3248393C2 (de)
DE2527236A1 (de) Informationsuebertragungssystem
DE1449567C3 (de) Digitales Datenverarbeitungssystem
DE1549582B1 (de) Anordnung zur bestimmung der niedrigstwertigen bit position
DE1424756C (de) Schaltungsanordnung zum fehlergesicher ten Einfuhren oder Wiedereinführen von Pro grammen m den Hauptspeicher einer daten verarbeitenden Anlage

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)