DE3726168C2 - - Google Patents
Info
- Publication number
- DE3726168C2 DE3726168C2 DE3726168A DE3726168A DE3726168C2 DE 3726168 C2 DE3726168 C2 DE 3726168C2 DE 3726168 A DE3726168 A DE 3726168A DE 3726168 A DE3726168 A DE 3726168A DE 3726168 C2 DE3726168 C2 DE 3726168C2
- Authority
- DE
- Germany
- Prior art keywords
- data
- command
- data transfer
- memory
- main memory
- 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 - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
Description
Die Erfindung betrifft eine Vorrichtung zur Steuerung
von Datenübertragungen zwischen einem Hauptspeicher,
einem Erweiterungsspeicher und einem Prozessor eines
Datenverarbeitungssystems gemäß dem Oberbegriff des
Anspruchs 1.
Eine solche Vorrichtung ist aus der
JP-OS 58-9276 bekannt.
Allgemein hat ein Erweiterungsspeicher in einem
Informationsverarbeitungssystem zwei Hauptverwendungsarten.
Zum einen wird der Erweiterungsspeicher vom Betriebssystem
beispielsweise für einen virtuellen Speicher
oder zum sukzessiven Einspeichern eines Prozesses (roll-in)
bzw. beim Ausspeichern eines Prozesses (roll-out) bei
der Änderung eines Jobs verwendet. Bei dieser Betriebsweise
wird der Erweiterungsspeicher im allgemeinen durch
einen asynchronen Befehl (START I/O-Befehl) gestartet,
weil die Operation zusammen mit der Ausführung eines
Benutzerprogramms ausgeführt werden soll. Zum anderen
wird der Erweiterungsspeicher von Benutzerprogrammen
beispielsweise als Arbeitsdatei verwendet. Da die
Operation in diesem Fall sofort durchgeführt werden muß,
wird im allgemeinen der Erweiterungsspeicher durch einen
synchronen Befehl (MOVE-Befehl) gestartet.
Bei diesen beiden Verwendungsarten tritt ein Fall auf,
wo der Erweiterungsspeicher durch einen synchronen Befehl
von einem Benutzerprogramm während der Ausführung eines
durch einen asynchronen Befehl bewirkten Datentransfer
initiiert wird. Bei der bekannten Vorrichtung
(JP-OS 58-9276) wird in einem solchen Fall die Initiierung
durch den synchronen Befehl nach der vollständigen
Datenübertragung durch den asynchronen Befehl ausgeführt.
Bei den durch die synchronen und asynchronen Befehle
durchgeführten Betriebsweisen, wie sie in der JP-OS
58-9276 beschrieben sind, tritt die Schwierigkeit auf,
daß der Erweiterungsspeicher durch einen synchronen
Befehl nicht initiiert werden kann, während die Datenübertragung
aufgrund eines asynchronen Befehls durchgeführt
wird, so daß ein sofortiger Datentransfer zwischen
dem Hauptspeicher und dem Erweiterungsspeicher, der von
dem synchronen Befehl angefordert wurde, nicht stattfinden
kann.
Die DE 33 38 329 A1 offenbart eine Eingabe/Ausgabe-
Operation für die Initiierung einer Datenübertragung
zwischen einem externen Speicher und einem Hauptspeicher
eines Datenverarbeitungssystems. Dies geschieht durch die
Ausgabe eines Eingabe/Ausgabe-Startbefehls an die
Eingabe/Ausgabe-Einheit des Prozessors.
Außerdem wird die Steuerung zum Start der Datenübertragung
zwischen dem Hauptspeicher und einem Erweiterungsspeicher
durch Ausgabe eines "read"-Befehls und
"write"-Befehls direkt vom Prozessor an den Erweiterungsspeicher
beschrieben. Die Eingabe/Ausgabe-Operation
zur Initiierung der Datenübertragung wird in dem Datenverarbeitungssystem
gemäß der DE 33 38 329 A1 durch einen
asynchronen Befehl initiiert, während die Eingabe/Ausgabe-
Operation zum Start der Datenübertragung zwischen
dem Hauptspeicher und dem Erweiterungsspeicher aufgrund
eines synchronen Befehls initiiert wird. Jedoch ist in
der DE 33 38 329 A1 eine die Datenübertragung aufgrund
des asynchronen Befehls und die Datenübertragung aufgrund
des synchronen Befehls steuernde Vorrichtung nicht beschrieben.
Deshalb sind auch keine Maßnahmen beschrieben,
wie ein aufgrund eines synchronen Befehls gestatteter
Datentransfer gegenüber eines aufgrund eines asynchronen
Befehls gestatteten Datentransfers durch Unterbrechung
des letzteren bevorzugt werden könnte. Da nämlich die
Datenübertragungsoperationen bei der DE 33 38 329 A1
zwischen unterschiedlichen Speichereinheiten und unabhängig
voneinander stattfinden, kann es nicht vorkommen,
daß die Datenübertragung durch synchrone Befehle eine
Unterbrechung während der Zeit, in der Datentransfers
aufgrund asynchroner Befehle durchgeführt werden, nötig
macht.
Die DE 25 00 721 C2 beschreibt eine Sekundärspeicherstruktur
und insbesondere Maßnahmen zur Verbindung
einer Eingabe/Ausgabe-Steuereinheit mit Ansteuereinrichtungen.
Die genannte Eingabe/Ausgabe-Steuereinheit
und die Ansteuereinrichtungen sind durch zwei Datenwege
miteinander verbunden. Der eine Datenweg ist ein asynchroner
Datenweg, über den Adreß- und Steuerinformation
übertragen werden. Die Startadresse einer Ansteuereinrichtung
und die die zu übertragende Datenmenge
betreffende Information sind typische über diesen
asynchronen Weg zu übertragende Informationen. Der andere
Datenweg ist ein synchroner Datenweg, über den Nutzdaten
übertragen werden (vgl. Spalte 8, Zeilen 14-36 dieser
Druckschrift). Der asynchrone Datenweg dient jedoch
lediglich zur Übertragung von Steuerinformation, wie
Befehle und Adressen. Es kann auch bei dem Datenverarbeitungssystem
gemäß der DE 25 00 721 C2 nicht vorkommen,
daß der Transfer von Befehlen gleichzeitig mit
dem Transfer von Datenblöcken auftritt. Deshalb sind in
dieser Druckschrift auch an keiner Stelle Maßnahmen zur
Unterbrechung einer durch einen asynchronen Befehl bewirkten
Datenübertragung und zur priorisierten Durchführung
einer Datenübertragung durch einen synchronen
Befehl beschrieben.
Es ist deshalb Aufgabe dieser Erfindung, die gattungsgemäße
Vorrichtung so zu verbessern, daß auch in
einem Fall, wo der synchrone Befehl ausgegeben wird,
während Daten aufgrund eines asynchronen Befehls zwischen
dem Hauptspeicher und dem Erweiterungsspeicher übertragen
werden, sofort ein Datentransfer durch den synchronen
Befehl durchführbar ist, indem der durch den asynchronen
Befehl bewirkte Datentransfer unterbrochen wird.
Die obige Aufgabe wird erfindungsgemäß durch eine im
Patentanspruch 1 gekennzeichnete Steuervorrichtung
gelöst.
Die abhängigen Ansprüche kennzeichnen jeweils
vorteilhafte Weiterbildungen davon.
Da die zum Halten der Datenübertragungssteuerinformation
vorgesehene Halteeinrichtung jeweils für den Synchron- und
den Asynchronbefehl vorgesehen ist, kann der gerade
ablaufende, durch einen Asynchronbefehl angeforderte Datentransfer,
wenn währenddessen ein synchroner Befehl ausgegeben
wird, willkürlich zur Durchführung des synchronen
Befehls unterbrochen und dadurch die Verarbeitungszeit für
den synchronen Befehl minimiert werden. Außerdem braucht
die gehaltene Information nicht geändert zu werden
und folglich wird die von der Unterbrechung der Ausführung
des asynchronen Befehls bis zum Start der Ausführung
des synchronen Befehls nötige Zeitdauer sehr klein werden.
Vorteilhafterweise kann die erfindungsgemäße Vorrich
tung zusammen mit einer Pufferspeichereinheit zum Halten
von Datenübertragungssteuerinformation vorgesehen sein, wo
bei, sobald die Ausführung eines asynchronen Befehls auf
grund der Ausgabe eines synchronen Befehls unterbrochen
wird, die Datenübertragungssteuerinformation für die Aus
führung des asynchronen Befehls in den Pufferspeicher ge
rettet wird und die Datenübertragungssteuerinformation
zur Durchführung des synchronen Befehls in den Puffer
speicher gesetzt wird. Nachdem der aufgrund des synchronen
Befehls bewirkte Datentransfer beendet ist, wird die ge
rettete Datenübertragungssteuerinformation in den Puffer
speicher geladen und der Datentransfer aufgrund des
asynchronen Befehls fortgeführt. Erfindungsgemäß wird der
gerade ausgeführte Datentransfer unterbrochen, sobald ein
Synchronbefehl zur Initiierung einer Datenübertragung
während eines von einem Asynchronbefehl bewirkten Daten
transfers ausgegeben wird, um dann den vom synchronen Be
fehl angeforderten Datentransfer durchzuführen. Folglich
kann die für den vom synchronen Befehl angeforderten Da
tentransfer nötige Verarbeitungszeit minimiert werden.
Außerdem kann auch während der Durchführung des auf
grund des asynchronen Befehls bewirkten Datentransfers
der synchrone Befehl ausgegeben werden, was die zur Aus
gabe des synchronen Befehls durchgeführte Prozedur ver
einfacht.
Die Erfindung wird im folgenden anhand der Zeichnung
in Ausführungsbeispielen näher beschrieben. Es zeigt
Fig. 1 ein Blockschaltbild eines Datenverarbeitungs
systems, bei dem die Erfindung anwendbar ist;
Fig. 2 schematisch ein Schaltbild eines Ausführungs
beispiels einer Erweiterungsspeichersteuereinrichtung, die die er
findungsgemäße Vorrichtung aufweist;
Fig. 3 ein Blockschaltbild einer in Fig. 2 gezeigten
Steuereinrichtung 7;
Fig. 4 ein Schaltbild des Aufbaus einer in Fig. 2 ge
zeigten Hauptspeicherstartschaltung 8;
Fig. 5 ein Schaltbild einer in Fig. 2 gezeigten Er
weiterungsspeicherstartschaltung 9;
Fig. 6 ein Schaltbild des Aufbaus eines Datenpufferbe
reichs der Erweiterungsspeichersteuereinrichtung 5;
Fig. 7 ein Zeitdiagramm einer aufgrund eines synchro
nen Befehls durchgeführten Datenübertragung vom Hauptspei
cher zum Erweiterungsspeicher;
Fig. 8 ein Zeitdiagramm einer aufgrund eines asynchro
nen Befehls durchgeführten Datenübertragung vom Erweite
rungsspeicher zum Hauptspeicher;
Fig. 9 ein Zeitdiagramm einer aufgrund eines asynchro
nen Befehls durchgeführten Datenübertragung vom Hauptspei
cher zum Erweiterungsspeicher;
Fig. 10 ein Zeitdiagramm einer aufgrund eines asynchro
nen Befehls durchgeführten Datenübertragung vom Erweite
rungsspeicher zum Hauptspeicher;
Fig. 11 ein Zeitdiagramm eines Falles, wo während einer
vom Hauptspeicher zum Erweiterungsspeicher aufgrund eines
asynchronen Befehls bewirkten Datenübertragung eine Daten
übertragung durch einen synchronen Befehl vom Hauptspeicher
zum Erweiterungsspeicher bewirkt wird; und
Fig. 12 ein Schaltbild, das schematisch den Schaltungsaufbau von
Registern zum Sicherstellen der Datenübertragungssteuerinformation
und von Steuerregistern zum Setzen der Datenübertragungssteuer
information darstellt.
Fig. 1 zeigt den Gesamtaufbau eines Datenver
arbeitungssystems mit einem Hauptspeicher und einem Erweite
rungsspeicher 1. Letztere ist mit einem Pro
zessor 2 und außerdem über eine Hauptspeichersteuereinrich
tung 3 mit einem Hauptspeicher 4 verbunden. Der Erweite
rungsspeicher 1 weist hauptsächlich eine Erweiterungsspei
chersteuereinrichtung 5 zum Steuern des Datentransfers und
einen Erweiterungsspeicher 6 zum Datenspeichern auf.
Die Erweiterungsspeichersteuereinrichtung 5 empfängt vom
Prozessor 2 Datentransfersteuerinformation (eine erste
Blockadresse des Hauptspeichers, eine erste Blockadresse
des Erweiterungsspeichers, eine Transferblockzahl und eine
Betriebsart) eines synchronen Befehls oder eine Hauptspei
cheradresse, unter der Datenübertragungssteuerinformation
eines asynchronen Befehls gespeichert ist sowie ein Start
signal, um einen Datentransfer zwischen dem Erweiterungs
speicherteil 6 und dem Hauptspeicher 4 über die Hauptspei
chersteuereinrichtung 3 zu steuern.
Fig. 2 zeigt Schaltungseinzelheiten eines Ausführungs
beispiels der Erweiterungsspeichersteuereinrichtung 5, in
der die Datenübertragungssteuervorrichtung
enthalten ist. Zwecks einfacherer Darstellung sind in Fig. 1
nur die Teile des Steuersystems dargestellt, und die Teile
des Datensystems weggelassen.
Eine Steuereinrichtung 7 steuert die gesamte Erweite
rungsspeichersteuereinrichtung, eine Hauptspeicherstart
schaltung 8 und eine Erweiterungsspeicherstartschaltung 9.
Eine Datenübertragungssteuerregistergruppe (zweite Halteeinrichtung) 100 für asynchrone
Befehle enthält ein Hauptspeicherblockadreßregister 12, ein
Erweiterungsspeicherblockadreßregister 13, ein Transfer
blockzahlregister 14 und ein Betriebsartregister 15. Eine
Datenübertragungssteuerregistergruppe (erste Halteeinrichtung) 200 für synchrone
Befehle weist gleichermaßen ein Hauptspeicherblockadreß
register 16, ein Erweiterungsspeicherblockadreßregister 17,
ein Transferblockzahlregister 18 und ein Betriebsartregister
19 auf. Ein Befehlsadreßregister 11 speichert eine Haupt
speicheradresse, unter der Datenübertragungssteuerinfor
mation eines asynchronen Befehls gespeichert ist.
Die einen asynchronen Befehl betreffende Datenüber
tragungssteuerinformation 34, die vom Hauptspeicher 4 über
die Hauptspeichersteuereinrichtung 3 basierend auf der im
Register 11 gespeicherten Hauptspeicheradresse gesendet wird,
geht durch einen Wähler 21 und wird in einem der Register
12-15 der Registergruppe 100 gespeichert. In gleicher Weise
wird Datenübertragungssteuerinformation 31 vom Prozessor 2
über einen Wähler 22 in eines der Register 16-19 der Re
gistergruppe 200 gesetzt. Wähler 23-26 wählen entweder Aus
gänge der Register 12-15 der Registergruppe 100 oder Aus
gänge der Register 16-19 der Registergruppe 200, um auf
diese Weise eine Hauptspeicherblockadresse 35, eine Erwei
terungsspeicherblockadresse 36, eine Resttransferblockzahl
37 und eine Betriebsart 38 zu setzen. Für eine Datenüber
tragungsoperation werden vom Wähler 27 die Adressen 35 und
36 und die Blockzahl 37 gewählt und durch einen Addierer/
Subtrahierer 28 einem Additions/Subtraktionsvorgang unter
worfen. Die Ergebnisse werden über den Wähler 21 oder 22
zu den betreffenden Registern der Datenübertragungssteuer
register der Registergruppe 100 oder der Registergruppe 200
zurückgegeben.
Die Steuereinrichtung 7 gibt Startsignale 40-41
auf ein Startsignal 32 vom Prozessor 2 hin aus, um jeweils
die Hauptspeicherstartschaltung 8 und die Erweiterungs
speicherstartschaltung 9 zu aktivieren. Die Hauptspeicher
startschaltung 8 addiert eine Adresse innerhalb eines Blocks
zu der Hauptspeicherblockadresse 35, um eine Hauptspeicher
adresse 42 zu erzeugen und dadurch den Hauptspeicher 4 über
die Hauptspeichersteuereinrichtung 3 zu initiieren. Darauf
hin führt der Hauptspeicher 4 eine Datenlese- oder Schreib
operation aus und sendet die Endenachricht 43 über die Haupt
speichersteuereinrichtung 3 zur Hauptspeicherstartschal
tung 8, die die Endenachricht 43, die sie für jede Initi
ierung des Hauptspeichers 4 empfangen hat, zählt, damit
sie eine Endenachricht 44 der Steuereinrichtung 7 zusenden
kann, sobald ein Block Daten ausgelesen oder eingeschrieben
ist. Gleichermaßen addiert die Erweiterungsspeicherstart
schaltung 9 eine Adresse innerhalb eines Blockes (In-Block-Adresse) zur Er
weiterungsspeicherblockadresse 36, um eine Erweiterungs
speicheradresse 45 zu erzeugen und dadurch den Erweiterungs
speicher 6 zu initiieren. Daraufhin sendet der Erweiterungs
speicher 6 auch eine Endenachricht 46 an die Erweiterungs
speicherstartschaltung 9, die die auf jede Initiierung des
Erweiterungsspeichers 6 hin empfangene Endenachricht 46
zählt, um der Steuereinrichtung 7, sobald ein Block Daten
ausgelesen oder eingeschrieben wurde, eine Endenachricht 47
zu übertragen.
Fig. 3 zeigt den Schaltungsaufbau der Steuereinrichtung
7, die einen Mikrocomputer enthält. Dieser weist eine CPU
71, einen Steuerspeicher (CS) 72 und eine Ein/Ausgabeschaltung (I/O-Schaltung) 73
auf, die verschiedene Steuersignale in der Erweiterungs
speichersteuereinrichtung 5 zusätzlich zu den Steuersigna
len auf den Eingabe/Ausgabeleitungen der Steuereinrichtung 7
gemäß Fig. 2 sendet oder empfängt. Die CPU 71 empfängt das
Startsignal 32 vom Prozessor 2, liest Statusinformation von
der Erweiterungsspeichersteuereinrichtung 5 über die I/O-
Schaltung 73 und führt die Steuerung nach Maßgabe des
im CS 72 gespeicherten Programms aus.
Fig. 4 zeigt den Schaltungsaufbau der Hauptspeicher
startschaltung 8. Eine Steuerschaltung 81 steuert die Haupt
speicherstartschaltung 8 auf ein von der Steuereinrichtung
7 empfangenes Startsignal 40 hin. Gesteuert von der Steuer
schaltung 81 wählt ein Wähler 82 entweder die Befehls
adresse 39 vom Register 11, die Hauptspeicherblockadresse
35 oder das Ausgangssignal vom Addierer 83 und setzt das
Ausgangssignal in ein Register 84. Falls auf die Ausgabe
eines Asynchronbefehls hin eine Adresse 39 empfangen wird,
wird letztere dem Hauptspeicher 4 eingegeben. Danach sendet
ein Zähler 85 auf eine Ausleseendenachricht vom Hauptspei
cher 4 hin eine Endenachricht an die Steuereinrichtung 7.
Im Falle des Empfangs einer Hauptspeicherblockadresse 35
für einen Datentransfer zwischen den Speichern wird die
Adresse 35 zuerst zum Hauptspeicher 4 gesendet. Danach
wird der Inhalt des Registers 84 dem Addierer 83 zugeführt,
um durch eine Addition, die von der für jede Operation
ausgelesenen Datenmenge abhängt, eine Adresse innerhalb
eines Blocks zu erzeugen. Die In-Block-Adresse wird dann
über den Wähler 82 in das Register 84 gesetzt, um darauf
hin zum Hauptspeicher 4 gesendet zu werden. Die Ende
nachricht 43 vom Hauptspeicher 4 wird von dem Zähler 85 ge
zählt, der eine Endenachricht 44 sendet, sobald er einen
Block Daten gezählt hat.
Fig. 5 zeigt den Aufbau der Erweiterungsspeicherstart
schaltung 9. Eine Steuerschaltung 91 wird von einem
von der Steuereinrichtung 7 ausgegebenen Startsignal 41
gestartet, um die Erweiterungsspeicherstartschaltung 9 zu
starten. Ein Wähler 92 sendet zuerst eine Erweiterungs
speicherblockadresse 36 und dann ein Ausgangssignal von
einem Addierer 93 an ein Register 94. Die in das Register
94 geladene Adresse wird als Erweiterungsspeicheradresse
45 dem Erweiterungsspeicher 6 zugeführt, wodurch letzterer
initiiert wird. Die Adresse im Register 94 wird dem Addie
rer 93 zugeführt, der mittels eines Addiervorgangs eine
neue Adresse erzeugt, die nachfolgend dem Erweiterungsspeicher
6 zugesendet wird. Der Erweiterungsspeicher 6 gibt eine
Endenachricht an einen Zähler 95 immer, wenn eine Daten
lese- oder -schreiboperation aufgrund der Adresse 45 be
endet ist. Wenn ein Block Daten übertragen ist, erkennt dies
der Zähler 95 aufgrund einer vorgegebenen Anzahl von Ende
nachrichten und sendet daraufhin eine Endenachricht 47 an
die Steuereinrichtung 7.
Fig. 6 zeigt den Aufbau eines Datenpufferbereichs,
der für einen Datentransfer zwischen Hauptspeicher 4 und
Erweiterungsspeicher 6 vorgesehen ist. Der Datenpuffer
bereich ist in der Erweiterungsspeichersteuereinrichtung
5 vorgesehen. Falls Daten vom Hauptspeicher 4 zum Erweite
rungsspeicher 6 übertragen werden, so werden diese als
Daten 51 vom Hauptspeicher 4 über die Hauptspeichersteuer
einrichtung 3 geführt und von einem Wähler 41 gewählt und
im Datenpufferspeicher 62 zwischengespeichert. Dann werden die Da
ten als Speicherdaten 52 über ein UND-Glied 63 zum Erweite
rungsspeicher 6 übertragen. Das UND-Glied 63 wird durch
ein im System erzeugtes Steuersignal C 1 getriggert, wenn
die Daten zum Erweiterungsspeicher 6 übertragen werden. Falls
Daten vom Erweiterungsspeicher 6 zum Hauptspeicher 4 über
tragen werden, wählt der Wähler 61 vom Erweiterungsspeicher
6 ausgelesene Daten, die im Datenpufferspeicher 62 zwischengespei
chert werden. Diese Daten werden dann dem Hauptspeicher 3
über ein UND-Glied 64 zugeführt, das von einem Steuersignal
C 2 getriggert wird, das erzeugt wird, wenn Daten zum Haupt
speicher 4 übertragen werden. Vom UND-Glied 64 werden die
Daten zum Hauptspeicher 4 gesendet. Bei dieser Ausführungs
art beträgt die Kapazität des Datenpufferspeichers 2 K-Byte.
Nun wird die Arbeitsweise der Erweiterungsspeicher
steuereinrichtung 5 beschrieben, und zwar für einen synchro
nen Befehl, einen asynchronen Befehl und eine Initiierung
durch einen synchronen Befehl während Daten durch einen asyn
chronen Befehl übertragen werden.
Vor einer Initiierung wird Datentransfersteuerinforma
tion 31 (die eine erste Hauptspeicherblockadresse, eine
erste Erweiterungsspeicherblockadresse, eine Transferblock
zahl und eine Betriebsart enthält) in den Steuerregistern
der ersten Halteeinrichtung 200 gespeichert. Im einzelnen werden
die Informationsposten in das Hauptspeicherblockadreßregister
16, das Erweiterungsspeicherblockadreßregister 17, das
Transferblockzahlregister 18 und das Betriebsartregister 19
eingespeichert. Da bei der Beschreibung des Ausführungsbei
spiels angenommen ist, daß die Übertragung in Datenblöcken
geschieht, werden die Adresse und die Übertragungsmenge
jeweils durch eine Blockadresse und eine Blockzahl gekenn
zeichnet.
Nachdem auf diese Weise die Datenübertragungssteuer
information 31 abgespeichert wurde, liefert der Prozessor 2
ein Startsignal 32, um der Steuereinrichtung 7 den Start
eines synchronen Befehls mitzuteilen. Auf den Empfang des
Startsignals 32 hin steuert die Steuereinrichtung 7 die
Wähler 23-26 so, daß diese die Steuerregister der Register
gruppe 200 wählen. Dann bewirkt die Steuereinrichtung 7 ab
hängig von der Betriebsart 38 den Start einer Auslese-
oder Schreiboperation für einen Datenblock durch die Haupt
speicherstartschaltung 8 und die Erweiterungsspeicherstart
schaltung 9. Falls die Betriebsart 38 einen Datentransfer
vom Hauptspeicher 4 zum Erweiterungsspeicher 6 angibt, wer
den von der Hauptspeicherstartschaltung 8 und der Erweite
rungsspeicherstartschaltung 9 jeweils eine Leseoperation und
eine Schreiboperation gestartet. Wenn stattdessen die Be
triebsart 38 einen Datentransfer vom Erweiterungsspeicher 6
zum Hauptspeicher 4 angibt, werden durch die Erweiterungs
speicherstartschaltung 9 und die Hauptspeicherstartschaltung
8 jeweils eine Lese- und eine Schreiboperation initiiert.
Dann bereitet die Steuereinrichtung 7 die Datenübertragung
für den nächsten Block vor. In den Registern 16-18 werden
nämlich jeweils die Hauptspeicherblockadresse, die Er
weiterungsspeicherblockadresse und die Resttransferblock
zahl erneuert. Zuerst wählt der Wähler 27 die Hauptspei
cherblockadresse 35, zu der im Addierer/Subtrahierer
eine 1 addiert wird. Dann wählt der Wähler 22 den Ausgang
vom Addierer/Subtrahierer 28, um das Ergebnis der Addi
tion in das Hauptspeicherblockadreßregister 16 zu speichern.
Mit der gleichen Prozedur wird zur Erweiterungsspeicher
blockadresse eine 1 addiert und das Ergebnis im Erweite
rungsspeicherblockadreßregister 17 gespeichert. Die Rest
transferblockzahl 37 wird um 1 dekrementiert, und das
Ergebnis in das Transferblockzahlregister 18 gesetzt.
Die Hauptspeicherstartschaltung 8 addiert auf den
Start der Übertragung eines Datenblocks hin eine vorgege
bene Adresse zur Hauptspeicherblockadresse 35, um eine
Hauptspeicheradresse 42 zu erzeugen, die zur Initiierung
des Hauptspeichers 4 über die Hauptspeichersteuereinrich
tung 3 dient. Falls Daten vom Hauptspeicher 4 zum Erwei
terungsspeicher 6 übertragen werden, speichert der Daten
pufferspeicher 62 diese aus dem Hauptspeicher 4 ausgelesenen Daten.
Falls eine Datenübertragung vom Erweiterungsspeicher 6 zum
Hauptspeicher 4 stattfindet, werden die aus dem Erweite
rungsspeicher 6 ausgelesenen und im Datenpufferspeicher 62 zwi
schengespeicherten Daten in den Hauptspeicher 4 einge
schrieben.
Sobald der Datenlese- oder -schreibvorgang im Haupt
speicher 4 beendet ist, erhält die Hauptspeicherstart
schaltung 8 eine Endenachricht, die daraufhin durch Addi
tion einer vorgegebenen Adresse intern die nächste In-Block-Adresse
erzeugt und die neue Adresse unter Start des
Hauptspeichers 4 diesem über die Hauptspeicherstart
schaltung 8 zusendet. Dann wird die Anzahl der Endenach
richten gezählt. Auf den Start der Übertragung eines Daten
blocks addiert die Erweiterungsspeicherstartschaltung 9
eine vorgegebene In-Block-Adresse zu der Erweiterungs
speicherblockadresse 36, um eine Erweiterungsspeicheradres
se 45 zu erzeugen, die zum Start des Erweiterungsspeichers
6 dient.
Wenn Daten vom Erweiterungsspeicher 6 zum Hauptspeicher
4 zu übertragen sind, werden die vom Erweiterungsspeicher
6 ausgelesenen Daten zunächst im Datenpufferspeicher 62 zwischen
gespeichert; dagegen werden die im Datenpufferspeicher 62 gespei
cherten Daten in den Erweiterungsspeicher 6 eingeschrie
ben, falls Daten vom Hauptspeicher 4 zum Erweiterungs
speicher 6 zu übertragen sind. Wenn der Datenlese- oder
-schreibvorgang im Erweiterungsspeicher 6 beendet ist,
registriert die Erweiterungsspeicherstartschaltung 9 eine
Endenachricht 46 und sendet daraufhin die nächste intern
erzeugte Adresse im Block an den Erweiterungsspeicher 6,
wodurch dieser initiiert wird. Danach wird die Endenach
richt gezählt.
Nun wird unter Bezug auf die in den Fig. 7 und 8
dargestellten Zeitdiagramme ein Datentransfer zwischen dem
Hauptspeicher 4 und dem Erweiterungsspeicher 6 aufgrund
eines synchronen Befehls erläutert.
Die Fig. 7 zeigt ein Zeitdiagramm einer vom Haupt
speicher 4 zum Erweiterungsspeicher 6 ablaufenden Daten
übertragung aufgrund eines synchronen Befehls. Sobald die
Steuereinrichtung 7 einen Startbefehl 32 vom Prozessor 2 empfangen
hat, decodiert sie den Befehl, bereitet die Wähler 23-26
vor und befiehlt der Hauptspeicherstartschaltung 8 eine
Leseoperation zu starten, worauf letztere den Hauptspeicher
4 aktiviert. Bei dieser Ausführungsart werden Daten aus
dem Hauptspeicher 4 in 32 Byte-Einheiten auf jede Initiie
rung hin gelesen und in dem Datenpufferspeicher 62 zwischengespei
chert. Die Steuereinrichtung 7 befiehlt der Erweiterungs
speicherstartschaltung 9 eine Schreiboperation; der Start
des Erweiterungsspeichers 6 durch die Erweiterungsspeicher
startschaltung 9 wird jedoch immer dann durchgeführt, wenn
1 K-Byte-Daten aus dem Hauptspeicher 4 im Datenpufferspeicher 62
nachdem der Start von der Steuereinrichtung 7 ausgegeben
wurde, gespeichert sind. Als Ergebnis werden 1 K Byte-Dateneinheiten
in den Erweiterungsspeicher 6 gespeichert. Beim vorliegenden
Ausführungsbeispiel werden 4K Byte aus dem Hauptspeicher 4
ausgelesen, nämlich durch 32 (Byte)× 128 Leseoperationen,
und die 4K Byte-Daten in den Erweiterungsspeicher durch
vier Schreiboperationen, jede für 1K Byte, eingespeichert.
Sobald die Erweiterungsspeicherstartschaltung 9 vom Erwei
terungsspeicher 6 eine das Ende der vier Schreiboperationen
mitteilende Endenachricht empfängt, sendet sie eine Ende
nachricht für einen Datenblock an die Steuereinrichtung 7,
die dann die Transferblockzahl 37 für die restlichen
Daten prüft, wobei diese Transferblockzahl 37 zusammen mit der anderen Übertragungssteuer
information nach dem Start der Übertragung des übertragenen Datenblocks er
neuert wurde. Falls noch weitere Daten zu übertragen sind,
werden die die Datenübertragungssteuerinformation bildende
Hauptspeicheradresse und Erweiterungsspeicheradresse er
neuert. Sobald erkannt ist, daß die Datenübertragung be
endet ist, erhält der Prozessor 2 ein Endenachrichtensignal
33, um die Operation zu beenden. Um die Beschreibung zu
vereinfachen, ist in Fig. 7 die Endenachricht vom Haupt
speicher 4 nach dessen Start weggelassen.
Fig. 8 zeigt ein Zeitdiagramm, das schematisch einen
Datentransfer vom Erweiterungsspeicher 6 zum Hauptspeicher
4 durch einen synchronen Befehl veranschaulicht. Auf den
Empfang eines Startsignals 32 vom Prozessor 2 decodiert
die Steuereinrichtung 7 einen Befehl, bewirkt eine Start
vorbereitung und befiehlt der Erweiterungsspeicherstart
schaltung 9 die Durchführung einer Leseoperation, die ihrer
seits den Erweiterungsspeicher 6 aktiviert. Vom Erweite
rungsspeicher 6 werden 1K Byte-Daten gelesen und im Daten
puffer 62 zwischengespeichert. Mit einem von der Steuer
einrichtung 7 der Hauptspeicherstartschaltung 8 angewiese
nen Schreibbefehl sendet diese, sobald die Daten von dem
Erweiterungsspeicher 6 in den Datenpufferspeicher 62 geladen wurden,
ein Startsignal an den Hauptspeicher 4, der die Daten vom
Datenpufferspeicher 62 in 32 Byte-Einheiten einspeichert. Jedesmal,
wenn 1K Byte-Daten in den Hauptspeicher 4 eingeschrieben
wurden, werden die Daten vom Erweiterungsspeicher 6 in den
Datenpuffer 62 eingeschrieben. Es sind nämlich 1K Byte/Block
× 4 Schreiboperationen zum Laden der Daten vom Erweiterungs
speicher 6 in den Datenpufferspeicher 62 nötig. Aus dem Datenpuf
ferspeicher 62 werden dann die Daten in den Hauptspeicher 4 durch
32 Byte× 128 Schreiboperationen eingeschrieben. Auf den
Empfang von 128 Endenachrichten, die zur Datenschreibopera
tion in den Hauptspeicher 4 gehören, teilt die Hauptspei
cherstartschaltung 8 der Steuereinrichtung 7 mit, daß
ein Datenblock vollständig übertragen wurde. Wenn sich aus
der erneuerten Transferblockzahl 37 ergibt, daß weitere
Datentransfers nötig sind, liefert die Steuereinrichtung 7
die Startsignale jeweils an die Hauptspeicherstartschal
tung 8 und an die Erweiterungsspeicherstartschaltung 9, da
mit die Datenübertragung fortgesetzt werden kann. Wenn die
Datenübertragung beendet ist, sendet die Steuereinrichtung 7
ein Endenachrichtensignal 37 an den Prozessor 2 zur Be
endigung der Operation. In Fig. 8 ist die Endenachricht vom
Erweiterungsspeicher 6 zur Vereinfachung weggelassen.
Die obige Beschreibung zeigt, daß die Hauptspeicher
startschaltung 8 und die Erweiterungsspeicherstartschaltung
9 jeweils die aus dem Hauptspeicher 4 ausgelesenen Daten
in den Erweiterungsspeicher 6 einschreiben oder die aus
dem Erweiterungsspeicher 6 ausgelesenen Daten in den
Hauptspeicher 4 einschreiben. Auf den Empfang der Ende
nachricht von der Hauptspeicherstartschaltung 8 bzw. der
Erweiterungsspeicherstartschaltung 9 prüft die Steuerung
7 die Resttransferblockzahl 37. Falls diese Blockzahl 37 Null
ist, gibt die Steuereinrichtung 7 ein Endenachrichtensignal
33 an den Prozessor 2, um diesem das Ende des Datenübertra
gungsvorgangs mitzuteilen, worauf dieser die Operation be
endet. Falls die Resttransferblockzahl 37 ungleich Null ist,
wird der 1-Blockdatentransfer für die Hauptspeicherstart
schaltung 8 und die Erweiterungsspeicherstartschaltung 9
begonnen, der so lange wiederholt wird, bis die Resttrans
ferblockzahl Null wird.
Für einen asynchronen Befehl wird die Operation durch
die Ausführung eines gewöhnlichen I/O-Befehls bewirkt. Das
heißt, daß der Prozessor 2 nachdem die Hauptspeicheradresse
unter der Datenübertragungssteuerinformation gespeichert ist,
in das Befehlsadreßregister 11 gespeichert wurde, ein Start
signal 32 an die Steuereinrichtung 7 zum Start der Initiie
rung für einen Asynchronbefehl ausgibt. Die Steuereinrich
tung 7 aktiviert die Hauptspeicherstartschaltung 8, um Da
tenübertragungssteuerinformationen 34 aus dem Hauptspeicher
4 mittels der Befehlsadresse 39 als Hauptspeicheradresse 42
auszulesen. Die Elemente der erhaltenen Information 34
werden in die Register 12-15 der Registergruppe 100, nämlich
das Hauptspeicherblockadreßregister 12, das Erweiterungs
speicherblockadreßregister 13, das Transferblockzahlregister
14 und das Betriebsartregister 15 eingespeichert. Danach
wird unter Verwendung der Register der zweiten Halteeinrichtung 100
der Datentransfer zwischen dem Hauptspeicher 4 und dem Er
weiterungsspeicher 6 mittels der gleichen Operation, wie
sie für die Synchronbefehle durchgeführt wird, aufgenommen.
Fig. 9 zeigt ein Zeitdiagramm für einen Datentransfer
vom Hauptspeicher 4 zum Erweiterungsspeicher 6, der aufgrund
eines Asynchronbefehls durchgeführt wird, während Fig. 10
ein Zeitdiagramm für einen vom Erweiterungsspeicher 6 zum
Hauptspeicher 4 aufgrund eines Asynchronbefehls durchgeführ
ten Datentransfer veranschaulicht. In den beiden in Fig. 9
und 10 dargestellten Fällen sendet die Steuereinrichtung 7
auf einen vom Prozessor 2 an die Steuereinrichtung 7 ausge
sendeten asynchronen Befehl für den Beginn einer Leseopera
tion an die Hauptspeicherstartschaltung 8. Letztere sendet
die Befehlsadresse 38 als Hauptspeicheradresse 42 an den
Hauptspeicher 4, decodiert einen aus dem Hauptspeicher 4
ausgelesenen Befehl und setzt vorgegebene Daten, die auf
dem Inhalt des Befehls beruhen, in die Steuerregister der zweiten
Halteeinrichtung 100. Nach diesem Vorgang stimmen die Zeit
diagramme in den Fig. 9 und 10 überein.
Für den durch einen asynchronen Befehl bewirkten
Datentransfer werden nur die Steuerregister der zweiten Halteeinrichtung
100 verwendet und die Steuerregister der ersten Halteeinrichtung
200 arbeiten nicht. Infolgedessen kann der Prozessor
2 auch während eines durch einen asynchronen Befehl bewirk
ten Datentransfers Datenübertragungssteuerinformation 31
in die Steuerregister der ersten Halteeinrichtung 200 einspeichern,
um nachfolgend eine Initiierung vom synchronen Typ zu ver
anlassen. Auf den Empfang eines Startsignals nimmt die Steu
ereinrichtung 7 einen Wartezustand an und wartet auf eine
Endenachricht von der Hauptspeicherstartschaltung 8 und
der Erweiterungsspeicherstartschaltung 9, die das Ende der
Übertragung eines Blocks Daten angibt. Sobald die Endenach
richt empfangen wurde, unterbricht die Steuerung 7 den zum
asynchronen Befehl gehörenden Datentransfer und steuert die
Wähler 23-26 so an, daß diese die Steuerregister der ersten Halteeinrichtung
200 wählen. Dadurch wird ein Datentransfer
aufgrund der in den Steuerregistern 200 gespeicherten In
formation initiiert. Sobald eine gekennzeichnete Anzahl von
Blöcken vollständig übertragen wurde gibt die Steuerein
richtung 7 die Endenachricht an den Prozessor 2 und steuert
die Wähler 23-26 so an, daß diese die Steuerregister der zweiten
Halteeinrichtung 100 wählen, wodurch der Datentransfer auf
grund des asynchronen Befehls erneut aufgenommen wird. Da
die Steuerregister der zweiten Halteeinrichtung 100 zum Zeitpunkt der
Unterbrechung gerettete Steuerinformation enthalten, ist
nur die Funktion der Wähler zur Wiederaufnahme der unter
brochenen Prozedur nötig.
Fig. 11 zeigt ein Zeitdiagramm für einen Fall, wo
eine Anforderung für eine Datenübertragung vom Hauptspeicher
4 zum Erweiterungsspeicher 6 aufgrund eines synchronen Be
fehls ausgegeben wird, während gerade ein Datentransfer auf
grund eines asynchronen Befehls vom Hauptspeicher 4 zum
Erweiterungsspeicher 6 durchgeführt wird. Nachdem die Steu
erung 7 durch den Prozessor 2 zur Durchführung einer Initi
ierung des synchronen Typs angefordert wurde, setzt die
Steuerung 7, falls eine Endenachricht über einen Transfer
des betreffenden Blocks von der Erweiterungsspeicherstart
schaltung 9 empfangen wurde, die Wähler 23-26 so, daß diese
eine Datenübertragung vom synchronen Befehlstyp bewirken
und bereitet damit die Hauptspeicherstartschaltung 8 für
einen Datentransfer vom Hauptspeicher 4 zum Erweiterungs
speicher 1 vor. Wenn der Datentransfer aufgrund des synchro
nen Befehls vollständig ausgeführt ist und von der Erweite
rungsspeicherstartschaltung 9 eine Endenachricht empfangen
wurde, stellt die Steuereinrichtung 7 die Wähler 23-26
so ein, daß diese einen Datentransfer des Asynchronbefehls
typs bewirken, und daß der unterbrochene Datentransfer des
asynchronen Befehlstyps wiederaufgenommen wird. Auch im
Falle, wenn beispielsweise durch einen synchronen Befehl
eine Datenübertragung vom Erweiterungsspeicher 6 zum Haupt
speicher 4 angefordert wird, während gerade ein Datentrans
fer aufgrund eines asynchronen Befehls vom Hauptspeicher 4
zum Erweiterungsspeicher 6 stattfindet, wird der aufgrund
des asynchronen Befehls durchgeführte Datentransfer unter
brochen, dann der zum synchronen Befehl gehörende Daten
transfer ausgeführt und dann die unterbrochene Datenüber
tragung aufgrund des asynchronen Befehls erneut aufgenommen.
Bei dieser Ausführungsart kann Datenübertragungs
steuerinformation eines synchronen Befehls in einem entspre
chenden Steuerregister während des aufgrund eines asynchro
nen Befehls bewirkten Datentransfers gespeichert werden;
außerdem kann der Übergang vom asynchronen Befehl zum
synchronen Befehl und die Wiederaufnahme des Datenüber
tragungsvorgangs aufgrund des asynchronen Befehls nur
durch Registeroperationen durchgeführt werden. Die Verar
beitungszeit sowohl für den Start der Datenübertragung auf
grund des synchronen Befehls als auch für den Start der
Datenübertragung aufgrund des asynchronen Befehls ist ver
ringert. Außerdem vereinfacht sich die Steuerung der Opera
tion.
Bei der Beschreibung des Ausführungsbeispiels ist
zur Vereinfachung angenommen, daß die Aktivierung der
Hauptspeicherstartschaltung 8 und der Erweiterungsspeicher
startschaltung 9 zur Übertragung des nächsten Datenblocks
nach dem Ende der Übertragung des vorangehenden Daten
blocks erfolgt. Wie jedoch die Fig. 7 bis 10 deutlich
zeigen, verbleibt eine Zeitdauer, in der keine Datenüber
tragung zwischen der Übertragung der Datenblöcke stattfindet.
Dies ist für eine hohe Datenübertragungsgeschwindigkeit
nachteilig. Um deshalb eine kontinuierliche Übertragung
von Datenblöcken auszuführen, kann die Datenübertragung
aufgrund einer zur Aktivierung der Hauptspeicherstartschal
tung 8 und der Erweiterungsspeicherstartschaltung 9 die
nenden Vorsteuerung für den Datentransfer des nächsten
Blocks durchgeführt werden, ohne auf das Ende der Daten
übertragung des laufenden Blocks zu warten.
Nach dem oben beschriebenen Ausführungsbeispiel
sind die zweite und die erste Halteeinrichtung 100 und 200 jeweils zur
Speicherung von Übertragungssteuerinformation des asynchro
nen Befehls und des synchronen Befehls vorgesehen. Die Er
findung ist jedoch nicht auf die Schaltungsart von Halteeinrichtungen beschränkt.
Beispielsweise kann das System mit Registern aufgebaut wer
den, um Steuerinformation zu retten, wenn die Datenübertra
gung des asynchronen Befehls unterbrochen wird, um die ge
rettete Steuerinformation wieder in das Steuerregister ein
zuspeichern, wenn die unterbrochene Verarbeitung wieder
aufgenommen wird.
Fig. 12 zeigt ein Beispiel einer Schaltung, die Re
gister zum Retten von Steuerinformation enthält. Die in der
Schaltung in Fig. 12 enthaltenen Speichermittel (Steuerregister) 12-15 werden
gemeinsam zum Speichern von Information eines Asynchron
befehls und eines Synchronbefehls verwendet. Wenn während
eines Datentransfers aufgrund eines asynchronen Befehls
eine Datenübertragungsanforderung durch einen synchronen Be
fehl ausgegeben wird, wird die in den Steuerregistern 12-15
gespeicherte Datenübertragungssteuerinformation des asyn
chronen Befehls in Sicherstellungsmittel (Register) 301-304 gerettet, worauf über
Wähler 305-308 Datenübertragungssteuerinformation des
synchronen Befehls in die Steuerregister Speichermittel 12-15 geladen wird.
Wenn der vom synchronen Befehl befohlene Datentransfer be
endet ist, werden die Inhalte der Register der Sicherstellungsmittel 301-304 über
die Wähler 305-308 wieder in die Steuerregister der Speichermittel 12-15 ge
setzt, und damit die unterbrochene Datenübertragung des
asynchronen Befehls wieder aufgenommen. Die Wähler 305-308
erhalten über einen Wähler 309 Ausgangssignale vom Pro
zessor 2 von der Hauptspeichersteuereinrichtung 3 und dem
Addierer/Subtrahierer 28. Die Ausgänge der Speichermittel 12-15
sind direkt mit der Hauptspeicherstartschaltung 8 verbunden
und gehen nicht über die Wähler 23-26. Anstelle der Register der Sicherstellungsmittel
301-304, die die Übertragungssteuerinformation retten, kön
nen auch jeweilige Speicherbereiche im Hauptspeicher 4 oder
im Erweiterungsspeicher 6 vorgesehen werden.
Claims (4)
1. Vorrichtung zur Steuerung von Datenübertragungen zwischen
einem Hauptspeicher (4), einem Erweiterungsspeicher
(1) und einem Prozessor (2) eines Datenverarbeitungssystems,
wobei die Daten zwischen Hauptspeicher (4)
und Erweiterungsspeicher (1) mittels synchroner und
asynchroner Befehle übertragen werden,
gekennzeichnet durch
eine erste Halteeinrichtung (200), die vom Prozessor (2) auf einen synchronen Befehl hin gelieferte Datenübertragungssteuerinformation hält, welche eine Hauptspeicheradresse, eine Erweiterungsspeicheradresse und die Menge der zu übertragenden Daten umfaßt,
eine zweite Halteeinrichtung (100), die vom Prozessor auf einen asynchronen Befehl hin gelieferte Datenübertragungsinformation hält, die ebenfalls eine Hauptspeicheradresse, eine Erweiterungsspeicheradresse und die Menge der zu übertragenden Daten umfaßt,
Wählglieder (23-26), die Information entweder aus der ersten (200) oder der zweiten Halteeinrichtung (100) wählen, und
eine Steuereinrichtung (7), die
eine erste Halteeinrichtung (200), die vom Prozessor (2) auf einen synchronen Befehl hin gelieferte Datenübertragungssteuerinformation hält, welche eine Hauptspeicheradresse, eine Erweiterungsspeicheradresse und die Menge der zu übertragenden Daten umfaßt,
eine zweite Halteeinrichtung (100), die vom Prozessor auf einen asynchronen Befehl hin gelieferte Datenübertragungsinformation hält, die ebenfalls eine Hauptspeicheradresse, eine Erweiterungsspeicheradresse und die Menge der zu übertragenden Daten umfaßt,
Wählglieder (23-26), die Information entweder aus der ersten (200) oder der zweiten Halteeinrichtung (100) wählen, und
eine Steuereinrichtung (7), die
- - die jeweilige einem Befehl zugehörige erste (200) oder zweite (100) Halteeinrichtung mittels den Wählgliedern (23-26) abhängig davon wählt, ob der Befehl ein synchroner Befehl, welcher zum Speichern bei Ein/Ausgabeoperationen dient oder ein asynchroner Befehl ist, welcher die direkte Übertragung von Daten zwischen dem Erweiterungsspeicher (1) und dem Hauptspeicher (4) unabhängig von einer durch einen synchronen Befehl befohlenen Ein/Ausgabeoperation befiehlt,
- - eine Datenübertragung zwischen Hauptspeicher (4) und Erweiterungsspeicher (1) aufgrund der in der gewählten Halteeinrichtung (100 bzw. 200) gehaltenen Information steuert,
- - den Inhalt dieser Halteeinrichtung (200, 100) gemäß der zu übertragenden Datenmenge fortschreibt,
- - die Datenübertragung des asynchronen Befehls unterbricht, wenn durch einen synchronen Befehl eine Anforderung zur Datenübertragung ergeht, während die durch den asynchronen Befehl bewirkte Datenübertragung durchgeführt wird, dabei die laufende Datenübertragungssteuerinformation der unterbrochenen Datenübertragung in der zweiten Halteeinrichtung (100) hält und mittels den Wählgliedern (23-26) den Inhalt der die Datenübertragungssteuerinformation des synchronen Befehls haltenden ersten Halteeinrichtung (200) zur Durchführung der durch den synchronen Befehl angeforderten Datenübertragung auswählt, und
- - auf die vollständige Ausführung der Datenübertragung des synchronen Befehls hin, den Inhalt der die Datenübertragungssteuerinformation der unterbrochenen Datenübertragung des asynchronen Befehls haltenden zweiten Halteeinrichtung (100) mittels den Wählgliedern (23-26) wählt, um die unterbrochene Datenübertragung des asynchronen Befehls wieder aufzunehmen.
2. Vorrichtung nach Anspruch 1,
dadurch gekennzeichnet,
daß die Datenübertragung zwischen dem Hauptspeicher (4)
und dem Erweiterungsspeicher (1) in Einheiten von
Datenblöcken durchgeführt wird, und
sobald ein Datentransfer durch einen synchronen Befehl während eines gerade aufgrund eines asynchronen Befehls laufenden Datentransfers angefordert wird, die Wählglieder (23-26) von der Steuereinrichtung (7) so eingestellt werden, daß sie auf eine vollständige Übertragung eines Datenblocks den Inhalt der ersten Halteeinrichtung (200) wählen, um die Datenübertragung für den synchronen Befehl durchzuführen.
sobald ein Datentransfer durch einen synchronen Befehl während eines gerade aufgrund eines asynchronen Befehls laufenden Datentransfers angefordert wird, die Wählglieder (23-26) von der Steuereinrichtung (7) so eingestellt werden, daß sie auf eine vollständige Übertragung eines Datenblocks den Inhalt der ersten Halteeinrichtung (200) wählen, um die Datenübertragung für den synchronen Befehl durchzuführen.
3. Vorrichtung nach Anspruch 1,
gekennzeichnet durch
Speichermittel (12-15; 16-19), um Datenübertragungssteuerinformation
für einen asynchronen Befehl und
für einen synchronen Befehl zu halten und Sicherstellungsmittel
(301-304) für asynchrone Befehle, in die
bei einer Unterbrechung der Datenübertragung eines
asynchronen Befehls durch einen synchronen Befehl die in
den Speichermitteln (12-15) gehaltene Datenübertragungssteuerinformation
des asynchronen Befehls gerettet wird,
wobei die Datenübertragungssteuerinformation des synchronen
Befehls in den Speichermitteln (12-15) um eine Datenübertragung
durch den synchronen Befehl durchzuführen,
gehalten wird, und
auf die Beendigung des Datentransfers für den synchronen Befehl der Inhalt der Sicherstellungsmittel (301-304) wieder den Speichermitteln (12-15) eingegeben wird, wodurch die unterbrochene Datenübertragung für den asynchronen Befehl erneut aufgenommen wird.
auf die Beendigung des Datentransfers für den synchronen Befehl der Inhalt der Sicherstellungsmittel (301-304) wieder den Speichermitteln (12-15) eingegeben wird, wodurch die unterbrochene Datenübertragung für den asynchronen Befehl erneut aufgenommen wird.
4. Vorrichtung nach Anspruch 3,
dadurch gekennzeichnet,
daß die Sicherstellungsmittel (301-304) als Speicherbereich
des Hauptspeichers (4) oder als Speicherbereich der
Erweiterungsspeichereinheit (1) ausgebildet sind.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61208794A JPS6364144A (ja) | 1986-09-04 | 1986-09-04 | 記憶装置間デ−タ転送方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3726168A1 DE3726168A1 (de) | 1988-03-17 |
DE3726168C2 true DE3726168C2 (de) | 1991-02-14 |
Family
ID=16562225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19873726168 Granted DE3726168A1 (de) | 1986-09-04 | 1987-08-06 | Verfahren und vorrichtung zur steuerung der datenuebertragung zwischen speichern eines datenverarbeitungssystems |
Country Status (3)
Country | Link |
---|---|
US (1) | US4821172A (de) |
JP (1) | JPS6364144A (de) |
DE (1) | DE3726168A1 (de) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5055999A (en) * | 1987-12-22 | 1991-10-08 | Kendall Square Research Corporation | Multiprocessor digital data processing system |
JP2965987B2 (ja) * | 1988-02-22 | 1999-10-18 | 株式会社日立製作所 | データ処理システム |
JP3005626B2 (ja) * | 1988-09-21 | 2000-01-31 | 株式会社日立製作所 | データ処理システムおよびデータ転送方法 |
JPH02281348A (ja) * | 1989-04-24 | 1990-11-19 | Nec Corp | 記憶装置間のデータ移送方式 |
JPH036754A (ja) * | 1989-06-05 | 1991-01-14 | Fujitsu Ltd | データ転送制御方式 |
US5187779A (en) * | 1989-08-11 | 1993-02-16 | Micral, Inc. | Memory controller with synchronous processor bus and asynchronous i/o bus interfaces |
JPH03288934A (ja) * | 1990-04-05 | 1991-12-19 | Fujitsu Ltd | 仮想計算機システムにおけるデータ転送制御方式 |
US5269009A (en) * | 1990-09-04 | 1993-12-07 | International Business Machines Corporation | Processor system with improved memory transfer means |
JPH04305741A (ja) * | 1991-04-02 | 1992-10-28 | Nec Corp | データベース入出力制御方式 |
US5339395A (en) * | 1992-09-17 | 1994-08-16 | Delco Electronics Corporation | Interface circuit for interfacing a peripheral device with a microprocessor operating in either a synchronous or an asynchronous mode |
JP2683489B2 (ja) * | 1993-08-11 | 1997-11-26 | インターナショナル・ビジネス・マシーンズ・コーポレイション | データ転送制御装置 |
US6748502B2 (en) * | 2001-01-12 | 2004-06-08 | Hitachi, Ltd. | Virtual volume storage |
US7134139B2 (en) * | 2002-02-12 | 2006-11-07 | International Business Machines Corporation | System and method for authenticating block level cache access on network |
JP4393762B2 (ja) * | 2002-12-19 | 2010-01-06 | 株式会社日立製作所 | データベース処理方法及び装置並びにその処理プログラム |
JP4290975B2 (ja) * | 2002-12-19 | 2009-07-08 | 株式会社日立製作所 | データベース処理方法及び装置並びにその処理プログラム及びディザスタリカバリ方法及びシステム |
JP4301849B2 (ja) | 2003-03-31 | 2009-07-22 | 株式会社日立製作所 | 情報処理方法及びその実施システム並びにその処理プログラム並びにディザスタリカバリ方法およびシステム並びにその処理を実施する記憶装置およびその制御処理方法 |
JP4452533B2 (ja) | 2004-03-19 | 2010-04-21 | 株式会社日立製作所 | システムおよび記憶装置システム |
US10884712B1 (en) | 2005-12-30 | 2021-01-05 | The Mathworks, Inc. | Component-based framework for generating device driver model elements |
US9329840B1 (en) | 2005-12-30 | 2016-05-03 | The Mathworks, Inc. | Graphical programming of custom device drivers |
KR101541349B1 (ko) * | 2013-11-19 | 2015-08-05 | 주식회사 윈스 | 고성능 네트워크 장비의 패킷 전달 시스템 및 그 전달 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS589276A (ja) * | 1981-07-02 | 1983-01-19 | インタ−ナシヨナル・ビジネス・マシ−ンズ・コ−ポレ−シヨン | デ−タ処理システム |
DE3338329A1 (de) * | 1983-03-14 | 1984-09-20 | Hitachi, Ltd., Tokio/Tokyo | Computersystem |
DE2500721C2 (de) * | 1974-01-10 | 1985-06-05 | Digital Equipment Corp., Maynard, Mass. | Sekundärspeicher für digitale Datenverarbeitungssysteme |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4229790A (en) * | 1978-10-16 | 1980-10-21 | Denelcor, Inc. | Concurrent task and instruction processor and method |
US4325120A (en) * | 1978-12-21 | 1982-04-13 | Intel Corporation | Data processing system |
JPS57113162A (en) * | 1980-12-29 | 1982-07-14 | Fujitsu Ltd | High-speed external storage device |
-
1986
- 1986-09-04 JP JP61208794A patent/JPS6364144A/ja active Pending
-
1987
- 1987-08-06 DE DE19873726168 patent/DE3726168A1/de active Granted
- 1987-08-10 US US07/083,662 patent/US4821172A/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2500721C2 (de) * | 1974-01-10 | 1985-06-05 | Digital Equipment Corp., Maynard, Mass. | Sekundärspeicher für digitale Datenverarbeitungssysteme |
JPS589276A (ja) * | 1981-07-02 | 1983-01-19 | インタ−ナシヨナル・ビジネス・マシ−ンズ・コ−ポレ−シヨン | デ−タ処理システム |
DE3338329A1 (de) * | 1983-03-14 | 1984-09-20 | Hitachi, Ltd., Tokio/Tokyo | Computersystem |
Also Published As
Publication number | Publication date |
---|---|
JPS6364144A (ja) | 1988-03-22 |
US4821172A (en) | 1989-04-11 |
DE3726168A1 (de) | 1988-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3726168C2 (de) | ||
DE69535187T2 (de) | Speichersteuergerät und Bussteuerungsverfahren dafür | |
DE3146356C2 (de) | Vorrichtung zur Steuerung der Übertragung von Gerätesteuerinformation in einem Datenendgerät | |
EP0006164B1 (de) | Multiprozessorsystem mit gemeinsam benutzbaren Speichern | |
DE1524166B1 (de) | Schaltungsanordnung zur Herstellung von Verbindungen zwischen mehreren unabhaengigen Teilen und einem gemeinsamen Teil einer Datenverarbeitungsanlage | |
DE3502147C2 (de) | ||
DE4035837A1 (de) | Bus-hauptschnittstellenschaltung mit transparenter unterbrechung einer datenuebertragungsoperation | |
DE2036729A1 (de) | Digital Datenverarbeiter | |
DE60027357T2 (de) | Eine Unterbrechungssteuerung und ein Mikrorechner, der diese Unterbrechungssteuerung beinhaltet | |
DE3209046C2 (de) | Terminal-Verarbeitungssystem | |
DE2927481C2 (de) | Datenverarbeitungsvorrichtung | |
DE19739513B4 (de) | Reserve-Redunanzsystem | |
DE3936339C2 (de) | DMA-Controller | |
DE2720842C3 (de) | Datenübertragungssystem | |
DE1549486A1 (de) | Verfahren zur Datenuebertragung zwischen mindestens einer zentralen Recheneinheit und mehreren externen Speichern | |
DE3931505C2 (de) | Speichersteuerung in einer Datenverarbeitungsanlage | |
DE10062995A1 (de) | Unterbrecher-Steuereinrichtung | |
EP0409330A2 (de) | Schaltungsanordnung zum Steuern des Zugriffs auf einen Speicher | |
DE2845218C2 (de) | Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchführen von Ein-/Ausgabeoperationen | |
EP0677147B1 (de) | Controller in einem rechenwerk | |
DE3633898A1 (de) | Einrichtung zur folgesteuerung eines aeusseren kreises, beispielsweise eines pipelineprozessors | |
DE10027845A1 (de) | Controller für Warteschlangen-Datenports in mikroprozessorbasierten Motorsteuerungen | |
EP0108413B1 (de) | Verfahren zum Steuern eines Datentransfers zwischen einem Datensender und einem Datenempfänger über einen Bus mit Hilfe einer am Bus angeschlossenen Steuereinrichtung | |
EP0528060B1 (de) | Verfahren zur Durchführung von Ein-/Ausgabeoperationen in Datenverarbeitungssystemen | |
DE2606295B2 (de) | Anordnung zur Übertragung von Zeichen zwischen über einen Multiplexkanal ansteuerbaren peripheren Einheiten und einem Arbeitsspeicher eines Zentralprozessors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |