-
Die
vorliegende Erfindung betrifft ein Cachespeichersystem.
-
In
einem Datenarithmetikprozessor, der darin ein Cachespeichersystem
wie z.B. einen Mikroprozessor umfasst, umfassen mögliche Architekturen des
Cachespeichersystems eine mengenassoziative (engl. set associative)
Struktur oder eine direkt abbildende (engl. direct map) Struktur.
Für eine
vorgegebene Speicherkapazität,
da das Cachespeichersystem der mengenassoziativen Struktur eine
höhere Trefferquote
oder -quotient (Trefferrate) besitzt als das eines Cachespeichers
der direkt abbildenden Struktur, wird erwartet, dass die Leistung
des Arithmetikprozessors verbessert wird. Die mengenassoziative
Struktur besitzt jedoch einen Nachteil hoher Leistungsaufnahme.
-
Die
Struktur eines herkömmlichen
Cachespeichersystems einer mengenassoziativen Struktur wird beschrieben
werden. Es sei angemerkt, dass ein Cachespeichersystem mit einer
4-Weg Struktur,
einer Cachespeicherkapazität
von 16 kByte, einer Cachespeicherzeilengröße von 64 Byte und der Anzahl von
Eingängen
jedes Wegs von 64 beschrieben werden wird.
-
1 ist
ein Blockdiagramm, das ein herkömmliches
Cachespeichersystem einer mengenassoziativen Struktur zeigt. Aufgrund
seiner 4-Weg Struktur besitzt dieses Cachespeichersystem vier Tag-Speicher
RAM Module 11a, 11b, 11c und 11d, die
parallel geschaltet sind, und vier Cachespeicher RAM Module 12a, 12b, 12c und 12d,
die parallel geschaltet sind. Außerdem besitzt das Cachespeichersystem
eine Tag-Bestimmungsschaltung 13 und einen Datenselektor 14.
Die Tag-Bestimmungsschaltung 13 besteht aus vier Komparatoren 15a, 15b, 15c und 15d und
vier AND Schaltungen 16a, 16b, 16c und 16d.
-
Die
Tag-Speicher RAM Module 11a, 11b, 11c und 11d speichern
Daten, welche die Adressen von Daten indizieren, die in den entsprechenden
Cachespeicher RAM Modulen 12a, 12b, 12c und 12d gespeichert
sind, und gültige
Eingabeflags (Eingabe gültig),
welche jeweils indizieren, ob die Adressdaten gültig sind oder nicht.
-
Die
Cachespeicher RAM Module 12a, 12b, 12c bzw. 12d speichern
Daten, die bei arithmetischer Verarbeitung oder Ähnlichem verwendet werden,
die durch einen Prozessorkern oder Ähnliches, nicht gezeigt, durchgeführt wird.
Jedes der Tag-Speicher RAM Module 11a, 11b, 11c und 11d und
der Cachespeicher RAM Module 12a, 12b, 12c und 12d besitzt eine
Funktion, alles oder einen Teil von sich selbst (das heißt, das
gesamte RAM Modul oder einen Teil einer Daten Eingabe-/Ausgabeschaltung
in dem RAM Modul) in einen Zustand niedriger Leistungsaufnahme umzuwandeln.
-
Die
Tag-Bestimmungsschaltung 13 vergleicht einen Adresswert,
der durch den Prozessorkern oder Ähnliches abgerufen wird (dieser
Adresswert wird nachfolgend als "Abrufadresse" bezeichnet), mit
Adressdaten, die von jedem der Tag-Speicher RAM Module 11a, 11b, 11c und 11d gelesen werden,
und bestimmt, ob sie übereinstimmen
oder nicht. Die entsprechenden Komparatoren 15a, 15b, 15c und 15d der
Tag-Bestimmungsschaltung 13 vergleichen
die Abrufadresse mit den Adressdaten und machen Bestimmungen.
-
Der
Datenselektor 14 wählt
nur gültige
Daten unter den Daten aus, die von jedem der Cachespeicher RAM Module 12a, 12b, 12c und 12d gelesen werden,
und gibt die ausgewählten
Daten an einen Datenbus aus. Die entsprechenden AND Schaltungen 16a, 16b, 16c und 16d in
der Tag-Bestimmungsschaltung 13 geben
Steuersignale aus, um dem Datenselektor 14 zu erlauben,
gültige
Daten basierend auf ihren gültigen
Eingangsflags auszuwählen.
Der Datenselektor 14 wählt
nämlich
basierend auf den Steuersignalen gültige Daten aus, die von den
AND Schaltungen 16a, 16b, 16c bzw. 16d ausgegeben werden.
-
Die
Funktion des in 1 gezeigten herkömmlichen
Cachespeichersystems wird beschrieben werden. Zuerst wird die Funktion
davon zum Zeitpunkt des Lesens von Daten beschrieben werden. Wenn
die Abrufadresse gelesener Daten von dem Prozessorkern oder Ähnlichem
eingegeben wird, werden Adressdaten entsprechend der Abrufadresse
und gültige
Eingabeflags entsprechend der Adressdaten von den Tag-Speicher RAM
Modulen 11a, 11b, 11c bzw. 11d gelesen.
Die entsprechenden Komparatoren 15a, 15b, 15c und 15d vergleichen
die so gelesenen Adressdaten mit der Abrufadresse und bestimmen,
ob die gelesenen Adressdaten jeweils mit der Abrufadresse übereinstimmen
oder nicht.
-
Die
Bestimmungsergebnisse jedes der Komparatoren 15a, 15b, 15c und 15d sowie
die gültigen Eingabeflags
der entsprechenden Wege werden in die entsprechenden AND Schaltungen 16a, 16b, 16c bzw. 16d eingegeben.
Die Ausgaben jeder der AND Schaltungen 16a, 16b, 16c und 16d werden
als Steuersignale für
den Datenselektor 14 an den Datenselektor 14 geliefert.
Basierend auf den Steuersignalen wird nur der Weg, welcher die Adressendaten
speichert, die bestimmt werden, um mit der Abrufadresse übereinzustimmen
und um durch die gültigen
Eingabeflags gültig
zu sein, unter den Adressdaten gültig, die
von jedem der Tag-Speicher RAM Module 11a, 11b, 11c und 11d gelesen
werden.
-
Andererseits
werden von jedem der Cachespeicher RAM Module 12a, 12b, 12c und 12d Daten entsprechend
der Abrufadresse gelesen, basierend auf der Eingabe der Abrufadresse.
Unter den gelesen Daten werden nur die Daten, welche von dem Cachespeicher
RAM Modul auf dem Weg gelesen werden, der durch den Datenselektor 14 als
gültig
bestimmt wird, an den Datenbus ausgegeben. Auch die Ausgaben jeder
der AND Schaltungen 16a, 16b, 16c und 16d werden
als Cache Treffer-/Fehlschlagsignale (engl. hit/miss signals) an
den Prozessorkern oder Ähnliches
geliefert.
-
Als
nächstes
wird die Funktion zum Zeitpunkt des Schreibens von Daten beschrieben
werden. Wenn Daten geschrieben werden, wird eine Abrufadresse in
das Tag-Speicher
RAM Modul für
eine Eingabe geschrieben, die basierend auf der Adresse eines Wegs
ausgewählt
wird, auf den die Daten geschrieben werden sollen, und die Daten
werden in das Cachespeicher RAM Modul geschrieben.
-
Jedoch
ist es in dem herkömmlichen
Cachespeichersystem, welches wie oben angegeben eine mengenassoziative
Struktur besitzt, notwendig, die Tag-Speicher RAM Module und die
Cachespeicher RAM Module auf all den Wegen zum Zeitpunkt des Lesens
von Daten von dem Cachespeicher zu steuern. Aufgrund dessen besitzt
das herkömmliche
Cachespeichersystem ein Problem, da mehr Leistung erforderlich ist
als die eines Cachespeichersystems mit einer 1-Weg Struktur, das
heißt,
ein direkt abbildender Speicher mit der gleichen Speicherkapazität.
-
Balasubramonian
R; et al: "Memory
Hierarchy Reconfiguration for Energy and performance in General – Purpose
Processor Architectures" Micro-33.
Proceedings of the 33rd Annual Acm/ieee
Symposium on Microarchitecture, Monterey, Ca, Dec. 2000, Proceedings
of the 33rd Annual Acm/ieee Symposium on
Microarchitecture, Los Alamitos, Ca: ieee Comp. Soc, Us (10-12-2000),
245–257
beschreibt herkömmliche
Mikroarchitekturen, welche einen einzigen Speicherhierarchiedesignpunkt
wählen,
der auf die Durchschnittsanwendung gerichtet ist. Das Dokument schlägt einen
Cache und TLB Layout und Design vor, das einen Repeatereinsatz wirksam
einsetzt, um eine dynamische, preiswerte Konfiguration bereitzustellen,
welche Größe und Geschwindigkeit auf
einer per Applikationsphasenbasis abwägt, während der Energieverbrauch
berücksichtigt
wird.
-
Die
vorliegende Erfindung ist in den beigefügten unabhängigen Ansprüchen definiert,
auf die sich nun bezogen wird. Ferner können bevorzugte Merkmale in
den Unteransprüchen
gefunden werden, die dazu beigefügt
sind.
-
Ein
Ausführungsbeispiel
dieser Erfindung soll ein Cachespeichersystem bereitstellen, das
einen Modus zwischen einem Modus mit hoher Trefferquote mit einer
mengenassoziativen Struktur (n-Weg mengenassoziative Architektur)
und einem Modus mit niedriger Leistungsaufnahme mit einer direkt
abbildenden Struktur (direkt abbildende Architektur) dynamisch umschalten
kann.
-
In
dem Cachespeichersystem eines Aspekts der Erfindung werden n Tag-Speicher
RAM Abschnitte, von denen jeder einen Zustand zwischen einem normalen
Zustand und einem Zustand mit niedriger Leistungsaufnahme umschalten
kann, beispielsweise parallel geschaltet, n Cachespeicher RAM Abschnitte,
von denen jeder einen Zustand zwischen dem normalen Zustand und
dem Zustand mit niedriger Leistungsaufnahme umschalten kann, beispielsweise
parallel geschaltet, und eine RAM Abschnitt Verbindungsstruktur
wird durch eine RAM Leistungssteuereinheit gemäß einem Leistungsmodus dynamisch
zwischen einer n-Weg Struktur und einer 1-Weg Struktur umgeschaltet.
-
Das
heißt,
falls eine Leistungsmodussignaleingabe von außerhalb in einem Modus mit
hoher Trefferquote ist, wird das Cachespeichersystem durch die RAM
Leistungssteuereinheit gesteuert, um eine mengenassoziative Struktur
zu besitzen, in der all die Tag-Speicher RAM Abschnitte und all
die Cachespeicher RAM Abschnitte im normalen Zustand aktiviert sind.
Mit dieser Struktur wählt
der Datenselektor nur Daten aus, die von dem Cachespeicher RAM Abschnitt
entsprechend einem Weg gelesen werden, auf welchem die Adressdaten,
die von jedem der Tag-Speicher RAM Abschnitt gelesen werden, mit
dem Wert der Abrufadresse übereinstimmen,
die von einem Prozessorkern oder Ähnlichem geliefert wird.
-
Andererseits,
falls die Leistungsmodussignaleingabe von außerhalb in einem Modus mit
niedriger Leistungsaufnah me ist, wird das Cachespeichersystem durch
die RAM Leistungssteuereinheit gesteuert, um eine 1-weg direkt abbildende
Struktur zu besitzen, in der nur einer der Tag-Speicher RAM Abschnitte und nur einer
der Cachespeicher RAM Abschnitte, der dem Tag-Speicher RAM Abschnitt entspricht,
im normalen Zustand aktiviert sind, und die restlichen Tag-Speicher RAM Abschnitte
und Cachespeicher RAM Abschnitt in den Zustand mit niedriger Leistungsaufnahme
umgewandelt sind, basierend auf dem Wert der Abrufadresse, die von
dem Prozessor oder Ähnlichem
geliefert wird. Mit dieser Struktur wählt der Datenselektor nur Daten
aus, die vom dem Cachespeicher RAM Abschnitt im normalen Zustand
gelesen werden.
-
Gemäß dieser
Erfindung, falls das Leistungsmodussignal in einem Modus mit hoher
Trefferquote ist, wird das Cachespeichersystem als ein System mit
einer n-Weg mengenassoziativen Struktur aktiviert. Andererseits,
falls das Leistungsmodussignal in einem Modus mit niedriger Leistungsaufnahme ist,
wird das Cachespeichersystem als ein System mit einer 1-Weg direkt
abbildenden Struktur aktiviert. Es ist daher möglich einen Fall auszuwählen, wo
die Performance des Arithmetikprozessors priorisiert wird, selbst
wenn die Leistungsaufnahme hoch ist, und einen Fall, wo niedrige
Leistungsaufnahme priorisiert wird, gemäß einem Benutzer oder einer äußeren Umgebung,
wie z.B. einer eingesetzten Anwendung.
-
Es
wird nur beispielhaft auf die beigefügten Zeichnungen Bezug genommen,
in denen:
-
1 ein
Blockdiagramm ist, welches ein herkömmliches Cachespeichersystem
mit einer mengenassoziativen Struktur zeigt;
-
2 ein
Blockdiagramm ist, das typischerweise die wichtigen Teile eines
Beispiels eines Gesamtsystems zeigt, einschließlich eines Cachespeichersystems
gemäß der ersten Ausführungsbeispiel, das
die vorliegende Erfindung realisiert;
-
3 ein
Blockdiagramm ist, das typischerweise die wichtigen Teile eines
anderen Beispiels eines Gesamtsystems zeigt, einschließlich eines
Cachespeichersystems gemäß dem ersten
Ausführungsbeispiel;
-
4 ein
Blockdiagramm ist, das eine Beispiel des Cachespeichersystems gemäß dem ersten Ausführungsbeispiel
zeigt;
-
5 ein
Logikschaltungsdiagramm ist, das ein Beispiel des RAM Leistungssteuerungsgeräts des Cachespeichersystems
gemäß dem ersten
Ausführungsbeispiel
zeigt;
-
6 ein
Logikschaltungsdiagramm ist, das ein Beispiel der Datenselektorsteuerschaltung
des Cachespeichersystems gemäß dem ersten
Ausführungsbeispiel
zeigt;
-
7 ein
Logikschaltungsdiagramm ist, das ein Beispiel der Cache Treffer/Fehlschlag
Steuerschaltung des Cachespeichersystems gemäß dem ersten Ausführungsbeispiel
zeigt;
-
8 eine
typische Ansicht zum Beschreiben des Konzepts der Speicherbereiche
des Cachespeichersystems gemäß dem ersten
Ausführungsbeispiel
ist;
-
9 ein
Blockdiagramm ist, das ein Beispiel eines Cachespeichersystems gemäß dem zweiten
Ausführungsbeispiel
zeigt, das die vorliegende Erfindung realisiert;
-
10 ein
Blockdiagramm ist, das ein Beispiel eines Cachespeichersystems gemäß dem dritten
Ausführungsbeispiel
zeigt, das die vorliegende Erfindung realisiert;
-
11 ein
Blockdiagramm ist, das ein weiteres Beispiel eines Cachespeichersystems
gemäß dem dritten
Ausführungsbeispiel
zeigt;
-
12 ein
Blockdiagramm ist, das ein weiteres Beispiel eines Cachespeichersystems
gemäß dem dritten
Ausführungsbeispiel
zeigt; und
-
13 ein
Blockdiagramm ist, das ein weiteres Beispiel eines Cachespeichersystems
gemäß dem dritten
Ausführungsbeispiel
zeigt.
-
Ausführungsbeispiele
zum Realisieren der vorliegenden Erfindung werden nachstehend detailliert
mit Bezug auf die Zeichnungen beschrieben werden. Es sei angemerkt,
dass die Ausführungsbeispiele
beschrieben werden während
davon ausgegangen wird, dass, obwohl nicht speziell darauf beschränkt, ein
Cachespeichersystem eine 4-Weg Struktur, eine Cachespeicherkapazität von 16
kByte, eine Cachespeicherzeilengröße von 64 Byte und die Anzahl
der Eingänge
jedes Wegs von 64 besitzt.
-
2 und 3 sind
Blockdiagramme, welche typischerweise die wichtigen Teile eines
Beispiels eines Gesamtsystems zeigen, einschließlich eines Cachespeichersystems
gemäß dem ersten Ausführungsbeispiel
zum Durchführen
der Erfindung. Ein Arithmetikprozessor (CPU) 2 umfasst
darin einen Prozessorkern 21 und ein Cachespeichersystem 3 und
die Einheit 2 ist mit einem externen Speichersystem 4 verbunden.
-
In
dem in 2 gezeigten Beispiel wird das Cachespeichersystem 3 mit
einem Leistungsmodussignal 22 von dem Prozessorkern 21 versorgt.
Im Falle der 3 wird dagegen ein Cachespeichersystem 3 mit
einem Leistungsmodussignal 23 von außerhalb durch eine Einstellung
eines anderen Systems durch einen Benutzer versorgt, wie z.B. eines
Energieversorgungsverwaltungssystems, wobei ein Arithmetikprozessor 2,
ein DIP-Schalter oder Ähnliches
verwendet wird. Hier sind die Leistungsmodussignale 22 und 23 Signale,
die indizieren, dass das Cachespeichersystem 3 eingestellt
ist, eine mengenassoziative Struktur oder eine direkt abbildende
Struktur zu besitzen. In 2 und 3 kennzeichnen
die Bezugsziffern 24 und 25 Adresssignale und
die Bezugsziffern 26 und 27 kennzeichnen Daten.
-
4 ist
ein Blockdiagramm, das ein Beispiel eines Cachespeichersystems gemäß dem ersten
Ausführungsbeispiel
zum Durchführen
der vorliegenden Erfindung zeigt. Aufgrund einer 4-Weg Struktur
besitzt dieses Cachespeichersystem vier Tag-Speicher RAM Module 31a, 31b, 31c und 31d, die
parallel geschaltet sind, und vier Cachespeicher RAM Module 32a, 32b, 32c und 32d,
die parallel geschaltet sind.
-
Jedes
der Tag-Speicher RAM Module 31a, 31b, 31c und 31d und
der Cachespeicher RAM Module 32a, 32b, 32c und 32d besitzt
eine Funktion, um durch ein RAM Leistungssteuerungsgerät 37,
das später
beschrieben wird, in einen Zustand mit niedrigerer Leistungsaufnahme
umgewandelt zu werden. Diese Funktion wird durch Leistungsmodusverbrauchssteuergeräte 40a, 40b, 40c, 40d, 41a, 41b, 41c und 41d realisiert,
die für
die RAM Module 31a, 31b, 31c, 31d, 32a, 32b, 32c bzw. 32d bereitgestellt werden.
Dies ist die gleiche Funktion wie die, welche an jedem der Tag-Speicher
RAM Module und Cachespeicher RAM Module des herkömmlichen Cachespeichersystems
bereitgestellt wird, das eine mengenassoziative Struktur besitzt.
-
Ferner
besitzt das Cachespeichersystem eine Tag-Bestimmungsschaltung 33, die
bestimmt, ob ein Abrufadressenwert, der durch den Prozessorkern
oder Ähnliches
abgerufen wird, mit Adressendaten übereinstimmt, die von jedem
der RAM Module 31a, 31b, 31c und 31d gelesen
werden, oder nicht. Diese Tag-Bestimmungsschaltung 33 besteht
aus vier Komparatoren 35a, 35b, 35c und 35d und
vier AND Schaltungen 36a, 36b, 36c und 36d,
wie in dem Fall der herkömmlichen
Tag-Bestimmungsschaltung.
-
Außerdem besitzt
das Cachespeichersystem einen Datenselektor 34, der nur
gültige
Daten unter den Daten auswählt,
die von jedem der Cachespeicher RAM Module 32a, 32b, 32c und 32d gelesen werden,
und der die ausgewählten
gültigen
Daten an einen Datenbus ausgibt. Dieser Datenselektor 34 wird
durch eine Datenselektorsteuerschaltung 38 gesteuert, die
später
beschrieben wird. Die Tag-Bestimmungsschaltung 33 und
die Datenselektorsteuerschaltung 38 bilden eine Datenselektorsteuereinheit. Außerdem besitzt
das Cachespeichersystem eine Cache Treffer/Fehlschlag Steuerschaltung 39,
die später
beschrieben wird, zum Rückmelden
eines Cachetreffers oder -fehlschlags an den Prozessorkern oder Ähnliches,
der nicht gezeigt ist.
-
In
dem ersten Ausführungsbeispiel
zum Durchführen
der Erfindung sind die Strukturen und Funktionen der Tag-Speicher RAM Module 31a, 31b, 31c und 31d,
der Cachespeicher RAM Module 32a, 32b, 32c und 32d,
der Tag-Bestimmungsschaltung 33 und
des Datenselektors 34 die gleichen wie die der herkömmlichen
Tag-Speicher RAM Module 11a, 11b, 11c und 11d,
der herkömmlichen
Cachespeicher RAM Module 12a, 12b, 12c und 12d,
der herkömmlichen
Tag-Bestimmungsschaltung 13 und
des herkömmlichen
Datenselektors 14. Daher wird hierin keine Beschreibung
vorgenommen werden. Da auch die Leistungsmodusverbrauchssteuergeräte 40a, 40b, 40c, 40d, 41a, 41b, 41c und 41d die
gleichen sind wie die der herkömmlichen
Leistungsmodusverbrauchssteuergeräte, wird von diesen auch keine
Beschreibung vorgenommen werden.
-
5 ist
ein Logikschaltungsdiagramm, das ein Beispiel des RAM Leistungsteuergeräts 37 zeigt. Das
RAM Leistungssteuerungsgerät 37 besitzt
zwölf AND
Schaltungen 51 bis 62 und vier OR Schaltungen 63 bis 66.
-
Die
AND Schaltung 51, die AND Schaltung 52, die AND
Schaltung 53 und die AND Schaltung 54 werden beispielsweise
mit dem dreizehnten Bitsignal und zwölften Bitsignal unter Abrufadressensignalen, die
von dem Prozessorkern geliefert werden, als Eingangssignal versorgt.
Wenn sowohl das dreizehnte Bitsignal als auch das zwölfte Bitsignal "1" sind, gibt nur die AND Schaltung 51 "1" aus. Der Anschluss der AND Schaltung 52,
in den das dreizehnte Bitsignal eingegeben wird, ist gering aktiv.
Aufgrund dessen, falls das dreizehnte Bitsignal "0" ist
und das zwölfte Bitsignal "1" ist, gibt nur die AND Schaltung 52 "1" aus.
-
Ferner
ist der Anschluss der AND Schaltung 53, in welchen das
zwölfte
Bitsignal eingegeben wird, gering aktiv. Aufgrund dessen, falls
das dreizehnte Bitsignal "1" ist und das zwölfte Bitsignal "0" ist, gibt nur die AND Schaltung 53 "1" aus. Beide Eingangsanschlüsse der
AND Schaltung 54 sind gering aktiv. Aufgrund dessen, falls
sowohl das dreizehnte Bitsignal als auch das zwölfte Bitsignal "0" sind, gibt nur die AND Schaltung 54 "1" aus. Es sei angemerkt, dass in der
Beschreibung der Logikschaltung der Wert eines Signals, welches
einen relativ hohen Potentiallevel besitzt, "1" ist
und der Wert eines Signals, welches einen relativ niedrigen Potentiallevel
besitzt, "0" ist.
-
Die
AND Schaltung 55, AND Schaltung 57, AND Schaltung 59 und
AND Schaltung 61 werden mit Eingangssignalen, Leistungsmodussignalen
und den Ausgabesignalen der AND Schaltung 51, der AND Schaltung 52,
der AND Schaltung 53 bzw. der AND Schaltung 54 versorgt.
Falls das Leistungsmodussignal "1" ist und der Ausgabewert
der AND Schaltung 51 "1" ist, dann wird der
Ausgabewert der AND Schaltung 55 "1".
Falls das Leistungsmodussignal "1" ist und der Ausgabewert
der AND Schaltung 52 "1" ist, dann wird der
Ausgabewert der AND Schaltung 57 "1".
Falls das Leistungsmodussignal "1" ist und der Ausgabewert
der AND Schaltung 53 "1" ist, dann wird der
Ausgabewert der AND Schaltung 59 "1".
Falls das Leistungsmodussignal "1" ist und der Ausgabewert
der AND Schaltung 54 "1" ist, dann wird der
Ausgabewert der AND Schaltung 61 "1".
Andererseits, falls das Leistungsmodussignal "0" ist, werden
all die Ausgänge
der AND Schaltungen 55, 57, 59 und 61 "0".
-
Die
AND Schaltung 56, AND Schaltung 58, AND Schaltung 60 und
die AND Schaltung 62 werden mit dem Leistungsmodussignal
und einem Signal hohen Levels (das heißt "1")
als Eingangssignale versorgt. Die Anschlüsse, an die das Leistungsmodussignal
geliefert wird, sind in diesen AND Schaltungen 56, 58, 60 und 62 gering
aktiv. Aufgrund dessen, falls das Leistungsmodussignal "1" ist, die Ausgabewerte dieser AND Schaltungen "0" sind und falls das Leistungsmodussignal "0" ist, sind die Ausgabewerte davon "1".
-
Die
OR Schaltung 63 gibt eine OR Logik aus zwischen dem Ausgabewert
der AND Schaltung 55 und dem Ausgabewert der AND Schaltung 56.
Die OR Schaltung 64 gibt eine OR Logik aus zwischen dem
Ausgabewert der AND Schaltung 57 und dem Ausgabewert der
AND Schaltung 58. Die OR Schaltung 65 gibt eine
OR Logik zwischen dem Ausgabewert der AND Schaltung 59 und
dem Ausgabewert der AND Schaltung 60 aus. Die OR Schaltung 66 gibt eine
OR Logik aus zwischen dem Ausgabewert der AND Schaltung 61 und
dem Ausgabewert der AND Schaltung 62.
-
Das
Ausgabesignal der OR Schaltung 63 wird beispielsweise als
ein RAM Leistungssteuerungssignal für einen Weg 0 an die Leistungsmodusverbrauchssteuergeräte 40a und 41a zum
Steuern der Leistungsaufnahme des Tag-Speicher RAM Moduls 31a bzw.
des Cachespeicher RAM Moduls 32a geliefert. Gleichermaßen wird
das Ausgabesignal der OR Schaltung 64 als ein RAM Leistungssteuerungssignal
für einen
Weg 1 an das Leistungsmodusverbrauchssteuergerät 40b für das Tag-Speicher RAM Modul 31b und
an das Leistungsmodusverbrauchssteuergerät 41b für das Cachespeicher
RAM Modul 32b geliefert.
-
Das
Ausgabesignal der OR Schaltung 65 wird als ein RAM Leistungssteuerungssignal
für einen
Weg 2 an das Leistungsmodusverbrauchssteuergerät 40c für das Tag-Speicher
RAM Modul 31c und an das Leistungsmodusverbrauchssteuergerät 41c für das Cachespeicher
RAM Modul 32c geliefert. Das Ausgabesignal der OR Schaltung 66 wird
als ein RAM Leistungssteuerungssignal für einen Weg 3 an das Leistungsmodusverbrauchssteuergerät 40d für das Tag-Speicher
RAM Modul 31d und an das Leistungsmodusverbrauchssteuergerät 41d für das Cachespeicher
RAM Modul 32d geliefert.
-
Falls
das eingegebene RAM Leistungssteuerungssignal "1" ist,
aktiviert hier jedes der Leistungsmodusverbrauchssteuergeräte 40a, 40b, 40c, 40d, 41a, 41b, 41c und 41d sein
entsprechendes RAM Modul in einem normalen Zustand. Andererseits,
falls das RAM Leistungssteuerungssignal "0" ist,
stellt jedes der Leistungsmodusverbrauchssteuergeräte 40a, 40b, 40c, 40d, 41a, 41b, 41c und 41d seine
entsprechenden RAM Module in einen Zustand mit niedriger Leistungsaufnahme
ein. Dementsprechend sind, falls das Leistungsmodussignal "0" ist, die Ausgabewerte der AND Schaltungen 56, 58, 60 und 62 ungeachtet
des 2-bit Werts einer Eingabeadresse "1".
Aufgrund dessen werden die Ausgabewerte der OR Schaltungen 63 bis 66,
das heißt
die Werte der RAM Leistungssteuerungssignale, welche in die Leistungsmodusverbrauchssteuergeräte 40a, 40b, 40c, 40d, 41a, 41b, 41c und 41d eingegeben
werden, "1".
-
Das
heißt,
alle der Tag-Speicher RAM Module 31a, 31b, 31c und 31d und
der Cachespeicher RAM Module 32a, 32b, 32c und 32d sind
zusammengesetzt, um in einem normalen Zustand aktiviert zu werden,
und das Cachespeichersystem besitzt zu diesem Zeitpunkt eine mengenassoziative
Struktur.
-
Andererseits,
falls das Leistungsmodussignal "1" ist, wird der Ausgabewert
von irgendeiner der AND Schaltungen 51 bis 54 "1", basierend auf dem 2-bit Wert der Eingabeadresse,
und der Ausgabewert von irgendeiner der AND Schaltungen 55, 57, 59 und 61 wird
dementsprechend "1". Daher wird der
Ausgabewert irgendeiner der OR Schaltungen 63 bis 66 "1", so dass nur der Wert des RAM Leistungssteuerungssignals, das
an ein Paar von Leistungsmodusverbrauchssteuergeräten unter
den Leistungsmodusverbrauchssteuergeräten 40a, 40b, 40c und 40d und den
entsprechenden Leistungsmodusverbrauchssteuergeräten 41a, 41b, 41c und 41d geliefert
wird, "0" wird.
-
Mit
anderen Worten werden unter den Tag-Speicher RAM Modulen 31a, 31b, 31c und 31d und
den Cachespeicher RAM Modulen 32a, 32b, 32c und 32d nur
das Tag-Speicher RAM Modul und das Cachespeicher RAM Modul, die
dem 2-Bit Wert der Eingabeadresse entsprechen, in einem normalen
Zustand aktiviert, während
die restlichen RAM Module in einem Zustand mit niedriger Leistungsaufnahme beibehalten
werden. Das Cachespeichersystem besitzt zu dieser Zeit eine direkt
abbildende Struktur. Es sei angemerkt, dass die Struktur des RAM
Leistungssteuerungsgeräts 37 nicht
auf die Struktur der oben angegebenen Logikschaltung beschränkt ist.
-
6 ist
ein Logikschaltungsdiagramm, das ein Beispiel der Datenselektorsteuerschaltung 38 zeigt.
Die Datenselektorsteuerschaltung 38 besitzt acht AND Schaltungen 67 bis 74 und
vier OR Schaltungen 75 bis 78.
-
Die
AND Schaltung 67, AND Schaltung 69, AND Schaltung 71 und
AND Schaltung 73 werden mit Leistungsmodussignalen und
den Ausgangssignalen der AND Schaltungen 36a, 36b, 36c bzw. 36d in
der Tag-Bestimmungsschaltung 33 als Eingangssignale versorgt.
Die Anschlüsse
der AND Schaltungen 67, 69, 71 und 73,
in welche die Leistungsmodussignale eingegeben werden, sind gering
aktiv. Aufgrund dessen, falls das Leistungsmodussignal "1" ist, werden die Ausgänge von
all den Schaltungen "0". Andererseits, falls
das Leistungsmodussignal "0" ist, wird nur der
Ausgabewert der AND Schaltung auf dem weg, auf dem die Ausgangssignale
jeder der AND Schaltungen 36a, 36b, 36c und 36d in
der Tag-Bestimmungsschaltung 33, "1".
-
Die
AND Schaltung 68, AND Schaltung 70, AND Schaltung 72 und
AND Schaltung 74 werden mit Leistungsmodussignalen und
RAM Leistungssteuerungssignalen, welche von den OR Schaltungen 63, 64, 65 bzw. 66 in
dem RAM Leistungssteuerungsgerät 37 ausgegeben
werden, als Eingangssignale versorgt. Falls das Leistungsmodussignal "1" ist, wird nur der Ausgabewert der AND
Schaltung auf dem Weg, auf dem das RAM Leistungssteuerungssignal "1" ist, "1".
Andererseits, falls das Leistungsmodussignal "0" ist,
werden die Ausgänge
von all den AND Schaltungen "0".
-
Die
OR Schaltung 75 gibt eine OR Logik aus zwischen dem Ausgabewert
der AND Schaltung 67 und dem Ausgabewert der AND Schaltung 68.
Die OR Schaltung 76 gibt eine OR Logik aus zwischen dem
Ausgabewert der AND Schaltung 69 und dem Ausgabewert der
AND Schaltung 70. Die OR Schaltung 77 gibt eine
OR Logik aus zwischen dem Ausgabewert der AND Schaltung 71 und
dem Ausgabewert der AND Schaltung 72. Die OR Schaltung 78 gibt eine
OR Logik aus zwischen dem Ausgabewert der AND Schaltung 73 und
dem Ausgabewert der AND Schaltung 74.
-
Die
Ausgabesignale beispielsweise der OR Schaltung 75, der
OR Schaltung 76, der OR Schaltung 77 und der OR
Schaltung 78 werden als Datenauswahlsignale zum Auswählen eines
der Daten, die von jedem der Cachespeicher RAM Module 32a, 32b, 32c und 32d auf
den Wegen 0, 1, 2 und 3 gelesen werden, an den Datenselektor 34 geliefert.
-
Daher,
falls das Leistungsmodussignal "0" ist (mengenassoziative
Architektur), werden nur die Wegdaten unter den Daten, welche von
jedem der Cachespeicher RAM Module 32a, 32b, 32c und 32d gelesen
werden, auf dem Weg, für
den die Abrufadresse durch die Tag-Bestimmungsschaltung 33 bestimmt
ist, mit gültigen
Adressdaten übereinzustimmen,
die von jedem der Tag-Speicher RAM Module 31a, 31b, 31c und 31d gelesen
werden, und die Daten an den Datenbus ausgegeben.
-
Falls
das Leistungsmodussignal "1" ist (direkt abbildende
Struktur), werden nur die Daten unter den Daten, welche von dem
einen der Cachespeicher RAM Module 32a, 32b, 32c und 32d gelesen werden,
die durch das RAM Leistungssteuerungssignal in einem normalen Zustand
aktiviert sind, an den Datenbus ausgegeben. Es sei angemerkt, dass
die Struktur der Datenselektorsteuerschaltung 38 nicht auf
die Struktur der oben angegebenen Logikschaltung beschränkt ist.
-
7 ist
ein Logikschaltungsdiagramm, das ein Beispiel der Cache Treffer/Fehlschlag
Steuerschaltung 39 zeigt. Die Cache Treffer/Fehlschlag Steuerschaltung 39 besitzt
vier AND Schaltungen 79 bis 82 und eine OR Schaltung 83.
Die AND Schaltung 81 wird mit einem Leistungsmodussignal
und dem Ausgangssignal der AND Schaltung 79, welche RAM Leistungssteuerungssignale
für jeden
der Wege eingibt, als Eingangssignale versorgt. Die AND Schaltung 82 wird
mit einem Leistungsmodussignal und dem Ausgangssignal der AND Schaltung 80,
welche die Ausgangssignale von jeder der AND Schaltung 36a, 36b, 36c und 36d in
der Tag-Bestimmungsschaltung 33 eingibt,
als Eingangssignale versorgt. Die OR Schaltung 83 gibt
eine OR Logik aus zwischen dem Ausgabewert der AND Schaltung 81 und dem
Ausgabewert der AND Schaltung 82.
-
Falls
das Leistungsmodussignal "0" ist (das heißt, das
Cachespeichersystem besitzt eine mengenassoziative Struktur), wird
der Ausgabewert der AND Schaltung 81 "0".
In diesem Modus ist der Anschluss der AND Schaltung 82,
in welche das Leistungsmodussignal eingegeben wird, gering aktiv. Aufgrund
dessen wird der Ausgabewert der AND Schaltung 82 durch
den Ausgabewert der AND Schaltung 80 bestimmt. Dementsprechend
wird der Ausgabewert der OR Schaltung 83, welcher der Ausgabewert
der Cache Treffer/Fehlschlag Steuerschaltung 39 ist, durch
den Ausgabewert der Tag- Bestimmungsschaltung 33 bestimmt.
Andererseits, falls das Leistungsmodussignal "1" ist
(das heißt,
das Cachespeichersystem besitzt eine direkt abbildende Struktur),
wird der Ausgabewert der AND Schaltung 82 "0", jedoch wird der Ausgabewert der AND
Schaltung 81 durch den Ausgabewert der AND Schaltung 79 bestimmt.
Dementsprechend wird der Ausgabewert der Cache Treffer/Fehlschlag
Steuerschaltung 39 durch den Wert des RAM Leistungssteuerungssignals
bestimmt. Es sei angemerkt, dass die Struktur der Cache Treffer/Fehlschlag
Steuerschaltung 39 nicht auf die Struktur der oben angegebenen
Logikschaltung beschränkt
ist.
-
8 ist
eine typische Ansicht zum Beschreiben des Konzepts der Speicherbereiche
des Cachespeichersystems ge- mäß dem ersten
Ausführungsbeispiel
zum Durchführen
der Erfindung. Wenn angenommen wird, dass der Hauptspeicher 84 eines SDRAM
oder Ähnlichem
in eine Vielzahl von Bereichen geteilt wird und dass das Cachespeichersystem mit
einer mengenassoziativen Struktur aktiviert ist, dann sind die Bereiche
des Hauptspeichers 84, welche in jedem der Cachespeicher
RAM Module 32a, 32b, 32c und 32d gespeichert
sind, die ersten, zweiten, dritten Bereiche etc., das heißt, all
die Bereiche des Hauptspeichers 84 werden gespeichert (in
den Cachespeicher aufgenommen).
-
Andererseits,
falls das Cachespeichersystem mit einer direkt abbildenden Struktur
aktiviert ist, speichert das Cachespeicher RAM Modul 32a beispielsweise
den ersten, fünften,
neuten, dreizehnten Bereich etc. des Hauptspeichers 84 (stellt
einen Cache dafür
bereit). Gleichermaßen
sind die Bereiche des Hauptspeichers 84, welche in dem
Cachespeicher RAM Modul 32b gespeichert sind, die zweiten, sechsten,
zehnten, vierzehnten Bereiche etc. Die in dem Cachespeicher RAM
Modul 32c gespeicherten sind die dritten, siebten, elften,
fünfzehnten
Bereiche etc. Die in dem Cachespeicher RAM Modul 32d gespeicherten
sind die vierten, achten zwölften,
sechzehnten Bereiche etc.
-
Als
nächstes
wird die Funktion des Cachespeichersystems gemäß dem ersten Ausführungsbeispiel
zum Durchführen
der Erfindung beschrieben werden. Falls das Leistungsmodussignal "0" ist, das heißt, das Cachespeichersystem
mit einer mengenassoziativen Struktur aktiviert ist, dann sind der
Datenlesebetrieb und Datenschreibbetrieb des Cachespeichersystems
die gleichen wie die des herkömmlichen
Cachespeichersystems einer mengenassoziativen Struktur.
-
Falls
das Leistungsmodussignal "1" ist, das heißt, das
Cachespeichersystem mit einer direkt abbildenden Struktur aktiviert
ist, dann werden nur ein Tag-Speicher RAM Modul und nur ein Cachespeicher RAM
Modul an irgendeinem der Wege in einem normalen Zustand aktiviert,
beispielsweise basierend auf den dreizehnten und zwölften Bitwerten
einer Eingabeadresse in sowohl dem Datenlesebetrieb als auch dem
Datenschreibbetrieb des Cachespeichersystems. Was die restlichen
drei Wege betrifft, werden sowohl die Tag-Speicher RAM Module als
auch die Cachespeicher RAM Module in einen Zustand mit niedriger
Leistungsaufnahme umgewandelt. wenn Daten gelesen werden, werden
Daten, die von dem Cachespeicher RAM Modul in einem Zustand mit niedriger
Leistungsaufnahme gelesen werden, durch den Datenselektor 34 basierend
auf dem RAM Leistungssteuerungssignal als ungültig bestimmt.
-
Gemäß dem oben
angegebenen ersten Ausführungsbeispiel
zum Durchführen
der Erfindung, falls das Leistungsmodussignal in einem Modus mit hoher
Trefferquote ist, ist das Cachespeichersystem als ein n-Weg mengenassoziativer
Cache konfiguriert. Andererseits, falls das Leistungsmodussignal
in einem Modus mit niedriger Leistungsaufnahme ist, ist das Cachespeichersystem
als ein 1-weg direkt abbildender Cache konfiguriert. Daher ist es
möglich,
einen Fall auszuwählen,
wo die Performance des Arithmetikprozes sors priorisiert wird, selbst
wenn eine Leistungsaufnahme hoch ist, und einen Fall, wo niedrige
Leistungsaufnahme priorisiert wird, gemäß einem Benutzer oder einer äußeren Umgeben,
wie z.B. einer verwendeten Anwendung.
-
9 ist
ein Blockdiagramm, das ein Beispiel eines Cachespeichersystems gemäß dem zweiten
Ausführungsbeispiel
zum Durchführen
der vorliegenden Erfindung zeigt. Das Cachespeichersystem in dem
zweiten Ausführungsbeispiel
unterscheidet sich von dem Cachespeichersystem in dem ersten Ausführungsbeispiele
(siehe 4) wie folgt. Zuerst ersetzt eine Tag-Bestimmungsergebnisentwertungsschaltung 42 die
Datenselektorsteuerschaltung 38, und eine Tag-Datenselektorsteuereinheit
ist aus einer Tag-Bestimmungsschaltung 33 und
der Tag-Bestimmungsergebnisentwertungsschaltung 42 gebildet.
-
Zweitens
wird, für
den Zweck des Rückmeldens
eines Cachetreffers oder -fehlschlages an einen Prozessorkern oder Ähnliches,
nicht gezeigt, die Ausgabe der Tag-Bestimmungsergebnisentwertungsschaltung 42 anstelle
der der Cache Treffer/Fehlschlag Steuerschaltung 39 zurückgemeldet. Da
die anderen Elemente die gleichen sind wie die des ersten Ausführungsbeispiels
zum Durchführen der
Erfindung, werden die gleichen Bestandteile wie die in dem ersten
Ausführungsbeispiel
durch die gleichen Bezugsziffern gekennzeichnet und werden hierin
nicht beschrieben werden.
-
Falls
das Cachespeichersystem mit einer direkt abbildenden Struktur aktiviert
ist, macht die Tag-Bestimmungsergebnisentwertungsschaltung 42 Adressdaten
und ein gültiges
Eingabeflag ungültig, das
von einem Tag-Speicher
RAM Modul in einem Zustand mit niedriger Leistungsaufnahme gelesen wird.
Die Tag-Bestimmungsergebnisentwertungsschaltung 42 besitzt
vier AND Schaltungen 43a, 43b, 43c und 43d.
Die AND Schaltung 43a an einem weg 0 wird mit einem RAM
Leistungssteuerungssignal für den
weg 0 und dem Ausgangssignal einer AND Schaltung 36a in
der Tag-Bestimmungsschaltung 33 versorgt.
-
Gleichermaßen werden
die AND Schaltung 43b an einem Weg 1, die AND Schaltung 43c an
einem Weg 2 und die AND Schaltung 43a an einem Weg 3 mit
einem RAM Leistungssteuerungssignal für den Weg 1 und dem Ausgangssignal
der AND Schaltung 36b in der Tag-Bestimmungsschaltung 33,
einem RAM Leistungssteuerungssignal für den Weg 2 und dem Ausgangssignal
der AND Schaltung 36c in der Tag-Bestimmungsschaltung 33, bezw.
einem RAM Leistungssteuerungssignal für den Weg 3 und dem Ausgangssignal
der AND Schaltung 36a in der Tag-Bestimmungsschaltung 33 versorgt.
-
Als
nächstes
wird die Funktion des Cachespeichersystems gemäß dem zweiten Ausführungsbeispiel
zum Durchführen
der Erfindung beschrieben werden. Die Funktion ist die gleiche wie
die des Cachespeichersystems gemäß dem ersten
Ausführungsbeispiel
zum Durchführen
der Erfindung, mit der Ausnahme, dass, falls das Leistungsmodussignal "1" ist (direkt abbildender Modus), Daten,
die von dem Cachespeicher RAM Modul in einem Zustand mit niedriger
Leistungsaufnahme gelesen werden, durch den Datenselektor 34 basierend
auf dem Ausgangssignal der Tag-Bestimmungsergebnisentwertungsschaltung 42 ungültig gemacht
werden, wenn die Daten gelesen werden.
-
Wie
zuvor, falls das Leistungsmodussignal in einem Modus mit einer hohen
Trefferquote ist, ist das Cachespeichersystem als ein System aktiviert,
das eine n-Weg mengenassoziative Struktur besitzt. Andererseits,
falls das Leistungsmodussignal in einem Modus mit niedriger Leistungsaufnahme
ist, ist das Cachespeichersystem als ein System aktiviert, das eine
1-Weg direkt abbildende Struktur besitzt. Aufgrund dessen ist es
möglich,
zwischen einem Fall auszuwählen,
wo eine Trefferquote priorisiert ist, und einem Fall, wo eine geringe
Leistungsaufnahme priorisiert ist, gemäß einem Benutzer oder einer äußeren Umgebung,
wie z.B. einer verwendeten Anwendung.
-
Das
erste und zweite Ausführungsbeispiel zum
Durchführen
der Erfindung betreffen das Cachespeichersystem, das in der Lage
ist, eine Struktur dynamisch zwischen der mengenassoziativen Struktur und
der direkt abbildenden Struktur umzuschalten, indem das Leistungsmodussignal
verwendet wird. Ein Cachespeichersystem gemäß dem dritten Ausführungsbeispiel
zum Durchführen
der Erfindung besitzt dagegen eine direkt abbildende Struktur, um eine
geringe Leistungsaufnahme zu realisieren, ohne ein Leistungsmodussignal
zu benötigen.
Es sei angemerkt, dass die gleichen Bestandteile in dem dritten Ausführungsbeispiel
zum Durchführen
der Erfindung wie die in dem ersten oder zweiten Ausführungsbeispiel
zum Durchführen
der Erfindung durch die gleichen Bezugsziffern gekennzeichnet werden
und hierin nicht beschrieben werden.
-
10 ist
ein Blockdiagramm, das ein Beispiel eines Cachespeichersystems gemäß dem dritten
Ausführungsbeispiel
zum Durchführen
der Erfindung zeigt. Dieses Cachespeichersystem ist ähnlich zu
dem in 4, mit der Ausnahme, dass ein RAM Leistungssteuerungsgerät 44 und
eine Datenselektorsteuerschaltung 45 nicht von einem Leistungsmodussignal
abhängen.
Das Cachespeichersystem ist auch zusammengesetzt, um einen Cachetreffer
oder -fehlschlag an einen Prozessorkern oder Ähnliches zurückzumelden,
ohne von einem Leistungsmodussignal abzuhängen.
-
11 ist
ein Blockdiagramm, das ein weiters Beispiel eines Cachespeichersystems
gemäß dem dritten
Ausführungsbeispiel
zum Durchführen der
Erfindung zeigt. Dieses Cachespeichersystem ist ähnlich zu dem in 9,
mit der Ausnahme, dass ein RAM Leistungssteuerungsgerät 44 nicht
von einem Leistungsmodussignal abhängt.
-
12 ist
ein Blockdiagramm, das ein modifiziertes Beispiel des in 10 gezeigten
Cachespeichersystems zeigt. In diesem Cachespeichersystem können nur
die Cachespeicher RAM Module (nicht die Tag-Speicher RAM Module)
in einen Zustand mit geringer Leistungsaufnahme in dem in 10 gezeigten
Cachespeichersystem umgewandelt werden.
-
13 ist
ein Blockdiagramm, das ein modifiziertes Beispiel des in 10 gezeigten
Cachespeichersystems zeigt. In diesem Cachespeichersystem werden
ein Tag-Speicher
RAM Modul 46 und ein Cachespeicher RAM Modul 48,
jedes in vier Bereiche geteilt, anstatt der vier Tag-Speicher RAM Module 31a, 31b, 31c und 31d und
der vier Cachespeicher RAM Module 32a, 32b, 32c und 32d in
dem in 10 gezeigten Cachespeichersystem
bereitgestellt.
-
Das
Tag-Speicher RAM Modul 46 wird mit Leseschaltungen 47a, 47b, 47c und 47d in
jedem der Bereiche versehen. Gleichermaßen wird das Cachespeicher
RAM Modul 48 mit Leseschaltungen 49a, 49b, 49c und 49d in
jedem der Bereiche versehen. Die Zustände dieser Leseschaltungen 47a, 47b, 47c, 47d, 49a, 49b, 49c und 49d werden
durch ein RAM Leistungssteuerungsgerät 44 zwischen einem
normalen Zustand und einem Zustand mit niedriger Leistungsaufnahme
umgeschaltet.
-
Gemäß dem oben
angegebenen dritten Ausführungsbeispiel
zum Durchführen
der Erfindung ist in jedem Beispiel nur ein Weg in einem normalen
Zustand aktiviert, basierend auf dem Wert der Abrufadresse, und
die restlichen Wege sind auf einen Zustand mit geringer Leistungsaufnahme
umgeschaltet. Aufgrund dessen ist es möglich, die Leistungsaufnahme
des Cachespeichersystems zu reduzieren.
-
In
Ausführungsbeispielen
der Erfindung werden n Tag-Speicher
RAM Abschnitte, jeder in der Lage, einen Zustand zwischen einem
normalen Zustand und einem Zustand mit ge ringer Leistungsaufnahme
umzuschalten, parallel geschaltet; n Cachespeicher RAM Abschnitte,
jeder in der Lage, einen Zustand zwischen dem normalen Zustand und
dem Zustand mit niedriger Leistungsaufnahme umzuschalten, werden
parallel geschaltet; falls ein Leistungsmodussignal in einem Modus
mit hoher Trefferquote ist, besitzt das Cachespeichersystem eine mengenassoziative
Struktur, in der all die Tag-Speicher
RAM Abschnitte und all die Cachespeicher RAM Abschnitt im normalen
Zustand aktiviert sind; und, andererseits, falls das Leistungsmodussignal
in einem Modus mit niedriger Leistungsaufnahme ist, besitzt das
Cachespeichersystem eine 1-Weg direkt abbildende Struktur, in der
nur einer der Tag-Speicher RAM Abschnitte und nur einer der Cachespeicher RAM
Abschnitte, der dem Tag-Speicher RAM Abschnitt entspricht, im normalen
Zustand aktiviert sind, und die restlichen Tag-Speicher RAM Abschnitte
und Cachespeicher RAM Abschnitte sind in den Zustand mit niedriger
Leistungsaufnahme umgewandelt, basierend auf dem Wert der Abrufadresse.
Aufgrund solch einer Anordnung, falls das Leistungsmodussignal in
einem Modus mit einer hohen Trefferrate ist, arbeitet das Cachespeichersystem
als ein n-Weg mengenassoziativer Cache, und falls das Leistungsmodussignal
in einem Modus mit einer niedrigen Leistungsaufnahme ist, arbeitet
das Cachespeichersystem als ein 1-Weg direkt abbildender Cache.
Es ist daher möglich,
eine Trefferquote oder eine Leistungsaufnahme nach Bedarf zu optimieren.