DE3784189T2 - Vorrichtung und verfahren zur steuerung der loeschung eines speicherbereichs. - Google Patents

Vorrichtung und verfahren zur steuerung der loeschung eines speicherbereichs.

Info

Publication number
DE3784189T2
DE3784189T2 DE8787304319T DE3784189T DE3784189T2 DE 3784189 T2 DE3784189 T2 DE 3784189T2 DE 8787304319 T DE8787304319 T DE 8787304319T DE 3784189 T DE3784189 T DE 3784189T DE 3784189 T2 DE3784189 T2 DE 3784189T2
Authority
DE
Germany
Prior art keywords
area
token
sub
addresses
erased
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
DE8787304319T
Other languages
English (en)
Other versions
DE3784189D1 (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.)
Panasonic Holdings Corp
Original Assignee
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of DE3784189D1 publication Critical patent/DE3784189D1/de
Application granted granted Critical
Publication of DE3784189T2 publication Critical patent/DE3784189T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Memory System (AREA)

Description

  • Die vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung zur Steuerung der Löschung eines Speicherbereichs und insbesondere ein Verfahren und eine Vorrichtung zur Löschung des Inhalts eines Speichers eines elektronischen Computers.
  • Wenn die Verwendung eines spezifischen Speicherareals oder Speicherbereichs im Speicher eines elektronischen Computers wünschenswert ist, ist es erforderlich, zuerst sämtliche Daten aus der Speichervorrichtung zu löschen und den Speicherinhalt wieder in einen Anfangszustand zu versetzen. Im Falle einer Speichervorrichtung beispielsweise, von der ein Teil zur Speicherung von Fehlerüberwachungscodes wie etwa einem mit jedem gespeicherten Wort assoziierten Paritätscode genutzt wird, mussen die Daten vor einer Auslesbarkeit des Paritätscodes vorübergehend in den Speicher eingetragen werden. Unter Bezugnahme auf Fig. 1 ist es in einem Computer, bei dem jedes im Speicher gespeicherte Wort mit einem Etikettenfeld versehen ist, dessen Inhalt Kenngrößen der gespeicherten Daten anzeigt und die Verarbeitung der Daten beeinflußt, und in einem Computer, in dem ein Etikettenfeld den Bestimmungsort der gespeicherten Daten beeinflußt, erforderlich, den zu benutzenden Bereich im Speicher vor seiner Benutzung zu löschen. Es gibt eine Vielzahl anderer Situationen, in denen ein Löschen von Speicherbereich erforderlich ist.
  • Fig. 2 stellt die Beziehung zwischen einer Verarbeitungsvorrichtung und einer Speichervorrichtung in einer Rechenvorrichtung dar. Die Rechenvorrichtung umfaßt eine Speichervorrichtung 100 enthaltend einen Verteilerteil (Zuordnungsteil) 100a, einen Speicherteil 100b, einen Verzögerung-Verarbeitungsteil (Zurückstellungsteil) 100c und einen Löschsteuerteil 100d. Die Kanäle 101 und 102 sorgen für die Übertragung von Daten von einer Verarbeitungsvorrichtung 103 zur Speichervorrichtung 100 und von der Speichervorrichtung 100 zur Verarbeitungsvorrichtung 103.
  • Die Übertragung sämtlicher Daten zwischen der Verarbeitungsvorrichtung 103 und der Speichervorrichtung 100 geschieht durch die Verschickung von Datenpaketen (diese Pakete werden im folgenden mit "Token" bezeichnet). Beim Empfang eines Speicherbereichanforderung-(SRQ)-Tokens 104 im Verteilerteil 100a der Speichervorrichtung 100 schickt dieser je nach der Größe des angeforderten Bereichs eine Anfangsadresse (A) in einem Token (PNT) 105 aus. Beim Empfang eines Schreib-(WRT)-Tokens 106 oder eines Lese-(READ)-Tokens 107 im Speicherteil 100b beantwortet dieser das Schreib-Token durch Eintragen seines Parameters V in die Adresse A, und er beantwortet das Lese-Token durch Auslesen des Inhalts V der Adresse A und Übertragen der Lesedaten an die Verarbeitungsvorrichtung 103 als ein Daten-(DT)-Token 108. Außer im Falle eines Schreib-Tokens führt jedes von der Speichervorrichtung 100 empfangene Token zur Erzeugung eines Tokens zur Übertragung zur Verarbeitungsvorrichtung. Die Antworten werden durch einen Parameter Ra identifiziert.
  • Der Verzögerung-Verarbeitungsteil 100c und der Löschsteuerteil 100d befassen sich nicht direkt mit der Verschickung oder dem Empfang von Token. Der Verzögerung- Verarbeitungsteil 100c führt die Abwicklung von Lese-Token durch, die in Zusammenhang mit noch nicht beim Speicherteil 100b eingetroffenen bzw. gespeicherten Daten stehen, welche Token deshalb verzögert werden müssen, und der Löschsteuerteil 100d führt die Funktion einer Rückführung eines Speicherbereichinhalts in seinen ursprünglichen Zustand durch, wenn jener Speicherbereich nicht mehr benutzt ist.
  • Die verschiedenen Arten von Token unterscheiden sich durch einen Code, der Teil jedes Tokens bildet. Fig. 3 stellt Beispiele zur Gestalt jedes Tokens dar. Die Zahlzeichen 464 bis 468 entsprechen jeweils den Zahlzeichen 104, 106, 107, 105 und 108 in Fig. 2. Unter Bezugnahme auf Fig. 3 umfaßt jedes Token vier Felder, nämlich ein erstes Codefeld 451, ein zweites Feld 452, ein drittes Feld 453 und ein viertes Feld 454. Das erste Codefeld 451 wird zur Unterscheidung der verschiedenen Tokenarten eingesetzt, und im Beispiel in Fig. 3 sind ihm 4 Bit zugewiesen, mit denen die Identifizierung von sechzehn unterschiedlichen Tokenarten möglich ist. Aus Gründen der Bequemlichkeit umfaßt jedes der Felder 452 bis 454 im dargestellten Beispiel insgesamt vierundzwanzig Bit, aber die richtige Wahl für diesen Wert läßt sich nach Systemeignung vornehmen. Die schattierten Flächen in den Diagrammen stellen nicht benutzte Felder dar.
  • Die Fig. 4a bis 4e dienen einer Erläuterung eines Verfahrens gemäß dem Stand der Technik zur Löschung des Inhalts jeder Adresse in einem Speicherteil. In den Diagrammen bezeichnen die Zahlzeichen 610 und 611 jeweils einen Löschsteuerteil und einen Speicherteil. Die Kanäle 601 und 602 sind zum Tragen von Token zu und von einem dem Teil 100a in Fig. 2 entsprechenden (nicht dargestellten) Verteilerteil vorgesehen. Die Kanäle 615 und 616 sind zum Tragen von Token zwischen dem Löschsteuerteil 610 und dem Speicherteil 611 vorgesehen. Es wird nun die Art und Weise erläutert, mit der beim Stand der Technik jede Adresse eines Bereichs 640 innerhalb des Speicherteils 611 gelöscht wird. Die Anfangsadresse des Speicherbereichs 640 ist mit A bezeichnet, und die Größe jenes Speicherbereichs, nämlich die im Speicherbereich enthaltene Anzahl von Adressen, ist mit Z bezeichnet.
  • Wenn der Speicherbereich 640 nicht mehr benutzt ist, erzeugt der Löschsteuerteil 610 - unter Bezugnahme auf Fig. 4a - ein Lösch-(CLR)-Token 620, welches er zum Speicherteil 611 schickt. Das Token (CLR) 620 weist drei Parameter auf, und zwar eine Anfangsadresse A des Bereichs, die Größe Z des Bereichs und die Anzahl der Adressen C, die gelöscht wurden. Unmittelbar nach Bildung des Tokens (CLR) 620 - wie im in Fig. 4a gezeigten Fall - ist die Anzahl der gelöschten Adressen Null, und deshalb gilt C=0.
  • Beim Empfang von Token (CLR) 620 im Speicherteil 611 entnimmt dieser dem Token die Anfangsadresse A und die Löschwortanzahl C und kombiniert diese zur Bildung der zu löschenden Adresse, das heißt A + C. Im in Fig. 4a gezeigten Fall gilt C = 0 und deshalb wird der Inhalt der Anfangsadresse, nämlich die Adresse A gelöscht. Nachdem diese Freigabe erfolgt ist, erzeugt der Speicherteil 611 - unter Bezugnahme auf Fig. 4b - ein Freigabe-Bestätigt-Token (CAK) 622. Die vom Token (CAK) 622 gehaltenen Parameter sind die gleichen wie im Falle des Tokens (CLR) 620.
  • Beim Empfang des Bestätigung-Tokens (CAK) 622 im Löschsteuerteil 610 entnimmt dieser die Parameter Z (die Größe des Bereichs) und C (die Anzahl der gelöschten Worte). Je nach den Werten der empfangenen Parameter führt er die eine oder die andere der unten beschriebenen Handlungen (a) und (b) aus.
  • (a) ist C kleiner als (Z - 1), so stellt der Löschsteuerteil 610 - unter Bezugnahme auf Fig. 4c - ein neues Lösch-Token 624 her. Die Anzahl C der gelöschten Worte im Token 624 ist um eins größer als die Anzahl des vorherigen Lösch-Tokens 622;
  • (b) ist C gleich (Z - 1), so stellt der Löschsteuerteil 610 - unter Bezugnahme auf Fig. 4e - ein Freieplatz-Token (LIB) 628 her. Unter Bezugnahme auf Fig. 4d bedeutet die Tatsache, daß C = (Z - 1) gilt, daß vom Löschsteuerteil ein Bestätigung-Token (CAK) 626 empfangen worden ist, wobei Token 626 anzeigt, daß (Z - 1) Adressen gelöscht worden sind, was heißt, daß sämtliche Wörter in Bereich 640 gelöscht worden sind. Das Freieplatz-Token (LIB) 628 soll eine Übertragung des Tatbestandes, daß Bereich 640 wieder nutzbar ist, zum Verteilerteil (100a in Fig. 2 entsprechend) bewirken.
  • Durch die oben aufgeführte Vorgehensweise läßt sich ein spezifischer Bereich im Speicherteil 611 löschen. Es wurde ein Verfahren zur Beschleunigung der Speicherfreigabe und deshalb zur Beschleunigung von Zugriff auf einen nicht mehr benutzten Speicherbereich vorgeschlagen. Dieses bekannte Verfahren stützt sich auf die Aufteilung des Speicherteils 611 in mehr als eine Einheit durch einen Verschachtelungsvorgang, wie im folgenden unter Bezugnahme auf die Fig. 5a bis 5e erläutert wird.
  • Unter Bezugnahme auf die Fig. 5a bis 5e wird zur vereinfachten Erläuterung des bekannten Verfahrens der Speicher in nur zwei Einheiten 711 und 712 aufgeteilt. Die Speichereinheit 711 enthält geradzahlige Adressen und die Einheit 712 enthält ungeradzahlige Adressen. Die Zahlzeichen 701 bis 716 in den Fig. 5a bis 5e entsprechen jeweils den Zahlzeichen 601 bis 616 in den Fig. 4a bis 4e. Unter Bezugnahme auf Fig. 5a ist ein Speicherbereich der Größe Z und Anfangsadresse A in einen ersten, Z/2 geradzahlige Adressen umfassenden Bereich 740 und einen Z/2 ungeradzahlige Adressen umfassenden Bereich 741 aufgeteilt. Es folgt unten eine Erläuterung des bekannten Verfahrens zur Löschung dieser Bereiche.
  • Der Löschsteuerteil 710 erzeugt - wie in Fig. 5a gezeigt - zwei Lösch-Token 730 und 731. Die Parameter von Token CLR 730 sind A, Z und C = 0, und die von Token 731 sind (A + 1), Z und C = 0.
  • Die Speichereinheit 711 empfängt das Token CLR 730, und die Speichereinheit 712 empfängt Token CLR 731. Beim Empfang eines Anspruch-Tokens in jeder Speichereinheit trifft diese aus den empfangenen Parametern die Entscheidung über die zu löschende Adresse und löscht jene Adresse. Bei der gelöschten Adresse handelt es sich um die Summe der Anfangsadresse und Anzahl der gelöschten Wörter, d.h. A + C. Unter Bezugnahme auf Fig. 5b gilt C = 0, womit Adresse A und (A + 1) gelöscht werden. Nach Abschluß dieses Löschungsvorgangs erzeugen die Einheiten 740 und 741 jeweils die Freigabe-Bestätigung-Token (CAK) 732 bzw. 733, welche die gleichen Parameter aufweisen.
  • Beim Empfang von Token (CAK) 732 und 733 im Löschsteuerteil 710 überprüft dieser erneut den Bereichparameter Z und den die Anzahl gelöschter Wörter symbolisierenden Parameter C. Je nach seinen Befunden führt er Vorgang (a) oder Vorgang (b) wie unten beschrieben aus.
  • (a) Falls C kleiner als Z ist, erzeugt der Löschsteuerteil 710 - unter Bezugnahme auf Fig. 5c - neue CLR-Token 734 und 735. Hinsichtlich ihrer Parameter sind die Anfangsadresse und die Größe des Bereichs gleich jenen des Bestätigung-Tokens (CAK), aber die Anzahl der gelöschten Wörter ist um zwei größer als jene vom Bestatigung-Token (CAK). Im Beispiel der Fig. 5b und c werden CLR 734 und CLR 735 jeweils aus CAK 732 bzw. CAK 733 hergestellt.
  • (b) Falls C gleich Z ist, wird der Anfangsadresse- Parameter A und der Bereichsgröße-Parameter Z des Bestätigung- Tokens CAK aus den Speichereinheiten 711 und 712 vom Löschsteuerteil 710 erneut überprüft und er befindet darüber, ob ein Tokenstapel 750 gegebenenfalls ein Token CAK enthält, welches eine nur um 1 von A verschiedene Anfangsadresse (d.h. es gilt A+1 oder A-1) aufweist und die einen gleichen Größenparameter aufweist.
  • Falls sich kein solches CAK Token im Tokenstapel 750 befindet, wird das CAK Token ebenso im Tokenstapel gespeichert, wie die mit Bestätigung-Token 736 (siehe Fig. 5d) zusammenhängenden Informationen.
  • Falls ein solches CAK Token im Tokenstapel 750 gefunden wird, wird jenes CAK Token dem Tokenstapel 750 entnommen und mit dem empfangenen CAK Token 737 assoziiert, und es wird - wie in Fig. 5e gezeigt - ein Freieplatz-Token (LIB) 738 erzeugt.
  • Fig. 6 stellt Beispiele der Gestalt der im oben aufgeführten Vorgang benutzten Token CLR, CAK und LIB dar.
  • Durch das oben beschriebene Bereichfreigabeverfahren ergeben sich Probleme. Der Speicher wird durch Verschachtelung in zwei oder mehrere Einheiten aufgeteilt, und diese Einheiten führen ihre Verarbeitung parallel durch, so daß ein Zugriff viel rascher erfolgt, aber das bekannte Bereichlöschungsverfahren weist sich durch die folgenden Nachteile aus:
  • (a) Es muß im Löschsteuerteil 710 unbedingt ein Tokenstapel 750 vorhanden sein, was die Hardware des Löschsteuerteils 710 kompliziert gestaltet.
  • (b) Mit Zunahme der Anzahl der ihre Verarbeitung parallel durchführenden Einheiten nimmt die Anzahl der Bestätigung-Token CAK, die zu jeder gegebenen Zeit im Tokenstapel gehalten werden sollte, zu, so daß das Fassungsvermögen des Tokenstapels groß sein muß.
  • (c) Nach erfolgtem Löschen des verhältnismäßig kleinen Bereichs innerhalb einer Einheit muß ermittelt werden, ob gegebenenfalls vom Tokenstapel 750 ein Löschbestätigung-Token (CAK) von den anderen Einheiten empfangen worden ist, und dieser Vorgang braucht seine Zeit.
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine Vorrichtung und ein Verfahren zur Steuerung der Löschung eines Speicherbereichs zu liefern, womit die oben aufgeführten Probleme umgangen oder gemildert werden und eine einfache und rasche Durchführung des Löschungsvorgangs möglich ist.
  • Die vorliegende Erfindung liefert ein Verfahren zur Steuerung der Löschung eines Speicherbereichs, um einen Speicherbereich in einer Speichervorrichtung zu löschen, worin der zu loschende Bereich in eine Reihe von Unterbereichen aufgeteilt ist, von denen jeder durch eine aufeinanderfolgende Reihe von Adressen festgelegt ist, Bereichlösch-Token bezüglich jedes Unterbereichs parallel von einer Löschsteuervorrichtung zum Löschen individueller Adressen in den jeweiligen Unterbereichen eine um die andere in Reihenfolge der Adressen zur Speichervorrichtung geschickt werden und nach erfolgter Löschung sämtlicher Adressen in einem Unterbereich ein Freieplatz-Token erzeugt wird, um anzuzeigen, daß der gelöschte Unterbereich zur Nutzung frei ist, selbst wenn ein anderer Unterbereich noch nicht gelöscht worden ist.
  • Die Erfindung liefert ferner eine Vorrichtung zur Steuerung der Löschung eines Speicherbereichs, umfassend Mittel zur Aufteilung eines zu löschenden Speicherbereichs in eine Reihe von Unterbereichen, von denen jeder durch eine aufeinanderfolgende Reihe von Adressen festgelegt ist, Mittel zur parallelen Erzeugung von Bereichlösch-Token bezüglich jedes Unterbereichs, um so individuelle Adressen in den jeweiligen Unterbereichen eine um die andere in Reihenfolge der Adressen zu löschen, Mittel zur Ermittlung einer Freigabe sämtlicher Adressen in einem Unterbereich und auf das Ermittlungsmittel ansprechende Mittel zur Erzeugung eines Freieplatz-Tokens, um anzuzeigen, daß der gelöschte Unterbereich zur Nutzung frei ist, selbst wenn ein anderer Unterbereich noch nicht gelöscht worden ist.
  • Die vorliegende Erfindung ist nachfolgend beispielhaft anhand der beigefügten Zeichnungen beschrieben. In den Zeichnungen zeigen:
  • Fig. 1 ein schematisches Diagramm der Gestalt der in Systemen gemäß dem Stand der Technik eingesetzten Datenwörter;
  • Fig. 2 ein Blockdiagramm einer Löschsteuervorrichtung gemäß dem Stand der Technik;
  • Fig. 3 ein schematisches Diagramm der Gestalt der im Stand der Technik der Fig. 2 eingesetzten Token;
  • Die Fig. 4a bis 4e Darstellungen zum Betrieb einer Löschsteuervorrichtung gemäß dem Stand der Technik;
  • Die Fig. 5a bis 5e Darstellungen eines Verfahrens gemäß dem Stand der Technik zur parallelen Löschung von Einheiten eines Speichers;
  • Fig. 6 ein schematisches Diagramm der Gestalt der im in den Fig. 5a bis 5e beschriebenen Verfahren eingesetzten Token;
  • Fig. 7 ein Blockdiagramm einer Vorrichtung zur Löschsteuerung eines Speicherbereichs gemäß der vorliegenden Erfindung; und
  • Die Fig. 8a bis 8e Darstellungen des erfindungsgemäßen Verfahrens angewendet auf die Vorrichtung gemäß der Vorrichtung der Fig. 7.
  • Unter Bezugnahme auf Fig. 7 und die Fig. 8a bis 8e der beigefügten Zeichnungen wird die vorliegende Erfindung nachfolgend beschrieben.
  • Bei Fig. 7 handelt es sich um ein Blockdiagramm einer Vorrichtung zur Löschsteuerung eines Speicherbereichs gemäß einer erfindungsgemäßen Ausführungsform. In Fig. 7 bezeichnet das Zahlzeichen 1 eine der Verarbeitungsvorrichtung 103 in Fig. 2 entsprechende Verarbeitungsvorrichtung. Ein Löschsteuerteil 2 und ein Speicherteil 3 entsprechen jeweils dem Löschsteuerteil 100d bzw. dem Speicherteil 100b in Fig. 2. Die Übertragungskanäle 4 und 5 übertragen die Token zwischen der Verarbeitungsvorrichtung 1, dem Verteilerteil 2 und dem Speicherteil 3, und sie entsprechen den Linien 101 bzw. 102 in Fig. 2. Im Löschsteuerteil 2 bringt ein Puffer 2a vorübergehend vom Kanal 4 empfangene Token unter. Ein Steuerteil 2b unterscheidet den Typus des empfangenen Tokens und bildet je nach dessen Typus ein Ausgabe-Token. Ein Puffer 2d schickt die Token vom Steuerteil 2b zum Kanal 5. Im Speicherteil bringt ein Puffer 3a vorübergehend die vom Kanal 4 empfangenen Token unter. Ein Steuerteil 3b unterscheidet empfangene Token nach ihrem Typus und je nach ihrem Typus werden ihre Parameter in Speicher 3c gespeichert oder der Inhalt des Speichers 3c ausgelesen. Ein Puffer 3c schickt die Token von der Steuervorrichtung 3b zur Kanalvorrichtung 5.
  • Unter Bezugnahme auf die Fig. 8a bis 8e werden die erfindungsgemäßen Verfahren zur parallelen Löschung von Speicherbereich nachfolgend beschrieben. Zahlzeichen 210 bezeichnet einen dem Teil 2 der Fig. 7 entsprechenden Löschsteuerteil, und Zahlzeichen 211 und 212 bezeichnen Aufteilungen des Speichers 3c der Fig. 7. Zahlzeichen 201 bis 216 bezeichnen den Komponenten 701 bis 716 der Fig. 5a bis 5e entsprechende Komponenten. Geradeso wie im Fall des Speicherteils im Beispiel der Fig. 5a bis 5e ist der Speicherteil in den Fig. 8a bis 8e in die beiden Einheiten 211 und 212 aufgeteilt. Die Speichereinheit 211 umfaßt geradzahlige Adressen, und die Speichereinheit 212 umfaßt ungeradzahlige Adressen. Im Anschluß wird der Löschungsvorgang eines Bereichs mit Anfangsadresse A und einer Bereichsgröße Z erläutert.
  • Der Löschsteuerteil 210 erzeugt zuerst die Lösch-Token (CSR) 230 und 231. Die Parameter dieser Token sind die Vorschubadresse, die Größe des Bereichs und die Anzahl gelöschter Adressen. Beim Erzeugen dieser Lösch-Token durch den Löschsteuerteil 210 teilt dieser den zu löschenden Bereich in eine Reihe von aus aufeinanderfolgenden Adressen gebildete Unterbereiche auf. Unter Bezugnahme auf Fig. 8a gilt im beschriebenen Beispiel für die Anfangsadresse der Parameter A für CSR 230 und (A + Z/2) für CSR 231. Zu Beginn beträgt die Anzahl gelöschter Adressen 0.
  • Beim Empfang der CSR Token 230 und 231 in den Speichereinheiten 211 und 212 entscheiden diese über die zu löschenden Adressen auf Grundlage der empfangenen Parameter. Die zu löschenden Adressen werden aus der Summe der Anfangsadresse und der Anzahl gelöschter Wörter bestimmt. Da im Beispiel der Fig. 2a C = 0 gilt, handelt es sich bei der zu löschenden Adresse bei CSR 230 und CSR 231 jeweils um A bzw. (A + Z/2).
  • Die Speichereinheiten 211 und 212 löschen den Inhalt der angezeigten Adressen und erzeugen für jedes der Eingang-Token (CLR) ein Löschbestätigung-Token (CAK), wie in Fig. 8b gezeigt. CAK 232 und 233 weisen die gleichen Parameter wie die entsprechenden Lösch-Token CLR 230 und 231 auf.
  • Beim Empfang der Token CAK 232 oder 233 im Löschsteuerteil 210 überprüft dieser die beiden Parameter erneut, das heißt die Größe des Bereichs und die Anzahl gelöschter Adressen. Anschließend fährt er je nach Resultat seiner Überprüfung gemäß der im Anschluß folgenden Erläuterung fort.
  • (a) Falls C kleiner als Z/2 ist, erzeugt der Löschsteuerteil - unter Bezugnahme auf Fig. 8c - neue Löschanzeige-Token (CLR) 234 und 235. Zu dieser Zeit ist die Löschwortzahl nur um eins größer als jene vom vorhergehenden Bestätigung-Token. In den Beispielen der Fig. 8b und 8c wird CLR 234 aus CAK 232 und CLR 235 aus CAK 233 hergestellt.
  • (b) Falls C gleich Z/2 ist, erzeugt der Löschsteuerteil 210 ein Freieplatz-Token (LIB) mit der gleichen Anfangsadresse und Bereichsgröße wie das vorhergehende CAK Token. In den Beispielen der Fig. 8d und Fig. 8e wird Token LIB 239 aus dem Bestätigung-Token CAK 236 erzeugt.
  • Bei Anwendung des oben beschriebenen Beispiels ist ein Fortgang des Löschungsvorgangs so möglich, als ob der Speicherteil einfach durch eine Erzeugung von mehreren Freie-Token in eine Einzeleinheit verschachtelt sei, obwohl der Speicherteil in mehr als eine Einheit 211 und 212 verschachtelt und aufgeteilt worden ist. Mit jedem Verschicken von CLR und CAK Token zwischen dem Löschsteuerteil und den Speichereinheiten wird ein Wort gelöscht. Da die Verschickung jedes Tokens nicht zur gleichen Zeit passiert, ist es - unter Bezugnahme auf Fig. 8d und 8e - zulässig, CAK 236 in LIB 239 sowie CAK 237 in CLR 238 zu ändern, selbst wenn die Situation - unter Bezugnahme auf Fig. 8d - auftritt, daß nach erfolgtem Löschen der ersten Hälfte des Bereichs 240, 241 die Loschung der zweiten Hälfte des Bereichs 242, 243 noch nicht beendet ist. Es ist deshalb nicht erforderlich, einen Tokenstapel 750 gemäß dem Beispiel der Fig. 5a bis 5e aus dem Stand der Technik vorzulegen. Dies folgt aus der Aufteilung des zu löschenden Bereichs in eine Reihe von Unterbereichen, von denen jeder durch eine Reihe von aufeinanderfolgenden Adressen festgelegt ist.
  • Im Beispiel gemäß dem Stand der Technik könnte beispielsweise die Löschung der ungeradzahligen Adreßgruppe bereits, die Löschung der geradzahligen Adreßgruppe noch nicht beendet sein, so daß eine Erzeugung eines Freieplatz-Tokens nicht möglich ist. Dies läßt sich auf die Tatsache zurückführen, daß zwecks Löschung von Anfang an zwei Lösch-Token erzeugt werden.
  • Andererseits ist es - unter Bezugnahme auf das tatsächliche Beispiel - nach Abschluß der Löschung der Bereiche 242 und 243 und Erzeugung des entsprechenden Freieplatz-Tokens LIB und dessen Verschickung zum Verteilerteil (100a in Fig. 2) möglich, solange das LIB Token 239 noch nicht wieder eingesetzt worden ist, einen freien Bereich der ursprünglichen Größe durch seine Zusammenfügung damit herzustellen.
  • In der vorangehenden Erläuterung wird das Beispiel gegeben, bei dem der Speicherteil in zwei Einheiten aufgeteilt worden ist. Die vorliegende Erfindung kann jedoch genau in ihrer bestehenden Form eingesetzt werden, selbst wenn der Speicherbereich beispielsweise durch seine vierfache Verschachtelung in vier Einheiten oder durch seine achtfache Verschachtelung in acht Einheiten aufgeteilt ist.
  • In der vorangehenden Erläuterung wird man als zulässig würdigen, daß der erste Parameter des CLR Tokens die Anfangsadresse für jeden der unterteilten Bereiche sei und der letzte Parameter die Größe sei, welche die gleichen Bereiche symbolisiert.
  • Die erfindungsgemäßen Vorteile lassen sich wie folgt zusammenfassen:
  • (1) Da der zu löschende Bereich seriell durch Adressen aufgeteilt ist, ist es möglich, für jeden gelöscht wordenen Unterbereich ein Bereichfreigabe-Token zu erzeugen, und es bedarf keiner Vorsehung von Mitteln zur Token-Speicherung im Löschsteuerteil.
  • (2) Dementsprechend ist keine Untersuchung erforderlich, ob gegebenenfalls irgendein assoziiertes Token bereits im Löschsteuerteil gespeichert worden ist, wenn die Löschung eines Unterbereichs abgeschlossen ist, und der Vorgang innerhalb des Löschsteuerteils gestaltet sich damit einfacher und schneller.
  • (3) Es besteht die Möglichkeit, daß die Anzahl von Unterbereichen, in die ein Bereich aufgeteilt ist, vom Verfahren der Verschachtelung unabhängig ist. Eine Aufteilung der Bereiche in eine ungeradzahlige Anzahl von Unterbereichen ist möglich. Dementsprechend ist eine Entscheidung über die Anzahl der für die Umstände am ehesten geeigneten Aufteilungen möglich, und flexible Steuerung ist möglich.
  • (4) Nicht jeder der Unterbereiche, in welche der Bereich aufgeteilt ist, muß notwendigerweise die gleiche Größe haben, und damit läßt sich die Größe jedes der Unterbereiche nach Ermessen wählen.
  • Schließlich besteht die Möglichkeit, ein flexibles Löschsteuersystem zu haben, welches sich den besonderen Bedingungen einer Speichereinheit passend herstellen läßt.

Claims (4)

1. Verfahren zur Steuerung der Löschung eines Speicherbereichs, um einen Speicherbereich in einer Speichervorrichtung zu löschen, worin der zu löschende Bereich in eine Reihe von Unterbereichen aufgeteilt ist, von denen jeder durch eine aufeinanderfolgende Reihe von Adressen festgelegt ist, Bereichlösch-Token bezüglich jedes Unterbereichs parallel von einer Löschsteuervorrichtung zum Löschen individueller Adressen in den jeweiligen Unterbereichen eine um die andere in Reihenfolge der Adressen zur Speichervorrichtung geschickt werden und nach erfolgter Löschung sämtlicher Adressen in einem Unterbereich ein Freieplatz-Token erzeugt wird, um anzuzeigen, daß der gelöschte Unterbereich zur Nutzung frei ist, selbst wenn ein anderer Unterbereich noch nicht gelöscht worden ist.
2. Verfahren zur Steuerung der Löschung eines Speicherbereichs nach Anspruch 1, in welchem mit jedem Löschen einer individuellen Unterbereichsadresse ein Bestätigung-Token zur Löschsteuervorrichtung geschickt wird, wobei das Bestätigung-Token bewirkt, daß die Löschsteuervorrichtung entweder ein anderes Bereichlösch-Token zur mit der nächstfolgenden Adresse hinter der ersten gelöschten Adresse zusammenhängenden Speichervorrichtung schickt, oder daß sie, wenn die erste gelöschte Adresse die letzte Adresse im Unterbereich ist, das besagte Freieplatz-Token schickt.
3. Verfahren nach Anspruch 2, worin jedes Bereichlösch-Token und jedes Bestätigung-Token folgendes umfaßt: einen Parameter zur Anzeige der Anfangsadresse des jeweiligen Unterbereichs, einen Parameter zur Anzeige der Anzahl der Adressen im jeweiligen Unterbereich und einen Parameter zur Anzeige der Anzahl der früher gelöschten Adressen des jeweiligen Unterbereichs, die Speichervorrichtung, die das Löschen der der Anfangsadresse plus der früher gelöschten Anzahl eines empfangenen Bereichlösch-Tokens entsprechenden Adresse vornimmt, und die Löschsteuervorrichtung, die das Freieplatz-Token erzeugt, wenn die früher gelöschte Anzahl und die Anzahl der in einem empfangenen Bestätigung-Token angezeigten Unterbereichsadressen gleich sind.
4. Vorrichtung zur Steuerung der Löschung eines Speicherbereichs, umfassend Mittel zur Aufteilung eines zu löschenden Speicherbereichs in eine Reihe von Unterbereichen, von denen jeder durch eine aufeinanderfolgende Reihe von Adressen festgelegt ist, Mittel zur parallelen Erzeugung von Bereichlösch- Token bezüglich jedes Unterbereichs, um so individuelle Adressen in den jeweiligen Unterbereichen eine um die andere in Reihenfolge der Adressen zu löschen, Mittel zur Ermittlung einer Freigabe sämtlicher Adressen in einem Unterbereich und auf das Ermittlungsmittel ansprechende Mittel zur Erzeugung eines Freieplatz-Tokens, um anzuzeigen, daß der gelöschte Unterbereich zur Nutzung frei ist, selbst wenn ein anderer Unterbereich noch nicht gelöscht worden ist.
DE8787304319T 1986-05-29 1987-05-15 Vorrichtung und verfahren zur steuerung der loeschung eines speicherbereichs. Expired - Fee Related DE3784189T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB868613070A GB8613070D0 (en) 1986-05-29 1986-05-29 Memory space clearing control

Publications (2)

Publication Number Publication Date
DE3784189D1 DE3784189D1 (de) 1993-03-25
DE3784189T2 true DE3784189T2 (de) 1993-06-03

Family

ID=10598629

Family Applications (1)

Application Number Title Priority Date Filing Date
DE8787304319T Expired - Fee Related DE3784189T2 (de) 1986-05-29 1987-05-15 Vorrichtung und verfahren zur steuerung der loeschung eines speicherbereichs.

Country Status (4)

Country Link
EP (1) EP0248557B1 (de)
JP (1) JPS63271549A (de)
DE (1) DE3784189T2 (de)
GB (1) GB8613070D0 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0552288A1 (de) * 1990-10-03 1993-07-28 Thinking Machines Corporation Paralleles rechnersystem
CN102033804A (zh) 2009-09-29 2011-04-27 国际商业机器公司 辅助内存分析的方法和系统

Also Published As

Publication number Publication date
DE3784189D1 (de) 1993-03-25
EP0248557B1 (de) 1993-02-17
EP0248557A3 (en) 1989-10-18
JPS63271549A (ja) 1988-11-09
EP0248557A2 (de) 1987-12-09
GB8613070D0 (en) 1986-07-02

Similar Documents

Publication Publication Date Title
DE3784387T2 (de) Vorrichtung und verfahren zur parallelen verwaltung von freien speicherbereichen.
DE69425554T2 (de) System zur dynamischen zuordnung von speicher registern zum herstellen von pseudowarteschlangen
EP0115609B1 (de) Schaltungsanordnung zur Adressierung der Speicher mehrerer datenverarbeitender Einrichtungen in einem Mehrprozesssorsystem
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE2424820C3 (de) Einrichtung zur Durchsuchung eines Datenspeichers
DE1499182C3 (de) Datenspeichersystem
DE3327379A1 (de) Einrichtung und verfahren zum umordnen von datensaetzen
DE3416939A1 (de) Verfahren zur steuerung von betriebseinrichtungen
DE4019135A1 (de) Serieller speicher auf ram-basis mit parallelem voraus-lesen
DE1774052B1 (de) Rechner
DE2854782C2 (de) Datenverarbeitungssystem und Verfahren zum Ersetzen eines Datenblocks in einem Schnellspeicher
DE2031040B2 (de) Verfahren zur festlegung des zugangs von mehreren benutzern zu einer einheit einer datenverarbeitungsanlage und anordnung zur durchfuehrung des verfahrens
DE2432608A1 (de) Speicheranordnung fuer datenverarbeitungseinrichtungen
DE2054941C2 (de) Anordnung zur Auswahl von Datensätzen
DE2744321A1 (de) Bildschirmgeraet
DE19538448B4 (de) Datenbankmanagementsystem sowie Datenübertragungsverfahren
DE3784189T2 (de) Vorrichtung und verfahren zur steuerung der loeschung eines speicherbereichs.
DE2142374A1 (de) Datenverarbeitungseinnchtung
DE3787213T2 (de) Verzögerungsverwaltungsverfahren und -vorrichtung.
DE1250489B (de) I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher
DE2233164B2 (de) Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern
DE1524006A1 (de) Vorrichtung zum Erhoehen der Informationsuebergaberate eines Speichers
DE1774041B2 (de) Datenverarbeitungsanlage mit einer einrichtung zur transparenten uebersetzung von daten
DE2419522A1 (de) Verfahren und anordnung zur unterteilung eines oder mehrerer nicht benutzter bereiche eines mit einem rechner verbundenen speichers
DE1774212B2 (de) En 20417 12.08.67 " 37132 bez: datenverarbeitungsanlage

Legal Events

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