DE2445617A1 - Hierarchische speicheranordnung - Google Patents
Hierarchische speicheranordnungInfo
- Publication number
- DE2445617A1 DE2445617A1 DE19742445617 DE2445617A DE2445617A1 DE 2445617 A1 DE2445617 A1 DE 2445617A1 DE 19742445617 DE19742445617 DE 19742445617 DE 2445617 A DE2445617 A DE 2445617A DE 2445617 A1 DE2445617 A1 DE 2445617A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- address
- buffer
- data
- classes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
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/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/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- 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/60—Details of cache memory
- G06F2212/601—Reconfiguration of cache memory
Description
Amtliches Aktenzeichen:
Neuanmeldung
Aktenzeichen der Anmelderin:
BU 972 018
Die Erfindung betrifft eine hierarchische Speicheranordnung der im Oberbegriff des Hauptanspruches angegebenen Art.
Der Hauptspeicher einer Datenverarbeitungsanlage dient zur Speicherung
der von der zentralen Verarbeitungseinheit benötigten Daten und Instruktionen. In der Arbeitsgeschwindigkeit liegt jedoch
insofern eine Fehlanpassung vor, als die Verarbeitungseinheit normalerweise mit viel höherer Geschwindigkeit arbeiten kann,
als der Hauptspeicher. Diese Fehlanpassung tritt bei modernen Datenverarbeitungsanlagen, deren Schaltkreise mit immer höherer
Geschwindigkeit arbeiten, um so deutlicher hervor. Zur Bezeichnung der Daten werden von der zentralen Verarbeitungseinheit
vielfach logische Adressen verwendet, die nur dann mit den realen Adressen, d.h. mit den Adressen, in denen die Daten tatsächlich
gespeichert sind, übereinstimmen, wenn nur ein einziger Speicher verwendet wird. Zur rascheren Datenversorgung der Verarbeitungseinheit werden jedoch normalerweise Speicherhierarchien verwendet,
die zumindest aus einem schnellen, mit der-Verarbeitungseinheit
direkt verbundenen Pufferspeicher, sowie aus einem langsamen, dafür aber größeren Hauptspeicher bestehen. In einer solchen
Speicherhierarchie, kann der Adressenraum, der von den von der Verarbeitungseinheit gelieferten logischen Adressen umfaßt wird,
mit dem Adressenraum des größten Speichers der Hierarchie über-
509818/1040
einstimmen. Da eine übertragung von einzelnen, jeweils benötigten
Bytes von höheren Stufen der Hierarchie (d.h. größeren Speichern), zu niedrigeren Stufen der Hierarchie (d.h. schnelleren Speichern)
viel zu aufwendig wäre, wird zweckmäßig ein gesamter Datenblock übertragen, da erfahrungsgemäß außer dem gerade benötigten Byte
auch die benachbarten Bytes in folgenden Verarbeitungsschritten benötigt werden. Für die Kapazität eines solchen Datenblocks wird
meist eine feste Größe genommen.
Zur Übertragung der Datenblöcke zzwischen den Stufen der Hierarchie
und zur Übersetzung der logischen Adressen in reale Adressen ist eine Hierarchie-Verwaltungseinrichtung notwendig. Wenn von der
Verarbeitungseinheit eine logische Adresse angeliefert wird, bestimmt diese Verwaltungseinrichtung zuerst die reale Adresse
des entsprechenden logischen Datenblocks im Hauptspeicher und sorgt dann für die übertragung dieses Blocks in den schnellen,
der Verarbeitungseinheit direkt zugänglichen Pufferspeicher. Diese Aktionen der Verwaltungseinrichtung sind für den Benutzer
des Systems transparent, d.h., sie erscheinen dem Benutzer wie ein direkter Zugriff der Verarbeitungseinheit zu dem gewünschten
Datenbyte.
In einer1 solchen Speicherhierarchie wird natürlich angestrebt,
daß die benötigten Daten sehr oft im schnellen Pufferspeicher schon vorhanden sind und nur selten vom Hauptspeicher geholt
werden müssen. Gelingt dies, können Zugriffe zu von der Verarbeitungseinheit
benötigten Daten meist zum schnellen Pufferspeicher ausgeführt werden, so daß die oben erwähnte Fehlanpassung
in der Arbeitsgeschwindigkeit weitgehend ohne Auswirkung bleibt. Dabei beziehen sich jedoch, wie oben beschrieben, die von der
Verarbeitungseinheit gelieferten logischen Adressen, auch virtuelle Adressen genannt, auf den Adressenraum des großen Speichers.
In einer solchen Hierarchie wird also der Vorteil einer raschen Arbeitsweise mit dem Vorteil einer umfassenden Adressierungsmöglichkeit
verbunden.
509818/1046
BU 972 018
In einer zweistufigen Hierarchie, in der die Daten sowohl im Hauptspeicher als auch im Pufferspeicher in Datenblöcken organisiert
sind, hängt die Größe dieser Blöcke von der verlangten Effektivität der Einrichtung, von der Hauptspeichergröße und
von den physikalischen Gegebenheiten der übrigen Anlage, wie z.B. die Größe der Datenübertragungswege, ab. Ein Datenblock
ist also die Datenmenge, die jeweils zwischen benachbarten Stufen der Hierarchie übertragen wird. Die optimale Größe eines
solchen Datenblocks variiert dabei von Maschine zu Maschine und von Anwendung zu Anwendung.
Da der Pufferspeicher naturgemäß nicht alle im Hauptspeicher
enthaltenen Informationen speichern kann, ist eine Tabelleneinrichtung,
die als Verzeichnisspeicher bezeichnet werden kann, notwendig, die angibt, welche Datenblöcke z.Zt. im Pufferspeicher
gespeichert sind. Der Tabellenspeicher besteht aus einem Adressembereich, einem Ersatzbereich und geeigneten Steuerschaltungen.
Im Adressenbereich sind die Adressen der z.Zt. im Pufferspeicher vorhandenen Datenblöcke gespeichert, so daß durch Zugriff zu
diesem Adressenbereich festgestellt werden kann, ob die gewünschte Information im Pufferspeicher vorhanden ist oder nicht.
Im Ersatzbereich sind Informationen gespeichert, welche es gestatten,
festzustellen, welcher Datenblock im Pufferspeicher durch einen neu einzuschreibenden Block ersetzt werden kann.
Der Ersatzbereich steuert die Blockaustauschoperationen. Der Verzeichnisspeicher ist dem Benutzer gegenüber transparent.
Für den Einfluß der Größe eines Datenblocks auf die Arbeitsweise
der Datenverarbeitungsanlage kann auf den Artikel von BELADY in IBM Systems Journal, Band 5, Nr. 2, Seite 78 bis 101 (1966) Bezug
genommen werden.
Zur Abbildung von Hauptspeicherbereichen auf Pufferspeicherbereiche
gibt es zwei Möglichkeiten.Die erste Möglichkeit wird assoziativ
und ungebunden genannt, während die zweite Möglichkeit mit teilassoziativ oder gebunden bezeichnet werden kann. Nach der
S 0 9 8 18/1046-
BU 972 018
assoziativen Abbildung kann jeder Block im Hauptspeicher in jedem Blockrahmen oder Fach des Pufferspeicher gespeichert sein. Der
Vorteil dieser Methode besteht darin, daß alle verfügbaren Blockrahmen, d.h., Speicherbereiche, die einen Datenblock aufnehmen
können, im Pufferspeicher benutzt werden können. Der Nachteil dieser Methode besteht darin, daß unter Umständen langwierige
Suchoperationen notwendig werden, um noch einen freien Datenblock zur Aufnahme eines Blocks aus dem Hauptspeicher zu finden.
Außerdem gestalten sich nach dieser Methode die Austauschalogrithmen
zum Freimachen ein°s Blocks im Pufferspeicher als äußerst schwierig, da die relativen Prioritäten der Blöcke im Pufferspeicher
berücksichtigt werden müssen.
Nach der teilassoziativen Methode wird der Hauptspeicher in Gebiete
und Obergebiete, hier unten Klassen und Bücher genannt, unterteilt. Eine Klasse ist dabei eine adressierbare Untereinheit
des Haupt- und des Pufferspeichers. Eine Klasse im Hauptspeicher
enthält X Anzahl von Blöcken, während eine Klasse im Pufferspeicher N Anzahlblöcke speichert. Hierbei ist N wesentlich kleiner
als X. Alle Blöcke einer bestimmten Hauptspeicherklasse kommen zur Abspeicherung in der begrenzten Anzahl von Blockrahmen in
der betreffenden Klasse im Pufferspeicher in Betracht. Als Buch wird dabei eine Reihe des Hauptspeichers bezeichnet. Die Gesamtanzahl
von Bachadressen ist dabei gleich für jede Klasse im Hauptspeicher. Ein Buch enthält so viele Blöcke wie es Klassen
gibt, daher ist die Buchkapazität in Worten gleich dem Produkt der Anzahl Klassen mal Blockgröße.
Eine Zeile des Pufferspeichers wird mit Fach bezeichnet. Ein
Pufferspeicher mit N Fächern kann als N-fach assoziativ bezeichnet
werden. Die genannten Zusammenhänge in einer Speicherhierarchie sind in dem Artikel von MATTSON in IBM Systems Journal,
Band 9, Nr. 2, Seite 78 bis 117 (1970) beschrieben.
Eine Speicherhierarchie mit einer einzigen, ungebundenen Klasse
ist imIBM Systems Journal, Band 7, Nr. 1, 1968, Seite 2 beschrie-
BU 972 018 609818/10*6
ben. Eine teilssoziative, gebundene Speicherhierarchie ist in der
GE OS 1 956 604 beschrieben.
Die bekannten Speicherhierarchien stehen jeweils in einer festen Größenordnung zueinander, die beim Entwurf der Datenverarbeitungsanlage
festgelegt wird. Die Dimensionierung erfolgt dabei hinsichtlich der beim Entwurf der Systeme betrachteten Erfordernisse
und sollte einen optimalen Arbeitsablauf gewährleisten. Eine solche Dimensionierung gestattet also nur jeweils eine einzige
Konfiguration, welche zumeist Abbildungsbindungen zwischen Haupt- und Pufferspeicher enthält. Da man, wie oben beschrieben, erst
mit fortschreitender Erhöhung der Arbeitsgeschwindigkeit der Verarbeitungseinheiten zum Gebrauch eines schnellen Pufferspeichers
überging, blieb der Hauptspeicher, der zunächst als Magnetkernspeicher und später als monolithischer Speicher ausgeführt
war, lange Zeit ein Speicherteil, der mehr im Zusammenhang mit dem übrigen System als im Zusammenhang mit dem Pufferspeicher
gesehen wurde und daher unabhängig von diesem erzeugt wurde. Dies brachte mit sich, daß man die Möglichkeit von Verbindungsvariationen
zwischen Haupt- und Pufferspeicher vorsehen mußte, wobei die tatsächlichen Verbindungen bei der Inbetriebnahme der Anlage
realisiert wurden.
Die Weiterentwicklung der Halbleitertechnik und insbesondere der integrierten Halbleiterspeicher machte es möglich, eine
einzige Einheit zu schaffen, die nunmehr Haupt- als auch Pufferspeicher enthielt. Diese Einheit (Brett, Karte, Modul oder schließlich
ein einzelnes integriertes Chip) wird nach einer festen Fabrikationsvorschrift erzeugt und enthält die gesamte Speicherhierarchie.
Diese Zusammefassung des Hauptspeichers und Pufferspeichers auf dem gleichen Teil gestattet es sicherlich, eine Verminderung der
Herstellungskosten und eine Verbesserung der Leistung, doch mußte man für jede verschiedene Konfiguration ein verschiedenes
Teil herstellen, da nunmehr die Verbindungen zwischen Haupt- und
509818/1046
BU 972 018
Pufferspeicher auf dem Teil fest vorgegeben waren und nicht mehr
verändert werden konnten, während andererseits jedoch für verschiedene Abbildungsvariationen jeweils eine andere Leitungsführung
notwendig gewesen wäre.
Der Erfindung liegt daher die Aufgabe zugrunde, unter Beibehaltung
der vorteilhaften Produktion der Speicherhierarchie auf einem einzigen Maschinenteil, z.B. einem Chip, eine Rekonfiguration
der AbbildungsVerhältnisse möglich zu machen.
Diese Aufgabe wird durch die im Kennzeichen des Hauptanspruches beschriebene Einrichtung gelöst.
Die Erfindung hat den Vorteil, daß die Klassen- und Blockaufteilung
zwischen Hauptspeicher und Pufferspeicher dynamisch, d.h., während des Betriebes geändert werden kann. Hierdurch
kann eine für die jeweils gegebenen Erfordernisse optimale Konfiguration geschaffen werden. Arbeitet die Hierarchie z.B.
nur mit einer einzigen Klasse, so wird der Pufferspeicher optimal ausgenutzt, da ein Datenblock aus dem Hauptspeicher im Prinzip
in jedem Blockrahmen im Pufferspeicher gespeichert werden kann. Hierbei muß man jedoch, wie oben beschrieben, umfangreiche
Verwaltungsoperationen in Kauf nehmen. Wenn andererseits jedoch solche Verwaltungsoperationen sich für den gewünschten Zweck
zu störend auswirken, so kann, unter Verzicht auf 100 %ige Ausnutzung
des Pufferspeierraumes, eine Konfiguration mit mehreren Klassen gewählt werden. Hierbei kann wohl ein bestimmter Datenblock
nur in einem leerstehenden oder ersetzbaren Blockrahmen innerhalb einer bestimmten Klasse im Pufferspeicher gespeichert
werden, doch gestaltet sich andererseits die Adressierung des Pufferspeichers und Auswahl der Speicherstellen einfach.
Die erfindungsgemäße neue Hierarchie mit fester Zuordnung zwischen
Haupt- und Pufferspeicher gestattet auch die übertragung von Blökken
variabler Größe sowie die Wahl einer gewünschten Anzahl von Klassen für solche Blöcke. Die Erfindung kann dabei unabhängig
972 018 5098 18/1046
von dem jeweils benutzten Adressenformat Verwendung finden. Die durch die Erfindung angegebenen Einrichtungen können dabei z.B.
von einem Festwertspeicher oder auch von einer steuerbaren Logik gesteuert werden. Diese Steuerung kann durch das Programm der
Datenverarbeitungsanlage erfolgen und man erhält dadurch nach Wunsch entweder eine feste Konfiguration oder eine dynamische.
Vorteilhafte Weiterbildungen der Erfindung sind den Unteransprüchen
zu entnehmen.
Die Erfindung soll nun anhand eines in den Fign. gezeigten Ausführungsbeispieles
näher beschrieben werden.
Es zeigen:
Fig. 1 ein Blockschaltbild einer bekannten Speicherhierarchie ,
Fign. 2a bis 2c kongruente Abbildungskonzepte, welche die Unterteilung
des Hauptspeichers und des Pufferspeichers in unabhängige kongruente Klassen angeben,
Fig. 3 ein Blockschaltbild der erfindungsgemäße Speicherhierarchie,
und
Fig. 4 das Blockschaltbild einer bevorzugten Ausführungsform der Erfindung, in der ein festes Format
zwischen Haupt- und Pufferspeicher für verschiedene hierarchische Konfigurationen gezeigt ist.
In Fig. 1 ist eine zweistufige Speicherhierarchie mit einem Verzeichnisspeicher
gezeigt. Die Anordnung besteht aus dem Hauptspeicher 10, dem Pufferspeicher 12, dem Verzeichnisspeicher 14
und dem Speicheradressenregister (SAR) 16. SAR 16 hat eine Kapazität
von n-Adressenbits, so daß 2n-Bytes im Hauptspeicher adressiert
werden können. Der Hauptspeicher ist in 2n"m-Bücher, 2m"k-Klassen
und in 2 -Bytes innerhalb einer Klasse (Blockgröße) unter-
BU 972 018 5098 18/1046
teilt. Mit den n-Adressenbits in SAR 16 kann also jedes der 2 Bytes adressiert werden.
Der Pufferspeicher 12 hat, wie aus Fig. 1 ersichtlich ist, 4 Fächer,
d.h., er ist vierfach assoziativ ausgeführt. Die 4 Fächeradressen werden von Verzeichnisspeicher 14 geliefert.
Vom Verzeichnisspeicher 14 werden alle Zugriffsanforderungen von
der zentralen Verarbeitungseinheit überwacht und über eine nichtgezeigte Speichersteuerung SCU zu den betreffenden Speicherstellen
dirigiert. Der Verzeichnisspeicher 14 weist einen Adressenbereich 18 und einen Ersatzbereich 20 auf. Im Adressenbereich 18
sind die Hauptspeicheradressen jedes Datenblockes gespeichert, der zu diesem Zeitpunkt auch im Pufferspeicher 12 enthalten ist.
Bei jeder Adressierung des Hauptspeichers 10 wird die Hauptspeicheradresse mit dem Inhalt des Verzeichnisspeichers verglichen.
Der Ersatzbereich 20 speichert Angaben über die Häufigkeit der Datenzugriffe zu den verschiedenen Datenblocks im Pufferspeicher.
Je nach Bedarf kann einer der bekannten Austauschalgorithmen "am ältesten benutzt (LRU)", "Zuerst-Ein-Zuerst-Aus (FIFO)",
oder andere benutzt werden. Im Ersatzbdreich 20 kann auch ein Einspeicher-Statusbit (SIS) gespeichert werden, das anzeigt, ob
eine Einspeicheroperation den betreffenden Block verändert hat. In einem solchen Falle wären alle Kopien dieses Blockes in den
langsameren Stufen der Hierarchie ungültig geworden. Der Adressenbereich 18 und der Ersatzbereich 20 weisen (m-k)-Eintragungen
auf, d.h. so viel Eintragungen, wie es kongruente Klassen gibt. Ferner sind Einrichtungen zum Vergleich, zur Steuerung und zum
Fortschreiben der Bereiche 18 und 20 vorgesehen, die mit den Bezugszeichen 22 und 24 versehen sind.
Die Anzahl von Bits, die im Adressenbereich gespeichert werden müssen, hängt von der Anzahl C von kongruenten Klassen, von der
Pufferassoziativität A und der Anzahl von Adressenbits der Buchadresse (n-m) ab. Die Kapazität des Adressenbereiches beträgt
also für eine bestimmte hierarchische Konfiguration CA(n-m)-Bits,
BU 972 018 50981 8/ 1 0 46
In gleicher Weise ist die Anzahl der Bits, die im Ersatzbereich gespeichert werden müssen, eine Funktion der Pufferassoziativität
A, der Anzahl von Bits, die zur Beschreibung des Austauschalgorithmus
REP notwendig sind, der Anzahl C von kongruenten Klassen und der Anzahl von zusätzlichen Steuerbits B, die pro
Block notwendig sind. Die Speicherkapazität des Ersatzbereiches beträgt deshalb C(REP(A) + BA) Bits.
Zur Steuerung der bekannten Speicherhierarchien sind verschiedene Anordnungen für den Verzeichnisspeicher möglich, wie sich aus
den in der Beschreibungseinleitung genannten Dokumenten ergibt. Je nach Art des gesteckten Zieles kann eine solche Hierarchie
optimiert werden, bezüglich einer minimalen Hardware, höchster Effektivität oder höchster Zuverlässigkeit und Verfügbarkeit.
Die Adreßbereiche können dabei als Assoziativspeicher ausgeführt sein. Das Suchargument für den assoziativen Vergleich stellt dabei
die Buchadresse dar. Bei einem positiven Vergleich wird die betreffende Pufferfachadresse geliefert.
In den Fign. 2A bis 2C ist schematisch dargestellt, wie ein Hauptspeicher
mit einer Kapazität von 2n adressierbarer Einheiten unter
Verwendung eines Pufferspeichers mit 8 Pufferfächern, d.h., 8-facher
Assoziativität in kongruente Klassen unterteilt werden kann. In Fig. 2A ist eine Hierarchie mit einer einzigen Klasse gezeigt,
in der jede der 2 adressierbaren Dateneinhi Fächer des Puffers gespeichert werden kann.
in der jede der 2 adressierbaren Dateneinheiten in jedem der 8
In Fig. 2B ist ein 2-Klassensystem dargestellt, in dem die eine
Hälfte der adressierbaren Dateneinheiten im Hauptspeicher nur in den ersten 4 Fächern des Pufferspeichers und die zweite Hälfte
des Hauptspeicherbereiches nur in den zweiten 4 Fächern des Pufferspeichers gespeichert werden kann.
Fig. 2C zeigt ein System mit 4 Klassen im Hauptspeicher, die nur in 2 Fächern des Pufferspeichers gespeichert werden können.
BU 972 018 509818/10/16
Wie bereits eingangs beschrieben, können Datenübertragungen zwischen
Puffer- und Hauptspeicher in den bekannten Einrichtungen über Verbindungskabel durchgeführt werden. Der Pufferspeicher ist
dabei in den bekannten Einrichtungen in der Speichersteuerung untergebracht, welche auch die Kanaleinrichtungen, die dynamische
Adressenübersetzung für die virtuellen Adressen und die Verzeichnisspeicher enthält, und ist also physikalisch getrennt vom Hauptspeicher.
Da hierdurch die Anzahl von Drahtverbindungen zwischen Haupt- und Pufferspeicher nicht beliebig groß gewählt werden kann,
müssen die Bytes eines Datenblockes sequentiell über die beschränkte Anzahl von Verbindungen übertragen werden. Mit fortschreitender
Verbesserung der Großintegrations-Möglichkeiten kann nunmehr der schnelle Pufferspeicher zusammen mit dem langsamen,
jedoch dicht gepackten Hauptspeicher auf dem gleichen Teil, z.B. demselben Chip gefertigt werden. Die Datenübertragung von und
zum Hauptspeicher erfolgt dabei über Pufferregister und Speicherbereiche mit hoher Arbeitsgeschwindigkeit sorgen für die Erhöhung
der Speichergeschwindigkeit. Die übertragung von großen Datenblöcken,
auch in der Große der gebräuchlichen virtuellen Datenseiten kann durch Großintegration parallel durchgeführt werden.
Die Übertragungszeit eines Blockes zwischen zwei Stufen einer
solchen Speicherhierarchie nimmt dabei die Größenordnung der Zykluszeit des Hauptspeichers an.
Fig. 3 zeigt eine bevorzugte Ausführungsform der Erfindung. Ein
Hauptspeicher 10 und ein Pufferspeicher 12 sind unter Ausnutzung der Möglichkeiten der Großintegration aus demselben Teil gefertigt
und weisen jeweils ein festes Format aus. In Fig. 3 sind Einrichtungen gezeigt, die eine dynamische Rekonfiguration der
gezeigten Speicherhierarchie möglich machen. Fig. 3 zeigt neben den bereits im Zusammenhang mit Fig. 1 beschriebenen Einheiten
10, 12, 16, 18 und 20 außerdem eine Vergleichsschaltung 22',
eine Fortschreibelogik für den Adreßbereich 26 und eine Fortschreibelogik 28 für den Austauschbereich 20. Da die Buch- und
Klassenbezeichnung unabhängig ist, von der jeweils gewählten Konfiguration, können diese Bezeichnungen immer vom Verzeichnisspeicher
14 zur Feststellung verwendet werden, ob die gewünsch-
509818/1046
BU 972 018
ten Daten ζ.Zt. im Pufferspeicher gespeichert sind. Fig. 3 zeigt
Eingänge zum Verzeichnisspeicher für die Buchadresse und für die Klassenadresse.
Bei einer Veränderung der Konfiguration müssen sich natürlich auch die Werte n, m und k ändern und der Verzeichnisspeicher muß
deshalb so ausgelegt werden, daß er alle Konfigurationen bedienen kann, deren Wahl möglich ist. Der Adressenbereich 18 und der Ersatzbereich
20 müssen deshalb (m-k) Eintragungen aufweisen, d.h., so viele, wie es Klassen gibt.
Der Adressenbereich sowie die damit verbundenen Vergleichs- und
Codierschaltungen werden wie folgt ausgelegt. Zuerst muß für die
insgesamt mögliche Konfiguration der maximale Wert für n-m bestimmt
werden. Sodann wird die maximal gewünschte Assoziativität
A festgestellt. Die Kapazität des Adreßbereichwortes und die max
Anzahl der Vergleichsschaltungen wird sodann A
max
in-m)max Bits·
Wenn der Puffer z.B. mit einer kleineren Assoziativität A ausgelegt
wird, werden manche zusätzliche Klassenadressenbits (m-k) dazu benutzt, die betreffenden Vergleichsschaltungen in der Codierlogik
30 auszuschalten, indem die betreffenden Klassenadressenbits dieser Einheit über die Sammelleitung 32 zugeführt werden um dadurch
Signale zur Ansteuerung der betreffenden Adressenleitungen A des Puffers 12 zu erzeugen.
Das folgende Beispiel zeigt einen Verzeichnisspeicher für einen Hauptspeicher mit* 2 * 10 Bits und einen Pufferspeicher mit 32k
Bytes für die 4 verschiedenen Pufferorganisationen:
Buch
Klasse
Byte
Assoziativität
(2n"m)
(2rn-k}
(2kBytes)
(2A)
64 | 64 | 64 | 64 |
64 | 16 | 128 | 64 |
32 | 128 | 64 | 128 |
16 | 16 | 4 | 4 |
In diesem Falle sind für die Buchadresse (n-m) 6 Buchbits notwendig,
wobei diese Anzahl konstant bleibt. Die maximale Assoziativität
BU 972 018
5 0 9818/1046
2A ist gleich 16 und die Wortlänge des Adressenbereiches 18 ist
gleich A (n-m) , d.h. 24 Bits. Der Adressenbereich 18 muß deshalb 64 Worte zu je 24 Bits enthalten. Je kleiner die Blockgröße gewählt wird, desto größer muß offensichtlich die Kapazität
des Adressenbereiches werden. Eine Anordnung mit einer festen Anzahl von Blocks erfordert daher nicht mehr Bitkapazität des
Adressenbereiches als ein bekannter Verzeichnisspeicher ohne
dynamische Konfiguration. Zusätzliche Einrichtungen sind jedoch in den Vergleichsschaltungen, in den Codiereinheiten und im
Ersatzbereich notwendig, dessen Größe hauptsächlich von dem verwendeten Austauschalgorithmus abhängt.
Anhand von Fig. 3 soll nun eine Hierarchie mit zwei kongruenten Klassen betrachtet werden und zwar für ein System, das so ausgelegt
ist, daß die minimale Klassenanzahl 1 und die maximale Pufferfachzahl gleich 16 ist. In der geänderten hierarchischen
Konfiguration weist die Puffer nun 8 effektive Pufferfächer für jede Klasse auf. Da im Adressenbereich der Vergleich auf Wortbasis
stattfindet, kann das Vergleichssignal vom Adressenbereich bei Verwendung nur der ersten 8 Fächer des Puffers nicht unterscheiden,
in welcher der Klassen des Puffers die Information gespeichert ist. Um nun eines der 16 Fächer des Puffers, die physikalisch
adressierbar sind, auswählen zu können, spricht die Codiereinheit 30 auf die Klassenbits (m-k) an, d.h. in diesem
Fall auf ein Bit, das der Codierlogik 30 zugeführt wird, um die normalerweise erzeugte Fachadresse auszuschalten und z.B. das
hochwertige Adressenbit von A zu erzeugen, unabhängig von dem normalerweise erzeugten Adreßbit, das in der Vergleichseinheit
22' gefunden wird.
Selbstverständlich sind zur Erzeugung der notwendigen Anzahl von Pufferfachadressenbits als Funktion der Klassenadresse
verschiedene Anordnungen denkbar.
Der Verzeichnisspeicher kann auch als assoziatives Verzeichnis ausgeführt werden, indem die gesamte Pufferadresse direkt von
Bü 972 018 509818/1046
einem vollassoziativen Adressen- und Ersatzbereich erzeugt wird. Ein assoziatives Verzeichnis ist unabhängig von der Anzahl Klassen
und der Assoziativ!tat. Es ist einfach eine Funktion der Anzahl Eintragungen A · (m-k) und der Eintragungsgröße (n-m).
Es sind auch Ausführungsformen denkbar, nach denen die zentrale
Verarbeitungseinheit Logikeinrichtungen enthält, welche es gestatten, die Speicherhierarchie während des Betriebes dynamisch
zu steuern. Eine solche dynamische Steuerung ist in Fig. 3 durch den Eingang 34 zur Einrichtung 30 dargestellt.
Fig. 4 zeigt ein Blockschema einer Speicherhierarchie mit einem Hauptspeicher und einen Pufferspeicher, sowie mit festen Verbindungen
zwischen den gezeigten Einheiten. Die hierarchische Speicheranordnung kann dabei auf einen einzigen Teil 40, der als integriertes
Chip, Modul oder Karte ausgeführt sein kann, untergebracht werden. Dieses Teil 40 kann z.B. eine bestimmte Teilnummer erhalten
und kann dabei doch in verschiedenen Datenverarbeitungsanlagen mit verschiedenen Anforderungen verwendet werden. Für die Erzeugung
und Lagerhaltung ergeben sich hierdurch große Vorteile.
Fig. 4 zeigt eine funktioneile Auf-Chip-Hierarchie (HOC) mit einem
η k+A
2 Hauptspeicher und einem 2 Pufferspeicher. Das Speicheradressenregister
16 befindet sich außerhalb des Chips und speichert die Adressenbits (n-m) für die Buchadresse, m-k für die Klassenadresse
und k für die Bitadressen innerhalb eines Blocks.
n—k—i Der Hauptspeicher 10 ist als Speicher mit 2 J Wortleitungen und
2n -1 Bitleitungen organisiert. Die 2 3 Bitleitungen vom Haupt-
v speicher werden durch den Decoder 50 zu 2 Bits decodiert, die
dem Pufferspeicher 44, dem Austauschregister 46 oder der Datenschnittstelle 48 zugeführt werden. Der Pufferspeicher 44 weist
A k " ' ■ A
2 Wortleitungen und 2 Bitleitungen auf. Jede der 2 Wortleitungen
bezeichnet ein Pufferfach. Jede der Wortleitungen und der Bitleitungen kann von den Decodierern ausgewählt werden, so daß ein
einzelnes Bit geschrieben oder gelesen werden kann. Acht identische Einheiten oder Chips 40 werden zugleich adressiert und ge-
509818/1046
Bü 972 018
statten somit die Übertragung eines Bytes.
Zum Betrieb der in Fig. 4 gezeigten Hierarchie sind insgesamt
n+A Adressenleitungen notwendig. Die (n-k-j) Adressen gestatten die Auswahl einer der 2 J Wortleitungen des Hauptspeichers
42. Wie gezeigt, ist eine Anzahl j der Buch-Klassen-Adressenleitungen mit einem Decoder 50 verbunden, der unter den "2? möglichen
Kombinationen eine Auswahl trifft. Die k Bitblockadreßieitungen wählen eine der 2 Pufferbitleitungen aus und die A Pufferfachadreßleitungen,
die mit dem Verzeichnisspeicher verbunden sind,
A k
wählen eine der 2 Pufferwortleitungen aus. Mit einer der 2 Bitleitungen
kann entweder die Dateneingabe oder Datenausgabeschaltung über einen 2 Bitdecodierer 52 verbunden werden. Derselbe
Decodierer wird dazu benutzt, die Datenleitungen zu einer Pufferoder Hauptspeicherzelle zu verbinden und eine Schreib- oder Leseoperation
bezüglich eines einzelnen Bits durchzuführen.
Verschiedene Speicherraum- oder Klassenkonfigurationen für die Speicherhierarchie auf dem Chip 40 sind gezeigt. Das Chip 40 kann
A A—I
als 2,2 , ... 1-fache einfache assoziative Hierarchie betrieben werden. Jede dieser-Konfigurationen hat eine Blockgröße von 2 Bits und gibt damit die Gesamtanzahl von Leitungen zwischen Haupt- und Pufferspeicher an.
als 2,2 , ... 1-fache einfache assoziative Hierarchie betrieben werden. Jede dieser-Konfigurationen hat eine Blockgröße von 2 Bits und gibt damit die Gesamtanzahl von Leitungen zwischen Haupt- und Pufferspeicher an.
In der Einklassen-Konfiguration kann eine 2 Bitgruppe in jedes
A k
der 2 Pufferfächer übertragen werden. Diese 2 Bitgruppe kann
von jeder der 2n~ "3 Wortleitungen und jedem Viertel der 2 3
Bitleitungen im Hauptspeicher 42 kommen und daher ihren Ursprung in jedem der 2 Bücher der Einklassen-Konfiguration haben. Alle
n+A Adressenbits werden für die Einklassenkonfiguration gebraucht.
A—I Die Zweiklassen-Konfiguration ist mit einer 2 -fachen Assoziativität
verbunden. Die Kapazität des Pufferspeichers beträgt konstant 2 Bits. Für die Abbildung der 2n K Bücher bestehen
nun die folgenden Bedingungen. Eine Anzahl von 2n~m Bücher werden
in die erste Hälfte des Pufferspeichers 44 abgebildet und die
BU 972 018 5 0 9 8 1 8 / 1 Q A 6
restlichen 2n"m Bücher in die zweite Hälfte des Pufferspeichers.
Beispielsweise kann angenommen werden, daß die beiden Klassen im Hauptspeicher 42 die obere und untere Hälfte der Wortleitungen
darstellen, und von einem der Adressenbits des Decoders 50 angegeben werden. Daten von der oberen Hälfte der Wortleitungen im
Hauptspeicher 52 werden immer in die linke Hälfte des Pufferspeichers 44 und Daten der unteren Hälfte der Wortleitungen des
Hauptspeichers 42 immer in die rechte Hälfte des Pufferspeichers 44 gespeichert. Fur die Zweiklassen-Konfiguration sind n+A-1
Bits für das Speicheradressenwort nötig. Eines der A Pufferwortleitung-Ädressenbit
entspricht einem der Adressenbits und gibt die obere oder untere Hälfte des Hauptspeichers an. Dementsprechend,
werden für die Vierklassen-Konfiguration n+A-2 Adressenbits benötigt .
Das folgende Beispiel zeigt nochmals die dynamische Rekonfigurationsmöglichkeit
der Erfindung.
Es soll z.B. ein Hauptspeicher von 32k Bits und ein Pufferspeicher
von 512 Bits vorhanden sein. Zur Darstellung der Hauptspeicheradresse,
welche dem Speicheradressenregister zugeführt wird, sind insgesamt n=l8 Bits notwendig. 6 dieser Bits werden dabei zugleich
zur Adressierung des Hauptspeichers und des Pufferspeichers verwendet. Somit ist k=6. Die maximale Assoziativität des Pufferspeichers
beträgt 8, so daß zur Darstellung der Pufferfachadresse A=3 Bits benötigt werden. Als allgemeiner Fall ergibt sich die
Einklassen-Konfiguration mit 8 Pufferfächern und 512 Büchern. Die
folgende Tabelle macht nochmals deutlich, daß mit einem einzigen Teil vier verschiedene Konfigurationen nach der Erfindung erhalten
werden können.
BU 972 018 5098 18/1046
Bitübertragung | TABELLE | Bücher | Konfiguration | |
Klassen | 64 | Assoziativität | 512 | 1 |
1 | 64 | 8 | 256 | 2 |
2 | 64 | 4 | 128 | 3 |
4 | 64 | 2 | 64 | 4 |
8 | 1 | |||
Diese vier Konfigurationen können in Verbindung gebracht werden mit den Adressen für Bücher, Klassen und Bytes. Die folgende Tabelle
zeigt, welche Adressenbits für die verschiedenen Konfigurationen dem Chip zugeführt werden.
Buch (n-m) 9 8 7 6
Kongruenzklasse (m-k) 0 12 3
Byte (k) 6 6 6 6
Gesamtanzahl nötiger Chipadressenbits 18 17 16 15
In diesen Konfigurationen ergibt die Decodierung der sieben Worte (n-k-2) und die zwei Decoderbits zum Decoder 50 die Buch- und
Kongruenzklassenadresse, d.h. insgesamt neun Bits. Wie ersichtlich,
haben alle Konfigurationen, außer der Nr. 1, mehr Adresseneingänge
als notwendig. Z.B. sind für die Konfiguration 3, eine Vierklassen-Konfiguration, nur 16 der 18 verfügbaren Adressenbits
notwendig. Deshalb können zwei Adresseneingänge untereinander und mit zwei der 16 notwendigen Pfade verbunden werden. Um jedoch
die dynamische Rekonfiguration möglich zu machen, werden die Adressen kombiniert und vom Verzeichnisspeicher gesteuert, wie
oben beschrieben.
Die oben angegebenen Einrichtungen können auch derart modifiziert und verwendet werden, daß die Verwaltung von größeren Lochkapazi-
BU 972 018 509818/1046
täten oder einer höheren Anzahl von Kongruenzklassen möglich wird. Z.B. können für den Decoder 52 ein oder zwei zusätzliche
Eingänge vorgesehen werden. Diese sind in Fig. 4 mit 36 gezeigt und kommen vom Codierer 30 außerhalb des Chips. Hierdurch kann
die Hälfte der 2 Bits, die dem Decodierer 52 angeboten werden derart übertragen werden, daß jedes der Bits in dieser ersten
Hälfte in jeder Speicherstelle im Pufferspeicher 44 gespeichert
werden kann. Hierdurch wird die Assoziativ!tat des Puffers 44
vergrößert. In einem Pufferspeicher fester Größer verringert die Verwendung eines der k Bits als zusätzliches Klassenadressenbit
die Blockgröße auf 2k~1.
Im obigen Ausführungsbeispiel wurde gezeigt, wie eine Speicherhierarchie,
die dem Rechnersystem als feste Konfiguration erscheint, dynamisch derart geändert werden kann, daß die Assoziativität,
die Blockgröße und die Anzahl der Kongruenzklassen je nach den Gegebenheiten und Anforderungen geändert werden kann.
972 018 509818/1046
Claims (7)
- PATENTANSPRÜCHEHierarchische Speicheranordnung in einer Datenverarbeitungsanlage mit mindestens einem ersten, größeren und langsameren Speicher und einem zweiten kleineren und schnelleren Speicher, wobei die Daten im ersten Speicher in eine bestimmte Anzahl Klassen mit jeweils einer bestimmten Anzahl Blocks eingeteilt sind, die mit einer ersten Speicherblockadresse adressiert werden können, und wobei die Daten im zweiten Speicher in dieselbe Anzahl Klassen mit jeweils einer kleineren Anzahl Blocks als im ersten Speicher eingeteilt sind, die jeweils mit einer zweiten Speicherblockadresse adressiert werden können, die zumindest teilweise von einem Verzeichnisspeicher zur Speicherung der Adressen der im zweiten Speicher gespeicherten Datenblöcke geliefert wird,gekennzeichnet durch Einrichtungen (22, 30) zur Veränderung der Anzahl Klassen und der vom Verzeichnisspeicher (14) gelieferten zweiten Blockadresse, derart, daß alle Datenblöcke im zweiten Speicher (12, 44) auch nach Veränderung der Anzahl Klassen adressiert werden können.
- 2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Einrichtungen (22, 30) von der Befehlssteuerung der Datenverarbeitungsanlage gesteuert werden.
- 3. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Anzahl Klassen um einen Faktor 2n erhöht wird, wobei η Adreßbits der von der zentralen Verarbeitungseinheit gelieferten Adresse in der zweiten Blockadresse verwendet werden.
- 4. Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß die η Adressenbits Teil der ersten Blockadresse sind.Bü 972 018 5098 18/1 04 6
- 5. Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß die η Adressenbits Teil der Byteadresse sind.
- 6. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der erste Speicher (10) und der zweite Speicher (12) mit festen Verbindungen untereinander auf demselben Halbleiterchip (40) untergebracht sind.
- 7. Anordnung nach Anspruch 6, dadurch gekennzeichnet, daß Blockübertragungen zwischen dem ersten Speicher (10) und dem zweiten Speicher (12) bitparallel durchgeführt werden.BU 972 018 50981 8/ 1 046L e e r s e ι t e
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US00408958A US3840863A (en) | 1973-10-23 | 1973-10-23 | Dynamic storage hierarchy system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2445617A1 true DE2445617A1 (de) | 1975-04-30 |
DE2445617C2 DE2445617C2 (de) | 1983-01-20 |
Family
ID=23618458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2445617A Expired DE2445617C2 (de) | 1973-10-23 | 1974-09-25 | Hierarchische Speicheranordnung |
Country Status (7)
Country | Link |
---|---|
US (1) | US3840863A (de) |
JP (1) | JPS5322409B2 (de) |
CA (1) | CA1017872A (de) |
DE (1) | DE2445617C2 (de) |
FR (1) | FR2248577B1 (de) |
GB (1) | GB1488043A (de) |
IT (1) | IT1022435B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2855856A1 (de) * | 1977-12-22 | 1980-01-10 | Honeywell Inf Systems | Datenverarbeitungssystem |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3958222A (en) * | 1974-06-27 | 1976-05-18 | Ibm Corporation | Reconfigurable decoding scheme for memory address signals that uses an associative memory table |
US4099230A (en) * | 1975-08-04 | 1978-07-04 | California Institute Of Technology | High level control processor |
US4035778A (en) * | 1975-11-17 | 1977-07-12 | International Business Machines Corporation | Apparatus for assigning space in a working memory as a function of the history of usage |
US4008460A (en) * | 1975-12-24 | 1977-02-15 | International Business Machines Corporation | Circuit for implementing a modified LRU replacement algorithm for a cache |
DE2605617A1 (de) * | 1976-02-12 | 1977-08-18 | Siemens Ag | Schaltungsanordnung zum adressieren von daten |
US4084230A (en) * | 1976-11-29 | 1978-04-11 | International Business Machines Corporation | Hybrid semiconductor memory with on-chip associative page addressing, page replacement and control |
US4214303A (en) * | 1977-12-22 | 1980-07-22 | Honeywell Information Systems Inc. | Word oriented high speed buffer memory system connected to a system bus |
DE2842288A1 (de) * | 1978-09-28 | 1980-04-17 | Siemens Ag | Datentransferschalter mit assoziativer adressauswahl in einem virtuellen speicher |
US4268907A (en) * | 1979-01-22 | 1981-05-19 | Honeywell Information Systems Inc. | Cache unit bypass apparatus |
JPS5619575A (en) * | 1979-07-25 | 1981-02-24 | Fujitsu Ltd | Data processing system having hierarchy memory |
US4315312A (en) * | 1979-12-19 | 1982-02-09 | Ncr Corporation | Cache memory having a variable data block size |
US4441155A (en) * | 1981-11-23 | 1984-04-03 | International Business Machines Corporation | Page controlled cache directory addressing |
US4430712A (en) * | 1981-11-27 | 1984-02-07 | Storage Technology Corporation | Adaptive domain partitioning of cache memory space |
IT1153611B (it) * | 1982-11-04 | 1987-01-14 | Honeywell Inf Systems | Procedimento di mappatura della memoria in sistema di elaborazione dati |
US4631660A (en) * | 1983-08-30 | 1986-12-23 | Amdahl Corporation | Addressing system for an associative cache memory |
US4916603A (en) * | 1985-03-18 | 1990-04-10 | Wang Labortatories, Inc. | Distributed reference and change table for a virtual memory system |
US4821185A (en) * | 1986-05-19 | 1989-04-11 | American Telephone And Telegraph Company | I/O interface system using plural buffers sized smaller than non-overlapping contiguous computer memory portions dedicated to each buffer |
JPH0673114B2 (ja) * | 1987-03-31 | 1994-09-14 | 日本電気株式会社 | キヤツシユ制御装置 |
US5155834A (en) * | 1988-03-18 | 1992-10-13 | Wang Laboratories, Inc. | Reference and change table storage system for virtual memory data processing system having a plurality of processors accessing common memory |
CA1301367C (en) * | 1988-03-24 | 1992-05-19 | David James Ayers | Pseudo set-associative memory cacheing arrangement |
US5257395A (en) * | 1988-05-13 | 1993-10-26 | International Business Machines Corporation | Methods and circuit for implementing and arbitrary graph on a polymorphic mesh |
US5060136A (en) * | 1989-01-06 | 1991-10-22 | International Business Machines Corp. | Four-way associative cache with dlat and separately addressable arrays used for updating certain bits without reading them out first |
US5455775A (en) * | 1993-01-25 | 1995-10-03 | International Business Machines Corporation | Computer design system for mapping a logical hierarchy into a physical hierarchy |
US5586294A (en) * | 1993-03-26 | 1996-12-17 | Digital Equipment Corporation | Method for increased performance from a memory stream buffer by eliminating read-modify-write streams from history buffer |
US5388247A (en) * | 1993-05-14 | 1995-02-07 | Digital Equipment Corporation | History buffer control to reduce unnecessary allocations in a memory stream buffer |
US6026470A (en) * | 1997-04-14 | 2000-02-15 | International Business Machines Corporation | Software-managed programmable associativity caching mechanism monitoring cache misses to selectively implement multiple associativity levels |
US5983322A (en) * | 1997-04-14 | 1999-11-09 | International Business Machines Corporation | Hardware-managed programmable congruence class caching mechanism |
WO2001006371A1 (en) * | 1998-07-21 | 2001-01-25 | Seagate Technology Llc | Improved memory system apparatus and method |
US6205511B1 (en) * | 1998-09-18 | 2001-03-20 | National Semiconductor Corp. | SDRAM address translator |
US6728823B1 (en) * | 2000-02-18 | 2004-04-27 | Hewlett-Packard Development Company, L.P. | Cache connection with bypassing feature |
US7080207B2 (en) * | 2002-04-30 | 2006-07-18 | Lsi Logic Corporation | Data storage apparatus, system and method including a cache descriptor having a field defining data in a cache block |
US20090327597A1 (en) * | 2006-07-14 | 2009-12-31 | Nxp B.V. | Dual interface memory arrangement and method |
KR100764052B1 (ko) * | 2006-08-03 | 2007-10-08 | 삼성전자주식회사 | 유동적 어드레스 바운더리를 갖는 플래시 메모리 장치 및그것의 프로그램 방법 |
US20110321052A1 (en) * | 2010-06-23 | 2011-12-29 | International Business Machines Corporation | Mutli-priority command processing among microcontrollers |
US20140189244A1 (en) * | 2013-01-02 | 2014-07-03 | Brian C. Grayson | Suppression of redundant cache status updates |
US10235103B2 (en) * | 2014-04-24 | 2019-03-19 | Xitore, Inc. | Apparatus, system, and method of byte addressable and block addressable storage and retrival of data to and from non-volatile storage memory |
US20220404975A1 (en) * | 2014-04-24 | 2022-12-22 | Executive Advisory Firm Llc | Apparatus, system, and method of byte addressable and block addressable storage and retrieval of data to and from non-volatile storage memory |
US10592414B2 (en) * | 2017-07-14 | 2020-03-17 | International Business Machines Corporation | Filtering of redundantly scheduled write passes |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1956604A1 (de) * | 1968-11-14 | 1970-06-11 | Ibm | Datenverarbeitungsanlage mit einem Speichersystem |
DE2154106A1 (de) * | 1970-10-29 | 1972-05-04 | RCA Corp., New York, N.Y. (V.StA.) | Arbeitsspeicherwerk |
DE2230266A1 (de) * | 1971-06-29 | 1973-01-11 | Ibm | Datenverarbeitungsanlagen mit einer zentraleinheit unter verwendung virtueller adressierung |
-
1973
- 1973-10-23 US US00408958A patent/US3840863A/en not_active Expired - Lifetime
-
1974
- 1974-09-25 FR FR7433121A patent/FR2248577B1/fr not_active Expired
- 1974-09-25 DE DE2445617A patent/DE2445617C2/de not_active Expired
- 1974-09-27 JP JP11067174A patent/JPS5322409B2/ja not_active Expired
- 1974-09-30 IT IT27862/74A patent/IT1022435B/it active
- 1974-10-03 CA CA210,637A patent/CA1017872A/en not_active Expired
- 1974-10-18 GB GB45317/74A patent/GB1488043A/en not_active Expired
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1956604A1 (de) * | 1968-11-14 | 1970-06-11 | Ibm | Datenverarbeitungsanlage mit einem Speichersystem |
DE2154106A1 (de) * | 1970-10-29 | 1972-05-04 | RCA Corp., New York, N.Y. (V.StA.) | Arbeitsspeicherwerk |
DE2230266A1 (de) * | 1971-06-29 | 1973-01-11 | Ibm | Datenverarbeitungsanlagen mit einer zentraleinheit unter verwendung virtueller adressierung |
Non-Patent Citations (3)
Title |
---|
IBM Systems Journal, Bd. 5, Nr. 2, Seiten 78 bis 101 (1966) * |
IBM Systems Journal, Bd. 7, Nr. 1, Seite 2, (1968) * |
IBM Systems Journal, Bd. 9, Nr. 2, Seiten 78 bis 117 (1970) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2855856A1 (de) * | 1977-12-22 | 1980-01-10 | Honeywell Inf Systems | Datenverarbeitungssystem |
Also Published As
Publication number | Publication date |
---|---|
CA1017872A (en) | 1977-09-20 |
FR2248577B1 (de) | 1976-10-22 |
JPS5068748A (de) | 1975-06-09 |
JPS5322409B2 (de) | 1978-07-08 |
FR2248577A1 (de) | 1975-05-16 |
IT1022435B (it) | 1978-03-20 |
DE2445617C2 (de) | 1983-01-20 |
US3840863A (en) | 1974-10-08 |
GB1488043A (en) | 1977-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2445617A1 (de) | Hierarchische speicheranordnung | |
DE3011552C2 (de) | ||
EP1222739B1 (de) | Rekonfigurierbares gate-array | |
DE2154106A1 (de) | Arbeitsspeicherwerk | |
DE2260353C2 (de) | Schaltungsanordnung für die Adressenumsetzung in einer Datenverarbeitungsanlage | |
DE2240433A1 (de) | Hierarchische datenspeichereinrichtung | |
EP0908893B1 (de) | Speicherarchitektur mit Mehrebenenhierarchie | |
EP0013737A1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE2547488C2 (de) | Mikroprogrammierte Datenverarbeitungsanlage | |
DE3724317A1 (de) | Speicherzugriffssystem | |
DE3438869A1 (de) | Computersystem mit adressumwandlung | |
WO1996033499A1 (de) | Inhalts-adressierbarer speicher | |
DE2501853A1 (de) | Prozessor fuer ein datenverarbeitungssystem | |
DE2926322C2 (de) | Speicher-Subsystem | |
EP0134822B1 (de) | Digitalspeicher | |
EP0009625B1 (de) | Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher | |
DE2121490A1 (de) | Orthogonaler Datenspeicher | |
CH495584A (de) | Datenverarbeitungsanlage | |
DE102004006769B3 (de) | Auslesevorrichtung | |
DE10105627B4 (de) | Mehrfachanschlussspeichereinrichtung, Verfahren und System zum Betrieb einer Mehrfachanschlussspeichereinrichtung | |
DE602004005806T2 (de) | Serieller Speicher mit Mitteln zur Integration eines erweiterten Speicherfeldes | |
DE2750126A1 (de) | Datenverarbeitungssystem mit einem zwischenpufferspeicher | |
DE2233164B2 (de) | Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern | |
DE2721235A1 (de) | Elektronischer prozessrechner zur steuerung des fernsprechverkehrs | |
EP1559111A1 (de) | Verfahren zum betreiben einer speicheranordnung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |