-
Anordnung zur Zwischenspeicherung von zwischen zwei
-
Funktionseinheiten in beiden Richtungen zu übertragenden Informationen
in einem Pufferspeicher Die Erfindung betrifft eine Anordnung zur Zwischenspeicherung
von zwischen zwei Funktionseinheiten in beiden Richtungen zu Ubertragenden Informationen
in einem Puffer speicher in Verbindung mit einer Ubertragungssteuerung, insbesondere
für Ein-/Ausgabewerke in Datenverarbeitungssystemen zur Ubertragung von Informationen
zwischen dem Arbeitsspeicher und angeschlossenen peripheren Einheiten.
-
Die Verwendung von Pufferspeichern zur Anpassung des unterschiedlichen
Realzeitverhaltens oder der unterschiedlich breiten Informationswege von Funktionseinheiten
aneinander für den Informationsaustausch, insbesondere für den beidseitig gerichteten
Informationsaustausch, ist allgemein geläufig - man siehe z.B. DE-PS 26 10 428 oder
DE-AS 28 45 218, MMD in FIG 2.
-
Bei den bekannten Lösungen kann über den Pufferspeicher jeweils nur
ein Auftrag abgewickelt werden. Außerdem werden im Pufferspeicher immer nur die
eigentlichen Daten, die bei der Abwicklung eines Auftrages auszutauschen sind, zwischengespeichert,
während die Steuerdaten für die Kennzeichnung und die Durchführung eines Auftrages
jedesmal gesondert von der Übertragungssteuerung bereitgestellt werden müssen.
-
Es ist daher Aufgabe der Erfindung, die Anordnung für die Zwischenspeicherung
der zu übertragenden Informationen so zu gestalten, daß die Zusammenarbeit zwischen
Über-
tragungssteuerung und Pufferspeicher und damit auch der Informationsdurchsatz
verbessert wird. Diese Aufgabe wird bei einer Anordnung der eingangs genannten Art
durch die im Kennzeichen des Patentanspruches 1 genannten Merkmale gelöst.
-
Danach werden im Gegensatz zu den bekannten Lösungen mehrere voneinander
unabhängige Speichereinheiten als einzelne Pufferspeicher vorgesehen, die jeweils
mit einem Auftrag belegt werden können. Da zugl#eich die Steuerparameter für die
jeweiligen Aufträge mit zwischengespeichert werden, können bei der Abwicklung eines
Informationsaustausches die einzelnen Steuervorgänge nach Durchschaltung des Übertragungsweges
autark und unabhängig-von der Übertragungssteuerung abgewickelt werden. Die Übertragungssteuerung
braucht also mit der Bereitstellung von Aufträgen nicht jeweils zu warten, bis der
vorhergehende Auftrag ausgeführt ist, sondern kann jeden Auftrag sofort absetzen,
solange noch eine Pufferspeichereinheit zur Verfügung steht0 Das ist besonders son
Vorteils wenn die überträguhgssteuerung Bestandteil einer Mikroprozessorsteuerung
ist, die zugleich übergeordnete Aufgaben wahrt nimmt und die dadurch entlastet wird
Auch können Auf gaben in beiden Richtungen unabhängig voneinander aus geführt und
damit die LeistungsfåhigEAit des Puffers er hat werden.
-
Es ist zwar allgemein bekannt, in einem gerichteten Über tragungskanal
zwei im Wechsel arbeitende Einzelpuffer vorzusehen, die überlappend geladen und
entladen werden, Dieses Prinzip ist aber für einen beidseitig gerichteten Informationsaustausch
nicht einfach übernehmbar, da die richtige Zuordnung für beide Richtungen sichergestellt
werden muß. Die Erfindung benutzt daher zur Bereitstele Sung und Ansteuerung der
Einzelpuffer eine Warteschlange-
steuerung. Das hat zunächst den
Vorteil, daß unabhängig von der Anzahl der Einzelpuffer eine einheitliche Steuerung
vorgesehen werden kann. Zum andern wird auf diese Weise sichergestellt, daß die
zeitliche Reihenfolge bei der Ausführung mehrer Aufträge nach dem FIF0-Prinzip eingehalten
wird, und zwar auch dann, wenn es sich um eine beliebige Folge von Schreib- und
Leseaufträgen handelt.
-
Weiterbildungen der Erfindung ergeben sich aus den Unteransprüchen.
-
Einzelheiten der Erfindung seien nachfolgend anhand eines in der Zeichnung
dargestellten Aus fiihrungsbe isp iele s näher erläutert. Im einzelnen zeigen: FIG
1 ein Ubersichtsschaltbild eines Datenverarbeitungssystems, FIG 2 ein Übersichtsschaltbild
in Anlehnung an das von FIG 1 mit Darstellung des Pufferspeichers samt Steuerung,
FIG 3 ein Prinzipschaltbild der Puffersteuerung nach FIG 2, FIG 4 das Blockschaltbild
einer Warteschlange nach FIG 3, FIG 5 ein Flußdiagramm zur Erläuterung der Zusammenarbeit
zwischen Puffersteuerung und der Ubertragungssteuerung des Datenverarbeitungssystems
nach FIG 1 und FIG 6 ein Flußdiagramm zur Erläuterung der Zusammenarbeit zwischen
Puffersteuerung und dem Arbeits-
speicher des Datenverarbeitungssystems
nach FIG 1.
-
FIG 1 zeigt in Anlehnung an das durch die DE-AS 28 45 218 bekannte
Datenverarbeitungssystem den zentralen Ambeitsspeicher PMS, über dessen Schnittstellensteuerung
PMS-ST eine zentrale Datenverarbeitungseinrichtung CPU und ein Ein-/Ausgabewerk
IOP angeschlossen ist.
-
Das Ein-/Ausgabewerk IOP besteht aus zwei voneinander unabhängigen
Mikroprozessoren, von denen einer als Auftragsverwaltungsprozessor AVP und der andere
als Datenübertragungsprozessor DVP arbeitet. Beide Prozessoren sind über eine interne
Schnittstellensteuerung MINT mit der Schnittstellensteuerung PMS-ST des Arbeitsspeichers
PMS verbunden, so daß beide Prozessoren unabhängig voneinander mit dem Arbeitsspeicher
PMS verkehren können.
-
Beide Prozessoren haben außerdem Zugriff zu einem gemeinsamen Lokalspeicher
LS, über den sie miteinander verkehren und gegenseitig Aufträge austauschen. Die
vom Ein-/Ausgabewerk IOP zu bedienenden, aber nicht dargestellten peripheren Geräte
sind über Kanäle CH1 bis CHn an den Datenübertragungsprozessor DVP angeschlossen.
-
Während der Auftragsverwaltungsprozessor AVP die Kommunikation mit
der zentralen Verarbeitungseinrichtung CPU steuert und im wesentlichen die mit der
Einleitung und mit dem Abschluß eines Ein-/Ausgabetransfers verbundenen Aufgaben
ausführt, steuert der Datenübertragungsprozessor DVP im Auftrag des anderen Prozessors
AVP den eigentlichen Datenaustausch zwischen dem Arbeitsspeicher PMS als der einen
angeschlossenen Funktionseinheit und den Kanälen CH1 bis CHn als der anderen Funktionseinheit.
-
Zur Unterstützung dieser Aufgaben ist im Datenübertragungsprozessor
DVP als der Übertragungssteuerung ein
Pufferspeicher PS vorgesehen,
der gemäß der Er#findung in besonderer Weise ausgebildet und in den Informationsaustausch
einbezogen ist.
-
FIG 2 zeigt nähere Einzelheiten dieses Pufferspeichers PS mit seiner
Steuerung PS-ST und die Kopplung mit dem die übergeordnete Üb ertragungs steuerung
bildenden Datenübertragungsprozessor DVP sowie mit den angeschlossenen Funktionseinheiten,
nämlich dem Arbeitsspeicher PSM über die Schnittstellensteuerung MINT und PMS-ST
und mit den Kanälen CH... über das Leitungssystem D-BUS.
-
Die Darstellung der Kopplung ist rein schematischer Art und beschränkt
sich auf die Darstellung der Datenwege von und zum Pufferspeicher PS und auf die
wesentlichen Steuersignale, die zwischen den einzelnen Einrichtungen auszutauschen
sind, um den Informationsaustausch gemäß.t.der Erfindung durchführen zu können.
Insbesondere wurde auf die Darstellung weiterer Einzelheiten, z.B. bezüglich der
Adressenauswahlsteuerung für den Pufferspeicher PS und bezüglich des Datenübertragungsprozessors
DVP verzichtet, da sie an sich bekannt und für das prinzipielle Verständnis der
Erfindung von untergeordneter Bedeutung sind. So sind der von der Schnittstellensteuerung
PMS-ST auf Anforderung ausgelöste Abruf von Daten aus dem Pufferspeicher PS und
die dafür benötigten Einrichtungen #llgemein bekannt und ebenso ist der Aufbau und
die Arbeitsweise des Datenübertragungsprozessors DVP bereits der DE-AS 28 45 218
entnehmbar, wobei in gleicher Weise das Prozessorleitungssystem D-BUS für den Austausch
der Informationen benutzt wird.
-
Der Pufferspeicher PS gliedert sich in mehrere selbständige und voneinander
unabhängige Speichereinheiten PO bis P3 als Einzelpuffer, die getrennt mit Aufträgen
zum
Informationsaustausch belegt werden können. Jede dieser Speichereinheiten weist
eine Speicherbreite von z.B. 8 Byte auf, die der Breite des Daienweges zum Arbeitsspeicher
PMS entspricht, während für das Leitungssystem D-BUS lediglich die halbe Breite,
also 4 Byte, vorgesehen ist. Der Datenweg vom Arbeitsspeicher PMS wird daher auf
jeweils zwei Eingabemultiplexer E-MUX aufgespalten, die jeweils 4 Byte breit sind,
während die jeweils 4 Byte breiten Ausgänge der Einzelpuffer PO bis P3 mittels Auswahlschalter
AS paarweise für die Übertragung zum Arbeitsspeicher PSM oder einzeln mittels des
Ausgabemultiplexers A-MUX auf das Leitungssystem D-BUS durchgeschaltet werden.
-
Die jeweils benötigten Steueradressen ACTBFN bzw.
-
LDBFN für die Einstellung der Multiplexer und Auswahlschalter liefert
die Puffersteuerung PS-ST. Die Einrichtungen für die Auswahl der einzelnen Speicherabschnitte
in den jeweils angesteuerten Einzelpuffern, z.B. PO, sind dagegen, wie bereits angedeutet,
nicht dargestellt. Für das Verständnis der Erfindung ist es lediglich von Bedeutung,
daß diese Auswahleinrichtungen getrennt voneinander und für jeden Einzelpuffer gesondert
sowohl von der Schnittstellensteuerung PMS-ST als auch vom Datenübertragungsprozessor
DVP in an sich bekannter Weise bedient werden können. Analoges gilt für das zeitgerechte
Wirksamschalten der dargestellten Auswahlschalter und Multiplexer für die Informationswege.
-
Von der für die Verwaltung und Auswahl der Einzelpuffer PO bis P3
des Pufferspeichers PS zuständigen Puffersteuerung PS-ST sind nur die wichtigsten
Baueinheiten schematisch angedeutet. Es sind dies die Warteschlangensteuerung WS-ST
und die drei Register
MCR, MODR und MONR.
-
Bevor auf die Funktionsweise der in FIG 2 dargestellten Anordnung
eingegangen werden kann, sei zunächst die Puffersteuerung mit der Warteschlangensteuerung
WS-ST und den genannten Registern anhand von FIG 3 und FIG 4 näher beschrieben.
-
Bei dem gewählten Ausführungsbeispiel nach FIG 3 sind insgesamt drei
Warteschlangen WS-NX, WS-LD und WS-RY vorgesehen. Diese Warteschlangen umfassen
jeweils soviele Wartepositionen, wie Einzelpuffer im Pufferspeicher PS vorgesehen
sind, im vorliegenden Fall also vier Wartepositionen. Der Eintrag eines Einzelpuffers
erfolgt über die Eintragsschaltung E und der Austrag über die Austragschaltung A
jeweils anhand der Nummer des betroffenen Einzelpuffers als Adresse in Verbindung
mit einem Steuersignal. An den Ausgängen der einzelnen Warteschlangen wird jeweils
der nächste an der Reihe befindliche Einzelpuffer mit seiner Nummer als Adresse
zusammen mit einem Steuersignal gekennzeichnet, falls die Warteschlange belegt ist.
Alle drei Warteschlangen können gleich aufgebaut sein.
-
Ein Beispiel für eine solche Warteschlange ist in FIG 4 näher gezeigt.
Die Eintrags- und Austragsschaltungen bestehen jeweils aus einem Demultiplexer E-DMUX
bzw.
-
A-DMUX mit einem Adresseneingang für die Auswahlsteuerung und einem
Signaleingang, der auf den ausgewählen Ausgang durchgeschaltet wird. Die gleichnamigen
Ausgänge beider Demultiplexer E-DMUX und A-DMUX sind jeweils paarweise mit den Eingängen
einer Kippstufe, z.B. R/S-Flipflops FF, verbunden, die beim Eintrag gesetzt und
beim Austrag wieder zurückgesetzt werden.
-
Die Ausgänge dieser Kippstufen FF werden zyklisch nach-
einander
mit einer Abtastschaltung, z.B. Auswahlregister AW-R, das mit dem Schiebetakt WS-T
fortgeschaltet wird, abgetastet und das durch das Jeweilige Prüfgatter der UND-Schaltungen
UND2 ermittelte Ergebnis über eine ODER-Schaltung ODER an einen gemeinsamen Steuerausgang
weitergeleitet. Ist eine der überprüften Kippstufen FF gesetzt, so wird das zugehörige
Prüfgatter bei der Abtastung durchlässig und erzeugt am Ausgang der ODER-Schaltung
ODER ein Steuersignal. Dieses sperrt das dem Takteingang des Registers AW-R vorgeschaltete
Gatter UND3, so daß das Register AW-R angehalten wird, um die Feststellung des zugehörigen
Einzelpuffers zu ermöglichen. Zu diesem Zweck sind die Ausgänge des Registers AW-R
jeweils mit einem von vier Gattern der UND-Schaltung UND1 verbunden, die durch das
Steuersignal am Ausgang der ODER-Schaltung ODER gleichzeitig angesteuert werden.
Das durch das Register AW-R markierte Gatter wird daher durchlässig und bestimmt-
in Form einer l-aus-n-Markierung die Nummer des ermittelten Einzelpuffers, die dann
durch den Codierer COD in eine Binäradresse umgewandelt wird und als solche zusammen
mit dem Steuersignal am Ausgang der ODER-Schaltung ODER für die Steuerung innerhalb
der Puffersteuerung PS-ST zur Verfügung steht.
-
Unterstellt man für die drei Warteschlangen WS-LD, WS-RY und WS-NX
gemäß FIG 3 den gleichen Aufbau, dann gelten in Anlehnung an FIG 3 für die einzelnen
Eingänge bzw. Ausgänge der einzelnen Warteschlangen die angegebenen Gruppen 1 bis
3 von Signalen. Dabei haben die drei Warteschlangen folgende Bedeutung: WS-NX: In
diese Warteschlange sind alle Einzelpuffer P... des Pufferspeichers PS eingetragen,
die
für die Entgegennahme eines Informationsaustauschauftrages
durch den Datenübertragungsprozessor DVP zur Verfügung stehen. Bei unbelegtem Pufferspeicher
sind also alle Kippstufen FF der Warteschlange gemäß FIG 4 gesetzt. Die Verfügbarkeit
eines Puffers wird dem Datenübertragungsprozessor DVP durch das Ausgangssignal BUFAV
angezeigt. Welcher Einzelpuffer dabei verfügbar ist, wird durch die ebenfalls von
der Warteschlange gelieferte Adresse NXBFN angezeigt.
-
Diese Adresse hat aber wie auch die übrigen Adressen LDBFN und RYBFN
sowie ACTBFN nur für die interne Puffersteuerung Bedeutung.
-
WS-LD: In diese Warteschlange werden alle Einzelpuffer P... des Pufferspeichers
PS eingetragen, die vom Datenübertragungsprozessor DVP für den Verkehr mit dem Arbeitsspeicher
PMS bereits vorbereitet sind. Bei unbelegtem Pufferspeicher ist keine der Kippstufen
FF der Warteschlange gemäß FIG 4 gesetzt. Nach einem Eintrag erscheint Jedoch das
Anforderungssignal DMLDREQ für die Schnittstellensteuerungen MINT und PMS-ST zusammen
mit der zugehörigen Einzelpufferadresse LDBFN am Ausgang der Warteschlange.
-
WS-RY: In dieser Warteschlange werden alle Einzelpuffer P... des Pufferspeichers
PS eingetragen, die mit Lesedaten aus dem Arbeitsspeicher PMS bereits geladen sind.
Folglich ist bei unbelegtem Pufferspeicher PS ebenfalls keine der Kippstufen FF
der Warteschlange gemäß FIG 4 gesetzt. Nach einem Eintrag erscheint
jedoch
das Ausgangssignal DARDY, das als Anforderungssignal DARDYREQ für den Datenübertragungsprozessor
DVP zur Weiterleitung der Lesedaten an den zugehörigen Kanal, z.B. CHN, auffordert,
zusammen mit der zugehörigen Einzelpufferadresse RYBFN am Ausgang dieser Warteschlange.
-
Einträge in die bzw. Austräge aus den einzelnen Warteschlangen werden
ei nerseits vom Datenübertragungsprozessor DVP mit den Befehlssignalen ASBF, STAMM,
RELBF und BACK und andererseits von der Schnittstellensteuerung P#iS-ST mit dem
Quittungssignal DMMINCRDY in Verbin-
dung mit dem Schnittstellensignal
READ gesteuert. Diese Signale haben folgende Bedeutung: ASBF: Mit diesem Befehlssignal
des Datenübertragungsprozessors DVP wird normalerweise der für eine Belegung verfügbare
Einzelpuffer aus der Warteschlange WS-NX ausgetragen und die entsprechende Adresse
NXBFN als aktuelle Adresse ACTBFN mit Setzen von ASSREC in einem Puffernnummernregister
BFN-R bereitgestellt.
-
STAMM: Mit diesem Befehlssignal des Datenübertragungsprozessors DVP
wird der belegte Einzelpuffer in die Warteschlangen WS-LD eingetragen und die im
Puffernummernregister BFN-R gespeicherte Adresse durch Löschen von ASSREC gelöscht,
so daß die Adresse des nächsten verfügbaren Einzelpuffers aus der Warteschlange
WS-NX als aktuelle Adresse ACTBFN für die interne Puffersteuerung zur Verfügung
steht.
-
BACK: Dieses Befehlssignal folgt immer auf eine Anforderung der Warteschlange
WS-RY mit dem Anforderungssignal DARDYREQ an den Datenübertragungsprozessor DVP.
Es löscht das Signal DARDYREQ und stellt mit Setzen von BACKREC statt der Adresse
NXBFN aus der Warteschlange WS-NX die Adresse RYBFN aus der Warteschlange WS-RY
als aktuelle Adresse ACTBN bereit.
-
RELBF: Mit diesem Befehlssignal wird normalerweise nach dem Befehlssignal
BACK der aufgrund des Anforderungssignales DARDYREQ entladene Einzelpuffer aus der
Warteschlange WS-RY ausgetragen und BACKREC gelöscht, so daß die Adresse des nächsten
verfügbaren Einzelpuffers aus der Warteschlange WS-NX als aktuelle Adresse ACTBFN
für die in-.
-
terne Puffersteuerung zur Verfügung steht.
-
DMMINCRDY: Dies ist ein von der Schnittstellensteuerung PMS-ST kommendes
Quittungssignal, das auf das Anforderungssignal DMLDREQ der Warteschlange WS-LD
folgend, die Ausführung des zugehörigen Schreib- oder Leseauftrages durch den Arbeitsspeicher
PMS anzeigt. Mit diesem Quittungssignal wird bei einem Schreibauftrag der zugehörige
Einzelpuffer aus der Warteschlange WS-LD ausgetragen und damit das Anforderungssignal
DMLDREQ gelöscht, wenn kein weiterer Eintrag in dieser Warteschlange vorliegt, sowie
in die Warteschlange WS-NX eingetragen. Bei einem Leseauftrag, der durch das intern
erzeugte Signal READ gekennzeichnet wird, erfolgt zusätzlich ein Eintrag in die
Warteschlange WS-RY und die Auslösung des Anforderungssignals DARDYREQ an den Datenübertragungs-.
-
prozessor DVP, damit dieser die aus dem Arbeitsspeicher PMS gelesenen
Daten an den zugehörigen Kanal, z O B o CHn> weiterleiten kann.
-
Entsprechend der Funktion der vorangehend beschriebenen Signale sind
in FIG 3 die drei Warteschlangen#WS-LD2 WS-RY und WS-NX beschaltet.
-
Zur Erzeugung der Steuersignale ASSREC und BACKREC mit den Befehlssignalen
ASBF bzw0 BACK dienen Kippstuf,en#z.B in Form von R/S-Flipflops FF1 und FF2, die
durch die zeitlich nachfolgenden Befehlssignale STAMM bzw. RELBF wieder zurückgesetzt
werden0 Eine dritte Kippstufe FF3 erzeugt das Anforderungssignal DARDYREQ, das mit
dem Befehlssignal BACK wieder gelöscht wird. Mit dem Signal BACKREC wird ein Multiplexer
MUX1 gesteuert, der entweder die von der Warteschlange WS-NX gelieferte Adresse
NXBFN oder aber die von der Warte#schlange WS-RY gelieferte
Adresse
RYBFN dem Puffernummernregister BFN-R zur Verfügung stellt. Dieses Register BFN-R
besteht aus einer Torschaltung in Form von UND-Gattern U2 und aus einem Register
aus D-Flipflops D-FF und arbeitet in der Weise, daß die am Eingang anstehende Adresse
zunächst über die Torschaltung U2 durchgelassen wird, bis das Befehlssignal ASBF
eintrifft und folglich mit dem Signal ASSREC die Torschaltung U2 gesperrt und stattdessen
die Adresse in das Register D-FF übernommen wird, so daß sie weiterhin am Ausgang
des Registers BFN-R als aktuelle Adresse ACTBFN zur Verfügung steht. Auf diese Weise
wird verhindert, daß nach dem Austrag aus der Warteschlange WS-NX mit dem Befehlssignal
ASBF die bei einem weiteren verfügbaren Einzelpuffer erscheinende neue Adresse NXBFN
bereits als aktuelle Adresse wirksam werden kann, bevor mit dem Befehlssignal STAMM
der Eintrag in die Warteschlange WS-LD vollzogen ist, d.h.
-
zwischen den beiden Befehlssignalen ASBF und STAMM ist ein in Belegungsvorbereitung
befindlicher Puffer in keiner der Warteschlangen eingetragen.
-
Umgekehrt wird bei Quittierung eines vom Arbeitsspeicher PMS vollzogenen
Leseauftrages - Signal READ liegt vor -mit dem Signal DMMINCRDY der aus der-Warteschlange
WS-LD ausgetragene Puffer außer in die Warteschlange WS-RY -über die UND-Gatter
U1 - wie bei einem quittierten Schreibauftrag auch in die Warteschlange WS-NX eingetragen,
d.h. ein- und derselbe Puffer ist zugleich in zwei Warteschlangen eingetragen. Infolge
des vorsorglichen Eintrages in die Warteschlange WS-NX kann, wenn es der einzige
Eintrag ist, fälschlicherweise das Signal BUFAV ausgelöst werden, obwohl tatsächlich
noch kein Puffer zur Verfügung steht. Dieses Signal bleibt Jedoch ohne Folgen, wenn
durch die Prioritätssteuerung die Anforderung DARDYREQ gegenüber dem Signal BUFAV
bevor-
rechtigt ist und vor einem eigenen Zugriffswunsch des Datenübertragungsprozessors
DVP bearbeitet wird. Mit den nachfolgenden Signalen BACK und RpLBF wird daher der
Multiplexer MUX1 umgesteuert und damit die richtige Adresse für den Austrag aus
der Warteschlange WS-RY bereitgestellt, bis nach dem Entladen der zugehörigen Puffereinheit
der Austrag tatsächlich erfolgt und der Multiplexer MUX1 wieder umgesteuert ist.
Erst dann wird das Signal BUFAV vom Datenübertragungsprozessor DVP zur Kenntnis
genommen.
-
Abgesehen von diesen beiden Ausnahmen wird jedoch jede in eine Warteschlange
eingetragene Puffereinheit zugleich aus einer anderen ausgetragen.
-
FIG 3 zeigt zusätzlich noch eine Schaltungskombination aus vier UND-Gattern
U3 und zwei Oder-Gattern 01 und 02, wobei jeweils zwei UND-Gatter die Signale ASBF
und BACKREC bzw. RELBF und ASSREC paarweise in der Weise miteinander verknüpfen
und die ODER-Gatter 01 und 02 die erhaltenen Ausgangssignale in der Weise bündeln,
daß gemäß den nachfolgenden Verknüpfungsfunktionen die Funktionen der Signale ASBF
und RELBF bezüglich der Austräge aus den Warteschlangen WS-NX und WS-RY vertauscht
werden.
-
BACKREC & ASBF -~ Funktion ASBF BACKREC & ASBF -~ " RELBF
ASSREC & RELBF t " RELBF ASSREC & RELBF => " ASBF Auf diese Weise ist
es möglich, unter Beibehaltung der vorhandenen Befehlssignale einen nach einem Leseauftrag
entladenen Puffer sofort wieder mit den vorhandenen Steuerdaten in die Warteschlange
WS-LD für einen erneu-
ten Schreib- oder Leseauftrag einzutragen.
Das Signal ASBF bewirkt dann anstelle des Signals RELBF den Austrag aus der Warteschlange
WS-RY, und das Signal RELBF bewirkt nachfolgend anstelle des Signals ASBF den Austrag
aus der Warteschlange WS-NX, während als letztes das Signal STAMM nach Laden der
Daten in den Puffer einen Eintrag in die Warteschlange WS-LD vollzieht, ohne daß
vorher erst erneut die mit dem Signal BUFAV einzuleitende Prozedur vom Datenübertragungsprozessor
DVP abzuwickeln ist.
-
Zur Unterstützung der Puffersteuerung PS-ST sind drei ztsätzliche
Register, nämlich MCR, MODR und MONR, vorgesehen, die für jede Puffereinheit des
Pufferspeichers PS einen individuellen Speicherabschnitt aufweisen und die vor Eintrag
eines Puffers in die Warteschlange WS-LD anhand der aktuellen Adresse ACTBFN mit
den zugehörigen Steuerdaten geladen werden. Den genannten Registern sind folgende
Funktionen zugewiesen: MCR: Dieses Kontrollregister wird über das Leitungssystem
D-BUS mit der Steuerinformation für Schreiben oder Lesen von 8 Byte, was der Übertragungsbreite
für den Arbeitsspeicher PMS entspricht, oder von z.B. 32 Byte beim Streamen geladen.#-
Es umfaßt Je Puffer einen Speicherbereich von 2 Bit, eines das Schnittstellensignal
READ von denen und das andere das Schnittstellensignal MSTREAM liefert.
-
MODR: Dieses Register wird über das Leitungssystem D-BUS mit einem
Teil der Startadressen für die Entlademikroprogramme des Datenübertragungsprozessors
DVP geladen, so daß nach Vorliegen des von der Warteschlange WS-RY ausgelösten Anforderungssignales
DARDYREQ die im Puffer zwischen-
gespeicherten Lesedaten durch
Anspringen der durch die Startadressen gekennzeichneten Entladeprogramme an die
gewünschte Kanalsteuerung weitergeleitet werden können.
-
MONR: Dieses Register wird direkt mit der Modulnummer der Kanalsteuerung
geladen, an die die Lesedaten aus dem Puffer weiterzuleiten sind.
-
Die. Register MODR und MONR brauchen nur bei einem Leseauftrag geladen
zu werden. Die Register können ebenfalls gleich und in einer Weise aufgebaut sein,
wie es anhand des Registers MCR gezeigt ist. über einen Dbsultiplexer DMUX werden
die entsprechenden Signalleitungen des speisenden Leitungssystems anhand der Adressierung
durch die jeweils aktuelle Adresse ACTBFN auf eines der vorhandenen Ausgangsleitungsbündel
durchgeschaltet und somit im Register pufferbezogen gespeichert. Die Ausgangsleitungsbündel
des Registers werden mit einem Multiplexer MUX2 einzeln auf ein gemeinsames Ausgangsleitungsbündel
aufgeschaltet, so daß jeweils nur die Steuerdaten für den jeweils betroffenen Puffer
bereitgestellt werden. Da die Steuerdaten des Registers MCR für die Nahtstelle zum
Arbeitsspeicher PMS bereitgestellt werden müssen, erfolgt dies mit der von der Warteschlange
WS-LD gelieferten Adresse LDBFN. Bei den beiden anderen Registern MONR und MODR
werden die für das Entladen eines Puffers durch den Datenübertragungsprozessor DVP
erforderlichen Steuerdaten mit der von der Warteschlange WS-RY gelieferten Adresse
RYBFN freigegeben.
-
Zurückkehrend zu FIG 2 wird nachfolgend in Verbindung mit den in FIG
5 und FIG 6 gezeigten Flußdiagrammen der Arbeitsablauf für einen Informationsaustausch
in seiner Gesamtheit beschrieben.
-
Obwohl der Pufferspeicher PS als Bindeglied zwischen dem Arbeitsspeicher
PMS und dem Datenübertragungsproze#ssor DVP in mehrere selbständige Einzelpuffer,
z.B. PO bis P3, unterteilt ist, arbeitet die Anordnung in der Weise, als ob für
den Datenübertragungsprozessor DVP als alleinigem Auftraggeber nur ein einziger
Puffer als Pufferspeicher zur Verfügung steht.
-
Ob der Puffer frei ist, erkennt der Datenübertragungsprozessor DVP
an dem testbaren Signal BUFAV. Sämtliche Aufträge werden in der Reihenfolge ausgeführt,
in der sie erteilt werden. Dabei erfolgt der Informationstausch zwischen dem Pufferspeicher
PS und dem Arbeitsspeicher PMS nach Erteilung eines Auftrages unabhängig vom Datenübertragungsprozessor
DVP und vom Leitungssystem D-BUS.
-
Der Datenübertragungsprozessor DVP kann sich daher zwischenzeitlich
anderen Aufgaben zuwenden, insbesondere kann zwischenzeitlich mit den ebenfalls
an das Leitungssystem D-BUS angeschlossenen Kanälen CH1 bis CHn verkehrt und es
können für neue Aufträge Schreibdaten in einen verfügbaren Puffer übertragen werden.
-
Ob ein Auftrag für den Arbeitsspeicher PMS vorliegt; ergibt sich
aus dem internen Steuerungsablauf des Datenübertragungsprozessors DVP bei der Bearbeitung
von Aufgaben oder aus der Anforderung eines Kanals,z.3.
-
CHn, indem eine Anforderung auf Speicherverkehr (PMSREQ) / &##.##asntach
ist zu prüfen, ob das Signal BUFAV vorliegt, also ein Puffer für die Entgegennahme
des Auftrages verfügbar ist. Ein drittes Prüfsignal für den Datenübertragungsprozessor
DVP ergibt sich aus dem Anforderungssignal DARDYREQ der Warteschlangensteuerung
WS-ST, das wegen des FIFO-Prinzips und zur Vereinfachung der Warteschlangensteuerung
bevorrechtigt zu berücksichtigen ist, da Lesedaten auf die Weiterleitung durch den
Datenübertragungsprozessor DVP warten.
-
Diese drei Prüfkriterien führen zu dem in FIG 5 dargestellten Flußdiagramm
für den Verkehr zwischen dem Datenübertragungsprozessor DVP und der, Pufferspeicher
PS mit seiner Steuerung PS-ST.
-
Liegt weder eine Anforderung DARDYREQ noch PMSREQ vor, so ist der
Datenübertragungsprozessor DVP frei für andere Aufgaben. Ein mit der Anforderung
PMSREQ angezeigter Auftrag kann dann an den Pufferspeicher PS weitergeleitet werden,
wenn ein Puffer verfügbar ist und das Signal BUFAV vorliegt. Mit dem Befehlssignal
ABSF wird dann, wie bereits beschrieben, der verfügbare Puffer belegt und demzufolge
aus der Warteschlange WS-NX ausgetragen. Außerdem wird das Signal ASSREC gesetzt,
um die zugehörige Adresse als aktuelle Steueradresse ACTBFN für die Ansteuerung
des belegten Puffers verfügbar zu machen. Danach werden die zugehörigen Steuerregister
der Warteschlangensteuerung WS-ST mit den notwendigen Steuerdaten und der Puffer
mit den notwendigen Steuerparametern für das Schreiben oder Lesen und gegebenenfalls
den Schreibdaten geladen. Erst wenn dieser Ladevorgang abgeschlossen ist, wird der
Datenübertragungsprozessor DVP mit Abgabe des Befehlssignals STAMM wieder frei.
Mit diesem Signal wird der geladene Puffer in die Warteschlange WS-LD eingetragen
und das Signal ASSREC wieder gelöscht. Für den Datenübertragungsprozessor DVP ist
damit die Vergabe des Auftrags abgeschlossen.
-
Tatsächlich wird der Verkehr mit dem Arbeitsspeicher PMS erst durchgeführt,
wenn der in die Warteschlange WS-LD eingetragene Puffer an der Reihe ist, d.h. wenn
im Rahmen der Abarbeitung der Warteschlangenaufträge das zugehörige Anforderungssignal
DMLDREQ für die Schnittstellensteuerungen MINT und PMS-ST ausgelöst
ist.
Erst mit diesem Schnittstellensignal erfolgt also der Ubergang in den autonomen
Verkehr zwischen Puffer speicher PS und Arbeitsspeicher PMS, auf den sich das Flußdiagramm
von FIG 6 bezieht.
-
Mit dem Anforderungssignal wird die Schnittstellen-und Arbeitsspeichersteuerung
PMS-ST gestartet, entsprechend den Steuerparametern aus dem Pufferspeicher PS der
Auftrag ausgeführt und der Vollzug des Auftrages über PMS-RDY ~ mit dem Quittungssignal
DMMINCRDY an den Pufferspeicher PS zurückgemeldet. Abhängig von der Art des Speicherauftrages
- Lesen oder Schreiben -was anhand des Schnittstellensignals READ überprüft wird,
reagiert die Puffersteuerung PS-ST mit der Warteschlangensteuerung WS-ST in unterschiedlicher
Weise. Zunächst wird in jedem Falle der Puffer aus der Warteschlange WS-LD ausgetragen
und damit das Anforderungssignal DMLDREQ gelp#scht. Außerdem erfolgt ein entsprechender
Eintrag in die Warteschlange WS-NX.
-
Handelt es sich um einen Leseauftrag, so wird der Puffer zusätzlich
in die Warteschlange WS-RY eingetragen und das Anforderungssignal DARDYREQ für den
Datenübertragungsprozessor DVP gesetzt. Damit ist der Arbeitsspeicherzugriff abgeschlossen
und es kann ein anderer Auftrag ausgeführt werden, sobald das Anforderungssignal
DMLDREQ erneut gesetzt ist.
-
Gemäß FIG 5 führt das Quittungssignal DARDYREQ zu einer Unterbrechung
der Arbeit des Datenübertragungsprozessors DVP. Dieser reagiert mit dem Befehlssignal
BACK, wodurch das Signal BACKREC gesetzt und das Anforderungssignal gelöscht wird.
Anhand der in den Steuerregistern MONR und MODR durch die Adresse RYBFN gekennzeichneten
Steuerdaten werden die im Puffer zwischengespeicherten Lesedaten vom DatenübertragungsprQ-zessor
DVP über das Leitungssystem D-BUS an den vorgegebenen Kanal, z.B. CHn, weitergeleitet.
Auswahladresse
für den Pufferspeicher PS ist auch in diesem Fall
die aktuelle Adresse ACTBFN, die jedoch der Adresse RYBFN entspricht.
-
Nach der Entladung des Puffers kann der Datenübertragungsprozessor
DVP diesen endgültig freigeben, und zwar mit dem Befehlssignal RELBF, das zum Austrag
des entladenen Puffers aus der Warteschlange WS-RY und zum Löschen des Signals BACKREC
führt, wonach der Datenübertragungsprozessor DVP selbst für andere Aufgaben wieder
frei ist.
-
Soll dagegen der Puffer für einen erneuten Zugriff zum Arbeitsspeicher
PMS belegt werden - PS-RECYC ist gesetzt - , dann wir~ anstelle des Befehlssignals
RELBF zunächst das Befehlssignal ASBF und dann erst das Befehlssignal RELBF ausgelöst.
Infolge des gesetzten Signals BACKREC erfolgt ebenfalls der Austrag' des Puffers
aus der Warteschlange WS-RY und anschließend infolge des gesetzten Signals ASSREC
auch der Austrag aus der Warteschlange WS-NX, so daß danach derselbe Zustand für
die Warteschlangensteuerung WS-ST gegeben ist, wie nach Belegung eines Puffers mit
dem Befehlssignal ASBF bei Vorliegen von PMSREQ im Rahmen des normalen Steuerungsablaufes.
-
Insgesamt führt also die Gliederung des Pufferspeichers mit seiner
Puffersteuerung gemäß der Erfindung zu einer äußerst wirkungsvollen Zusammenarbeit
zwischen dem zentralen Arbeitsspeicher PMS und dem Ein-/Ausgabewerk IOP des Datenverarbeitungssystems,
was durch erhöhte Leistungsfähigkeit und größere Flexibilität gekennzeichnet ist.
Letzteres hat z.B. zur Folge, daß auch während des Betriebes einzelne Puffer des
Pufferspeichers PS z.B. ~bei Verdacht auf-fehlerhaftes Arbeiten aus dem
Pool
an verfügbaren Puffern herausgenommen werden können, indem Einträge in die einzelnen
Warteschlangen einfach durch Sperren der zugehörigen Kippstufen FF verhindert werden.