DE2523414C3 - Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen - Google Patents
Hierarchische Speicheranordnung mit mehr als zwei SpeicherstufenInfo
- Publication number
- DE2523414C3 DE2523414C3 DE2523414A DE2523414A DE2523414C3 DE 2523414 C3 DE2523414 C3 DE 2523414C3 DE 2523414 A DE2523414 A DE 2523414A DE 2523414 A DE2523414 A DE 2523414A DE 2523414 C3 DE2523414 C3 DE 2523414C3
- Authority
- DE
- Germany
- Prior art keywords
- memory
- data
- journal
- level
- directory
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/311—In host system
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
Die Erfindung betrifft eine hierarchische Schaltungsanordnung gemäß Oberbegriff des Patentanspruchs 1.
Hierarchische Speicher mit Halbleiterelementen auf ihren höheren Ebenen führen zwar zu schnelleren und
ökonomischen Speichersystemen, sie sind jedoch nicht ohne Nachteil. Insbesondere treten bei hierarchischen
Speichersystemen bedeutende Übertragungsprobleme zwischen den einzelnen Ebenen der Hierarchie auf, und
da die Halbleiterspeicher informationsflüchtig, d. h. energieabhängig sind, treten Datensicherheitsprobleme
auf, die mit der Zuverlässigkeit und der Empfindlichkeit dieser Halbleiterelemente gegen Ausfall oder Schwankung
der Stromversorgung zusammenhänge.
Eine bekannte Maßnahme zur Erhöhung der Sicherheit besteht darin, wichtige Einrichtungen mehrfach
vorzusehen und mit einer Majoritätslogik die jeweils richtigen Daten herauszufinden. Diese Lösung trägt
zwar zur Verbesserung der Zuverlässigkeit und der Datenintegrität bei, sie beseitig jedoch nicht das
Übertragungsproblem zwischen den einzelnen Ebenen, sondern erschwert es im Gegenteil noch. Außerdem
nimmt beim Auftreten eines Fehlers, der es nötig macht, den Speicher einer oder mehrerer Stufen außer Betrieb
zu setzen, die Übertragung der Daten von den Ebenen des Speichers, die energieabhängige Speicherelemente
erhalten, in Ebenen mit energieunabhängigen Speicherelementen leicht mehr Zeit in Anspruch, als tatsächlich
vorhanden ist, bevor die Daten durch den Stromausfall
oder andere Beeinträchtigungen verlorengehen.
In der DE-OS 23 10 631 ist eine dreistufige Speicher- '
hierarchie beschrieben, in der die Speicher als Magnetblasen-Schieberegister ausgeführt sind. Mit
Magnetblasenspeichern lassen sich zwar nicht die extrem kurzen Zugriffszeiten von Halbleiterspeichern
erreichen, doch ist bei guter Packungsdichte eint i"
Zugriffszeit erzielbar, die unterhalb der vom Plattenspeicher liegt Durch die Ausführung als Schieberegister
können in dieser bekannten Speicherhierarchie die Datenseiten direkt verschoben werden, was beim
Auffinden der Seite, die durch eine neue ersetzt werden ' '*> soll, gewisse Vorteile liefert Auch ist in solchen
Speichern die Datensicherheit dadurch gewährleistet daß diese Speicher nichtflüchtig sind, d. h. bei Stromausfall
ihre Information behalten.
Will man jedoch, wie im Falle der vorliegenden -'<) Erfindung, extrem kurze Zugriffszeiten erzielen, müssen
zumindest in den höheren, d. h. schnelleren Ebenen der
Hierarchie Halbleiterspeicher benutzt werden, die jedoch nur mit hohem Aufwand als Schieberegister
ausführbar sind, will man die angestrebte Kapazität -'">
erreichen.
Es ist daher Aufgabe der vorliegenden Erfindung, in einer mehr als zweistufigen hierarchischen Speicheranordnung
durch spezielle Berücksichtigung der jeweils veränderten Daten die Datensicherheit zu erhöhen und )<
> den Datenaustausch zwischen den verschiedenen Stufen der Hierarchie zu erleichtern. Diese Aufgabe wird durch
die kennzeichnenden Merkmale des Hauptanspruches gelöst
Durch die Erfindung werden die zur Erhaltung der >~> Akualität der Daten notwendigen Übertragungen
zwischen den einzelnen Stufen der Hierarchie sehr erleichtert Die zu fibertragenden Daten stehen nämlich
schon direkt im Rückübertragungsspeicher zur Verfügung.
Dabei kann für die Übertragung ein günstiger ■»»
Zeitpunkt gewählt werden, zu dem der Rückübertragungsspeicher und die angesteuerten Speicher der
nächst niederen Stufe frei sind. Die Ergänzung des Datenspeichers einer Stufe durch einen weiteren
Speicher, der nur Änderungen speichert, erlaubt eine ή wesentliche Erhöhung der Datensicherheit mit geringen
Mitteln. Einerseits wird nämlich eine echte Duplizierung der Daten erreicht wobei andererseits jedoch nur ein
Teil dieser Daten im Rückübertragungsspeichei gespeichert werden muß. Die Belegung, d. h. die Aktivität des w
Rückübertragungsspeichers ist somit geringer als die des Datenspeichers. Da nur veränderte Daten rückübertragen
werden, so daß im Falle des Auftretens eines Fehlers in der Speicheranordnung die geringe, zur
Rettung der Daten zur Verfügung stehende Zek nicht «
überschritten wird.
Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
Ein Ausführungsbeispiel der Erfindung soll anhand der Zeichnungen näher beschrieben werden. Es zeigt mi
F i g. 1 ein Blockschaltbild eines mehrstufigen hierarchischen Speichersystems,
Fig.2 und 3 aneinandergesetzt ein Blickschaltbild
zweier Ebenen des in F i g. 1 dargestellten Speichersytems, hi
Fig.5 einen Schaltkreis zur Erzeugung eines Rückübertragungssignales,
Gemäß Fig. 1 besteht jede Ebene (d h. Stufe) der Speicher-Hierarchie aus einem Datenspeicher (10a bis
iOn) mit Zagriffsmöglichkeit für die Entnahme oder Einspeicherung von Daten auf der betreffenden Ebene,
einem Verzeichnes (12a bis 12njt das mit dem
Datenspeicher 10 seiner Ebene zusammenarbeitet und ein Inhaltsverzeichnis der in dieser Ebene der
Hierarchie gespeicherten Daten enthält einem Rückübertragungsspeicher
14a bis 14n, nachfolgend auch Zwischenspeicher genannt der sämtliche Änderungen
enthält die an den in der betreffenden Ebene gespeicherten Daten vorgenommen worden sind, einem
Journalspeicher (16a bis 16n) zur Aufzeichnung der
Reihenfolge, in welcher Änderungen in den Zwischenspeicher 14 gespeichert worden sind, und einem
Journalverzeichnis 18a bis 18n, in welchem Information darüber gespeichert wird, ob Daten in der Ebene der
Hierarchie bereits vorher geändert worden sind.
Wenn die Verarbeitungseinheit 20 Daten abruft wird das Verzeichnis 12a der höchsten Speicherebene L1
geprüft ob die verlangten Daten auf dieser höchsten Ebene gespeichert sind. Wenn das der Fall ist werden
die Daten aus dem Datenspeicher 10a ausgelesen. Falls sich die Daten nicht in der höchsten Ebene des
Speichers befinden, wird das Verzeichnis 125 der nächstniederen Ebene L 2 geprüft um festzustellen, ob
die Daten sich auf dieser Ebene befinden, usw., bis die Daten aufgefunden sind oder die niedrigste Ebene
erreicht ist Wenn die Daten aufgefunden sind, werden sie in die höchste Ebene L1 der Hierarchie übertragen,
wo ein Zugriff durch die Verarbeitungseinheit 20 auf den Datenspeicher 10a dieser Ebene möglich ist.
Wenn von der Verarbeitungseinheit 20 Daten in die Speicherhierarchie eingegeben werden sollen, werden
diese sowohl im Datenspeicher 10 als auch im Zwischenspeicher 14a der ersten Ebene L1 gespeichert.
Gleichzeitig wird das Journalverzeichnis 18a abgefragt, um festzustellen, ob die Daten bereits vorher geändert
worden sind. Ist das nicht der Fall, erfolgt eine Eingabe in den Journalspeicher 16a an dessen nächstem freien
Speicherplatz. Diese Eingabe in den Journalspeicher 16a erfolgt in der Reihenfolge der Adressierung des
Journalspeichers, d. h., die erste Eingabe geht in die erste
Speicherstelle, die zweite Eingabe in die zweite Speicherstelle usw., bis die letzte Speicherstelle
(Adresse) in der Folge gefüllt ist Die nächste Eingabe wird dann an den Ort der ersten Adresse übertragen
und die Folge wiederholt. Auf diese Weise registriert der Journalspeicher die Reihenfolge der Daten auf der
Ebene L1, welche zuerst geändert worden sind. Diese
Aufzeichnung wird dann dazu benutzt, die Änderungen an den Daten auf der Ebene L1 in die anderen Ebenen
der Hierarchie zu übertragen, wobei versucht wird, eine Datenpyramide aufrechtzuerhalten, in welcher die
Ebene L 2 alle Daten enthält, die in der Ebene Ll
vorhanden sind plus einige mehr, die Ebene L 3 alle Daten enthält die in der Ebene L 2 enthalten sind und
einige mehr usw.
Die Übertragung der Daten von der Ebene L1 in die
Ebene L 2 erfolgt wann immer der Datenspeicher 10ύ der zweiten Ebene L 2 frei ist. Dann können die
geänderten Daten vom Zwischenspeicher 14s der ersten Ebene L 1 in den Datenspeicher tOf>
der Ebene L 2 übertragen werden, während der Datenspeicher 10a der ersten Ebene L 1 mit der Übertragung von Daten
zwischen dem Speichersystem und der Verarbcitungs-
einheit 20 beschäftigt ist. In gleicher Weise erfolgt die Übertragung von Daten von der Ebene L 2 in die Ebene
L 3, wenn der Datenspeicher 10c der Ebene L 3 frei ist, usw. Die Rückübertragung der Daten erfolgt in der
Reihenfolge, in welcher die Änderungen in den Journalspeicher ib eingegeben worden waren, wobei
die älteste Eingabe in den Journalspeicher zuerst rückübertragen wird. Mit anderen Worten werden die
Daten, deren erste Änderung am weitesten zurückliegt, zuerst übertragen, wenn sich die Gelegenheit zur
Übertragung ergibt Auf diese Weise wird bei der Rückübertragung von Daten innerhalb der Hierarchie
zur Aufrechterhaltung der Datenpyramide ein großer Wirkungsgrad erzielt, ohne daß in der Aufwärtsbewegung
der Daten von den unteren Ebenen zu den oberen der Hierarchie eine Störung eintritt
Neben der Übertragung von Daten von höheren Ebenen der Hierarchie zu niederen Ebenen zwecks
Aufrechterhaltung der Datenpyramide können geänderte Daten auch von jeder beliebigen Speicherebene
entfernt oder auf niedere Ebenen übertragen werden, um für neue Daten Platz zu schaffen. Bevor geänderte
Daten auf niedere Ebenen der Hierarchie übertragen werden können, müssen sie zunächst die Spitze der
Datenpyramide erreicht haben. Das bedeutet, daß auf niedere Ebenen zu übertragende Daten nicht auf einer
höheren Ebene in der Hierarchie sein können als diejenige Ebene, von welcher sie entfernt werden. Der
Grund dafür, daß nur von der Spitze der Datenpyramide Daten auf niedere Ebene übertragen werden können,
liegt in der Vermeidung von Löchern in der Datenpyramide, da dieses die Benutzung der Fortschreibungstechnik
im Journalspeicher und der Zwischenspeicherungstechnik
erleichert Nicht geänderte Daten müssen natürlich nicht auf niedere Ebenen zurückübertragen
werden, um für neue Daten Platz zu schaffen. Sie werden durch neue Daten lediglich überdeckt da eine
Kopie der ungeänderten Daten bereits in niederen Ebenen der Speicherhierarchie vorhanden ist
Zur Erhaltung der Integrität der Daten macht die Erfindung Gebrauch von einer durch die gestrichelte
Linie 24 in F i g. 1 dargestellten Stromversorgungs-Trennung. Damit ist gemeint daß sämtliche Einheiten
auf der einen Seite der gestrichelten Linie 24 aus einer Stromversorungsanlage gespeist werden, während alle
auf der anderen Seite der gestrichelten Linie 24 befindlichen Einheiten von einer anderen Stromversorgungsanlage
gespeist werden. Außerdem werden wenigstens auf der niedrigsten Ebene Ln des Speichersystems
die Daten in einem nicht informationsflüchtigen, d. h. energieunabhängigen Speicher, wie beispielsweise
einem Magnetbandspeicher, gespeichert so daß die Daten nicht verlorengehen können, wenn die
Stromversorung ausfällt Auf dieser untersten Ebene Ln enthält der Zwischenspeicher 14a ein Duplikat aller
Daten, die im Datenspeicher 1On dieser Ebene enthalten
sind, so daß ein Verlust von Daten im Speicher 1On der untersten Ebene Ln die Integrität der Daten im
allgemeinen nicht berührt Dadurch ist gewährleistet, daß bei Ausfall der Stromversorgung auf einer der
Seiten der gestrichelten linie 24 die Integrität der Daten nicht zerstört wird, da sämtliche Daten zumindest
auf der untersten Ebene Ln in einem gegen diesen Stromausfall immunen Speicher gespeichert sind, und
da sämtliche Änderungen an den Daten auf der Ebene Ln auf beiden Seiten der gestrichelten linie auf
wenigstens einer der anderen Ebenen Ll bis Ln-I vorhanden sind, so daß sie wieder auf alle anderen
Ebenen der Hierarchie übertragen werden können, wenn der Stromausfall beseitigt ist. Schließlich kann
auch die Stromversorgung aus einer Batterie vorgesehen werden, um sicherzustellen, daß die Daten in den
ί Zwischenspeichern 14, in den Journalspeichern 16 und in
den Journalverzeichnissen 18 erhalten bleiben und bis in einen energieunabhängigen Speicher rückübertragen
werden können, falls auf beiden Seiten der gestrichelten Linie 24 die Stromversorgung ausfallen sollte.
κι In den F i g. 2 und 3 sind Einzelheiten zweier Ebenen der Speicherhierarchie gemäß F i g. 1 dargestellt. Das
Verzeichnis 26 (bzw. Via) der Ebene L1 speichert die
virtuellen Adressen in Gruppen von jeweils vier Adressen, für alle zu einem bestimmten Zeitpunkt in der
Γ) Ebene Li des Speichersystems vorhandenen Daten.
Die vier Adressen einer jeden Gruppe werden als Kongruenz-Klasse bezeichnet, deren Adresse in der
Ebene L1 durch eine Verknüpfungsoperation bestimmt
wird, die die Verknüpfung gewisser Bits der virtuellen
:ii Adressen teils mit Bits des realen Adressenteils in einem
EXKLUSIV-ODER-Glied 29, dessen Einzelheiten in der F i g. 4 dargestellt sind, umfaßt. Das Ausgangssignal des
EXKLUSIV-ODER-Gliedes 29 wird dem Decodier-Eingang des Verzeichnisses 26 zugeführt Bei diesem
2i Zugriff werden vier Adressen einer Kongruenz-Klasse
parallel aus dem Register 8 ausgelesen. Jede der virtuellen Adressen, die aus der Programm-Verarbeitungseinheit
28 ausgelesen werden, wird in einem Vergleicher 30 mit der virtuellen Adresse verglichen, die
μ zur Erzeugung der Bits für den Zugriff zum Verzeichnis
der Ebene L1 benutzt wurden. Wenn eine der aus dem
Verzeichnis 26 ausgelesenen Adressen mit der gewünschten virtuellen Adresse übereinstimmt, gibt der
Vergleicher 30 ein Ausgangssigna! ab. Dieses Ausgangs-
Ji signal besteht aus zwei Bits, die angeben, welche der vier
aus dem Verzeichnis gelesenen Adressen mit der gesuchten Adresse übereinstimmt. Dieses Zwei-Bit-Signal
wird einem Decodierer zugeführt der mit dem Ausgang des Datenspeichers 32 der ersten Ebene
verbunden ist In diesem Speicher 32 sind alle Daten der ersten Ebene gespeichert, und der Zugriff erfolgt über
seinen Eingangs-Decodierer durch das gleiche Signal ß, das dem Verzeichnis 26 zugeführt wird, und wenn der
Zugriff erfolgt ist werden die Daten, die sich an den vier virtuellen Adressen der Kongruenz-Klasse befinden,
ausgelesen. Das Ausgangssignal des Vergleichers 30, das ein Eins-von-vier-Zwei-Bit-Signal ist wählt sodann die
Daten an einer der virtuellen Adressen seiner Kongruenz-Klasse aus und liest sie in ein Eingabe/Ausgabe-Register
33, das mit dem Hauptspeicher 12 verbunden ist, von wo das Signal zur Programm-Verarbeitungseinheit
28 zurückgeführt wird.
Wenn festgestellt wird, daß sich die Daten nicht aul
der ersten Ebene L1 befinden, muß geprüft werden, ob
sich die Daten auf der zweiten Ebene L 2 befinden. Wie die erste Ebene L1, ist auch die zweite Ebene L 2 mit
einem Verzeichnis 34 ausgerüstet Da, -wie erwähnt aul
der zweiten Ebene mehr Information gespeichert werden muß als auf der ersten Ebene, ist auch das
mi Verzeichnis größer. Entsprechend umfaßt auch das
Adreß-Signal mehr Bits, um die Kongruenz-Klasse dei
vier virtuellen Adressen auszuwählen. Dieses Adreßsignal
γ wird ebenfalls durch, das in F i g. 4 gezeigte
EXKLUSIV-ODER-Glied 29 erzeugt Beim Abfragen
μ des Verzeichnisses 34 durch das Signal γ werden die vier
virtuellen Adressen der Kongruenz-Klasse in das Eingabe/Ausgabe-Register 31 des Verzeichnisses und ir
einem Vergleicher 35 ausgelesen, in welchem die
gespeicherte virtuelle Adresse mit der von der Verarbeitungseinheit 28 gelieferten virtuellen Adresse
verglichen wird. Dieser Vergleich führt zu einem Einsvon -vier-Vergleichssignal, das angibt, welche der vier
Adressen der Kongruenz-Klasse verlangt wurde. Auch dieses Signal wird dem Decodierer am Ausgang des
Eingabe/Ausgabe- Registers des Datenspeichers 36 der zweiten Ebene L 2 zugeführt, der durch das vom
Verzeichnis 34 gelieferte Signal γ angesteuert wurde. Auf diese Weise werden die an einer der Adressen der to
Kongruenz-Klasse gespeicherten Daten aus der zweiten Ebene ausgelesen und in die erste Ebene übertragen.
Wenn Daten in das Speichersystem eingegeben werden sollen, liefert die Verarbeitungseinheit 28 ein
Steuersignal an ein ÜND-Giied 3», weiches die virtuelle ts
Adresse in ein Adressen-Suchregister 40 des Jorunalverzeichnisses 42 eingibt, das als Assoziativspeicher
ausgebildet ist und dessen Einzelheiten in Fig.6 dargestellt sind. Es wird eine assoziative Suche
durchgeführt, bei welcher die virtuelle Adresse mit jeder der im Journalverzeichnis gespeicherten virtuellen
Adressen verglichen wird. Bei Übereinstimmung der virtuellen Adresse im Adressensuchregister 40 mit der
virtuellen Adresse im Journalverzeichnis liefert dieses ein Vergleichssignal, welches anzeigt, daß die Adresse
im Journalverzeichnis vorhanden ist, mit anderen Worten, daß die Daten, die an dieser Adresse
gespeichert sind, bereits früher geändert worden sind. Falls der Vergleich keine Übereinstimmung der
Adressen ergibt, bedeutet das, daß die an der Adresse *>
gespeicherten Daten noch nicht geändert worden sind. Wenn diese Situation vorliegt, wird sowohl im
Journaiverzeichnis 42 wie auch im zugeordneten Journalspeicher 44 vermerkt, daß die Daten dieser
Adresse nun geändert werden. Wenn andernfalls eine Obereinstimmung der Adressen festgestellt wird,
erfolgt keine Eingabe in das Journalverzeichnis oder den Journalspeicher. Die Speicherstelle im Journalverzeichnis,
in welche die virtuelle Adresse eingegeben wird, ist nicht von Bedeutung, da es sich um einen
assoziativen Speicher handelt, bei dem alle Adressen gleichzeitig abgefragt werden. Die Speicherstelle im
Journalspeicher 44 gibt jedoch einen Hinweis auf die Reihenfolge, in welcher die Änderungen durchgeführt
wurden, und, wie weiter unten ausgeführt werden wird,
bestimmt die Adresse im Journalspeicher die Reihenfolge, in welcher die Änderungen später in die unteren
Ebenen der Speicherhierarchie übertragen werden. Zu diesem Zweck ist ein Zähler 46 vorgesehen, der den
nächsten freien Speicherplatz angibt Wenn das mit dem Μ
Journalverzeichnis verbundene Obereinstimmungsregister 45 ein keine Obereinstimmung anzeigendes Signal
abgibt, welches gleichzeitig mit dem Steuersignal der Verarbeitungseinheit 28 eintrifft, wird das Ausgangssignal
des Zählers 46 mittels der UN D-Glieder 48 und 50 S5
in das Adressenregister SAR des Journalspeichers 44 übertragen, um eins der darin gespeicherten Wörter
auszuwählen. Gleichzeitig wird die virtuelle Adresse in das Eingabe/Ausgabe-Register 52 des Journalspeichers
44 übertragen, damit die virtuelle Adresse im Journal- M
speicher an der durch den Zähler 46 bestimmten Stelle gespeichert werden kann. Wenn die Eingabe in den
Journalspeicher 44 erfolgt ist, wird der Zähler 46 durch ein Signal »Eingabe beendet« auf die nächste Zahl der
Adressenreihenfolge weitergeschaltet Auf diese Weise erfolgt jede Eingabe in den Journalspeicher 44 in der
Reihenfolge, in welcher durch die Verarbeitungseinheit 28 eine Änderung in den Daten verlangt wurde, so daß
wenn die Daten zu niedrigeren Stufen rückübertragen werden, diese Übertragung in der gleichen Reihenfolge
erfolgen kann, in welcher die Eingabe in den Journalspeicher 44 gemacht wurde. Hierzu brauchen
lediglich die Adressen im Journalspeicher in ihrer numerischen Reihenfolge aufgerufen werden.
Außer der Eingabe der Adressen in das Journalverzeichnis 42 und den Journalspeicher 44 werden die
Daten der betreffenden Adresse auch in den Datenspeicher 32 und den Zwischenspeicher 54 eingegeben. Der
Inhalt des Zwischenspeichers 54 ist mit dem Inhalt des Datenspeichers 32 der gleichen Ebene identisch, wobei
sich Speicherstellen in beiden Speichern genau entsprechen. Daher werden Änderungen an Daten, die in einer
Speichersteüe Si im Datenspeicher 32 stehen, auch an
den in der Speicherstelle BΓ des Zwischenspeichers 54
stehenden Daten durchgeführt (vergleiche die schraffierten Bereiche im Datenspeicher 32 und im Zwischenspeicher
54).
Wie bereits erwähnt, werden Änderungen in der Reihenfolge, in welche sie in den Journalspeicher 44
eingegeben werden, an untere Ebenen des Speichersystems übertragen. Zu diesem Zweck wird ein Zähler 53
durch die in F i g. 5 dargestellten Schaltkreise in Betrieb gesetzt wenn das Ausgangssignal eines als Kippschaltung
ausgeführten Haltekreises 58 angibt daß der Zwischenspeicher der ersten Ebene L1 nicht aktiv ist
d. h, wenn keine Eingabe oder Ausgabe erfolgt, und wenn das Ausgangssignal eines Haltekreises 60 anzeigt
daß der Datenspeicher der zweiten Ebene L 2 zur Zeit nicht aktiv ist. Dann wird das Ausgangssignal des
Zählers 53 durch eine von den Haltekreisen 58 und 60 gesteuerte Verknüpfungsschaltung 32 aus UND-Gliedern
dem Adressenregister des Journalspeichers 44 der Ebene L1 zugeführt um Daten an der durch das
Ausgangssignal des Zählers 53 bestimmten Adresse auszulesen. Diese virtuelle Adresse wird der Misch-Schaltung
der F i g. 4 zugeführt wo die Adressensignale β und γ für den Zwischenspeicher 54t der Ebene L 1 und
für den Datenspeicher 36 sowie den Zwischenspeicher 37 der Ebene L 2 erzeugt und den entsprechenden
Adressenregistern des Datenspeichers 36 und des Zwischenspeichers 27 zugeführt werden, wie das in den
F i g. 2 und 3 dargestellt ist
Nachdem die Dateneintragung vom Zwischenspeicher 54 der ersten Ebene L 1 in den Datenspeicher 36
und den Zwischenspeicher 37 der zweiten Ebene übertragen worden ist und Hinweise auf die Änderungen
an den Daten entsprechend in den (nicht dargestellten) Journalspeicher und das Journalverzeichnis
der zweiten Ebene L 2 eingegeben worden sind, wird dem Zähler 53 ein externes Fortschaltsignal zugeführt
das ihn auf die nächste Stelle weiterschaltet Wenn nun weitere Rückübertragungen von Daten nötig sind,
erfo'gt erneut ein Zugriff zum Journalspeicher 44,
werden die Adressen β und γ für den Zugriff zum Zwischenspeicher und Datenspeicher erzeugt, und die
Daten an der nächsten Adresse werden in den Datenspeicher und Zwischenspeicher der nächstniederen
Ebene Obertragen.
Neben der Speicherung der virtuellen Adresse speichert der Journalspeicher 44 auch die Ergebnisse
des Eins-von-vier-Vergleiches durch den Vergleicher 30,
wenn das Verzeichnis 26 nach der Adresse abgefragt wird, und speichert zusätzlich ein Gültigkeitsbit Dieses
Gültigkeitsbit wird gleich »1« gesetzt wenn zuerst eine Eingabe in das Journalverzeichnis und den Journalspeicher
erfolgt Fig.5 zeigt, wie ein Gültigkeitsbit in die
Suchmatrix des Journalverzeichnisses 42 eingegeben wird und wie dieses Bit dann in den Journaispeicher 44
übertragen wird, wenn die neue Eingabe in das Eingabe/Ausgabe-Register 52 des Journalspeichers 44
eingegeben wird. Wenn die Verarbeitungseinheit 28 einen Schreibbefehl für eine bestimmte virtuelle
Adresse ausgibt, wird diese virtuelle Adresse in das Adressen-Suchregister 40 eingegeben (Fig.3 ;md 6).
Die Länge des Adressen-Suchregisters 40 ist um ein Bit langer als die virtuelle Adresse, und bei der Eingabe der
virtuellen Adresse wird die letzte oder y-te Stelle im Adressen-Suchregister 40 auf eine binäre »l« gesetzt.
Wie erwähnt, wird das gesamte Journalverzeichnis 42 gleichzeitig assoziativ abgefragt. Falls der Inhalt des
Adressen-Suchregisters 40 mit einem der Wörter im Journalverzeichnis übereinstimmt, wird eine und nur
eine der Treiberschaltungen 41 (F i g. 6) eingeschaltet. Wenn irgendeine der Treiberschaltungen 41 eingeschaltet
ist, zeigt deren Ausgangssignal an, daß die Daten bereits vorher verändert worden sind und daß eine
entsprechende Eingabe in den Journalspeicher und das Jornalverzeichnis erfolgt ist
Wenn keine der Treiberschaltungen 41 eingeschaltet worden ist, zeigt dies an, daß keine Übereinstimmung
gefunden worden ist Das bedeutet, daß in das Journalverzeichnis 42 und den Jornalspeicher 44 eine
Eingabe gemacht werden muß. Zu diesem Zweck wird ein Ringzähler 43 fortgeschaltet, um die Adresse des
nächsten verfügbaren Wortes im Journalverzeichnis 42 aufzurufen. Gleichzeitig wird die Schreib-Torschaltung
47 aktiviert, so daß der Inhalt des Adressen-Suchregisters 40 an der durch den Ringzähler 43 adressierten
Speicherstelle gespeichert wird.
Wenn die Daten rückübertragen werden, muß auch der Journalspeicher diese Übertragung berücksichtigen.
Daher muß nach Beendigung der Rückübertragung das Journalverzeichnis den Zustand wiedergeben, daß die
im Datenspeicher 32 der ersten Ebene L1 gespeicherte
Datenseite nicht mehr von der im Datenspeicher 36 der zweiten Ebene LI befindlichen Kopie abweicht Das
geschieht auf die folgende Art: Die zur Zeit der Rückübertragung aus dem Journalspeicher 44 der ersten
Ebene L1 entnommene virtuelle Adresse wird für das
Abfragen des Journalverzeichnisses 44 der ersten Ebene Li benutzt Die aus der Suchmatrix entnommene
übereinstimmende Adresse wird in ein Register 49 gesetzt und das Gültigkeits-Bit im Adressen-Suchregister
40 auf binär »0«. In dem für das Einschreiben vorgesehene Teil des Speicherzyklus wird das Register
49 für die Adressierung des Journalverzeichnisses benutzt.
Der Inhalt des Adressen-Suchregisters 40 wird in die auf diese Weise adressierte Speicherstelle eingeschrieben.
Durch den »O«-Zustand des Gültigkeits-Bits wird ein positiver Vergleich der virtuellen Adresse beim
nächsten Abfragen verhindert
Die in den Figuren verzeichneten Taktsignale T werden durch einen konventionellen Taktgeber erzeugt
und erscheinen in der Reihenfolge der Indices
ίο (Ti — T12).
Es sind zwei Arten von Rückübertragungen möglich, nämlich Rückübertragungen in Übereinstimmung mit
dem vorstehend diskutierten LRFM-Algorithmus und erzwungene Rückübertragung. Die erzwungene Rück-
'5 übertragung erfolgt nicht in der Reihenfolge der am
weitesten zurückliegenden Änderungen, d. h., gemäß dem durch die Fortschaltung des Journalspeichers 44
gegebenen LRFM-Algorithmus, wobei die Adressen-Fortschaltung des Journalspeichers in der durch den
Zähler 53 gegebenen Reihenfolge erfolgt. Bei der erzwungenen Rückübertragung wird das Gültigkeits-Bit
aus dem Journalspeicher und aus dem Journalverzeichnis entfernt wie während einer normalen Rückübertragung,
um anzuzeigen, daß die Daten bereits rückübertragen worden sind und dies nicht noch einmal
wiederholt werden soll.
Eine erzwungene Rückübertragung findet statt wenn Daten in eine Kongruenz-Klasse eingegeben werden
sollen, in welcher Daten an allen vier virtuellen Adressen der Kongruenz-Klasse bereits geändert
worden sind und die Änderungen noch nicht rückübertragen worden sind. Zur Feststellung, ob eine erzwungene
Rückübertragung erforderlich ist enthält das Journalverzeichnis 26 vier Status-Bits, eins für jede
einzelne Adresse in der betreffenden Kongruenz-Klasse. Die Status-Bits werden von einer in Fig.7 näher
dargestellten Status-Bit-Schaltung 56 (Fig.2) gesetzt
Immer wenn Daten entweder geändert oder rückübertragen werden, erfolgt eine Änderung der Status-Bits,
um diesen Vorgang zu reflektieren. Die Status-Bit-Schaltung 56 umfaßt ein UND-Glied 58. Wenn das im
»STATUS Yo«-Register gespeicherte Ausgangssignal des Journalverzeichnisses 26 vier »1«-Bits enthält, was
besagt, daß Daten an allen Adressen in einer bestimmten Kongruenz-Klasse geändert worden sind,
und wenn ein Signal vorliegt das anzeigt daß die Daten nicht anderswo auf der gleichen Ebene gespeichert sind,
erzeugt das UND-Glied 58 ein Ausgangssignal, das die erzwungene Rückübertragung herbeiführt
Claims (9)
1. Hierarchische, virtuell adressierte Speicheranordnung mit mehr als zwei Speicherstufen, die in der
höchsten, mit dem Prozessor der Datenverarbei- ">
tungsanlage direkt verbundenen Stufe den kleinsten und schnellsten Speicher und in der niedrigsten Stufe
den größten und langsamsten Speicher aufweist und in der vom Prozessor veränderte Daten in Form von
Blöcken zu niedrigeren Stufen rückübertragen «> werden, wobei in jeder Stufe ein Verzeichnisspeicher
mit einem Verzeichnis der im Datenspeicher der Stufe gespeicherten Daten vorgesehen ist,
dadurch gekennzeichnet, daß in jeder Stufe (L 1 -Ln) der Hierarchie ein Rückübertragungs- ' r>
speicher (I4a-i4n) zur Speicherung von in dieser
Stufe veränderten Daten, die noch nicht übertragen wurden, ein Journalspeicher (t6fi-i6n) zur fortlaufenden
Speicherung von Adressen von in den Ruckübertragungsspeicher eingespeicherten, verän- -»"
derten Daten und ein Journalverzeichnisspeicher (lSa-lSn)zur Anzeige, welche Daten bereits vorher
verändert worden waren, vorgesehen sind, derart, daß die vom Rückübertragungsspeicher (14) eine
Stufe ausgelesenen veränderten Daten in der vom -'r>
Journalspeicher (16) angegebenen Reihenfolge in den Datenspeicher (10) und den Rückübertragungsspeicher
(14) der nächst niedrigen Stufe übertragen und die Journalspeicher (16) und Journalverzeichnisspeicher
(18) dieser einen und der nächstniedrigen ><> Stufe fortgeschrieben werden.
2. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Datenspeicher
(10) einerseits und andererseits die Rückübertragungsspeicher (14), die Journalspeicher r>
(16) und die Journalverzeichnisspeicher (18) von getrennten Stromversorgungen (Trennlinie 24) gespeist
werden.
3. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die im w
Rückübertragungsspeicher (14) gespeicherten Daten in der Reihenfolge der im Journalspeicher (16)
gespeicherten Adressen, d. h. in der Reihenfolge, in
der die Daten dieser Stufe zuerst verändert wurden, rückübertragen werden. 4 r>
4. Hierarchische Speicheranordnung nach Anspruch 3, gekennzeichnet durch eine Rückübertragungsschaltung
(Fig.5) mit Kippschaltungen (58, 60) zur Belegtanzeige der Speicher (10, 32; 14, 54)
und einen Zähler (53) zur Adressierung des v> Journalspeichers (16, 44) derart, daß Rückübertragungen
von Datenseiten in der Reihenfolge durchgeführt werden, in der die Daten auf der
betreffenden Stufe zuerst verändert und noch nicht rückübertragen worden waren, wobei die Rücküber- «
tragung in den Datenspeicher und den Rückübertragungsspeicher der nächstniedrigeren Stufe dann
durchgeführt wird, wenn diese Speicher frei sind und
wobei Rückübertragungsanzeigen in den Journalspeicher und das Journalverzeichnis dieser nächst- h<
> niedrigen Stufe eingetragen werden und nach Beendigung einer Rückübertragung der Zähler (53)
zur nächsten Journalspeicheradresse weitergeschaltet wird.
5. Hierarchische Speicheranordnung nach An- br>
sprach 1, dadurch gekennzeichnet, daß der Datenspeicher (iQn) und der Rückübertragungspeicher
(14/^der niedrigsten Stufe als nichtinformationsflüssige
Speicher (z. B. Magnetbandspeicher) ausgeführt sind und- die gleichen Daten speichern, und die
anderen Datenspeicher (10a, 106, etc.) als informationsflüchtige
Speicher (z.B. Halbleiterspeicher) ausgeführt sind.
6. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Journalverzeichnisspeicher
(18) als assoziative Speicher (F i g. 6) ausgebildet sind.
7. Hierarchische Speicheranordnung nach Anspruch 3, dadurch gekennzeichnet, daß ein Gültigkeitsbit
in jeder Speicherstelle des Journalspeichers (16, 44), das gesetzt wird, wenn eine ursprüngliche
Eintragung in die Speicherstelle erfolgt und rückgestellt wird, wenn die Daten mit der an dieser
Speicherstelle gespeicherten Adresse rückübertragen worden sind.
8. Hierarchische Speicheranordnung nach Anspruch 1, dadurch gekennzeichnet, daß zur Adressierung
(Adressen β y der Datenspeicher (10; 32, 36) deren Verzeichnisse (12; 26,34) und der Rückübertragungsspeicher
(14; 54, 37) einer jeden Speicherstufe eine Mischschaltung (29, F i g. 4) zur Mischung
von Adressenbits des virtuellen Teils der Datenseitenadresse und von Adressenbits des realen Teils
verwendet wird, derart, daß eine Datenseite nur an einer bestimmten Auswahl von Adressen (Kongruenz-Klasse,
z. B. vier Adressen) gespeichert werden kann und daß in den Verzeichnissen (10; 26,34) der
Datenspeicher (10; 32, 36) für jede dieser Adressen ein Status-Bit vorgesehen ist
9. Hierarchische Speicheranordnung nach Anspruch 8, gekennzeichnet durch eine Statusbit-Schaltung
(56 F i g. 7) mit einem Und-Glied (58), das ein Signal abgibt, wenn alle Adressen einer Kongruenz-Klasse
besetzt sind und die betreffenden Daten verändert aber noch nicht rückübertragen worden
sind, und das eine erzwungene Rückübertragung einleitet
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/486,043 US4020466A (en) | 1974-07-05 | 1974-07-05 | Memory hierarchy system with journaling and copy back |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2523414A1 DE2523414A1 (de) | 1976-01-22 |
DE2523414B2 DE2523414B2 (de) | 1978-04-27 |
DE2523414C3 true DE2523414C3 (de) | 1978-12-14 |
Family
ID=23930382
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2523414A Expired DE2523414C3 (de) | 1974-07-05 | 1975-05-27 | Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen |
Country Status (16)
Country | Link |
---|---|
US (1) | US4020466A (de) |
JP (1) | JPS5615067B2 (de) |
AT (1) | AT355353B (de) |
BR (1) | BR7504244A (de) |
CA (1) | CA1033847A (de) |
CH (1) | CH581864A5 (de) |
DD (1) | DD121208A5 (de) |
DE (1) | DE2523414C3 (de) |
ES (1) | ES438793A1 (de) |
FR (1) | FR2277407A1 (de) |
GB (1) | GB1468483A (de) |
IT (1) | IT1038938B (de) |
NL (1) | NL7506922A (de) |
SE (1) | SE408102B (de) |
SU (1) | SU692585A3 (de) |
ZA (1) | ZA753033B (de) |
Families Citing this family (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1123964A (en) * | 1978-10-26 | 1982-05-18 | Anthony J. Capozzi | Integrated multilevel storage hierarchy for a data processing system |
US4282572A (en) * | 1979-01-15 | 1981-08-04 | Ncr Corporation | Multiprocessor memory access system |
US4264953A (en) * | 1979-03-30 | 1981-04-28 | Honeywell Inc. | Virtual cache |
EP0019358B1 (de) * | 1979-05-09 | 1984-07-11 | International Computers Limited | Hierarchisches Datenspeichersystem |
US5371855A (en) * | 1979-06-04 | 1994-12-06 | Unisys Corporation | Disc cache subsystem having plural-level cache memories |
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 |
US4339804A (en) * | 1979-07-05 | 1982-07-13 | Ncr Corporation | Memory system wherein individual bits may be updated |
AU543278B2 (en) * | 1979-12-14 | 1985-04-18 | Honeywell Information Systems Incorp. | Cache clearing in multiprocessor system |
US4458310A (en) * | 1981-10-02 | 1984-07-03 | At&T Bell Laboratories | Cache memory using a lowest priority replacement circuit |
US4430727A (en) * | 1981-11-10 | 1984-02-07 | International Business Machines Corp. | Storage element reconfiguration |
US4442487A (en) * | 1981-12-31 | 1984-04-10 | International Business Machines Corporation | Three level memory hierarchy using write and share flags |
US4530055A (en) * | 1982-03-03 | 1985-07-16 | Sperry Corporation | Hierarchical memory system with variable regulation and priority of writeback from cache memory to bulk memory |
US4530054A (en) * | 1982-03-03 | 1985-07-16 | Sperry Corporation | Processor-addressable timestamp for indicating oldest written-to cache entry not copied back to bulk memory |
US4811203A (en) * | 1982-03-03 | 1989-03-07 | Unisys Corporation | Hierarchial memory system with separate criteria for replacement and writeback without replacement |
US4464717A (en) * | 1982-03-31 | 1984-08-07 | Honeywell Information Systems Inc. | Multilevel cache system with graceful degradation capability |
US4507751A (en) * | 1982-06-21 | 1985-03-26 | International Business Machines Corporation | Method and apparatus for logging journal data using a log write ahead data set |
US4489381A (en) * | 1982-08-06 | 1984-12-18 | International Business Machines Corporation | Hierarchical memories having two ports at each subordinate memory level |
US4571674A (en) * | 1982-09-27 | 1986-02-18 | International Business Machines Corporation | Peripheral storage system having multiple data transfer rates |
US4638425A (en) * | 1982-09-29 | 1987-01-20 | International Business Machines Corporation | Peripheral data storage having access controls with error recovery |
DE3382152D1 (de) * | 1982-12-09 | 1991-03-07 | Sequoia Systems Inc | Sicherstellungsspeichersystem. |
US4819154A (en) * | 1982-12-09 | 1989-04-04 | Sequoia Systems, Inc. | Memory back up system with one cache memory and two physically separated main memories |
USRE37305E1 (en) * | 1982-12-30 | 2001-07-31 | International Business Machines Corporation | Virtual memory address translation mechanism with controlled data persistence |
US4604709A (en) * | 1983-02-14 | 1986-08-05 | International Business Machines Corp. | Channel communicator |
JPS59165162A (ja) * | 1983-03-11 | 1984-09-18 | インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン | ボリューム回復方法 |
EP0118583A1 (de) * | 1983-03-17 | 1984-09-19 | Georg V. Coza | Speicher-Korrektureinheit |
JPH0644245B2 (ja) * | 1983-12-29 | 1994-06-08 | 富士通株式会社 | ストアバッファ装置 |
JPH065541B2 (ja) * | 1983-12-30 | 1994-01-19 | 株式会社日立製作所 | 論理回路の自動設計方法 |
US4747043A (en) * | 1984-02-10 | 1988-05-24 | Prime Computer, Inc. | Multiprocessor cache coherence system |
US4916605A (en) * | 1984-03-27 | 1990-04-10 | International Business Machines Corporation | Fast write operations |
US4875155A (en) * | 1985-06-28 | 1989-10-17 | International Business Machines Corporation | Peripheral subsystem having read/write cache with record access |
US4814971A (en) * | 1985-09-11 | 1989-03-21 | Texas Instruments Incorporated | Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state |
US5043871A (en) * | 1986-03-26 | 1991-08-27 | Hitachi, Ltd. | Method and apparatus for database update/recovery |
US4872111A (en) * | 1986-08-27 | 1989-10-03 | Amdahl Corporation | Monolithic semi-custom IC having standard LSI sections and coupling gate array sections |
US4926317A (en) * | 1987-07-24 | 1990-05-15 | Convex Computer Corporation | Hierarchical memory system with logical cache, physical cache, and address translation unit for generating a sequence of physical addresses |
GB8805908D0 (en) * | 1988-02-12 | 1988-04-13 | Int Computers Ltd | Data memory system |
US5146571A (en) * | 1988-03-28 | 1992-09-08 | Emc Corporation | Remapping defects in a storage system through the use of a tree structure |
US5043866A (en) * | 1988-04-08 | 1991-08-27 | International Business Machines Corporation | Soft checkpointing system using log sequence numbers derived from stored data pages and log records for database recovery |
US4987533A (en) * | 1988-05-05 | 1991-01-22 | International Business Machines Corporation | Method of managing data in a data storage hierarchy and a data storage hierarchy therefor with removal of the least recently mounted medium |
US5175842A (en) * | 1988-05-31 | 1992-12-29 | Kabushiki Kaisha Toshiba | Data storage control system capable of reading data immediately after powered on |
JPH0752399B2 (ja) * | 1988-06-30 | 1995-06-05 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 記憶システム |
US5166903A (en) * | 1988-10-25 | 1992-11-24 | International Business Machines Corporation | Memory organization with arrays having an alternate data port facility |
US5150328A (en) * | 1988-10-25 | 1992-09-22 | Internation Business Machines Corporation | Memory organization with arrays having an alternate data port facility |
JPH02148235A (ja) * | 1988-11-30 | 1990-06-07 | Toshiba Corp | データ退避方式 |
US6038641A (en) * | 1988-12-30 | 2000-03-14 | Packard Bell Nec | Two stage cache memory system and method |
US5193162A (en) * | 1989-11-06 | 1993-03-09 | Unisys Corporation | Cache memory with data compaction for use in the audit trail of a data processing system having record locking capabilities |
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
JPH04230549A (ja) * | 1990-10-12 | 1992-08-19 | Internatl Business Mach Corp <Ibm> | 多重レベル・キャッシュ |
JP3386823B2 (ja) * | 1991-03-28 | 2003-03-17 | 株式会社日立製作所 | ファイルの管理方法及び装置 |
US5241672A (en) * | 1991-04-01 | 1993-08-31 | Xerox Corporation | System using the storage level of file updates in nonvolatile memory to trigger saving of RAM to disk and using the file updates to reboot after crash |
US5357607A (en) * | 1991-04-01 | 1994-10-18 | Xerox Corporation | File storage process for electronic printing systems having multiple disks |
JPH04305741A (ja) * | 1991-04-02 | 1992-10-28 | Nec Corp | データベース入出力制御方式 |
JPH0827754B2 (ja) * | 1992-05-21 | 1996-03-21 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータシステムにおけるファイル管理方法及びファイル管理システム |
US5577222A (en) * | 1992-12-17 | 1996-11-19 | International Business Machines Corporation | System for asynchronously duplexing remote data by sending DASD data grouped as a unit periodically established by checkpoint based upon the latest time value |
US5303146A (en) * | 1993-03-11 | 1994-04-12 | Borland International, Inc. | System and methods for improved scenario management in an electronic spreadsheet |
US6662307B1 (en) | 1993-06-14 | 2003-12-09 | Unisys Corporation | Disk recovery/reconstruction |
WO1995034860A1 (en) * | 1994-06-10 | 1995-12-21 | Sequoia Systems, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system |
US5590274A (en) * | 1995-01-23 | 1996-12-31 | Tandem Computers Incorporated | Multi-volume audit trails for fault tolerant computers |
US5680537A (en) * | 1995-03-01 | 1997-10-21 | Unisys Corporation | Method and apparatus for isolating an error within a computer system that transfers data via an interface device |
US5784393A (en) * | 1995-03-01 | 1998-07-21 | Unisys Corporation | Method and apparatus for providing fault detection to a bus within a computer system |
US5784712A (en) * | 1995-03-01 | 1998-07-21 | Unisys Corporation | Method and apparatus for locally generating addressing information for a memory access |
US5784382A (en) * | 1995-03-01 | 1998-07-21 | Unisys Corporation | Method and apparatus for dynamically testing a memory within a computer system |
US5828823A (en) * | 1995-03-01 | 1998-10-27 | Unisys Corporation | Method and apparatus for storing computer data after a power failure |
JP3086779B2 (ja) * | 1995-06-19 | 2000-09-11 | 株式会社東芝 | メモリ状態復元装置 |
US5778165A (en) * | 1995-10-20 | 1998-07-07 | Digital Equipment Corporation | Variable-level backup scheduling method and apparatus |
US5737514A (en) * | 1995-11-29 | 1998-04-07 | Texas Micro, Inc. | Remote checkpoint memory system and protocol for fault-tolerant computer system |
US5751939A (en) * | 1995-11-29 | 1998-05-12 | Texas Micro, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system using an exclusive-or memory |
US5745672A (en) * | 1995-11-29 | 1998-04-28 | Texas Micro, Inc. | Main memory system and checkpointing protocol for a fault-tolerant computer system using a read buffer |
US5864657A (en) * | 1995-11-29 | 1999-01-26 | Texas Micro, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system |
US5809331A (en) * | 1996-04-01 | 1998-09-15 | Apple Computer, Inc. | System for retrieving configuration information from node configuration memory identified by key field used as search criterion during retrieval |
US5889935A (en) * | 1996-05-28 | 1999-03-30 | Emc Corporation | Disaster control features for remote data mirroring |
US6052797A (en) * | 1996-05-28 | 2000-04-18 | Emc Corporation | Remotely mirrored data storage system with a count indicative of data consistency |
US5829038A (en) * | 1996-06-20 | 1998-10-27 | Intel Corporation | Backward inquiry to lower level caches prior to the eviction of a modified line from a higher level cache in a microprocessor hierarchical cache structure |
US5845330A (en) * | 1996-07-03 | 1998-12-01 | Sun Microsystems, Inc. | Using an intermediate storage medium in a database management system |
TW379298B (en) * | 1996-09-30 | 2000-01-11 | Toshiba Corp | Memory updating history saving device and memory updating history saving method |
US5940826A (en) * | 1997-01-07 | 1999-08-17 | Unisys Corporation | Dual XPCS for disaster recovery in multi-host computer complexes |
US5949970A (en) * | 1997-01-07 | 1999-09-07 | Unisys Corporation | Dual XPCS for disaster recovery |
US5909698A (en) * | 1997-03-17 | 1999-06-01 | International Business Machines Corporation | Cache block store instruction operations where cache coherency is achieved without writing all the way back to main memory |
US6298345B1 (en) * | 1998-07-10 | 2001-10-02 | International Business Machines Corporation | Database journal mechanism and method that supports multiple simultaneous deposits |
US6463509B1 (en) | 1999-01-26 | 2002-10-08 | Motive Power, Inc. | Preloading data in a cache memory according to user-specified preload criteria |
US6370614B1 (en) | 1999-01-26 | 2002-04-09 | Motive Power, Inc. | I/O cache with user configurable preload |
DE10211606B4 (de) * | 2002-03-12 | 2017-06-08 | Kip Cr P1 Lp | Datenverarbeitungseinrichtung mit einem Metadatensicherungsmanagement |
US7606994B1 (en) * | 2004-11-10 | 2009-10-20 | Sun Microsystems, Inc. | Cache memory system including a partially hashed index |
JP4938328B2 (ja) * | 2006-03-28 | 2012-05-23 | 株式会社日立製作所 | 記憶システム及びその電源制御方法並びにストレージ装置 |
US8874517B2 (en) * | 2007-01-31 | 2014-10-28 | Hewlett-Packard Development Company, L.P. | Summarizing file system operations with a file system journal |
US8185706B2 (en) | 2008-04-30 | 2012-05-22 | Apple Inc. | Copyback optimization for memory system |
US10223026B2 (en) * | 2013-09-30 | 2019-03-05 | Vmware, Inc. | Consistent and efficient mirroring of nonvolatile memory state in virtualized environments where dirty bit of page table entries in non-volatile memory are not cleared until pages in non-volatile memory are remotely mirrored |
US10140212B2 (en) * | 2013-09-30 | 2018-11-27 | Vmware, Inc. | Consistent and efficient mirroring of nonvolatile memory state in virtualized environments by remote mirroring memory addresses of nonvolatile memory to which cached lines of the nonvolatile memory have been flushed |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1925427A1 (de) * | 1968-05-25 | 1970-01-15 | Fujitsu Ltd | Datenuebertragungsvorrichtung zum UEbertragen von Daten zwischen Informationsspeichern |
JPS5633915B1 (de) * | 1970-11-06 | 1981-08-06 | ||
US3737866A (en) * | 1971-07-27 | 1973-06-05 | Data General Corp | Data storage and retrieval system |
US3806888A (en) * | 1972-12-04 | 1974-04-23 | Ibm | Hierarchial memory system |
US3810110A (en) * | 1973-05-01 | 1974-05-07 | Digital Equipment Corp | Computer system overlap of memory operation |
-
1974
- 1974-07-05 US US05/486,043 patent/US4020466A/en not_active Expired - Lifetime
-
1975
- 1975-05-05 GB GB1867675A patent/GB1468483A/en not_active Expired
- 1975-05-12 ZA ZA00753033A patent/ZA753033B/xx unknown
- 1975-05-23 FR FR7516576A patent/FR2277407A1/fr active Granted
- 1975-05-27 DE DE2523414A patent/DE2523414C3/de not_active Expired
- 1975-05-27 CH CH673875A patent/CH581864A5/xx not_active IP Right Cessation
- 1975-05-28 AT AT407675A patent/AT355353B/de not_active IP Right Cessation
- 1975-05-30 CA CA228,419A patent/CA1033847A/en not_active Expired
- 1975-06-11 NL NL7506922A patent/NL7506922A/xx unknown
- 1975-06-16 IT IT24378/75A patent/IT1038938B/it active
- 1975-06-19 SE SE7507113A patent/SE408102B/xx unknown
- 1975-06-23 ES ES438793A patent/ES438793A1/es not_active Expired
- 1975-06-24 JP JP7712575A patent/JPS5615067B2/ja not_active Expired
- 1975-07-04 DD DD187104A patent/DD121208A5/xx unknown
- 1975-07-04 BR BR5434/75D patent/BR7504244A/pt unknown
- 1975-07-04 SU SU752152006A patent/SU692585A3/ru active
Also Published As
Publication number | Publication date |
---|---|
FR2277407B1 (de) | 1977-04-15 |
AT355353B (de) | 1980-02-25 |
SE7507113L (sv) | 1976-01-07 |
SU692585A3 (ru) | 1979-10-15 |
ZA753033B (en) | 1976-12-29 |
SE408102B (sv) | 1979-05-14 |
CA1033847A (en) | 1978-06-27 |
FR2277407A1 (fr) | 1976-01-30 |
CH581864A5 (de) | 1976-11-15 |
IT1038938B (it) | 1979-11-30 |
JPS5615067B2 (de) | 1981-04-08 |
ATA407675A (de) | 1979-07-15 |
DD121208A5 (de) | 1976-07-12 |
BR7504244A (pt) | 1976-07-06 |
JPS5119455A (de) | 1976-02-16 |
DE2523414B2 (de) | 1978-04-27 |
AU8100675A (en) | 1976-11-11 |
NL7506922A (nl) | 1976-01-07 |
GB1468483A (en) | 1977-03-30 |
US4020466A (en) | 1977-04-26 |
ES438793A1 (es) | 1977-03-16 |
DE2523414A1 (de) | 1976-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2523414C3 (de) | Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen | |
DE2656546C2 (de) | Datenblock-Austauschanordnung | |
DE2515696C2 (de) | Datenverarbeitungssystem | |
DE2226382C3 (de) | Datenverarbeitungsanlage mit mehreren Prozessoren und diesen zugeordneten Pufferspeichern | |
EP0013737A1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE2928488A1 (de) | Speicher-subsystem | |
DE2359178A1 (de) | Speicheranordnung | |
DE2241257B2 (de) | Datenverarbeitende Anlage | |
DE2841041A1 (de) | Datenverarbeitungsanlage mit mindestens zwei mit einem schnellen arbeitsspeicher ausgeruesteten prozessoren | |
DE3011552A1 (de) | Datenverarbeitungsanlage mit einem hauptspeicher sowie wenigsten einem datenprozessor mit zugeordnetem adressenumformer | |
DE2854748A1 (de) | Speichereinrichtung | |
DE2331589A1 (de) | Datenverarbeitungsanordnung | |
DE3128729A1 (de) | Halbleiter-speichersystem | |
DE2212873A1 (de) | Aus Schieberegistern aufgebaute Speichereinrichtung | |
DE2350146A1 (de) | Verfahren und netzwerk zur neuordnung eines rechnerspeichersystems | |
DE2400064A1 (de) | Speicherpruefanordnung und diese verwendendes endgeraetsystem in einem datenverarbeitungssystem | |
DE1524788C3 (de) | Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern | |
DE2926322C2 (de) | Speicher-Subsystem | |
DE3045609C2 (de) | ||
DE2054830A1 (de) | Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen Speicher | |
DE1524111C3 (de) | Elektronische Datenverarbeitungsanlage | |
DE2912073A1 (de) | Stapelspeicheranordnung zur kurzzeitigen speicherung von informationen bei nichtabsetzbarkeit dieser informationen in einem datenverarbeitungssystem | |
DE2554502A1 (de) | Verfahren und anordnung zum speichern binaerer datenelemente | |
DE2648225A1 (de) | Datenspeicherwerk mit mehreren speichermodulen | |
DE2610428C3 (de) | Anordnung zur Steuerung der Zwischenspeicherung von zwischen zwei Funktionseinheiten zu übertragenden Daten in einem Pufferspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |