DE1499284B2 - Datenverarbeitungsanlage - Google Patents
DatenverarbeitungsanlageInfo
- Publication number
- DE1499284B2 DE1499284B2 DE19651499284 DE1499284A DE1499284B2 DE 1499284 B2 DE1499284 B2 DE 1499284B2 DE 19651499284 DE19651499284 DE 19651499284 DE 1499284 A DE1499284 A DE 1499284A DE 1499284 B2 DE1499284 B2 DE 1499284B2
- Authority
- DE
- Germany
- Prior art keywords
- register
- word
- index
- command
- field
- 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
Links
- 238000012545 processing Methods 0.000 title claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000000873 masking effect Effects 0.000 description 29
- 238000012546 transfer Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 3
- 239000011230 binding agent Substances 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/355—Indexed addressing
Description
Die Erfindung betrifft eine Datenverarbeitungsanlage mit einem Speicher für Befehlswörter und Daten,
einem Befehlswortregister zur Aufnahme von dem Speicher entnommenen Befehlswörtern, die je
ein Operationsfeld, ein Datenadreßfeld, ein Indexfeld und ein Steuerfeld aufweisen, einer Vielzahl von Indexregistern,
einem Befehlsdecodierer, der auf das Operationsfeld jedes Befehlswortes im Befehlswortregister
anspricht und dessen Ausführung steuert, und einem Index-Addierer zur arithmetischen Kombination
des Inhalts des durch das Indexfeld im Befehls-Wortregister angegebenen Indexregisters mit dem Inhalt
des Datenadreßfeldes im Befehlswortregister.
In bekannter Weise ermöglicht das Indizieren eine größere Anpassungsfähigkeit bei der Abänderung von
Adressen, deren Inhalt bei der Ausführung von Befehlen verarbeitet wird. Dabei ist es auch bekannt, in
bestimmten Fällen eine Doppelindizierung vorzusehen, also eine Adresse nicht nur durch den Inhalt
eines ersten Registers sondern auch durch den Inhalt eines zweiten Registers abzuändern. Dazu ist dann
ein erster Befehl nötig, um das Datenadreßfeld des Befehls mit dem Inhalt eines ersten Indexregisters
arithmetisch zu kombinieren. Ein zweiter Befehl ist nötig, um die erste Kombination (Datenadresse und
Inhalt des ersten Indexregisters) mit dem Inhalt eines zweiten Indexregisters arithmetisch zu kombinieren.
Es müssen also mindestens zwei Befehle ausgeführt werden, um ein endgültiges Datenadreßfeld abzuleiten,
das die Summe von Dreivariablen ist. Während des Indexvorganges kann nämlich bei der Ausführung
eines einzigen Befehls das Datenadreßfeld des Befehls nur jeweils zu dem vollständigen, in einem Indexregister
enthaltenen Datenwort addiert werden.
Der Erfindung liegt die Aufgabe zugrunde, eine Datenverarbeitungsanlage zu schaffen, bei der unter
Ausführung nur eines einzigen Befehls eine Doppelindizierung möglich ist.
Zur Lösung der Aufgabe geht die Erfindung aus von einer Datenverarbeitungsanlage der eingangs genannten
Art und ist dadurch gekennzeichnet, daß Schaltungen vorgesehen sind, die bei einem besonderen
Bitmuster im Steuerfeld auf Grund eines Teils des Datenadreßfeldes bestimmt, wie viele Bits in
einem bestimmten Indexregister gleichzeitig mit der Übertragung des Inhalts des durch das Indexfeld des
Befehlswortes angegebenen Indexregisters an den Index-Addierer übertragen werden.
Dem Index-Addierer werden bei der Ausführung eines Befehls dieser Art also neben dem Datenadressenfeld
der Inhalt eines wählbaren Indexregisters und ein wählbarer Teil des Inhalts eines bestimmten
Indexregisters zugeführt, so daß eine Doppelindizierung möglich ist, ohne daß mehrere Befehle ausgeführt
werden müssen.
Eine Weiterbildung der Erfindung sieht vor, daß eine Schiebeschaltung, die auf den Teil des Datenadressenfeldes
anspricht und in Serienform den Inhalt der Stellen des bestimmten Indexregisters verschiebt,
und eine Leseschaltung vorgesehen ist, die das bestimmte Indexregister mit dem Index-Addierer verbindet.
Nachfolgend wird ein Ausführungsbeispiel der Erfindung an Hand der Zeichnungen näher beschrieben.
F i g. 1 und 2 zeigen ein Blockschaltbild des Ausführungsbeispiels.
Der Programmspeicher 40 enthält eine Folge von Befehlswörtern, die nacheinander über das Kabel 48
zum Befehlswortregister 28 übertragen werden. Das jeweilige Befehlswort, das sich im Befehlswortregister
befindet, steuert die Operation der verschiedenen Einheiten der Anlage. Die Speicheradresse des Befehls,
der zum Befehlswortregister übertragen wird, ist im Programmadressenregister 38 enthalten. Die
Adresse wird über das Kabel 50 zum Programmspeicher gegeben, der den in der entsprechenden
Speicherstelle enthaltenen Befehl an das Befehlswortregister gibt. Die Adresse im Register 38 wird
kontinuierlich durch die Inkrementschaltung 36 weitergeschaltet. Da aufeinanderfolgend numerierte
Adressen im Register 38 enthalten sind, werden aufeinanderfolgend gespeicherte Befehle zum Befehlswortregister
28 übertragen. Es besteht jedoch bei der Anlage die Möglichkeit, die Übertragung eines Befehlswortes,
das nicht in der Folge liegt, zum Befehlswortregister zu steuern. Dazu wird eine Adresse über
das Kabel 52 zum Programmadressenregister 38 gegeben. Wenn das Befehlskabel XFR (Sprung) erregt
ist, wird diese Adresse in das Programmadressenregister eingeschrieben und der entsprechende Befehl
zum Befehlswortregister übertragen. Diese Adresse wird dann weitergeschaltet, um die Übertragung von
in aufeinanderfolgenden Adressen des Programmspeichers gespeicherten Befehlen an das Befehlswortregister
28 zu steuern.
Jedes Befehlswort besteht entsprechend der symbolischen Darstellung des Befehlswortregisters aus
vier Teilen, nämlich dem Operations-, dem DA-, dem IR- und dem ZJM-FeId, deren Bedeutung noch erläutert
wird. Das Operationsfeld ist ein Code (invariabel numerisch, wie auch die anderen Felder), der
bestimmt, welche Einheiten des Systems bei der Ausführung des durch das bestimmte Befehlswort angegebenen
Befehls in Tätigkeit tritt. Der Befehlsdecodierer 34 bestimmt aus den Bits des Operationsfeldes
den auszuführenden Befehl und erregt eines der vier in der Zeichnung strichpunktiert dargestellten Befehlskabel.
Diese übertragen die zur Ausführung des Befehls erforderlichen Informationen zu den verschiedenen
Einheiten des Systems. In dem dargestellten System können nur vier Befehle ausgeführt werden.
Die Erfindung ist jedoch in gleicher Weise bei Systemen anwendbar, bei denen wesentlich mehr Operationsarten
vorgesehen sind.
Das Datenadreßfeld (D/l-Feld) gibt entweder Daten
oder eine Adresse an. Gleichzeitig mit der Übertragung des Operationsfeldes an den Befehlsdecodierer
34 wird ein Unterfeld DAx des DA -Feldes über
das Kabel 21 direkt zum Index-Addierer 32 gegeben. Das Tor 30 ist normalerweise geöffnet. Es wird nur
dann gesperrt, wenn das Bit P des Steuerfeldes LPA im Befehlswortregister 28 eine 1 ist. Wenn das Bit P
0 ist, wird das DA .,-Unterfeld des DA -Feldes ebenfalls
zum Index Addierer 32 übertragen. Es wird also, wenn das Bit P 0 ist, das gesamte D/4-Feld zum Index-Addierer
gegeben. Der Index-Addierer 32 addiert die im DA-FeId des Befehlswortes enthaltene Zahl
zum Inhalt eines von einer Anzahl von im System vorgesehenen Indexregistern.
Der Registerleser 16 liest den Inhalt des Pufferregisters 12, des L-Registers 18, des Af-Registers 20,
des Y-Registers 20 oder des Z-Registers 24. Ein entsprechendes Kabel führt von jedem dieser fünf Register
zum Registerleser. Das Indexregisterfeld (IR-FeId)
gibt keines (wenn es leer ist) oder eines dieser fünf Register an, und der Inhalt des angegebenen
Registers wird über das Kabel 62 zum Index-Addierer 32 übertragen. Wenn kein Register im IR-Fdd
des Befehlwortes angegeben ist, werden keine Bits über das Kabel 62 zum Index-Addierer gegeben. Der
Index-Addierer bildet die Summe der Zahlen, die im DA -Feld 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 Adressenwort,
die durch das erregte der vier Befehlskabel in Tätigkeit gesetzt wird.
Von der Maskierschaltung 14 kann ein Wort zum Registerdirektor 44 übertragen werden. Der Registerdirektor
arbeitet, wenn eines der beiden Befehlskabel M(R) oder W(R) erregt ist. Informationen werden
zum Registerdirektor vom 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 Registerdirektor
auf dem Kabel 64 wird zu dem durch die Befehlskabelinformation angegebenen Register über
eines der fünf entsprechenden Ausgangskabel des Registerdirektors 44 übertragen.
Der Index-Addierer 32 wird in der Anlage nicht zur Addition von zwei Datenwörtern benutzt. Er ist
lediglich vorgesehen, um das DA-FcId eines Befehlswortes entsprechend dem Inhalt eines (oder von zwei,
wie später gezeigt wird) der Register im System abzuändern. Zur Bildung der Summe von zwei Datenwörtem
ist der Addierer 42 vorgesehen. Immer dann, wenn ein neues Wort durch den Registerdirektor in
das Y-Register eingeschrieben wird, wird das Wort zum Addierer 42 übertragen. Das Z-Register ist
über das Kabel 58 an den Addierer 42 angeschaltet und überträgt an den Addierer das in ihm gespeicherte
Wort. Wenn ein neues Wort in das Y-Register eingeschrieben wird, addiert der Addierer 42
dieses Wort zu dem Wort im Z-Register, und die Summe wird zum Z-Register übertragen und dort
gespeichert. Das neue Wort verbleibt im Y-Register und das Z-Register enthält die Summe des neuen
Wortes und des vorhergehenden Inhaltes des Z-Registers. Eine Addition von zwei Datenwörtern wird
also erreicht, indem zuerst der Registerdirektor 44 so gesteuert wird, daß er eines von ihnen in das
Z-Register einschreibt, und dann so gesteuert wird, daß er das andere in das Y-Register eingibt. Wenn
der Registerdirektor ein Wort in das Z-Register einschreibt, arbeitet der Addierer 42 nicht. Eine Addition
von zwei Digitalwörtern findet nur dann statt, wenn zuerst ein Wort in das Y-Register gegeben wird.
Bei vielen Datenverarbeitungsanlagen besteht für verschiedene Befehlsarten eine Produkt-Maskiermöglichkeit.
Dabei wird das logische Produkt (UND) entsprechender Bits der Maske und von Datenwörtern
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 Bits arbeitenden Anlage das Datenwort 101011 vom Datenspeicher zu einem Register übertragen.
Bei dieser Übertragung läuft das Wort durch die Maskierschaltung. Es sei angenommen, daß die
von der Maskierschaltung benutzte Maske 011110 ist das sich ergebende maskierte Wort, das im Register
gespeichert ist, ist dann 001010.
Immer dann, wenn eine Maskierung erforderlich ist, muß das Maskierwort zuerst im L-Register gespeichert
werden. Dieses Register ist über das Kabel 60 mit der Maskierschaltung 14 verbunden und steuert
die Maskierung eines durch die Maskierschaltung übertragenen Wortes. Die Maskierschaltung ist zweiseitig
gerichtet. Ein vom Registerleser 16 zur Maskierschaltung über das Kabel 56 übertragenes Wort kann
durch die Maske im L-Register maskiert werden, bevor es im Pufferregister 12 gespeichert wird. Analog
kann das Wort im Pufferregister oder auf dem Kabel 55 in der Maskierschaltung maskiert und über das
Kabel 64 zum Registerdirektor 44 übertragen und von dort zu einem der fünf Speicherregister im
System gegeben werden (Es kann zurück zum Pufferregister und zu einem der anderen vier Register übertragen
werden). Die Maskierschaltung 14 maskiert das sie durchlaufende Wort mit der Maske im L-Register
nur dann, wenn das Bit L im LPA-Fud des Befehlswortregisters 28 eine 1 ist. Das Bit L wird
über die Ader L zur Maskierschaltung 14 übertragen, und wenn es eine 0 ist, läßt die Maskierschaltung das
Datenwort unverändert durch.
Das Pufferregister stellt einen Puffer zwischen dem Datenspeicher 10 und dem Rest der Anlage dar. Die
von der Anlage zu bearbeitenden Daten sind im Datenspeicher 10 enthalten. Eine Adresse wird über die
Kabel 53 und 66 vom Index-Addierer 32 zum Datenspeicher 10 übertragen. Wenn ein Wort aus dem
Datenspeicher abgelesen werden soll, ist das Befehls-
kabel M (R) erregt, und das in der angegebenen Stelle des Datenspeichers enthaltene Wort zum Pufferregister
12 übertragen. Wenn ein Wort in den Datenspeicher einzuschreiben ist, ist das Befehlskabel (R) M
erregt, und das im Pufferregister 12 gespeicherte Wort wird in die angegebene Stelle des Datenspeichers eingeschrieben.
Wenn ein Wort vom Datenspeicher 10 zum Pufferregister 12 gegeben wird, wird es automatisch aus
dem Pufferregister zur Maskierschaltung 14 übertragen. Entsprechend wird, wenn ein Wort vom Registerleser
16 durch die Markierschaltung 14 zum Pufferregister 12 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 Register in den Datenspeicher 10 einzuschreiben ist, wird es vom
Registerleser 16 über die Maskierschaltung 14 zum Pufferregister 12 übertragen. Es kann erwünscht sein,
dieses Wort erneut zu bearbeiten, beispielsweise, indem die Inkrementschaltung 70 so gesteuert wird,
daß sie eine 1 zu dem Wort addiert. Aus diesem Grund bleibt das Wort außerdem im Pufferregister
gespeichert. Analog kann es erwünscht sein, wenn ein Datenwort aus dem Datenspeicher über das Pufferregister,
die Maskierungsschaltung 14 und den Registerdirektor 44 zu 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 und Rückspeicherung im Datenspeicher möglich ist. Entsprechend
bleibt, wenn der Registerleser 16 ein Datenwort aus dem Pufferregister 12 abliest, der Inhalt des Pufferregisters
unverändert. Auch der Inhalt der anderen Register bleibt unverändert, wenn der Registerleser
16 ein Datenwort aus einem von ihnen abliest.
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-Vorgang während
der Ausführung des vorhergehenden Befehls abgeleitet worden ist. Der Decodierer 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 stellt ihn vor der Ausführung des
neuen Befehls zurück.
Das Steuerfeld LPA des Befehlswortes im Befehlswortregister
enthält drei Informations-Bits, welche die Erregung der drei entsprechenden Adern L, P
und A steuern. Die Erregung der Ader L steuert, wie oben beschrieben, die Maskierschaltung 14. Wenn das
Bit A eine 1 ist, läßt es die Inkrement-Steuerschaltung 70 eine 1 zum Inhalt des Pufferregisters addieren, bevor
der Befehl selbst ausgeführt wird. Das Bit P steuert die Übertragung des IM .,-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 das Tor 26 gesperrt. Das Dy42-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 DA .,-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 Befehlsarten individuell betrachtet wird.
Bei der folgenden Analyse der vier Befehlsarten ist das Bit P eine 0, und das gesamte DA-Fdd im Befehlsregister
28 wird zum Index-Addierer 32 übertragen. Die Schiebeschaltung 72 und die Leseschaltung
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 Sprungbefehl steuert einen Sprung auf einen neuen Befehl außerhalb der laufenden Folge. Ein
typischer Befehl kann lauten XFR, 500, Y, 000. Der Decodierer 34 erregt das Befehlskabel XFR. Dieses
Befehlskabel ist nur mit dem Programmadreßregister 38 verbunden, so daß eine neue Adresse, die auf dem
Kabel 52 erscheint, in das Register eingeschrieben werden kann. Da das Bit P 0 ist, ist das Tor 30 geöffnet,
und das vollständige DA-FeId wird zum Index-Addierer übertragen. Vorher gibt der Decodierer 34
einen Rückstellimpuls zur Rückstellung des Index-Addierers auf die Ader 46. Das DA-FeId, 500, wird
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 zum Registerleser 16 gegeben. Der 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. Der Index-Addierer addiert das D^I-FeId zu seinem
Inhalt, und die Summe 525 erscheint an seinem Ausgang. Diese Zahl wird außer zum Programmadressenregister
38 auch zum Datenspeicher 10 und zum Tor 79 übertragen, aber der Datenspeicher und das Tor
sind durch das Befehlskabel XFR nicht erregt. Die Zahl 525 auf dem Kabel 52 wird nur in das Programmadressenregister
38 eingeschrieben, da das erregte Befehlskabel nur mit dieser Einheit verbunden ist. Der nächste über das Kabel 48 zum Befehlswortregister
28 übertragene Befehl ist derjenige, der in der Speicherstelle des Programmspeichers mit der
Adresse 525 gespeichert ist. Diese Adresse wird dann nachfolgend im Programmadressenregister weitergeschaltet.
Bei der Ausführung eines Sprungbefehls kann das Bit L eine 0 sein, aber auch dann hat es keinen Einfluß
auf das System. Ein Wort wird nur dann über die Maskierschaltung 14 übertragen, wenn der Registerleser
16 auf Grund eines Befehls (R) M arbeitet, das Tor 79 bei einem Befehl W(R) geöffnet ist oder wenn
ein Wort zuerst bei der Ausführung eines Befehls M(R) aus dem Datenspeicher 10 in das Pufferregister
12 geschrieben wird, wobei das Wort dann automatisch vom Pufferregister zur Maskierschaltung 14 gegeben
wird. Bei der Ausführung eines Sprungbefehls wird kein Wort zur Maskierschaltung übertragen, so
daß, auch wenn das Bit L eine 1 ist, kein Wort vorhanden ist, das in der Maskierschaltung 14 maskiert
sein könnte.
Man beachte, daß der Registerleser 16 den Inhalt des im /Ä-Feld angegebenen Registers zur Übertragung
an den Tndexaddierer auf das Kabel 62 gibt. Bei einem Befehl (R)M gibt der Registerleser ebenfalls
ein Wort auf das Kabel 56, aber diese Operation wird durch das Befehlskabel (R) M gesteuert. Bei der
Ausführung eines Sprungbefehls ist nur das Befehlskabel XFR erregt, und der Registerleser gibt den
7 8
Inhalt des im /R-FeId angegebenen Registers nur an ist immer erregt, wenn ein Befehl MB, ML, MX,
das Kabel 62. Die Adresse im IM-FeId des Befehls- MY oder MZ ausgeführt wird. Der zweite Buchstabe
wortes kann durch den Inhalt des angegebenen Re- im Operationsfeld des Befehlswortes stellt das Registers
geändert werden, und auf diese geänderte gister dar, in welches die Daten oder das Speicher-Adresse
erfolgt der Sprung. 5 wort einzuschreiben sind. Die Identität des Registers
Wenn das im DA-FeId eines Befehlswortes enthal- wird über das Befehlskabel zum Registerdirektor 44
tene Wort in eines der fünf Register einzuschreiben übertragen.
ist, wird das Befehlskabel W(R) erregt. Der Code, der Das IR-FeId gibt dasjenige der fünf Register an,
im Operationsfeld des Befehlswortregisters erscheint, dessen Inhalt zum Index-Addierer 32 zu übertragen
ist entweder WB, WL, WX, WY oder WZ. Das (R) io ist, um bei dem Index-Vorgang benutzt zu werden,
in der Bezeichnung W(R) gibt an, daß irgendeiner Wie bei der Ausführung von Befehlen XFR und
der fünft speziellen Codierungen in dem Operations- W (R) wird nach Rückstellung des Index-Addierers
feld des Befehlswortes erscheinen kann. Das B in das DA-FeId im Index-Addierer zum Inhalt des im
dem Code WB gibt an, daß das DA-FeId in das Puf- IR-FeId angegebenen Registers addiert. Die Summe
ferregister einzuschreiben ist. 15 wird über die Kabel 53 und 56 zum Datenspeicher
Bei der Ausführung eines Befehls W (R) gibt das 10 übertragen und stellt die Adresse im Datenspei-/R-FeId
wiederum dasjenige der fünf Register an, eher dar, deren Inhalt zum Pufferregister 12 zu geben
dessen Inhalt bei dem Index-Vorgang zu dem DA- ist. Das Wort wird dann automatisch vom Puffer-Feld
zu addieren ist. Das Summenwort wird in dem register über die Maskierschaltung 14 zum Register-Register
gespeichert, dessen Identität im Operations- 20 direktor 44 übertragen. Es wird durch den Inhalt des
feld enthalten ist. Der Registerleser 16 liest das Wort L-Registers nur dann maskiert, wenn das Bit L im
ab, das in dem angegebenen der Register 12, 18, 20, ZJM-FeId des Befehlswortes eine 1 ist. Das maskierte
22 und 24 gespeichert ist, und überträgt es über das Wort auf dem Kabel 64 wird dann vom Register-Kabel
62 zum Index-Addierer 32. Das zum Index- direktor 44 zu dem im Operationsfeld angegebenen
Addierer übertragene DA-FeId wird zu dem Daten- 25 der fünf Register übertragen. Man beachte, daß das
wort addiert, das über das Kabel 62 zum Index-Ad- Ausgangssignal des Index-Addierers auf dem Kabel
dierer 32 gegeben worden ist. Das Programmadres- 68 zum Tor 79 und auch zum Datenspeicher gegeben
senregister 38 und der Datenspeicher 10 sind bei der wird. Bei der Ausführung eines Befehls M(R) ist das
Ausführung eines Befehls W(R) nicht erregt. Der Tor 79 jedoch nicht geöffnet.
Registerdirektor 44 ist jedoch über das Befehlskabel 30 Wenn ein Befehl (M(R) ausgeführt wird, kann das
W(R) in Tätigkeit gesetzt und wird von der Identität Bit A eine 1 sein. Aber auch in diesem Falle hat es
entweder des Pufferregisters oder eines der Register keinen Einfluß auf das System. Wenn es eine 1 ist,
L, X, Y und Z in Kenntnis gesetzt. Das abgeänderte wird der Inhalt des Pufferregisters 12 vor Ausfüh-
DA-FeId wird über das geöffnete Tor 79 zur Mas- rung des Befehls weitergeschaltet. Das Wort im Puf-
kierschaltung 14 übertragen und von dort über das 35 ferregister wird jedoch gelöscht, wenn das neue
Kabel 64 zum Registerdirektor. Der Registerdirektor Wort aus dem Datenspeicher in das Pufferregister
schreibt das Wort entsprechend dem speziellen der gegeben wird. Aus diesem Grund besteht kein An-
fünf Befehle W (R), der ausgeführt wird, in eines der laß, den ursprünglichen Inhalt des Pufferregisters zu-
fünf Register ein. nächst weiterzuschalten, und das Bit A sollte bei
Wenn das Befehlskabel W(R) erregt ist, öffnet es 40 einem Befehl M (R) eine 0 sein.
das Tor 79. Nur bei der Ausführung eines Befehls Die vierte Befehlsart ist ein Befehl (R)M, der die
W(R) wird das Ausgangssignal des Index-Addierers Einspeicherung des in einem bestimmten der fünf
über das Kabel 55 zur Maskierschaltung übertragen. Register enthaltenen Wortes in den Datenspeicher
Wenn das Bit L eine 1 ist, wird das Wort, das durch steuert. Es sei angenommen, daß der Befehl ZM,
die Maskierschaltung läuft, durch die Maske im L- 45 500, Y, 100 ausgeführt wird und der Inhalt des
Register maskiert. Das sich ergebende maskierte Wort Y-Registers 25 ist. Da das Bit P eine 0 ist, wird das
wird in dem im Operationsfeld angegebenen Register vollständige DA-FeM, 500, zum Index-Addierer
gespeichert. übertragen. Gleichzeitig gibt der Registerleser 16 den
Das DA -Feld kann nur aus 0-Werten bestehen. In Inhalt des Y-Registers über das Kabel 62 an den
diesem Fall besteht das A.usgangssignal des Tndex- 50 Index-Addierer. Die im Index-Addierer gebildete
Addierers lediglich aus dem Inhalt des im /R-FeId Summe, 525, wird über die Kabel 53 und 66 zum
angegebenen Registers. Der Befehl W(R) kann auf Datenspeicher 10 übertragen. Das Befehlskabel (R) M
diese Weise zur Übertragung eines Datenwortes aus wird erregt und setzt den Datenspeicher davon in
einem Register in ein anderes benutzt werden. Das Kenntnis, daß die Zahl 525 die Adresse der Speicher-Bit
A kann bei der Ausführung eines Befehls W(R) 55 stelle ist, in welcher das als nächstes in das Puffereine
1 sein. Dann steuert es lediglich das Weiterschal- register einzuschreibende Wort gespeichert werden
ten des Wortes im Pufferregister 12 vor der Ausfüh- soll. Der Code ZM im Operationsfeld steuert die
rung des Befehls. Wenn jedoch ein Befehl WB ausge- Übertragung eines Kommandos über das Befehlsführt
wird, hat das Bit/4, auch wenn es eine 1 ist, kabel (R)M zum Registerleser 16, den Inhalt des
keinen Einfluß auf das System. Der Inhalt des Puffer- 60 Z-Registers abzulesen und das Datenwort an das
registers 12 wird weitergeschaltet, aber unmittelbar Kabel 56 zu geben. Der Registerleser 16 arbeitet
danach gibt der Registerdirektor das übertragene Wort zweimal nacheinander, und zwar zuerst auf Grund
in das Pufferregister, und das weitergeschaltete Wort des Code Y im /R-FeId und dann auf Grund des
wird gelöscht. Aus diesem Grunde sollte das Bit A Code Z im Operationsfeld, wobei der Inhalt des
bei der Ausführung eines Befehls WB immer 0 sein. 65 Y-Registers an das Kabel 62 und der Inhalt des
Die dritte Befehlsart steuert das Ablesen eines Z-Registers an das Kabel 56 gegeben wird. Das Wort
Wortes im Datenspeicher und dessen Einschreiben in im Z-Register wird über die Maskierschaltung 14
eines der fünf Register. Das Befehlskabel M (R) zum Pufferregister 12 übertragen, und, da das Bit L
9 10
eine 1 ist, durch den Inhalt des L-Registers maskiert. größerem Umfang auf dem Gebiet der Nachrichten-
Das maskierte, zum Pufferregister übertragene Wort Übertragungen verwendet. Beispielsweise kann eine
wird dann in die Speicherstelle des Datenspeichers Datenverarbeitungsanlage benutzt werden, um die
mit der Adresse 525 eingeschrieben. Verfügbarkeit eines Weges durch ein Fernsprechver-
Bisher wurde die Betriebsweise des Systems be- 5 mittlungsnetzwerk festzustellen. Es sei angenommen,
trachtet, wenn das Befehlswort im Befehlswortregi- daß in einem bestimmten Netzwerk vier Stufen vorster
28 für das Bit P eine 0 enthält. Der Index-Ad- handen sind, die jeweils viele Verbindergruppen aufdierer
weist vier Eingänge auf, nämlich die Kabel 21, weisen, und daß acht Kreuzpunkte in jeder Verbin-17,
62 und 78. Wenn das Bit P eine 0 ist, werden dergruppe vorhanden sind. Ein Weg kann durch
die DA1- und DA ,-Unterfelder zum Index-Addierer io das Netzwerk nur dann durchgeschaltet werden,
über die Kabel 21 und 17 und der Inhalt des im IR- wenn ein gleich numerierter Kreuzpunkt in einer VerFeld
des Befehlswortes angegebenen Registers über bindergruppe jeder dieser vier Stufen zur Verfügung
das Kabel 62 zum Index-Addierer übertragen. Über steht. Der Zustand (verfügbar oder nicht verfügbar)
das Kabel 78 wird nicht zum Index-Addierer über- jedes Kreuzpunktes kann durch eine der beiden
tragen, und der Index-Addierer bildet lediglich die 15 Binärzahlen dargestellt werden, wobei eine 1 anSumme
des DA-Feldes im Befehlswortregister und zeigt, daß der Kreuzpunkt verfügbar ist, und eine 0,
des Datenwortes in dem durch das IR-FeId ange- daß er nicht verfügbar ist. Vier Datenworte mit acht
gegebenen Indexregister. Wenn das Bit P jedoch Bits können den Zustand der Kreuzpunkte von vier
eine 1 ist, wird nur das D/i1-Unterfeld zum Index- Verbindergruppen darstellen. Um die Verfügbarkeit
Addierer übertragen. Das DA 2-Unterield wird über 20 eines der acht Wege über diese vier Verbindergrupdas
Tor 26 und die Kabel 76 und 86 zur Schiebe- pen festzustellen, muß nur bestätigt werden, daß eine
schaltung 72 und zur Leseschaltung 74 übertragen. 1 in der entsprechenden Position jedes der vier
Die Leseschaltung 74 ist mit den Stufen des Z-Regi- Datenworte vorhanden ist. Wenn also die vier Wörsters
verbunden, welche die Bits der niedrigsten Stel- ter, welche den Zustand der Kreuzungspunkte wielenzahlen
enthalten. Die Zahl von Stufen, mit wel- 25 dergeben, 11100000, 1101110, 01111101 und
eher die Leseschaltung verbunden ist, hängt von der 11110011 sind, zeigt sich, daß der einzige verfüg-Maximalzahl
von Bits ab, die bei einer gegebenen bare Weg über diejenigen vier Kreuzungspunkte
Anwendung vom Z-Register zum Index-Addierer führt, deren Zustand durch das Bit mit der zweitzu
übertragen sind. Das DA .,-Unterfeld gibt eine höchsten Stellenzahl in jedem der vier Worte mit
Zahl von Bits, beispielsweise vier, an. Die Lese- 30 acht Bits dargestellt wird.
schaltung 74 liest die vier Bits mit der niedrigsten Der verfügbare Weg oder die verfügbaren Wege
Stellenzahl im Z-Register ab und überträgt sie über lassen sich wie folgt bestimmen: Es wird das logi-
das Kabel 78 zum Index-Addierer 32. Der Inhalt des sehe Produkt (UND-Verknüpfung) der ersten beiden
angegebenen Indexregisters erscheint, wie üblich, auf Wörter mit acht Bits gebildet. Das Ergebnis ist
dem Kabel 62. Der Index-Addierer bildet dann die 35 11000000. Das logische Produkt dieses Produktes
Summe des IMj-Unterfeldes, des Datenwortes auf mit dem dritten Wort wird gebildet. Das logische
dem Kabel 62 und der vier Bits auf dem Kabel 78. Produkt von 11000010 und 01111101 ist 01000000.
Das DA -Feld des Befehlswortes, oder genauer, das Endlich wird das logische Produkt dieses Produktes
D^-Unterfeld, wird auf diese Weise nicht nur durch mit dem vierten Wort gebildet. Das Ergebnis,
das Datenwort in dem durch das /i?-Feld angegebe- 40 01000000, bestätigt, daß der einzige verfügbare Weg
nen Indexregister verändert, sondern außerdem über die vier Verbindergruppen über die vier Kreu-
durch die vier Bits mit der niedrigsten Stellenzahl im zungspunkte führt, deren Zustand durch das zweite
Z-Register. Bit von links der vier Wörter mit acht Bits dargestellt
Unmittelbar nach der Operation der Leseschaltung wird.
74 tritt die Schiebeschaltung 72 in Tätigkeit. Sie 45 Zur Erläuterung soll im folgenden der Octal-Code
überträgt Steuersignale über das Kabel 84 zum benutzt werden. Das Z-Register enthält beispiels-
Z-Register. Das Wort im Z-Register wird nach weise 24 Bits, aber ein Octal-Code mit acht Ziffern
rechts verschoben, also in Richtung auf niedrigere reicht aus, um jedes Datenwort im Register darzu-
Stellenzahlen. Die Größe der Verschiebung hängt stellen. Adressen werden ebenfalls im Octal-Code
von der Zahl der Bits mit der niedrigsten Stellenzahl 50 angegeben. Beispielsweise entspricht die Adresse 100
ab, die durch die Leseschaltung 74 abgelesen worden der Dezimal-Adresse 64.
sind. In dem gewählten Beispiel wird das Datenwort Es sei angenommen, daß das erfindungsgemäße
im Z-Register um vier Stellen nach rechts verscho- Ausführungsbeispiel einer Datenverarbeitungsanlage
ben. Diese Schiebeoperation findet zur Vorbereitung benutzt wird, um die Verfügbarkeit eines Weges
des nächsten Befehls statt. Die Bit mit der niedrig- 55 durch ein Vermittlungsnetzwerk zu bestimmen. Die
sten Stellenzahl im Z-Register nach dem Index-Vor- Wörter mit acht Bits, welche den Zustand der entgang
werden aus dem Register hinausgeschoben. Die sprechenden Verbindergruppen darstellen, können
Bits, die als nächste bei einem Index-Vorgang erfor- (nachdem sie auf den neuesten Stand gebracht sind)
derlich sein mögen, werden in die Stufen mit der im Datenspeicher in einer Folge von Tabellen geniedrigsten
Stellenzahl des Z-Registers gegeben. Auf 60 speichert werden. Es sei angenommen, daß vier Tadiese
Weise können diese Bits durch die Leseschal- bellen A bis D vorhanden sind, die jeweils 100 Vertung
74 aus dem Z-Register ausgelassen werden, ob- bindergruppen zugeordnet sind. Das Wort, welches
wohl die Leseschaltung über das Kabel 82 nur mit den Zustand der acht Kreuzungspunkte in einer beden
Stufen der niedrigsten Stellenzahl des Z-Regi- stimmten Verbindergruppe wiedergibt, wird im folsters
verbunden ist. 6g genden »Zustandswort« genannt. Jedes Zustands-
Der mit der Erfindung erzielte Fortschritt läßt wort wird durch ein Symbol, wie beispielsweise WA.M,
sich am besten an Hand eines speziellen Beispiels er- wiedergegeben. Die Indizes A bis D geben an, ob
kennen. Datenverarbeitungsanlagen werden in immer das Zustandswort der ersten, zweiten, dritten oder
Adresse 1000 1001 |
Zustandsort ^ 00 |
1077 | |
1100 1101 |
W'b oo Wb01 |
1177 1200 1201 |
War, Wc oo Wc01 |
1277 | w'c„ |
1300 1301 |
WD 00
Wo01 |
1377 | Wn7, |
11 12
vierten Stufe des speziellen Netzwerkes zugeordnet daß der Octal-Code benutzt wird. Das LPA -Feld
ist. Eine der Zahlen 00-77 im Index gibt an, wel- weist drei Ziffern (jeweils 0 oder 1) auf. Die vier
chem der 100 Verbindergruppen das Zustandswort Felder eines Befehlswortes sind durch Kommata gezugeordnet
ist. So ist das Zustandswort WA.^ den trennt. Die Unterfelder DA1 und DA2 sind durch
acht Kreuzungspunkten in der 33sten Verbinder- 5 einen Schrägstrich getrennt. Eine 6 im IM.,-Untergruppe
der Stufe A zugeordnet. feld entspricht zwei Octal-Ziffern — die Bits im
Die 400 Zustandsworte werden im Datenspeicher Z-Register werden um sechs Positionen oder zwei
10 in vier Tabellen A bis D mit jeweils 100 Wörter Octal-Positionen verschoben.
gespeichert. Das erste Wort der Tabelle A ist in der Bei der Herstellung einer Gesprächsverbindung,
Speicherstelle 1000 und das letzte Wort der Ta- io bei der die vier oben angegebenen Verbindergruppen
belle D in der Speicherstelle 1377 gespeichert. Die in Betracht gezogen werden, wird die Zahl 28546235
400 Zustandswörter sind also im Speicher auf fol- in das Z-Register gegeben. Die Zahl 1000 wird in
gende Weise gespeichert: das Y-Register gegeben. Danach sind nur die folgen
den vier Befehle erforderlich, um die Verfügbarkeit 15 eines Weges über die vier Verbindergruppen festzustellen:
ML, 0/6, Y, 010
ML, 100/6, Y, 110
ML, 200/6, Y, 110
20 ML, 300/6, Y, 110
ML, 100/6, Y, 110
ML, 200/6, Y, 110
20 ML, 300/6, Y, 110
Als erstes Befehlswort wird der erste der oben angegebenen vier Befehle in das Befehlswortregister 28
eingegeben. Das Y im //?-Feld bewirkt, daß der Re-25
gisterleser 16 den Inhalt des F-Registers an den Index-Addierer 32 überträgt. Es erscheint also die
Zahl 1000 auf dem Kabel 62. Das Bit P im LPA-FeId
ist eine 1. Folglich wird das D^-Unterfeld, 0,
zum Index-Addierer 32 über das Kabel 21 und das 30 DA .,-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, ab
Es sei angenommen, daß festgestellt werden soll, und überträgt sie über das Kabel 78 zum Index-Adob
ein Weg über die Verbindergruppe 35 in der 35 dierer 32. Der Index-Addierer leitet dann die Summe
Stufe A, die Verbindergruppe 62 in der Stufe B, die der Zahlen 1000, 0 und 35 ab. Die sich ergebende
Verbindergruppe 54 in der Stufe C und die Verbin- Adresse 1035 wird über die Kabel 53 und 66 zum
dergruppe 28 in der Stufe D verfügbar ist. Dann Datenspeicher 10 gegeben, und da das Befehlskabel
müssen aus dem Datenspeicher die vier Zustande- M (R) erregt ist, wird das Zustandswort WA 35 vom
Wörter abgelesen werden, die in den Speicherstellen 40 Datenspeicher 10 zum Pufferregister und von dort
1035, 1162, 1254 und 1328 gespeichert sind. Die zur Maskierschaltung 14 übertragen. Das Bit L im
drei aufeinanderfolgenden logischen Produkte, die Befehlswortregister ist eine 0, und folglich wird das
aus den Zustandsworten WA 35, Wn 02, Wc 54 und W0 28 Zustandswort WA 3, nicht durch den Inhalt des L-Regebildet
worden sind, führen zu einem Wort mit acht gisters maskiert. Das Zustandswort geht über die
Bits, das die Verfügbarkeit von Wegen über die vier 45 Maskierschaltung 14 zum Registerdirektor 44. Da das
gewählten Verbindergruppen in den Stufen A, B, C Operationsfeld ML ist, wird das Zustandswort im
und D anzeigt. L-Register gespeichert. Unmittelbar nachdem die
Um jedes dieser vier Zustandswörter aus dem beiden Ziffern mit der niedrigsten Ziffernstelle im
Datenspeicher 10 zum Pufferregister 12 und zur Mas- Z-Register zum Index-Addierer übertragen worden
kierschaltung 14 zu geben, müssen drei Informa- 50 sind, tritt die Schiebeschaltung 72 in Tätigkeit und
tionsstücke angegeben werden. Zuerst muß die Spei- schiebt den Inhalt des Z-Registers um zwei (Octal-)
cherstelle, in welcher das erste Wort in der Tabelle A Positionen nach rechts. Die Ziffern, die vorher in der
gespeichert ist, die Speicherstelle 1000, identifiziert dritten und vierten Stufe des Z-Registers enthalten
werden, um die Tabellen A bis D von anderen Daten waren, befinden sich jetzt in den ersten beiden Stuzu
unterscheiden, die im Datenspeicher 10 enthalten 55 fen. Damit wird die Ausführung des nächsten Besein
können. Zweitens muß die Zahl von Daten- fehls vorbereitet.
speicherstellen zwischen der Stelle 1000 und der Der zweite ausgeführte Befehl entspricht bis auf
Speicherstelle des ersten Wortes in einer der vier drei Abweichungen dem ersten Befehl. Zum einen ist
Tabellen identifiziert werden. Das zweite Informa- das über das Kabel 21 zum Index-Addierer 32 übertionsstück
ist daher immer eine der Zahlen 0, 100, 60 tragene DA ,-Unterfeld 100 statt 0. Zweitens wird die
200 oder 300. Das dritte Informationsstück ist die Octalzahl 62 durch die Leseschaltung 74 zum Index-Zahl
von Speicherstellen, welche das gewünschte Zu- Addierer 32 übertragen. Die im Index-Addierer gestandswort
von dem ersten Wort in der gleichen Ta- bildete Summe ist 1162. Drittens wird das aus dem
belle trennen, d. h. eine der Zahlen 00-77. Beispiels- Datenspeicher abgelesene und über die Maskierweise
müssen zur Identifizierung des Zustandswortes 65 schaltung übertragene Zustandswort WBe2 jetzt durch
J^c54 die Zahlen 1000, 200 und 54 angegeben wer- den Inhalt des L-Registers maskiert, da das Bit L
den. im LPA-Fdd eine 1 ist. Das Zustandswort WB G2
Für die folgende Erläuterung sei daran erinnert, wird also durch das Zustandswort WA 35 maskiert.
13 14
Das sich ergebende maskierte Wort auf dem Kabel kann es wünschenswert sein, das Datenwort im
64 ist das logische Produkt der ersten beiden Zu- Z-Register um eine Zahl von Positionen zu verschiestandswörter.
Dieses logische Produkt wird im L-Re- ben, die nicht gleich der Zahl von Bits ist, die von
gister gespeichert und ersetzt das vorher darin be- der Leseschaltung aus dem Register abgelesen wernndliche
Zustandswort WAs5. Dann steuert die 5 den. Beispielsweise kann eine bestimmte Folge er-Schiebeschaltung
72 erneut das Verschieben des In- fordern, daß zwei Octal-Ziffern aus dem Register
haltes des Z-Registers um zwei Ziffern nach rechts. gelesen werden, und das Datenwort dann um vier
Bei der Ausführung des dritten Befehls findet eine Octal-Positionen nach recht verschoben wird. Bei
ähnliche Folge von Vorgängen statt. Die einzigen solchen Systemen kann das DA .,-Unterfeld zwei InUnterschiede
bestehen darin, daß das zum Index- io formationen enthalten. Die erste gibt der Leseschal-Addierer
übertragene D^1-Unterfeld 200 statt 100 tung74 die Zahl der aus dem Register abzulesenden
ist, und daß die Zahl 54 statt der Zahl 62 von der Bits an, und die zweite der Schiebeschaltung 72 die
Leseschaltung 74 zum Index-Addierer gegeben wird. Größe der Verschiebung. Analog kann es bei man-Das
Ausgangssignal des Index-Addierers ist daher chen Anwendungen erwünscht sein, eine Rotation
1254, und das Zustandswort WCii wird aus dem 15 statt einer Verschiebung des Datenwortes im Z-Re-Datenspeicher
abgelesen. Dieses Zustandswort wird gister oder sogar eine Verschiebung nach links statt
durch das logische Produkt maskiert, das vorher ge- nach rechts zu veranlassen. In einem solchen Fall
bildet und im L-Register gespeichert worden war. kann das Dy42-Unterfeld zusätzlich Informationen
Das sich ergebende logische Produkt wird dann in hinsichtlich der Art der erforderlichen Schiebeoperadas
L-Register eingegeben. 20 tion enthalten, wobei die Schiebeschaltung 72 die geWenn
schließlich der vierte Befehl ausgeführt wünschte Operation für das Datenwort im Z-Regiwird,
ist das Ausgangssignal des Index-Addierers ster entsprechend dem im Z)/4 .,-Unterfeld dargestell-1328,
und das Zustandswort WD „8 wird aus dem ten Kommando ausführt.
Datenspeicher abgelesen. Es wird durch das logische Bei dem Ausführungsbeispiel der Erfindung muß
Produkt maskiert, das vorher im L-Register gespei- 25 der Index-Addierer 32 drei Zahlen addieren können,
chert worden ist. Das sich ergebende logische Pro- nämlich einen Teil des oder das vollständige DA-dukt
wird in das L-Register eingespeichert. Wie oben Feld, ein über das Kabel 62 übertragenes Indexregierläutert,
zeigt das endgültige logische Produkt an, ster-Datenwort und einen Teil des über das Kabel 78
welche Wege durch die gewählten vier Verbinder- übertragenen Z-Register-Datenwortes. Addierer, die
gruppen verfügbar sind. Die Gesprächsverbindung 30 drei Variable addieren können, sind im allgemeinen
kann dann entsprechend nachfolgenden, zum Befehls- teurer als Addierer, die nur zwei Variable addieren
Wortregister übertragenen Befehlen hergestellt können. Bei vielen Anwendungen besteht die Mögwerden,
lichkeit, den Index-Addierer 32 zu vereinfachen. Für Zur vollen Würdigung der erreichten Vorteile das oben beschriebene Fernsprechsystem sei angemuß
die eben beschriebene Untergruppe von vier 35 nommen, daß das ZMj-Unterfeld immer wenigstens
Befehlen noch näher untersucht werden. Man könnte η Octalziffem aufweist, von denen m Ziffern mit der
fragen, warum es erforderlich ist, das Bit P in jedem niedrigsten Stellenzahl (m kleiner als oder gleich n)
der Befehle zu einer 1 zu machen und die beiden immer O-Werte enthalten, und daß in keinem Fall
Unterfelder des DA -Feldes zu verschiedenen Einhei- mehr als m Octalziffem vom Z-Register zum Indexten
zu übertragen, statt nacheinander die vollständi- 40 Addierer übertragen werden (n und m können sich
gen ZM-Felder 1035, 1162, 1254 und 1328 direkt von Befehl zu Befehl ändern). In einem solchen Fall
zum Index-Addierer zu übertragen. Die Antwort sind die 3/z Bits der niedrigsten Ziffernstellen im
geht dahin, daß die oben betrachtete Untergruppe DA ,-Unterfeld immer 0, und der Teil des Z-Registervon
vier Befehlen bei beliebigen vier Verbindergrup- Datenwortes, der zum Index-Addierer übertragen
pen in den vier Stufen benutzt werden kann. Es ist 45 wird, enthält niemals mehr als 3 η Bit. In einem solnur
erforderlich, das Z-Register mit den Identitäten chen Fall besteht die Möglichkeit, die Adern, welche
der betrachteten vier Verbindergruppen einzustellen. die Bits der niedrigstens Stellenzahl im D^j-Unter-Die
gleiche Untergruppe von Befehlen kann dann feld führen und die Adern, welche das Kabel 78 bilbenutzt
werden. Die gleichen vier Befehle sind also den, über Oder-Tore zusammenzuführen. Es kann
die einzigen, die erforderlich sind, um die Verfügbar- 50 eine Anzahl von Oder-Toren vorgesehen sein, und
keit eines Weges durch die Stufen A, B, C und D bei da die 1-Werte auf den Adern des Kabels 78 nur
beliebigen vier Verbindergruppen festzustellen. Wenn dann erscheinen können, wenn die entsprechenden
das dreifache Indizieren und insbesondere das par- Adern in Kabel 21 alle 0-Werte führen, sind die
tielle Indizieren des Z-Registers vorgesehen wäre, Ausgangssignale der Oder-Tore tatsächlich die
müßten wesentlich mehr Befehle benutzt werden, um 55 Summe der beiden Variblen. In diesem Falle hätte
die Verfügbarkeit eines Weges durch eine gewählte der Index-Addierer nur zwei Eingänge, einen für das
Gruppe von vier Verbindern zu bestimmen. Indexregister-Datenwort auf dem Kabel 62 und den
Bei dem Ausführungsbeispiel der Erfindung schiebt anderen für ein DA rWort, wobei das DA j-Unterfeld
die Schiebeschaltung 72 immer die gleichen Bits aus des D/1-Wortes vorher durch die Ziffern im Z-Redem
Z-Register heraus, die von der Leseschaltung 60 gister mit der niedrigsten Stellenzahl mit Hilfe einer
74 abgelesen werden. Bei einigen Anwendungen Anzahl von Oder-Toren verändert wird.
Hierzu 1 Blatt Zeichnungen
Claims (2)
1. Datenverarbeitungsanlage mit einem Speicher für Befehlswörter und Daten, einem Befehlswortregister
zur Aufnahme von dem Speicher entnommenen Befehlswörtern, die je ein Operationsfeld, ein Datenadreßfeld, ein Indexfeld
und ein Steuerfeld aufweisen, einer Vielzahl von Indexregistern, einem Befehlsdecodierer, der
auf das Operationsfeld jedes Befehlswortes im Befehlswortregister anspricht und dessen Ausführung
steuert, und einem Index-Addierer zur arithmetischen Kombination des Inhalts des durch
das Indexfeld im Befehlswortregister angegebenen Indexregisters mit dem Inhalt des Datenadreßfeldes
im Befehlswortregister, dadurch gekennzeichnet, daß Schaltungen (P, 19, 26, 30, 76, 86, 72, 74, 82, 78) vorgesehen sind, die
bei einem besonderen Bitmuster (P = 1) im Steuerfeld (LPA) auf Grund eines Teils (DA2)
des Datenadreßfeldes (DA) bestimmen, wie viele Bits in einem bestimmten Indexregister (24)
gleichzeitig mit der Übertragung des Inhalts des durch das Indexfeld (IR) des Befehlswortes angegebenen
Indexregisters an den Index-Addierer (32) übertragen werden.
2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß eine Schiebeschaltung
(72), die auf den Teil (DA2) des Datenadreßfeldes
anspricht und in Serienform den Inhalt der Stellen des bestimmten Indexregisters
(24) verschiebt und eine Leseschaltung (74) vorgesehen ist, die das bestimmte Indexregister (24)
mit dem Index-Addierer (32) verbindet.
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 DE1499284A1 (de) | 1972-03-09 |
DE1499284B2 true 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)
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3015441A (en) * | 1957-09-04 | 1962-01-02 | Ibm | Indexing system for calculators |
US3048333A (en) * | 1957-12-26 | 1962-08-07 | Ibm | Fast multiply apparatus in an electronic digital computer |
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 |
-
1964
- 1964-10-07 US US402272A patent/US3343138A/en not_active Expired - Lifetime
-
1965
- 1965-10-06 DE DE1499284A patent/DE1499284C3/de not_active Expired
- 1965-10-06 BE BE670567D patent/BE670567A/xx unknown
- 1965-10-06 SE SE12961/65A patent/SE316937B/xx unknown
- 1965-10-06 GB GB42346/65A patent/GB1117230A/en not_active Expired
- 1965-10-07 NL NL6513019A patent/NL6513019A/xx unknown
Also Published As
Publication number | Publication date |
---|---|
US3343138A (en) | 1967-09-19 |
NL6513019A (de) | 1966-04-12 |
DE1499284A1 (de) | 1972-03-09 |
GB1117230A (en) | 1968-06-19 |
SE316937B (de) | 1969-11-03 |
DE1499284C3 (de) | 1973-10-18 |
BE670567A (de) | 1966-01-31 |
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 | |
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE2347387A1 (de) | Permutationsschaltung | |
DE2331589A1 (de) | Datenverarbeitungsanordnung | |
DE2230103A1 (de) | Adressiereinrichtung fuer einen speicher | |
DE1193996B (de) | Schiebespeicher mit Steuervorrichtung | |
DE4010828A1 (de) | Verfahren zum dekompilieren eines anwenderprogramms bei einer industriesteuerung | |
DE3043100C2 (de) | ||
DE2063199B2 (de) | Einrichtung zur Ausführung logischer Funktionen | |
DE1190706B (de) | In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine | |
DE1262641B (de) | Mikroprogrammsteuerwerk | |
DE2230188A1 (de) | Arithmetische einheit fuer variable wortlaengen | |
DE1499284C3 (de) | Datenverarbeitungsanlage | |
DE1267886B (de) | Datenbearbeitungsanlage | |
DE2235883C3 (de) | Datenverarbeitungseinrichtung | |
DE1774771A1 (de) | Anordnung,um wechselweise eine Addition oder eine aus einer Anzahl logischer Funktionen zwischen den Inhalten einer Stelle zweier Binaerworte durchzufuehren | |
DE2233164C3 (de) | Schaltungsanordnung zur Übertragung von aufeinanderfolgenden Bitstellen zwischen zwei Registern | |
DE1250489B (de) | I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher | |
DE1296429B (de) | Datenbearbeitungsanlage | |
DE2000275A1 (de) | Elektronischer Walzenschalter | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE1296427B (de) | Datenbearbeitungssystem | |
DE2948340C2 (de) | Informationsübertragungsanordnung für die Übertragung jeweils ausgewählter Informationseinheiten | |
DE2024584B2 (de) | Steuereinrichtung für eine allgemeine Datenverarbeitungseinrichtung | |
DE2511673C2 (de) | Schaltung zur Übertragung eines Feldes zwischen zwei Registern unter Mitwirkung einer Schiebeschaltung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) |