DE2922597A1 - Cache-speicher und verfahren zum betrieb einer datenverarbeitungsanlage - Google Patents
Cache-speicher und verfahren zum betrieb einer datenverarbeitungsanlageInfo
- Publication number
- DE2922597A1 DE2922597A1 DE19792922597 DE2922597A DE2922597A1 DE 2922597 A1 DE2922597 A1 DE 2922597A1 DE 19792922597 DE19792922597 DE 19792922597 DE 2922597 A DE2922597 A DE 2922597A DE 2922597 A1 DE2922597 A1 DE 2922597A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- data
- signal
- data word
- cache
- 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.)
- Withdrawn
Links
Classifications
-
- 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/126—Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
-
- 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/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
BLUMBACH . WESER . BERGEN". KRAMER ZWIRNER · BREHM
PATENTANWÄLTE IN MÜNCHEN UND WIESBADEN 2^22^9 7
-4-
Palenlconsull RadedcestraOe 43 8000 München 60 Telefon (089) 883603/883604 Telex 05-212313 Telegramme Patentconsult
Patenlconsull Sonnenberger Straße 43 6200 Wiesbaden Telefon (06121) 562943/561998 Telex 04-186237 Telegramme Patentconsult
Western Electric Company Incorporated Chang, S.J.
Broadway, New York N.Y. 10038, USA 1"19
Cache-Speieher und Verfahren zum Betrieb
einer Datenverarbeitungsanlage
Die Erfindung betrifft Cache-Speieher für eine Datenverarbeitungsanlage
mit einer Einrichtung zur Speicherung von Datenwörtern, einer adressierbaren Identifizierung für jedes
Datenwort und einer Angabe bezüglich der Gültigkeit oder Ungültigkeit jedes Wortes sowie ein Verfahren zum Betrieb
einer Datenverarbeitungsanlage mit einem Prozessor, einem Hauptspeicher und einem Cache-Speicher, wobei in dem Cache-Speicher
vom Prozessor benötigte Datenwörter, eine adressier- -bare Identifizierung für jedes Datenwort und eine Angabe bezüglich
der Gültigkeit oder Ungültigkeit jedes Wortes gespeichert wird.
München: R. Kremer Dipl.-Ing. · W. Weser Dipl.-Phys. Dr. rer. nat. . H.P.Brehro Dipl.-Chem. Dr. phil. nat.
Wiesbaden: P. G. Blumbach Dipl.-Ing. · P. Bergen Dipl.-Ing. Dr. jur. · G. Zwirner Dipl.-Ing. Dipl.-W.-Ing.
909851/0682
2112597
Zur Verringerung der effektiven Speicherzugriffszeit bei vernünftigem Aufwand sind nach dem Stand der Technik Anlagen
bekannt, die einen Prozessor, einen Hauptspeicher hoher Kapazität und niedriger Geschwindigkeit (mit Bezug auf die
Arbeitsgeschwindigkeit des Prozessors) und einen Cache-Speicher kleiner Kapazität und hoher Geschwindigkeit, vergleichbar
mit der Arbeitsgeschwindigkeit des Prozessors, aufweisen. Vom Prozessor benötigte Informationen werden aus
dem Hauptspeicher gelesen, dem Prozessor zur Verfugung gestellt und in den Cache-Speicher geschrieben. ',Wenn der Prozessor
die gleichen Informationen erneut benötigt, werden sie direkt aus dem Cache-Speicher gelesen, um die Verarbeitungsverzögerung
zu vermeiden, die beim Lesen des Hauptspeichers auftritt. Wenn der Cache-Speicher voll ist und der
Prozessor Informationen benötigt, die nicht im Cache-Speicher abgelegt sind, so müssen die gewünschten Informationen aus dem
Hauptspeicher gewonnen und eine Speicherstelle im Cache-Speicher identifiziert werden, um diese neuen Informationen zu
speichern. Eine befriedigende Cache-Speicherstelle zur Aufnahme neuer Informationen wird durch eines von mehreren,
,üblicherweise benutzten Ersetzungsverfahren festgestellt, beispielsweise durch eine zufällige Ersetzung oder Ersetzung
der am längsten nicht benutzten Informationen. Die Ersetzung von Informationen im Cache-Speicher stellt neue Informationen
in diesem Speicher zwecks Verwendung durch den Prozessor bereit. *
909851/0682
-6- 2822597
In Datenverarbeitungsanlagen werden zur Verringerung des erforderlichen Speicherraumes und zur Vereinfachung der
Codierung oder Programmierung, der Anlage Unterprogramme (Subroutinen) benutzt. Das kann jedoch Zeitverzögerungen
verursachen, da Rückkehradressen und der Inhalt von Prozessor-Registern
beim Eintritt in ein Unterprogramm gerettet werden müssen, so daß bei Rückkehr aus. dem Unterprogramm
die Verarbeitung wieder aufgenommen werden kann. In vielen Datenverarbeitungsanlagen machen Unterprogramme eine Vielzahl
von Hauptspeicher-Schreib- und -Lesevorgängen erforderlich, wodurch sich Verzögerungen auf Grund der Ungleichheit
zwischen der Speicherzugriffszeit und der Prozessor-Zykluszeit ergeben. In Datenverarbeitungsanlagen, die einen Cache-Speicher
enthalten, wird die Verzögerung dadurch herabgesetzt, daß die für Unterprogramm-Operationen erforderlichen Informationen
über den Cache-Speicher bearbeitet werden.
Unterprogramm-Informationen, die bei Rückkehr aus einem Unterprogramm zur Aufnahme der normalen Verarbeitung erforderlich
sind, werden nur einmal benötigt, nämlich bei Rückkehr aus dem Unterprogramm. Wenn ein Cache-Speicher zur Aufnahme
von Unterprogramm-Informationen benutzt wird, so wird die Unterprogramm-Information, die der Prozessor aus dem
Cache-Speicher gelesen hat, nicht wieder benötigt, sondern bleibt im Cache-Speicher, bis sie durch das jeweils benutzte
Ersetzungsverfahren entfernt wird. Demgemäß ist der Betrieb
909851/0682
2122597
des Cache-Speichers nicht so wirkungsvoll wie möglich.
Die Erfindung hat sich die Aufgabe gestellt, diese Schwierigkeiten
zu beseitigen. Sie geht dazu aus von einem Cache-Speicher der eingangs genannten Art und ist gekennzeichnet
durch eine Anordnung, die beim Adressieren des Speichers mit einer Identifizierung unter Ansprechen darauf, daß diese
Identifizierung gespeichert ist, sowie auf eine Angabe, daß das entsprechende Datenwort gültig ist, und auf ein Lesesignal
eine Ungültigkeitsangabe mit Bezug auf das Datenwort
speichert.
Für das eingangs genannte Verfahren zum Betrieb einer Datenverarbeitungsanlage
ist die Erfindung dadurch gekennzeichnet, daß beim Adressieren des Cache-Speichers mit einer in ihm
gespeicherten Identifizierung und, wenn das entsprechende Datenwort gültig ist, eine Leseoperation bewirkt, daß eine
Ungültigkeitsangabe für dieses Datenwort gespeichert wird. Dadurch wird unmittelbar eine Speicherstelle im Cache-Speicher
zur Aufnahme neuer, aus dem Hauptspeicher gelesener Informationen bereitgestellt , und es ist nicht erforderlich,
daß nutzlose Informationen , beispielsweise vorher gelesene
Unterprogramm-Informationen, durch wiederholte Anwendung des Ersetzungsverfahrens aus dem Cache-Speicher
entfernt werden.
909851/0682
Ein weiteres Merkmal eines bevorzugten Ausführungsbeispiels der Erfindung ist eine Leseoperation, die so ausgebildet
ist, daß nutzlose, aus dem Hauptspeicher gelesene Informationen nicht in den Cache-Speicher eingeschrieben werden.
Wenn ein angefordertes Datenwort nicht im Cache-Speicher
abgelegt ist (dies wird als Cache-"Fehlen" bezeichnet) und
daher aus dem Hauptspeicher gelesen werden muß, so wird das gelesene Datenwort zum Prozessor geführt, aber nicht in den
Cache-Speicher eingeschrieben.
Ein weiteres Merkmal des bevorzugten Ausführungsbeispiels der Erfindung besteht darin, daß zwei Schreiboperationen zur
Verfügung stehen, die nachfolgend als normales Schreiben und als spezielles Schreiben bezeichnet werden. Bei einem normalen
Schreiben wird ein Datenwort direkt in den Hauptspeicher, aber nicht in den Cache-Speicher eingeschrieben. Der Cache-Speicher
wird jedoch abgefragt. Wenn ein Cache-Treffer auftritt, so kann entweder das Datenwort auf den neuesten Stand
gebracht oder aus dem Cache-Speicher dadurch entfernt werden, daß das Gültigkeitsbit derjenigen Cache-Speicherstelle, die
zu dem Treffer geführt hat, in den ungültigen Zustand eingestellt werden (ob das Datenwort auf den neuesten Stand
gebracht oder entfernt wird, hängt von der Entscheidung des Benutzers ab). Für einen speziellen Schreibvorgang wird ein
Datenv/ort sowohl in den Cache-Speicher als auch in den Hauptspeicher geschrieben.
909851/0682
2S.22597
Nachfolgend wird das bevorzugte Ausführungsbeispiel der
Erfindung anhand der Zeichnungen beschrieben. Es zeigen: Fig. 1 das Blockschaltbild einer Datenverarbeitungsanlage;
Fig. 2 bis 5 ein detailliertes Blockschaltbild eines
erfindungsgemäßen Cache-Speichers gemäß Fig.1; Fig. β die Zuordnung der Fig. 2-5.
Der Cache-Speicher 102 in Fig. 1 nimmt eine Untergruppe der
im Hauptspeicher 103 gespeicherten Datenwörter auf, so daß
der Prozessor 101 schnellen Zugriff zu dieser Untergruppe von Datenwörtern hat. Die im Cache-Speicher 102 gespeicherten
Datenwörter befinden sich im Datenspeicher 107 und werden anhand
eines Verzeichnisses identifiziert, das als Etikettspeicher
106 bezeichnet wird. Die Speicherstellen des Etikettspeichers 106 entsprechen den Speicherstellen des Datenspeichers
107 und nehmen Adress-Etiketten (tags) für die Identifizierung der Datenwörter im Datenspeicher 107 auf. Jede Speicherstelle
des Etikettspeichers beinhaltet ein Gültigkeitsbit, um den. augenblicklichen Zustand des Datenwortes in der entsprechenden
Speicherstelle des Datenspeichers anzugeben. Ein gültiges Gültigkeitsbit (Zustand H oder logisch 1) gibt an,
daß das entsprechende Datenwort im Datenspeicher 107 gültig
ist. Andererseits gibt ein ungültiges Gültigkeitsbit (Zustand L oder logisch 0) an, daß das entsprechende Datenwort ungültig
ist und vom Prozessor 101 nicht benutzt werden kann.
909851/0682
Ein·Cache-Speicher wird als rein assoziativ bezeichnet,
wenn jedes Hauptspeicher-Datenwort in jeder Speicherstelle des Cache-Speichers gespeichert werden kann. Bei einem rein
assoziativen Cache-Speicher muß jedes gespeicherte Adress-Etikett geprüft werden, um festzustellen, ob ein angegebenes
Datenwort im Cache-Speicher gespeichert ist. Ein Cache-Speicher wird als gruppen-assoziativ bezeichnet, wenn jedes gegebene
Hauptspeicher-Datenwort nur in einer Untergruppe von Speicherstellen des Cache-Speichers gespeichert werden kann.
Ein gruppen-assoziativer Cache-Speicher verringert den Schaltungsaufwand und/oder die zur Durchführung einer Cache-Operation
erforderliche Zeit, da nur die entsprechende Untergruppe von Adress-Etiketten geprüft werden muß, um festzustellen, ob
sich ein angegebenes Datenwort im Cache-Speicher befindet. Der Cache-Speicher 102 des Ausführungsbeispiels der Erfindung
ist gruppen-assoziativ und hat eine Gruppengröße gleich 4 (vgl. Fig.2-5). Es sei darauf hingewiesen, daß jede Gruppengröße
verwendet werden könnte und daß sich die Erfindung in
gleicher Weise auf eine Datenverarbeitungsanlage anwenden läßt, die einen rein assoziativen Cache-Speicher benutzt.
Der Prozessor 101 adressiert das Speichersystem mit dem Hauptspeicher 103 und dem Cache-Speicher 102 durch Bereitstellen
der Hauptspeicheradresse eines gewünschten Datenwortes. Die Hauptspeicheradresse ist für die Cache-Speicheroperation
in zwei Gruppen von Adressbits unterteilt. Die
909851/0682
■11~ 2122597
niedrigstelligen Adressbits (ADDR) adressieren Speicherstellen im Etikettspeicher 106 und im Datenspeicher 107
über die Leitungen 108. Die hochstelligen Adressbits dienen als die Adress-Etiketten (AT), die im Etikettspeicher 106
zur Identifizierung von im Datenspeicher 107 abgelegten Datenwörtern gespeichert sind, und werden dem Etikettspeicher
106 und einer Trefferanzeigeschaltung 116 über die Lei- ■
tungen 109 zugeführt. Die Etikettspeicher-Steuerschaltung erzeugt die Gültigkeitsbits und steuert die Lese- und Schreiboperationen
des Etikettspeichers 106, Die Datenspeicher-Steuer schaltung 111 steuert die Lese- und Schreiboperationen
des Datenspeichers 107. Diese Steuerschaltungen sollen nachfolgend im einzelnen beschrieben werden.
Um festzustellen, ob das gewünschte Datenwort im Cache-Speicher abgelegt ist, wird die Untergruppe von 4 Adress-Etiketten,
die gegebenenfalls das gewünschte Datenwort identifizieren könnten, aus dem Etikettspeicher 106 gelesen und zur
Trefferanzeigeschaltung 116 gegeben. Dort werden sie mit den Adress-Etiketten des gewünschten Datenwortes verglichen.
Wenn eine Übereinstimmung zwischen einer der aus dem Etikett-Speicher
106 gelesenen Adress-Etiketten und der vom Prozessor
auf der Leitung 109 gelieferten Adress-Etikette des gewünschten Datenwortes vorhanden ist und außerdem die aus dem
Adress-Speicher gelesene Adress-Etikette außerdem ein gültiges Gültigkeitsbit enthält, dann wird ein Treffersignal erzeugt.
Im. andren Fall wird ein Fehlsignal erzeugt. Das Tref-
909851/0682
-12- 2822597
fer/Fehl-Signal wird über die Leitung 117 zum Prozessor 101,
zur Datenspeicher-Steuerschaltung 111 und zur Etikettspeicher-Steuer
schaltung 110 übertragen.
Die Ersetzungsschaltung 113 nimmt die aus dem Etikettspeicher
106 gelesenen Gültigkeitsbits auf, um eine Cache-Speicherstelle auszuwählen, in die ein neues, im Augenblick nicht
im Cache-Speicher abgelegtes Datenwort eingespeichert werden soll. Wenn eines der Datenwörter in der Untergruppe von
Datenspeicherstellen, die dem neuen Datenwort entsprechen, im Etikettspeicher 106 als .ungültig markiert ist, dann wird
eine derjenigen Speicherstellen, die ein ungültiges Datenwort beinhalten, bevorzugt ausgewählt. Wenn alle 4 Speicherstellen,
• die zur Aufnahme des neuen Datenwortes verfügbar sind, gültige Daten enthalten, dann wird eine dieser Spei eher stellen auf
zufälliger Basis für die Ersetzung ausgewählt. D^e Arbeitsweise
der Ersetzungsschaltung 113 wird später genauer beschrieben.
Der Prozessor 101 gibt 4 verschiedene Befehle an den Cache-Speicher
102 , nämlich normal Lesen, speziell Lesen, normal Schreiben und speziell Schreiben. Die Befehle können von Prozessoren
bekannter Art erzeugt werden, beispielsweise durch einen Mikrocode auf Grund von vorgegebenen Programmbefehlen,
die der Prozessor 101 ausführt. Das Lese/Schreib-Signal (R/W,
909851/0682
1112597
Zustand L oder logisch 0 für Schreiben und Zustand H oder Dogisch 1 für Lesen) und das Speziell-Signal (SPL, Zustand
L oder logisch 0 für Speziell und Zustand H oder logisch 1 für Normal) werden "dem Cache-Speicher 102 über die Leitung
105 bzw. 119 zugeführt. Bei Schreiboperationen liefert der Prozessor 101 Datenwörter auf dem Datenbus 112, und für ■Schreiboperationen
nimmt der Prozessor Datenwörter auf dem Datenbus 112 auf. Der Prozessor erstellt zu Anfang die Befehlssignale,
die Adressensignale und Datensignale (falls erforderlich) und aktiviert dann das Signal Cache-GO (CAGO, aktiv im Zustand L
oder logisch 0). Das Signal Cache-GO wird über die Leitung einer Folgeschaltung 115 zugeführt. Die Folgeschaltung 115
liefert Zeitsteuerungsimpulse, die für Cache-Speicheroperationen
erforderlich sind, und soll später genauer beschrieben werden.
Fig. 2 bis 5 bilden ein detailliertes Blockschaltbild des gruppen-assoziativen Cache-Speichers 102. Der Etikettspeicher
106 weist 4 unabhängige, aber identische Etikettspeichermodule 201, 202, 203, 204 auf. Entsprechend weist der Datenspeicher
107 4 unabhängige, aber identische Datenspeichermodule 410,
411, 412, 4.13 auf, die den Etikettspeichermodulen entsprechen.
Alle Etikettspeicher- und Datenspeichermodule werden gleichzeitig über die Leitungen 108 mit den niedrigstelligen Adressenbits
der Hauptspeicheradresse adressiert. Wenn ein Daten-
909851/0682
2422597
wort im Datenspeicher 107 abgelegt ist, befindet es sich in einem der Datenspeichermodule an einer Adresse, die gleich
den niedrigstelligen Adressenbits der Hauptspeicheradresse für das Datenwort ist. Außerdem ist, wenn ein Datenwort in
einem der Datenspeichermodule abgelegt ist, das Datenwort-Adressetikett (die hochstelligen Bits der Hauptspeicheradresse
für das Datenwort) im entsprechenden Adress-Speichermodul abgelegt, um dies anzuzeigen. Jede Adress-Speichermodul-Speicherstelle
enthält außerdem ein Gültigkeitsbit, das den Status des entsprechenden, im Datenspeichermodul abgelegten
Datenwortes angibt, d.h. ob das Datenwort gültig ist und vom Prozessor benutzt werden kann oder ungültig ist. Demgemäß
besteht der erste Schritt einer Cache-Speicheroperation darin, die Etikettspeichermodule zu lesen, um festzustellen, ob das
gewünschte Datenwort im Cache-Speicher gespeichert ist.
Während der Anfangsphase des Cache-Speicherzyklus werden die Etikettspeichermodule auf Grund des Zeitsteuerungssignals T
von der Folgeschaltung 115 gelesen. Die Adressetiketten, die
aus den Etikettspeichermodulen an der vom Prozessor 101 auf den Leitungen 108 gelieferten Adresse gelesen werden, werden
den zugeordneten Vergleichsschaltungen 301, 302, 303, 304 zugeführt, die Teil der Trefferanzeige schaltung 116 sind«, Das
Adressetikett, das vom Prozessor auf den Leitungen 109 geliefert wird, ist das andere Eingangssignal für die Vergleichsschaltungen 301 bis 304. Wenn das aus einem Etikettspeicher-
909851/0682
* . 2112597
modul gelesene Adressetikett mit dem Adressetikett auf den
Leitungen 109 übereinstimmt, dann gibt die jeweilige Vergleichsschaltung ein Signal H von ihrem Ausgangsanschluß zu
einem zugeordneten NAND-Gatter der NAND-Gatter 305, 306, 307 und 308. Die aus den Etikettspeichermodulen gelesenen Gültigkeitsbits
werden ebenfalls zu den NAND-Gattern 305 bis 308 geführt. Wenn eine Vergleichsschaltung ein Signal H liefert,
das angibt, daß eine Übereinstimmung aufgetreten ist, und wenn das zugeordnete Gültigkeitsbit ebenfalls ein Signal H
ist, das angibt, daß das gespeicherte Datenwort gültig ist, dann signalisiert das betreffende NAND-Gatter der NAND-Gatter
305 bis 308 einen Treffer, indem es ein Signal L an seinem Ausgangsanschluß abgibt. Die Signale der NAND-Gatter 305 bis
308 werden in einem Zwischenspeicher 309 gespeichert und invertiert,
so daß der Inhalt der Etikettspeichermodule geändert werden kann, während die Treffer- oder Fehlinformation zurückbehalten
wird. Die Q-Ausgänge des bistabilen Zwischenspeichers
309 folgen ihren entsprechenden Dateneingängen D , so lange
das Signal am Betätigungsanschluß G auf H ist. Wenn das Signal
am Betätigungsanschluß auf L geht, dann werden die Signale , die zum Zeitpunkt des Übergangs an den Dateneingängen
anstehen, im bistabilen Zwischenspeicher 309 festgehalten, bis das Signal am Betätigungsanschluß G wieder auf H .geht.
Die Folgeschaltung 115 liefert 4 gleiche Zeitsteuerungsimpulse
T 0, T 1, T2 und T 3, die im Zustand L oder logisch 0 aktiv sind. Der Inverter 310 stellt die richtige Polarität
her, so daß die von den NAND-Gattern 305 bis 308 erzeugten
9098 51/06 82
Signale während des Zeitsteuerungsimpulses T1 registriert und bei Beendigung des Zeitsteuerungsimpulses T1 festgehalten
werden. Wenn ein Cache-Treffer in einem der Etikettspeichermodule festgestellt wird, dann ist das entsprechende Treffersignal
A, B, C oder D (das auf einer der Leitungen 317, 318, 319 bzw·320 übertragen wird) auf H. Das NOR-Gatter 311 nimmt
die Treffersignale von den Ausgangsanschlüssen Q des bistabilen Zwischenspeichers 309 auf und erzeugt ein Fehlsignal (Zustand
H oder logisch 1) auf der Leitung 117, wenn kein Treffer festgestellt wird.
Die Ersetzüngsschaltung 113 bestimmt, welche Cache-Speicherstelle
(d.h. eine Speicherstelle in einem Etikettspeichermodul und die entsprechende Speicherstelle in einem Datenspeichermodul)
zur Speicherung eines neuen Datenwortes benutzt werden soll, das der Prozessor benötigt, das aber im Augenblick nicht
im Cache-Speicher gespeichert ist. Die Ersetzungsschaltung wählt für die Ersetzung einer Speichersteile, die ungültige
Daten enthält, wenn eine der Speicherstellen der verfügbaren Untergruppe von Speicherstellen ungültige Daten beinhaltet.
Wenn mehr als eine Speicherstelle der Untergruppe ungültige Daten enthält, dann wählt die Ersetzungsschaltung 113 die
Speicherstelle im Datenspeichermodul mit der höchsten Priorität, wobei A gegenüber B, B gegenüber C und C gegenüber D
bevorzugt wird. Wenn alle Speicherstellen der Untergruppe gültige Datenwörter enthalten, dann geht die Ersetzungsschal-
909851/0682
tung 113 zu"einem Zufallsverfahren über, d.h. sie wählt willkürlich
eine der Spebherstellen der Untergruppe für die Aufnahme
des neuen Datenwortes. Die aus den Etikettspeichermodulen gelesenen Gültigkeitsbits werden dem Prioritätscodierer 312 der
Ersetzungsschaltung 113 zugeführt. Wenn alle 4 Eingangssignale des Prioritätscodierers 312 auf H sind, dann sind die Signale
an den Ausgangsanschlüssen AO,A1 und GS alle auf H. Das würde dem Fall entsprechen, für den die Datenwörter in allen Datenspeichermodulen
gültig sind , und demgemäß weicht;die Ersetzungsschaltung 113 auf das Ersetzungsverfahren auf zufälliger Basis
aus. Wenn eines der Signale an den Eingangsanschlüssen des Prioritätscodierers 312 auf L ist, dann ist das Signal am Ausgangsanschluß
GS auf L, und die Signale an den Ausgangsanschlüssen AO und A1 sind die folgenden: ■ · '
Wenn das Signal am Eingangsanschluß 1 auf L ist, dann sind die Signale an den Ausgangsanschlüssen AO und A1 auf L. Wenn das
Signal am Eingangsanschluß 1 auf H, das Signal am Eingangsanschluß
2 aber auf L ist, dann sind die Signale an den Ausgangsanschlüssen AO und A1 auf H bzw. L. Wenn die Signale an den Eingangsanschlüssen
1 und 2 auf H sind, das Signal am Eingangsanschiuß 3 aber auf L, dann sind die Signale an den Ausgangsanschlüssen AO und A1 auf L bzw. H. Wenn die Signale an den Eingangsanschlüssen
1,2 und 3 auf H "sind, das Signal am Eingangsanschluß 4 aber auf L, dann sind die Signale an den Ausgangsanschlüssen
AO und A1 beide auf H. Die Ausgangssignale des Prioritätscodierers 312 werden zum bistabilen Zwischenspeicher 313
übertragen, der dem oben beschriebenen Zwischenspeicher 309 ähn-
909851/0682
• -18-
lieh ist. Wenn das Signal am Eingangsanschluß G des bistabilen
Zwischenspeichers 313 auf H ist, dann folgen die Signale an den Ausgangsanschlüssen 1Q, 2Q und 3Q den Signalen
an den Dateneingangsanschlüssen 1D, 2D und 3D. Wenn das Signal
am Betätigungsanschluß G auf L geht, dann werden die Signale, die zum Zeitpunkt des Übergangs an den Dateneingangsanschlüssen
vorhanden waren, an den Ausgangsanschlüssen Q festgehalten, bis das Signal am Anschluß G wieder auf H gehen kann.
Die Rückflanke des Zeitsteuerungssignals T1 von der Folgeschaltung
115 hält die Ausgangssignale des Prioritätscodierers 312 im bistabilen Zwischenspeicher 313 fest, nachdem die
Ausgangssignale des Prioritätscodierers die Möglichkeit hatten, sich zu stabilisieren.
Die Signale an den Ausgangsanschlüssen 1Q und 2Q des Zwischenspeichers
313 werden zu den Eingängen 1A und 2A des Datenwählers 314 geführt. Das Signal am Ausgangsanschluß 3Q des
Zwischenspeichers 313 steuert den Datenwähler 314. Eine Ersetzung auf zufälliger Basis wird mit Hilfe des 2-Bit-Zählers
315 erreicht, der jedes Mal dann weitergeschaltet wird, wenn der Prozessor 101 ein Cache-GO-Signal .liefert. Die Ausgangssignale
des Zählers 315 gehen zu den Eingängen 1B und 2B des Datenwählers 314. Da Treffer- und Fehlsignale bei der Cache-Speicheroperation
auf zufälliger Basis auftreten, liegt der Zählwert des 2-Bit-Zählers 315 dicht bei einer Zufallszahl.
Die Ersetzungsschaltung 113 geht zu einer Ersetzung auf zufälliger Basis über, wenn die aus den EtikettSpeichermodulen
909851/0682
2322537
gelesenen Gültigkeitsbits im Zustand H sind und angeben, daß die adressierte Untergruppe von Datenwörtern gültig ist.
In diesem Fall sind alle 4 Eingänge des Prioritätscodierers 312 auf H, so daß das Signal am Ausgangsanschluß GS auf H
ist und im bistabilen Zwischenspeicher 313 festgehalten wird. Das Ausgangssignal 3Q des Zwischenspeichers 313 wählt in diesem
Fall die Eingangssignale 1B und 2B vom Zähler 315 für
eine Übertragung zum Decoder 316 aus. Wenn im anderen Falle ein Eingangssignal des Prioritätscodierers 312 auf L ist, so
geht das Signal am Ausgangsanschluß GS auf L, und die Signale
an den Ausgangsanschlüssen AO und A1 des Prioritätscodierers 312, die im Zwischenspeicher 313 festgehalten sind, werden
gewählt und über die Eingänge 1A und 2A des Datenwählers 314
zum Decoder 316 geführt.
Der Decoder 316 erzeugt ein Speicherbetätigungssignal H an
einem seiner Ausgangsanschlüsse (1Y0 bis 1Y3) und ein Signal L an den übrigen 3 Ausgangsanschlüssen abhängig von den Signalen
an den Eingangsanschlüssen 1A und 1B, wie folgt: für 1A und 1B beide L, ist 1YO auf H (Speicherbetätigung D,
MED);'für IA und 1B auf H bzw, L ist 1Y1 auf H (Speicherbetätigung
C, MEC); für 1Δ und 1B auf L bzw. H , ist 1Y2 auf
H (Speicherbetätigung B, MEB); für 1A und 1B beide auf H, ist 1Y3 auf H (Speicherbetätigung A, MEA).
909851/0682
ORlGSMAL IMSPECTED
252259?
Die Etikettspeicher-Steuerschaltung 110 erzeugt Signale zum
Lesen und Schreiben der Etikettspeichermodule 201 bis 204 und erzeugt außerdem die Gültigkeitsbits, die in die Etikettspeichermodule
geschrieben werden, und zwar in Abhängigkeit von den Lese/Schreibsignalen und speziellen Signalen des
Prozessors, den Signalen von der Trefferanzeigeschaltung 116,
dem Zeitsteuerungsimpuls T2 von der Folgeschaltung 115 und
den Signalen von der Ersetzungsschaltung 113. Die Datenspeicher-Steuerschaltung 111 erzeugt Signale 2um Lesen und Schreiben
der Datenspeichermodule 401 bis 404 und zum Weiterführen von Datenwörtern zu und vom Datenspeicher 107 in Abhängigkeit
von den gleichen Signalen, die die Etikettspeicher-Steuerschaltung 110 steuern, sowie vom Hauptspeicher-Vervollständigungssignal
MMC. Die nachfolgende Tabelle faßt die Lese/ Schreib-Operationen zusammen, die der Etikettspeicher 106
und der Datenspeicher 107 abhängig von bestimmten Kombinationen von Prozessorsteuersignalen und Treffer/Fehl-Signalen
von der Trefferanzeigeschaltung 116 ausführt. Die Tabelle gibt nicht das jeweils zu bearbeitende EtikettSpeichermodul
und das entsprechende Datenspeichermodul an, da dies von der jeweiligen Trefferangabe der Trefferanzeigeschaltung 116
abhängt, nämlich A, B, C oder D im Fall eines Cache-Speichertreffers,
und außerdem von dem jeweiligen Speicherbetätigungssignal der Ersetzungsschaltung 113, nämlich MEA, MEB, MEC
oder MED im Fall eines Cache-Speicher-Fehlsignals.
909851/0682
Prozessor steuer signale |
Treffer/ Fehl |
-21- Gültigkeits- bit Status ** |
Etikett speicher operation |
29*22597 Daten speicher operation |
1-Lesen normal |
Treffer | X | Lesen | Lesen |
2-Lesen normal |
Fehl | V | Lesen/ Schreiben |
Schreiben |
3-Lesen spezial |
Treffer | I | Lesen/ Schreiben |
Lesen |
4-Lesen spezial 5-Schreiben normal |
Fehl Treffer |
X ■ ι |y]* |
Lesen Lesen/ Schreiben |
!Schreiben |
6-Schreiben normal |
Fehl | X. | Lesen | |
7-Schreiben spezial . |
Treffer | V | Lesen/ Schreiben |
Schreiben |
8-Schreiben spezial |
Fehl | V | Lesen/ Schreiben |
Schreiben |
** V = gültig, I = ungültig, X = ohne Bedeutung
* erforderlich, um den Cache-Speicher bei normalem
Schreiben auf den neuesten. Stand zu bringen, wenn
ein Cache-Treffer auftritt.
Die Etikettspeicher-Steuerschaltung 110 weist 4 identische
Etikettspeicher-Steuerlogikschaltungen 205, 206, 207, 208
auf, von denen jede einem entsprechenden Etikettspeichermodul zugeordnet ist. Jede der Steuerlogikschaltungen 205-208
weist Decodierschaltungen auf, die auf die Steuersignale vom Prozessor 101, die Treffer/Fehl-Signale von der Trefferanzeigeschaltung
116 und die Speicherbetätigungssignale von der Ersetzungsschaltung 113 ansprechen. Da die Etikettspeicher-Steuerlogikschaltungen
identisch sind, wird nur
909851/0 6 82
2822537
die Steuerlogikschaltung 205 im einzelnen dargestellt und beschrieben.
Die NAND-Gatter 209, 210, 211, 212, 213, 214 dienen als Decoder und liefern ein Signal H am Ausgang des NAND-Gatter
s 214 für die folgenden Kombinationen von Cache-Steuersignalen und intern erzeugten Signalen :
Normal^ Lesen^·, Fehl- und Speicherbetätigungssignal A;
Spezial-, Schreiben-, Fehl- und Speicherbetätigungssignal Aj Spezial-, Schreiben- und Treffersignal Aj
Normal-, Schreiben- und Treffersignal A;
Spezial-, Lesen- und Treffersignal A.
Diese Kombinationen von Signalen entsprechen den Signalkombinationen
2, 8, 7, 5 bzw. 3 in der obigen Tabelle. Wenn eine dieser Signalkombinationen der Etikettspeicher-Steuerlogikschaltung
205 angeboten wird, so wird das NAND-Gatter 215 betätigt. Dann veranlaßt der Zeitsteuerimpuls T2 von der Folgeschaltung
115 das Signal am Ausgang des NAND-Gatters 215,auf
L zu gehen, wodurch das Adressetikett (AT), das der Prozessor 101 auf der Leitung 109 zur Verfügung stellt, in den Adressspeichermodul
201 an derjenigen Speicherstelle eingeschrieben wird, die durch die vom Prozessor 101 auf den Leitungen 108
gelieferten Adreßsignale angegeben wird. Vor dem Eintreffen
des Zeitsteuerungsimpulses T2 befinden sich die Etikettspeichermodule 201 bis 204 in einer Lesebetriebsweise, um Eingangssignale für die Trefferanzeigeschaltung 116 und die Ersetzungsschaltun
g 113' zu liefern.
909851/0682
2Ä22587
Wie oben angegeben, wird ein gültiges Datenwort durch ein Signal H für das Gültigkeitsbit angegeben und ein ungültiges
Datenwort durch ein Signal L für das Gültigkeitsbit. Für eine normale Schreiboperation, bei der ein Cache-Treffer auftritt,
gibt es zwei alternative Arten der Operation:
1) Das Datenwort in dem Datenspeicher 107, das zu dem Treffer
geführt hat, kann dadurch auf den neuesten Stand gebracht werden, daß das neue Datenwort in den Datenspeicher 107 geschrieben
wird; oder
2) das Datenwort im Datenspeicher 107 , das zu/dem Treffer
geführt hat, kann im Effekt dadurch entfernt werden, daß ein ungültiges Gültigkeitsbit in die· entsprechende Speicherstelle
des Etikettspeichers 106 geschrieben wird.
Die erste Möglichkeit wird dadurch geschaffen, daß die Leitung
220 weggelassen und das NAND-Gatter 4o4 in der Datenspeicher-Steuerschaltung 111 vorgesehen wird, um das neue Datenwort
in den Datenspeicher 107 zu schreiben. Die zweite Möglichkeit
wird geschaffen, indem das NAND-Gatter 404 weggelassen und die Leitung 220 vorgesehen wird, so daß ein ungültiges
Gültigkeitsbit.erzeugt und in den Etikettspeicher 106 geschrieben
wird. Das NAND-Gatter 216 wird demgemäß entweder durch die Ausgangssignale der NAND-Gatter 212 und 213 oder durch das
Ausgangssignal des NAND-Gatters 213 allein gesteuert, um ungültige
Gültigkeitsbits zu erzeugen, die in den Etikettspeichermodul 201 einzuschreiben sind. Das NAND-Gatter 212 spricht
auf die Kombination der Signale Normal-, Schreiben- und Tref-
909851/0682
2422597
fersignal A an, und das NAND-Gatter 213 auf die Kombination der Signale Spezial-, Lesen- und Treffersignal A. Das NAND-Gatter
216 spricht auf die Ausgangssignale eines oder beider NAND-Gatter 212 und 213 an, um ein ungültiges Gültigkeitsbit
für diese beiden Signalkombinationen zu erzeugen. Die Leitung 220 ist als wahlfreie Möglichkeit vorgesehen, um den Ausgang
des NAND-Gatters 212 mit einem der Eingänge des NAND-Gatters
216 zu verbinden. Das NAND-Gatter 212 entspricht der Signalkombination 5 in der obigen Tabelle und das NAND-Gatter 213
der Signalkombination 3 in der Tabelle. Das erzeugte Gültigkeitsbit wird in den entsprechenden Etikettspeichermodul
gleichzeitig mit dem Adressetikett (AT) eingeschrieben. Für alle anderen Signalkombinationen wird ein gültiges Gültigkeitsbit erzeugt, das dem in der obigen Tabelle angegebenen Status
für das Gültigkeitsbit entspricht, d.h. für alle diese Signalkombinationen ist das Gültigkeitsbit entweder gültig oder ohne
Bedeutung. Der Inverter 219 liefert die richtige Polarität für das Gültigkeitsbit, während die Inverter 217 und 218 Signale
mit der richtigen Polarität für die NAND-Gatter 210, 211, 212, 213 bereitstellen. Die Etikettspeicher-Steuerlogikschaltungen
206, 207, 208 arbeiten ähnlich, wenn Operationen für
die Etikettspeichermodule 202, 203 bzw. 204 auszuführen sind.
Die Datenspeicher-Steuerschaltung 111 weist NAND-Gatter 401,
402, 403, 404 auf, die ein Signal L an .ihren Ausgangsanschlüssen für die folgenden Kombinationen von EingangsSignalen liefern:
909851/0682
2322597
Spezial-, Schreiben- und Fehlsignal;
Normal-, Lesen-, Fehl- und Hauptspeicher-vervollständigungs-Signal
(MMC, das vom Hauptspeicher 103 erzeugt wird, wenn ein Hauptspeicherriesevorgang beendet ist);
Spezial- und Schreibsignal;
Normal- und Schreibsignal.
Normal- und Schreibsignal.
Wie oben angegeben, ist das NAND-Gatter 404 als wahlfreie Möglichkeit vorgesehen, wenn die Leitung 220 nicht vorhanden
ist, um die Cache-Information bei einem normalen Schreiben, bei dem ein Treffer auftritt, auf den neuesten Stand zu
bringen. Die NAND-Gatter 401 und 402 decodieren Cacte-Operationen,
in denen der Datenspeicher 107 bei einem Cache-Fehlsignal geschrieben wird, und die NAND-Gatter 403 und 404 decodieren
Cache-Operationen, wenn der Datenspeicher 107 bei einem Cache-Treffer geschrieben wird. Die Auswahl , welcher
Datenspeichermodul geschrieben wird, erfolgt unter Steuerung der Ersetzungsschaltung 113 für ein Cache-Fehlsignal und
durch die Trefferanzeigeschaltung 116 für einen Cache-Treffer. Demgemäß sind zwei Gruppen von Lese/Schreib-Gattern erforderlich,
die die NAND-Gatter 406, 407, 408, 409 für ein Cache-Fehlsignal und die NAND-Gatter 4ΐ4, 415,416, 4i7 für einen
Cache-Treffer umfassen. Das Ausgangssignal des NAND-Gatters
405 ist auf H, wenn eines der NAND-Gatter 401, 402 betätigt
und eines der Speicherbetätigungssignale ebenfalls auf H ist.
Diese Kombination von Signalen betätigt eines der NAND-Gatter
406 bis 409. Das Ausgangssignal des NAND-Gatters 418 ist auf
909851/0682
H, wenn eines der NAND-Gatter 403, 404 betätigt und, falls
ein Treffer aufgetreten ist, eines der Treffersignale ebenfalls auf H ist. Diese Kombination von Signalen betätigt
eines der NAND-Gatter 414 bis 417. Das NAND-Gatter 419 nimmt
den Zeitsteuerungsimpuls T2 von der Folge schaltung 115 und das Hauptspeicher-Beendigungssignal vom Hauptspeicher 103 auf.
Beim Auftreten eines dieser Signale, die im aktiven Zustand auf L sind, geht der Ausgang des NAND-Gatters 419 auf H.
Dieses Ausgangssignal wird über das betätigte NAND-Gatter einer der Gruppen von NAND-Gattern 406 bis 409 oder 417 bis
419 übertragen, um den entsprechenden Datenspeichermodul zu
schreiben. Die Inverter 420, 421, 422 liefern die richtige Signalpolarität.
Bus-Sendeempfänger 501 bis 505 übertragen entweder Signale von den Datenanschlüssen E zu den Datenanschlüssen F oder
Signale von den Datenanschlüssen F zu den Datenanschlüssen E oder stellen eine hohe Impedanz zwischen den Datenanschlüssen
E und F her, und zwar abhängig von den Steuersignalen an den Anschlüssen DIR und G . Die Bus-Sendeempfänger sind untereinander
identisch und jeweils gleich aufgebaut wie der Bus-Sendeempfänger
501, der die UND-Gatter 513, 514, die Inverter 515, 516 und die Bus-Treiber 517 und 518 enthält. Ein Signal H
am Betätigungsanschluß G eines Bus-Sendeempfängers trennt die Anschlüsse E von den Anschlüssen F. Ein Signal L am Betätigungsanschluß G betätigt den Bus-Sendeempfänger und überträgt die
909851/0682
ORIGINAL INSPECTED „
• -27- . ■
2922587
Steuerung für die Richtung des Signalflusses an das'Signal
am Richtungsanschluß DIR, so daß, wenn das Signal auf H ist, Daten von den Anschlüssen F zu den Anschlüssen E, und wenn
das Signal auf L ist, Daten von den Anschlüssen E zu den Anschlüssen F übertragen werden. Der Prozessor 101 steuert
die Bus-Sendeempfänger 505 , um den Datenfluß zwischen dem'
Hauptspeicher 103 und dem Datenbus 112 zu steuern. Die NOR-Gatter
423 bis 426 bestimmen, welcher der Bus-Sendeempfänger 501 bis 504 betätigt wird. Wenn eines der Ausgangssignale der
NAND-Gatter 401 bis 404 auf L ist, wodurch angegeben wird, daß einer der Datenspeichermodule 410 bis 413 geschrieben
werden soll,' geht der Ausgang des NAND-Gatters 427 auf H, wodurch die Ausgangssignale aller 4 NOR-Gatter 423 bis 426
auf L gebracht und alls Bus-Sendeempfänger 501 bis 504 betätigt
werden. Die Datenübertragungsrichtung wird durch das Signal vom NAND-Gatter 428 bestimmt, das auf L für die Kombination
von Lese- und Cache-Treffersignale,aber für alle anderen
Signalkombinationen H ist. Die Bus-Sendeempfänger befinden sich im Trennzustand mit hoher Impedanz oder übertragen Daten
vom Datenbus 112 zu den Datenspeichermodulen, falls der Prozessor keine Leseoperation anfordert, um Störgeräusche auf
dem Datenbus für alle anderen Operationen zu verhindern. Demgemäß stehen Datensignale vom Datenbus 112 an den Datenanschlüssen
der Datenspeichermodule an, wenn einer von ihnen durch die Signale von einer der Gruppen von NAND-Gattern
bis 409 oder 414 bis 417 geschrieben wird. Wenn das Signal vom NAND-Gatter 427 auf L ist, hängen die Ausgangssignale der
909 8 51/0682
2522597
NOR-Gatter 423 bis 426 von den Treffersignalen A, B, C und D der Trefferanzeige schaltung 116 ab. Venn ein Treffer in einem
der Etikettspeichermodule A, B, C oder D festgestellt wird, geht das zu den NOR-Gattern 423 bis 426 übertragene Treffersignal
A, B, C oder D auf H, wodurch der Ausgang des entsprechenden NOR-Gatters auf L gelangt und den entsprechenden Bus-Sendeempfänger
betätigt. Yfenn das Signal vom NAND-Gatter 428 auf L und das Sig-nal von einem der NOR-Gatter 423 bis 426
auf L sind, wird der demjenigen Datenspeichermodul entsprechende Bus-Sendeempfänger, welcher das Datenwort enthält, das
den Cache-Treffer verursacht hat, betätigt,und die Richtung
des Datenflusses geht von den Anschlüssen E zu den Anschlüssen F , so daß das aus dem entsprechenden Datenspeichermodul gelesene
Datenwort zum Datenbus 112 übertragen wird.
Die Folgeschaltung 115 liefert interne Zeitsteuerungsimpulse für Cache-Speicheroperationen. Die Folgeschaltung nimmt ein
Taktsignal vom Prozessor 101 auf der Leitung 506 auf und wird durch ein Cache-GO-Signal vom Prozessor 101 auf der
Leitung 114 aktiviert. Das Cache-GO-Signal vom Prozessor ist mit dem Taktsignal synchronisiert, so daß die Folgeschaltung
115 vollständige Taktimpuls-Zeitsteuerungssignale liefert. Die D-Flip-Flops 507, 508, 509, 510 sprechen auf einen
Übergang L-H des Signals an ihren Taktanschlüssen an und übertragen das am Anschluß D anstehende Signal zum Anschluß Q.
Sie können direkt durch Signale L an den Anschlüssen S und C eingestellt bzw. gelöscht werden. Der Decodierer 511 deco-
909851/0682
diert Signale an seinen Bingangsanschlüssen 1A und 1B, um
ein Signal L an demjenigen Ausgangsanschluß zu liefern, der den augenblicklichen Eingangssignalen entspricht, und Signale
H an den übrigen Ausgangsanschlüssen 1YO bis 1Y3. Die Flip-Flops 508, 509, 510 sind gelöscht (Q = 0, Q = 1) und
das Flip-Flop 501 ist eingestellt (Q = 1, Q = 0), wenn die
Folgeschaltung 115 durch das Cache-GO-Signal vom Prozessor 101 aktiviert ist. Das Cache-GO-Signal führt zu einem L-H-Signalübergang
am Taktanschluß des Flip-Flops 508, wodurch das Flip-Flop eingestellt wird und die logische 1 am Anschluß
D zum Anschluß Q übertragen wird. Das Einstellen des Flip-Flps
508 beseitigt das direkte Löschsignal für die Flip-Flops 509 und 510, so daß sie auf das Taktsignal vom Prozessor
ansprechen können. Während des ersten vollen Taktzyklus ist das Signal am Ausgang 1YO der Decoderschaltung 511 auf L und
die anderen Ausgänge 1Y1 bis 1Y3 sind auf H. Beim nächsten L-H-Übergang des Taktsignals wird das Flip-Flop 509 eingestellt,
während das Flip-Flop. 510 gelöscht bleibt. Dadurch werden die Eingangssignale der Decoderschaltung 511 so geändert,
daß das Signal am Ausgangsanschluß 1Y1 auf L geht und die Signale an den Ausgangsanschlüssen 1YO, 1Y2 und 1Y3
auf H sind. Beim n-ächsten L-H-Übergang des Taktsignals wird
das Flip-Flop 510 eingestellt, während das Flip-Flop 509 eingestellt
bleibt. Dadurch wird das Atisgangssignal des Decoders 511 derart weitergeschaltet, daß das Signal am Ausgangsanschluß
1Y3 L ist und die Signale an den übrigen Ausgangsanschlüssen H. Beim nächsten L-H-Übergang des Taktsignals wird
909851/06 82
das Flip-Plop 509 gelöscht und das Flip-Flop 510 bleibt
eingestellt. Dadurch wird das Ausgangssignal des Decoders 511 so weitergeschaltet, daß das Signal am Ausgangsanschluß
1Y2 auf L geht und die Signale an den übrigen Ausgangsanschlüssen H sind. Beim nächsten L-H-Übergang des Taktsignals
wird das Flip-Flop 510 gelöscht,und das Flip-Flop 509 bleibt gelöscht. Dadurch geht das Signal am Ausgangsanschluß 1Y2 auf
H und das Signal am Ausgangsanschluß 1Y0 auf L, während die Signale an den Anschlüssen 1Y1 und 1Y3 auf H bleiben. Der
Übergang von L auf H am Taktanschluß des Flip-Flops 507 bringt dieses Flip-Flop in Lösch-Zustand, wodurch das Flip-Flop
508 gelöscht wird, das dann wiederum die Flip-Flops 509 und 510 löscht und ein Sperr signal L an diese Flip-Flops anlegt,
so daß sie nicht auf die Signalübergänge des Taktsignals ansprechen können. Bas Signal L am Ausgangsanschluß 1Y0 wird
durch das Verzögerungselement 512 eine kurze Zeitperiode verzögert, bevor es an den Einstellanschluß des Flip-Flops
507 angelegt wird und das Flip-Flop 507 einstellt, um das direkte Lösch-Sperr-Signal am Flip-Flop 508 zu entfernen und
die Folgeschaltung 115 für eine Aktivierung durch das Cache-.G0-Signal vom Prozessor 101 vorzubereiten.
Es sollen jetzt zwei Speicherabtastoperationen beschrieben werden, damit sich die Arbeitsweise des Cache-Speichers beser
und vollständiger verstehen läßt. Diese Operationen sind einmal ein normales Lesen begleitet von einem Cache-Fehlsignal,
und zum anderen ein spezielles Lesen, begleitet durch
909851/0682 '
2S22597
ein Caclie-Treff er signal. Zur Vereinfachung der Beschreibung
wird angenommen, daß das Speicherbetätigungssignal A (MEA) für das Cäche-Fehlsignal auf H ist und daß das Treffersignal A
für den Cache-Treffer auf H ist. Der Prozessor 101 erzeugt die
Steuersignale, die Adressetikettsignale, die Datenspeicher- und Etikettspeicheradreßsignale und aktiviert dann das Cache-GO-Signal.
Im Falle eines normalen Lesens sind das Lese/ Schreib-signal und das Spezialsignal beide auf H, wodurch das
NANB-Gatter 209 vorbereitet wird. Während der ersten beiden
Zeitsteuerungsimpulse werden die Etikettspeichermodule 201 bis 204 an der vom Prozessor 101 gelieferten Adresse gelesen.
Die gelesenen Adressetiketten werden zu den Vergleichsschaltungen 301 bis 304 gegeben und die gelesenen Gültigkeitsbits
zu den NAND-Gattern 305 bis 308 und dem Prioritätscodierer 312.
Wenn der Zeitsteuerungsimpuls T1 aufhört, werdoi die Ausgangssignale
der NAND-Gatter 305 bis 308 in dem bistabilen Zwischenspeicher 309 festgehalten, und die Ausgangssignale des Prioritätscodierers
312 werden in dem bistabilen Zwischenspeicher
313 gespeichert. Da ein Fehlvorgang angenommen wird, sind die Ausgangsignale des Zwischenspeichers 309 auf L,und das Ausgangssignal
des NOR-Gatters 311 ist entsprechend auf H. Die Ausgangssignale des Zwischenspeichers 313 hängen vom
Status der Gültigkeitsbits ab, die aus den Etikettspeichermoduien gelesen worden sind, und steuern die Speicherbetätigungssignale
vom Decodierer 316, wie oben beschrieben, und zwar unter der Einwirkung der Ersetzungsschaltung 113. Das
Speicherbetätigungssignal A (MEA),ist zur Vereinfachung der Beschreibung als H angenommen worden. Wenn das Signal MEA und
909851/0682
2322597
das Pehlsignal auf H sind, wird das NAND-Gatter 209 betätigt
und liefert ein Ausgangssignal L zu einem Eingang des NAND-Gatter s 214, um das NAND-Gatter 215 zu betätigen. Keiner der
Eingänge des NAND-Gatters 216 ist auf L, so daß dessen Ausgang
auf L liegt und der Ausgang des Inverters 219 auf H ist, um ein gültiges Gültigkeitsbit zu erzeugen. Der Zeitsteuerungsimpuls
T2 von der Folgeschaltung 115 veranlaßt das NAND-Gatter
215 , das vom Prozessor 101 gelieferte Adressetikett und das gültige Gültigkeitsbit vom Inverter 219 in den Etikettspeichermodul
201 an der vom Prozessor adressierten Adresse einzuschreiben. Der Datenspeicher 107 führt zu diesem Zeitpunkt
keine Operationen aus. Der Prozessor 101 nimmt das Fehlsignal von der Trefferanzeigeschaltung 116 auf und stellt fest, daß
eine Hauptspeicher-Leseoperation ausgeführt werden muß. Der Prozessor hält die Signale für den Cache-Speicher aufrecht und
führt eine Hauptspeicher-Les©peration aus. Wenn die Leseoperation beendet ist und gültige Daten stabil auf dem Datenbus
sind, sendet der Hauptspeicher ein Hauptspeicher-Beendigungsignal (MMC) auf der Leitung 118 zum Cache-Speicher 102. Das
NAND-Gatter 402 wird durch das Normal-, Lese- und Fehlsignal betätigt und durch das Hauptspeicher-Beenidgungssignal aktiviert,
so daß es ein Signal L an seinem Ausgang erzeugt. Dieses Signal betätigt das NAND-Gatter 427, das die Bus-Sendeempfänger
501 bis 504 über die NOR-Gatter 423 bis 426 aktiviert. Die Richtung des Datenflusses geht von den Datenanschlüssen F zu
den Datenanschlüssen E, und zwar auf Grund des Signals H vom NAND-Gatter 428. Das NAND-Gatter 406 wird durch Signale H
909851/0682
292258?
vom NAND-Gatter 405 und des MEA-Signals von der Ersetzungsschaltung 113 betätigt, so daß das Hauptspeicher-Beendigungssignal
das Ausgangssignal des NAND-Gatters 406 auf L bringt, um die Daten auf dem Datenbus 112 in den Datenspeichermodul
A an der durch den Prozessor 101 adressierten Speicherstelle einzuschreiben. Demgemäß wird das Adreßetikett im
Etikettspeichermodul 201 zusammen mit einem gültigen Gültigkeitsbit
gespeichert,und die entsprechende Speicherstelle im
Datenspeichermodul 410 enthält das richtige, aus dem Hauptspeicher
gelesene Datenwort.
Als nächste Speicherabtastoperation wird eine spezielle Leseoperation
beschrieben, bei der ein Cache-Treffer auftritt. Das Lese/Schreib-Signal ist auf H und das SpezialSignal auf L.
Die Adreßetikettsignale und die Adreßsignale sind die gleichen
wie vorher. Das NAND-Gatter 213 wird durch das Lese/Sehreib-Signal
und das Spezialsignal vom Prozessor vorbereitet. Die Etikettspeichermodule werden gelesen und die Information wird
wiederum zur Trefferanzeigeschaltung 116 und zur Ersetzungsschaltung 113 übertragen. Im Falle eines Treffers ist jedoch
eines der Treffersignale A, B, C oder D auf H, während das
Treffer/Fehl-Signal vom NOR-Gatter 311 auf L ist. Das Treffersignal
A ist zur Vereinfachung der Beschreibung als H angenommen worden. Das Treffersignal A aktiviert das NAND-Gatter
213, das ein ungültiges Gültigkeitsbit erzeugt und außerdem ein Schreiben des Etikettspeichermoduls 201 veranlaßt. Gleichzeitig
wird der Bus-Sendeempfänger 501 über das NOR-Gatter betätigt. Der Datenfluß ist von den Datenanschlüssen E zu den
9 09851/06 82
Datenanschlüssen F aufgrund des Signals L vom NAND-Gatter
428 gerichtet. Der Datenspeichermodul 410 wird gelesen und das gelesene Datenwort über den Datenbus 112 zum Prozessor übertragen. Das gewünschte Datenspeicherwort wird also aus dem Cache-Speicher gelesen,und dieses Datenwort wird im
Etikettspeichermodul 201 als ungültig markiert, wodurch es im Effekt aus dem Cache-Speicher entfernt wird, so daß die Speicherstelle unmittelbar für neue, in den Cache-Speicher einzuschreibende Informationen benutzt werden kann. Die weiteren, in der obigen Tabelle angegebenen Speicheroperationen werden vom Cache-Speicher auf ähnliche Weise ausgeführt.
428 gerichtet. Der Datenspeichermodul 410 wird gelesen und das gelesene Datenwort über den Datenbus 112 zum Prozessor übertragen. Das gewünschte Datenspeicherwort wird also aus dem Cache-Speicher gelesen,und dieses Datenwort wird im
Etikettspeichermodul 201 als ungültig markiert, wodurch es im Effekt aus dem Cache-Speicher entfernt wird, so daß die Speicherstelle unmittelbar für neue, in den Cache-Speicher einzuschreibende Informationen benutzt werden kann. Die weiteren, in der obigen Tabelle angegebenen Speicheroperationen werden vom Cache-Speicher auf ähnliche Weise ausgeführt.
909851/0682
Claims (6)
- BLUMBACH · WESER". BERGEN . KRAMERZWIRNER · BREHM ---PATENTANWÄLTE IN MÜNCHEN UND WIESBADEN ' 2922597Patentconsult Radeckestraße 43 8000 München 60 Telefon (089) 883603/883604 Telex 05-212313 Telegramme Patentconsult Palentconsult Sonnenberger Straße 43 6200 Wiesbaden Telefon (06121) 562943/561998 Telex 04-186237 Telegramme PatentconsultWestern Electric Company Incorporated Chang, S.J.1-19 222 Broadway, New York N.Y. 10038, USACache-Speicher und Verfahren zum Betrieb einer DatenverarbeitungsanlagePatentansprüche:Cache-Speicher für eine Datenverarbeitungsanlage mit einer Einrichtung zur Speicherung von Datenwörtern, einer ädressierbaren Identifizierung für jedes Datenwort und einer Angabe bezüglich der Gültigkeit oder Ungültigkeit jedes Wortes, ^"gekennzeichnet durch eine Anordnung (110), die bei Adressieren des Speichers mit einer Identifizierung unter Ansprechen darauf, daß diese Identifizierung gespeichert ist, sowie auf einer Angabe, daß das entsprechende Datenwort gültig ist, und auf ein Lesesignal eine Ungültigkeitsangabe mit Bezug auf das Datenwort speichert. .München: R. Kramer Dipl.-Ing. · W. Weser Dip!.-Phys. Dr. rer. nat. · H. P. Brehm Dipl.-Chem. Dr. phil. nat, Wiesbaden: P. G. Blumbach Dipl.-Ing. · P. Bergen Dipl.-Ing, Dr. jur. . G. Zwirner Dlpl.-Ing. Dipl.-W.-Ing.909 8 51/06822022597
- 2. Cache-Speicher nach Anspruch 1,dadurch gekennzeichnet, daß , wenn der Speicher durch eine Identifizierung adressiert wird, die nicht gespeichert ist oder für die das Datenwort als ungültig bezeichnet wird, die Anordnung (110, 111) abhängig von einem normalen Lesesignal das Datenwort, die Identifizierung und eine Bezeichnung der Gültigkeit einschreibt, unter Ansprechen auf ein spezielles Lesesignal aber nicht schreibt.
- 3. Cache-Speicher nach Anspruch 1,dadurch gekennzeichnet, daß , wenn der Speicher durch eine Identifizierung adressiert wird, die Anordnung (110, 111) unter Ansprechen auf die gespeicherte Identifizierung, eine Angabe, daß das entsprechende Datenwort gültig ist und ein normales Schreibsignal eine Angabe bezüglich der Ungültigkeit für das Datenwort speichert und unter Ansprechen auf ein spezielles Schreibsignal das Datenwort, die Identifizierung und eine Angabe bezüglich der Gültigkeit für das Datenwort einschreibt.
- 4. Cache-Speicher nach Anspruch 1,dadurch gekennzeichnet, daß, wenn der Speicher durch eine Identifizierung adressiert wird, die Anordnung (110, 111) unter Ansprechen auf die gespeicherte Identifizierung, eine Angabe, daß das entsprechende Datenwort gültig ist und ein normales Schreibsignal das Datenwort und eine Gültigkeits-909851/06822122197angabe mit Bezug auf das Datenwort einschreibt, und unter Ansprechen auf ein spezielles Schreibsignal das Datenwort, die Identifizierung und eine Gültigkeitsangabe mit Bezug auf das Datenwort einschreibt.
- 5. Verfahren zum Betrieb einer Datenverarbeitungsanlage mit einem Prozessor, einem Hauptspeicher und einem Cache-Speicher, wobei in dem Cache-Speicher vom Prozessor benötigte Datenwörter, eine adressierbare Identifizierung für jedes Datenwort und eine Angabe hinsichtlich der Gültigkeit oder Ungültigkeit jedes Wortes gespeichert sind, dadurch gekennzeichnet, daß beim Adressieren des Cache-Speichers mit einer in ihm gespeicherten Identifizierung und, wenn das entsprechende Datenwort gültig ist, eine Leseoperation bewirkt, daß eine Ungültigkeitsangabe für dieses Datenwort gespeichert wird.
- 6. Verfahren zum Programmieren einer Datenverarbeitungsanlage mit einem Prozessor, einem Hauptspeicher und einem Cache-• Speicher,•dadurch gekennzeichnet, daßdie Anlage entsprechend dem Verfahren nach Anspruch 5 betrieben wird.909851/0682
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/913,567 US4197580A (en) | 1978-06-08 | 1978-06-08 | Data processing system including a cache memory |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2922597A1 true DE2922597A1 (de) | 1979-12-20 |
Family
ID=25433396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19792922597 Withdrawn DE2922597A1 (de) | 1978-06-08 | 1979-06-02 | Cache-speicher und verfahren zum betrieb einer datenverarbeitungsanlage |
Country Status (4)
Country | Link |
---|---|
US (1) | US4197580A (de) |
JP (1) | JPS54160138A (de) |
DE (1) | DE2922597A1 (de) |
GB (1) | GB2022885B (de) |
Families Citing this family (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4307447A (en) * | 1979-06-19 | 1981-12-22 | Gould Inc. | Programmable controller |
US4317168A (en) * | 1979-11-23 | 1982-02-23 | International Business Machines Corporation | Cache organization enabling concurrent line castout and line fetch transfers with main storage |
US4386402A (en) * | 1980-09-25 | 1983-05-31 | Bell Telephone Laboratories, Incorporated | Computer with dual vat buffers for accessing a common memory shared by a cache and a processor interrupt stack |
US4414644A (en) * | 1981-04-03 | 1983-11-08 | International Business Machines Corporation | Method and apparatus for discarding data from a buffer after reading such data |
US4458310A (en) * | 1981-10-02 | 1984-07-03 | At&T Bell Laboratories | Cache memory using a lowest priority replacement circuit |
US4504902A (en) * | 1982-03-25 | 1985-03-12 | At&T Bell Laboratories | Cache arrangement for direct memory access block transfer |
US4486856A (en) * | 1982-05-10 | 1984-12-04 | Teletype Corporation | Cache memory and control circuit |
US4483003A (en) * | 1982-07-21 | 1984-11-13 | At&T Bell Laboratories | Fast parity checking in cache tag memory |
US4574346A (en) * | 1982-09-29 | 1986-03-04 | International Business Machines Corporation | Method and apparatus for peripheral data handling hierarchies |
US4719568A (en) * | 1982-12-30 | 1988-01-12 | International Business Machines Corporation | Hierarchical memory system including separate cache memories for storing data and instructions |
US4682281A (en) * | 1983-08-30 | 1987-07-21 | Amdahl Corporation | Data storage unit employing translation lookaside buffer pointer |
DE3502147A1 (de) | 1984-01-23 | 1985-08-08 | Hitachi Microcomputer Engineering Ltd., Kodaira, Tokio/Tokyo | Datenverarbeitungssystem mit verbesserter pufferspeichersteuerung |
US4757440A (en) * | 1984-04-02 | 1988-07-12 | Unisys Corporation | Pipelined data stack with access through-checking |
US4637024A (en) * | 1984-11-02 | 1987-01-13 | International Business Machines Corporation | Redundant page identification for a catalogued memory |
US4835686A (en) * | 1985-05-29 | 1989-05-30 | Kabushiki Kaisha Toshiba | Cache system adopting an LRU system, and magnetic disk controller incorporating it |
US5029072A (en) * | 1985-12-23 | 1991-07-02 | Motorola, Inc. | Lock warning mechanism for a cache |
US4703421A (en) * | 1986-01-03 | 1987-10-27 | Gte Communication Systems Corporation | Ready line synchronization circuit for use in a duplicated computer system |
US4928239A (en) * | 1986-06-27 | 1990-05-22 | Hewlett-Packard Company | Cache memory with variable fetch and replacement schemes |
US4896264A (en) * | 1986-09-08 | 1990-01-23 | American Telephone And Telegraph Company | Microprocess with selective cache memory |
CA1299768C (en) * | 1987-03-04 | 1992-04-28 | Ikuo Yamada | Memory access control system |
US5019971A (en) * | 1987-04-13 | 1991-05-28 | Prime Computer, Inc. | High availability cache organization |
AU604101B2 (en) * | 1987-04-13 | 1990-12-06 | Computervision Corporation | High availability cache organization |
US4954944A (en) * | 1987-04-23 | 1990-09-04 | Nec Corporation | Cache control circuit in cache memory unit with unit for enabling to reduce a read access time for cache memory |
US4991090A (en) * | 1987-05-18 | 1991-02-05 | International Business Machines Corporation | Posting out-of-sequence fetches |
EP0349123B1 (de) * | 1988-06-27 | 1995-09-20 | Digital Equipment Corporation | Mehrprozessorrechneranordnungen mit gemeinsamem Speicher und privaten Cache-Speichern |
US5222224A (en) * | 1989-02-03 | 1993-06-22 | Digital Equipment Corporation | Scheme for insuring data consistency between a plurality of cache memories and the main memory in a multi-processor system |
US5838946A (en) * | 1990-04-14 | 1998-11-17 | Sun Microsystems, Inc. | Method and apparatus for accomplishing processor read of selected information through a cache memory |
US5404483A (en) * | 1990-06-29 | 1995-04-04 | Digital Equipment Corporation | Processor and method for delaying the processing of cache coherency transactions during outstanding cache fills |
US5404482A (en) * | 1990-06-29 | 1995-04-04 | Digital Equipment Corporation | Processor and method for preventing access to a locked memory block by recording a lock in a content addressable memory with outstanding cache fills |
US5392417A (en) * | 1991-06-05 | 1995-02-21 | Intel Corporation | Processor cycle tracking in a controller for two-way set associative cache |
GB2260628A (en) * | 1991-10-11 | 1993-04-21 | Intel Corp | Line buffer for cache memory |
US5471479A (en) * | 1992-08-06 | 1995-11-28 | Motorola, Inc. | Arrangement for column sparing of memory |
DE4323929A1 (de) * | 1992-10-13 | 1994-04-14 | Hewlett Packard Co | Software-geführtes Mehrebenen-Cache-Speichersystem |
JP3181001B2 (ja) * | 1993-06-01 | 2001-07-03 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | キャッシュ・メモリ・システム並びにキャッシュ・メモリ・アクセス方法及びシステム |
US5604882A (en) * | 1993-08-27 | 1997-02-18 | International Business Machines Corporation | System and method for empty notification from peer cache units to global storage control unit in a multiprocessor data processing system |
US5544345A (en) * | 1993-11-08 | 1996-08-06 | International Business Machines Corporation | Coherence controls for store-multiple shared data coordinated by cache directory entries in a shared electronic storage |
US5568632A (en) * | 1993-12-17 | 1996-10-22 | Lsi Logic Corporation | Method and apparatus for cache memory |
JPH07219847A (ja) * | 1994-01-31 | 1995-08-18 | Fujitsu Ltd | 情報処理装置 |
US5822760A (en) * | 1994-01-31 | 1998-10-13 | Fujitsu Limited | Cache-memory system having multidimensional cache |
US6151661A (en) * | 1994-03-03 | 2000-11-21 | International Business Machines Corporation | Cache memory storage space management system and method |
US6044441A (en) * | 1995-09-29 | 2000-03-28 | Intel Corporation | Method and apparatus for encoding valid and invalid states in a cache with an invalid pattern |
US5913216A (en) * | 1996-03-19 | 1999-06-15 | Lucent Technologies, Inc. | Sequential pattern memory searching and storage management technique |
US5809548A (en) * | 1996-08-30 | 1998-09-15 | International Business Machines Corporation | System and method for zeroing pages with cache line invalidate instructions in an LRU system having data cache with time tags |
US6823434B1 (en) * | 2000-02-21 | 2004-11-23 | Hewlett-Packard Development Company, L.P. | System and method for resetting and initializing a fully associative array to a known state at power on or through machine specific state |
US6775752B1 (en) * | 2000-02-21 | 2004-08-10 | Hewlett-Packard Development Company, L.P. | System and method for efficiently updating a fully associative array |
US20020087798A1 (en) * | 2000-11-15 | 2002-07-04 | Vijayakumar Perincherry | System and method for adaptive data caching |
US7017008B2 (en) * | 2000-12-29 | 2006-03-21 | Intel Corporation | Method and apparatus for optimizing data streaming in a computer system utilizing random access memory in a system logic device |
US7062610B2 (en) * | 2002-09-30 | 2006-06-13 | Advanced Micro Devices, Inc. | Method and apparatus for reducing overhead in a data processing system with a cache |
US7155572B2 (en) * | 2003-01-27 | 2006-12-26 | Advanced Micro Devices, Inc. | Method and apparatus for injecting write data into a cache |
US7334102B1 (en) | 2003-05-09 | 2008-02-19 | Advanced Micro Devices, Inc. | Apparatus and method for balanced spinlock support in NUMA systems |
US9158546B1 (en) * | 2011-04-06 | 2015-10-13 | P4tents1, LLC | Computer program product for fetching from a first physical memory between an execution of a plurality of threads associated with a second physical memory |
US9164679B2 (en) * | 2011-04-06 | 2015-10-20 | Patents1, Llc | System, method and computer program product for multi-thread operation involving first memory of a first memory class and second memory of a second memory class |
US9176671B1 (en) * | 2011-04-06 | 2015-11-03 | P4tents1, LLC | Fetching data between thread execution in a flash/DRAM/embedded DRAM-equipped system |
US9170744B1 (en) * | 2011-04-06 | 2015-10-27 | P4tents1, LLC | Computer program product for controlling a flash/DRAM/embedded DRAM-equipped system |
US8930647B1 (en) * | 2011-04-06 | 2015-01-06 | P4tents1, LLC | Multiple class memory systems |
US8812516B2 (en) * | 2011-10-18 | 2014-08-19 | Qualcomm Incorporated | Determining top N or bottom N data values and positions |
US20140281391A1 (en) * | 2013-03-14 | 2014-09-18 | Qualcomm Incorporated | Method and apparatus for forwarding literal generated data to dependent instructions more efficiently using a constant cache |
US20150019822A1 (en) * | 2013-07-11 | 2015-01-15 | Lsi Corporation | System for Maintaining Dirty Cache Coherency Across Reboot of a Node |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3611315A (en) * | 1968-10-09 | 1971-10-05 | Hitachi Ltd | Memory control system for controlling a buffer memory |
US3588839A (en) * | 1969-01-15 | 1971-06-28 | Ibm | Hierarchical memory updating system |
US3735360A (en) * | 1971-08-25 | 1973-05-22 | Ibm | High speed buffer operation in a multi-processing system |
US3840862A (en) * | 1973-09-27 | 1974-10-08 | Honeywell Inf Systems | Status indicator apparatus for tag directory in associative stores |
US3949368A (en) * | 1974-01-23 | 1976-04-06 | Data General Corporation | Automatic data priority technique |
FR129151A (de) * | 1974-02-09 | |||
US3979726A (en) * | 1974-04-10 | 1976-09-07 | Honeywell Information Systems, Inc. | Apparatus for selectively clearing a cache store in a processor having segmentation and paging |
US4075686A (en) * | 1976-12-30 | 1978-02-21 | Honeywell Information Systems Inc. | Input/output cache system including bypass capability |
-
1978
- 1978-06-08 US US05/913,567 patent/US4197580A/en not_active Expired - Lifetime
-
1979
- 1979-06-02 DE DE19792922597 patent/DE2922597A1/de not_active Withdrawn
- 1979-06-04 GB GB7919396A patent/GB2022885B/en not_active Expired
- 1979-06-08 JP JP7136879A patent/JPS54160138A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
US4197580A (en) | 1980-04-08 |
JPS54160138A (en) | 1979-12-18 |
GB2022885A (en) | 1979-12-19 |
GB2022885B (en) | 1982-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2922597A1 (de) | Cache-speicher und verfahren zum betrieb einer datenverarbeitungsanlage | |
DE69029479T2 (de) | Hochleistungsspeichersystem | |
DE69217761T2 (de) | Lese- und Schreibschaltung für einen Speicher | |
DE2646162B2 (de) | Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers | |
EP0013737A1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE69326175T2 (de) | Daten-Reprogrammierungsverfahren in einem EEPROM und in einer EEPROM-Karte | |
DE2523414A1 (de) | Hierarchische speicheranordnung | |
EP0974977A2 (de) | Integrierter Speicher | |
DE3015992A1 (de) | Programmierbare logische anordnung | |
DE1966633B2 (de) | Datenverarbeitungsanlage mit überlappter Arbeitswelse bei Verwendung eines Haupt- und Pufferspeichers | |
DE3148099C2 (de) | Anordnung zum Erkennen einer Digitalfolge | |
DE19963689A1 (de) | Schaltungsanordnung eines integrierten Halbleiterspeichers zum Speichern von Adressen fehlerhafter Speicherzellen | |
DE1524856A1 (de) | Wortadressierbare Datenspeicher mit mehreren defekten Speicherelementen | |
DE4302754C1 (de) | Monolithisch integrierte Datenspeicheranordnung und Verfahren zu deren Betrieb | |
DE2442673C2 (de) | Einrichtung zur Einfügung von Kontrolldaten in den Sprachspeicher einer Zeitvielfachvermittlungsstelle | |
DE2242279C3 (de) | Schaltungsanordnung zur Ermittlung von Fehlern in einer Speichereinheit eines programmgesteuerten Datenvermittlungssystems | |
EP0353660B1 (de) | Verfahren zur Fehlersicherung in Speichersystemen von Datenverarbeitungsanlagen, insbesondere Fernsprechvermittlungsanlagen | |
DE2455440A1 (de) | Verifizierungsanordnung | |
DE2702586C3 (de) | Schaltungsanordnung zum Steuern des Speicherzugriffs bei einem Rechner | |
EP1085387B1 (de) | Speichersteuerung zum Durchführen von Schaltbefehlen für den Zugriff auf Speicherzellen | |
DE69427277T2 (de) | Verfahren zur Programmierung und Prüfung eines nichtflüchtigen Speichers | |
DE1449816C3 (de) | Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher | |
DE19808347B4 (de) | Integrierter Speicher | |
DE10107833B4 (de) | Speicheranordnung und Verfahren zum Auslesen einer Speicheranordnung | |
DE2923564C2 (de) | Speicheranordnung mit einer Anzahl von Speicherbaugruppen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8128 | New person/name/address of the agent |
Representative=s name: BLUMBACH, P., DIPL.-ING., 6200 WIESBADEN WESER, W. |
|
8130 | Withdrawal |