DE3787213T2 - Verzögerungsverwaltungsverfahren und -vorrichtung. - Google Patents

Verzögerungsverwaltungsverfahren und -vorrichtung.

Info

Publication number
DE3787213T2
DE3787213T2 DE87304320T DE3787213T DE3787213T2 DE 3787213 T2 DE3787213 T2 DE 3787213T2 DE 87304320 T DE87304320 T DE 87304320T DE 3787213 T DE3787213 T DE 3787213T DE 3787213 T2 DE3787213 T2 DE 3787213T2
Authority
DE
Germany
Prior art keywords
address
delay
read request
delay management
free
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 - Fee Related
Application number
DE87304320T
Other languages
English (en)
Other versions
DE3787213D1 (de
Inventor
John Richard Gurd
Katsura Kawakami
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Manchester
Panasonic Holdings Corp
Original Assignee
University of Manchester
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by University of Manchester, Matsushita Electric Industrial Co Ltd filed Critical University of Manchester
Application granted granted Critical
Publication of DE3787213D1 publication Critical patent/DE3787213D1/de
Publication of DE3787213T2 publication Critical patent/DE3787213T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Memory System (AREA)

Description

  • Die vorliegende Erfindung betrifft eine Methode und Vorrichtung der Verzöger-Verwaltung, die es ermöglicht, in einem elektronischen Computer Leseanforderungen bezüglich noch nicht im Computerspeicher gespeicherter Daten zu verzögern.
  • In einem elektronischen Computer, wie beispielsweise einem Mikrocomputer, kommt es bei einem gewünschten Zugriff auf in einer Speichervorrichtung des Computers gespeicherte Daten zu einer Leseanforderung, welche die speziellen Speicheradressen anzeigt, worin die Daten gespeichert sind. Die gespeicherten Daten werden dann ausgelesen und nach Bedarf verarbeitet. Bei bestehenden seriell verarbeitenden Computern besteht im allgemeinen nicht die Möglichkeit, auf Daten zuzugreifen, die nicht im Speicher gespeichert sind. Bei seriell verarbeitenden Computern, in denen Programmbefehle in individuellen, unabhangigen Vorrichtungen ausgeführt werden, kommt es bisweilen zu Leseanforderungen, welche Daten betreffen, die noch nicht den Speicher erreicht haben, und es muß einen Mechanismus geben, durch den die Leseanforderung verzögert wird, bis die benötigten Daten den Speicher erreicht haben.
  • Die Fig. 1a und 1b stellen ein System nach dem Stande der Technik schematisch dar, in das eine solche Verzöger- Verwaltungsvorrichtung eingebaut ist, wobei das System eine Verarbeitungsvorrichtung und eine Speichervorrichtung umfaßt, welche eine Einrichtung zur Verzögerung von Leseanforderungen (im folgenden einfach als eine "Leseverzögervorrichtung" bezeichnet) aufweist. Eine Leseverzogervorrichtung 100 ist in Fig. 1a dargestellt, wobei die Leseverzögervorrichtung einen Verteilerteil (Zuordnungsteil) 100a, einen Speicherteil 100b, einen Verzöger-Verwaltungsteil (Laufzeit-Verarbeitungsteil) 100c und einen Löschsteuerteil 100d umfaßt. Zum Verschicken von Informationen von der Verarbeitungsvorrichtung 103 an die Leseverzogervorrichtung 100 und von der Leseverzögervorrichtung 100 an die Verarbeitungsvorrichtung 103 sind die Kanäle 101 bzw. 102 vorgesehen.
  • Der Austausch von Informationen zwischen der Verarbeitungsvorrichtung 103 und der Leseverzögervorrichtung 100 umfaßt die Verschickung eines einzelnen Datenpakets (hierin als ein "Token" bezeichnet). Wenn der Verteilerteil 100a ein Platzanforderung-(SRQ)-Token 104 aus der Verarbeitungsvorrichtung 103 empfängt, so schickt er ein eine Adresse für den angeforderten Platz umfassendes Platz-bereitgestellt- (SP)-Token 107 zurück. Der Speicherteil 100b empfängt auch ein Schreib-(WRT)-Token 105 und ein Leseanforderung-(READ)-Token 106; auf ersteres hin trägt er einen Parameter V in eine Adresse A ein, und auf letzteres hin liest er den Inhalt V von Adresse A und verschickt die gelesenen Daten in Gestalt eines Daten-(DT)-Tokens 108 an die Verarbeitungsvorrichtung 103. Die Bedeutung der zurückgeschickten Daten wird durch den Parameter Ra angezeigt. Der Verzöger-Verwaltungsteil 100c und der Löschsteuerteil 100d übertragen Token nicht direkt an die Verarbeitungsvorrichtung 103. Der Verzöger-Verwaltungsteil 100c verwaltet Leseanforderung-Token, die noch nicht im Speicherteil 100b eingetroffene Daten betreffen, und der Löschsteuerteil 100d löscht nicht mehr benötigte Speicherbereiche frei. Jedes Token unterscheidet sich von den anderen anhand eines Codes, welcher Teil jenes Tokens bildet.
  • Fig. 1b zeigt die Gestalt eines jeden Tokens. Die über Zahlzeichen 464 bis 468 gekennzeichneten Tokengestalten entsprechen jeweils den Token 104 bis 108 in Fig. 1a.
  • Aus Fig. 1b ist ersichtlich, daß jedes Token vier Felder umfaßt, nämlich ein erstes Codefeld 451, ein zweites Codefeld 452, ein drittes Codefeld 453 und ein viertes Codefeld 454.
  • Das Codefeld 451 dient dem Zweck der Unterscheidung zwischen den verschiedenen Tokenarten. Im Beispiel der Fig. 1b sind dem Feld 451 vier Bit zugewiesen, mit denen eine Benennung von sechzehn unterschiedlichen Tokenarten möglich ist. Die zweiten, dritten und vierten Felder 452 bis 454 weisen im gezeigten Beispiel der Einfachheit halber jeweils vierundzwanzig Bit auf, doch läßt sich jedem Feld eine beliebige Anzahl an Bits je nach den Anforderungen des Systems zuweisen. Die schattierten Teile der Diagramme zeigen
  • Felder, die in den Token, auf welche sich die Diagramme beziehen, nicht benutzt werden.
  • Die Fig. 2a, 2b und 2c dienen der ausführlichen Erläuterung der Funktionsweisen von Speicherteil 100b und dem Verzoger-Verwaltungsteil 100c. In Fig. 2a bezeichnet Zahlzeichen 100b den Speicherteil, und 201 und 202 sind die Eingangs- bzw. Ausgangskanäle der in den Speicherteil 100b hinein- bzw. daraus herausgehenden Token. Die Wörter innerhalb des Speicherteils 100b enthalten ein "Markierungsflagfeld" und ein "Datenfeld". Das Markierungsflagfeld der Adresse A umfaßt ein gültiges Markierungsflag (P) 203, das anzeigt, ob es im Datenfeld irgendwelche Daten von Belang gibt, und ein Verzöger-Markierungsflag (D) 204, das anzeigt, ob eine Leseanforderung-Verzögerung stattgefunden hat. Das will sagen, daß bei einem durch den Dateneingang erfolgten Eintrag in das Datenfeld das gültige Markierungsflag 203 des Tokens zur "1" wird und daß beim Auslöschen dieses Eintrags das Markierungsflag 203 zur "0" wird. Wenn das Leseanforderung- Token verzögert ist, so wird das Verzöger-Markierungsflag 204 zur "1". Wenn in einer Speichervorrichtung, wie beispielsweise 100b der Fig. 1a, ein einer bestimmten Adresse A entsprechendes Leseanforderung-Token 206 - wie in Fig. 2a gezeigt - eintrifft, so hängt das Verhalten des Speicherteils 100b vom Zustand des gültigen Markierungsflags in Adresse A ab.
  • Das will sagen:
  • (1) Falls das gültige Markierungsflag auf "1" steht, dann werden - wie in Fig. 2b gezeigt - die im Datenteil der Adresse A gespeicherten Daten V gelesen, in das Token mit dem Parameter Ra eingetragen und als das Daten-Token 207 verschickt.
  • (2) Wenn das vorhandene Markierungsflag auf "0" steht, dann sind die für Adresse A vorgesehenen Daten noch nicht eingetroffen, weshalb die Leseanforderung gespeichert werden muß. Unter Bezugnahme auf Fig. 2c wird das Leseanforderung-Token im Feld 207 (beispielsweise Adresse Q) im Ermessen des Verzöger-Verwaltungsteils 100c gespeichert. Zugunsten einer wirtschaftlichen Verwendung des Speicherplatzes wird der Leseparameter der Adresse A gelöscht und gespeichert, doch ist diese Löschung in der Praxis nicht unbedingt notwendig. In diesen Situationen werden die Informationen, welche das Vorhandensein eines ersten Verzöger-Tokens in Adresse A zeigen (in den Zeichnungen durch ein Sternzeichen gezeigt) in einem Link-Feld 208 gezeigt. Im Datenfeld der Adresse A, in Bezug auf welche die Verzögerung stattgefunden hat, wird der Arbeitsspeicheradressen- Zeiger Q des Leseanforderung-Tokens gespeichert. Ins Verzöger-Markierungsflag 204 wird eine "1" eingetragen.
  • Bei dieser Vorrichtung können viele Leseanforderung-Token eintreffen, welche die gleiche Adresse A vom Speicherteil 100b betreffen. Deshalb können viele Token bezüglich der gleichen Adresse verzögert sein, und die Verzöger-Token werden, wie in Fig. 3a gezeigt ist, in einer Serie gespeichert. Unter Bezugnahme auf die Fig. 3a und 3b kennzeichnen die Zahlzeichen 301 bis 305 Gegenstände, die den durch die Zahlzeichen 201 bis 205 in den Fig. 2a bis 2c gekennzeichneten entsprechen. Die im Verzöger-Verwaltungsteil 100c gespeicherten Felderserien werden in der Gestalt von Verzöger-Token eingesetzt. Wenn somit das der Adresse A entsprechende Schreib-Token 307 eintrifft, werden sämtliche Serien von Verzöger-Token, die darauf warten, daß in Adresse A Daten eingetragen werden, freigesetzt, wie in Fig. 3b gezeigt. Wenn das Token 307 eintrifft, so werden die Daten V ins Datenfeld der Adresse A eingetragen, und gleichzeitig wird eine "1" in das gültige Markierungsflag 303 eingetragen, und eine "0" wird in das Verzöger-Markierungsflag 304 eingetragen. Bei ihrem Eintragen werden die Daten V und jede Adresse in der Verzögerungskette zueinander in Beziehung gesetzt, und die Daten-Token 308 bis 310 werden gebildet und an die Verarbeitungsvorrichtung verschickt. Die vorher zur Speicherung der Verzöger-Token verwendeten Adressen Q&sub1; bis Q&sub3; werden frei und lassen sich während anschließender Verzöger-Verarbeitung einsetzen.
  • Beim oben erwähnten Verfahren ist es nicht möglich, während der Verwaltung der Serien der Verzöger-Token neue Leseanforderungen oder Schreibbefehle zu verwalten, und dies führt dazu, daß das Verfahren ziemlich langsam ist. Dies Problem läßt sich nicht durch bloßes Trennen des Speicherteils 100b und des Verzöger-Verwaltungsteils 100c sowie Anwenden des unter Bezugnahme auf die Fig. 2a bis 2c erläuterten Verfahrens losen. Eine solche Trennung ist in den Fig. 4a und 4b dargestellt. Mit einer derartigen Anordnung ist es möglich, daß ein Speicherteil 100b und ein Verzöger-Verwaltungsteil 100c im Parallelbetrieb arbeiten, doch stellen sich dadurch neue Probleme eigener Art. Unter Bezugnahme auf die Fig. 4a bis 4e sollen diese Probleme erläutert werden.
  • Die Zahlzeichen 401 bis 404 in den Fig. 4a bis 4e entsprechen den Zahlzeichen 301 bis 304 in den Fig. 3a und 3b und zeigen entsprechende Funktionen an. Die Kanäle 409 bzw. 410 tragen Token, die vom Verzöger-Verwaltungsteil 100c zum Speicherteil 100b bzw. vom Speicherteil 100b zum Verzöger- Verwaltungsteil 100c laufen. Unter Bezugnahme auf Fig. 4a sind zwei Leseanforderung-Token bezüglich der Adresse A der Speichervorrichtung 100b als vorher verzögert gewesen gezeigt. Dann trifft ein weiteres Leseanforderung-Token 411, das auf Adresse A bezogen ist, ein. Wie sich jeder Bestandteil des Systems unter diesen Umständen verhält, soll nun im folgenden beschrieben werden:
  • (1) Daten sind noch nicht in die Adresse A eingetragen worden und somit steht das gültige Markierungsflag 403 der Adresse A auf "0". Das Leseanforderung-Token 411 muß verzögert werden, und unter Bezugnahme auf Fig. 4b wird es zum Verzöger-Token DREAD 412 und wird an den Verzöger-Teil 100c verschickt. Zu diesem Zeitpunkt ist der Parameter der Adresse A die führende Adresse Q&sub2; der aufrechterhaltenen Serie von Verzöger-Token bezüglich Adresse A.
  • (2) Unter Bezugnahme auf Fig. 4c wird beim Eintreffen des Verzöger-Tokens 412 bei der Verzöger- Verwaltungsvorrichtung 100c das Token 412 in einer geeigneten freien Adresse (beispielsweise Q&sub3;) untergebracht und gleichzeitig wird ein neues führendes Adress-Token (NQA) 413 an die Speichervorrichtung 100b ausgegeben. Das Token 413 hat zur Aufgabe, die neue führende Adresse Q&sub3; der Serie von Verzöger-Token an die Speichervorrichtung 100b zuzustellen.
  • Die neuen, in oben beschriebener Weise erschienenen Token DREAD und NQA sind in Fig. 4f gezeigt. Die Felder 751 bis 754 in Fig. 4f entsprechen den Feldern 451 bis 454 in Fig. 1b. Bei den schattierten Teilen vom Diagramm handelt es sich um nicht benutzte Felder.
  • Es sei angenommen, daß Token 413 am Speicherteil 100b gleichzeitig mit einem neuen Leseanforderung-Token 414, das Adresse A betrifft, eintrifft.
  • (3) Falls das Token 413 vor Token 414 eintrifft, so trägt die Speichervorrichtung 100b den durch Token 413 benannten Parameter Q&sub3; in Adresse A ein. Unter Bezugnahme auf Fig. 4d benennt der Zeiger aus Adresse A den ersten Token in der Serie, und die Token-Verzöger-Verwaltung wird regulär abgeschlossen.
  • (4) Falls das Token 413 nach Token 414 eintrifft, dann wird unter Bezugnahme auf Fig. 4e das Token 414 verzögert und wird zu Token 411, und der Parameter des verzögerten Tokens 411 wird zum neuen Wert Q&sub2; von oben. Selbst wenn das Token 411 im Verzöger-Verwaltungsteil 100c gespeichert ist, so sind der Adresse Q&sub2; zwei Token zugehörig, und die Verzöger-Token bilden deshalb nicht die normale Serie von Einzeltoken.
  • Aus der Patentschrift EP-A-0149900 ist es bekannt, in einer Vorrichtung mit einer Halbbytemodusfunktion einen Puffer zum Empfangen einer Serie von Lese- und Schreibanforderungen vorzusehen. Der durch die Halbbytemodusfunktion bereitgestellte Vorteil liegt darin, daß Datenketten schneller verarbeitet werden können, aber es ist zweckmäßig, beim Einsatz einer Halbbytemodusfunktion Doppelleseanforderungen und Doppelschreibanforderungen zu erzeugen. Dies kann zu Lese- und Schreibanforderungen führen, deren Reihung außer Tritt ist. Zur Vermeidung dieses Problems im beschriebenen System werden Leseanforderungen in einer fifo-Warteschlange [ersteein/erste-aus] gespeichert. Die Leseanforderungen werden in der Reihenfolge der Warteschlange ausgeführt, sofern ein für den Zweck bereitgestellter Logikschaltkreis keine falsch gereihte Leseanforderung ermittelt. Wird eine falsch gereihte Leseanforderung ermittelt, so erfolgt eine Ausführung der ermittelten Leseanforderung außer der Reihe. Somit betrifft das Dokument eher ein bestimmtes Problem, das aus dem Betrieb im Halbbytemodus erwächst, denn das generelle Problem einer Verzögerung der Leseanforderung in Computern, in denen Befehle in unabhängigen Vorrichtungen ausgeführt werden.
  • Es ist eine Aufgabe der vorliegenden Erfindung, die oben erwähnten Nachteile im Stande der Technik zu umgehen oder zu mildern und die Möglichkeit zu einer effektiven Verwaltung des Betriebs der Speichervorrichtung und der Verzöger- Verwaltungsvorrichtung zu schaffen.
  • Gemäß der vorliegenden Erfindung ist eine Verzöger- Verwaltungsmethode zum Verzögern von Leseanforderung- Anweisungen vorgesehen, welche noch nicht in einem Speicherteil eines Computers gespeicherte Daten betreffen, bei der ein Verzöger-Verwaltungsteil des Computers Daten, die freie Adressen innerhalb des Verzöger-Verwaltungsteils kennzeichnen, an den Speicherteil verschickt, eine Speicherung der Daten bezüglich freier Adressen im Speicherteil erfolgt, der Speicherteil einen Empfang einer Leseanforderung bezüglich einer noch nicht mit Daten beschriebenen Adresse des Speicherteils ermittelt, der Speicherteil bei Ermittlung einer solchen Leseanforderung Daten, die die zu verzögernde Leseanforderung und eine freie aus den im Speicherteil gespeicherten Adressen entnommene Adresse kennzeichnen, an den Verzöger-Verwaltungsteil verschickt, die an den Verzöger- Verwaltungsteil verschickte freie Adresse aus den im Speicherteil gespeicherten Adressen ausgelöscht wird, und der Verzöger-Verwaltungsteil die aus dem Speicherteil empfangenen, verzögerten Leseanforderung-Daten bei der freien, durch die empfangenen Daten gekennzeichneten Adresse speichert; und beim Schreiben von Daten an die die verzögerte Leseanforderung betreffende Adresse des Speicherteils eine Freigabeanforderung vom Speicherteil an den Verzöger-Verwaltungsteil verschickt wird, der Verzöger-Verwaltungsteil auf die Freigabeanforderung durch Verschicken der verzögerten Leseanforderung an den Speicherteil reagiert und der Verzöger-Verwaltungsteil Daten an den Speicherteil verschickt, die anzeigen, daß die Adresse, aus welcher die verzögerte Leseanforderung freigegeben worden ist, wieder eine freie Adresse ist, woraufhin der Speicherteil die vom Verzöger-Verwaltungsteil angezeigte freie Adresse nochmals bekräftigt.
  • Die vorliegende Erfindung liefert ferner eine Verzöger- Verwaltungsvorrichtung zum Verzögern von Leseanforderung- Anweisungen, welche noch nicht in einem Speicherteil eines Computers gespeicherte Daten betreffen, umfassend einen Verzöger-Verwaltungsteil, Mittel zur Kennzeichnung freier Adressen im Verzöger-Verwaltungsteil, Mittel zum Übertragen freier Adressen aus dem Verzöger-Verwaltungsteil zum Speicherteil, Mittel im Speicherteil zum Speichern von die freien Adressen kennzeichnenden Daten, Mittel zur Ermittlung einer zu verzögernden Leseanforderung, die eine noch nicht mit Daten beschriebene Adresse des Speicherteils betrifft, Mittel zum Verschicken von Daten, die eine zu verzögernde ermittelte Leseanforderung und eine ausgewählte freie Adresse, die aus dem Speichermittel der freien Adresse entnommen ist, kennzeichnen, an den Verzöger-Verwaltungsteil, Mittel zum Auslöschen der ausgewählten freien Adresse aus dem Speichermittel für freie Adressen, Mittel zum Speichern der aus dem Speicherteil empfangenen Leseanforderung bei der ausgewählten freien Adresse des Verzöger-Verwaltungsteils, Mittel zur Ermittlung des Schreibens von Daten an die besagte Adresse des Speicherteils, Mittel zum Erzeugen einer Freigabeanforderung, wenn das Schreiben von Daten an die besagte Adresse ermittelt wird, Mittel zum Übertragen der Freigabeanforderung an den Verzöger-Verwaltungsteil, auf die Freigabeanforderung reagierendes Mittel zur Erzeugung der verzögerten Leseanforderung, Mittel zum Übertragen der erzeugten verzögerten Leseanforderung an den Speicherteil, Mittel zur Ermittlung des Freizustands einer ausgewählten freien Adresse und Mittel zum Übertragen der freigemachten, ausgewählten freien Adresse an den Speicherteil zur Speicherung im Speichermittel für freie Adressen.
  • Wie oben erwähnt, besteht die Aufgabe der vorliegenden Erfindung darin, daß, wenn eine Leseanforderung nach noch nicht in der Speichervorrichtung eingetroffenen Daten erfolgt, die Speichervorrichtung an den Verzöger-Verwaltungsteil nicht nur vorher aus dem Verzöger-Verwaltungsteil empfangene Informationen über freie Adressen, sondern auch Daten bezüglich der zu verzögernden Leseanforderung verschickt, wobei der Verzöger-Verwaltungsteil die Leseanforderung-Daten in der freien, durch die mit den Leseanforderung-Daten verschickten Informationen gekennzeichneten Adresse speichert.
  • Ein Beispiel der vorliegenden Erfindung sei nachfolgend anhand der beigefügten Zeichnungen beschrieben. Es zeigen in den Zeichnungen:
  • Fig. 1a ein Blockdiagramm einer Verzöger- Verwaltungsvorrichtung nach dem Stande der Technik;
  • Fig. 1b ein schematisches Diagramm, das die Gestalt von in der Vorrichtung der Fig. 1a eingesetzten Token darstellt;
  • Die Fig. 2a bis 2c, 3a und 3b, sowie 4a bis 4f schematische Diagramme, die die Betriebsweise der Verzöger- Verwaltungsvorrichtung nach dem Stande der Technik darstellen;
  • Fig. 5 ein Blockdiagramm einer Verzöger- Verwaltungsvorrichtung, die eine Ausführungsform der vorliegenden Erfindung bildet;
  • Fig. 6 ein Blockdiagramm, das Bestandteile der Vorrichtung der Fig. 1 darstellt; und
  • die Fig. 7a bis 7j schematische Diagramme, die die Betriebsweise einer Verzöger-Verwaltungsvorrichtung darstellen, die eine Ausführungsform der vorliegenden Erfindung bildet.
  • Als Beispiel sei die vorliegende Erfindung nun bezugnehmend auf die Fig. 5, 6 sowie 7a bis 7j aus den beigefügten Zeichnungen beschrieben.
  • Unter Bezugnahme auf Fig. 5 benennt das Zahlzeichen 1 eine Verarbeitungsvorrichtung, die der Verarbeitungsvorrichtung 103 der Fig. 1 entspricht. Die Zahlzeichen 2 und 3 bezeichnen einen Speicherteil und einen Verzöger-Verwaltungsteil, die dem Speicherteil 100b bzw. dem Verzöger-Verwaltungsteil 100c der Fig. 1 entsprechen. Die Zahlzeichen 4 und 5 stehen für Übertragungsvorrichtungen, welche zwischen der Betriebsvorrichtung 1, dem Speicherteil 2 und dem Verzöger-Verwaltungsteil 3 bewegte Token sammeln und zustellen, und sie entsprechen den Kanälen 101 bzw. 102 der Fig. 1.
  • Der Speicherteil 2 umfaßt einen Puffer 2a, der vorübergehend aus der Übertragungsvorrichtung 4 empfangene Token behält. Ein Steuerteil 2b ist vorgesehen, in dem die Wesensart empfangener Token analysiert wird und der je nach der Art empfangener Token entweder die Tokenparameter in Speicher 2c speichert oder den Inhalt von Speicher 2c ausliest. Ein Puffer 2d dient dem Zwecke der Verschickung von aus Steuerteil 2b stammenden Token an die Übertragungsvorrichtung 5.
  • Im Verzöger-Verwaltungsteil 3 speichert ein Puffer 3a vorübergehend aus der Übertragungsvorrichtung 4 empfangene Token. Ein Steuerteil 3b analysiert empfangene Token und je nach ihrer Art speichert er entweder ihre Parameter in einem Speicher 3c oder er liest den Inhalt des Speichers 3c. Ein Puffer 3d verschickt aus dem Steuerteil 3b stammende Token an die Übertragungsvorrichtung 5.
  • Unter Bezugnahme auf Fig. 6 werden die wesentlichen Teile des Steuerteils 2b und des Speicherteils 2c erläutert. Die Fig. 6 zeigt einen Teil des Platzes im Speicher 2c. In dem Platz sind bereits die freien Adressen in Speicher 3c gespeichert (in Fig. 5), wie beispielsweise Q&sub3;, Q&sub4;, Q&sub5; . . . Qn. Der freie Adressplatz des Speichers 3c wird über Stapelzeiger 20 gekennzeichnet. Ein Puffer 21 überträgt die Adresse Qn+1 eines freien Adressplatzes des Speichers 3c, der durch die Verzöger-Verwaltungsvorrichtung 3 freigegeben worden ist, und diese freien Adressen werden gesammelt.
  • Es folgt nun eine Beschreibung der Verzöger- Verwaltungsmethode der vorliegenden Erfindung. Die Fig. 5 und 6 zeigen lediglich ein Einzelbeispiel der vorliegenden Erfindung in groben Zügen, und die vorliegende Erfindung beschränkt sich nicht beispielsweise auf die Puffer 2a und 2d sowie den Steuerteil 2b im Speicherteil 2. Das Wesen der vorliegenden Erfindung läßt sich durch eine Erläuterung der Funktionsweise der Erfindung unter Bezugnahme auf die Fig. 7a bis 7j leichter verstehen. Unter Bezugnahme auf Fig. 7a stellt das Zahlzeichen 30 Speicherplatz im Speicher 2c des Speicherteils 2 dar, und 30a stellt einen Speicherteil dar, in dem der freie Adressplatz des Speichers 3c (in Fig. 6 gezeigt) gespeichert wird. Die Zahlzeichen 30b und 30c stellen gültige und Verzöger-Markierungsflags dar, die den in Fig. 2a gezeigten entsprechen, und das Zahlzeichen 31 stellt einen Speicherplatz im Speicher 3c der Speicher- Verwaltungsvorrichtung 3 dar. Die Zahlzeichen 32, 33, 34 und 35 kennzeichnen Kanäle, entlang derer Token verschickt werden, und sie entsprechen den Sammel- und Zustellvorrichtungen 4 und 5 der Fig. 5.
  • Es folgt nun eine Beschreibung der Funktionsweise der in den Fig. 5 und 6 gezeigten Verzöger-Verwaltungsvorrichtung unter Bezugnahme auf die Fig. 7a bis 7j.
  • Unter Bezugnahme auf Fig. 7a ist im gezeigten Beispiel, wie in Fig. 4a, eine Verzögerung von zwei Leseanforderung- Token bezüglich Adresse A des Speicherteils 2 bereits erfolgt und ein neues Leseanforderung-Token 512 ist im Speicherteil 2 eingetroffen. Ein Token (FA) 511, das eine freie, in Verzöger-Verwaltungsteil 3 verfügbare Adresse enthält, wird verschickt und im Speicherteil 30a des Speicherteils 2 gespeichert. So trägt das freie Adress-Token 511 die freie Adresse in Verzöger-Verwaltungsteil 3 als einen Parameter und speichert sie im Adress-Unterbringungsteil 30a ab.
  • (1) Wenn der Speicherteil 2 sowohl das freie Adress-Token 511 als auch das Leseanforderung-Token 512 empfängt und das bestehende Markierungsflag 30b auf "0" steht, so wird - wie in Fig. 7b gezeigt - das Leseanforderung- Token 512 in ein Verzöger-Token (DREAD) 513 gewandelt, und das Verzöger-Token 513 wird an den Verzöger- Verwaltungsteil 3 verschickt. Der Adressparameter (A) wird aus dem Leseanforderung-Token 512 gelöscht, und der in Adresse A vorhandene Wert Q&sub2; und der im freien Adress- Token 511 gehaltene Parameter Q&sub3; werden zum Verzöger- Token 513 vereinigt. Anschließend wird die freie Adresse Q&sub3; in Adresse A gespeichert, und die freie Adresse Q&sub3; wird aus dem Speicherteil 30a ausgelöscht.
  • (2) Beim Eintreffen am Verzöger-Verwaltungsteil 3 wird das Verzöger-Token 513 bei der freien Adresse Q&sub3; gespeichert. Die Adresse (Q&sub3;), bei der es gespeichert wird, ist durch den in Token 513 enthaltenen Parameter Q&sub3; festgelegt. Dies geschieht selbst dann, wenn beispielsweise beim Eintreffen von Token 513 eine sonstige Adresse wie etwa Q&sub2; frei ist. Der Parameter Q&sub2; wird in Adresse Q&sub3; untergebracht. Dann ist der anfängliche Verzöger- Verwaltungsvorgang vollständig.
  • (3) Der Arbeitsspeicher 30a der freien Adressen wird vom Verzöger-Verwaltungsteil 3 unter Hervorbringung eines freien, an den Adress-Teil 30a des Speicherteils 2 verschickten Adress-Tokens 514 (vgl. Fig. 7c) wieder aufgefüllt.
  • Bei der oben erwähnten Anordnung treten die unter Bezugnahme auf die Fig. 4a und 4b beschriebenen Probleme nicht auf. Das heißt, daß selbst unter derartigen Umständen wie in Fig. 7d gezeigt, bei denen das Verzöger-Token 513 noch nicht beim Verzöger- Verwaltungsteil 3 eingetroffen ist, der Speicherteil 2 noch einmal ein Leseanforderung-Token, das Adresse A betrifft, verzögern kann. Falls beispielsweise in Fig. 7d eine neue Tokenverzögerung auftritt, so sollte es die Parameter < Q&sub4;> < Q&sub3;> und < Ra&sub4;> aufweisen, wie für das Token 520 gezeigt. Bei Q&sub4; handelt es sich um die freie Adresse, die innerhalb des Verzöger-Verwaltungsteils 3 verfügbar und die im Adress-Teil 30a im Speicher 2 gespeichert ist. Wenn das Token 520 am Verzöger-Verwaltungsteil 3 eintrifft, werden Daten bei Adresse Q&sub4; gespeichert. Selbst unter der Annahme, daß das Token 520 das Token 513 der Fig. 7d überholt und zuerst eintrifft, ändert sich die Reihenfolge der Kette gespeicherter Verzöger- Token nicht, und sobald das Token 513 eingetroffen ist, bildet sich die übliche Kette aus, und als Folge davon sind Daten bei Adresse Q&sub3; gespeichert worden.
  • Unter Bezugnahme auf die Fig. 7e und 7f erfolgt beim Eintreffen eines die Adresse A betreffenden Schreib- Tokens WRT eine Freigabe des Verzöger-Tokens bzw. der Verzöger-Token, das Adresse A betrifft, und der Vorgang läuft wie im folgenden beschrieben ab.
  • (4) Beim Empfang des Schreib-Tokens blickt der Speicherteil 2 auf das Verzöger-Markierungsflag 30c und weil dessen Wert "1" beträgt, legt es fest, daß die Adresse (im Verzöger-Verwaltungsteil 3) eines Verzöger-Tokens in Adresse A gespeichert wird. Auf Grund dessen wird gleichzeitig mit dem Eintragen der Daten V an Adresse A ein Freigabeanforderung-(RRQ)-Token 516 erzeugt. Wenn das bestehende Markierungsflag 30b auf "1" steht, wird dann das Verzöger-Markierungsflag 30c auf "0" gesetzt.
  • (5) Unter Bezugnahme auf Fig. 7e weist das Freigabeanforderung-(RRQ)-Token 516 die Adresse A sowie die darin als seine Parameter untergebrachte Adresse Q&sub3; auf, und es wird zum Verzöger-Verarbeitungsteil 3 verschickt.
  • (6) Beim Empfang des Freigabeanforderung-Tokens 516 erkennt der Verzöger-Verwaltungsteil 3 aus dem Parameter Q&sub3; das erste der Serie der Verzöger-Token, die freigegeben werden sollten, und aus dem Parameter A die Adresse, zu welcher die freizugebenden Token gehören. Auf Grund dessen wird die Serie von Lese-Token 517 bis 519 erzeugt und an den Speicherteil 2 verschickt. Anschließend wird jede der Adressen, in denen die Verzöger-Token im Verzöger-Verwaltungsteil 3 gespeichert worden sind, zu einer freien Adresse.
  • (7) Beim Empfang der Token 517 bis 519 liest der Speicherteil 2 Daten aus der Adresse A und verschickt die gelesenen Daten V in einem Daten-Token an die Betriebsvorrichtung.
  • Die in den Fig. 7a bis 7f gezeigten Token READ bzw. WRT weisen die gleiche Gestalten wie READ bzw. WRT in Fig. 1b auf.
  • Gestaltbeispiele für die Token DREAD, FA und RRQ, wie sie in den Fig. 7a bis 7f verwendet werden, sind in Fig. 7g gezeigt (die schattierten Teile der Zeichnung stehen für nicht benutzte Felder). In den gleichen Diagrammen haben 551 bis 554 jeweils ihre Entsprechung in 451 bis 454 in Fig. 1b.
  • Bei DREAD in Fig. 7g handelt es sich nicht um das gleiche wie in Fig. 4f; es wird ein Feld mehr benutzt. FA entspricht NQA in Fig. 4f, abgesehen davon, daß ein Feld weniger benutzt wird.
  • Wie bereits erwähnt, da die vom Verzoger-Verwaltungsteil 3 freigegebenen Token 517, 519 die gleiche Gestalt wie vor ihrer Verzögerung aufweisen, braucht ihr Ursprung in Speicher 2 nicht festgelegt werden. In der dem Zweck der vereinfachten Erläuterung dienenden Fig. 7a ist das freie Adress-Token 511 in Adress-Arbeitsspeicherteil 30a des Speicherteils 2 zeitgleich mit dem Leseanforderung-Token 512 eingetroffen, und es ist in Ordnung, wenn sich mehr als ein freiem Adress-Token im Arbeitsspeicherteil 30a des Speicherteils 2 ansammelt.
  • Falls in dieser Situation der Verzöger-Verarbeitungsteil 3 mit jedem Empfang eines Verzöger-Tokens ein freies Adress- Token an den Speicherteil 2 verschickt, so wird die Ansammlung der freien Wort-Token im Speicherteil 2 aufrechterhalten.
  • Es kann die Situation erwachsen, in der Token einander in den Tokenkanälen 32, 33, 34 und 35 überholen. Zieht man beispielsweise das Beispiel der Situation in Fig. 7h heran, in dem ein Schreib-Token aus der Verarbeitungsvorrichtung verschickt worden ist, so wird das sich daraus ergebende Verhalten unter Bezugnahme auf die Fig. 7h bis 7j erklärt. In den Fig. 7h bis 7j ist 31a ein gültiges Markierungsflag, welches jeder Adresse im Verzöger-Verarbeitungsteil 30 zugehörig ist. Der Zweck des Markierungsflags 31a besteht darin, zu zeigen, ob die Adresse ein Verzöger-Token hält oder ob sie frei ist.
  • Unter Bezugnahme auf Fig. 7h befinden sich zwei Verzöger- Token 513 und 520 im Kanal 34 und es gibt ein Schreib-Token 515 im Kanal 32. Der Speicherteil 2 empfängt das Schreib-Token 515 und verarbeitet es. Das Verzöger-Token 520 überholt das Verzöger-Token 513 und trifft als erstes beim Verzöger- Verarbeitungsteil 3 ein und wird verarbeitet. Die Folge davon ist wie in Fig. 7i gezeigt. Das gültige Markierungsflag 31a der Adresse Q&sub4; erhält eine "1" eingetragen. Der Speicherteil 2 empfängt dann das Schreib-Token 515 und untersucht die Adresse A. Da es ein Token gibt, welches in bezug auf diese Adresse verzögert worden ist, wird ein Freigabe-Token 516 erzeugt. Das Freigabe-Token 516 umfaßt als Parameter die Adresse A und die Verzöger-Adresse Q&sub4;, welche in Adresse A gehalten worden ist. Überdies wird der Wert V in die Adresse A eingetragen. Doch obwohl das Verzöger-Token 520 schon im Verzöger-Verarbeitungsteil 3 eingetroffen ist und die Parameter Q&sub3; und Ra&sub4; so in der Verzöger-Adresse Q&sub4; gespeichert worden sind, daß das Serienfeld der Adresse Q&sub4; die freie Adresse Q&sub3; anzeigt, ist die Adresse Q&sub3; weiterhin frei, da das Token 513 noch nicht empfangen worden ist. Somit kann die Serie gebrochen werden, wenn ein Verzöger-Token ein anderes überholt.
  • In der in Fig. 7i gezeigten Situation kann das Freigabeanforderung-Token 516 das Verzöger-Token 513 überholen und nach erfolgtem Eintreffen beim Verzöger-Verarbeitungsteil 3 die Freigabe der gebrochenen Verzögerserie veranlassen. Um mit solchen Umständen fertigzuwerden, verhält sich der Verzögerteil 3 wie folgt:
  • Der Verzöger-Verarbeitungsteil 3 liest die Adresse Q&sub4;, welche den im Freigabeanforderung-Token 516 gehaltenen Verzöger-Adressparameter anzeigt, und da das gültige Markierungsflag darin auf "1" steht, fügt er dem von ihm gehaltenen Parameter Ra&sub4; den Adressparameter A im Speicherteil 2 an, kehrt das Leseanforderung-Token wieder in seinen ursprünglichen Zustand zurück und schickt es als das Lese- Token 518 der Fig. 7j aus. Als nächstes liest er die durch das Serienfeld der Verzöger-Adresse Q&sub4; gekennzeichnete Verzöger- Adresse Q&sub3; und überprüft das gültige Markierungsflag von Adresse Q&sub3;. Da dies Markierungsflag auf "0" steht und folglich die zur Erzeugung eines Lese-Tokens nötigen Daten noch nicht in der Adresse Q&sub3; verfügbar sind, wird ein neues, den Freigabe-Adressparameter Q&sub3; aufweisendes Freigabeanforderung- Token RRQ erzeugt, und es wird, wie in Fig. 3j [sic] gezeigt, als ein Freigabeanforderung-Token 521 ausgeschickt. Das Freigabeanforderung-Token 521 durchläuft den Speicherteil 2, ohne irgendwelcher Verarbeitung unterzogen zu werden, und wird über Kanal 34 zurück an den Verzöger-Verarbeitungsteil 3 bewegt. Falls währenddessen das Verzöger-Token 513 beim Verzöger-Verarbeitungsteil 3 eingetroffen ist, so wird es bei Adresse Q&sub3; zum Abschließen der Serie gespeichert, und dann werden sämtliche Verzöger-Token der Serie freigegeben. Falls das zweite Freigabeanforderung-Token 521 das Verzöger-Token 513 überholt, so stellt der Verzöger-Verarbeitungsteil 3 ein weiteres Freigabeanforderung-Token her, welches die gleichen Parameter wie das Freigabeerfordernis-Token 521 aufweist. Was immer passiert, bis zum Eintreffen des Verzöger-Tokens 513 im Verzöger-Verarbeitungsteil 3 und seiner Verarbeitung wird der Freigabeanforderung-Vorgang von oben wiederholt, bis schließlich sämtliche der Token in der Serie freigegeben sind.
  • Zusammenfassend läßt sich sagen, daß der Verzöger- Verarbeitungsteil 3 beim Empfang eines Freigabeanforderung- Tokens die Verzöger-Adresse jenes Tokens liest und dann wie folgt fortfährt:
  • (a) Er untersucht, ob das gültige Markierungsflag der Adresse auf "1" steht, und falls es auf "1" steht, befolgt er die Vorgehensweise (b) unten, und falls es auf "0" steht, befolgt er die Vorgehensweise (c) unten.
  • (b) Der Verzöger-Verarbeitungsteil fügt den durch das Freigabeanforderung-Token gehaltenen Speicherteil- Adressparameter an den durch die Adresse gehaltenen Parameter an und erzeugt ein dem ursprünglich verzögerten Token identisches Leseanforderung-Token READ. Die erzeugte Leseanforderung wird ausgeschickt, und anschließend liest der Verzöger-Verarbeitungsteil die Adresse, die über das Serienfeld jener Adresse gekennzeichnet ist, und befolgt die Vorgehensweise (a) von oben für jene Adresse.
  • (c) Der Verzöger-Verarbeitungsteil erzeugt ein neues Freigabeanforderung-Token einschließlich der Adresse mit dem gültigen Markierungsflag "0" als Verzöger-Adressparameter. Dann wird die erzeugte Freigabeanforderung wieder in Umlauf gebracht, bis das gültige Markierungsflag eine "1" enthält.
  • Durch die Steuerung des Verhaltens des Verzöger- Verarbeitungsteils 3 wie oben beschrieben besteht die Möglichkeit, selbst wenn ein Überholen von Token in den Tokenkanälen auftritt, die Verzöger-Token korrekt freizugeben.
  • Gemäß der vorliegenden Erfindung wird somit, wenn eine Leseanforderung bezüglich noch nicht von einem Speicherteil empfangener Daten versucht wird, die Leseanforderung verzögert, und zur Ausführung dieser Leseanforderung wesentliche Informationen werden in einer Verzöger- Verwaltungsvorrichtung gespeichert. Bei erfolgtem Eintreffen der zu lesenden Daten kann dann die Erfindung kraft ihrer Bauart die Leseanforderung durchführen. Die oben erwähnte Speichervorrichtung und die Verzöger-Verwaltungsvorrichtung lassen sich deshalb voneinander unterscheiden, und ein Betrieb der beiden Vorrichtungen ist selbst bei nur über Tokenpakete ablaufender Übertragung zwischen den beiden möglich, ohne daß dabei Probleme erwachsen.
  • Die freien Adressen der oben erwähnten Verzöger- Verwaltungsvorrichtung dürfen sich in der oben erwähnten Speichervorrichtung ansammeln. Soll eine Leseanforderung verzögert werden, so wird eine freie Adresse, bei der ein Verzöger-Token gespeichert werden soll, in der zu lesenden Adresse gespeichert. Das Verzöger-Token wird dann an die Verzöger-Verwaltungsvorrichtung verschickt, wobei das Verzöger-Token das freie Adress-Token aus dem Arbeitsspeicher in der Speichervorrichtung enthält. Durch Speichern der oben erwähnten Verzöger-Token und durch ihre Freigabe mit der Adresse in der oben erwähnten Speichervorrichtung, die zu lesen ist, läßt sich die Verzögerungsverwaltung und die Aufrechterhaltung zusammenhängender Informationen einfach und ohne Widerspruch steuern.
  • Darüber hinaus ist eine Freigabe von Verzöger-Token der Reihe nach einfach und ohne Widersprüche selbst dann möglich, wenn ein Token ein anderes überholt, welches eine frühere verzögerte Leseanforderung betrifft, indem jedem Verzöger- Token ein gültiges Markierungsflag zugewiesen wird und eine Verzöger-Token-Freigabeanforderung wiederholt wird, bis das gültige Markierungsflag anzeigt, daß das zugehörige Verzöger- Token empfangen worden ist.

Claims (5)

1. Eine Verzöger-Verwaltungsmethode zum Verzögern von Leseanforderung-Anweisungen, welche noch nicht in einem Speicherteil eines Computers gespeicherte Daten betreffen, bei der ein Verzöger-Verwaltungsteil (3) des Computers Daten (FA, 511), die freie Adressen (Q&sub3;) innerhalb des Verzöger- Verwaltungsteils (3) kennzeichnen, an den Speicherteil (2) verschickt, eine Speicherung der Daten bezüglich freier Adressen im Speicherteil (2, 30a) erfolgt, der Speicherteil (2) einen Empfang einer Leseanforderung (READ, 512) bezüglich einer noch nicht mit Daten beschriebenen Adresse (A) des Speicherteils (2) ermittelt, der Speicherteil (2) bei Ermittlung einer solchen Leseanforderung Daten (DREAD, 513), die die zu verzögernde Leseanforderung und eine freie aus den im Speicherteil (2, 30a) gespeicherten Adressen entnommene Adresse (Q&sub3;) kennzeichnen, an den Verzöger-Verwaltungsteil (3) verschickt, die an den Verzöger-Verwaltungsteil (3) verschickte freie Adresse aus den im Speicherteil (2, 30a) gespeicherten Adressen ausgelöscht wird, und der Verzöger- Verwaltungsteil (3) die aus dem Speicherteil (2) empfangenen, verzögerten Leseanforderung-Daten bei der freien, durch die empfangenen Daten gekennzeichneten Adresse (Q&sub3;) speichert; und beim Schreiben von Daten (WRT, 515) an die die verzögerte Leseanforderung betreffende Adresse (A) des Speicherteils (2) eine Freigabeanforderung (RRQ, 516) vom Speicherteil (2) an den Verzöger-Verwaltungsteil (3) verschickt wird, der Verzöger-Verwaltungsteil (3) auf die Freigabeanforderung durch Verschicken der verzögerten Leseanforderung an den Speicherteil (2) reagiert und der Verzöger-Verwaltungsteil (3) Daten an den Speicherteil (2) verschickt, die anzeigen, daß die Adresse (Q&sub3;), aus welcher die verzögerte Leseanforderung freigegeben worden ist, wieder eine freie Adresse ist, woraufhin der Speicherteil (2, 30a) die vom Verzöger- Verwaltungsteil (3) angezeigte freie Adresse (Q&sub3;) nochmals bekräftigt.
2. Eine Verzöger-Verwaltungsmethode nach Anspruch 1, bei der bei Verzögerung einer Leseanforderung die zugehörige, an den Verzöger-Verwaltungsteil (3) verschickte, freie Adresse (Q&sub3;) in der die Leseanforderung betreffenden Adresse (A) des Speicherteils gespeichert wird, und beim Schreiben von Daten an die die verzögerte Leseanforderung betreffende Adresse (A) eine Freigabeanforderung (RRQ, 516) an die gespeicherte, zugehörige Adresse (Q&sub3;) verschickt wird.
3. Eine Verzöger-Verwaltungsmethode nach Anspruch 2, bei der bei Verzögerung einer Serie von Leseanforderungen, von denen eine jede die gleiche Adresse (A) des Speicherteils betrifft, die der letzten Leseanforderung der Serie zugewiesene Adresse (Q&sub4;) des Verzöger-Verwaltungsteils in der besagten Adresse (A) des Speicherteils gespeichert wird, und die jeder der anderen Leseanforderungen der Serie zugewiesene Adresse des Verzöger- Verwaltungsteils in der der folgenden Leseanforderung der Serie zugewiesenen Adresse des Verzöger-Verwaltungsteils gespeichert wird, wobei eine Freigabeanforderung (RRQ, 516) bezüglich der besagten Adresse (A) des Speicherteils die letzte Leseanforderung (READ, 517) in der Serie gefolgt von jeder der anderen Leseanforderungen (READ, 518; READ, 519) in der Serie erzeugt.
4. Eine Verzöger-Verwaltungsmethode nach Anspruch 1, bei der zu jeder der Speicherung von verzögerten Leseanforderungen zugewiesenen Adresse im Verzöger-Verwaltungsteil (3) ein gültiges Markierungsflag (31a) gehört, um anzuzeigen, ob sie frei oder im Gebrauch ist, und der Verzöger-Verwaltungsteil (3) auf einen Empfang einer Freigabeanforderung (RRQ, 516) mit einem Erzeugen der verzögerten Leseanforderung reagiert, wenn das gültige Markierungsflag (31a) anzeigt, daß die die Leseanforderung betreffende Adresse im Gebrauch ist, und mit einem Erzeugen einer neuen identischen Leseanforderung reagiert, wenn das gültige Markierungsflag (31a) anzeigt, daß die Adresse frei ist.
5. Eine Verzöger-Verwaltungsvorrichtung zum Verzögern von Leseanforderung-Anweisungen, welche noch nicht in einem Speicherteil eines Computers gespeicherte Daten betreffen, umfassend einen Verzöger-Verwaltungsteil (3), Mittel zur Kennzeichnung freier Adressen im Verzöger-Verwaltungsteil (3), Mittel zum Übertragen freier Adressen aus dem Verzöger- Verwaltungsteil (3) zum Speicherteil (2), Mittel (30a) im Speicherteil (2) zum Speichern von die freien Adressen kennzeichnenden Daten, Mittel (30b) zur Ermittlung einer zu verzögernden Leseanforderung (READ, 512), die eine noch nicht mit Daten beschriebene Adresse (A) des Speicherteils betrifft, Mittel zum Verschicken von Daten (DREAD, 513), die eine zu verzögernde ermittelte Leseanforderung (512) und eine ausgewählte freie Adresse (Q&sub3;), die aus dem Speichermittel (30a) der freien Adresse entnommen ist, kennzeichnen, an den Verzöger-Verwaltungsteil (3), Mittel zum Auslöschen der ausgewählten freien Adresse (Q&sub3;) aus dem Speichermittel (30a) für freie Adressen, und Mittel zum Speichern der aus dem Speicherteil (2) empfangenen, verzögerten Leseanforderung bei der ausgewählten freien Adresse (Q&sub3;) des Verzöger- Verwaltungsteils (3); und Mittel (30c) zur Ermittlung des Schreibens von Daten (515) an die besagte Adresse (A) des Speicherteils, Mittel zum Erzeugen einer Freigabeanforderung (RRQ, 516), wenn das Schreiben von Daten an die besagte Adresse (A) ermittelt wird, Mittel zum Übertragen der Freigabeanforderung an den Verzöger-Verwaltungsteil (3), auf die Freigabeanforderung reagierendes Mittel zur Erzeugung der verzögerten Leseanforderung (512), Mittel zum Übertragen der erzeugten verzögerten Leseanforderung an den Speicherteil (2), Mittel zur Ermittlung des Freizustands einer ausgewählten freien Adresse (Q&sub3;) und Mittel zum Übertragen der freigemachten, ausgewählten freien Adresse an den Speicherteil (2) zur Speicherung im Speichermittel (30a) für freie Adressen.
DE87304320T 1986-05-29 1987-05-15 Verzögerungsverwaltungsverfahren und -vorrichtung. Expired - Fee Related DE3787213T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB868613068A GB8613068D0 (en) 1986-05-29 1986-05-29 Delay management

Publications (2)

Publication Number Publication Date
DE3787213D1 DE3787213D1 (de) 1993-10-07
DE3787213T2 true DE3787213T2 (de) 1994-01-13

Family

ID=10598627

Family Applications (1)

Application Number Title Priority Date Filing Date
DE87304320T Expired - Fee Related DE3787213T2 (de) 1986-05-29 1987-05-15 Verzögerungsverwaltungsverfahren und -vorrichtung.

Country Status (5)

Country Link
US (1) US4989136A (de)
EP (1) EP0249344B1 (de)
JP (2) JPS63233435A (de)
DE (1) DE3787213T2 (de)
GB (1) GB8613068D0 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU630567B2 (en) * 1990-07-31 1992-10-29 Digital Equipment Corporation System and method for emulating a window management environment having a uniform windowing interface
EP0495167A3 (en) * 1991-01-16 1996-03-06 Ibm Multiple asynchronous request handling
US8856467B2 (en) * 2004-11-18 2014-10-07 International Business Machines Corporation Management of metadata in a storage subsystem
US8676748B2 (en) * 2004-11-18 2014-03-18 International Business Machines Corporation Clearing metadata tracks in a storage system
US7885921B2 (en) * 2004-11-18 2011-02-08 International Business Machines Corporation Managing atomic updates on metadata tracks in a storage system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3588829A (en) * 1968-11-14 1971-06-28 Ibm Integrated memory system with block transfer to a buffer store
US3736566A (en) * 1971-08-18 1973-05-29 Ibm Central processing unit with hardware controlled checkpoint and retry facilities
US4149245A (en) * 1977-06-09 1979-04-10 International Business Machines Corporation High speed store request processing control
JPS54107645A (en) * 1978-02-13 1979-08-23 Hitachi Ltd Information processor
FR2474201B1 (fr) * 1980-01-22 1986-05-16 Bull Sa Procede et dispositif pour gerer les conflits poses par des acces multiples a un meme cache d'un systeme de traitement numerique de l'information comprenant au moins deux processus possedant chacun un cache
GB8401804D0 (en) * 1984-01-24 1984-02-29 Int Computers Ltd Data storage apparatus

Also Published As

Publication number Publication date
EP0249344A3 (en) 1989-09-06
JPS63233435A (ja) 1988-09-29
GB8613068D0 (en) 1986-07-02
EP0249344B1 (de) 1993-09-01
US4989136A (en) 1991-01-29
JPS63233436A (ja) 1988-09-29
DE3787213D1 (de) 1993-10-07
EP0249344A2 (de) 1987-12-16

Similar Documents

Publication Publication Date Title
DE3784387T2 (de) Vorrichtung und verfahren zur parallelen verwaltung von freien speicherbereichen.
DE2455803C2 (de) Mehrprozessor-Datenverarbeitungsanlage
DE69425554T2 (de) System zur dynamischen zuordnung von speicher registern zum herstellen von pseudowarteschlangen
DE2162806C2 (de) Speichersteuereinheit zur vereinfachter Pufferung von Anforderungen der Ein- Ausgabekanäle
DE3642324C2 (de) Multiprozessoranlage mit Prozessor-Zugriffssteuerung
DE1499182C3 (de) Datenspeichersystem
DE3011552A1 (de) Datenverarbeitungsanlage mit einem hauptspeicher sowie wenigsten einem datenprozessor mit zugeordnetem adressenumformer
EP0329005B1 (de) Verfahren zum Einrichten von über Koppelvielfache einer mehrstufigen Koppelanordnung verlaufenden virtuellen Verbindungen
DE3439302A1 (de) Speichersteuerungsvorrichtung
DE2054830C3 (de) Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge
DE69031297T2 (de) Eingabewarteschlange für Speichersubsysteme
DE2422732C2 (de) Hierarchische Speicheranordnung
DE2912073C2 (de)
DE3432524A1 (de) Mehrfach genutzter datenschreiberregler und verfahren
DE3787213T2 (de) Verzögerungsverwaltungsverfahren und -vorrichtung.
DE19538448B4 (de) Datenbankmanagementsystem sowie Datenübertragungsverfahren
DE2558417A1 (de) Datenverarbeitungssystem
DE69626090T2 (de) System zur Regulierung von Informationsströmen für eine Paketvermittlungsstelle
DE3782546T2 (de) Datenpaketverkuerzungsverfahren und -vorrichtung.
DE2610428A1 (de) Anordnung zur steuerung der zwischenspeicherung von zwischen zwei funktionseinheiten zu uebertragenden daten in einem pufferspeicher
DE1808678B2 (de) Verfahren und schaltungsanordnung fuer elektronische daten waehlvermittlungsanlagen mit einem zentralen speicher
DE3784189T2 (de) Vorrichtung und verfahren zur steuerung der loeschung eines speicherbereichs.
EP0970426B1 (de) Abhängigkeitssteuerung für überlappende speicherzugriffe
EP1316891A1 (de) Datenübertragungseinrichtung
DE3149678A1 (de) Anordnung zur zwischenspeicherung von zwischen zwei funktionseinheiten in beiden richtungen zu uebertragenden informationen in einem pufferspeicher

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee