DE19956114A1 - Verfahren und System zur Steuerung des Speicherzugriffs durch eine zentrale Verarbeitungseinheit in einem Computersystem - Google Patents
Verfahren und System zur Steuerung des Speicherzugriffs durch eine zentrale Verarbeitungseinheit in einem ComputersystemInfo
- Publication number
- DE19956114A1 DE19956114A1 DE19956114A DE19956114A DE19956114A1 DE 19956114 A1 DE19956114 A1 DE 19956114A1 DE 19956114 A DE19956114 A DE 19956114A DE 19956114 A DE19956114 A DE 19956114A DE 19956114 A1 DE19956114 A1 DE 19956114A1
- Authority
- DE
- Germany
- Prior art keywords
- cpu
- read request
- memory
- write
- signal
- 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.)
- Ceased
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/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
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)
- Dram (AREA)
Abstract
Ein Verfahren und ein System zur Speicherzugriffssteuerung wird zur Verfügung gestellt, zur Verwendung in einem Computersystem, um den Speicherzugriffsvorgang durch eine zentrale Verarbeitungseinheit (CPU) auf eine Speichereinheit effizienter zu steuern. Dieses Verfahren und System zur Speicherzugriffssteuerung ist gekennzeichnet durch die Fähigkeit, den Speicherzugriffsvorgang zwischen einem Warte-Modus und einem Nicht-Warte-Modus, bezogen auf den derzeitigen L1-Rückschreibzustand der Leseanforderung von der CPU, hin und her zu schalten. Im Warte-Modus antwortet die Speichereinheit auf jede Leseanforderung, derart, daß sie abwartet, bis das L1-Rückschreibsignal der Leseanforderung ausgegeben wird, und dann entweder eine Leseoperation für die derzeitige Leseanforderung durchführt, wenn das L1-Rückschreibsignal einen Cache-Miss anzeigt, oder eine Cache-Rückschreiboperation ausführt, wenn das L1-Rückschreibsignal einen Cache-Hit anzeigt. Im Nicht-Warte-Modus antwortet die Speichereinheit auf jede Leseanforderung, derart, daß sie immer sofort eine Leseoperation für die derzeitige Leseanforderung ausführen wird, ohne zu warten, bis die CPU das L1-Rückschreibsignal der derzeitigen Leseanforderung ausgibt, und dann, wenn das nachfolgend erhaltene L1-Rückschreibsignal der Leseanforderung einen Cache-Hit anzeigt, die derzeit aus der Speichereinheit zurückgeholten Daten sofort verwirft und dann eine Cache-Rückschreiboperation ausführt.
Description
Die Erfindung betrifft eine Computerspeicher-Zugriffstechnick, und insbesondere ein
Speicherzugriffs-Steuerverfahren und ein System zur Verwendung in einem Computer
system, um den Zugriff auf eine Speichereinheit durch eine zentrale Verarbeitungseinheit
(CPU) effizienter zu steuern, indem von der CPU der Speucherzugriffsbetrieb zwischen
einem Warte-Modus und einem Nicht-Warte-Modus geschaltet wird, bezogen auf L1
Rückschreib/Lese-Befehle von der CPU.
Im heutigen Informationszeitalters sind Computer ein unentbehrliches Werkzeug bei der
Datenverarbeitung in allen Bereichen des Lebens geworden. Bei der Verwendung von
Computern ist die Leistung ein wichtiger Gesichtspunkt. Viele Faktoren können die Leistung
eines Computersystems beeinträchtigen, einschließlich der Geschwindigkeit der CPU, des
Typs des verwendeten primären Speichers, der Effizienz der Speicherzugriffssteuerung und
so weiter. Gegenwärtig wird als primärer Speicher der meisten Computersysteme weit
verbreitet der dynamische Direktzugriffsspeicher (DRAM) verwendet. Herkömmliche
Speicherzugriffsverfahren die eine Steigerung der Computerleistung unterstützen, umfassen
beispielsweise den "Fast Page Modus" (FPM) und das "Extended Data Out" (EDO)
Verfahren. Des weiteren ermöglicht ein neuer Typ DRAM, der synchronisierter DRAM
(SDRAM) genannt wird, schnelle Zugriffsgeschwindigkeiten auf die darin gespeicherten
Daten.
Eine herkömmliche Lösung zur Steigerung der Speicherzugriffsleistung durch die CPU ist
die Bereitstellung eines Hochgeschwindigkeitsspeichers in der CPU, der im allgemeinem als
Cache-Speicher bezeichnet wird. Wenn die CPU einen Datenzugriff anfordert, könnte sie
gleichzeitig die im Cache-Speicher vorhandenen Daten in die Speichereinheit zurückzu
schreiben beabsichtigen. Gemäß des CPU Betriebsverfahren gibt die CPU in dieser Situation
einige Taktzyklen später, nachdem die Leseanforderung durch die CPU erfolgt ist, ein L1-
Rückschreibsignal aus. Herkömmliche Systeme zur Speicherzugriffssteuerung arbeiten
gewöhnlich derart, daß für jede Leseanforderung von der CPU üblicherweise die Steuer
schnittstelle wartet, damit sichergestellt wird, ob daß L1-Rückschreibsignal ausgegeben wird
oder nicht, und führt anschließend die tatsächlichen Zugriffsoperationen durch, wie Lesen
oder Rückschreiben, in dem alle betreffenden Instruktionen an die Speichereinheit ausge
sandt werden. Die CPU liest daher Daten aus der Speichereinheit oder schreibt Daten in die
Speichereinheit zurück.
Aus der vorstehenden Beschreibung kann entnommen werden, daß ein Nachteil des Standes
der Technik darin besteht, daß für das Speicherzugriffssteuerungs-System immer ein
Wartestatus vorhanden ist, um festzustellen, ob das L1-Rückschreibsignal der derzeitigen
Leseanforderung umfaßt ist oder nicht, und daß erst anschließend der Zugriff auf die
Speichereinheit tatsächlich vorgenommen wird. Da jeder Wartezustand einige Taktzyklen
lang ist, führt dies dazu daß der Speicherzugriff relativ ineffizient ist. Die Gesamt
systemleistung des Computersystems ist daher schlecht und es gibt immer noch Raum für
Verbesserung. Die Statistik zeigt, daß in einem typischem Computersystem der durch eine
CPU durchgeführte Gesamtspeicherzugriff zu etwa 60% aus Lesen, zu etwa 15% aus
Rückschreiben in das Cache und zu etwa 25% aus Schreiben besteht. Daher kann die
Gesamtsystemleistung des Computersystems verbessert werden, in dem lediglich die Ge
schwindigkeit des Lesevorgangs erhöht wird. Der Stand der Technik ist jedoch beim Lesen
langsam, da er häufig im Wartezustand für L1-Rückschreibesignale bleibt.
Es ist daher eine Aufgabe der vorliegenden Erfindung ein verbessertes Verfahren zur
Speicherzugriffssteuerung und ein System zur Verwendung in einem Computersystem zu
liefern, das eine Steigerung der Geschwindigkeit des Lesevorgangs durch die CPU bewirkt,
indem jede Leseanforderung direkt an die Speichereinheit weitergegeben wird, ohne auf die
Ausgabe des L1-Rückschreibesignals der Leseanforderung zu warten, so daß die Gesamt
systemleistung des Computersystems verbessert werden kann.
Eine weitere Aufgabe der vorliegenden Erfindung besteht darin, ein verbessertes Verfahren
zur Speicherzugriffssteuerung zur Verfügung zu stellen und ein System zur Verwendung in
einem Computersystem, das den Speicherzugriffsbetrieb zwischen einem Warte-Modus und
einem Nicht-Warte-Modus, bezogen auf den gegenwärtigen L1-Rückschreibezustand der
Leseanforderungen von der CPU wechseln kann. Im Warte-Modus wird jede Leseanfor
derung auf die Speichereinheit übertragen, bis das L1-Rückschreibesignal davon ausgegeben
wird. Im Nicht-Warte-Modus wird die Leseanforderung direkt auf die Speichereinheit
übertragen, ohne zu warten, bis das L1-Rückschreibesignal ausgegeben wird.
Gemäß den vorstehenden und anderen Aufgaben der vorliegenden Erfindung, wird ein ver
bessertes Verfahren zur Speicherzugriffssteuerung und ein System, zur Verwendung in
einem Computersystem zur Verfügung gestellt, um den Zugriff der CPU auf die
Speichereinheit effizienter zu steuern.
Das Verfahren und das System zur Speicherzugriffssteuerung wird zur Verwendung in einem
Computersystem bereitgestellt, das eine CPU und eine Speichereinheit aufweist, um den
Zugriff der CPU auf die Speichereinheit zu steuern. Gibt die CPU eine Leseanforderung
gefolgt vom einem L1-Rückschreibsignal aus, dann wird das System automatisch in einen
Warte-Modus umgeschaltet, in dem abgewartet wird, um festzustellen, ob ein L1-Rück
schreibsignal folgt oder nicht. Befindet sich das System im Warte-Modus und werden
mehrere Leseanforderungen ohne ein folgendes L1-Rückschreibsignal ausgegeben, dann
wird das System automatisch in einen Nicht-Warte-Modus umgeschaltet. Im Nicht-Warte-
Modus kann das System nach Ausgabe der Leseanforderung die CPU-Anforderung
ausführen, ohne warten zu müssen ob ein L1-Rückschreibesignal folgt oder nicht.
Das erfindungsgemäße System zur Speicherzugriffssteuerung besteht aus einer CPU-Schnitt
stelle, einer Speichersteuereinheit und einer Modus-Umschalteinheit.
Die CPU-Schnittstelle ist mit der CPU verbunden, die selektiv umgeschaltet werden kann,
um zwischen einem Warte-Modus und einem Nicht-Warte-Modus zu arbeiten. Im Warte-
Modus antwortet die CPU-Schnittstelle auf jede Leseanforderung der CPU derart, daß abge
wartet wird, bis das L1-Rückschreibsignal der gegenwärtigen Leseanforderung erhalten wird,
und anschließend ein entsprechendes internes Leseanforderungssignal ausgegeben wird,
wenn das L1-Rückschreibssignal einen Cache-Fehler (Cache-Miss) anzeigt, oder ein
entsprechendes internes Cache-Rückschreibanforderungssignal ausgegeben wird, wenn das
L1-Rückschreibsignal einen Cache-Treffer (Cache-Hit) anzeigt. Im Nicht-Warte-Modus,
antwortet die CPU-Schnittstelle auf jede Leseanforderung der CPU derart, daß die CPU-
Schnittstelle das entsprechende interne Leseanforderungssignal ohne zu warten, bis die CPU
das L1-Rückschreibsignal der derzeitigen Leseanforderung ausgibt, sofort ausgibt während
dann, wenn das nachfolgend ausgegebene L1-Rückschreibsignal der derzeitigen Lese
anforderung einen Cache-Hit anzeigt, sofort ein Lese-Stoppsignal für die derzeitige
Leseanforderung ausgegeben wird.
Die Speichersteuereinheit ist zwischen der CPU-Schnittstelle und der Speichereinheit
verbunden und kann auf jedes interne Leseanforderungssignal von der CPU-Schnittstelle hin
in der Speichereinheit einen Lesevorgang durchführen, und kann weiter auf das Lese-
Stoppsignal hin die aus der Speichereinheit durch die derzeitige Leseanforderung
gegenwärtig abgerufenen Daten aufgeben und dann einen Cache-Rückschreibevorgang
durchführen, um die nachfolgenden Cache-Output-Daten von der CPU in die Speichereinheit
zurückzuschreiben.
Des weiteren ist die Modus-Umschalteinheit zwischen der CPU-Schnittstelle und der CPU
geschaltet, und anfänglich so eingestellt, daß sie die CPU-Schnittstelle in den Warte-Modus
schaltet. Sie kann weiter feststellen, ob eine Leseanforderung von der CPU ein Cache-Hit
oder ein Cache-Miss ist, und die Anzahl der aufeinanderfolgenden Cache-Miss-Leseanforde
rungen zählen, um dabei die CPU-Schnittstelle in den Nicht-Warte-Modus umzuschalten,
wenn die Anzahl einen vorbestimmten Grenzwert erreicht.
Das Verfahren zur Speicherzugriffssteuerung umfasst die folgenden Verfahrensschritte: (1)
Durchführen eines Modus-Umschaltverfahrens, um den Speicherzugriff zwischen einem
Warte-Modus und einem Nicht-Warte-Modus zu schalten, wobei der Speicherzugriff dann in
den Warte-Modus geschaltet wird, wenn die derzeit ausgegebenen Leseanforderungen
jeweils ein Cache-Hit sind, und in den Nicht-Warte-Modus geschaltet wird, wenn die derzeit
ausgegebenen Leseanforderungen ein Cache-Miss sind, (2) Antworten im Warte-Modus auf
jede Leseanforderung der CPU, bis die CPU das L1-Rückschreibsignal der derzeitigen Lese
anforderung ausgibt, und (3) Sofortiges Antworten im Nicht-Warte-Modus auf jede
Leseanforderung der CPU, ohne zu warten bis die CPU das L1-Rückschreibesignal der
derzeitigen Leseanforderung ausgibt.
Das Modus-Umschaltverfahren umfasst die Unterschritte: (1-1) Einstellen des
Speicherzugriffs anfangs in den Warte-Modus, und (1-2) Umschalten des Speicherzugriffs in
den Nicht-Warte-Modus, wenn die Anzahl aufeinanderfolgender Cache-Miss-Leseanforde
rungen der CPU einen vorbestimmten Grenzwert erreicht und anschließend sofortiges
Zurückschalten des Speicherzugriffs in den Warte-Modus, wenn eine Cache-Hit-Lesean
forderung von der CPU ausgegeben wird.
Im Warte-Modus umfasst die Antwort auf jede Leseanforderung von der CPU die
Unterschritte: (2-1) Warten, bis das L1-Rückschreibsignal der derzeitigen Leseanforderung
ausgegeben ist, (2-2) Überprüfen, ob das L1-Rückschreibsignal der derzeitigen Lese
anforderung einen Cache-Hit oder einen Cache-Miss anzeigt, (2-3) Durchführen eines
Lesevorgangs für die derzeitige Leseanforderung, wenn das L1-Rückschreibsignal der
derzeitigen Leseanforderung einen Cache-Miss zeigt, und (2-4) Durchführen einer Cache-
Rückschreiboperation, wenn das L1-Rückschreibsignal der derzeitigen Leseanforderung
einen Cache-Hit anzeigt.
Des weiteren umfasst im Nicht-Warte-Modus das Antworten auf jede Leseanforderung von
der CPU die Unterschritte: (3-1) sofortiges Durchführen einer Leseoperation für die derzei
tige Leseanforderung, ohne zu warten, bis die CPU das L1-Rückschreibsignal der derzeitigen
Leseanforderung ausgibt, und (3-2) wenn das nachfolgend ausgegebene L1-Rückschreib
signal der derzeitigen Leseanforderung ein Cache-Hit anzeigt, sofortiges Ausgeben eines
Lese-Stoppsignals für die derzeitige Leseanforderung, um die derzeit zurückgeholten Daten
aus der Speichereinheit aufzugeben, und dann eine Cache-Rückschreiboperation
durchzuführen, um nachfolgenden Cache-Output-Daten aus der CPU in die Speichereinheit
zurückzuschreiben.
Das vorstehende erfindungsgemäße Verfahren und System zur Speicherzugriffssteuerung ist
gekennzeichnet durch die Fähigkeit den Speicherzugriff zwischen einem Warte-Modus und
einem Nicht-Warte-Modus umzuschalten. Vom praktischen Einsatz und Untersuchungen
kann abgeleitet werden, daß die Gesamtspeicherzugriffsleistung durch Umschalten zwischen
einem Warte-Modus und einem Nicht-Warte-Modus, bezogen auf den derzeitigen L1-
Rückschreibezustand der Leseanforderung der CPU verbessert werden kann. Dies unterstützt
eine weitere Verbesserung der Gesamtsystemleistung des Computersystems.
Die Erfindung kann durch Lesen der nachfolgenden detaillierten Beschreibung der
bevorzugter Ausführungsformen unter Bezugnahme auf die anliegenden Zeichnungen besser
verstanden werden, worin:
Fig. 1 ein schematisches Blockdiagramm des erfindungsgemäßen Verfahrens und Systems
zur Steuerung des Speicherzugriffs durch eine CPU auf eine Speichereinheit darstellt,
Fig. 2 ein Flussdiagramm der Verfahrensschritte ist, die durch die Modus-Umschalteinheit,
die in dem erfindungsgemässen, in Fig. 1 gezeigten Speicherzugriffsteuerungssystem
verwendet wird, ausgeführt werden,
Fig. 3A ein Flussdiagramm der Verfahrensschritte darstellt, die durch die CPU-Schnittstelle,
die in dem erfindungsgemässen Speicherzugriffssteuerungssystem aus Fig. 1 verwendet
wird, wenn es im Warte-Modus betrieben wird,
Fig. 3B ein Flussdiagramm der Verfahrensschritte darstellt, ausgeführt durch die CPU-
Schnittstelle, die in dem erfindungsgemässen, in Fig. 1 gezeigten, Speicherzugriffs
steuerungssystem verwendet werden, wenn es in dem Nicht-Warte-Modus betrieben wird,
Fig. 4 ein Flussdiagramm der Verfahrensschritte darstellt, ausgeführt durch die Speicher
steuereinheit, die in dem erfindungsgemässen, in Fig. 1 gezeigten Speicherzugriffs
steuersystem verwendet wird,
die Fig. 5A-5B zwei Signal-Zeitablauf-Diagramme des erfindungsgemässen Speicher
zugriffssteuersystems sind, die dazu verwendet werden, die Leistungsunterschiede zwischen
dem Warte-Modus und dem Nicht-Warte-Modus unter einer ersten angenommen Bedingung
zu vergleichen,
die Fig. 6A-6B zwei Signal-Zeitablauf-Diagramme des erfindungsgemässen Speicher
zugriffssteuerungssystems darstellen, die dazu verwendet werden, den Leistungsunterschied
zwischen dem Warte-Modus und dem Nicht-Warte-Modus unter einer zweiten
angenommenen Bedingung zu vergleichen,
die Fig. 7A-7B zwei Signal-Zeitablauf-Diagramme des erfindungsgemässen Speicherzu
griffssteuerungssystems darstellen, die dazu verwendet werden, den Leistungsunterschied
zwischen dem Warte-Modus und dem Nicht-Warte-Modus unter einer dritten
angenommenen Bedingung zu vergleichen,
die Fig. 8A-8B zwei Signal-Zeitablauf-Diagramme des erfindungsgemässen Speicher
zugriffssteuerungssystems darstellen, die dazu verwendet werden, den Leistungsunterschied
zwischen dem Warte-Modus und dem Nicht-Warte-Modus unter einer vierten angenommen
Bedingung zu vergleichen,
die Fig. 9A-9B zwei Signal-Zeitablauf-Diagramme des erfindungsgemässen Speicher
zugriffssteuerungssystems darstellen, die dazu verwendet werden, den Leistungsunterschied
zwischen dem Warte-Modus und dem Nicht-Warte-Modus unter einer fünften
angenommenen Bedingung, zu vergleichen,
die Fig. 10A-10B zwei Signal-Zeitablauf-Diagramme des erfindungsgemässen Speicher
zugriffssteuerungssystems darstellen, die dazu verwendet werden, den Leistungsunterschied
zwischen dem Warte-Modus und dem Nicht-Warte-Modus unter einer sechsten
angenommenen Bedingung zu vergleichen, und
die Fig. 11A-11B zwei Signal-Zeitablauf-Diagramme des erfindungsgemässen Speicher
zugriffssteuerungssystems darstellen, die dazu verwendet werden, den Leistungsunterschied
zwischen dem Warte-Modus und dem Nicht-Warte-Modus unter einer siebten
angenommenen Bedingung zu vergleichen.
Fig. 1 stellt ein schematisches Blockdiagramm des erfindungsgemässen Verfahrens und
Systems zur Speicherzugriffssteuerung dar, das als der von einem gestrichelten Kästchen
umfasste und durch das Bezugszeichen 120 gekennzeichnete Bereich dargestellt ist, welcher
zur Steuerung des Zugriffs auf eine Speichereinheit 130 durch eine CPU 110 ausgelegt ist.
Das Speicherzugriffssteuerungssystem 120 gemäss der vorliegenden Erfindung ist zwischen
der CPU 110 und der Speichereinheit 130 verbunden und besteht aus einer CPU-Schnittstelle
121, einer Speichersteuereinheit 122 und einer Modus-Umschalteinheit 123. Die CPU 110
umfasst weiter einen Cache-Speicher 112. Die CPU 110 kann beispielsweise ein Pentium II
CPU der Intel Corporation, USA, sein während die Speichereinheit 130 beispielsweise ein
SDRAM sein kann.
Die CPU 110 und die CPU-Schnittstelle 121 sind über mehrere Datenleitungen ADS, REQ,
HITM, HTRDY, DBSY, DRDY, und HD miteinander verbunden, die CPU-Schnittstelle 121
und die Speichersteuereinheit 122 sind miteinander über drei Datenleitungen DADS,
MDOFF, und DAT verbunden und die Speichersteuereinheit 122 und die Speichereinheit
130 sind miteinander über zwei Datenleitungen CMD und MD verbunden. Des weiteren
besitzt die Modus-Umschalteinheit 123 zwei Input-Anschlusstellen, die mit den Datenleitun
gen ADS bzw. HITM zwischen der CPU 110 und der CPU-Schnittstelle 121 verbunden sind,
und eine Output-Anschlusstelle S, die mit der CPU-Schnittstelle 121 verbunden ist.
Die CPU 110 kann unter Steuerung des Speicherzugriffssteuerungssystems 120 auf die
Speichereinheit 130 Zugriff erlangen. Der Zugriffsvorgang kann entweder Lesen, Cache-
Rückschreiben oder Schreiben sein. Wenn die CPU 110 auf die Speichereinheit 130 zugrei
fen möchte, dann gibt sie eine Anzahl von Zugriffsanforderungen an die CPU-Schnittstelle
121 aus. Während des Schreibvorgangs wird die Speichersteuereinheit 122 dazu verwendet,
das Schreiben der Output-Daten von der CPU 110 in die Speichereinheit 130 zu steuern und
während des Lesevorgangs steuert die Speichersteuereinheit 122 das Zurückholen der von
der CPU angeforderten Daten aus der Speichereinheit 130 und überträgt dann die
zurückgeholten Daten über die CPU-Schnittstelle 121 auf die CPU 110. Es ist ein
kennzeichnendes Merkmal der vorliegenden Erfindung, daß die Modus-Umschalteinheit 123
während des Speicherzugriffs die Signalzustände der ADS und HITM Datenleitungen
feststellen kann und damit die CPU-Schnittstelle 121 selektiv derart umschalten kann, daß
sie zwischen einem Warte-Modus und einem Nicht-Warte-Modus betrieben wird. Details
davon werden später in dieser Beschreibung angegeben.
In dem System von Fig. 1 werden alle Einheiten durch ein gemeinsames Taktsignal (CCLK)
angetrieben. Die CPU 110 und die CPU-Schnittstelle 121 verwenden für die Datenkommuni
kation die Datenleitungen ADS, REQ, HITM, HTRDY, DBSY, DRDY, und HD. Es ist anzu
merken, daß, obwohl in Fig. 1 jede Datenleitung als einzelne Leitung gezeigt ist, diese in der
Praxis ein Datenbus sein kann, der aus mehreren Leitungen besteht. Wenn beispielsweise die
CPU 110 eine CPU mit 64 Bit ist, dann ist die HD-Datenleitung ein 64-Leitungsdatenbus.
Des weiteren ist in den nachfolgenden bevorzugten Ausführungsformen die Bezeichnung
Niederspannungs-Logikzustand und Hochspannungs-Logikzustand für ein bestimmtes Signal
eine veränderbare Gestaltungswahl und soll den Bereich der Erfindung nicht begrenzen.
Da der Sinn und die Breite der Erfindung auf eine Verbesserung der Leistung des Lesevor
gangs durch die CPU 110 auf die Speichereinheit 130 gerichtet ist, wird die folgende Be
schreibung ausschließlich auf die Art des Lesevorgangs ausgerichtet, die durch das er
findungsgemässe Speicherzugriffssteuerungssystem 120 ausgeführt wird. Wenn die CPU 110
auf die Speichereinheit 130 Zugriff nehmen möchte, dann bringt sie die Datenleitung ADS in
einen Niederspannungs-Logikzustand, wobei durch den Spannungs-Logikzustand der REQ-
Datenleitung angezeigt wird, ob der Zugriffsvorgang ein Schreib- oder Lesevorgang ist. Des
weiteren wird durch ein L1-Rückschreibsignal, das von der CPU 110 über die HITM Daten
leitung ausgegeben wird, angezeigt, ob jede Leseanforderung ein Hit oder ein Miss für den
Cache-Speicher 112 ist. Wenn beispielsweise die derzeitige Leseanforderung ein Hit ist,
dann wird die CPU 110 die HITM-Datenleitung in einen Niederspannungs-Logikzustand
versetzen, wodurch angezeigt wird, daß die Cache-Daten in dem Cache-Speicher 112 auf den
neuesten Stand gebracht wurden und in die Speichereinheit 130 zurückgeschrieben werden
müssen. Bei einem Miss hingegen wird die CPU 110 die HITM-Datenleitung in einen
Hochspannungs-Logikzustand bringen. Im Fall eines Hit wird ein Cache-Rück
schreibvorgang durchgeführt, um die Cache-Output-Daten von der CPU 110 zurückzuschrei
ben, die über die HTRDY-Datenleitung in die Speichereinheit 130 zurückgeschrieben
werden. Wenn die DRDY- und die DBSY-Datenleitungen in einen Niederspannungs-Logik
zustand gebracht wurden, dann wird angezeigt, daß die CPU-Schnittstelle 120 Daten über die
HD Datenleitung auf die CPU 110 transferieren möchte.
Innerhalb des Speicherzugriffsteuerungssystems 120 verwenden die CPU-Schnittstelle 121
und die Speichersteuereinheit 122 für die interne Datenkommunikation die DADS-,
MDOFF-, und DAT-Datenleitungen. Das DADS-Signal ist eine konvertierte Version des
ADS-Signals von der CPU 110. Wenn die DADS-Datenleitung in einen Niederspannungs-
Logikzustand gebracht wird, dann wird angezeigt, daß die CPU-Schnittstelle 121 ein internes
Zugriffanforderungssignal auf die Speichersteuereinheit 122 übertragen möchte. Das interne
Zugriffanforderungssignal kann entweder ein internes Leseanforderungssignal oder ein
internes Schreibanforderungssignal sein. Da jedoch der Sinn und die Breite der Erfindung
ausschließlich auf die Leseoperation gerichtet sind, werden nachstehend in dieser Beschrei
bung nur interne Leseanforderungssignale diskutiert. Die MDOFF-Datenleitung wird dazu
verwendet um ein durch die CPU-Schnittstelle 121 auf die Speichersteuereinheit 122 als
Antwort auf ein L1-Rückschreibsignal ausgegebenes Lese-Stopsignal, das durch die derzei
tige Leseanforderung einen Cache-Hit anzeigt, zu übertragen. Das Lese-Stopsignal wird dazu
verwendet, die Speichersteuereinheit 122 anzuweisen, den Lesevorgang für die derzeitige
Leseanforderung zu beenden und die derzeit von der Speichereinheit 130 zurückgeholten
Daten zu verwerfen, und anstelle davon einen Cache-Rückschreibevorgang durchzuführen,
um die Cache-Output-Daten aus dem Cache-Speicher 112 in der CPU 110 in die Speicher
einheit 130 zurückzuschreiben. Die DAT-Datenleitung wird dazu verwendet, die Daten von
der CPU 110, die in die Speichereinheit 130 geschrieben werden sollen, bzw. die aus der
Speichereinheit 130 zurückgeholten Daten, die von der Speichersteuereinheit 122 über die
CPU-Schnittstelle 121 auf die CPU 110 übertragen werden sollen, zu übertragen.
Es ist ein kennzeichnendes Merkmal der vorliegenden Erfindung, daß die CPU-Schnittstelle
121 derart aufgebaut ist, um zwischen zwei Betriebs-Modi zu arbeiten: einem (ersten) Warte-
Modus und einem (zweiten) Nicht-Warte-Modus. Im Warte-Modus wird die CPU-Schnitt
stelle 121 als Anwort auf jede Leseanforderung von der CPU warten, bis die CPU 110 das
L1-Rückschreibsignal der Leseanforderung (unabhängig davon ob das L1-Rückschreibsignal
ein Cache-Hit oder ein Cache-Miss anzeigt) ausgibt und dann das entsprechende interne
Leseanforderungssignal an die Speichersteuereinheit 122 ausgibt, während im Nicht-Warte-
Modus die CPU-Schnittstelle 121 das entsprechende interne Leseanforderungssignal als Ant
wort auf jede Leseanforderung von der CPU 110 an die Speichersteuereinheit 122 sofort aus
gibt, ohne zu warten, bis die CPU 110 das L1-Rückschreibsignal der derzeitigen Leseanfor
derung ausgibt. Gewöhnlich wird die CPU 110 das L1-Rückschreibsignal jeder Leseanforde
rung einige Taktzyklen nach der Ausgabe der Leseanforderung ausgeben, und bei einem
Cache-Hit wird der Speicherzugriffsvorgang weiter einen Cache-Rückschreibvorgang bein
halten. Die CPU-Schnittstelle 121 ist daher derart ausgestaltet, daß sie in den Warte-Modus
geschaltet wird, wenn davon ausgegangen wird, daß jede der derzeit und nachfolgend
erhaltenen Leseanforderungen ein Cache-Hit ist, und in den Nicht-Warte-Modus geschaltet
wird, wenn davon auszugehen ist, daß jede der derzeit und nachfolgend erhaltenen Lesean
forderungen ein Cache-Miss ist. Durch Eliminieren der unnötigen Wartezustände auf die L1-
Rückschreibesignale derartiger Leseanforderungen, von den sich später herausstellt, daß sie
ein Cache-Miss sind, kann die Erfindung zweifellos eine Leistungsverbesserung des
Lesevorgangs durch die CPU 110 in die Speichereinheit 130 unterstützen.
Während des Betriebs des Computersystems gibt die CPU 110 sukzessive eine Anzahl von
Leseanforderungen an die Speichereinheit 130 aus, um bestimmte, in der Speichereinheit 130
gespeicherte Datenblöcke abzurufen. Gewöhnlich würde die CPU 110 derart arbeiten, daß
während eines bestimmten Zeitrahmens eine Reihe von aufeinander folgenden Cache-Hit-
Leseanforderungen ausgegeben wird, und dann, während einer anderen Zeitspanne, eine
Serie von aufeinander folgenden Cache-Miss-Leseanforderungen. Dementsprechend ist die
Modus-Umschalteinheit 123 derart gestaltet, daß die CPU-Schnittstelle 121 bezogen auf dem
derzeitigem L1-Rückschreibzustand der Leseanforderung von der CPU 110 zwischen dem
Warte-Modus und dem Nicht-Warte-Modus geschaltet wird. Wenn davon ausgegangen wird,
daß jede der von der CPU 110 derzeit und nachfolgend erhaltenen Leseanforderungen ein
Cache-Hit ist, so wird die CPU-Schnittstelle 121 in den Warte-Modus geschaltet. Im
Gegensatz dazu wird, wenn davon ausgegangen wird, daß jede der von der CPU 110 derzeit
und nachfolgenden erhaltenen Leseanforderungen ein Cache-Miss ist, die CPU-Schnittstelle
121 in den Nicht-Warte-Modus geschaltet. Die Modus-Umschalteinheit 123 kann die Anzahl
der aufeinanderfolgenden Cache-Miss-Leseanforderungen von der CPU 110 bestimmen und
zählen. Wenn die Anzahl einen vorbestimmte Grenzwert erreicht, beispielsweise 200, dann
schaltet die Modus-Umschalteinheit 123 die CPU-Schnittstelle 121 in den Nicht-Warte-
Modus. Wie in Fig. 1 gezeigt, erfasst die Modus-Umschalteinheit 123 die Signalzustände
auf den ADS- und HITM-Datenleitungen, um damit die Anzahl aufeinander folgender
Cache-Miss-Leseanforderungen von der CPU 110 zu zählen. Wenn die Anzahl den
vorbestimmten Grenzwert erreicht, dann gibt die Modus-Umschalteinheit 123 über ihre
Output-Anschlußstelle S ein Modus-Umschaltsignal an die CPU-Schnittstelle 121 aus, um
die CPU-Schnittstelle 121 in den Nicht-Warte-Modus zu schalten.
Des weiteren nutzen die Speichersteuereinheit 122 und die Speichereinheit 130 für die
Datenkommunikation die CMD- und MD-Datenleitungen. Die CMD-Datenleitung wird dazu
verwendet, verschiedene Zugriffssteuersignale für verschiedene Zugriffsoperationen an die
Speichereinheit 130 zu übertragen. Diese Zugriffssteuersignale umfassen ein
Vorlade(Precharge)-Freigabesignal, ein Aktivierungs-Freigabesignal, ein Lese-Freigabe
signal und ein Schreib-Freigabesignal. Die MD-Datenleitung wird dazu verwendet, die
Daten, die in die Speichereinheit 130 geschrieben werden sollen bzw. die aus der Speicher
einheit 130 zurückgeholten Daten zu übertragen.
Fig. 2 ist ein Flussdiagramm der durch die Modus-Umschalteinheit 123 ausgeführten Ver
fahrensschritte, um die CPU-Schnittstelle 121 zwischen dem (ersten) Warte-Modus und dem
(zweiten) Nicht-Warte-Modus zu schalten. Fig. 3A ist ein Flussdiagramm der durch die
CPU-Schnittstelle 121 beim Betrieb im Warte-Modus ausgeführten Verfahrenschritte, und
Fig. 3B ist ein Flussdiagramm der durch die CPU-Schnittstelle 121 beim Betrieb im Nicht-
Warte-Modus ausgeführten Verfahrensschritte. Fig. 4 ist ferner ein Flussdiagramm der durch
die Speichersteuereinheit 122 zur Durchführung des Speicherzugriffvorgangs auf die
Speichereinheit 130 ausgeführten Verfahrensschritte.
Unter Bezug auf Fig. 2 und Fig. 1, wird im Anfangsschritt 210 die Modus-Umschalteinheit
123 voreingestellt, um die CPU-Schnittstelle 121 in den Warte-Modus zu schalten. D. h. der
erste Modus, in dem die CPU-Schnittstelle 121 auf eine Art und Weise arbeitet, daß als
Antwort auf jede der nachfolgend erhaltenen Leseanforderungen von der CPU 110 die CPU-
Schnittstelle 121 warten wird, bis die CPU 110 das L1-Rückschreibsignal der Leseanfor
derung ausgibt, und dann das entsprechende interne Leseanforderungssignal an die Speicher
steuereinheit 122 ausgibt.
Im nächsten Schritt 220 beginnt die Modusumschalteinheiteinheit 123 die Anzahl der auf
einanderfolgenden Cache-Miss-Leseanforderungen zu zählen, und überprüft, ob die Anzahl
eine vorbestimmten Grenzwert erreicht, beispielsweise 200. Wenn dies nicht zutrifft, dann
wird die Aktion von Schritt 220 weitergeführt, andernfalls, wenn dies zutrifft, dann wird
das Verfahren zu Schritt 230 weitergehen. Während dieses Zählverfahrens für Cache-Miss-
Leseanforderungen wird jedoch, wenn eine Cache-Hit-Leseanforderung erhalten wird,
bevor die Anzahl den vorbestimmten Grenzwert von 200 erreicht, die Zählung sofort auf
Null zurückgesetzt.
In Schritt 230 schaltet die Modusumschalteinheit 123 die CPU-Schnittstelle 121 in den
zweiten Betriebsmodus, d. h., den Nicht-Warte-Modus, wodurch bewirkt wird, daß die CPU-
Schnittstelle 121 anschließend derart arbeitet, daß diese als Antwort auf jede der nachfolgend
erhaltenden Leseanforderung von der CPU 110 sofort das entsprechende interne Lesean
forderungssignal an die Speichereinheit 130 ausgeben wird, ohne zu warten, bis die CPU 110
das L1-Rückschreibsignal der Leseanforderung ausgibt. Das Verfahren geht dann zu Schritt
240 weiter.
Im Schritt 240 erfaßt die Modusumschalteinheit 123 weiterhin den Signalzustand der HITM-
Datenleitung, um somit zu beurteilen, ob ein L1-Rückschreibsignal, das auf ein Cache-Hit
hinweist, erhalten wird. Wenn dies nicht zutrifft, dann fährt die Modusumschalteinheit 123
mit der Aktion von Schritt 240 fort und die CPU-Schnittstelle 121 bleibt im Nicht-Warte-
Modus. Wenn dies jedoch zutrifft, dann springt das Verfahren zu Schritt 210 zurück, wobei
die CPU-Schnittstelle 121 in den Warte-Modus geschaltet wird.
Nach dem Starten des Computersystems führt die Modus-Umschalteinheit 123 weiter die
Endlos-Schleife des in Fig. 2 gezeigten Verfahrens aus, wobei die CPU-Schittstelle 121
selektiv entweder in den Warte-Modus oder in den Nicht-Warte-Modus geschaltet wird, was
den Speicherzugriffsvorgang äußerst leistungsfähig macht.
Fig. 3a ist ein Flußdiagram der Verfahrensschritte, die durch die CPU-Schnittstelle 121 im
Warte-Modus ausgeführt werden, und Fig. 3b ist ein Flußdiagram der Verfahrensschritte, die
von derselben im Nicht-Warte-Modus ausgeführt werden.
Unter Bezug auf Fig. 3a zusammen mit Fig. 1, erhält die CPU-Schnittstelle 121 im ersten
Schritt 310 eine Leseanforderung von der CPU 110. In den meisten Fällen werden eher
mehrere Leseanforderungen nacheinander erhalten als eine Einzelne.
Im nächsten Schritt 312 überprüft die CPU-Schnittstelle 121 ob die CPU 110 ein L1-Rück
schreibsignal ausgibt, das für die derzeit erhaltene Leseanforderung einen Cache-Hit anzeigt
(normalerweise wird das L1-Rückschreibsignal jeder Leseanforderung nach der Ausgabe der
Leseanforderung in vier Taktzyklen ausgegeben). Wenn dies nicht der Fall ist, dann geht das
Verfahren zu Schritt 320. Wenn dies jedoch zutrifft, dann geht das Verfahren zu Schritt 323
weiter.
Im Schritt 320 gibt die CPU-Schnittstelle 121 für die derzeit erhaltene Leseanforderung das
entsprechende interne Leseanforderungssignal über die DADS-Datenleitung an die Speicher
steuereinheit 122 aus. Das Verfahren ist dann beendet.
Andererseits gibt in Schritt 322 die CPU-Schnittstelle 121 ein Cache-Rückschreibean
forderungssignal über die DADS-Datenleitung an die Speichersteuereinheit 122 aus,
wodurch bewirkt wird, daß die Speichersteuereinheit 122 eine Cache-Rückschreiboperation
durchführt, um die Cache-Daten in den Cache-Speicher 112 von der CPU 110 zurück in
die Speichereinheit 130 zu schreiben. Das Verfahren ist dann beendet.
Desweiteren zeigt Fig. 3b die Verfahrensschritte, die durch die CPU-Schnittstelle 121 ausge
führt werden, wenn sie im Nicht-Warte-Modus betrieben wird.
Wie gezeigt, erhält die CPU-Schnittstelle 121 im ersten Schritt 350 über die ADS- und REQ-
Datenleitung von der CPU 110 eine Leseanforderung. In den meisten Fällen werden hier eher
mehrere Leseanforderungen nacheinander erhalten als eine Einzelne. Das Verfahren geht
dann zu Schritt 352 weiter.
In Schritt 352 gibt die CPU-Schnittstelle 121 das entsprechende interne Leseanforderungs
signal über die DADS-Datenleitung sofort an die Speichereinheit 130, ohne zu warten bis die
CPU 110 das L1-Rückschreibsignal der derzeit erhaltenen Leseanforderung ausgibt. Das
Verfahren geht dann zu Schritt 240 weiter. Für jede Leseanforderung von der CPU 110 gibt
die CPU-Schnittstelle 121 ein entsprechendes internes Leseanforderungssignal an die
Speichersteuereinheit 122. Das Verfahren geht dann zu Schritt 360 weiter.
In Schritt 360 überprüft die CPU-Schnittstelle 121 ob ein L1-Rückschreibsignal, das anzeigt,
daß die derzeitige Leseanforderung ein Cache-Hit ist, von der CPU 110 über die HETM-
Datenleitung erhalten wird (normalerweise wird das L1-Rückschreibsignal jeder Lesean
forderung in vier Taktzyklen nach der Ausgabe der Leseanforderung ausgegeben). Wenn
dies nicht der Fall ist, dann wird das Verfahren sofort beendet. Andernfalls, wenn dies
zutrifft, geht das Verfahren zu Schritt 362 weiter.
In Schritt 362 gibt die CPU-Schnittstelle 121 über die MDOFF-Datenleitung an die Speicher
steuereinheit 122 sofort ein Lese-Stopsignal, wobei bewirkt wird, daß die Speichersteuer
einheit 122 die Leseoperation für die Leseanforderung beendet und die derzeit aus der
Speichereinheit 130 zurückgeholten Daten verwirft, und statt dessen eine Cache-Rück
schreibeoperation durchführt und die in dem Cache-Speicher 112 befindlichen Cache-Daten
in die Speichereinheit 130 zurückschreibt. Das Verfahren ist dann beendet.
Fig. 4 ist ein Flußdiagram der durch die Speichersteuereinheit 122 als Antwort auf jedes
internes Leseanforderungssignal und interne Chache-Rückschreibeanforderungssignal von
der CPU-Schnittstelle 121 ausgeführten Verfahrensschritte.
Unter Bezug auf Fig. 4 und Fig. 1 erhält die Speichersteuereinheit 122 im ersten Schritt 410
über die DADS-Datenleitung von der CPU-Schnittstelle 121 ein internes Anforderungs
signal, das entweder ein internes Leseanforderungssignal oder ein internes Chache-
Rückschreibeanforderungssignal sein kann.
Im nächsten Schritt 420 überprüft die Speichersteuereinheit 122 ob der vorhergehende
Zugriffsvorgang, Lese- oder Schreibvorgang, vollständig ist. Wenn dies nicht der Fall ist,
dann führt die Speichersteuereinheit 122 die Aktion von Schritt 420 weiter, bis das Ergebnis
JA ist. Wenn das Ergebnis JA ist, d. h. wenn der vorhergehende Zugriffsvorgang vollständig
ist, dann geht das Verfahren zu Schritt 422 über.
In Schritt 422 überprüft die Speichersteuereinheit 122, ob das erhaltene Signal ein internes
Leseanforderungssignal ist. Wenn dies nicht der Fall ist (was anzeigt, daß das erhaltene
Signal ein internes Cache-Rückschreibeanforderungssignal ist), dann geht das Verfahren zu
Schritt 424 über. Wenn dies jedoch der Fall ist, dann geht das Verfahren zu Schritt 430
weiter.
In Schritt 424 (wenn ein internes Cache-Rückschreibeanforderungssignal erhalten wird) führt
die Speichersteuereinheit 122 einen Cache-Rückschreibevorgang durch, um die Cache-Daten
im Cache-Speicher 112 in die Speichereinheit 130 zurückzuschreiben. Das Verfahren ist
dann beendet.
Andererseits beginnt die Speichersteuereinheit 122 in Schritt 430 (wenn ein internes Lesean
forderungssignal erhalten wird) einen Lesevorgang in Speichereinheit 130 durchzuführen,
um die angeforderten Daten davon zurückzuholen. Wenn die Speichereinheit 130 ein
SDRAM ist und wenn die angeforderten Daten auf einer anderen Seite als der durch den
vorhergehenden Zugriffsvorgang Zugegriffenen vorhanden sind, dann muß die Speicher
steuereinheit 122 nachfolgend ein Precharge-Freigabesignal und ein Aktivierungsfreigabe
signal über die CMD-Datenleitung an die Speichereinheit 133 ausgeben, welche bewirkt, daß
die Speichereinheit 130 die Seite, auf der sich die angeforderten Daten befinden, öffnet, so
daß die angeforderten Daten zurückgeholt werden können. Das Verfahren geht dann zu
Schritt 440 über.
In Schritt 440 überprüft die Speichersteuereinheit 122 ob ein Lese-Stopsignal über die
MDOFF-Datenleitung von der CPU-Schnittstelle 121 erhalten wird. Wenn dies nicht der Fall
ist (was anzeigt, daß die derzeitige Leseanforderung ein Cache-Miss ist), dann wird das Ver
fahren sofort beendet. Wenn dies jedoch zutrifft (was anzeigt, daß die derzeitige
Leseanforderung ein Cache-Hit ist), dann geht das Verfahren zu Schritt 450 über. In Schritt
450 verzichtet die Speichersteuereinheit 122 zunächst auf die derzeit von der Speichereinheit
130 zurückgeholten Daten und führt dann eine Cache-Rückschreiboperation durch, um die
Output-Cache-Daten von der CPU 110 in die Speichereinheit 130 zurückzuschreiben. Das
Verfahren wird dann beendet.
Im folgenden werden einige Leistungsvergleich-Beispiele dazu verwendet, um die
erfindungsgemäßen Vorteile besser zu erläutern. In jedem dieser Beispiele zum Leistungs
vergleich wird der Speicherzugriffsvorgang als Antwort auf die gleiche Leseanforderungen
zunächst im Warte-Modus und dann im nicht Warte-Modus ausgeführt, um den Leistungs
unterschied zwischen diesen beiden Verfahrens-Modi zu vergleichen und damit zu zeigen,
welche der beiden Verfahrensmodi für die Verwendung unter bestimmten Bedingungen
besser geeignet ist. Die Signal-Zeitablauf-Diagramme dieser Beispiele sind in den Fig. 5a-5b,
Fig. 6a-6b, Fig. 7a-7b, Fig. 8a-8b, Fig. 9a-9b, Fig. 10a-10b und Fig. 11a-11b (zu beachten ist,
daß Fig. 5a, Fig. 6a, Fig. 7a, Fig. 8a, Fig. 9a, Fig. 10a und Fig. 11a die Signal-Zeitablauf
diagramme des Speicherzugriffvorgangs im Warte-Modus darstellen, während Fig. 5b, Fig.
6b, Fig. 7b, Fig. 8b, Fig. 9b, Fig. 10b und Fig. 11b. die Signal-Zeitablaufdiagramme des
Speicherzugriffverfahrens im Nicht-Warte-Modus darstellen).
In allen diesen Beispielen zum Leistungsvergleich wird angenommen, daß die Länge eines
Übertragungsblockes jeder Leseanforderung von der CPU 110 ein Vierer-Datenblock ist, und
die Wartezeit der Speichereinheit 130 zwei Taktzyklen beträgt. Des weiteren wird angenom
men, daß die CPU 110 für jede dieser Anforderungen das L1-Rückschreibsignal, das anzeigt,
ob die Leseanforderung ein Hit oder ein Miss im Cache-Memory 112 ist, in vier Taktzyklen
nach der Ausgabe der Leseanforderung ausgeben wird. Das L1-Rückschreibsignal wird über
die HITM-Datenleitung an die CPU-Schnittstelle 121 ausgegeben. So wird beispielsweise
dann, wenn die CPU 110 nacheinander drei Leseanforderungen, bei T1, bei T4 und T7
ausgibt, für die erste, bei T1 ausgegebene Leseanforderung deren L1-Rückschreibsignal bei
T5 über die HITM-Datenleitung an die CPU-Schnittstelle 121 ausgegeben, für die zweite, bei
T4 ausgegebene Leseanforderung, deren L1-Rückschreibsignal bei T8 über die HITM-
Datenleitung an die CPU-Schnittstelle 121 ausgegeben, und für die dritte, bei T7
ausgegebene Leseanforderung, deren L1-Rückschreibsignal bei T11 über sie HITM-
Datenleitung an die CPU-Schnittstelle 121 ausgegeben.
In den Beispielen der Fig. 5a-5b wird angenommen, daß die CPU 110 nacheinander drei
Leseanforderungen ausgibt, um die Daten von der Speichereinheit 130 zu lesen, wobei die
Daten, die durch diese drei Leseanforderungen angefordert werden, alle auf der gleichen
geöffneten Seite der Speichereinheit 130 vorhanden sind.
Fig. 5a zeigt das Signal-Zeitablaufdiagramm beim Betreiben der CPU-Schnittstelle 121 im
Warte-Modus des durch das Speicherzugriffssteuersystem 120 durchgeführten Speicherzu
griffvorgangs als Antwort auf die vorstehend genannten drei Leseanforderungen von der
CPU-Einheit 110, die nacheinander bei T1, T4, und T7 über die ADS- und REQ-
Datenleitungen ausgegeben wurden. Wenn die CPU-Schnittstelle 121 die erste Datenan
forderung von der CPU 110 erhält, nimmt die an, das die erste Leseanforderung kein Cache-
Hit ist, und gibt daher sofort, bei T3, das entsprechende interne Leseanforderungssignal an
die Speichersteuereinheit 122, ohne zu warten, bis die CPU 110 das L1-Rückschreibsignal
für die Erste Leseanforderung ausgibt. Als nächstes wird als Antwort auf jede der folgenden
zweiten und dritten Leseanforderungen die CPU-Schnittstelle 121 statt dessen vier
Taktzyklen abwarten, bis die CPU 110 die entsprechenden L1-Rückschreibsignale der
zweiten und dritten Leseanforderung ausgibt, d. h. bis T9 bzw. T12, und wird dann die
entsprechenden internen Leseanforderungssignale an die Speichersteuereinheit 122
ausgeben.
Die Speichersteuereinheit 122 überprüft zunächst als Antwort auf das erste interne Lesean
forderungssignal von der CPU-Schnittstelle 121, ob die angeforderten Daten auf der derzeit
geöffneten Seite der Speichereinheit 130 befindlich sind. Anschließend beginnt die
Speichersteuereinheit 122 nach zwei Taktzyklen, d. h., bei T5, ein Lese-Freigabesignal an die
Speichereinheit 130 auszugeben. Nach einer Wartezeit von zwei Taktzyklen, d. h., bei T7
beginnt die Speichereinheit 130 die Viererblöcke von Daten, die durch die erste
Leseerfassung angefordert wurden, über die MD-Datenleitung an die Speichersteuereinheit
122 weiterzugeben. Diese Daten werden dann über die CPU-Schnittstelle 121 an die CPU
110 übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T9 ein
zweites internes Leseanforderungssignal von der CPU-Schnittstelle 121. Als Antwort über
prüft die Speichersteuereinheit 122 zunächst, ob die angeforderten Daten auf der derzeit ge
öffneten Seite befindlich sind, und dann, nach zwei Taktzyklen, d. h. bei T11, beginnt die
Speichersteuereinheit 122 an die Speichereinheit 130 ein Lese-Freigabesignal für die zweite
Leseanforderung auszugeben. Als Antwort darauf beginnt die Speichereinheit 130 bei T13
die Viererdatenblöcke, die durch die zweite Leseanforderung angefordert wurden,
auszugeben.
Desweiteren erhält bezüglich der dritten Leseanforderung die Speichersteuereinheit 122 bei
T12 das dritte interne Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem
Zeitpunkt wird jedoch, da die Speichereinheit 130 noch damit beschäftigt ist, sich um die
vorhergehende Leseanforderung zu kümmern, die Speichersteuereinheit 122 warten, bis die
Speichereinheit 130 den Output des dritten Blocks von Daten, die durch die vorherige Lese
anforderung angefordert waren, zu vervollständigen, d. h., bis T15, und dann ein Lese-
Freigabesignal an die Speichereinheit 130 für die dritte Leseanforderung ausgeben. Nach
einer Wartezeit von zwei Taktzyklen, d. h., bei T17, beginnt die Speichereinheit 130 die
Daten-Viererblöcke, die in der dritten Leseanforderung angefordert wurden, auszugeben.
Für Vergleichszwecke wird der vorstehende Speicherzugriffsvorgang als Antwort auf die
gleichen drei Leseanforderungen nachstehend von der CPU 110 durch das Speicherzu
griffssteuersystem 120 mit der CPU-Schnittstelle 121 durchgeführt, wobei diese in den
Nicht-Warte-Modus geschaltet ist, um den Leistungsunterschied zwischen den beiden
Verfahrens-Modi zu vergleichen.
Fig. 5b zeigt das Signal-Zeitablaufdiagramm des Speicherzugriffvorgangs, der durch das
Speichersteuersystem 120, wenn die CPU-Schnittstelle 122 im Nicht-Warte-Modus betrieben
wird, als Antwort auf die gleichen drei Leseanforderungen von der CPU 110, die
nacheinander bei T1, T4 und T7 über die ADS und RDQ-Datenleitungen ausgegeben
werden, durchgeführt wird. Wenn die CPU-Schnittstelle 121 die erste Leseanforderung von
der CPU 110 erhält, dann gibt die CPU-Schnittstelle 121 sofort, bei T3, das entsprechende
interne Leseanforderungssignal an die Speichersteuereinheit 122 aus. In zur Fig. 5a unter
schiedlicher Art und Weise gibt die CPU-Schnittstelle 121 dann, wenn sie die zweite Lesean
forderung von der CPU 110 erhält, sofort, bei T6, über die DADS-Datenleitung das
entsprechende interne Leseanforderungssignal an die Speichereinheit 130 aus, ohne zu
warten, bis die CPU 110 das L1-Rückschreibsignal der zweiten Leseanforderung ausgibt.
Gleichermaßen gibt die CPU-Schnittstelle 121 dann, wenn sie von der CPU 110 die dritte
Leseanforderung erhält, sofort, bei T9, das entsprechende interne Leseanforderungssignal
über die DADS-Datenleitung an die Speichersteuereinheit 122 aus, ohne zu warten, bis die
CPU 110 das L1-Rückschreibsignal der dritten Leseanforderung ausgibt.
Die Speichersteuereinheit 122 überprüft zunächst als Antwort auf das erste interne Lesean
forderungssignal von der CPU-Schnittstelle 121, ob die angeforderten Daten auf der derzeit
geöffneten Seite in der Speichereinheit 130 vorhanden sind. Anschließend, bei T5, gibt die
Speichersteuereinheit 122 über die CMD-Datenleitung ein Lesefreigabesignal an die
Speichereinheit 130 aus. Nach einer Wartezeit von zwei Taktzyklen, d. h., bei T7, gibt die
Speichereinheit 130 die angeforderten 4 Daten-Blöcke über die MD-Datenleitung an die
Speichersteuereinheit 122 aus. Diese Daten werden dann über die CPU-Schnittstelle 121 an
die CPU 110 übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T6 das
zweite interne Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem Zeitpunkt
wird die Speichersteuereinheit 120 jedoch, da der vorhergehende Lesevorgang für die erste
Leseanforderung nicht beendet ist, warten, bis die Speichereinheit 133 den Output des dritten
Datenblocks für die erste Leseanforderung beendet hat, d. h., bis T9, und anschließen ein
Lesefreigabesignal an die Speichereinheit 130 für die zweite Leseanforderung auszugeben.
Nach einer Wartezeit von zwei Taktzyklen nach dem Erhalt des Lesefreigabesignals, d. h., bei
T11, hat die Speichereinheit 130 gerade den Output des letzten Datenblocks für die vorherige
Leseanforderung abgeschlossen, und beginnt daher sofort die vier durch die Leseanforderung
angeforderten Daten über die MD-Datenleitung an die CPU-Schnittstelle 121 auszugeben.
Diese Daten werden dann über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Des weiteren erhält die Speichersteuereinheit 122 bezüglich der dritten Leseanforderung bei
T9 das dritte interne Leseanforderungssignal von der CPU-Schnittstelle 121. Vergleichbar
zur vorhergehenden Leseanforderung wird die Speichersteuereinheit 122 warten, bis die
Speichereinheit 130 den Output des dritten Datenblocks für die vorherige Leseanforderung
abgeschlossen hat, d. h. bis T13, und dann ein Leseanforderungssignal an die Speichereinheit
130 für die dritte Leseanforderung ausgeben. Nach einer Wartezeit von zwei Taktzyklen
nach Erhalt des Lesefreigabesignals, d. h., bei T15, hat die Speichereinheit 130 den Output
des letzten Datenblocks für die vorherige Leseanforderung gerade abgeschlossen, und
beginnt daher sofort, die vier Datenblöcke für die durch die zweite Leseanforderung
angeforderten Daten über die MD-Datenleitung an die Speichersteuereinheit 122
auszugeben. Diese Daten werden dann über die CPU-Schnittstelle 121 auf die CPU 110
übertragen.
Beim Vergleich der Fig. 5b und 5a wird ersichtlich, daß dann, wenn die CPU-Schnittstelle
121 im Warte-Modus betrieben wird, insgesamt 2 zwei Taktzyklen benötigt werden, um auf
die drei aufeinanderfolgenden Leseanforderungen von der CPU 110 zu antworten. Im
Gegensatz dazu sind im Nicht-Warte-Modus nur 20 Taktzyklen erforderlich. Es ist
offensichtlich, daß in diesem Fall der Warte-Modus in der Speicherzugriffsleistung
effizienter ist, als der Warte-Modus.
Im Beispiel der Fig. 6a-6b wird davon ausgegangen, daß die CPU 110 an die Speichereinheit
120 nacheinander drei Leseanforderungen ausgibt, wobei die Daten, die durch die erste
Leseanforderung angefordert werden, auf der derzeit geöffneten Seite befindlich sind, und die
Daten, die durch die zweite und dritte Leseanforderung angefordert werden, auf zwei anderen,
geschlossenen Seiten (off pages) befindlich sind.
Fig. 6a zeigt das Signal-Zeitablaufdiagramm des Speicherzugriffvorgangs, die durch das
Speicherzugriffssteuersystem 120 durchgeführt wird, wenn die CPU-Schnittstelle 121 im Warte-
Modus betrieben wird, als Antwort auf die vorstehend erwähnten drei Arten von
Leseanforderungen von der CPU 110, die nacheinander bei T1, T4, und T7 über die ADS und
REQ-Datenleitungen ausgegeben werden. Wenn die CPU-Schnittstelle 121 die erste
Leseanforderung von der CPU 110 erhält, nimmt sie beispielsweise an, daß die erste
Leseanforderung keine Cache-Rückschreibanforderung ist und gibt daher sofort, bei T3, das
entsprechende interne Leseanforderungssignal an die Speichersteuereinheit 122 aus, ohne zu
warten, bis die CPU 110 das L1-Rückschreibesignal für die erste Leseanforderung ausgibt. Als
nächstes wird als Antwort auf jede der nachfolgenden zweiten und dritten Leseanforderungen die
CPU-Schnittstelle 121 statt dessen vier Taktzyklen abwarten, bis die CPU 110 die entsprechen
den L1-Rückschreibesignale der zweiten und dritten Leseanforderung ausgibt, d. h. bis T9 bzw.
T12, und wird dann das entsprechende interne Leseanforderungssignal an die
Speichersteuereinheit 122 ausgeben.
Die Speichersteuereinheit 122 überprüft zunächst als Antwort auf das erste interne Lese
anforderungssignal von der CPU-Schnittstelle 121, ob die angeforderten Daten auf der derzeit
geöffneten Seite in der Speichereinheit 133 befindlich sind, und anschließend gibt die Speicher
steuereinheit 122, nach zwei Taktzyklen, d. h. bei T5, ein Lesefreigabesignal an die
Speichereinheit 130 aus. Nach einer Wartezeit von zwei Taktzyklen, d. h., bei T7, beginnt die
Speichereinheit 130 die angeforderten vier Datenblöcke über die MD-Datenleitung an die
Speichersteuereinheit 122 auszugeben. Diese Daten werden dann über die CPU-Schnittstelle 121
an die CPU 110 ausgegeben.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T9 das zweite
interne Leseanforderungssignal von der CPU-Schnittstelle 121. Als Antwort überprüft die
Speichersteuereinheit 122 zunächst, ob die angeforderten Daten auf einer geschlossenen Seite in
der Speichereinheit 130 befindlich sind. Anschließend, bei T11, beginnt die Speichersteuerein
heit 122 für die zweite Leseanforderung nacheinander ein Precharge-Freigabesignal, ein
Aktivierungsfreigabesignal und ein Lesefreigabesignal an die Speichereinheit 130 auszugeben.
Als Antwort auf diese Signale öffnet die Speichereinheit 130 zunächst die Seite, auf der die .
angeforderten Daten befindlich sind, und beginnt dann, bei T17, die angeforderten Daten
auszugeben.
Des weiteren erhält die Speichersteuereinheit 122 bezüglich der dritten Leseanforderung bei T12
das dritte interne -Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem Zeitpunkt
wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit 130 noch damit beschäftigt ist,
sich um die vorherige Leseanforderung zu kümmern, warten, bis die Speichereinheit 133 den
Output des dritten Datenblocks, der durch die vorherige Leseanforderung angefordert wurde,
abzuschließen, d. h. bis T19, und dann beginnen, nacheinander ein Precharge-Freigabesignal, ein
Akivierungsfreigabesignal, und ein Lesefreigabesignal an die Speichereinheit 130 für die dritte
Leseanforderung auszugeben. Als Antwort auf diese Signale öffnet die Speichereinheit 130
zunächst die Seite, auf der die angeforderten Daten befindlich sind, und beginnt dann, bei T25,
die vier Datenblöcke, die durch die dritte Leseanforderung angefordert wurden, auszugeben.
Für Vergleichszwecke wird der vorstehende Speicherzugriffsvorgang als Antwort auf die
gleichen drei Leseanforderungen nachstehend anstelle von der CPU 110 durch das Speicher
zugriffssteuerungssystem 120 durchgeführt, wobei die CPU-Schnittstelle 121 in den nicht Warte-
Modus geschaltet ist, um den Leistungsunterschied zwischen den beiden Verfahrens-Modi zu
vergleichen.
Fig. 6b zeigt das Signal-Zeitablaufdiagramm des Speicherzugriffvorgangs, der durch das
Speicherzugriffssteuerungssystem 120, wenn die CPU-Schnittstelle 121 im Nicht-Warte-Modus
betrieben wird, als Antwort auf die gleichen 3 Leseanforderungen von der CPU 110 durchgeführt
wird, die nacheinander, bei T1, T4, und T7 über die ADS und REQ-Datenleitungen ausgegeben
werden. Wenn die CPU-Schnittstelle 121 die erste Leseanforderung von der CPU 110 erhält,
dann gibt sie sofort, bei T3, das entsprechende interne Leseanforderungssignal über die DADS-
Datenleitung an die Speichersteuereinheit 122 aus. Anschließend gibt die CPU-Schnittstelle 121,
wenn sie die zweite und dritte Leseanforderungen von der CPU 110 erhält, sofort, bei T6 bzw.
T9, das entsprechende interne Leseanforderungssignal über die DADS-Datenleitung an die
Speichersteuereinheit 122 aus, ohne zu warten bis die CPU 110 die entsprechenden L1-Rück
schreibsignale für die zweite und dritte Leseanforderung ausgibt.
Die Speichersteuereinheit 122 prüft, als Antwort auf das erste interne Leseanforderungssignal
von der CPU-Schnittstelle 121 zunächst, ob die angeforderten Daten auf der derzeit geöffneten
Seite in der Speichereinheit 130 befindlich sind. Anschließend, nach zwei Taktzyklen, d. h. bei
T5, gibt die Speichersteuereinheit 122 ein Lesefreigabesignal über die CMD-Datenleitung an die
Speichereinheit 130 für die erste Leseanforderung aus. Nach einer Wartezeit von zwei
Taktzyklen, d. h. bei T7, gibt die Speichereinheit 130 den Output der angeforderten vier
Datenblöcke über die MD-Datenleitung an die Speichersteuereinheit 122 aus. Diese Daten
werden dann über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T6 das zweite
interne Leseanforderungssignal von der CPU-Schnittstelle 121 und prüft dann, ob die
angeforderten Daten auf einer geschlossenen Seite befindlich sind. Zu diesem Zeitpunkt wird die
Speichersteuereinheit 122 jedoch, da die vorherige Leseoperation für die erste Leseanforderung
noch nicht beendet ist, bis T9 warten und dann nacheinander ein Precharge-Freigabesignal, ein
Akivierungsfreigabesignal und ein Lesefreigabesignal über die CMD-Datenleitung an die
Speichereinheit 130 für die zweite Leseanforderung ausgeben. Als Antwort auf diese Signale
öffnet die Speichersteuereinheit 130 zunächst die Seite, auf der angeforderten Daten befindlich
sind, und beginnt dann, bei T15, die angeforderten Daten auszugeben. Diese Daten werden dann
über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Des weiteren erhält die Speichersteuereinheit 122 bezüglich der dritten Leseanforderung bei T9
das dritte interne Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem Zeitpunkt
wird jedoch, da die Speichereinheit 130 noch mit der vorherigen Leseanforderung beschäftigt ist,
die Speichersteuereinheit 122 warten, bis die Speichereinheit 130 den Output des dritten
Datenblocks für die vorherige Leseanforderung beendet hat, d. h. bis T17, und dann nacheinander
für diese dritte Leseanforderung ein Precharge-Freigabesignal, ein Aktivierungsfreigabesignal
und ein Lesefreigabesignal an die Speichereinheit 130 ausgeben. Als Antwort auf diese Signale
öffnet die Speichereinheit 130 zunächst die Seite, auf der die angeforderten Daten befindlich
sind, und beginnt dann, bei T23, die vier Datenblöcke, die durch die dritte Leseanforderung
angefordert wurden, auszugeben. Diese Daten werden dann über die CPU-Schnittstelle 121 an
die CPU 110 übertragen.
Beim Vergleich von Fig. 6b mit Fig. 6a wird ersichtlich, daß dann, wenn die CPU-Schnittstelle
121 im Warte-Modus betrieben wird, insgesamt 30 Taktzyklen erforderlich sind, um auf die drei
aufeinanderfolgenden Leseanforderungen von der CPU 110 zu antworten. Im Gegensatz dazu
sind im Nicht-Warte-Modus nur 28 Taktzyklen erforderlich. Es ist offensichtlich, daß in diesem
Fall der Nicht-Warte-Modus in der Speicherzugriffsleistung effizienter ist, als der Warte-Modus.
Im Beispiel von Fig. 7a-7b wird davon ausgegangen, daß die CPU 110 nacheinander drei Lese
anforderungen an die Speichereinheit 130 ausgibt, wobei die durch diese erste Leseanforderung
angeforderten Daten auf der derzeit geöffneten Seite befindlich sind, die durch die zweite Lese
anforderung angeforderten Daten auf einer geschlossenen Seite befindlich sind, und die durch
dritte Leseanforderung angeforderten Daten auf der gleichen geschlossenen Seite, wie die zweite
Leseanforderung befindlich sind.
Fig. 7a zeigt das Signal-Zeitablaufdiagramm des Speicherzugriffvorgangs, der durch das
Speicherzugriffssteuersystem 120 durchgeführt wird, wenn die CPU-Schnittstelle 121 im Warte-
Modus betrieben wird, als Antwort auf die vorstehend genannten drei Arten von
Leseanforderungen von der CPU 110, die nacheinander, bei T1, T4 und T7 über die ADS und
REQ-Datenleitungen ausgegeben werden. Wenn die CPU-Schnittstelle 121 die erste Lese
anforderung von der CPU 110 erhält, dann geht sie davon aus, daß die erste Leseanforderung
kein Cache-Hit ist, und gibt daher sofort, bei T3, das entsprechende interne Leseanforderungs
signal an die Speichersteuereinheit 122 aus, ohne zu warten, bis die CPU 110 das L1-Rück
schreibsignal der ersten Leseanforderung ausgibt. Als nächstes, als Antwort auf jede der
nachfolgenden zweiten und dritten Leseanforderungen, wird die CPU-Schnittstelle 121 statt
dessen vier Taktzyklen abwarten, bis die CPU 110 die entsprechenden L1-Rückschreibesignale
der zweiten und dritten Leseanforderung ausgibt, d. h. bis T9 bzw. T12, und wird dann die
entsprechenden internen Leseanforderungssignale an die Speichersteuereinheit 122 ausgeben.
Die Speichersteuereinheit 122 prüft, als Antwort auf das erste Leseanforderungssignal von der
CPU-Schnittstelle 121 zunächst, ob die angeforderten Daten auf der derzeit geöffneten Seite in
der Speichereinheit 130 befindlich sind, und dann, nach zwei Taktzyklen, d. h. bei T5, beginnt die
Speichersteuereinheit 122 ein Lesefreigabesignal an die Speichereinheit 130 auszugeben. Nach
einer Wartezeit von zwei Taktzyklen, d. h. bei T7 beginnt die Speichereinheit 130 die
angeforderten vier Datenblöcke über die MD-Datenleitung an die Speichersteuereinheit 122
auszugeben. Diese Daten werden dann über die CPU-Schnittstelle 121 an die CPU 110
ausgegeben.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T9 ein zweites
internes Leseanforderungssignal von der CPU-Schnittstelle 121. Als Antwort prüft die
Speichersteuereinheit 122 zunächst, daß die angeforderten Daten auf einer geschlossenen Seite in
der Speichereinheit 130 befindlich sind, und dann, bei T11, beginnt die Speichersteuereinheit
122 nacheinander ein Precharge-Freigabesignal, ein Aktivierungsfreigabesignal und ein Lesefrei
gabesignal über die CMD-Datenleitung an die Speichereinheit 130 auszugeben. Als Antwort auf
diese Signale öffnet die Speichereinheit 130 zunächst die Seite, auf der die angeforderten Daten
befindlich sind, und beginnt dann, bei T17 die angeforderten Daten auszugeben. Diese Daten
werden dann über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Desweiteren, bezüglich der dritten Leseanforderung erhält die Speichersteuereinheit 122 bei T12
das dritte interne Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem Zeitpunkt
wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit 130 noch mit der
vorhergehenden Leseanforderung beschäftigt ist, warten, bis die Speichereinheit 130 den Output
des dritten Datenblocks der durch die vorherige Leseanforderung angeforderten Daten abschließt,
d. h. bis T19, und dann beginnen, ein Lesefreigabesignal an die Speichereinheit 130 für die dritte
Leseanforderung auszugeben (nur Lesefreigabesignal und kein Precharge-Freigabesignal und
kein Aktivierungsfreigabesignal wird ausgegeben, da die angeforderten Daten auf der gleichen
Seite, die durch die vorherige Leseanforderung angefordert wurden befindlich sind). Nach einer
Wartezeit von zwei Taktzyklen, d. h. bei T21 beginnt die Speichereinheit 130 dann die 4
Datenblöcke der durch die dritte Leseanforderung angeforderten Daten über die MD-
Datenleitung an die Speichersteuereinheit 122 auszugeben. Diese Daten werden dann über die
CPU-Schnittstelle 121 an die CPU 110 übertragen.
Für Vergleichszwecke wir die vorstehende Speicherzugriffsoperation als Antwort auf die
gleichen drei Leseanforderungen von der CPU 110 nachstehend statt dessen durch das
Speicherzugriffssteuersystem 120 durchgeführt, wobei die CPU-Schnittstelle 121 in den Nicht-
Warte-Modus geschaltet ist, um die Leistungsunterschied zwischen den Operationsmoden zu
vergleichen.
Fig. 7b zeigt das Signal-Zeitablaufdiagramm der Speicherzugriffsoperation, die durch das
Speicherzugriffssteuersystem 120 durchgeführt wird, wenn die CPU-Schnittstelle 121 im Nicht-
Warte-Modus betrieben wird, als Antwort auf die gleichen 3 Leseanforderungen von der CPU
110, die nacheinander, bei T1, T4 und T7 über die ADS und REQ-Datenleitungen ausgegeben
weiden. Wenn die CPU-Schnittstelle 121 die erste Leseanforderung von der CPU 110 erhält, gibt
sie sofort, bei T3, das entsprechende interne Leseanforderungssignal über die DADS-Datenlei
tung an die Speichersteuereinheit 122 aus. Nachfolgend, wenn die CPU-Schnittstelle 121 die
zweite Leseanforderung von der CPU 110 erhält, gibt sie sofort, bei T6, das entsprechende
interne Leseanforderungssignal über die DADS-Datenleitung an die Speichersteuereinheit 122,
ohne zu warten, bis die CPU 110 das Leseanforderungssignal der zweiten Leseanforderung
ausgibt. Anschließend, wenn die CPU-Schnittstelle 121 die dritte Leseanforderung von der CPU
110 erhält, gibt sie ebenfalls sofort, bei T9, das entsprechende Leseanforderungssignal über die
DADS-Datenleitung an die Speichersteuereinheit 122 aus, ohne zu warten, bis die CPU 110 das
L1-Rückschreibsignal für die dritte Leseanforderung ausgibt.
Die Speichersteuereinheit 122 prüft zunächst, als Antwort auf das erste interne
Leseanforderungssignal von der CPU-Schnittstelle 121, ob die angeforderten Daten auf der
derzeit geöffneten Seite in der Speichereinheit 130 befindlich sind, und dann, nach zwei
Taktzyklen, d. h., bei T5, gibt die Speichersteuereinheit 121 ein Lesefreigabesignal an die
Speichereinheit 130 für die erste Leseanforderung aus. Nach einer Wartezeit von zwei
Taktzyklen, d. h., bei T7, beginnt die Speichereinheit 130 die angeforderten 4 Datenblöcke über
die MD-Datenleitung an die Speichersteuereinheit 122 auszugeben. Diese Daten werden dann
über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T6 das zweite
interne Leseanforderungssignal von der CPU-Schnittstelle 121 und prüft, ob die angeforderten
Daten auf einer geschlossenen Seite befindlich sind. Zu diesem Zeitpunkt wird die Speicher
steuereinheit 122 jedoch, da die vorhergehende Leseoperation für die erste Leseanforderung noch
nicht abgeschlossen ist, bis T9 warten und dann nacheinander ein Precharge-Freigabesignal, ein
Aktivierungsfreigabesignal und ein Lesefreigabesignal über die CMD-Datenleitung an die
Speichereinheit 130 für die zweite Leseanforderung ausgeben. Als Antwort auf die Signale
öffnet die Speichereinheit 130 zunächst die Seite, auf der die angeforderten Daten befindlich
sind, und gibt dann, bei T15, die angeforderten Daten aus. Diese Daten werden dann über die
CPU-Schnittstelle 121 an die CPU 110 ausgegeben.
Desweiteren, bezüglich der dritten Leseanforderung, erhält die Speichersteuereinheit 122 bei T9
das dritte interne Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem Zeitpunkt
wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit 130 noch mit der
vorhergehenden Leseanforderung beschäftigt ist, warten, bis die Speichereinheit 130 den Output
des Datenblocks von der vorherigen Leseanforderung abgeschlossen hat, d. h. bis T17, und dann
ein Lesefreigabesignal an die Speichereinheit 130 ausgeben (nur ein Lesefreigabesignal und kein
Precharge-Freigabesignal sowie kein Aktivierungsfreigabesignal wird ausgegeben, da die
angeforderten Daten auf der gleichen Seite wie durch die vorherige Leseanforderung angefordert,
befindlich sind). Als Antwort beginnt die Speichereinheit 130 nach einer Wartezeit von drei
Taktzyklen, d. h. bei T19, die vier durch die dritte Leseanforderung angeforderten Datenblöcke
über die MD-Datenleitung an die Speichersteuereinheit 122 auszugeben. Diese Daten werden
dann über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Durch den Vergleich der Fig. 7b mit 7a wird ersichtlich, daß dann, wenn die CPU-Schnittstelle
121 im Warte-Modus betrieben wird, insgesamt 26 Taktzyklen erforderlich sind, um auf die drei
aufeinanderfolgenden Leseanforderungen von der CPU 110 zu antworten. Im Gegensatz dazu
sind im Nicht-Warte-Modus nur 2vier Taktzyklen erforderlich. Es ist offensichtlich, daß in
diesem Fall der Nicht-Warte-Modus in der Speicherzugriffsleistung effizienter ist als der Warte-
Modus.
In dem Beispiel der Fig. 8a-8b wird davon ausgegangen, daß die CPU 110 nacheinander drei
Leseanforderungen an die Speichereinheit 130 ausgibt, wobei die durch die erste und zweite
Leseanforderung angeforderten Daten auf zwei verschiedenen geschlossenen Seiten befindlich
sind, und die durch die dritte Leseanforderung angeforderten Daten auf der gleichen Seite wie die
zweite Leseanforderung befindlich sind.
Die Fig. 8a zeigt das Signal-Zeitablaufdiagramm der Speicherzugriffsoperation, die durch das
Speicherzugriffssteuersystem 120 durchgeführt wird, wenn die CPU-Schnittstelle 121 im Warte-
Modus betrieben wird, als Antwort auf die vorstehend genannten drei Arten von
Leseanforderungen, die nacheinander, bei T1, T4 und T7 von der CPU 110 über die ADS und
REQ-Datenleitungen ausgegeben werden. Wenn die CPU-Schnittstelle 121 die erste Lesean
forderung von der CPU 110 erhält, wird davon ausgegangen, daß die erste Leseanforderung kein
Cache-Hit ist wobei diese sofort, bei T3, das entsprechende interne Leseanforderungssignal an
die Speichersteuereinheit 122 ausgibt, ohne zu warten, bis die CPU 110 das L1-Rückschreibe
signal der ersten Leseanforderung ausgibt. Als nächstes, als Antwort auf jede der nachfolgenden
zweiten und dritten Leseanforderungen wird die CPU-Schnittstelle 121 statt dessen vier Takt
zyklen abwarten, bis die CPU 110 die entsprechenden L1-Rückschreibesignale der zweiten und
dritten Leseanforderung ausgibt, d. h. bis T9 bzw. T12, und wird dann das entsprechende interne
Leseanforderungssignal an die Speichersteuereinheit 122 ausgeben.
Die Speichersteuereinheit 122 prüft zunächst, als Antwort auf das erste interne Leseanforde
rungssignal von der CPU-Schnittstelle 121, ob die angeforderten Daten auf einer geschlossenen
Seite in der Speichereinheit 130 befindlich sind, und dann, nach zwei Taktzyklen, d. h., bei T5,
gibt die Speichersteuereinheit 122 nacheinander ein Precharge-Freigabesignal, ein Aktivierungs
freigabesignal und ein Lesefreigabesignal an die Speichereinheit 130 für die erste Lesean
forderung aus. Als Antwort auf diese Signale öffnet die Speichereinheit 130 die Seite, auf der die
angeforderten Daten befindlich sind, und nach einer Wartezeit von zwei Taktzyklen, nach Erhalt
des Lesefreigabesignals, d. h. bei T11, beginnt die Speichereinheit 130 die angeforderten 4
Datenblöcke über die MD-Datenleitung an die Speichersteuereinheit 122 auszugeben. Diese
Daten werden dann über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T9 das zweite
interne Leseanforderungssignal von der CPU-Schnittstelle 121. Als Antwort prüft die
Speichersteuereinheit 122 zunächst, ob die angeforderten Daten auf einer anderen geschlossenen
Seite in der Speichereinheit 130 befindlich sind. Zu diesem Zeitpunkt wird die
Speichersteuereinheit 122, jedoch, da die Speichereinheit 130 noch mit der vorherigen
Leseanforderung beschäftigt ist, bis T13 warten, und dann nacheinander ein Precharge-
Freigabesignal, ein Aktivierungsfreigabesignal und ein Lesefreigabesignal an die Speichereinheit
130 für die zweite Leseanforderung ausgeben. Als Antwort auf diese Signale öffnet die
Speichereinheit 130 zunächst die Seite, auf der die angeforderten Daten befindlich sind, und
beginnt dann, bei T19, die angeforderten Daten auszugeben. Diese Daten werden dann über die
CPU-Schnittstelle 121 an die CPU 110 übertragen.
Desweiteren, bezüglich der dritten Leseanforderung, erhält die Speichersteuereinheit 122 bei T12
das dritte interne Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem Zeitpunkt
wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit 130 noch mit der vorherigen
Leseanforderung beschäftigt ist, warten, bis die Speichereinheit 130 den Output, durch die
vorherige Leseanforderung angeforderten Datenblocks abschließt, d. h. bis T21, und dann
beginnen, ein Lesefreigabesignal an die Speichereinheit 130 für die dritte Leseanforderung
auszugeben (nur Lesefreigabesignal und kein Precharge-Freigabesignal und kein
Aktivierungsfreigabesignal wird ausgegeben, da die angeforderten Daten auf der gleichen Seite
befindlich sind, die durch die vorherige Anforderung angefordert wurden). Nach einer Wartezeit
von zwei Taktzyklen, d. h. bei T23, beginnt die Speichereinheit 130 die vier durch die dritte
Leseanforderung angeforderten Datenblöcke über die MD-Datenleitung an die Speichersteuer
einheit 122 zu übertragen. Diese Daten werden dann über die CPU-Schnittstelle 121 an die CPU
110 übertragen.
Für Vergleichszwecke wird die vorstehende Speicherzugriffsoperation als Antwort auf die
gleichen drei Leseanforderungen von der CPU 110 nachstehend statt dessen durch das
Speicherzugriffssteuersystem 120 durchgeführt, wobei die CPU-Schnittstelle 121 in den Nicht-
Warte-Modus geschaltet ist, um den Leistungsunterschied zwischen den beiden Operations-Modi
zu vergleichen.
Die Fig. 8b zeigt das Signal-Zeitablaufdiagramm der Speicherzugriffsoperation, die durch das
Speicherzugriffssteuersystem 120 durchgeführt wird, wenn die CPU-Schnittstelle 121 im Nicht-
Warte-Modus betrieben wird, als Antwort auf die gleichen drei Leseanforderungen von der CPU
110, die nacheinander bei T1, T4, und T7 über die ADS und REQ-Datenleitungen ausgegeben
werden. Wenn die CPU-Schnittstelle 121 die erste Leseanforderung von der CPU 110 erhält, gibt
sie sofort, bei T3, das entsprechende interne Leseanforderungssignal über die DADS-
Datenleitung an die Speichersteuereinheit 122 aus. Danach, wenn die CPU-Schnittstelle 121 die
zweite Leseanforderung von der CPU 110 erhält, gibt sie sofort, bei T6, das entsprechende
interne Leseanforderungssignal über die DADS-Datenleitung an die Speichersteuereinheit 122
aus, ohne zu warten, bis die CPU 110 das L1-Rückschreibesignal der zweiten Leseanforderung
ausgibt, und als nächstes, wenn die CPU-Schnittstelle 121 die dritte Leseanforderung von der
CPU 110 erhält, gibt sie sofort, bei T9, das entsprechende interne Leseanforderungssignal über
die DADS-Datenleitung an sie Speichersteuereinheit 122 aus, ohne zu warten, bis die CPU 110
das L1-Rückschreibesignal der dritten Leseanforderung ausgibt.
Die Speichersteuereinheit 122 prüft zunächst, als Antwort auf das erste interne Lesean
forderungssignal von der CPU-Schnittstelle 121, ob die angeforderten Daten auf einer
geschlossenen Seite in der Speichereinheit 130 befindlich sind, und dann, nach zwei Taktzyklen,
d. h. bei T5, beginnt die Speichersteuereinheit 122 nacheinander ein Precharge-Freigabesignal,
ein Aktivierungsfreigabesignal und ein Lesefreigabesignal an die Speichereinheit 130 für die
erste Leseanforderung auszugeben. Als Antwort auf diese Signale öffnet die Speichereinheit 130
zunächst die Seite, auf der die angeforderten Daten befindlich sind, und dann, nach einer
Wartezeit von zwei Taktzyklen, nach Erhalt des Lesefreigabesignals, d. h. bei T11, beginnt die
Speichereinheit 130 die vier durch die erste Leseanforderung angeforderten Datenblöcke über die
MD-Datenleitung an die Speichersteuereinheit 122 auszugeben. Diese Daten werden dann über
die CPU-Schnittstelle 121 auf die CPU 110 übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T6 das zweite
interne Leseanforderungssignal von der CPU-Schnittstelle 121, und prüft, ob die angeforderten
Daten auf einer anderen, geschlossenen Seite befindlich sind. Zu diesem Zeitpunkt wird die
Speichersteuereinheit 122 jedoch, da die vorherige Leseoperation für die erste Leseanforderung
noch nicht abgeschlossen ist, bis T13 warten, und dann nacheinander ein Precharge-
Freigabesignal, ein Aktivierungsfreigabesignal und ein Lesefreigabesignal über die CMD-
Datenleitung an die Speichereinheit 130 für die erste Leseanforderung ausgeben. Als Antwort
auf diese Signale öffnet die Speichereinheit 130 zunächst die Seite, auf der die angeforderten
Daten befindlich sind, und wird dann, bei T19, die angeforderten Daten ausgeben. Diese Daten
werden dann über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Desweiteren, bezüglich der dritten Leseanforderung, erhält die Speichersteuereinheit 122 bei T9
das dritte interne Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem Zeitpunkt
wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit 130 noch mit der vorherigen
Leseanforderung beschäftigt ist, warten, bis die Speichereinheit 130 den Output des dritten
Datenblocks für die vorherige Leseanforderung abschließt, d. h. bis T21, und dann beginnen, ein
Lesefreigabesignal an die Speichereinheit 130 für die dritte Leseanforderung auszugeben (nur
Lesefreigabesignal, kein Precharge-Freigabesignal und kein Aktivierungsfreigabesignal wird
ausgegeben, da die angeforderten Daten auf der gleichen Seite, wie durch die vorhergehende
Leseanforderung angefordert, befindlich sind). Nach einer Wartezeit von zwei Taktzyklen nach
Erhalt des Lesefreigabesignals, d. h. bei T23, beginnt die Speichereinheit 130 die vier durch die
dritte Leseanforderung angeforderten Datenblöcke über die MD-Datenleitung an die Speicher
steuereinheit 122 auszugeben. Diese Daten werden dann über die CPU-Schnittstelle 121 an die
CPU 110 übertragen.
Durch Vergleich von Fig. 8b mit Fig. 8a wird ersichtlich, daß dann, wenn die CPU-Schnittstelle
121 im Warte-Modus betrieben wird, insgesamt 28 Taktzyklen erforderlich sind, um auf drei
aufeinanderfolgende Leseanforderungen von der CPU 110 zu antworten. Ähnlich, sind im Nicht-
Warte-Modus ebenfalls 28 Taktzyklen erforderlich. Es ist offensichtlich, daß in diesem Fall der
Nicht-Warte-Modus in der Speicherzugriffsleistung dem Warte-Modus äquivalent ist.
In den Beispielen der Fig. 9a-9b wird davon ausgegangen, daß die CPU 110 nacheinander drei
Leseanforderungen an die Speichereinheit 130 ausgibt, wobei die durch diese drei Lese
anforderungen angeforderten Daten auf drei verschiedenen, geschlossenen Seiten befindlich sind.
Fig. 9a zeigt das Signal-Zeitablaufdiagramm der Speicherzugriffsoperation, die durch das
Speicherzugriffssteuersystem 120 durchgeführt wird, wenn die CPU-Schnittstelle 121 im Warte-
Modus betrieben wird, als Antwort, auf die vorstehend genannten drei Arten von Leseanforde
rungen, die nacheinander bei T1, T4, und T7 von der CPU 110 über die ADS und REQ-Daten
leitung ausgegeben werden. Wenn die CPU-Schnittstelle 121 das erste Leseanforderungssignal
von der CPU 110 erhält, wird angenommen, daß die erste Leseanforderung kein Cache-Hit ist,
und gibt daher sofort, bei T3, das entsprechende interne Leseanforderungssignal an die
Speichersteuereinheit 122 aus, ohne zu warten, bis die CPU 110 das L1-Rückschreibsignal der
ersten Leseanforderung ausgibt. Als nächstes, als Antwort auf jede der nachfolgenden zweiten
und dritten Leseanforderung, wird die CPU-Schnittstelle 121 statt dessen vier Taktzyklen abwar
ten, bis die CPU 110 die entsprechenden L1-Rückschreibsignale der zweiten und dritten Lesean
forderung ausgibt, d. h. bis T9 bzw. T12, und dann die entsprechenden internen
Leseanforderungssignale an die Speichersteuereinheit 122 ausgeben.
Die Speichersteuereinheit 122 prüft zunächst, als Antwort auf das erste interne Leseanforde
rungssignal von der CPU-Schnittstelle 121, das die angeforderten Daten auf einer geschlossenen
Seite in der Speichereinheit 130 befindlich sind, und dann, nach zwei Taktzyklen, d. h., bei T5,
beginnt die Speichersteuereinheit 122 nacheinander ein Precharge-Freigabesignal, ein
Aktivierungsfreigabesignal und Lesefreigabesignal an die Speichereinheit 130 für die erste Lese
anforderung auszugeben. Als Antwort auf diese Signale öffnet die Speichereinheit 130 zunächst
die Seite, auf der die angeforderten Daten befindlich sind, und dann, nach einer Wartezeit von
zwei Taktzyklen, nach Erhalt des Lesefreigabesignals, d. h., bei T11 beginnt die Speichereinheit
130 die angeforderten 4 Datenblöcke über die MD-Datenleitung an die Speichersteuereinheit 122
auszugeben. Diese Daten werden dann über die CPU-Schnittstelle 121 an die CPU 110
übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T9 ein zweites
internes Leseanforderungssignal von der CPU-Schnittstelle 121. Als Antwort prüft die Speicher
steuereinheit 122 zunächst, ob die angeforderten Daten auf einer anderen, geschlossenen Seite in
der Speichereinheit 130 befindlich sind. Zu diesem Zeitpunkt wird die Speichersteuereinheit 122
jedoch, da die Speichereinheit 130 noch mit der vorherigen Leseanforderung beschäftigt ist, bis
T13 warten, und dann beginnen, nacheinander ein Precharge-Freigabesignal, ein Aktivierungs
freigabesignal und ein Lesefreigabesignal über die CMD-Datenleitung an die Speichereinheit
130 für die zweite Leseanforderung auszugeben. Als Antwort auf diese Signale öffnet die
Speichereinheit 130 zunächst die Seite, auf der die angeforderten Daten befindlich sind, und
beginnt dann, bei T19, die angeforderten Daten auszugeben. Diese Daten werden dann über die
CPU-Schnittstelle 121 an die CPU 110 übertragen. Als Antwort überprüft die Speicher
steuereinheit 122 zuerst, ob die nachgefragten Daten in einer geschlossenen Seite in der
Speichereinheit 130 vorhanden sind. Anschließend, bei T11, gibt die Speichersteuereinheit
122 für die zweite Leseanforderung nacheinander ein Vorlade-Freigabesignal, ein
Aktivierungs-Freigabesignal und ein Lesefreigabesignal an die Speichereinheit 130 aus. Als
Antwort auf diese Signale öffnet die Speichereinheit zuerst die Seite, auf der die benötigten
Daten vorhanden sind und beginnt anschließend, bei T17, die benötigten Daten auszugeben.
Des weiteren erhält die Speichersteuereinheit 122 bezüglich der dritten Leseanforderung
bei T12 von der CPU-Schnittstelle 121 das dritte interne Leseanforderungssignal. Zu
diesem Zeitpunkt wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit 130
noch mit der vorherigen Leseanforderung beschäftigt ist, warten, bis die Speichereinheit
130 den Output des dritten, durch die vorhergehende Leseanforderung angeforderten
Datenblocks, abschließt, d. h. bis T21, und dann beginnen, nacheinander ein Precharge-
Freigabesignal, ein Aktivierungsfreigabesignal und ein Lesefreigabesignal an die
Speichereinheit 130 für die dritte Leseanforderung auszugeben. Als Antwort auf diese
Signale öffnet die Speichereinheit 130 zunächst die Seite, auf der die angeforderten Daten
befindlich sind, und dann, nach einer Wartezeit von zwei Taktzyklen, nach dem Erhalt des
Lesefreigabesignals, d. h. bei T27, beginnt, die Speichereinheit 130 die vier durch die
dritte Leseanforderung angeforderten Datenblöcke über die MD-Datenleitung an die
Speichersteuereinheit 122 auszugeben. Diese Daten werden dann über die CPU-
Schnittstelle 121 an die CPU 110 übertragen.
Für Vergleichszwecke wird die vorstehende Speicherzugriffsoperation als Antwort auf die
gleichen drei Leseanforderungen von der CPU 110 nachstehend statt durch das
Speicherzugriffsteuersystem 120 durchgeführt, wobei die CPU-Schnittstelle 121 in den
Nicht-Warte-Modus geschaltet ist, um die Leistungsunterschiede zwischen den beiden
Operationsmoden zu vergleichen.
Fig. 9B zeigt das Signal-Zeitablauf-Diagramm der Speicherzugriffsoperation, die durch das
Speicherzugriffsteuersystem 120 durchgeführt wird, wenn die CPU-Schnittstelle 121 im
Nicht-Warte-Modus betrieben wird, als Antwort auf die gleichen drei Leseanforderungen
von der CPU 110, die nacheinander, bei T1, T4 und T7 über die ADS- und REQ-Daten
leitungen ausgegeben werden. Wenn die CPU-Schnittstelle 121 die erste Leseanforderung
von der CPU 110 erhält, dann gibt sie sofort, bei T3, das entsprechende interne Lesean
forderungssignal über die DADS-Datenleitung an die Speichersteuereinheit 122 aus.
Danach, wenn die CPU-Schnittstelle 121 die zweite Leseanforderung von der CPU 110
erhält, gibt sie sofort, bei T6, das entsprechende interne Leseanforderungssignal über die
DADS-Datenleitung an die Speichersteuereinheit 122 aus, ohne zu warten, bis die CPU
110 das L1-Rückschreibsignal der zweiten Leseanforderung ausgibt. Anschließend, wenn
die CPU-Schnittstelle 122 die dritte Leseanforderung von der CPU 110 erhält, gibt sie
sofort, bei T9, das entsprechende Leseanforderungssignal über die DADS-Datenleitung an
die Speichersteuereinheit 122, ohne zu warten, bis die CPU 110 das L1-Rückschreibsignal
der dritten Leseanforderung ausgibt.
Die Speichersteuereinheit 122 prüft zunächst, als Antwort auf das erste interne Lesean
forderungssignal von der CPU-Schnittstelle 121, daß die angeforderten Daten auf einer
geschlossenen Seite in der Speichereinheit 130 befindlich sind, und dann, nach zwei Takt
zyklen, d. h. bei T5, beginnt die Speichersteuereinheit 122 nacheinander ein Precharge-
Freigabesignal, ein Aktivierungsfreigabesignal und ein Lesefreigabesignal an die Speicher
einheit 130 für die erste Leseanforderung auszugeben. Als Antwort auf diese Signale öffnet
die Speichereinheit 130 zunächst die Seite, auf der die angeforderten Daten befindlich sind,
und dann, nach einer Wartezeit von zwei Taktzyklen, nach Empfang des
Lesefreigabesignals, d. h. bei T11, beginnt die Speichereinheit 130 die vier, durch die erste
Leseanforderung angeforderten Datenblöcke über die MD-Datenleitung an die Speicher
steuereinheit 122 auszugeben. Diese Daten werden dann über die CPU-Schnittstelle 121 an
die CPU 110 übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T6 das
zweite interne Leseanforderungssignal von der CPU-Schnittstelle 121 und prüft, ob die an
geforderten Daten auf einer anderen, geschlossenen Seite befindlich sind. Zu diesem
Zeitpunkt wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit 130 die Lese
operation für die vorherige Leseanforderung noch nicht beendet hat, bis T13 warten, und
dann nacheinander ein Precharge-Freigabesignal, ein Aktivierungsfreigabesignal und ein
Lesefreigabesignal über die CMD-Datenleitung an die Speichereinheit 130 für die zweite
Leseanforderung ausgeben. Als Antwort auf diese Signale öffnet die Speichereinheit 130
zunächst die Seite, auf der die angeforderten Daten befindlich sind, und beginnt dann, bei
T19, die angeforderten Daten an die Speichersteuereinheit 122 auszugeben. Diese Daten
werden dann über die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Des weiteren, bezüglich der dritten Leseanforderung, erhält die Speichersteuereinheit 122
bei T9 das dritte interne Leseanforderungssignal von der CPU-Schnittstelle 121. Zu diesem
Zeitpunkt wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit 130 noch mit
der vorhergehenden Leseanforderung beschäftigt ist, warten, bis die Speichereinheit 130
den Output des dritt 29118 00070 552 001000280000000200012000285912900700040 0002019956114 00004 28999en, durch die vorhergehende Leseanforderung angeforderten Daten
blocks abschließt, d. h. bis T21, und dann beginnen, nacheinander ein Precharge-Freigabe
signal, ein Aktivierungsfreigabesignal und ein Lesefreigabesignal an die Speichereinheit
130 für die dritte Leseanforderung auszugeben. Als Antwort auf diese Signale öffnet die
Speichereinheit 130 zunächst die Seite, auf der die angeforderten Daten befindlich sind,
und dann, nach einer Wartezeit von zwei Taktzyklen nach Empfang des
Lesefreigabesignals, d. h., bei T27, beginnt die Speichereinheit 130 die vier durch die
dritte Leseanforderung angeforderten Datenblöcke über die MD-Datenleitung an die
Speichersteuereinheit 122 auszugeben. Diese Daten werden dann über die CPU-
Schnittstelle 121 an die CPU 110 übertragen.
Beim Vergleich von Fig. 9B mit Fig. 9A ist ersichtlich, daß dann, wenn die CPU-Schnitt
stelle 121 im Warte-Modus betrieben wird, insgesamt 32 Taktzyklen erforderlich sind, um
auf die drei aufeinanderfolgenden Leseanforderungen von der CPU 110 zu antworten.
Ähnlich werden im Nicht-Warte-Modus ebenfalls 32 Taktzyklen benötigt. Es ist
offensichtlich, daß in diesem Fall der Nicht-Warte-Modus in der Speicherzugriffsleistung
dem Warte-Modus äquivalent ist.
Im Beispiel der Fig. 10A-10B wird angenommen, daß die CPU 110 nacheinander drei
Leseanforderungen an die Speichereinheit 130 ausgibt, wobei die zweite und dritte Lese
anforderung jeweils ein Cache-Hit ist, und wobei die durch die erste Leseanforderung
angeforderten Daten auf der derzeit geöffneten Seite befindlich sind und die durch die
zweite und dritte Leseanforderung angeforderten Daten auf zwei verschiedenen geschlosse
nen Seiten befindlich sind.
Fig. 10A zeigt das Signal-Zeitablauf-Diagramm der Speicherzugriffsoperation, die durch
das Speicherzugriffsteuersystem 120 durchgeführt wird, wenn die CPU-Schnittstelle 121
im Warte-Modus betrieben wird, als Antwort auf die vorstehenden drei Arten von
Leseanforderungen von der CPU 110, die nacheinander, bei T1, T4 und T7 über die ADS-
und REQ-Datenleitungen ausgegeben werden. Da die zweite und dritte Leseanforderung
jeweils ein Cache-Hit ist, wird die CPU 110 bei T8 das L1-Rückschreibsignal, das auf ein
Cache-Hit hindeutet, über die HITM-Datenleitung ausgeben, und nachfolgend, bei T14,
die Cache-Daten der zweiten Leseanforderung über die HD-Datenleitung an die CPU-
Schnittstelle 121 ausgeben, die in die Speichereinheit 130 zurückgeschrieben werden
müssen. Darüber hinaus wird die CPU 110 bei T11 das L1-Rückschreibsignal der dritten
Leseanforderung, das auf ein Cache-Hit hinweist, über die HITM-Datenleitung ausgeben
und nachfolgend, bei T19, die Cache-Daten der dritten Leseanforderung über die HD-
Datenleitung an die CPU-Schnittstelle 121 ausgeben, die in die Speichereinheit 130
zurückgeschrieben werden müssen.
Wenn die CPU-Schnittstelle 121 die erste Leseanforderung von der CPU 110 erhält, wird
angenommen, daß die erste Leseanforderung ein Cache-Hit ist, wobei sofort bei T3 das
entsprechende interne Leseanforderungssignal an die Speichersteuereinheit 122 ausgegeben
wird, ohne zu warten, bis die CPU 110 das L1-Rückschreibsignal der ersten Lese
anforderung ausgibt. Als nächstes, als Antwort auf die zweite, bei T4 ausgegebene Lesean
forderung, wird die CPU-Schnittstelle 121 statt dessen vier Taktzyklen abwarten, bis die
CPU 110 das L1-Rückschreibsignal der zweiten Leseanforderung von der HITM-Datenlei
tung ausgibt, d. h. bis T8, und dann, da das L1-Rückschreibsignal ein Cache-Hit anzeigt,
bei T9 ein internes Cache-Rückschreibanforderungssignal anstelle eines internen Lesean
forderungssignal an die Speichersteuereinheit 122 ausgeben. Als nächstes, als Antwort auf
die dritte Leseanforderung, ausgegeben bei T7, wird die CPU-Schnittstelle 121 ebenfalls
vier Taktzyklen abwarten, bis die CPU 110 das Rückschreibsignal der dritten Lesean
forderung von der HITM-Datenleitung ausgibt, d. h. bis T11, und dann, da das L1-Rück
schreibsignal ein Cache-Hit anzeigt, bei T12 ein internes Cache-Rückschreib
anforderungssignal an die Speichersteuereinheit 122 ausgeben.
Die Speichersteuereinheit 122 überprüft zunächst, als Antwort auf das erste interne Lesean
forderungssignal von der CPU-Schnittstelle 121, daß die angeforderten Daten auf der
derzeit geöffneten Seite in der Speichereinheit 130 befindlich sind, und dann, nach zwei
Taktzyklen, d. h. bei T5, beginnt die Speichersteuereinheit 122 ein Lesefreigabesignal an
die Speichereinheit 130 auszugeben. Nach einer Wartezeit von zwei Taktzyklen, d. h. bei
T7, beginnt die Speichereinheit 130, die angeforderten vier Datenblöcke über die MD-
Datenleitung an die Speichersteuereinheit 122 auszugeben. Diese Daten werden dann über
die CPU-Schnittstelle 121 an die CPU 110 übertragen.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T9 das
entsprechende interne Cache-Rückschreibanforderungssignal von der CPU-Schnittstelle
121. Als Antwort prüft die Speichersteuereinheit 122 zunächst, ob die Rückschreib-Cache-
Daten auf einer geschlossenen Seite in der Speichereinheit 130 befindlich sind und dann,
bei T10, beginnt die Speichersteuereinheit 122 nacheinander ein Precharge-Freigabesignal
und ein Aktivierungsfreigabesignal an die Speichereinheit 130 auszugeben. Als Antwort
auf diese Signale öffnet die Speichereinheit 130 zunächst die Seite, auf der die
Rückschreib-Cache-Daten ursprünglich befindlich sind, und wartet dann, bis die CPU 110
die Cache-Daten der zweiten Leseanforderung ausgibt, d. h. bei T14. Anschließend gibt sie
beim nächsten Taktzyklus, d. h. bei T4, ein Schreibfreigabesignal an die Speichereinheit
130 aus, wodurch bewirkt wird, daß die Output-Cache-Daten von der CPU 110 in die
Speichereinheit 130 zurückgeschrieben werden.
Des weiteren, bezüglich der dritten Leseanforderung, erhält die Speichersteuereinheit 122 bei
T12 das entsprechende interne Cache-Rückschreibanforderungssignal von der CPU-Schnittstelle
121. Zu diesem Zeitpunkt wird die Speichersteuereinheit 122 jedoch, da die Speichereinheit
130 noch mit der Cache-Rückschreiboperation für die vorherige Leseanforderung beschäftigt
ist, warten, bis die Speichereinheit 130 das Schreiben des dritten Blocks der Cache-Daten für
die zweite Leseanforderung abeschlossen hat, d. h. bis T17, und anschließend nacheinander
ein Precharge-Freigabesignal, ein Aktivierungsfreigabesignal und ein Schreibfreigabesignal an
die Speichereinheit 130 für die Cache-Rückschreiboperation der dritten Leseanforderung
ausgeben. Als Antwort auf diese Signale öffnet die Speichereinheit 130 zunächst die Seite, auf
der die Cache-Daten der dritten Leseanforderung ursprünglich befindlich waren, und schreibt
dann die Output-Cache-Daten von der CPU 110 zurück in die Speichereinheit 130.
Für Vergleichszwecke wird die vorstehende Speicherzugriffsoperation als Antwort auf die
gleichen drei Leseanforderungen von der CPU 110 nachstehend statt dessen durch das
Speicherzugriffsteuersystem 120 durchgeführt, wobei die CPU-Schnittstelle 121 in den Nicht-
Warte-Modus geschaltet ist, um den Leistungsunterschied zwischen den beiden Operations-Modi
zu vergleichen.
Fig. 1 OB zeigt das Signal-Zeitablauf-Diagramm der Speicherzugriffsoperation, durchgeführt
durch das Speicherzugriffsteuersystem 120, wenn die CPU-Schnittstelle 121 im Nicht-Warte-
Modus betrieben wird, als Antwort auf die gleichen drei Leseanforderungen von der CPU 110,
die nacheinander, bei T1, T4 und T7 über die ADS- und REQ-Datenleitungen ausgegeben
wwerden. Wenn die CPU-Schnittstelle 121 die erste Leseanforderung von der CPU 110 erhält,
dann gibt sie sofort, bei T3, das entsprechende interne Leseanforderungssignal über die DADS-
Datenleitung an die Speichersteuereinheit 122 aus. Danach, wenn die CPU-Schnittstelle 121
die zweite Leseanforderung von der CPU 110 erhält, gibt sie sofort, bei T6, das entsprechende
interne Leseanforderungssignal über die DADS-Datenleitung an die Speichersteuereinheit 122
aus, ohne zu warten, bis die CPU 110 das L1-Rückschreibsignal der zweiten Leseanforderung
ausgibt, und danach, wenn die CPU-Schnittstelle 121 die dritte Leseanforderung von der CPU
110 erhält, gibt sie sofort, bei T9, das entsprechende interne Leseanforderungssignal über die
DADS-Datenleitung an die Speichersteuereinheit 122 aus. Da die zweite und dritte Leseanfor
derung jeweils ein Cache-Hit ist, wird die CPU 110 ein L1-Rückschreibsignal ausgeben, der für
jede dieser Leseanforderungen einen Cache-Hit anzeigt, nachdem die entsprechenden internen
Leseanforderungssignale an die Speichersteuereinheit 122 ausgegeben wurden. Wenn die CPU-
Schnittstelle 121 das L1-Rückschreibsignal der zweiten Leseanforderung erhält, die ein Cache-
Hit anzeigt, wird sie sofort ein Lese-Stopsignal über die MDOFF-Datenleitung an die
Speichersteuereinheit 122 ausgeben, und anschließend, wenn die CPU-Schnittstelle 121 das
L1-Rückschreibsignal der dritten Leseanforderung erhält, die ein Cache-Hit anzeigt, wird sie
ebenfalls sofort ein Lese-Stopsignal über die MDOFF-Datenleitung an die Speicher
steuereinheit 122 ausgeben.
Die Speichersteuereinheit 122 prüft, als Antwort auf das erste interne Leseanforderungssignal
von der CPU-Schnittstelle 121 zunächst, ob die angeforderten Daten auf der derzeit geöffneten
Seite in der Speichereinheit 130 befindlich sind. Anschließend gibt die Speichersteuereinheit
122, bei T5, ein Lesefreigabesignal an die Speichereinheit 130 für die erste Leseanforderung
aus. Als Antwort beginnt die Speichereinheit 130 bei T7 die durch die erste Leseanforderung
angeforderten Daten über die MD-Datenleitung an die Speichersteuereinheit 122 auszugeben.
Nachdem die Speichereinheit 130 die Ausgabe des dritten, durch die erste Leseanforderung an
geforderten Datenblocks beendet hat, gibt die Speichersteuereinheit 122 nacheinander ein Pre
charge-Freigabesignal, ein Aktivierungsfreigabesignal und ein Lesefreigabesignal an die
Speichereinheit 130 für die zweite Leseanforderung aus. Als Antwort beginnt die Speicherein
heit 130 bei T15 die vier Datenblöcke, die durch die zweite Leseanforderung angefordert
wurden, auszugeben. Zu dem Zeitpunkt jedoch, zu dem die Speichereinheit 130 den letzten
Datenblock ausgibt, erhält die Speichersteuereinheit 122 das Lese-Stopsignal für die zweite
Leseanforderung von der CPU-Schnittstelle 121. Als Antwort verwirft die Speichersteuer
einheit 122 sofort die derzeit zurückgeholten Daten und gibt dann, bei T20, ein
Schreibfreigabesignal an die Speichereinheit 130 aus, was bewirkt, daß die Speichereinheit 130
die Output-Cache-Daten von der CPU 110 zurück in die Speichereinheit 130 schreibt.
Nachdem die Speichereinheit 130 das Schreiben des dritten Blocks der Cache-Daten der zweiten
Leseanforderung abgeschlossen hat, d. h. bei T22, gibt die Speichersteuereinheit 122 nacheinan
der für die nachfolgende, dritte Leseanforderung ein Precharge-Freigabesignal, ein Aktivierungs
freigabesignal und ein Lesefreigabesignal an die Speichereinheit 130 aus. Als Antwort beginnt
die Speichereinheit 130 bei T28 die vier, durch die dritte Leseanforderung angeforderten Daten
blöcke auszugeben. Zu dem Zeitpunkt jedoch, zu dem die Speichereinheit 130 den letzten
Datenblock ausgibt, erhält die Speichersteuereinheit 122 das Lese-Stopsignal für die dritte Lese
anforderung von der CPU-Schnittstelle 121. Als Antwort verwirft die Speichersteuereinheit
122 sofort die derzeit zurückgeholten Daten und gibt dann, bei T33, ein Schreibfreigabesignal an
die Speichereinheit 130, was bewirkt, daß die Speichereinheit 130 die Output-Cache-Daten von
der CPU 110 zurück in die Speichereinheit 130 schreibt.
Beim Vergleich der Fig. 10B mit Fig. 10A wird ersichtlich, daß dann, wenn die CPU-Schnitt
stelle 121 im Warte-Modus betrieben wird, insgesamt 24 Taktzyklen erforderlich sind, um auf
die drei aufeinanderfolgenden Leseanforderungen von der CPU 110 zu antworten. Im Gegensatz
dazu sind im Nicht-Warte-Modus 36 Taktzyklen erforderlich. Es ist offensichtlich, daß in diesem
Fall der Warte-Modus in der Speicherzugriffsleistung effizienter ist als der Nicht-Warte-Modus.
In den Beispielen von Fig. 11A, 11B wird angenommen, daß die CPU 110 nacheinander drei
Leseanforderungen zum Lesen von Daten aus der Speichereinheit 130 ausgibt, wobei alle
drei Leseanforderungen Cache-Hits sind und wobei die durch die erste Leseanforderung
angeforderten Daten auf der derzeit geöffneten Seite befindlich sind und die durch die zweite
und dritte Leseanforderung angeforderten Daten auf zwei verschiedenen geschlossenen
Seiten befindlich sind.
Fig. 11A zeigt das Signal-Zeitablauf-Diagramm der Speicherzugriffsoperation, durchgeführt
durch das Speicherzugriffssteuersystem 120, wenn die CPU-Schnittstelle 121 im Warte-
Modus betrieben wird, als Antwort auf die vorstehend genannten drei Arten von Leseanfor
derungen von der CPU 110, die nacheinander, bei T1, T4 und T7 über die ADS und REQ-
Datenleitungen ausgegeben werden. Als Antwort auf die vorstehend genannten drei Cache-
Hit-Leseanforderungen, die bei T1, T4 und T7 ausgegeben werden, wird die CPU 110 bei T5
beginnen, die entsprechenden L1-Rückschaltesignale der drei Leseanforderungen, die jeweils
ein Hit an den Cache-Speicher 112 anzeigen, über die HITM-Datenleitung an die CPU-
Schnittstelle 121 auszugeben, und danach, nacheinander, bei T10, T15 und T20 die entspre
chenden Cache-Daten der drei Leseanforderungen, die in die Speichereinheit 130 zurückge
schrieben werden müssen, über die HD-Datenleitung an die CPU-Schnittstelle 121
auszugeben.
Wen die CPU-Schnittstelle 121 die erste Leseanforderung von der CPU 110 erhält, wird
angenommen, daß die erste Leseanforderung kein Cache-Hit ist, wobei sofort bei T3 das
entsprechende interne Leseanforderungssignal an die Speichersteuereinheit 122 ausgegeben
wird, ohne zu warten, bis die CPU 110 das L1-Rückschreibsignal für die erste Leseanfor
derung ausgibt. Danach wird die CPU-Schnittstelle 121 bei T5 das L1-Rückschreibsignal,
das anzeigt, daß die erste Leseanforderung ein Cache-Hit ist, über die HITM-Datenleitung
von der CPU 110 erhalten. Als Antwort gibt die CPU-Schnittstelle 121 ein internes Cache-
Rückschreibanforderungssignal für die erste Leseanforderung aus.
Als nächstes, als Antwort auf die zweite Leseanforderung, ausgegeben bei T4, wird die CPU-
Schnittstelle 121 vier Taktzyklen abwarten, bis die CPU 110 das L1-Rückschreibsignal für
die zweite Leseanforderung von der HITM-Datenleitung ausgibt, d. h. bis T8, und dann, da
das L1-Rückschreibsignal einen Cache-Hit anzeigt, bei T9 ein internes Cache-Rückschreib
anforderungssignal für die zweite Leseanforderung über die DADS-Datenleitung an die
Speichersteuereinheit 122 ausgeben. Als nächstes, als Antwort auf die dritte Lesean
forderung, ausgegeben bei T7, wird die CPU-Schnittstelle 121 ebenfalls vier Taktzyklen
warten, bis die CPU 110 das L1-Rückschreibsignal für die dritte Leseanforderung von der
HITM-Datenleitung ausgibt, d. h. bis T11, und dann, da das L1-Rückschreibsignal einen
Cache-Hit anzeigt, bei T12 ein internes Cache-Rückschreibanforderungssignal für die dritte
Leseanforderung über die DADS-Datenleitung an die Speichersteuereinheit 122 ausgeben.
Die Speichersteuereinheit 122 prüft als Antwort auf das erste interne Leseanforderungssignal
von der CPU-Schnittstelle 121 zunächst, ob die angeforderten Daten auf der derzeit
geöffneten Seite in der Speichereinheit 130 befindlich sind, und dann, nach zwei Taktzyklen,
d. h. bei T5, beginnt die Speichersteuereinheit 122 ein Lese-Freigabesignal an die Speicher
einheit 130 auszugeben. Nach einer Wartezeit von zwei Taktzyklen nach Erhalt des Lese-
Freigabesignals, d. h. bei T7, beginnt die Speichereinheit 130 die angeforderten vier Daten
blöcke über die MD-Datenleitung an die Speichersteuereinheit 122 auszugeben. Da jedoch
die erste Leseanforderung ein Cache-Hit ist, wird die Speichersteuereinheit 122 später das
interne Cache-Rückschreibanforderungssignal für die erste Leseanforderung erhalten. Als
Antwort verwirft die Speichersteuereinheit 122 die derzeit zurückgeholten Daten und beginnt
dann, bei T12, ein Schreib-Freigabesignal an die Speichereinheit 130 auszugeben, was
bewirkt, daß die Speichereinheit 130 die Output-Cache-Daten von der CPU 110 zurück in die
Speichereinheit 130 schreibt.
Bezüglich der zweiten Leseanforderung erhält die Speichersteuereinheit 122 bei T9 das
interne Cache-Rückschreibanforderungssignal für die zweite Leseanforderung von der CPU-
Schnittstelle 121. Als Antwort prüft die Speichersteuereinheit 122 zunächst, ob die angefor
derten Daten auf einer geschlossenen Seite in der Speichereinheit 130 befindlich sind,
worauf die Speichersteuereinheit 122 warten wird, bis die Speichereinheit 130 das Schreiben
des dritten Blocks von Cache-Daten der vorhergeheneden Leseanforderung abgeschlossen
hat, d. h. bis T14. Anschließend wird ein Precharge-Freigabesignal, ein Aktivierungs-
Freigabesignal und ein Schreib-Freigabesignal an die Speichereinheit 130 ausgegeben. Als
Antwort auf diese Signale öffnet die Speichereinheit 130 zunächst die Seite, auf der die
Cache-Daten ursprünglich befindlich waren, und beginnt dann, die Output-Cache-Daten von
der CPU 110 zurück in die Speichereinheit 130 zu schreiben.
Des weiteren, bezüglich der dritten Leseanforderung erhält die Speichersteuereinheit 122 bei
T12 das interne Cache-Rückschreibanforderungssignal der dritten Leseanforderung von der
CPU-Schnittstelle 121. Als Antwort wird die Speichersteuereinheit 122 warten, bis die
Speichereinheit 130 das Schreiben des dritten Blocks der Cache-Daten der vorhergehenden
Leseanforderung abgeschlossen hat, d. h. bis T20, und dann beginnen, nacheinander ein
Precharge-Freigabesignal, ein Aktivierungs-Freigabesignal und ein Schreib-Freigabesignal
an die Speichereinheit 130 auszugeben. Als Antwort auf diese Signale öffnet die Speicher
einheit 130 zunächst die Seite, auf der die Cache-Daten der dritten Leseanforderung
ursprünglich befindlich waren, und beginnt dann, die Output-Cache-Daten von der CPU 110
zurück in die Speichereinheit 130 zu schreiben.
Für Vergleichszwecke wird die vorstehende Speicherzugriffsoperation als Antwort auf die
gleichen drei Leseanforderungen von der CPU 110 nachstehend statt dessen durch das
Speicherzugriffsteuersystem 120 durchgeführt, wobei die CPU-Schnittstelle 121 in den
Nicht-Warte-Modus geschaltet ist, um den Leistungsunterschied zwischen den beiden
Betriebs-Modi zu vergleichen.
Fig. 11B zeigt das Signal-Zeitablauf-Diagramm der Speicherzugriffsoperation, durchgeführt
durch das Speicherzugriffsteuersystem 120, wenn die CPU-Schnittstelle 121 im Nicht-
Warte-Modus betrieben wird, als Antwort auf die gleichen drei Leseanforderungen von der
CPU 110, die nacheinander, bei T1, T4 und T7 über die ADS und REQ-Datenleitungen
ausgegeben werden. Wenn die CPU-Schnittstelle 121 die erste Leseanforderung von der
CPU 110 erhält, dann gibt sie sofort, bei T3 das entsprechende interne Leseanforderungs
signal über die DADS-Datenleitung an die Speichersteuereinheit 122 aus. Nachfolgend,
wenn die CPU-Schnittstelle 121 die zweite Leseanforderung von der CPU 110 erhält, gibt sie
sofort, bei T6, das entsprechende interne Leseanforderungssignal über die DADS-
Datenleitung an die Speichersteuereinheit 122 aus, ohne zu warten, bis die CPU 110 das L1-
Rückschreibsignal der ersten Leseanforderung ausgibt, und als nächstes, wenn die CPU-
Schnittstelle 121 die dritte Leseanforderung von der CPU 110 erhält, gibt sie sofort, bei T9,
das entsprechende interne Leseanforderungssignal über die DADS-Datenleitung an die
Speichersteuereinheit 122 aus.
Da die drei Leseanforderungen jeweils ein Cache-Hit sind, wird jede von ihnen bewirken,
daß ein L1-Rückschreibsignal, das ein Cache-Hit anzeigt, ausgegeben wird, nachdem die
entsprechenden internen Leseanforderungssignale an die Speichersteuereinheit 122 ausgege
ben wurden. Wenn die CPU 110 das entsprechende L1-Rückschreibsignal der drei Lesean
forderungen ausgibt, wird die CPU-Schnittstelle 121 sofort die entsprechenden Lese-Stopsi
gnale bei T10, T23 bzw. T36 über die MDOFF-Datenleitung an die Speichersteuereinheit
122 ausgeben.
Die Speichersteuereinheit 122 prüft zunächst, als Antwort auf das erste interne Lesean
forderungssignal von der CPU-Schnittstelle 122, das die angeforderten Daten auf der derzeit
geöffneten Seite in der Speichereinheit 130 befindlich sind, und dementsprechend beginnt
die Speichersteuereinheit 122 bei T5 ein Lesefreigabesignal an die Speichereinheit 130
auszugeben. Als Antwort beginnt die Speichereinheit 130 bei T7 die durch die Lesean
forderung angeforderten Daten über die MD-Datenleitung an die Speichersteuereinheit 122
auszugeben. Zu dem Zeitpunkt jedoch, bei dem die Speichereinheit 130 den letzten Block der
angeforderten Daten ausgibt, erhält die Speichersteuereinheit 122 das Lese-Stopsignal für die
erste Leseanforderung von der CPU-Schnittstelle 121. Als Antwort verwirft die Speicher
steuereinheit 122 die derzeit zurückgeholten Daten und gibt dann, bei T12, ein Schreibfrei
gabesignal an die Speichereinheit 130, was bewirkt, daß die Speichereinheit 130 die Cache-
Output-Daten von der CPU 110 in die Speichereinheit 130 zurückschreibt.
Wenn die Speichereinheit 130 den dritten Block der Cache-Daten der ersten Leseanforderung
zurückschreibt, antwortet die Speichersteuereinheit 122 auf das zweite interne Lesean
forderungssignal und gibt dementsprechend nacheinander ein Precharge-Freigabesignal, ein
Aktivierungsfreigabesignal und ein Lesefreigabesignal an die Speichereinheit 120 für die
zweite Leseanforderung aus. Als Antwort beginnt die Speichereinheit 130 bei T20, die vier
Datenblöcke, die durch die zweite Leseanforderung angefordert wurden, auszugeben. Zu
dem Zeitpunkt, zu dem die Speichereinheit 130 den letzten Datenblock der angeforderten
Daten ausgibt, erhält die Speichersteuereinheit 122 jedoch das Lese-Stopsignal für die zweite
Leseanforderung von der CPU-Schnittstelle 121. Als Antwort verwirft die Speicher
steuereinheit 122 die derzeit zurückgeholten Daten und gibt dann, bei T25, ein Schreibfreiga
besignal an die Speichereinheit 130 aus, was bewirkt, daß die Speichereinheit 130 die
Output-Cache-Daten von der CPU 110 in die Speichereinheit 130 zurückschreibt.
Wenn die Speichereinheit 130 den dritten Block der Cache-Daten der zweiten Lesean
forderung zurückschreibt, d. h. bei T27, antwortet die Speichersteuereinheit 122 auf das dritte
interne Leseanforderungssignal und gibt nacheinander Precharge-Freigabesignal, ein
Aktivierungsfreigabesignal und ein Lesefreigabesignal an die Speichereinheit 130 für die
dritte Leseanforderung aus, was bewirkt, daß die Speichereinheit 130 bei T33 die vier durch
die dritte Leseanforderung angeforderten Datenblöcke ausgibt. Zu der Zeit jedoch, zu der die
Speichereinheit 130 die letzten Blöcke der angeforderten Daten ausgibt, erhält die Speicher
steuereinheit 122 das Lese-Stopsignal für die dritte Leseanforderung von der CPU-Schnitt
stelle 121. Als Antwort verwirft die Speichersteuereinheit 122 die zurückgeholten Daten und
gibt dann, bei T38, ein Schreibfreigabesignal an die Speichereinheit 130 aus, was bewirkt,
daß die Speichereinheit 130 die Output-Cache-Daten von der CPU 110 in die Speichereinheit
130 zurückschreibt.
Beim Vergleich von Fig. 11B mit Fig. 11A wird ersichtlich, daß dann, wenn die CPU-
Schnittstelle 121 im Warte-Modus betrieben wird, insgesamt 27 Taktzyklen erforderlich
sind, um auf die drei nacheinander ausgegebenen Leseanforderungen von der CPU 110 zu
antworten. Im Gegensatz dazu erfordert der Nicht-Warte-Modus erhöhte 44 Taktzyklen. Es
ist offensichtlich, daß in diesem Fall der Warte-Modus in der Speicherzugriffsleistung
effizienter ist als der Nicht-Warte-Modus.
Aus Statistiken von Computerleistung ist bekannt, daß während Speicherzugriffsvorgän
gen/operationen die CPU eine aufeinanderfolgende Serie von Cache-Miss-Lesean
forderungen während einer bestimmten Periode ausgeben würde und später eine auf
einanderfolgende Serie von Cache-Hit-Leseanforderung während einer anderen Periode. Die
Erfindung nutzt diese Eigenschaft, um ein verbessertes Verfahren und System zur Speicher
zugriffssteuerung zu liefern, das die Speicherzugriffsoperation zwischen einem Warte-
Modus und einem Nicht-Warte-Modus auf eine derartige Art und Weise schalten kann, so
daß die Speicherzugriffsoperation in den Warte-Modus geschaltet wird, wenn angenommen
wird, daß derzeit von der CPU aufeinanderfolgende Serien von Cache-Hit-Leseanforde
rungen ausgegeben werden, und in den Nicht-Warte-Modus, wenn angenommen wird, daß
derzeit von der CPU aufeinanderfolgende Serien von Cache-Miss-Leseanforderungen ausge
geben werden. Zu Beginn ist die Speicherzugriffsoperation in den Warte-Modus eingestellt
und wird in den Nicht-Warte-Modus umgeschaltet, wenn festgestellt wird, daß die Anzahl
aufeinanderfolgender Cache-Miss-Leseanforderungen einen vorbestimmten Grenzwert
erreicht.
Aus den vorhergehenden Beispielen zum Leistungsvergleich wird ersichtlich, daß die
Gesamtspeicherzugriffsleistung erhöht werden kann, indem zwischen dem Warte-Modus und
dem Nicht-Warte-Modus, basierend auf dem derzeitigen L1-Rückschreibzustand der Lese
anforderungen von der CPU gewechselt wird. Dies unterstützt eine Verbesserung der
Gesamtsystemleistung des Computersystems.
Die Erfindung wurde unter Verwendung beispielhafter, bevorzugter Ausführungsformen
beschrieben. Es sollte jedoch klar sein, daß die Breite der Erfindung nicht auf die offenbarten
Ausführungsformen beschränkt ist. Im Gegenteil sollen die verschiedenen Modifikationen
und ähnliche Anordnungen eingeschlossen werden. Die Ansprüche sollten daher
breitestmöglich interpretiert werden, um alle derartigen Modifikationen und ähnliche
Anordnungen einzuschließen.
Claims (7)
1. Steuersystem zur Steuerung des Speicherzugriffs durch eine CPU auf eine Speicher
einheit, wobei die CPU zu jedem Zeitpunkt, zu dem die CPU Daten von der Speicher
einheit lesen soll, mehrere Leseanforderungen ausgeben kann und weiter, nach einer
ersten Zeitverzögerung nach Ausgabe der derzeitigen Leseanforderung, ein L1-Rück
schreibsignal, das anzeigt, ob die derzeitige Leseanforderung im Cache-Speicher ein Hit
oder ein Miss ist, ausgeben kann, und dann, wenn das L1-Rückschreibsignal der
derzeitigen Leseanforderung einen Cache-Hit anzeigt, eine Cache-Rückschreiban
forderung ausgeben kann, um einen Cache-Rückschreibvorgang auszuführen, um die
Output-Cache-Daten von der CPU nach einer zweiten Zeitverzögerung nach Ausgabe des
L1-Rückschreibsignals, zurück in die Speichereinheit zu schreiben, wobei das Speicher
zugriffsteuersystem umfaßt:
- a) eine CPU-Schnittstelle, die mit der CPU verbunden ist und selektiv geschaltet werden kann, zum Betrieb zwischen einem Warte-Modus und einem Nicht-Warte- Modus, wobei im Warte-Modus die CPU-Schnittstelle auf jede Lese-Anforderung von der CPU derart antwortet, daß sie abwartet, bis das L1-Rückschreibsignal der derzeitigen Leseanforderung erhalten wird, und dann ein entsprechendes internes Leseanforderungssignal ausgibt, wenn das L1-Rückschreibsignal ein Cache-Miss anzeigt, oder ein entsprechendes internes Cache-Rückschreibanforderungssignal, wenn das L1-Rückschreibsignal ein Cache-Hit anzeigt, und die CPU-Schnittstelle im Nicht-Warte-Modus auf jede Leseanforderung von der CPU derart antwortet, daß die CPU-Schnittstelle das entsprechende interne Leseanforderungssignal sofort ausgibt, ohne zu warten, bis die CPU das L1-Rückschreibsignal der derzeitigen Leseanforderung ausgibt, und dann, wenn das nachfolgend ausgegebene L1-Rück schreibsignal der derzeitigen Leseanforderung einen Cache-Hit anzeigt, sofort ein Lese-Stopsignal für die derzeitige Leseanforderung ausgibt,
- b) eine Speichersteuereinheit, die zwischen die CPU-Schnittstelle und die Speicher einheit geschaltet ist und als Antwort auf jedes interne Leseanforderungssignal von der CPU-Schnittstelle eine Leseoperation in der Speichereinheit durchführen kann, und weiter als Antwort auf das Lese-Stopsignal die derzeit von der Speichereinheit zurückgeholten, durch die derzeitige Leseanforderung angeforderten Daten verwerfen kann, und dann eine Cache-Rückschreibvorgang auszuführen kann, um die nachfolgenden Output-Cache-Daten von der CPU in die Speichereinheit zurück zuschreiben, und
- c) eine Modus-Umschalteinheit, die zwischen die CPU-Schnittstelle und die CPU ge schaltet und anfangs derart eingestellt ist, daß sie die CPU-Schnittstelle im Warte- Modus betreibt und weiter feststellen kann, ob jede Leseanforderung von der CPU ein Cache-Hit oder ein Cache-Miss ist, und die Anzahl aufeinanderfolgender Cache- Miss-Leseanforderungen zählen kann, um damit die CPU-Schnittstelle in den Nicht-Warte-Modus umzuschalten, wenn die Anzahl einen vorbestimmten Grenzwert erreicht.
2. System nach Anspruch 1, wobei die Speichereinheit eine SDRAM ist.
3. System nach Anspruch 1, worin das Lese-Stopsignal während der Zeit ausgegeben wird,
während der die Speichersteuereinheit für die derzeitige Leseanforderung an der
Speichereinheit einen Lesevorgang durchführt.
4. Speicherzugriffssteuerverfahren zur Steuerung des Speicherzugriffvorgangs durch eine CPU
auf eine Speichereinheit, wobei die CPU zu jedem Zeitpunkt, zu dem die CPU Daten von
der Speichereinheit lesen soll, mehrere Leseanforderungen ausgeben kann und weiter, nach
einer ersten Zeitverzögerung nach Ausgabe der derzeitigen Leseanforderung, ein L1-Rück
schreibsignal, das anzeigt, ob die derzeitige Leseanforderung im Cache-Speicher ein Hit
oder ein Miss ist, ausgeben kann, und dann, wenn das L1-Rückschreibsignal der derzeitigen
Leseanforderung einen Cache-Hit anzeigt, eine Cache-Rückschreibanforderung ausgeben
kann, um einen Cache-Rückschreibvorgang auszuführen, um die Output-Cache-Daten von
der CPU nach einer zweiten Zeitverzögerung nach Ausgabe des L1-Rückschreibsignals,
zurück in die Speichereinheit zu schreiben, wobei das Speicherzugriffssteuerverfahren
umfaßt:
- 1. Durchführen eines Modus-Umschaltverfahrens, um das Speicherzugriffsverfahren zwischen einem Warte-Modus und einem Nicht-Warte-Modus umzuschalten, wobei der Speicherzugriffsvorgang zu der Zeit, während der die derzeit ausgegebenen Leseanfor derungen jeweils Cache-Hits sind, in den Warte-Modus geschaltet ist und in den Nicht- Warte-Modus, wenn die derzeit ausgegebenen Leseanforderungen jeweils Cache-Miss sind,
- 2. Antworten im Warte-Modus auf jede Leseanforderung von der CPU, bis die CPU das L1-Rückschreibsignal der derzeitigen Leseanforderung ausgibt, und
- 3. Sofortiges Antworten im Nicht-Warte-Modus auf jede Leseanforderung von der CPU, ohne zu warten, bis die CPU das L1-Rückschreibsignal der derzeitigen Leseanforderung ausgibt.
5. Verfahren nach Anspruch 4, worin Schritt (1) die Unterschritte umfaßt:
- 1. (1-1) Anfängliches Einstellen der Speicherzugriffsoperation in den Warte-Modus;
- 2. (1-2) wenn die Anzahl aufeinanderfolgender Cache-Miss-Leseanforderungen von der CPU einen vorbestimmte Grenzewert erreicht, Schalten der Speicherzugriffsoperation in den Nicht-Warte-Modus und danach, wenn eine Cache-Hit Lese-Anforderung von der CPU ausgegeben wird, sofortiges Rückschalten der Speicherzugriffsoperation in den Warte-Modus.
6. Verfahren nach Anspruch 5, worin Schritt (2) die Unterschritte umfaßt:
- 1. (2-1) Warten, bis das L1-Rückschreibsignal der derzeitigen Leseanforderung ausgegeben wird,
- 2. (2-2) Überprüfen, ob das L1-Rückschreibsignal der derzeitigen Leseanforderung einen Cache-Hit oder ein Cache-Miss andeutet,
- 3. (2-3) Durchführen einer Leseoperation für die derzeitige Leseanforderung, wenn das L1-Rückschreibsignal der derzeitigen Leseanforderung einen Cache-Miss anzeigt, und
- 4. (2-4) Durchführen einer Cache-Rückschreiboperation, wenn das L1-Rückschreibsignal der derzeitigen Leseanforderung einen Cache-Hit anzeigt.
7. Verfahren nach Anspruch 6, worin der Schritt (3) die Unterschritte umfaßt:
- 1. (3-1) Sofortiges Durchführen einer Leseoperation für die derzeitige Leseanforderung, ohne zu warten, bis die CPU das L1-Rückschreibsignal der derzeitige Leseanforderung ausgibt, und
- 2. (3-2) wenn das nachfolgend ausgegebene L1-Rückschreibsignal der derzeitigen Lese anforderung einen Cache-Hit anzeigt, sofortiges Ausgeben eines Lese-Stopsignal für die derzeitige Leseanforderungum die derzeit aus der Speichereinheit zurückgeholten Daten zu verwerfen, und dann Ausführen einer Cache-Rückschreiboperation, um nachfolgend die Output-Cache-Daten von der CPU in die Speichereinheit zurückzuschreiben.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW088103134A TW410295B (en) | 1999-03-02 | 1999-03-02 | Memory access control device |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19956114A1 true DE19956114A1 (de) | 2000-09-07 |
Family
ID=21639825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19956114A Ceased DE19956114A1 (de) | 1999-03-02 | 1999-11-22 | Verfahren und System zur Steuerung des Speicherzugriffs durch eine zentrale Verarbeitungseinheit in einem Computersystem |
Country Status (3)
Country | Link |
---|---|
US (2) | US6405288B1 (de) |
DE (1) | DE19956114A1 (de) |
TW (1) | TW410295B (de) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW411412B (en) * | 1999-03-02 | 2000-11-11 | Via Tech Inc | Memory access control device and its operation |
US8001332B2 (en) * | 2008-04-30 | 2011-08-16 | Siemens Aktiengesellschaft | Adaptive caching for high volume extract transform load process |
WO2010087310A1 (ja) * | 2009-01-28 | 2010-08-05 | 日本電気株式会社 | キャッシュメモリおよびその制御方法 |
US9959206B2 (en) | 2015-05-19 | 2018-05-01 | Toshiba Memory Corporation | Memory system and method of controlling cache memory |
FR3045183B1 (fr) * | 2015-12-15 | 2018-01-19 | Commissariat Energie Atomique | Procede de prediction d'une donnee a precharger dans une memoire cache |
US10650899B2 (en) * | 2017-04-27 | 2020-05-12 | Everspin Technologies, Inc. | Delayed write-back in memory with calibration support |
US11301403B2 (en) * | 2019-03-01 | 2022-04-12 | Micron Technology, Inc. | Command bus in memory |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2845946B2 (ja) * | 1989-06-14 | 1999-01-13 | 株式会社日立製作所 | 画像データ変換装置 |
US5490261A (en) * | 1991-04-03 | 1996-02-06 | International Business Machines Corporation | Interlock for controlling processor ownership of pipelined data for a store in cache |
US5572703A (en) * | 1994-03-01 | 1996-11-05 | Intel Corporation | Method and apparatus for snoop stretching using signals that convey snoop results |
US5634112A (en) * | 1994-10-14 | 1997-05-27 | Compaq Computer Corporation | Memory controller having precharge prediction based on processor and PCI bus cycles |
US5699548A (en) * | 1995-06-01 | 1997-12-16 | Intel Corporation | Method and apparatus for selecting a mode for updating external memory |
US5710906A (en) * | 1995-07-07 | 1998-01-20 | Opti Inc. | Predictive snooping of cache memory for master-initiated accesses |
US5963721A (en) * | 1995-12-29 | 1999-10-05 | Texas Instruments Incorporated | Microprocessor system with capability for asynchronous bus transactions |
-
1999
- 1999-03-02 TW TW088103134A patent/TW410295B/zh not_active IP Right Cessation
- 1999-08-10 US US09/371,700 patent/US6405288B1/en not_active Expired - Lifetime
- 1999-11-22 DE DE19956114A patent/DE19956114A1/de not_active Ceased
-
2001
- 2001-12-28 US US10/034,324 patent/US6564300B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US20020056028A1 (en) | 2002-05-09 |
TW410295B (en) | 2000-11-01 |
US6405288B1 (en) | 2002-06-11 |
US6564300B2 (en) | 2003-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60204687T2 (de) | Speicherkopierbefehl mit Angabe von Quelle und Ziel, der in der Speichersteuerung ausgeführt wird | |
DE4237417C2 (de) | Datenverarbeitungssystem | |
DE10316725B4 (de) | Datenverwaltungsverfahren für ein Distributed Shared Memory-System | |
DE60010674T2 (de) | Hochgeschwindigkeits-prozessorsystem, verfahren zu dessen verwendung und aufzeichnungsmedium | |
DE19983687B4 (de) | Verarbeitung geordneter Datenanforderungen an einen Speicher | |
DE19983589B4 (de) | Hochfrequenz-Pipeline-Entkopplungswarteschlangengestaltung | |
DE69814137T2 (de) | Cache-speicherbetrieb | |
DE4335475A1 (de) | Datenverarbeitungseinrichtung mit Cache-Speicher | |
DE102006046417A1 (de) | Datenverarbeitungssystem und Verfahren zum Extrahieren von Daten aus einem OneNAND-Flash-Speicher in ein RAM-Speicherbauelement | |
DE102007059927A1 (de) | Verfahren zum Übertragen von Daten in einem Speichersystem und Speichersystem | |
DE60008148T2 (de) | System und verfahren zum abrollen von schleifen in einem trace-cache | |
WO2005091131A2 (de) | Computersystem zur elektronischen datenverarbeitung | |
DE4213073A1 (de) | Cache-steuergeraet und verfahren zur auswahl eines pfades eines cache-verzeichnisses bei einem zeilen-fuell-zyklus | |
DE69831775T2 (de) | Verarbeitungsvorrichtung für zerteilte Schreibdaten in Speichersteuerungseinheiten | |
DE19945993B4 (de) | Plattenschreibvollendungssystem | |
DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
DE102015203202B4 (de) | Speicher-Subsystem mit auf ein Wrapped-Lesen folgendem kontinuierlichen Lesen | |
DE19526008A1 (de) | Vertikal partitionierter, primärer Befehls-Cache-Speicher | |
EP1079307B1 (de) | Verfahren zum Betrieb eines Speichersystems sowie Speichersystem | |
DE19908618A1 (de) | Gemeinsam genutzter Hochleistungscachespeicher | |
DE19956114A1 (de) | Verfahren und System zur Steuerung des Speicherzugriffs durch eine zentrale Verarbeitungseinheit in einem Computersystem | |
EP0075714B1 (de) | Onchip Mikroprozessorcachespeicher und Verfahren zu seinem Betrieb | |
DE10084982B4 (de) | Steuern einer Burst-Sequenz in synchronen Speichern | |
DE60130300T2 (de) | Bus, der auf einer Flanke eines Taktsignals abtastet und auf der anderen Flanke treibt | |
DE2530599C2 (de) | Verfahren und Schaltungsanordnung zur Steuerung von Ein-/Ausgabe-Geräten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8131 | Rejection |