DE2310631A1 - Speicherhierarchie fuer ein datenverarbeitungssystem - Google Patents

Speicherhierarchie fuer ein datenverarbeitungssystem

Info

Publication number
DE2310631A1
DE2310631A1 DE19732310631 DE2310631A DE2310631A1 DE 2310631 A1 DE2310631 A1 DE 2310631A1 DE 19732310631 DE19732310631 DE 19732310631 DE 2310631 A DE2310631 A DE 2310631A DE 2310631 A1 DE2310631 A1 DE 2310631A1
Authority
DE
Germany
Prior art keywords
data
ring
read
write
opposite direction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19732310631
Other languages
English (en)
Other versions
DE2310631C3 (de
DE2310631B2 (de
Inventor
Vincent Anthony Cordi
Ted Young Nickel
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2310631A1 publication Critical patent/DE2310631A1/de
Publication of DE2310631B2 publication Critical patent/DE2310631B2/de
Application granted granted Critical
Publication of DE2310631C3 publication Critical patent/DE2310631C3/de
Expired legal-status Critical Current

Links

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C19/00Digital stores in which the information is moved stepwise, e.g. shift registers
    • G11C19/02Digital stores in which the information is moved stepwise, e.g. shift registers using magnetic elements
    • G11C19/08Digital stores in which the information is moved stepwise, e.g. shift registers using magnetic elements using thin films in plane structure
    • G11C19/0875Organisation of a plurality of magnetic shift registers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

Description

Böblingen, den 27. Februar 1973 bu-sn
Anmelderin: International Business Machines
Corporation, Armonk, N.Y. 10504
Amtliches Aktenzeichen: Neuanmeldung
Aktenzeichen der Anmelderin: EN 972 001
Speicherhierarchie für ein Datenverarbeitungssygtem
Die Erfindung betrifft ein Datenverarbeitungssystem, in dem eine Vielebenenspeicherhierarchie Hochgeschwindigkeits-, Zwischengeschwindigkeit s- und Niedriggeschwindigkeitsspeicher in drei verschiedenen Hierarchie-Ebenen umfaßt.
Im allgemeinen sind in einer Vielebenenspeicherhierarchie Anordnungen und Systemarten mit unterschiedlichen Geschwindigkeiten und Speicherkapazitäten sowie Kosten pro Speicherzelle in einer Weise organisiert, daß sich nach außen das Bild einer großen, schnellen Einzelebenenspeichereinheit ergibt. Die sogenannte virtuelle große und schnelle Speicherhierarchie ist so realisiert, daß für sie ein Bruchteil der Kosten anfällt, die bei Verwendung der schnellsten Zugriffstechnik an sich erforderlich wären. Da der zentrale Prozessor in typischer Weise nur Zugriff zur schnellsten Speicherebene hat, wird ein Speicherbereitstellungsund Verteilungsverfahren benötigt, um eine Datenübertragung von Speicherebene zu Speicherebene in brauchbarer Weise zu gewährleisten. Ein solches Verfahren besteht darin, den auf jeder Ebene zur Verfügung stehenden Speicherbereich der Hierarchie in Blöcke fester Größe, genannt Seiten, aufzuteilen, wobei jede Speicherseite ihre eigene Adresse in jeder Ebene besitzt.
Wird Information aus dem System angefordert, die nicht in der
309842/0777
schnellsten Speicherebene vorliegt, dann muß sie aus tiefer liegenden Ebenen der Speicherhierarchie in einer Seitenoperation hervor gefördert werden. Wie allgemein üblich, sind die schnelleren Speicherebenen immer voll besetzt, so daß im oben angeführten Fall vorhandene Information also erst beseitigt werden muß, um sie durch neue Information zu ersetzen. Dies gilt für alle Ebenen in der Hierarchie. Bei der Entscheidung, welche Seite entfernt werden muß, kann zweckmäßigerweise so verfahren werden, daß gewissermaßen laufend über die Seitenbenutzung Buch geführt wird und daß jeweils die Seite ausgewechselt wird, die am wenigsten in unmittelbarer Vergangenheit, also kürzlich, benutzt worden ist. Diese AuswechselungsStrategie wird als KAWB-Algorithmus bezeichnet. Bei Verwendung üblicher Speichertechnologien zur Erfüllung dieser Aufgabe jedoch ist der Aufwand in den niedrigeren Speicherebenen mit größerer Kapazität sehr hoch, da viele Seiten tabelliert werden müssen.
Es werden also Speicheranordnungen zweckmäßig sein, die neben hoher Kapazität auch einen relativ schnellen Zugriff gestatten.
Die Aufgabe der Erfindung besteht deshalb darin, eine Vielebenen-Speicherhierarchie der oben genannten Art bereit zu stellen, die in einfacher Weise aufzubauen und in zuverlässiger Weise unter geringstem Aufwand zu betreiben ist.
Erfindungsgemäß wird diese Aufgabe dadurch gelöst, daß die Speicherelemente in jeder Ebene in Blocks gleicher Größe zur Speicherung von Datenseiten aufgeteilt sind, wobei jede Seite auf jeder Ebene ihre eigene Adresse hat, der Prozessor Zugriff nur zum Hochgeschwindigkeitsspeicher, also zur schnellsten Ebene hat, programmgestaltende Mittel sowohl für Datenzugriffsanforderungen als auch zum Auswechseln von kürzlich am wenigsten benutzten Datenseiten in einer Ebene mit neuen Datenseiten von anderen Ebenen vorgesehen sind, und daß der Zwischengeschwindigkeitsspeicher enthält:
en 972 ooi 309842/0777
eine größere Anzahl Schieberegister unter Ausnutzung von magnetischen zylindrischen Einzelwanddomänen zur Informationsdarstellung, die je eine Lese-Schreibstelle zum Zugriff der Schieberegister bei Lese- und Schreiboperationen, je zu einem ersten Ring gekoppelte N-I weitere Stellen zum Verschieben der Daten ohne Belegen der Lese-Schreibstelle und Mittel zum Einsetzen und Beseitigen der Lese-Schreibstelle in den bzw. aus dem ersten Ring aufweisen, so daß sich ein zweiter Ring für die Übertragung der Daten von irgend einer der N-I übrigen Stellen in die Lese-Schreibstelle bildet; Mittel die im Ansprechen auf Datenzugriffsanforderung Daten im zweiten Ring in eine erste Richtung verschieben, um die angeforderten Daten auf die Lese-Schreibstelle zu übertragen;
eine Zähleinrichtung zum Verschieben der Daten in entgegengesetzter Richtung in die übrigen Stellen des ersten Rings, um die Daten nach der Reihenfolge der häufigsten kürzliehen Benutzung umzuordnen;
bei zu erfolgendem Seitenwechsel wirksame Steuermittel zum Verschieben der Datenseiten um eine Stelle in entgegengesetzter Richtung im ersten Ring und um eine Stelle in erster Richtung im zweiten Ring, um kürzlich am wenigsten benutzte Daten in die Lese-Schreibstelle zum Zwecke der Auswechslung zu verschieben und Steuermittel zum Verschieben der Datenseiten um eine Stelle in entgegengesetzter Richtung im ersten Ring, um die Daten entsprechend einer häufigsten kürzlichen Benutzung neu zu ordnen.
In vorteilhafter Weiterbildung ist die Erfindung ferner gekennzeichnet durch ein dem Niedriggeschwindigkeitsspeicher zugeordnetes Verzeichnis enthaltend:
eine Anzahl von Schieberegistern unter Ausnutzung von magnetischen zylindrischen Einzelwanddomänen zur In-
EN 972 ooi 30984 2/07 7 7
formationsdarstellung, um in entsprechenden Registerstellen eine symbolische Adresse und eine Einheitenadresse für in der Anordnung gespeicherte Datenseiten zu speichern, wobei jedes Register eine Lese- und Schreibstelle, die in einem ersten Ring zusammengeschlossenen übrigen Stellen und Mittel zum Koppeln der Lese-Schreibstelle und der übrigen Stellen zu einem zweiten Ring aufweist,
sowie Mittel die auf Datenzugriffsanforderung Daten in einer ersten Richtung im zweiten Ring verschieben, wobei in einem Vergleicher jede symbolische Adresse in der Leseiüchreibstelle mit einer Suchargumentadresse vergleichbar ist,
und Mittel zum Auslesen der entsprechenden Einheitenadressen für den Zugriff der Daten im Niedriggeschwindigkeitsspeicher bei Übereinstimmungsanzeige durch den Vergleicher.
Um den Schieberegisterinhalt so zu ordnen, daß die am meisten kürzlich benutzten Daten in der Lese-Schreibstation in der Stelle N, die zweitmeisten kürzlich benutzten Daten in der Stelle N-I, und schließlich die am wenigsten kürzlich benutzten Daten in der Stelle 1 bereit gehalten werden, dient also folgender Algorithmus:
1. Werden Daten an der Lese-Schreibstation angefordert, dann muß zunächst ein erster Verschiebungspfad einschließlich der Lese-Schreibstation benutzt werden, um in einer ersten Richtung, zum Beispiel links, so viele Verschiebungsschritte anzuwenden, daß das angeforderte Bit in die Lese-Schreibstelle N gelangen kann.
2. Ein zweiter Verschiebungspfad bei ausgeschlossener Lese-Schreibstation Anwendung findet, um die gleiche Verschiebeschrittanzahl in entgegengesetzter Richtung, zum Beispiel rechts, anzuwenden.
Dies resultiert immer in dynamischer Ordnung mit dem am wenigsten kürzlich benutzten Bit, das in der am weitesten entfernt
en 972 ooi 309842/0777
liegenden Stelle von der Lese-Schreibstelle gespeichert ist.
Zur Anwendung des KAWB-AIgorithmus auf eine Speicherebene mit
N Seiten muß die Länge des Registers N Bitstellen enthalten und
die Breite (Anzahl der Adreßbitregister, die in parallel betrieben werden) muß K sein, worin N = 2 ist. Alle Registerringe
werden synchron fortgeschaltet und die entsprechenden Bitstellen in jedem Ring ergeben zusammen jeweils den Inhalt einzelner Datenseiten mit ihren Adressen.
Bei Seitenaufruf werden die Seiten und ihre Adressen in diesen
Ringen dynamisch umgeordnet, wobei oben erläuterter Algorithmus
Anwendung findet. Muß jedoch eine Seite ausgetauscht werden, dann ist die Seite und Adresse in Stelle 1 auszulesen, um die auszutauschende Seite eingeben zu können. Diese Seite wird dann an die erste Stelle der Register gebracht, wobei alle ursprünglich in
Stelle i bewahrten Seiten in die Stelle i-1 übertragen werden.
Dies läßt sich durch Anwendung des folgenden verbesserten Schiebealgorithmus durchführen:
1. Um eine Position nach rechts verschieben, indem der zweite Verschiebungspfad Anwendung findet, der die gewünschte Seite von
Stelle 1 in die Stelle N-I überführt.
2. Schiebe eine Stelle nach links unter Anwendung des ersten Verschiebungspfades der die gewünschte Seite von der Stelle N-I
auf die Lese-Schreibstelle N überträgt.
3. Schiebe um eine Stelle nach rechts unter Anwendung des zweiten Verschiebungspfades, um die Seiten mit ihren Adressen umzuordnen .
Die Erfindung wird anhand von Ausführungsbeispielen mit Hilfe der nachstehend aufgeführten Zeichnungen im folgenden näher erläutert.
Es zeigen:
Fig. 1 eine schematische Darstellung der Speicher-EN 972 ooi 309842/07 7 7
hierarchie unter Anwendung vorliegender Erfindung,
Fig. 2 ein erfindungsgemäßes Speichersystem mit Daten
darstellung durch magnetische zylindrische Einzelwanddomänen.
Im Schema nach Fig. 1 zur Darstellung einer mehr oder weniger üblichen Speicherhierarchie sind ein Hochgeschwindigkeitsspeicher 5, ein Zwischenspeicher 9a, bestehend aus einem gemäß vorliegender Erfindung verbesserten Schieberegister, ein Niedriggeschwindigkeitsspeicher 6, wie z.B. ein Plattenspeicher, und ein Verzeichnisspeicher 9b, der ebenfalls gemäß der Erfindung verbesserte Schieberegister enthält, vorgesehen. Ein zentraler Prozessor 7 besitzt als einzige Datenzugriffsmöglichkeit einen Zugriff zu den im Hochgeschwindigkeitsspeicher 5 gespeicherten Daten und zwar über Datensammelleitung 8. Die Daten werden seitenweise eingeteilt, d.h. in Seiteninkremente zwischen den verschiedenen Speicherebenen 5, 9a, 6 der Speicherhierarchie übertragen, um unter an sich bekannter Programmsteuerung die Leitungsfähigkeit des Gesamtsystems zu steigern.
Die Anordnung 9 in Fig. 2 enthält mehrere Schieberegister 10-1 bis 10-D, 11-1 bis H-K und 12, die alle vorzugsweise zur Betriebsweise mit magnetischen zylindrischen Einzelwanddomänen wie an anderer Stelle im einzelnen beschrieben, ausgelegt sind. Da diese Schieberegister in ihrer Ausführung selbst nicht zur Erfindung gehören, sollen sie hier auch nicht näher beschrieben werden. Die Register 10-1 bis 10-D speichern Daten entsprechend ihren jeweiligen Bitpositionen. Als Teil eines Zwischenspeichers 9a in Fig. 1 speichern die Register 10-1 bis 10-D zur Datenverarbeitung benutzte Datenseiten. Andererseits enthalten die Register 10-1 und 10-D Einheitenadressen, wie z.B. für Steuereinheit, Antrieb, Abfühlkopf, Zylinder, Spur usw. solcher Daten, wenn das Register 9 lediglich ein Verzeichnis, wie z.B. 9b, für einen Niedriggeschwindigkeitsspeicher anstelle eines Zwischenspeichers in einer Hierarchie darstellt.
en 972 ooi 3 0 9 8 U 2 I 0 7 7 7
Die entsprechenden Bitpositionen der Register 11-1 bis H-K speichern die Adressen oder Bezeichner der Daten in den entsprechenden Bitpositionen der Register 10-1 bis 10-D. Wenn der Speicher 9 als Speicherebene 9a Verwendung findet, speichern die Register 11-1 bis H-K die Registeradressen der Seiten. Wird die Anordnung 9 als Verzeichnis 9b verwendet, dann speichern die Register 11-1 bis H-K virtuelle Adressen und die Register 10 -1 bis 10-D speichern entsprechende echte Adressen bzw. Einheitenadressen der Datenseiten in Speicher 6.
Das Register 12 arbeitet als Zähler, der die Neuordnung der Daten, wie weiter noch ausgeführt, steuert.
Alle Register 10-1 bis 10-D, 11-1 bis H-K und 12 enthalten ieweils die Stellen 1 bis N. Die Stellen N der Register 10-1 bis 10-D stellen Lese-Schreibstellen dar, die mit den Eingangs- und Ausgangstorschaltungen 15 und 16 verbunden sind.
Die Stellen N der Register 11-1 bis H-K liegen an den Eingangstorschaltungen 15 und außerdem an der Ausgangsvergleichseinheit Suchargumente in Form entsprechender Adressen werden über Sammelleitung 18 auf die Vergleichseinheit 17 übertragen, um nach ausgewählten Daten in der Anordnung 9 zu suchen. Geeignete Steuereinheiten 19 steuern das Verschieben der Daten in der Anordnung 9 über Verschiebepfade-links-20-1 bis 20-D, 21-1 bis 21-K und 22, einschließlich aller Stellen im Schieberegister. Die Steuereinheiten 19 steuern außerdem die Verschiebepfade-rechts-2 3-1 bis 23-D, 24-1 bis 24-K und 25, wie es bereits ebenfalls an anderer Stelle beschrieben ist. Die Pfade 23-1 bis 23-D und 24-1 bis 24-K schließen nicht die Lese-Schreibstellen N ein.
Der Anordnung 9 sind Verknüpfungsglieder 30 zugeordnet, die zusammen mit den Steuereinheiten 19 betrieben werden, um einen verbesserten KAWB - Algorithmus auszuführen, wenn das Auswechseln einer Seite erforderlich ist. Eine Anforderung für eine neue Seite hat ein Signal auf der Setz-Leitung 31 zur Folge, die die
en 972 ooi 309842/07 7 7
Verriegelungsschaltung 32 setzt. Die Verriegelungsschaltung 32 bereitet ein UND-Glied 33 zur Erzeugung eines Schieben-rechts-Signals auf Leitung 34 im Ansprechen auf einen ersten Taktgeberimpuls auf Leitung 35 vor. Die Leitung 34 liegt am Setz-Eingang einer Verriegelungsschaltung 36, die im Setz-Zustand ihrerseits ein UND-Glied 37 vorbereitet, um ein Schieben-links-Signal auf Leitung 38 im Ansprechen auf einen zweiten Taktgeberimpuls auf Leitung 35 überzeugen. Die Leitung 38 ist außerdem mit dem Rücksetz-Eingang der Verriegelungsschaltung 36 und mit dem Setz-Eingang einer Verriegelungsschaltung 40 verbunden. Die Verriegelungsschaltung 36 bereitet in ihrem Rücksetz-Zustand ein UND-Glied vor, um auf Leitung 34 im Ansprechen auf einen dritten Taktgeberimpuls auf Leitung 35 einen zweiten Schieben-rechts-Impuls auf Leitung 34 abzugeben. Die Verriegelungsschaltung 40 im Setz-Zustand und der zweite Schieben-rechts-Impuls machen das UND-Glied 41 wirksam, so daß die Verriegelungsschaltung 32 rückgesetzt wird. Ein Signal auf der Ausgangsleitung 42 der Verriegelungsschaltung 40' leitet ein übliches Seiten-Programm zum Auswechseln der Daten in den Stellen N der Register 10-1 bis 10-D und 11-1 bis H-K ein.
Die Betriebsweise der Anordnung 9 soll nunmehr beschrieben werden. Jedesmal, wenn neue Daten und ihre Adressen in die Stellen N der Register 10-1 bis 10-D und 11-1 bis H-K eingegeben sind, sind die Daten und Adresse, falls vorhanden, in Registerstellen 1 bereits vorher in die Stellen N, wie noch weiter unten beschrieben wird, zum Auswechseln übertragen worden, und die Daten sowie Adressen in den Stellen N bis 2 sind umgeordnet worden, d.h. in die Stellen N-I bis 1 verschoben worden.
Sind angeforderte Daten in Anordnung 9 gesucht worden, dann wird die Adresse der angeforderten Daten über Leitung 18 auf die Vergleichereinheit 17 übertragen. Die Steuerkreise 19 verschieben die Daten Schritt um Schritt unter dem Einfluß der Taktgeberimpulse auf Leitung 35 in die Schieben-links-Weiterleitungspfade 20-1 bis 20-D, 21-1 bis 21-K und 22. Nach jedem Schritt vergleicht die Vergleichereinheit 17 die Adresse in den Stellen N
en 972 ooi 3098 42/ 07 7 7
der Register 11-1 bis H-K mit der Adresse auf Leitung 18. Ergibt sich Übereinstimmung, dann veranlaßt ein Impuls auf Leitung 28, daß die Daten von den Stellen N der Register IO -1 bis 10-D über Ausgangstorschaltungen 16 übertragen werden. Ergibt sich keine Übereinstimmung, dann veranlaßt ein Impuls auf Leitung 29 die Kontrolleinheiten 19, Daten in den Registern 10-1 bis 10-D 11-1 bis H-K und 12 um einen weiteren Schritt zu verschieben.
Nachdem die Daten über Ausgangstorschaltungen im Ansprechen auf eine Übereinstimmung ausgegeben sind, leiten die Steuereinheiten 19 eine dynamische Umordnung der Daten und Adressen in die Stellen N-I bis 1 unter Steuerung des Registers 12 ein. Wenn die ersten Daten und ihre Adressen in die Stellen N der Anordnung 9 während einer Initialisierungsoperation eingegeben worden sind, wird ein 1-Bit in die Position 1 des Registers 12 über Leitung 26 eingegeben, wohingegen alle anderen Stellen O-Bits speichern.
Dieses 1-Bit bleibt immer in Stelle 1 des Registers 12, wenn Daten dynamisch geordnet werden. Werden so z.B. zweite Daten in die Anordnung 9 eingegeben, dann werden die ersten Daten um eine Stelle zu den Stellen 1 (mit Hilfe des unten beschriebenen KAWB-Algorithmus) über Schieben-links-Weiterleitungspfade und dann um eine Position zur Position N-I durch die Schieben-rechts-Weiterleitungspfade übertragen. Das 1-Bit im Register 12 wird um eine Stelle nach links und anschließend um eine Stelle nach rechts, d.h. zurück, in die Stelle 1 übertragen. Damit wird auf der Feststellungsleitung 27 angezeigt, daß die dynamische Umordnung abgeschlossen ist.
Zunächst sei vorausgesetzt, daß nachdem jede Stelle der Anordnung 9 untersucht worden ist, wobei das 1-Bit wiederum in Stelle 1 des Registers 12 ist, keine Übereinstimmung angezeigt worden ist. Die Kontrolleinheiten 19 iniziieren den KAWB-Algorithmus, indem die Verriegelungsschaltung 32 gesetzt wird. Drei Schritte werden aufeinanderfolgend ausgeführt, wie es oben bereits im Zusammenhang mit der Schaltung 30 beschrieben worden
en 972 0O1 309842/0777
ist, d.h. Verschieben um eine Position rechts, Verschieben um eine Position links, Verschieben um eine Position rechts.
Nachstehendes Beispiel veranschaulicht diese Operation unter der Annahme von vierstelligen Registern, mit geordneten. Datenseiten
ABCD in den Registern N, N-I, N-2 und 1 worin bedeuten:
A = am meisten kürzlich benutzt B = am zweitmeisten kürzlich benutzt C = am drittmeisten kürzlich benutzt D = am wenigsten kürzlich benutzt.
Nach Anwendung von Schritt 1 des Algorithmus (Verschieben rechts) ergibt sich die Reihenfolge
ADBC
nach Anwendung von Schritt 2 des Algorithmus (Verschieben links) ergibt sich die Reihenfolge
DBCA
die Ausleseadresse ist gespeichert in D, um den AuswechselVorgang einzuleiten.
Nach Anwendung des Schritts 3 (Schieben rechts) ergibt sich die Reihenfolge
DABC worin bedeuten:
D = am meisten kürzlich benutzt (aber durch neue Daten zu
ersetzen)
A = am zweitmeisten kürzlich benutzt B = am drittmeisten kürzlich benutzt C » am wenigsten kürzlich benutzt.
So kann nach zwei Schritten die Adresse der KAWB-Seite ausgelesen werden, um den AuswechslungsVorgang einzuleiten; und nach
en 972 ooi 309842/0777
drei Schritten befinden sich die Seitenadressen in korrekter neuer Reihenfolge, um weitere Prozeduraufrufe abzuwarten. Es wird darauf hingewiesen, daß eine vollständige Umordnung drei Schritte beansprucht, ungeachtet der Länge "N" der Ringe. Zum Erzielen des gleichen Ergebnisses wären unter Anwendung des früher beschriebenen Algorithmusses zwei (n-1) Schritte erforderlich, was beachtlich zeitraubend wäre, wenn viele Seiten zu erfassen sind. Es ist außerdem offensichtlich, daß der Algorithmus auf jede Speicherart Anwendung finden kann, die in der Lage ist, die Erfordernisse der Links- und Rechtsverschiebung zusammen mit einer statischen iformationsbeibehaltung durchzuführen.
In einem bevorzugten Ausführungsbeispiel wird eine Vielzahl von la er nicht gezeigten Registerspeichern 9 parallel betrieben und zwar als Speicher, wie 9a oder als Verzeichnis wie 9b (Fig. 2). Dies hat den Vorteil, daß bei Parallelbetriebsweise schneller gesucht werden kann, und ergibt die Möglichkeit, Seiten mit der höchsten Gebrauchshäufigkeit verschiedenen Speichern 9 zuzuordnen und den Betrieb anderer Speicher zu erlauben, wenn einer dadurch belegt ist, weil er auf hierin zu erfolgende Datenauswechslung wartet.
309842/0777

Claims (4)

  1. EN 972 001
    PATENTANSPRÜCHE
    Datenverarbeitungssystem, in dem eine Vielebenenspeicherhierarchie Hochgeschwindigkeits-, Zwischengeschwindigkeits- und Niedriggeschwindigkeitsspeicher in drei verschiedenen Hierarchie-Ebenen umfaßt, dadurch gekennzeichnet, daß die Speicherelemente in jeder Ebene in Blocks gleicher Größe zur Speicherung von Datenseiten aufgeteilt sind, wobei jede Seite auf jeder Ebene ihre eigene Adresse hat,
    der Prozessor (7) Zugriff nur zum Hochgeschwindigkeitsspeicher (5) also zur schnellsten Ebene hat, programmgestaltende Mittel sowohl für Datenzugriffsanforderungen, als auch zum Auswechseln von kürzlich am wenigsten benutzten Datenseiten in einer Ebene mit neuen Datenseiten von anderen Ebenen vorgesehen sind, und daß der Zwischengeschwindigkeitsspeicher (9a) enthält: eine größere Anzahl Schieberegister (10-1 bis 10-D; 11-1 bis 11-K; 12) unter Ausnutzung von magnetischen zylindrischen Einzelwanddomänen zur Informationsdarstellung, die je eine Lese-Schreibstelle (N) zum Zugriff der Schieberegister bei Lese- und Schreiboperationen, je zu einem ersten Ring gekoppelte (N-I) weitere Stellen zum Verschieben der Daten ohne Belegen der Lese-Schreibstelle (N) und Mittel zum Einsetzen und Beseitigen der Lese-Schreibstelle (N) in den bzw. aus dem ersten Ring aufweisen, so daß sich ein zweiter Ring für die Übertragung der Daten von irgendeiner der N-I übrigen Stellen in die Lese-Schreibstelle (N) bildet;
    Mittel, die im Ansprechen auf Datenzugriffsanforderung Daten im zweiten Ring in erste Richtung verschieben, um die angeforderten Daten auf die Lese-Schreibstelle (N) zu übertragen; eine Zähleinrichtung (12) zum Verschieben der Daten in entgegengesetzter Richtung in die übrigen Stellen
    30 9 8 42/0777
    (N-I) des ersten Rings, um die Daten nach der Reihenfolge der häufigsten kürzlichen Benutzung umzuordnen; bei zu erfolgendem Seitenwechsel wirksame Steuermittel zum Verschieben der Datenseiten um eine Stelle in entgegengesetzter Richtung im ersten Ring und um eine Stelle in erster Richtung im zweiten Ring, um kürzlich am wenigsten benutzte Daten in die Lese-Sehreibstelie (N) zum Zwecke der Auswechslung zu verschieben, und
    Steuermittel zum Verschieben der Datenseiten um eine Stelle in entgegengesetzter Richtung im ersten Ring, um die Daten entsprechend einer häufigsten kürzlichen Benutzung neu zu ordnen.
  2. 2. Anordnung nach Anspruch 1, gekennzeichnet durch ein dem Niedriggeschwindigkeitsspeicher (6) zugeordnetes Verzeichnis (9b) enthaltend:
    eine Anzahl von Schieberegistern unter Ausnutzung von magnetischen zylindrischen Einzelwanddomänen zur Informationsdarstellung, um in entsprechenden Registerstellen eine symbolische Adresse und eine Einheitenadresse für in der Anordnung gespeicherte Datenseiten zu speichern, wobei jedes Register eine Lese- und Schreibstelle (N), die in einem ersten Ring zusammengeschlossenen (N-I) übrigen Stellen und
    Mittel zum Koppeln der jeweiligen Lese-Schreibstelle (N) und der übrigen Stellen zu einem zweiten Ring aufweist,
    sowie Mittel, die auf Datenzugriffsanforderung Daten in einer ersten Richtung im zweiten Ring verschieben, wobei in einem Vergleicher (17) jede symbolische Adresse in der Lese-Schreibstelle (N) mit einer Sachargumentadresse vergleichbar ist, und Mittel (16) zum Auslesen der entsprechenden Einheitenadressen für den Zugriff der Daten im Niedrig-
    309842/077 7.
    EN 972 0Ol
    geschwindigkeitsspeicher (6) bei Übereinstimmungsanzeige durch den Vergleicher (17).
  3. 3. Anordnung nach Anspruch 2, gekennzeichnet durch Mittel zum Verschieben der Daten im Ansprechen auf Übereinstimmungsanzeige durch den Vergleicher (17) im ersten Ring in entgegengesetzter Richtung, um die Adressen in der Reihenfolge der häufigsten kürzlichen Benutzung neu zu ordnen.
  4. 4. Verfahren unter Anwendung der Anordnung nach Anspruch 1 bis Anspruch 3, dadurch gekennzeichnet, daß in ein magnetisches Einzelwanddomänenschieberegister mit N Stellen, einem ersten Ring bestehend aus entsprechend gekoppelten (N-I) Stellen und einem zweiten Ring, in den zusätzlich die Stelle N eingekoppelt ist, neue Daten unter Ausgabe der im Register bereits vorhandenen Daten über die Lese-Schreibstelle (N) eingegeben werden, daß die Daten im Register geordnet, bzw. umgeordnet werden, um Zugriff zu den am meisten kürzlich benutzten Daten im Register bei minimaler Zeitverzögerung zu erhalten, indem dLe Daten sowohl im zweiten Ring in der ersten Richtung um eine solche Stellenanzahl verschoben werden, daß die gewünschten Daten in die Lese-Schreibstelle (N) gelangen, als auch anschließend um eine gleiche Stellenanzahl in entgegengesetzter Richtung im ersten Ring verschoben werden,
    und daß die am wenigsten kürzlich benutzten Daten um eine Stelle in entgegengesetzter Richtung im ersten Ring bei Verschieben der Daten um eine Stelle in erster Richtung im zweiten Ring verschoben werden, indem so die kürzlich am wenigsten benutzten Daten auf Lese-Schreibstelle (N) gebracht werden, und die Daten um eine Stelle in entgegen gesetzter Richtung im ersten Ring verschoben werden, so daß die Daten gemäß der häufigsten kürzlichen Benutzung umgeordnet werden.
    en 972 ooi 309842/0777
    Verfahren unter Anwendung der Anordnung nach Anspruch 1 bis Anspruch 3, dadurch gekennzeichnet, daß in einem Selteneinteilungssystem zum Betrieb eines dynamisch geordneten Speichers eine Anzahl magnetischer Einzelwanddomänen-Schieberegister mit jeweils N Stellen synchron betrieben wird, wobei jeweils N-I Stellen zu einem ersten Ring sowie die N-I Stellen plus der Stelle N zu einem zweiten Ring gekoppelt sind,
    daß nach gewünschten Daten in den Registern gesucht wird, indem die Daten Schritt für Schritt in erster Richtung durch den zweiten Ring unter nach jedem Schritt erfolgendem Vergleich der Datenadressenbits in die jeweiligen Lese-Schreibstellen (N) mit einer Suchargumentadresse verschoben werden;
    daß nach jeweiliger Übereinstimmung die Daten zum Auslesen in die Lese-Schreibstelle (N) verschoben, sowie in den Registern in die Reihenfolge der am häufigsten kürzlichen Benutzung umgeordnet werden, indem die Daten im ersten Ring in entgegengesetzter Richtung um eine solche Stellenanzahl verschoben werden, die gleich derjenigen ist, um die gewünschten Daten in die Lese-Schreibstelle (N) übertragen zu können, und
    daß bei Nichtübereinstimmung die am wenigsten kürzlich benutzten Daten durch Verschieben um eine Stelle in entgegengesetzter Richtung im ersten Ring und um eine Stelle in erster Richtung im zweiten Ring auf die Lese-Schreibstelle (N) übertragen werden und sowohl durch Verschieben der Daten um eine Stelle in entgegengesetzter Richtung im ersten Ring die Daten entsprechend der häufigsten kürzlichen Benutzung umgeordnet als auch Daten in der Lese-Schreibstelle (N) durch neue Daten ersetzt werden.
    en 972 ooi 309842/0777
DE2310631A 1972-04-13 1973-03-02 Speicherhierarchie für ein Datenverarbeitungssystem Expired DE2310631C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US24375272A 1972-04-13 1972-04-13

Publications (3)

Publication Number Publication Date
DE2310631A1 true DE2310631A1 (de) 1973-10-18
DE2310631B2 DE2310631B2 (de) 1980-06-26
DE2310631C3 DE2310631C3 (de) 1981-04-16

Family

ID=22919979

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2310631A Expired DE2310631C3 (de) 1972-04-13 1973-03-02 Speicherhierarchie für ein Datenverarbeitungssystem

Country Status (6)

Country Link
US (1) US3737881A (de)
CA (1) CA993554A (de)
DE (1) DE2310631C3 (de)
FR (1) FR2180297A5 (de)
GB (1) GB1381434A (de)
IT (1) IT981194B (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2543589A1 (de) * 1975-09-30 1977-03-31 Siemens Ag Hierarchisch aufgebautes, mehrstufiges speichersystem und verfahren zu dessen betrieb
DE2641722A1 (de) * 1976-09-16 1978-03-23 Siemens Ag Hierarchisch geordnetes speichersystem fuer eine datenverarbeitende anlage mit virtueller adressierung

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3950732A (en) * 1974-05-14 1976-04-13 International Business Machines Corporation Single technology text editing system
US3967263A (en) * 1974-05-14 1976-06-29 International Business Machines Corporation Text editing system
JPS53129923A (en) * 1977-04-20 1978-11-13 Hitachi Ltd Control system for input/output device
US4277826A (en) * 1978-10-23 1981-07-07 Collins Robert W Synchronizing mechanism for page replacement control
US5241666A (en) * 1979-06-04 1993-08-31 Unisys Corporation Variable rate improvement of disc cache subsystem
US4868734A (en) * 1984-04-30 1989-09-19 Unisys Corp. Variable rate improvement of disc cache subsystem
JPS5758292A (en) * 1980-09-25 1982-04-07 Fanuc Ltd File deleting method for bubble cassette memory
US4361878A (en) * 1980-10-27 1982-11-30 Control Data Corporation Degradable LRU circuit
US4419725A (en) * 1980-11-14 1983-12-06 Sperry Corporation Cache/disk subsystem with tagalong copy
US4394732A (en) * 1980-11-14 1983-07-19 Sperry Corporation Cache/disk subsystem trickle
US4423479A (en) * 1980-11-14 1983-12-27 Sperry Corporation Cache/disk subsystem with acquire write command
WO1983000758A1 (en) * 1981-08-18 1983-03-03 Schkolnick, Mario Thrashing reduction in demand accessing of a data base through an lru paging buffer pool
US4511994A (en) * 1982-09-27 1985-04-16 Control Data Corporation Multi-group LRU resolver
GB8311813D0 (en) * 1983-04-29 1983-06-02 West G A W Coding and storing raster scan images
US5224217A (en) * 1988-12-30 1993-06-29 Saied Zangenehpour Computer system which uses a least-recently-used algorithm for manipulating data tags when performing cache replacement
US5109496A (en) * 1989-09-27 1992-04-28 International Business Machines Corporation Most recently used address translation system with least recently used (LRU) replacement
JP3586887B2 (ja) * 1994-06-10 2004-11-10 松下電器産業株式会社 情報記録再生装置およびデータキャッシュ方法
US6457737B1 (en) 1999-05-21 2002-10-01 Icb, Llc Collapsible cart with shelf
US6925529B2 (en) * 2001-07-12 2005-08-02 International Business Machines Corporation Data storage on a multi-tiered disk system
US11537306B2 (en) * 2021-03-12 2022-12-27 Micron Technology, Inc. Cold data detector in memory system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3670313A (en) * 1971-03-22 1972-06-13 Ibm Dynamically ordered magnetic bubble shift register memory
US3701132A (en) * 1971-10-27 1972-10-24 Bell Telephone Labor Inc Dynamic reallocation of information on serial storage arrangements

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NICHTS ERMITTELT *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2543589A1 (de) * 1975-09-30 1977-03-31 Siemens Ag Hierarchisch aufgebautes, mehrstufiges speichersystem und verfahren zu dessen betrieb
DE2641722A1 (de) * 1976-09-16 1978-03-23 Siemens Ag Hierarchisch geordnetes speichersystem fuer eine datenverarbeitende anlage mit virtueller adressierung

Also Published As

Publication number Publication date
DE2310631C3 (de) 1981-04-16
CA993554A (en) 1976-07-20
IT981194B (it) 1974-10-10
FR2180297A5 (de) 1973-11-23
US3737881A (en) 1973-06-05
GB1381434A (en) 1975-01-22
DE2310631B2 (de) 1980-06-26

Similar Documents

Publication Publication Date Title
DE2310631C3 (de) Speicherhierarchie für ein Datenverarbeitungssystem
DE2350225C2 (de)
DE2550339C2 (de) Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität
DE3011552C2 (de)
DE2637054C3 (de) Steuervorrichtung für einen Pufferspeicher
DE2227882C2 (de) Virtuelle Speicheranordnung
DE3390315T1 (de) Anpassungsfähige Unterteilung eines Chachespeicherraums in Domainen
WO1996033499A1 (de) Inhalts-adressierbarer speicher
DE2523414A1 (de) Hierarchische speicheranordnung
DE2856133A1 (de) Verarbeitungssystem fuer einen assoziativspeicher
DE4019135A1 (de) Serieller speicher auf ram-basis mit parallelem voraus-lesen
DE2703559C2 (de)
DE2432608C3 (de) Speicheranordnung fur eine Datenverarbeitungseinrichtung
DE2163342A1 (de) Hierarchische binäre Speichervorrichtung
DE3046912C2 (de) Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage
DE2551740A1 (de) Datenverarbeitungseinheit
DE2221442A1 (de) Assoziativspeicher
DE2055522B2 (de) Anordnung zur eingabe von daten in eine digitale datenverarbeitungsanlage
DE2054941C2 (de) Anordnung zur Auswahl von Datensätzen
DE2558417A1 (de) Datenverarbeitungssystem
DE2233193A1 (de) Stapel-speichersystem
DE2556357A1 (de) Adressiereinrichtung
EP0012207A1 (de) Speicherhierarchie mit Ladungsverschiebungsspeicher
DE2750126B2 (de)
EP0771463B1 (de) Verfahren und vorrichtung zum speichern und drehen von bitmustern

Legal Events

Date Code Title Description
OD Request for examination
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee