DE1933685B2 - Mehrere Programme simultan verarbeitende Datenverarbeitungsanlage - Google Patents
Mehrere Programme simultan verarbeitende DatenverarbeitungsanlageInfo
- Publication number
- DE1933685B2 DE1933685B2 DE1933685A DE1933685A DE1933685B2 DE 1933685 B2 DE1933685 B2 DE 1933685B2 DE 1933685 A DE1933685 A DE 1933685A DE 1933685 A DE1933685 A DE 1933685A DE 1933685 B2 DE1933685 B2 DE 1933685B2
- Authority
- DE
- Germany
- Prior art keywords
- stage
- data processing
- flip
- command
- flop
- 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
- 101710152694 Cysteine synthase 2 Proteins 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 7
- 101710178035 Chorismate synthase 2 Proteins 0.000 claims description 6
- 230000006870 function Effects 0.000 description 17
- 230000001960 triggered effect Effects 0.000 description 6
- 230000005284 excitation Effects 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 1
- 230000002250 progressing 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30087—Synchronisation or serialisation instructions
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Storage Device Security (AREA)
- Memory System (AREA)
- Dram (AREA)
Description
1. das Befehlsregister (500) hält nach festgestellter Nichtbelegung eines bestimmten Programmabschnittes
zur Durchführung der Belegung aufgrund eines ersten Befehls (TZW) und bei Anzeige der Belegungsbeendigung
dieses Programmabschnittes durch einen zweiten Befehl (RI) in einem Adressenfeld des
Bezugsregisters (500) die Adressen für die anzusprechenden Programmabschnitte bereit;
2. es ist ein durch den ersten Befehl (TZW) ansteuerbarer, vierstufiger Steuersequenzgenerator
(CS 1) vorgesehen, dessen
2.1. erste Stufe (CSl-I) das Absenden einer
Adresse aus dem Befehlsregister (500) an das Hauptadressenregister (501) mittels einer
UND-Schaltung ansteuert, dessen
2.2.' zweite Stufe (CS 1-2) ihre Steuerinformation
(Pfeil Pll) an eine Schaltung zum Einrichten oder Festhalten der zum ausgewählten
Speichermodul führenden Leitungsverbindungen weitergibt, dessen
2.3. dritte Stufe (CS 1-3) über eine UND-Schaltung, die außerdem an ein Speicherregister
(503) angeschlossen ist, einen Vergleicher
(504) ansteuert, der feststellt, ob ein bestimmtes Gerät einen bestimmten Programmabschnitt
belegt hat, wobei im Belegungsfall ein Flipflop (506) gesetzt wird und im anderen Fall
das Flioflop (506) zurückgesetzt wird, und dessen
2.4. vierte Stufe (CS 1-4) abhängig vom Zustand des Flipflops (506) entweder ein Flipflop (505)
ansteuert, das den Belegungszustand anzeigt, oder einen zweiten, dreistufigen Steuersequenzgenerator
(CS 2) anstößt, dessen
2.4.1. erste Stufe (CS2-5) das Speicherregister (503)
zum Einschreiben einer Belegungsinformation ansteuert,
2.4.2. zweite Stufe (CS 2-6) das anfragende Datenverarbeitungsgerät
anschaltet (Pfeil P13) und dessen
2.4.3. dritte Stufe (CS2-7) den Befehlszähler des
anfragenden Datenverarbeitungsgerätes weiterschaltet (Pfeil P14);
3. es ist ein durch den zweiten Befehl (Rl) ansteuerbarer fünfstufiger Steuersequenzgenerator
(CS 3) vorgesehen, dessen
3.1. erste Stufe (CS3-1) dieselbe Tätigkeit ausführt
wie die erste Stufe (CSl-I) des ersten Steuersequenzgenerators (CS 1),
15 Die Erfindung betrifft eine mehrere Programme
simultan verarbeitende Datenverarbeitungsanlage nach dem Oberbegriff des Patentanspruchs.
Bei einer aus »Elektronische Rechenanlagen«, April 1961, Seiten 54 bis 60, bekannten Anlage dieser Art
werden mehrere Befehle benötigt, um die Datenverarbeitungsgeräte bedarfsgerecht zu schalten, und das
bedingt entsprechend hohen Schaltungsaufwand.
Der Erfindung liegt die Aufgabe zugrunde, die erforderlichen Schaltvorgänge mit möglichst geringem
Aufwand an Schaltmitteln zu verwirklichen, wobei möglichst geringe Schaltzeiten erzielbar und Fehlfunktionen,
die beispielsweise zur Doppelbelegung einzelner Programmabschnitte führen könnten, möglichst ver-
3<> meidbar sind.
Die Erfindung ist gekennzeichnet durch die Kombination folgender Merkmale:
1.
35 Das Befehlsregister hält nach festgestellter Nichtbelegung eines bestimmten Programmabschnittes
zur Durchführung der Belegung auf Grund eines ersten Befehls und bei Anzeige der
Belegungsbeendigung dieses Programmabschnittes durch einen zweiten Befehl in einem
Adressenfeld des Bezugsregisters die Adressen für die anzusprechenden Programmabschnitte
bereit;
2.
45
50
2.1.
2.2.
2.3.
es ist ein durch den ersten Befehl ansteuerbarer, vierstufiger Steuersequenzgenerator vorgesehen,
dessen
erste Stufe das Absenden einer Adresse aus dem Befehlsregister an das Hauptadressenregister
mittels einer UND-Schaltung ansteuert, dessen zweite Stufe ihre Steuerinformation an eine
Schaltung zum Einrichten oder Festhalten der zum ausgewählten Speichermodul führenden
Leitungsverbindungen weitergibt, dessen
dritte Stufe über eine UND-Schaltung, die außerdem an ein Speicherregister angeschlossen ist, einen Vergleicher ansteuert, der feststellt, ob ein bestimmtes Gerät einen bestimmten Programmabschnitt belegt hat, wobei im Belegungsfall ein Flipflop gesetzt wird und im anderen Falle das Flipflop zurückgesetzt wird, und dessen
dritte Stufe über eine UND-Schaltung, die außerdem an ein Speicherregister angeschlossen ist, einen Vergleicher ansteuert, der feststellt, ob ein bestimmtes Gerät einen bestimmten Programmabschnitt belegt hat, wobei im Belegungsfall ein Flipflop gesetzt wird und im anderen Falle das Flipflop zurückgesetzt wird, und dessen
2.4. vierte Stufe abhängig vom Zustand des Flipflops entweder ein Flipflop ansteuert, das den Belegungszustand
anzeigt, oder eiren zweiten, dreistufigen Steuersequenzgenerator anstößt, dessen
2.4.1. erste Stufe das Speicherregister zum Einschreiben einer Belegungsinformation ansteuert,
2.4.2. zweite Stufe das anfragende Datenverarbeitungsgerät anschaltet und dessen
65
zweite Stufe (CS3-2) dieselbe Tätigkeit 2.4.3. dritte Stufe den Befehlszähler des anfragenden
Datenverarbeitungsgerätes weiterschaltet;
3. es ist ein durch den zweiten Befehl ansteuerbarer fünfstufiger Steuersequenzgenerator vorgesehen,
dessen
3.1. erste Stufe dieselbe Tätigkeit ausführt wie die erste Stufe des ersten Steuersequenzgenerators,
3.2. zweite Stufe dieselbe Tätigkeit ausführt wie die
erste Stufe des zweiten Steuersequenzgenerators,
33. dritte Stufe dieselbe Tätigkeit ausführt wie die zweite Stufe des zweiten Steuersequenzgenerators,
3.4. vierte Stufe allen Datenverarbeitungsgeräten ein Wiederaufnahmesignal zuleitet, und dessen
3.5. fünfte Stufe dieselbe Tätigkeit ausführt wie die dritte Stufe des zweiten Steuersequenzgenerators.
Als besonders vorteilhaft erweist es sicli, daß die
Erfindung m.c zwei einfachen, zueinander komplementären Maschinenbefehlen — dem ersten Befehl und dem
zweiten Befehl — auskommt, um die in Frage stehenden Steuervorgänge auszulösen. Eine einfache Befehlsstruktur
bedingt entsprechend geringen Schaltungsaufwand, wie es der zugrunde liegenden Aufgabe entspricht
Ein Ausführungsbeispiel der Erfindung wird anhand der beigefügten Zeichnungen näher erläutert. Es / eigen
Fig. 1, IA und IB ein Ausführungsbeispiel nach der
Erfindung,
Fig. IC bis IH je ausschnittweise ein Teil der
Schaltung,
F i g. 1K das Ausführungsbeispiel nach F i g. 1 in stark
vereinfachter Form und
F i g. 2 bis 4 Taktgeber für das dargestellte Ausführungsbeispiel.
In allen Zeichnungen sind Invertoren mit /, UND-Schaltungen
mit +, ODER-Schaltungen mit O, Tor-Schaltungen mit T, Flipflop-Schaltungen mit FF,
monostabile Multivibratoren mit SS und Verzöger-Schaltungen mit Vbezeichnet.
Anhand der Fig. IA und IB, die gemäß Fig. 1
zusammenzulegen sind, und der Fig. IC bis IG wird
nun ein Ausführungsbeispiel erläutert. Dabei wird auch auf die Fig.2, 3 und 4 Bezug genommen, in denen
Taktgeber zur Steuerung der bei Betrieb dieses Ausführungsbeispiels auszuführenden Mikroprogramme
dargestellt sind.
Die in den F i g. 2 bis 4 gezeigten Taktgeber A bis C bestehen aus monostabilen Kippschaltungen SS, die so
hintereinander geschaltet sind, daß jede Kippschaltung bei Rückkehr in ihren stabilen Zustand die nachfolgende
Kippschaltung in ihren nicht stabilen Zustand umschaltet. Jede der Kippschaltungen kehrt nach Ablauf einer
ihr eingeprägten Zeitkonstante selbsttätig aus ihrem nicht stabilen Zustand in ihren stabilen Zustand zurück.
Die Umschaltung einer solchen Kippschaltung aus ihrem stabilen in ihren nicht oder instabilen Zustand
wird im folgenden als »tasten« bezeichnet. Ein Taktimpuls, den eine solche monostabile Kippschaltung
erzeugt, während sie sich in ihrem instabilen Zustand befindet, wird im folgenden mit der Bezugsziffer der
betreffenden Kippschaltung bezeichnet. Der Taktimpuls der Kippschaltung A 1 wird also als Taktimpuls A 1
bezeichnet.
Im folgenden werden die durch die Taktgeber A bis C
gesteuerten Vorgänge aufgezählt.
Ai Tastung: Dekodierung des ersten Befehls, TZW-Befehl.
Funktion: Leitet das Adressenfeld des Befehlsregisters 100 an das Hauptadressenregister
1OZ
Weiter: A 2
A 2 Tastung: Ende des Taktimpulses A 1.
Funktion: Fordert den Speicherzugriff »lesen« zum Halten der Zentraleinheit 10 für
die nachfolgende Speicheroperation ίο »speichern« an.
Weiter: A 3
A 3 Tastung: Ende des Taktimpulses A 2 sowie des
Taktimpulses A 4.
Funktion: Prüft, ob der Speicherzugriff »lesen«
Funktion: Prüft, ob der Speicherzugriff »lesen«
beendet ist.
Weiter: A 4, sofern der Speicherzyklus »lesen« nicht beendet ist andernfalls A 5.
A 4 Tastung: Der Speicherzugriff »lesen« ist nicht
fertig.
Funktion: Dient nur zur Verzögerung. Weiter: A 3
/4 5 Tastung: Der Speicherzugriff »lesen« ist fertig.
Funktion: Vergleicht den Inhalt des Speicherregisters 110 mit lauter Nullen. Wenn sich
dabei Gleichheit ergibt, wird der Vergleicher 114 auf Null zurückgestellt.
Wenn sich dagegen Ungleichheit ergibt, wird der Vergleicher 114 auf Eins gestellt.
Weiter: A6
A 6 Tastung: Ende des Taktimpulses A 5.
Funktion: Prüft die Stellung des Vergleicherriegels 114. Sofern der Vergleicherriegel
114 im Speicherregister verschieden von Null ist, wird das Warte-Flipflop
297 eingeschaltet.
Weiter: A 7, wenn das Flipflop ungleich Null ist, andernfalls B1.
Ende des Taktimpulses A 6. Fordert den Speicherzugriff »speichern«
an.
Erregung der Leitung 234, wenn das
Flipflop 114 auf Null steht. Ende des
Tastimpulses A 6.
Leitet den Inhalt des Einsregister 118
auf das Speicherregister 110.
Bl
Ende des Taktimpulses B 1
Fordert Speicherzugriff »speichern«
an
S3
Ende des Taktimpulses B 2 Schaltet Befehlszähler weiter
Durch den zweiten Befehl, «/-Befehl Leitet Adressenfeld aus dem Befehlsregister
100 an das Hauptadre<;senregister 102
Cl
Cl
Ende des Taktimpulses C1 Leitet die Nullen aus dem Nullregister
112 in das Speicherregister 110
Weiter: C3
Al | Tastung: Funktion |
BX | Tastung: |
Funktion | |
Weiter: | |
Bl | Tastung: Funktion |
Weiter: | |
B3 | Tastung: Funktion |
Ci | Tastung: Funktion |
Weiter: | |
C 2 | Tastung: Funktion |
C3 Tastung: Ende des Taktimpulses C2
Funktion: Fordert den Speicherzugriff »speichern« an
Weiter: C4
Weiter: C4
C 4 Tastung: Ende des Taktimpulses C3 oder C5
Funktion: Ermittelt die Stellung des Flipflops 122 um festzustellen, ob der Speicherzugriff »speichern« beendet ist.
Weiter: Wenn das Flipflop 122 auf Eins steht, dann C5, wenn dagegen das Flipflop 122 auf Null steht, dann C%.
Funktion: Ermittelt die Stellung des Flipflops 122 um festzustellen, ob der Speicherzugriff »speichern« beendet ist.
Weiter: Wenn das Flipflop 122 auf Eins steht, dann C5, wenn dagegen das Flipflop 122 auf Null steht, dann C%.
C5 Tastung: Erregung der Ausgangsleitung 237 von
der Torschaltung 306
Funktion: Nur Verzögerung
Weiter: CA
Funktion: Nur Verzögerung
Weiter: CA
C6 Tastung: Erregung der Ausgangsleitung 238 der
Torschaltung 306
Funktion: Sendet Wiederaufnahmesignal an alle
Funktion: Sendet Wiederaufnahmesignal an alle
Datenverarbeitungsgeräte
Weiter: Cl
Weiter: Cl
Cl Tastung: Ende des Taktimpulses C6
Funktion: Schaltet den Befehlszähler weiter.
Wenn ein erster Befehl - ein TZW-Befehl vorliegt,
wird von dem Dekodierer 101 ein Impuls erzeugt, der über die Leitung 226 an die Kippschaltung
A 1 gelangt und dort einen Taktimpuls A 1 auslöst, der über die ODER-Schaltung 105 an die Torschaltung 290
gelangt. Daraufhin läßt die Torschaltung 290 das Adressenfeld des Befehlsregisters 100 an das Hauptadressenregister
102 gelangen. Mit der Rückflanke des Tastimpulses A 1 wird die Kippschaltung A 2 getastet
und der daraufhin erzeugte Taktimpuls A 2 gelangt über die Leitung 104 an eine gemeinsame Zentraleinheit 10,
fragt einen Lesespeicherzugriff ab und hält die Zentraleinheit 10 für eine nachfolgende Speicheroperation
auf.
Die Zentraleinheit 10 weist speicherbare und lesbare Speicherprogrammeinheiten zur Verarbeitung der gespeicherten
Werte und weitere Funktionseinheiten auf. Gleichzeitig wird ein Flipflop 106 in seinen Einszustand
geschaltet. Mit der Rückflanke des Taktimpulses A 2 wird über die ODER-Schaltung 103 die Kippschaltung
A 3 getastet. Der Taktimpuls der Kippschaltung A 3 gelangt zur Prüfung des Schaltzustandes des Flipflop
106 an das Tor 292. Wenn in diesem Moment das Flipflop 106 in seinem Einszustand sich befindet, dann
wird ein Ausgangssignal auf der Leitung 228 ausgelöst, das die Kippschaltung A 4 tastet. Der Taktimpuls A 4
dient nur zur Zeitverzögerung und tastet mit seiner Rückflanke über die ODER-Schaltung 103 die Kippschaltung
A 3. Wenn während des Taktimpulses A 3 das Flipflop 106 sich in seinem Nullzustand befindet, dann
wird auf der Leitung 230 ein Ausgangssignal erzeugt,
das die Kippschaltung A 5 tastet. Das Flipflop 106 wird,
sobald der Lesezugriff vollendet ist und der Befehl aus der Zentraleinheit 10 in das Speicherregister 110
eingegeben ist, auf seinen Nullzustand zurückgeschaltet Bei diesem Ausführungsbeispiel zeigen lauter Nullen an,
daß kein Datenverarbeitungsgerät zu dem gegebenen Zeitpunkt einen bestimmten Programmabschnitt eines
Programms benutzt (gelöste Verriegelung), während dagegen Einsen anzeigen, daß ein anderes Datenverarbeitungsgerät
den betreffenden Programmabschnitt benutzt (geschlossene Verriegelung).
Wenn der Lesezugriff beendet ist, muß festgestellt werden, ob der Inhalt des Speicherregisters 110 aus
lauter Nullen besteht oder nicht. Liegen lauter Nullen vor, dann kann ein Datenverarbeitungsgerät, das in
einem bestimmten Programmabschnitt des Programms "> Eingang sucht, eingeschleust werden, da keine geschlossene
Verriegelung vorliegt. Wenn dagegen in dem Register 110 nicht nur Nullen vorliegen, dann bedeutet
dies, daß ein eingangssuchendes Verarbeitungsgerät warten muß, bis der Speicherteil der Zentraleinheit 10,
i« der die Verriegelungsinformation enthält, von dem
betreffenden Verarbeitungsgerät, das diesen Programmabschnitt gerade benutzt, freigegeben wird.
Ist dies geschehen, dann besteht der Inhalt des Speicherregisters 110 aus lauter Nullen.
i> Der Taktimpuls A 5 wird auf eine Torschaltung 294
gegeben, um das Ausgangssignal der Vergleichereinheit 108 zu untersuchen. Die Vergleichereinheit 108
vergleicht den Inhalt des Speicherregisters 110 mit dem
des Registers 112. Das Register 112 enthält ständig lauter Nullen. Wenn der Inhalt des Speicherregisters
110 ebenfalls aus lauter Nullen besteht, wird eine Vergleicherverriegelung 114 auf Null gesetzt. Wenn der
Inhalt des Speicherregisters 110 jedoch nicht aus lauter Nullen besteht, wird diese Vergleicherverriegelung 114
-'s auf Eins gesetzt.
Durch die Rückflanke des Taktimpulses A 5 wird die Kippschaltung A 6 getastet. Der Taktimpuls A 6 gelangt
an die Torschaltung 296 und überprüft dort den Schaltzustand der Vergleicherverriegelung 114. Wenn
hi sich die Vergleicherverriegelung dabei in ihrem
Nullzustand befindet, dann entsteht aufgrund des Taktimpulses A 6 auf der Leitung 234 ein Ausgangssigna!,
das die Kippschaltung ßl tastet und damit den Taktgeber B in Betrieb setzt. Das Mikroprogramm, das
i'i von dem Taktgeber A gesteuert wird, führt den
TZW- Befehl aus. Das Mikroprogramm, das von dem Taktgeber B gesteuert wird, sorgt dafür, daß ein
Programmabschnitt einem Datenverarbeitungsgerät exklusiv zur Verfügung steht, wenn dieser Programmabschnitt
nicht durch eine Verriegelung geschützt ist. Eine solche Situation liegt vor, wenn die Vergleicherverriegelung
114 auf Null steht.
Wenn dagegen die Vergleicherverriegelung 114 auf Eins steht, dann wird ein Warte-Flipflop 297 auf Eins
■'■': geschaltet und auf der Leitung 232 am Ausgang des
Tores 296 entsteht ein Ausgangssignal, das die Kippschaltung A 1 tastet. Der Taktimpuls A 7 gelangt
an die ODER-Schaltung 298 und fordert einen Speicherzugriff »Speichern« der Zentraleinheit 10 an.
rM Durch den Taktimpuls A 1 wird über die ODER-Schaltung
298 und die Leitung 116 das Flipflop 122 in seinen
Einszustand geschaltet Diese Umschaltung des Flipflops 122 hat im Augenblick keine besondere Bedeutung,
weil es im Moment nicht nötig ist, festzustellen, ob
Si der Speicherzugriff beendet ist Der Taktimpuls A 2
gelangte, wie bereits bemerkt auf die Leitung 104, m die Zentraleinheit für die nachfolgenden Speicheroperationen,
die, wie eben beschrieben, durch den Taktimpuls A 7 ausgelöst werden, festzuhalten.
bO Es wird noch einmal daran erinnert, daß die
Vergleicherverriegelung 114 durch den Taktimpuls A 6
überprüft wurde und daß ein Ausgangssignal auf der Leitung 234 erscheint, wenn dabei die Vergleicherverriegelung
114 ihren Nullzustand inne hatte.
fej Durch dieses Ausgangssignal wurde die Kippschaltung
B1 getastet und der Taktgeber in Betrieb gesetzt
Der Taktimpuls B1 gelangt auch an eine Torschaltung
300, um Einsen aus einem Einsenregister 118 an das
Speicherregister 110 zu leiten. Mit Beendigung des Taktimpulses B\ wird die Kippschaltung 52 getastet
und der Taktimpuls B2 fordert über die ODER-Schaltung 298 den Speicherzugriff an. Durch die Rückflanke
des Taktimpulses B2 wird die Kippschaltung S3 getastet und der ausgelöste Taktimpuls S3 gelangt über
die ODER-Schaltung 302 auf die Leitung 120 und dient als Signal, den Befehlszähler weiterzuschalten und den
nächsten Befehl abzurufen. Damit übernimmt das Datenverarbeitungsgerät, das in den betreffenden ι ο
Programmabschnitt Eingang gefunden hat, die Programmsteuerung in diesem Programmabschnitt und
wird dabei durch Verriegelung geschützt. Die Verriegelungsinformation ist dabei in Form von Einsen im
betreffenden Speicher der Zentraleinheit iO niedergelegt, wodurch alle anderen Datenverarbeitungsgeräte,
die Eingang in diesen Programmabschnitt suchen, ausgeschlossen werden. Der letzte Befehl eines so
verriegel'en Programmabschnittes, ist ein »Verriegelung-zurückschal
ten-Befehl«, kurz auch «/-Befehl. Sobald das steuernde Datenverarbeitungsgerät die Ausführung
der verriegelten Befehle beendet, führt es den «/-Befehl aus. Mit Dekodierung eines «/-Befehls
erscheint ein Signal auf der Leitung 236, durch das der Taktgeber C eingeschaltet wird. Der Taktgeber C ist
ähnlich aufgebaut wie die Taktgeber A und B, steuert jedoch das Mikroprogramm für den «/-Befehl.
Beim Einschalten des Taktgebers C wird ein Taktimpuls Cl von der Kippschaltung Cl erzeugt, der
über die ODER-Schaltung 105 an die Torschaltung 290 gelangt, so daß die Adresse der Verriegelung vom
Befehlsregister 100 an das Hauptadressenregister 102 gelangen kann. Mit der Rückflanke des Taktimpulses
Cl wird die Kippschaltung C2 getastet und der Taktimpuls C2 gelangt an das Tor 304, so daß Nullen
aus dem Register 112 in das Speicherregister 110 gelangen können. Mit dem Ende des Taktimpulses C2
wird die Kippschaltung C3 getastet und der daraus resultierende Taktimpuls C3 gelangt über die ODER-Schaltung
298 an die Leitung 116 und fordert einen Speicherzugriff an, und schaltet gleichzeitig das Flipflop
122 in seinen Einszustand. Am Ende des Taktimpulses C3 wird über die ODER-Schaltung 107 die Kippschal
tung C4 getastet Der Taktimpuls C4 gelangt an die Torschaltung 306 und überprüft das Flipflop 122. Wenn
sich dabei das Flipflop 122 in seinem Einszustand befindet, wird die Kippschaltung C5 getastet Ist
dagegen das Flipflop 122 dabei in seinem Nullzustand, wird die Kippschaltung C6 getastet. Der Taktimpuls
C5 dient nur zur Verzögerung und tastet mit seiner Rückflanke über die ODER-Schaltung 107 die Kippschaltung
C4 erneut Der Taktimpuls C6 gelangt an die Leitung 124 und von da als Wiederaufnahmesignal an
alle Datenverarbeitungsgeräte gemäß Pfeil P5. Der Taktimpuls B 3 schaltet über die ODER-Schaltung 302
und die Leitung 120 den Befehlszähler und holt den nächsten Befehl gemäß Pfeil P4. Jetzt enthält die
Verriegelungsposition im betreffenden Speicher der Zentraleinheit 10 lauter Nullen und die Verrieglung ist
somit zurückgeschaltet
Auf diese Weise wird mit der Anordnung nach den Fig. IA bis IG ohne wesentliche Zusatzleitungen eine
Verriegelung mittels zweier komplementärer Maschinenbefehle — dem 72W-Befehl und dem «/-Befehl —
herbeigeführt
Bei dem in F i g. 1K dargestellten Ausführungsbeispiel
werden die Steuersequenzen des TZlV-Befehls und des
«/-Befehls durch Schieberegister CSl, CS2 und CS 3 dargestellt. Mit Auslösung einer solchen Sequenz wird
ein einzelnes »l-Bit-< links in ein Register eingespeist. Jede Stufe löst einen Schritt der Sequenz aus, und zwar
gemäß F i g. 1K von links nach rechts fortschreitend.
Mit Dekodierungeines TZW-Befehls im Decoder502
wird der Steuersequenzgenerator CSl ausgelöst, die aus folgenden Schritten besteht:
1. Absenden einer Adresse aus dem Befehlsregister 500 an das Hauptadressenregister 501.
2. Einleiten eines Zyklus zum Einrichten oder Festhalten der zum ausgewählten Speichermodul
führenden Leistungsverbindung, bis das Datenverarbeitungsgerät einen zweiten Speicherzyklus
auslöst,gemäß Pfeil Pll.
3. Vergleichen des gerade empfangenen Speicherinhalts im Vergleicher 504 mit Null und speichern des
Ergebnisses in ein Flipflop 506.
4. Wenn C(N) Φ 0 (wenn also der Vergleich eine
Ungleichheit zeigt), wird das Datenverarbeitungsgerät durch Umschalten des Flipflop 505, das den
Belegungszustand anzeigt, in den Wartezustand gebracht, und dadurch werden gemäß Pfeil P12
alle Sequenzschaltungen dieses Datenverarbeitungsgerätes festgehalten. Der Befehlszähler wird
nicht weitergeschaltet. Wenn dagegen C(N) = 0 ist (der Vergleich also Gleichheit zeigt), dann wird der
Steuersequenzgenerator CS 2 eingeschaltet.
Die vom Steuersequenzgenerator CS 2 abgegebene Steuersequenz sperrt die Verriegelung und läßt das
Datenverarbeitungsgerät weiterarbeiten. Es ergeben sich folgende Schritte:
1. Eine vorbestimmte, zur Bezeichnung dienende Bitposition eines Speicherregisters 503 wird auf
Eins gesetzt
2. Ein Arbeitszyklus »speichern« der Zentraleinheit wird eingeleitet gemäß Pfeil P13.
3. Ein Befehlszähler wird weitergeschaltet und die Ausführung de/ nachfolgenden Befehle wird
fortgesetzt gemäß Pfeil P14.
Durch Dekodierung eines «/-Befehls wird der Sequenzgenerator CS 3 eingeschaltet Diese Sequenz
umfaßt folgende Schritte:
1. Die Adresse wird vom Befehlsregister 500 an das Hauptadressenregister 501 für die Zentraleinheit
10 gegeben.
2. Alle Positionen des Speicherregisters 503 werden auf Null geschaltet
3. Es wird ein Speicherzyklus in der Zentraleinheit 10
ausgelöst gemäß Pfeil P13.
(Durch die Schritte 1 bis 3 wird die Verriegelung für andere Aufgaben geöffnet)
4. Es wird allen Datenverarbeitungsgeräten ein Wiederaufnahmesignal zugeleitet gemäß Pfeil P15.
5. Der Befehlszähler wird weitergeschaltet gemäß Pfeil P14.
Bei Empfang eines Wiederaufnahmesignals gemäß Pfeil P16. die zu den anderen Datenverarbeitungsgeräten
führen, kehrt ein im Wartezustand befindliches Datenverarbeitungsgerät in den aktiven Zustand
zurück. Der 7ZW-Befehl wird noch einmal ausgeführt
da der Befehlszähler und das Befehlsregister des letzten Datenverarbeitungsgerätes durch den TZW-Befehl, der
dieses Datenverarbeitungsgerät ursprünglich in den Wartezustand versetzte, nicht verändert wurde.
Hierzu 4 Blatt Zeichnungen 030165/16
Claims (1)
- Patentanspruch:Mehrere Programme simultan verarbeitende 3.3.Datenverarbeitungsanlage mit einem Befehlsregister, bei der der gleichzeitige Eintritt mehrerer Datenverarbeitungsgeräte in ein und denselben 3.4.Programmabschnitt verhindert wird, indem bei Belegung des angesprochenen Programmabschnittes das ansprechende Datenverarbeitungsgerät auf Warteposition und inaktiv geschaltet wird und bei ία Nichtbelegung ein Ansprechen des Datenverarbeitungsgerätes in den betreffenden, nicht belegten Programmabschnitt eingeleitet wird, gekennzeichnet durch die Kombination folgender Merkmale:ausführt wie die erste Stufe (CS 2-5) des zweiten Steuersequenzgenerators (CS 2),
dritte Stufe (CS 3-3) dieselbe Tätigkeit ausführt wie die zweite Stufe (CS 2-6) des zweiten Steuersequenzgenerators (CS 2),
vierte Stufe (CS 3-4) allen Datenverarbeitungsgeräten ein Wiederaufnahmesignal zuleitet (Pfeil PS), und dessen
fünfte Stufe (CS 3-5) dieselbe Tätigkeit ausführt wie die dritte Stufe (CS 2-7) des zweiten Steuersequenzgenerators (CS 2).
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US74267668A | 1968-07-05 | 1968-07-05 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE1933685A1 DE1933685A1 (de) | 1970-01-08 |
DE1933685B2 true DE1933685B2 (de) | 1981-01-29 |
DE1933685C3 DE1933685C3 (de) | 1981-10-15 |
Family
ID=24985786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE1933685A Expired DE1933685C3 (de) | 1968-07-05 | 1969-07-03 | Mehrere Programme simultan verarbeitende Datenverarbeitungsanlage |
Country Status (5)
Country | Link |
---|---|
US (1) | US3528062A (de) |
JP (1) | JPS4825262B1 (de) |
CA (1) | CA930475A (de) |
DE (1) | DE1933685C3 (de) |
FR (1) | FR2012328A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3209037A1 (de) * | 1981-03-13 | 1982-09-23 | Hitachi, Ltd., Tokyo | Verfahren und anordnung zur selbststeuerung bei verteilter vorrang-kollision |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3647348A (en) * | 1970-01-19 | 1972-03-07 | Fairchild Camera Instr Co | Hardware-oriented paging control system |
US3683418A (en) * | 1970-04-16 | 1972-08-08 | Bell Telephone Labor Inc | Method of protecting data in a multiprocessor computer system |
US3676860A (en) * | 1970-12-28 | 1972-07-11 | Ibm | Interactive tie-breaking system |
US4183083A (en) * | 1972-04-14 | 1980-01-08 | Duquesne Systems, Inc. | Method of operating a multiprogrammed computing system |
FR2258112A5 (de) * | 1973-11-30 | 1975-08-08 | Honeywell Bull Soc Ind | |
JPS5296836A (en) * | 1976-02-10 | 1977-08-15 | Toshiba Corp | Multiplex data processing system |
US4224664A (en) * | 1976-05-07 | 1980-09-23 | Honeywell Information Systems Inc. | Apparatus for detecting when the activity of one process in relation to a common piece of information interferes with any other process in a multiprogramming/multiprocessing computer system |
US4065809A (en) * | 1976-05-27 | 1977-12-27 | Tokyo Shibaura Electric Co., Ltd. | Multi-processing system for controlling microcomputers and memories |
US4093986A (en) * | 1976-12-27 | 1978-06-06 | International Business Machines Corporation | Address translation with storage protection |
US4091445A (en) * | 1977-01-18 | 1978-05-23 | Honeywell Information Systems Inc. | Program switching monitor |
JPS596415B2 (ja) * | 1977-10-28 | 1984-02-10 | 株式会社日立製作所 | 多重情報処理システム |
JPS588018B2 (ja) * | 1978-09-14 | 1983-02-14 | 日本電気株式会社 | 多重プロセッサシステム |
US4249241A (en) * | 1978-10-23 | 1981-02-03 | International Business Machines Corporation | Object access serialization apparatus for a data processing system |
US4402046A (en) * | 1978-12-21 | 1983-08-30 | Intel Corporation | Interprocessor communication system |
DE3069249D1 (en) * | 1979-02-13 | 1984-10-31 | Secr Defence Brit | Data processing unit and data processing system comprising a plurality of such data processing units |
US4374415A (en) * | 1980-07-14 | 1983-02-15 | International Business Machines Corp. | Host control of suspension and resumption of channel program execution |
US4399504A (en) * | 1980-10-06 | 1983-08-16 | International Business Machines Corporation | Method and means for the sharing of data resources in a multiprocessing, multiprogramming environment |
US4410942A (en) * | 1981-03-06 | 1983-10-18 | International Business Machines Corporation | Synchronizing buffered peripheral subsystems to host operations |
JPS58140862A (ja) * | 1982-02-16 | 1983-08-20 | Toshiba Corp | 相互排他方式 |
US4567562A (en) * | 1983-07-21 | 1986-01-28 | Burroughs Corporation | Controller for controlling access to a plurality of records that can be accessed and changed by several independent processors |
JPS6079460A (ja) * | 1983-10-07 | 1985-05-07 | Nec Corp | 密結合多重演算装置における制御方式 |
US4754398A (en) * | 1985-06-28 | 1988-06-28 | Cray Research, Inc. | System for multiprocessor communication using local and common semaphore and information registers |
FR2605767B1 (fr) * | 1986-10-22 | 1989-04-28 | Olivier Alain | Procede de mise en attente d'au moins un materiel de traitement d'informations puis de liaison de celui-ci a un equipement et moyens pour la mise en oeuvre de ce procede |
US5129087A (en) * | 1988-02-03 | 1992-07-07 | International Business Machines, Corp. | Computer system and a method of monitoring transient data structures in a computer system |
JP2650965B2 (ja) * | 1988-05-27 | 1997-09-10 | 株式会社日立製作所 | 計算機システムおよびそのタスクスケジュール方法 |
AU650242B2 (en) * | 1989-11-28 | 1994-06-16 | International Business Machines Corporation | Methods and apparatus for dynamically managing input/output (I/O) connectivity |
US5666515A (en) * | 1993-02-18 | 1997-09-09 | Unisys Corporation | Information processing system having multiple modules and a memory on a bus, where any module can lock an addressable portion of the memory by sending retry signals to other modules that try to read at the locked address |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3108256A (en) * | 1958-12-30 | 1963-10-22 | Ibm | Logical clearing of memory devices |
BE633719A (de) * | 1962-06-22 | |||
US3245047A (en) * | 1962-09-19 | 1966-04-05 | Ibm | Selective data transfer apparatus |
DE1218761B (de) * | 1963-07-19 | 1966-06-08 | International Business Machines Corporation, Armonk, N. Y. (V. St. A.) | Datenspeidbereinrichtung |
US3398405A (en) * | 1965-06-07 | 1968-08-20 | Burroughs Corp | Digital computer with memory lock operation |
-
1968
- 1968-07-05 US US742676A patent/US3528062A/en not_active Expired - Lifetime
-
1969
- 1969-06-04 FR FR6918099A patent/FR2012328A1/fr not_active Withdrawn
- 1969-06-24 CA CA055162A patent/CA930475A/en not_active Expired
- 1969-07-03 DE DE1933685A patent/DE1933685C3/de not_active Expired
- 1969-07-04 JP JP44052569A patent/JPS4825262B1/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3209037A1 (de) * | 1981-03-13 | 1982-09-23 | Hitachi, Ltd., Tokyo | Verfahren und anordnung zur selbststeuerung bei verteilter vorrang-kollision |
Also Published As
Publication number | Publication date |
---|---|
JPS4825262B1 (de) | 1973-07-27 |
DE1933685C3 (de) | 1981-10-15 |
DE1933685A1 (de) | 1970-01-08 |
CA930475A (en) | 1973-07-17 |
US3528062A (en) | 1970-09-08 |
FR2012328A1 (de) | 1970-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1933685C3 (de) | Mehrere Programme simultan verarbeitende Datenverarbeitungsanlage | |
DE2856483C2 (de) | ||
DE2641741C2 (de) | Rechenanlage aus mehreren miteinander über ein Sammelleitungssystem verbundenen und zusammenwirkenden Einzelrechnern und einem Steuerrechner | |
DE1915818C3 (de) | Steuerschaltung für ein elektronisches Datenverarbeitungssystem | |
DE2346525A1 (de) | Virtuelle speichereinrichtung | |
DE2855673C2 (de) | ||
DE2615861A1 (de) | Einrichtung zur pruefung von programmen | |
DE1168127B (de) | Schaltungsanordnung zum Vergleich von Zahlen | |
DE2741886A1 (de) | Datenuebertragungseinrichtung | |
DE2744531A1 (de) | Elektronische datenverarbeitungsanlage | |
DE2928488A1 (de) | Speicher-subsystem | |
DE1424762B2 (de) | Datenverarbeitungsanlage | |
DE2019444A1 (de) | Datenverarbeitungsanlage | |
DE1275800B (de) | Steuerwerk fuer datenverarbeitende Maschinen | |
DE1474062B2 (de) | Datenverarbeitungsanlage mit einer anzahl von pufferspeichern | |
DE2758151A1 (de) | Einrichtung zum sortieren von datensaetzen | |
DE2148956B2 (de) | Datenübertragungssystem | |
DE2165730A1 (de) | Rechensystem | |
DE2633155B2 (de) | Einrichtung zur Erzeugung zeitdefinierter Funktionssteuersignale | |
DE2106731A1 (de) | Diagnoseeinrichtung fur elektronische Datenverarbeitungsanlagen | |
DE1957600C3 (de) | ||
DE1222289B (de) | Datenverarbeitungseinrichtung | |
DE3426902A1 (de) | Schaltungsanordnung zum konfigurieren von peripherieeinheiten in einer datenverarbeitungsanlage | |
DE2917822A1 (de) | Schaltungsanordnung zur zweirichtungsuebertragung von signalen | |
DE2216533C3 (de) | Anordnung zur Steuerung der Durchführung mehrerer Aufgaben in einer DTENVERARBEITUNGSANLAGE |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |