DE1499284C3 - Datenverarbeitungsanlage - Google Patents
DatenverarbeitungsanlageInfo
- Publication number
- DE1499284C3 DE1499284C3 DE1499284A DE1499284A DE1499284C3 DE 1499284 C3 DE1499284 C3 DE 1499284C3 DE 1499284 A DE1499284 A DE 1499284A DE 1499284 A DE1499284 A DE 1499284A DE 1499284 C3 DE1499284 C3 DE 1499284C3
- 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.)
- Expired
Links
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000000873 masking effect Effects 0.000 description 28
- 238000013500 data storage Methods 0.000 description 4
- 238000000034 method Methods 0.000 description 4
- 230000005284 excitation Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000717 retained effect 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 Doppeiindizierung 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
3 4
vier Teilen, nämlich dem Operations-, dem DA-, dem ändern. Zur Bildung der Summe von zwei Daten-
IR- und dem LPA-Fdd, ^deren Bedeutung noch er- Wörtern ist der Addierer 42 vorgesehen. Immer dann,
läutert wird. Das Operationsfeld ist ein Code (invari- wenn ein neues Wort durch den Registerdirektor in
abel numerisch, wie auch die anderen Felder), der das y-Register eingeschrieben wird, wird das Wort
bestimmt, welche Einheiten des Systems bei der Aus- 5 zum Addierer 42 übertragen. Das Z-Register ist
führung des durch das bestimmte Befehlswort ange- über das Kabel 58 an den Addierer 42 angeschal-
gebenen Befehls in Tätigkeit tritt. Der Befehlsdeco- tet und überträgt an den Addierer das in ihm ge-
dierer 34 bestimmt aus den Bits des Operationsfeldes speicherte Wort. Wenn ein neues Wort in das y-Re-
den auszuführenden Befehl und erregt eines der vier gister eingeschrieben wird, addiert der Addierer 42
in der Zeichnung strichpunktiert dargestellten Be- io dieses Wort zu dem Wort im Z-Register, und die
fehlskabel. Diese übertragen die zur Ausführung des Summe wird zum Z-Register übertragen und dort
Befehls erforderlichen Informationen zu den verschie- gespeichert. Das neue Wort verbleibt im y-Register
denen Einheiten des Systems. In dem dargestellten und das Z-Register enthält die Summe des neuen
System können nur vier Befehle ausgeführt werden. Wortes und des vorhergehenden Inhaltes des Z-Re-
Die Erfindung ist jedoch in gleicher Weise bei Syste- 15 gisters. Eine Addition von zwei Datenwörtern wird
men anwendbar, bei denen wesentlich mehr Opera- also erreicht, indem zuerst der Registerdirektor 44
tionsarten vorgesehen sind. so gesteuert wird, daß er eines von ihnen in das
Das Datenadreßfeld (DA-FeId) gibt entweder Da- Z-Register einschreibt, und dann so gesteuert wird,
ten oder eine Adresse an. Gleichzeitig mit der Über- daß er das andere in das y-Register eingibt. Wenn
tragung des Operationsfeldes an den Befehlsdeco- 20 der Registerdirektor ein Wort in das Z-Register ein-
dierer 34 wird ein Unterfeld DA1 des DA -Feldes über schreibt, arbeitet der Addierer 42 nicht. Eine Addi-
das Kabel 21 direkt zum Index-Addierer 32 gegeben. tion von zwei Digitalwörtern findet nur dann statt,
Das Tor 30 ist normalerweise geöffnet. Es wird nur wenn zuerst ein Wort in das y-Register gegeben wird,
dann gesperrt, wenn das Bit P des Steuerfeldes LPA Bei vielen Datenverarbeitungsanlagen besteht für
im Befehlswortregister 28 eine 1 ist. Wenn das Bit P 25 verschiedene Befehlsarten eine Produkt-Maskiermög-
0 ist, wird das DA .,-Unterfeld des D/1-Feldes eben- lichkeit. Dabei wird das logische Produkt (UND)
falls zum Index Addierer 32 übertragen. Es wird also, entsprechender Bits der Maske und von Datenwör-
wenn das BitP 0 ist, das gesamte DA-Fdd zum In- tern gebildet. Das sich ergebende maskierte Daten-
dex-Addierer gegeben. Der Index-Addierer 32 addiert wort weist eine 1 nur in den Positionen auf, für
die im DA -Feld des Befehlswortes enthaltene Zahl 30 welche die Maske und das Datenwort beide eine
zum Inhalt eines von einer Anzahl von im System binäre 1 enthalten. Beispielsweise werde bei einer
vorgesehenen Indexregistern. mit sechs Bits arbeitenden Anlage das Datenwort
Der Registerleser 16 liest den Inhalt des Puffer- 101011 vom Datenspeicher zu einem Register Überregisters
12, des L-Registers 18, des A'-Registers 20, tragen. Bei dieser Übertragung läuft das Wort durch
des y-Registers 20 oder des Z-Registers 24. Ein ent- 35 die Maskierschaltung. Es sei angenommen, daß die
sprechendes Kabel führt von jedem dieser fünf Re- von der Maskierschaltung benutzte Maske 011110 ist
gister zum Registerleser. Das Indexregisterfeld (IR- das sich ergebende maskierte Wort, das im Register
Feld) gibt keines (wenn es leer ist) oder eines dieser gespeichert ist, ist dann 001010.
fünf Register an, und der Inhalt des angegebenen Immer dann, wenn eine Maskierung erforderlich Registers wird über das Kabel 62 zum Index-Addie- 40 ist, muß das Maskierwort zuerst im L-Register gerer 32 übertragen. Wenn kein Register im /ft-Feld speichert werden. Dieses Register ist über das Kabel des Befehlwortes angegeben ist, werden keine Bits 60 mit der Maskierschaltung 14 verbunden und steuüber das Kabel 62 zum Index-Addierer gegeben. Der ert die Maskierung eines durch die Maskierschaltung Index-Addierer bildet die Summe der Zahlen, die im übertragenen Wortes. Die Maskierschaltung ist zwei-D/4-Feld des Befehlswortes und dem angegebenen 45 seitig gerichtet. Ein vom Registerleser 16 zur Maskier-Register enthalten sind. Die Summe am Ausgang des schaltung über das Kabel 56 übertragenes Wort kann Index-Addierers wird zu verschiedenen Einheiten im durch die Maske im L-Register maskiert werden, beSystem übertragen. Es arbeitet jedoch nur die Ein- vor es im Pufferregister 12 gespeichert wird. Analog heit mit diesem indizierten Daten- oder Adressen- kann das Wort im Pufferregister oder auf dem Kabel wort, die durch das erregte der vier Befehlskabel in 50 55 in der Maskierschaltung maskiert und über das Tätigkeit gesetzt wird. ' Kabel 64 zum Registerdirektor 44 übertragen und
fünf Register an, und der Inhalt des angegebenen Immer dann, wenn eine Maskierung erforderlich Registers wird über das Kabel 62 zum Index-Addie- 40 ist, muß das Maskierwort zuerst im L-Register gerer 32 übertragen. Wenn kein Register im /ft-Feld speichert werden. Dieses Register ist über das Kabel des Befehlwortes angegeben ist, werden keine Bits 60 mit der Maskierschaltung 14 verbunden und steuüber das Kabel 62 zum Index-Addierer gegeben. Der ert die Maskierung eines durch die Maskierschaltung Index-Addierer bildet die Summe der Zahlen, die im übertragenen Wortes. Die Maskierschaltung ist zwei-D/4-Feld des Befehlswortes und dem angegebenen 45 seitig gerichtet. Ein vom Registerleser 16 zur Maskier-Register enthalten sind. Die Summe am Ausgang des schaltung über das Kabel 56 übertragenes Wort kann Index-Addierers wird zu verschiedenen Einheiten im durch die Maske im L-Register maskiert werden, beSystem übertragen. Es arbeitet jedoch nur die Ein- vor es im Pufferregister 12 gespeichert wird. Analog heit mit diesem indizierten Daten- oder Adressen- kann das Wort im Pufferregister oder auf dem Kabel wort, die durch das erregte der vier Befehlskabel in 50 55 in der Maskierschaltung maskiert und über das Tätigkeit gesetzt wird. ' Kabel 64 zum Registerdirektor 44 übertragen und
Von der Maskierschaltung 14 kann ein Wort zum von dort zu einem der fünf Speicherregister im
Registerdirektor 44 übertragen werden. Der Register- System gegeben werden (Es kann zurück zum Pufferdirektor
arbeitet, wenn eines der beiden Befehlskabel register und zu einem der anderen vier Register über-
M (R) oder W (R) erregt ist. Informationen werden 55 tragen werden). Die Maskierschaltung 14 maskiert
zum Registerdirektor vom Decodierer-Verteiler über das sie durchlaufende Wort mit der Maske im L-Redas
erregte Befehlskabel übertragen, das entweder gister nur dann, wenn das Bit L im LPA-Feld des
das Pufferregister oder eines der Register L, X, Y und Befehlswortregisters 28 eine 1 ist. Das Bit L wird
Z identifiziert. Das Eingangswort für den Register- über die Ader L zur Maskierschaltung 14 übertragen,
direktor auf dem Kabel 64 wird zu dem durch die 60 und wenn es eine 0 ist, läßt die Maskierschaltung das
Befehlskabelinformation angegebenen Register über Datenwort unverändert durch.
eines der fünf entsprechenden Ausgangskabel des Das Pufferregister stellt einen Puffer zwischen dem
Registerdirektors 44 übertragen. Datenspeicher 10 und dem Rest der Anlage dar. Die
Der Index-Addierer 32 wird in der Anlage nicht von der Anlage zu bearbeitenden Daten sind im Dazur
Addition von zwei Datenwörtern benutzt. Er ist 65 tenspeicher 10 enthalten. Eine Adresse wird über die
lediglich vorgesehen, um das DA -Feld eines Befehls- Kabel 53 und 66 vom Index-Addierer 32 zum Datenwortes
entsprechend dem Inhalt eines (oder von zwei, speicher 10 übertragen. Wenn ein Wort aus dem
wie später gezeigt wird) der Register im System abzu- 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
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 5 ist das Bit P eine 0, und das gesamte DA-FeId 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
dem Pufferregister zur Maskierschaltung 14 übertra- io die Betriebsweise des Systems betrachtet werden,
gen. Entsprechend wird, wenn ein Wort vom Register- wenn das Bit P eine 1 ist.
leser 16 durch die Markierschaltung 14 zum Puffer- Ein Sprungbefehl steuert einen Sprung auf einen
register 12 gegeben wird, das Wort automatisch vom neuen Befehl außerhalb der laufenden Folge. Ein
Pufferregister zum Datenspeicher übertragen. In bei- typischer Befehl kann lauten XFR, 500, Y, 000. Der
den Fällen verbleibt das Datenwort außerdem im 15 Decodierer 34 erregt das Befehlskabel XFR. Dieses
Pufferregister. Wenn ein Wort in einem Register in Befehlskabel ist nur mit dem Programmadreßregister
den Datenspeicher 10 einzuschreiben ist, wird es vom 38 verbunden, so daß eine neue Adresse, die auf dem
Registerleser 16 über die Maskierschaltung 14 zum Kabel 52 erscheint, in das Register eingeschrieben
Pufferregister 12 übertragen. Es kann erwünscht sein, werden kann. Da das Bit P 0 ist, ist das Tor 30 gedieses
Wort erneut zu bearbeiten, beispielsweise, 20 öffnet, und das vollständige DA-VcXa wird zum Indexindem
die Inkrementschaltung 70 so gesteuert wird, Addierer übertragen. Vorher gibt der Decodierer 34
daß sie eine 1 zu dem Wort addiert. Aus diesem einen Rückstellimpuls zur Rückstellung des Index-Grund
bleibt das Wort außerdem im Pufferregister Addierers auf die Ader 46. Das DA-FtXd, 500, wird
gespeichert. Analog kann es erwünscht sein, wenn dann zum Index-Addierer übertragen, und zwar teilein
Datenwort aus dem Datenspeicher über das Puf- 25 weise direkt und teilweise durch das Tor 30. Gleichferregister,
die Maskierungsschaltung 14 und den Re- zeitig wird die Identität des K-Registers über das
gisterdirektor 44 zu einem der Register übertragen Kabel 54 zum Registerleser 16 gegeben. Der Registerwird,
das ursprüngliche Wort im Pufferregister zu be- leser liest den Inhalt des Y-Registers ab, der beispielsarbeiten.
Beispielsweise kann das abgelesene Daten- weise aus der Zahl 25 bestehen kann, und überträgt
wort maskiert und im Ä'-Register gespeichert wer- 30 diese Zahl über das Kabel 62 zum Index-Addierer,
den. Das ursprüngliche Datenwort verbleibt im Puf- Der Index-Addierer addiert das DA-FcId zu seinem
ferregister, damit eine Weiterschaltung und Rückspei- Inhalt, und die Summe 525 erscheint an seinem Auscherung
im Datenspeicher möglich ist. Entsprechend gang. Diese Zahl wird außer zum Programmadressenbleibt,
wenn der Registerleser 16 ein Datenwort aus register 38 auch zum Datenspeicher 10 und zum Tor
dem Pufferregister 12 abliest, der Inhalt des Puffer- 35 79 übertragen, aber der Datenspeicher und das Tor
registers unverändert. Auch der Inhalt der anderen sind durch das Befehlskabel XFR nicht erregt. Die
Register bleibt unverändert, wenn der Registerleser Zahl 525 auf dem Kabel 52 wird nur in das Pro-16
ein Datenwort aus einem von ihnen abliest. grammadressenregister 38 eingeschrieben, da das er-
Der Index-Addierer 32 muß vor der Ausführung regte Befehlskabel nur mit dieser Einheit verbunden
eines Befehls zurückgestellt werden. Das im anderen 40 ist. Der nächste über das Kabel 48 zum Befehlswort-Fall
verbleibende Ausgangssignal des Index-Addierers register 28 übertragene Befehl ist derjenige, der in
wäre dasjenige, das bei dem Index-Vorgang während der Speicherstelle des Programmspeichers mit der
der Ausführung des vorhergehenden Befehls abgelei- Adresse 525 gespeichert ist. Diese Adresse wird dann
tet worden ist. Der Decodierer 34 legt immer dann nachfolgend im Programmadressenregister weitergeeinen
Rückstellimpuls an die Ader 46, wenn ein neues 45 schaltet.
Befehlswort zum Befehlswortregister 28 übertragen Bei der Ausführung eines Sprungbefehls kann das
wird. Dieser Rückstellimpuls wird zum Index-Addie- Bit L eine 0 sein, aber auch dann hat es keinen Ein-
rer gegeben und stellt ihn vor der Ausführung des fluß auf das System. Ein Wort wird nur dann über die
neuen Befehls zurück. Maskierschaltung 14 übertragen, wenn der Register-
Das Steuerfeld LPA des Befehlswortes im Befehls- 5° leser 16 auf Grund eines Befehls (A)M arbeitet, das
Wortregister enthält drei Informations-Bits, welche Tor 79 bei einem Befehl W(R) geöffnet ist oder wenn
die Erregung der drei entsprechenden Adern L, P ein Wort zuerst bei der Ausführung eines Befehls
und A steuern. Die Erregung der Ader L steuert, wie M(R) aus dem Datenspeicher 10 in das Pufferregister
oben beschrieben, die Maskierschaltung 14. Wenn das· 12 geschrieben wird, wobei das Wort dann automa-
Bit A eine 1 ist, läßt es die Inkrement-Steuerschaltung 55 tisch vom Pufferregister zur Maskierschaltung 14 ge-
70 eine 1 zum Inhalt des Pufferregisters addieren, be- geben wird. Bei der Ausführung eines Sprungbefehls
vor der Befehl selbst ausgeführt wird. Das Bit P steu- wird kein Wort zur Maskicrschaltung übertragen, so
ert die Übertragung des D/J2-Untcrfeldes entweder daß, auch wenn das Bit L eine 1 ist, kein Wort vor-
zum Index-Addierer 32 oder zur Schiebesteuerschal- handcn ist, das in der Maskicrschaltung 14 maskiert
tung 72 und zur Leseschaltung 74. Wenn das Bit P 60 sein könnte.
eine 0 ist, ist das Tor 30 geöffnet und das Tor 26 ge- Man beachte, daß der Registerleser 16 den Inhalt
sperrt. Das D/I2-Unterfe1d auf dem Kabel 19 läuft des im //?-FcId angegebenen Registers zur Übertra-
durch das Tor 30 zum Kabel 17 und zum Index- gung an den Indexaddierer auf das Kabel 62 gibt. Bei
' Addierer 32. Wenn das Bit P eine 1 ist, ist das Tor 30 einem Befehl (R) M gibt der Registerleser ebenfalls
gesperrt und das Tor 26 geöffnet. Tn diesem Fall wird 65 ein Wort auf das Kabel 56, aber diese Operation
das D/1.,-Untcrfcld über die Kabel 76 und 86 zur wird durch das Bcfchlskabcl (R) M gesteuert. Bei der
Schiebestcuerschaltung 72 und zur Leseschaltung 74 Ausführung eines Sprungbefehls ist nur das Befchls-
übcrtragcn. kabel XIR erregt, und der Registerleser gibt den
7 8
Inhalt des im IR-FeId angegebenen Registers nur an ist immer erregt, wenn ein Befehl MB, ML, MX,
das Kabel 62. Die Adresse im ZM-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 IV(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 (/?)._ wird nach Rückstellung des Index-Addierers
feld des Befehlswortes erscheinen kann. Das D in das DA -Feld im Index-Addierer zum Inhalt des im
dem Code WB gibt an, daß das DA-FeId in das Puf- IR-Feld 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-
IR-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, LPA-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-Fe\d wird über das geöffnete Tor 79 zur Mas- rung des Befehls weitergeschallet. 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 Einspeicherimg 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, \Vird das
wird in dem im Operationsfeld angegebenen Register vollständige DA-FeId, 500, zum Index-Addierer
gespeichert. übertragen. Gleichzeitig gibt der Registerleser 16 den
Das DA-FcId kann nur aus 0-Werten bestehen. In Inhalt des Y-Registers über das Kabel 62 an den
diesem Fall besteht das Aussangssignal des index- 50 Index-Addierer. Die im Index-Addierer gebildete
Addierers lediglich aus dem Inhalt des im IR-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 Wcitcischal- register einzuschreibende Wort gespeichert werden
ten des Wortes im Pufferrcgister 12 vor der Ausfüh- soll. Der Code ZM im Operationsfeld steuert die
rung des Befehls. Wenn jedoch ein Befehl WB ausgc- Übertragung eines Kommandos über das Bcfehlsfülirt
wird, hat das Bit A, 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 Pufferregistcr, und das weitergeschaltetc Wort des Code Y im IR-Fc\d 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 Befchlsart steuert das Ablesen eines Z-Rcgistcrs an das .Kabel 56 gegeben wird. Das Wort
Wortes im Datenspeicher und dessen Einschreiben in im Z-Register wird über die Maskicrschaltimg 14
eines der fünf Register. Das Bcfehlskabcl M(R) zum Puifcncgister 12 übertragen, und, da das Bit L
eine 1 ist, durch den Inhalt des L-Registers maskiert.
Das maskierte, zum PufTerregister übertragene Wort wird dann in die Speicherstelle des Datenspeichers
mit der Adresse 525 eingeschrieben.
Bisher wurde die Betriebsweise des Systems betrachtet, wenn das Befehlswort im Befehlswortregister
28 für das Bit P eine 0 enthält. Der Index-Addierer weist vier Eingänge auf, nämlich die Kabel 21,
17, 62 und 78. Wenn das Bit P eine 0 ist, werden die DzI1- und DA .,-Unterfelder zum Index-Addierer
über die Kabel 21 "und 17 und der Inhalt des im IR-FeId des Befehlswortes angegebenen Registers über
das Kabel 62 zum Index-Addierer übertragen. Über das Kabel 78 wird nicht zum Index-Addierer übertragen,
und der Index-Addierer bildet lediglich die Summe des ZM-Feldes im Befehlswortregister und
des Datenwortes in dem durch das /Λ-Feld angegegebenen
Indexregister. Wenn das Bit P jedoch eine 1 ist, wird nur das DA j-Unterfeld zum Index-Addierer
übertragen. Das DA .,-Unterfeld wird über
das Tor 26 und die Kabel 76 und 86 zur Schiebeschaltung 72 und zur Leseschaltung 74 übertragen.
Die Leseschaltung 74 ist mit den Stufen des Z-Registers verbunden, welche die Bits der niedrigsten Stellenzahlen
enthalten. Die Zahl von Stufen, mit welcher die Leseschaltung verbunden ist, hängt von der
Maximalzahl von Bits ab, die bei einer gegebenen Anwendung vom Z-Register zum Index-Addierer
zu übertragen sind. Das DA .,-Unterfeld gibt eine
Zahl von Bits, beispielsweise vier, an. Die Leseschaltung 74 liest die vier Bits mit 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 DA j-Unterfeldes, des Datenwortes auf
dem Kabel 62 und der vier Bits auf dem Kabel 78. Das DA-FeId des Befehlswortes, oder genauer, das
DA j-Unterfeld, wird auf diese Weise nicht nur durch
das Datenwort in dem durch das /Ä-Feld angegebenen Indexregister verändert, sondern außerdem
durch die vier Bits mit der niedrigsten Stellenzahl im Z-Register.
Unmittelbar nach der Operation der Leseschaltung 74 tritt die Schiebeschaltung 72 in Tätigkeit. Sie
überträgt1 Steuersignale über das Kabel 84 zum Z-Register. Das Wort im Z-Register wird nach
rechts verschoben, also in Richtung auf niedrigere Stellenzahlen. Die Größe der Verschiebung hängt
von der Zahl der Bits 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 nach rechts verschoben.
Diese Schiebeoperation findet zur Vorbereitung des nächsten Befehls statt. Die Bit mit der niedrigsteh
Stellenzahl im Z-Register nach dem Index-Vorgang werden aus dem Register hinausgeschoben. Die
Bits, die als nächste bei einem Index-Vorgang erforderlich sein mögen, werden in die Stufen mit der
niedrigsten Stellenzahl des Z-Registers gegeben. Auf diese Weise können diese Bits durch die Leseschaltung
74 aus dem Z-Register ausgelassen werden, obwohl die Leseschaltung über das Kabel 82 nur mit
den Stufen der niedrigsten Stellenzahl des Z-Registers verbunden ist.
Der mit der Erfindung erzielte Fortschritt läßt sich am besten an Hand eines speziellen Beispiels erkennen.
Datenverarbeitungsanlagen werden in immer.
•größerem Umfang auf dem Gebiet der Nachrichtenübertragungen verwendet. Beispielsweise kann eine
Datenverarbeitungsanlage benutzt werden, um die Verfügbarkeit eines Weges durch ein Fernsprechvermittlungsnetzwerk
festzustellen. Es sei angenommen, daß in einem bestimmten Netzwerk vier Stufen vorhanden
sind, die jeweils viele Verbindergruppen aufweisen, und daß acht Kreuzpunkte in jeder Verbindergruppe
vorhanden sind. Ein Weg kann durch
ίο das Netzwerk nur dann durchgeschaltet werden,
wenn ein gleich numerierter Kreuzpunkt in einer Verbindergruppe jeder dieser vier Stufen zur Verfügung
steht. Der Zustand (verfügbar oder nicht verfügbar) jedes Kreuzpunktes kann durch eine der beiden
Binärzahlen dargestellt werden, wobei eine 1 anzeigt, daß der Kreuzpunkt verfügbar ist, und eine 0,
daß er nicht verfügbar ist. Vier Datenworte mit acht Bits können den Zustand der Kreuzpunkte von vier
Verbindergruppen darstellen. Um die Verfügbarkeit
ao eines der acht Wege über diese vier Verbindergruppen festzustellen, muß nur bestätigt werden, daß eine
I in der entsprechenden Position jedes der vier Datenworte vorhanden ist. Wenn also die vier Wörter,
welche den Zustand der Kreuzungspunkte wiedergeben, 11100000, 1101110, 01111101 und
11110011 sind, zeigt sich, daß der einzige verfügbare Weg über diejenigen vier Kreuzungspunkte
führt, deren Zustand durch das Bit mit der zweithöchsten Stellenzahl in jedem der vier Worte mit
acht Bits dargestellt wird.
Der verfügbare Weg oder die verfügbaren Wege lassen sich wie folgt bestimmen: Es wird das logische
Produkt (UND-Verknüpfung) der ersten beiden Wörter mit acht Bits gebildet. Das Ergebnis ist
11000000. Das logische Produkt dieses Produktes mit dem dritten Wort wird gebildet. Das logische
Produkt von 11000010 und 01111101 ist 01000000. Endlich wird das logische Produkt dieses Produktes
mit dem vierten Wort gebildet. Das Ergebnis, 01000000, bestätigt, daß der einzige verfügbare Weg
über die vier Verbindergruppen über die vier Kreuzungspunkte führt, deren Zustand durch das zweite
Bit von links der vier Wörter mit acht Bits dargestellt wird.
Zur Erläuterung soll im folgenden der Octal-Code benutzt werden. Das Z-Register enthält beispielsweise
24 Bits, aber ein Octal-Code mit acht Ziffern reicht aus, um jedes Datenwort im Register darzustellen.
Adressen werden ebenfalls im Octal-Code angegeben. Beispielsweise entspricht die Adresse 100 .
der Dezimal-Adresse 64.
Es sei angenommen, daß das erfindungsgemäße Ausführungsbeispiel einer Datenverarbeitungsanlage
benutzt wird, um die Verfügbarkeit eines Weges durch ein Vermittlungsnetzwerk zu bestimmen. Die
Wörter mit acht Bits, welche den Zustand der entsprechenden Verbindergruppen darstellen, können
(nachdem sie auf den neuesten Stand gebracht sind) im Datenspeicher in einer Folge von Tabellen gespeichert
werden. Es sei angenommen, daß vier Tabellen A bis D vorhanden sind, die jeweils 100 Verbindergruppen
zugeordnet sind. Das Wort, welches den Zustand der acht Kreuzungspunkte in einer bestimmten
Verbindergruppe wiedergibt, wird im folgenden »Zustandswort« genannt. Jedes Zustandswort
wird durch ein Symbol, wie beispielsweise WA33,
wiedergegeben. Die Indizes A bis D geben an, ob das Zustandswort der ersten, zweiten, dritten oder
vierten Stufe des speziellen Netzwerkes zugeordnet ist. Eine der Zahlen 00-77 im Index gibt an, welchem
der 100 Verbindergruppen das Zustandswort zugeordnet ist. So ist das Zustandswort WAn den
acht Kreuzungspunkten in der 33sten Verbindergruppe der Stufe A zugeordnet.
Die 400 Zustandsworte werden im Datenspeicher 10 in vier Tabellen A bis D mit jeweils 100 Wörter
gespeichert. Das erste Wort der Tabelle A ist in der Speicherstelle 1000 und das letzte Wort der Tabelle
D in der Speicherstelle 1377 gespeichert. Die 400 Zustandswörter sind also im Speicher auf folgende
Weise gespeichert:
Adresse 1000 1001 |
Zustandsort |
1077 | wAll |
1100 1101 |
wß„„ W«n, |
1177 | Wß77 |
1200 1201 |
Wcon |
1277 1300 1301 |
1377 W077
■ Es sei angenommen, daß festgestellt werden soll,
ob ein Weg über die Verbindergruppe 35 in der Stufet, 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 Datenspeicher die vier Zustandswörter abgelesen werden, die in den Speicherstellen
1035, 1162, 1254 und 1328 gespeichert sind. Die drei aufeinanderfolgenden logischen Produkte, die
aus den Zustandsworten WA 35, Wn e2, Wc 51 und W0 .,s
gebildet worden sind, führen zu einem Wort mit acht Bits, das die Verfügbarkeit von Wegen über die vier
gewählten Verbindergruppen in den Stufen A, B, C und D anzeigt.
Um jedes dieser vier Zustandswörter aus dem Datenspeicher 10 zum Pufferregister 12 und zur Maskierschaltung
14 zu geben, müssen drei Informationsstücke 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 bis D von anderen Daten zu unterscheiden, die im Datenspeicher 10 enthalten
sein können. Zweitens muß die Zahl von Datenspeicherstellen zwischen der Stelle 1000 und der
Speicherstelle des ersten Wortes in einer der vier Tabellen identifiziert werden. Das zweite Informationsstück
ist daher immer eine der Zahlen 0, 100, 200 oder 300. Das dritte Informationsstück ist die
Zahl von Speicherstellen, welche das gewünschte Zustandswort von dem ersten Wort in der gleichen Tabelle
trennen, d. h. eine der Zahlen 00-77. Beispielsweise müssen zur Identifizierung des Zustandswortes
WCm 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-Feld
weist drei Ziffern (jeweils 0 oder 1) auf. Die vier Felder eines Befehlswortes sind durch Kommata getrennt.
Die Unterfelder DA 1 und DzI2 sind durch
einen Schrägstrich getrennt. Eine 6 im DA .,-Onterfeld
entspricht zwei Octal-Ziffern — die Bits im Z-Register werden um sechs Positionen oder zwei
Octal-Positionen verschoben.
Bei der Herstellung einer Gesprächsverbindung, ίο bei der die vier oben angegebenen Verbindergruppen
in Betracht gezogen werden, wird die Zahl 28546235 in das Z-Register gegeben. Die Zahl 1000 wird in
das F-Register gegeben. Danach sind nur die folgenden vier Befehle erforderlich, um die Verfügbarkeit
eines Weges über die vier Verbindergruppen festzustellen:
ML, 0/6, Y, 010
ML, 100/6, Y, 110
ML, 200/6, Y, 110
ML, 300/6, Y, 110
ML, 100/6, Y, 110
ML, 200/6, Y, 110
ML, 300/6, Y, 110
Als erstes Befehlswort wird der erste der oben angegebenen vier Befehle in das Befehlswortregister 28
eingegeben. Das Y im IR-FeId bewirkt, daß der Registerleser
16 den Inhalt des Y-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 DA t-Unterfeld, 0,
zum Index-Addierer 32 über das Kabel 21 und das 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 und überträgt sie über das Kabel 78 zum Index-Addierer
32. Der Index-Addierer leitet dann die Summe der Zahlen 1000, 0 und 35 ab. Die sich ergebende
Adresse 1035 wird über die Kabel 53 und 66 zum Datenspeicher 10 gegeben, und da das Befehlskabel
M(R) erregt ist, wird das Zustandswort WA:i. vom
Datenspeicher 10 zum Pufferregister und von dort zur Maskierschaltung 14 übertragen. Das Bit L im
Befehlswortregister ist eine 0, und folglich wird das Zustandswort W^35 nicht durch den Inhalt des L-Registers
maskiert./Das Zustandswort geht über die Maskierschaltung 14 zum Registerdirektor 44. Da das
Operationsfeld ML ist, wird das Zustandswort im L-Register gespeichert. Unmittelbar nachdem die
beiden Ziffern mit der niedrigsten Ziffernstelle im Z-Register zum Index-Addierer übertragen worden
sind, tritt die Schiebeschaltung 72 in Tätigkeit und schiebt den Inhalt des Z-Registers um zwei (Octal-)
Positionen nach rechts. Die Ziffern, die vorher 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 Befehls
vorbereitet.
Der zweite ausgeführte Befehl entspricht bis auf drei Abweichungen dem ersten Befehl. Zum einen ist
das über das Kabel 21 zum Index-Addierer 32 übertragene DA ,-Unterfeld 100 statt 0. Zweitens wird die
Octalzahl 62 durch die Leseschaltung 74 zum Index-Addierer 32 übertragen. Die im Index-Addierer gebildete
Summe ist 1162. Drittens wird das aus dem Datenspeicher abgelesene und über die Maskierschaltung
übertragene Zustandswort W11n., jetzt durch
den Inhalt des L-Registers maskiert, da das Bit L im LPA-FeId eine 1 ist. Das Zustandswort Wll{V1
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 werfindliche
Zustandswort W^35. 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 ZX42-Unterfeld zwei InUnterschiede
bestehen darin, daß das zum Index- io formationen enthalten. Die erste gibt der Leseschal-Addierer
übertragene D/ij-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 WCm 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 DA .,-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 D/i .,-Unterfeld dargestell-1328,
und das Zustandswort WD.2ii 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- 35 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 DA ,-Unterfeld immer wenigstens
Befehlen noch näher untersucht werden. Man könnte η OctalziiTern 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 0-Werte enthalten, und daß in keinem FaIi
Unterfelder des DA -Feldes zu verschiedenen Einhei- mehr als in Octalziffern vom Z-Register zum Indexten
zu übertragen, statt nacheinander die vollständi- 40 Addierer übertragen werden (n und m können sich
gen D/1-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π Bits der niedrigsten Ziffernstellen im
geht dahin, daß die oben betrachtete Untergruppe /λΛ,-Unterfcld immer 0, und der Teil des Z-Registervon
vier Befehlen bei beliebigen vier Verbindcrgrup- 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/4,-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
ticlle Indizieren des Z-Rcgisters vorgesehen wäre, Ausgangssignale der Oder-Tore tatsächlich die
müßten wesentlich mehr Befehle benutzt werden, um 55 Summe der beiden Variblcn. In diesem Falle halte
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 ,-Unterfeld
die Schiebeschaltung 72 immer die gleichen Bits aus des /JM-Wortes vorher durch die Ziffern im Z-Redem
Z-Register heraus, die von der Lcseschaltung fio 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 = I) im
Steuerfeld (LPA) auf Grund eines Teils (DA.,) des Datenadreßfeldes (DA) bestimmen, wie viele
Bits in einem bestimmten1 Indexregister (24) gleichzeitig mit der Übertragung des Inhalts des
durch das Indexfeld ([R) 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 (DA.,) 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 DE1499284B2 (de) | 1973-03-22 |
DE1499284C3 true 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 |
DE1499284B2 (de) | 1973-03-22 |
GB1117230A (en) | 1968-06-19 |
SE316937B (de) | 1969-11-03 |
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 | |
DE1499175B2 (de) | Steuereinrichtung in einem mehrspezies rechner | |
DE1914560C3 (de) | Schaltungsanordnung zur Verschiebung eines Datenwortes innerhalb eines Rechenelementen-Feldes | |
DE2331589A1 (de) | Datenverarbeitungsanordnung | |
DE1774052B1 (de) | Rechner | |
DE2758829A1 (de) | Multiprozessor-datenverarbeitungssystem | |
DE2063199B2 (de) | Einrichtung zur Ausführung logischer Funktionen | |
DE1190706B (de) | In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine | |
DE1499284C3 (de) | Datenverarbeitungsanlage | |
DE2900586A1 (de) | Anordnung zum decodieren von codewoertern variabler laenge | |
DE1267886B (de) | Datenbearbeitungsanlage | |
DE1296429B (de) | Datenbearbeitungsanlage | |
DE1774771A1 (de) | Anordnung,um wechselweise eine Addition oder eine aus einer Anzahl logischer Funktionen zwischen den Inhalten einer Stelle zweier Binaerworte durchzufuehren | |
DE1296427B (de) | Datenbearbeitungssystem | |
DE2511673C2 (de) | Schaltung zur Übertragung eines Feldes zwischen zwei Registern unter Mitwirkung einer Schiebeschaltung | |
DE1250489B (de) | I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE2024584B2 (de) | Steuereinrichtung für eine allgemeine Datenverarbeitungseinrichtung | |
DE2233164A1 (de) | Schaltungsanordnung zur ausblendung eines beliebig waehlbaren bereichs einer bitfolge bei deren uebertragung zwischen zwei registern | |
DE1524211C3 (de) | Datenverarbeitungsanlage | |
DE1474090B2 (de) | Datenverarbeitungsanlage | |
DE3138948C2 (de) | Schaltungsanordnung zur Erzeugung von Byte-Kennzeichenbits für die Verarbeitung von Speicheroperanden | |
DE1267885B (de) | Datenbearbeitungsanlage | |
DE3328861A1 (de) | Schaltungsanordnung fuer fernmeldevermittlungsanlagen, insbesondere fernsprechvermittlungsanlagen, mit speichern und ihnen individuell zugeordneten speicherablaufsteuerungen | |
DE3918453C2 (de) | LRU-Schaltung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) |