[go: up one dir, main page]

DE19957612A1 - Verfahren und System zur Speicherzugriffsverwaltung für Synchronous Dynamic Random-Access Memories oder dergleichen - Google Patents

Verfahren und System zur Speicherzugriffsverwaltung für Synchronous Dynamic Random-Access Memories oder dergleichen

Info

Publication number
DE19957612A1
DE19957612A1 DE19957612A DE19957612A DE19957612A1 DE 19957612 A1 DE19957612 A1 DE 19957612A1 DE 19957612 A DE19957612 A DE 19957612A DE 19957612 A DE19957612 A DE 19957612A DE 19957612 A1 DE19957612 A1 DE 19957612A1
Authority
DE
Germany
Prior art keywords
page directory
page
unit
stored
memory
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
Application number
DE19957612A
Other languages
English (en)
Inventor
Jiin Lai
Chih-Kuo Kao
Chia-Hsin Chen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Via Technologies Inc filed Critical Via Technologies Inc
Publication of DE19957612A1 publication Critical patent/DE19957612A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list

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)
  • Memory System (AREA)

Abstract

Geliefert wird ein Verfahren und ein System 100 zur Speicherzugriffsverwaltung zur Verwendung mit einem SDRAM (Synchronous Dynamic Random-Access Memory) 220 oder dergleichen, zum Zweck der Erhöhung der Performanz von Speicherzugriffen auf den SDRAM 220 mittels Verfolgens der Speicherzugriffs-Geschichte vorangehender Zugriffsoperationen. Das System 100 zur Speicherzugriffsverwaltung weist eine Seitenverzeichnis-Register-Einheit 120 mit einem Seitenverzeichnis 125 zum Abspeichern einer vorbestimmten Anzahl von Speicherplätzen in der Speichereinheit, auf welche Speicherplätze kürzlich zugegriffen worden ist, auf. Weiter weist das System 100 zur Speicherzugriffsverwaltung eine Vergleichseinheit 110 auf, die vermag, in Reaktion auf jede Zugriffsanfrage an die Speichereinheit, zu überprüfen, ob der angefragte Speicherplatz ein Treffer bezüglich eines im Seitenverzeichnis 125 der Seitenverzeichnis-Register-Einheit 120 abgespeicherten Speicherplatzes ist. Mit der Seitenverzeichnis-Register-Einheit 120 ist zum Überwachen der in der Seitenverzeichnis-Register-Einheit 120 abgespeicherten am längsten-unbenutzt-Einträge LRU eine Ausnutzungsraten-Register-Einheit 130 gekoppelt; und außerdem ist mit der Seitenverzeichnis-Register-Einheit 120 zum Überprüfen, ob die im Seitenverzeichnis 125 der Seitenverzeichnis-Register-Einheit 120 abgespeicherten Adreßdaten gültig oder ungültig sind, eine Gültigkeitsprüfeinheit 140 gekoppelt.

Description

Die Erfindung betrifft Computerspeicherverwaltung und ins­ besondere ein Verfahren und ein System zur Speicherzugriffs­ verwaltung, welche zur Verwendung mit einem SDRAM (Synchronous Dynamic Random-Access Memory) oder dergleichen bestimmt sind, zum Zweck der Erhöhung der Leistungsfähigkeit des Speicherzu­ griffs auf den SDRAM mittels Verfolgens der Speicherzugriffs­ geschichte vorhergehender Zugriffsoperationen.
Bei einem Computersystem wird eine Haupteinheit zum Steuern der Zugriffsoperationen, ob Lesen oder Schreiben, auf den Haupt­ speicher des Computersystems verwendet. Im allgemeinen ist der Speicherzugriff auf einige spezielle Segmente, und nicht auf alle Segmente des Hauptspeichers konzentriert; mit anderen Wor­ ten wird auf manche Segmente im Vergleich zu anderen am öfte­ sten zugegriffen. Beim Entwurf von Speicherzugriffs-Verwal­ tungssystemen ist das Hauptaugenmerk auf die Reduzierung von Overhead und Latenz gerichtet.
Der SDRAM (Synchronous Dynamic Random-Access Memory) ist eine neue Art von Speichervorrichtung. Jede SDRAM-Einheit ist typi­ scherweise in vier Subbänke unterteilt, wobei jede Subbank eine Anzahl von Seiten aufweist, von denen nur eine zur selben Zeit geöffnet sein kann. Mit anderen Worten können in jeder SDRAM- Einheit höchstens 4 Seiten auf einmal geöffnet sein. Herkömmli­ cherweise ist jede Subbank mit einer Speichersteuerungs-Einheit zum Verwalten der Seiten in der Subbank verbunden. Daher werden für jede SDRAM-Einheit 4 Speichersteuerungs-Einheiten benötigt. Dieses Konzept der Seitenverwaltung hat jedoch die folgenden Nachteile.
Erstens wird in dem Fall, wenn ein Speicherslot unbenutzt ist oder mit einer SDRAM-Einheit mit nur zwei Subbänken besetzt ist, nicht vollständig davon Gebrauch gemacht, daß vier Spei­ chersteuerungs-Einheiten vorgesehen sind, weshalb deren Verwen­ dung kostenineffizient ist.
Zweitens ist, wenn ein VC-SDRAM (Virtual Channel SDRAM) verwen­ det wird, da jede VC-SDRAM-Einheit nur 16 Kanäle zu liefern vermag, bei 4 bereitgestellten Speichersteuerungs-Einheiten nur die Benutzbarkeit von 4 der 16 Kanäle gewährleistet, und die anderen 12 Kanäle bleiben unbenutzt. Eine Lösung für dieses Problem ist das Bereitstellen von 16 Speichersteuerungs-Ein­ heiten für jede VC-SDRAM-Einheit. Bei dieser Lösung wäre jedoch zum Integrieren aller 16 Speichersteuerungs-Einheiten eine sehr große Fläche für das Schaltkreislayout erforderlich, weshalb diese Lösung vergleichsweise kostenineffizient ist. Außerdem würde die Verwendung von 16 Speichersteuerungs-Einheiten große Verzögerungen bei Zugriffsoperationen verursachen, weshalb dies für die Verwendung bei Hochgeschwindigkeits-Computersystemen nicht geeignet ist.
Daher besteht ein Bedarf an einem neuen Verfahren und einem neuen System zur Speicherzugriffsverwaltung, die mit verschie­ denen Sorten von Speichervorrichtungen, inklusive SDRAM, VC- SDRAM und EDO-DRAM verwendbar sind.
Deshalb ist es ein Ziel der Erfindung, zum Zweck einer Erhöhung der Performanz von Speicherzugriffen auf einen SDRAM ein neues Verfahren und ein neues System zur Computerspeicherzugriffsver­ waltung, welche zur Verwendung mit einem solchen SDRAM oder dergleichen vorgesehen sind, zu liefern.
In Übereinstimmung mit den vorangehenden und weiteren Zielen der Erfindung werden ein neues Verfahren und ein neues System zur Computerspeicherzugriffsverwaltung geliefert.
Das Speicherseitenverwaltungssystem gemäß der Erfindung weist eine Vergleichseinheit, eine Seitenverzeichnis-Register-Ein­ heit, eine Ausnutzungsraten-Register-Einheit und eine Gültig­ keitsprüfeinheit auf.
Die Seitenverzeichnis-Register-Einheit weist ein Seitenver­ zeichnis zum Abspeichern einer vorbestimmten Anzahl von Spei­ cherplätzen, auf die kürzlich zugegriffen worden ist, in die Speichereinheit auf, wobei jeder abgespeicherte Speicherplatz zusammen mit einem am längsten-unbenutzt-Bericht (Least-recent­ ly-used-record, LRU), der anzeigt, ob auf den abgespeicherten Speicherplatz am längsten nicht zugegriffen worden ist, abge­ speichert wird.
Die Vergleichseinheit vermag, in Reaktion auf jede Zugriffsan­ frage an die Speichereinheit, zu überprüfen, ob der angefragte Speicherplatz ein Treffer auf einen im Seitenverzeichnis der Seitenverzeichnis-Register-Einheit abgespeicherten Speicher­ platz ist; wobei die Vergleichseinheit im Fall eines Treffers ein Treffersignal erzeugt.
Die Ausnutzungsraten-Register-Einheit ist zum Überwachen der in der Seitenverzeichnis-Register-Einheit abgespeicherten am läng­ sten-unbenutzt-Einträge mit der Seitenverzeichnis-Register-Ein­ heit gekoppelt; und die Gültigkeitsprüfeinheit ist zum Überprü­ fen, ob die im Seitenverzeichnis der Seitenverzeichnis-Regi­ ster-Einheit abgespeicherten Adreßdaten gültig oder ungültig sind, mit der Seitenverzeichnis-Register-Einheit gekoppelt.
Die Seitenverzeichnis-Register-Einheit weist auf: eine mit der Vergleichseinheit gekoppelte Auffangschaltung (Latch-Schaltung) zum Zwischenspeichern der Ausgangssignale der Vergleichsein­ heit, die angeben, ob der angefragte Speicherplatz einen Tref­ fer im Seitenverzeichnis darstellt; und eine mit der Auffang­ schaltung, der Ausnutzungsraten-Register-Einheit und der Gül­ tigkeitsprüfeinheit gekoppelte Auswahlschaltung zum Auswählen eines der abgespeicherten Speicherplätze aus dem Seitenver­ zeichnis auf Grundlage der Ausgangssignale der Auffangschal­ tung, der Ausnutzungsraten-Register-Einheit und der Gültig­ keitsprüfeinheit.
Das Seitenverzeichnis weist ferner eine Vielzahl von Gültig­ keitsbits auf, von denen ein jedes einem der in dem Seitenver­ zeichnis abgespeicherten Speicherplätze zugeordnet ist, wobei das Gültigkeitsbit anzeigt, ob der zugeordnete Speicherplatz gültig oder ungültig ist. Jedes Gültigkeitsbit wird durch die Vergleichseinheit gesetzt und aktualisiert.
Jeder am längsten-unbenutzt-Bericht ist durch einen numerischen Wert in einem vorbestimmten Zahlenbereich dargestellt, wobei der kleinste Wert anzeigt, daß auf den zugeordneten Speicher­ platz zuletzt zugegriffen worden ist, und wobei der höchste Wert anzeigt, daß auf den zugeordneten Speicherplatz am läng­ sten nicht zugegriffen worden ist. Der am längsten-unbenutzt- Eintrag in Verbindung mit jedem abgespeicherten Speicherplatz des Seitenverzeichnisses wird durch die Ausnutzungsraten- Register-Einheit gesetzt und aktualisiert.
In dem Fall, daß die aktuelle Zugriffsanfrage ein Fehltreffer im Seitenverzeichnis ist, wird der Speicherplatz der aktuellen Zugriffsanfrage als Ersatz für denjenigen, dessen am längsten- unbenutzt-Eintrag den höchsten Wert aufweist, verwendet; und bevor der Speicherplatz der aktuellen Zugriffsanfrage denjeni­ gen ersetzt, dessen am längsten-unbenutzt-Eintrag den höchsten Wert aufweist, überprüft die Gültigkeitsprüfeinheit, ob das zu­ gehörige Gültigkeitsbit gesetzt ist, so daß es Gültigkeit an­ zeigt; falls JA, wird ein Wiederherstellungssignal erzeugt, so daß am entsprechenden Speicherplatz der ursprüngliche Zustand wiederhergestellt wird.
Gemäß einem weiteren Aspekt der Erfindung weist das System zur Speicherseitenverwaltung eine Seitenverzeichnis-Register-Ein­ heit mit einem Seitenverzeichnis zum Abspeichern einer vorbe­ stimmten Anzahl von Speicherplätzen der Speichereinheit, auf die kürzlich zugegriffen worden ist, auf, wobei jeder abgespei­ cherte Speicherplatz eine Bankadresse und eine Seitenadresse aufweist, und wobei jeder abgespeicherte Speicherplatz zusammen mit einem am längsten-unbenutzt-Eintrag und einem Gültigkeits­ bit abgespeichert wird, wobei der am längsten-unbenutzt-Eintrag anzeigt, ob die zugehörige Speicherzelle am längsten unbenutzt ist, und wobei das Gültigkeitsbit angibt, ob der zugehörige Speicherplatz gültig oder ungültig ist; und wobei jeder am längsten-unbenutzt-Eintrag durch einen numerischen Wert aus einem vorbestimmten Zahlenbereich dargestellt ist, wobei der kleinste Wert anzeigt, daß auf den zugehörigen Speicherplatz zuletzt zugegriffen worden ist, und wobei der höchste Wert an­ gibt, daß auf den zugehörigen Speicherplatz am längsten nicht zugegriffen worden ist. Weiter weist das System zur Speicher­ seitenverwaltung eine Vergleichseinheit auf, die dazu fähig ist, in Reaktion auf jede Zugriffsanfrage an die Speicherein­ heit, zu überprüfen, ob der angefragte Speicherplatz ein Bank­ treffer oder ein Seitentreffer bezüglich eines der im Seiten­ verzeichnis der Seitenverzeichnis-Register-Einheit abgespei­ cherten Speicherplätze ist; wobei die Vergleichseinheit bei einem Banktreffer ein Banktreffersignal und bei einem Seiten­ treffer ein Seitentreffersignal erzeugt. Außerdem ist mit der Seitenverzeichnis-Register-Einheit zum Überwachen der in der Seitenverzeichnis-Register-Einheit abgespeicherten am längsten- unbenutzt-Einträge eine Ausnutzungsraten-Register-Einheit ver­ bunden, die im Fall eines Seitenfehltreffers und eines Bank­ fehltreffers im Seitenverzeichnis vermag, denjenigen der im Seitenverzeichnis abgespeicherten Speicherplätze, auf den am längsten nicht zugegriffen worden ist, durch den Speicherplatz der aktuellen Zugriffsanfrage zu ersetzten; und ist mit der Seitenverzeichnis-Register-Einheit zum Überprüfen, ob die im Seitenverzeichnis der Seitenverzeichnis-Register-Einheit abge­ speicherten Adreßdaten gültig oder ungültig sind, eine Gültig­ keitsprüfeinheit gekoppelt.
Gemäß einem weiteren Aspekt liefert die Erfindung ein Verfahren zur Speicherseitenverwaltung, welches die Schritt aufweist: (1) Bereitstellen eines Seitenverzeichnisses zum Abspeichern einer vorbestimmten Anzahl von Speicherplätzen, auf die kürzlich zu­ gegriffen worden ist, in der Speichereinheit, wobei jede abge­ speicherte Speichereinheit zusammen mit einem am längsten-unbe­ nutzt-Eintrag und einem Gültigkeitsbit abgespeichert wird, wo­ bei der am längsten-unbenutzt-Eintrag anzeigt, ob der zugehö­ rige Speicherplatz am längsten unbenutzt ist, und wobei das Gültigkeitsbit angibt, ob der zugehörige Speicherplatz gültig oder ungültig ist; (2) in Reaktion auf eine Zugriffsanfrage Vergleichen des angefragten Speicherplatzes mit dem im Seiten­ verzeichnis abgespeicherten Speicherplatzdaten, um auf Überein­ stimmung hin zu überprüfen; falls Übereinstimmung besteht, Er­ zeugen eines Treffersignals; wogegen falls nicht, Ersetzen des­ jenigen der im Seitenverzeichnis abgespeicherten Speicherplät­ ze, auf den am längsten nicht zugegriffen worden ist, durch den Speicherplatz der aktuellen Zugriffsanfrage; und (3) Überprü­ fen, ob das zugehörige Gültigkeitsbit des Speicherplatztes, auf den am längsten nicht zugegriffen worden ist, gesetzt ist, so daß Gültigkeit angezeigt wird; falls JA, Erzeugen eines Wieder­ herstellungssignals, so daß am entsprechenden Speicherplatz der ursprüngliche Zustand wiederhergestellt wird.
Verfahren und System zur Speicherzugriffsvewaltung gemäß der Erfindung haben die folgenden Vorteile. Erstens ist dadurch durch ein Verfolgen der Geschichte vorangehender Zugriffsopera­ tionen auf den SDRAM ein Erhöhen der Speicherzugriffs-Perfor­ manz möglich. Zweitens ist dadurch im voraus abschätzbar, ob der nächste pipelined Zugriff ein Vorladen erfordert oder nicht; falls JA, wird zu dem Zeitpunkt, zu dem der aktuelle Zu­ griff abgewickelt wird, ein Vorladefreigabesignal ausgegeben. Folglich kann die Zugriffsverzögerung reduziert werden. Insge­ samt ist die Speicherzugriffs-Performanz erhöht.
Die Erfindung wird aus der folgenden detaillierten Beschreibung und den bevorzugten Ausführungsformen, wobei Bezug auf die Zeichnung genommen wird, noch verständlicher, wobei in der Zeichnung:
Fig. 1 ein schematisches Blockdiagramm zeigt, das die grundle­ gende Hardwarekonfiguration von Verfahren und System zur Spei­ cherzugriffsverwaltung gemäß der Erfindung veranschaulicht;
Fig. 2 ein schematisches Diagramm zeigt, das ein Beispiel eines bei dem Speicherzugriffs-Verwaltungssystems aus Fig. 1 verwen­ deten Seitenverzeichnisses veranschaulicht;
Fig. 3 ein schematisches Blockdiagramm zeigt, das die detail­ liertere innere Architektur der bei dem System zur Speicher­ zugriffsverwaltung aus Fig. 1 verwendeten Vergleichseinheit veranschaulicht.
Fig. 4 ein schematisches Blockdiagramm zeigt, das die detail­ liertere innere Architektur der bei dem System zur Speicher­ zugriffsverwaltung aus Fig. 1 verwendeten Seitenverzeichnis- Register-Einheit veranschaulicht;
Fig. 5A ein schematisches Blockdiagramm zeigt, das die detail­ liertere innere Architektur der bei dem System zur Speicher­ zugriffsverwaltung aus Fig. 1 verwendeten Ausnutzungsraten- Register-Einheit veranschaulicht;
Fig. 5B ein schematisches Blockdiagramm zeigt, daß die Ein­ gangs-/Ausgangs-Konfiguration der beim System zur Speicher­ zugriffsverwaltung aus Fig. 1 verwendeten Gültigkeitsprüfein­ heit veranschaulicht;
Fig. 6 ein Flußdiagramm zeigt, das die bei dem Verfahren gemäß der Erfindung auftretenden Prozedurschritte veranschaulicht;
Fig. 7A bis 7G Tabellen mit beispielhaften Daten zeigen, die im beim System zur Speicherzugriffsverwaltung aus Fig. 1 in Reak­ tion auf eine Folge von Zugriffsanfragen verwendeten Seitenver­ zeichnis abgespeichert sind;
Fig. 8A bis 8D Signalfolge-Diagramme zeigen, in denen die Zeit­ abfolge zwischen verschiedenen Signalen des erfindungsgemäßen Systems zur Speicherzugriffsverwaltung veranschaulicht ist; und
Fig. 9A bis 9B Signalfolge-Diagramme zeigen, in denen die Zeit­ abfolge zwischen verschiedenen Signalen des erfindungsgemäßen Systems zur Speicherzugriffsverwaltung veranschaulicht sind.
Die Erfindung liefert ein Verfahren und ein System zur Spei­ cherzugriffsverwaltung, wobei ein Seitenverzeichnis zum Ver­ folgen der Geschichte vorhergehender Zugriffsoperationen auf eine Speichereinheit, zum Beispiel ein SDRAM oder dergleichen, durch ein Registrieren der Adreßdaten der vorangehenden Zu­ griffsanfragen verwendet wird. In Reaktion auf jede nachfol­ gende Zugriffsanfrage wird das Seitenverzeichnis zuerst darauf überprüft, ob die aktuell angefragte Speicheradresse auf ein im Seitenverzeichnis registriertes Adreßdatum zutrifft. Dieses Konzept vermag dazu beizutragen, die Seitentrefferrate in der Speichereinheit zu erhöhen, so daß die gesamte Zugriffs-Perfor­ manz der Speichereinheit erhöht ist.
Das in Fig. 1 gezeigte schematische Blockdiagramm veranschau­ licht die grundlegende Konfiguration der Hardwareimplementie­ rung des Verfahrens und des Systems zur Speicherzugriffsver­ waltung gemäß der Erfindung. Wie gezeigt, weist das hier mit dem Bezugszeichen 100 bezeichnete erfindungsgemäße System zur Speicherzugriffsverwaltung auf: eine Vergleichseinheit 110, eine Seitenverzeichnis-Register-Einheit 120, eine Ausnutzungs­ raten-Register-Einheit 130 und eine Gültigkeitsprüfeinheit 140. Bei Gebrauch ist das System 100 zur Speicherzugriffsverwaltung zwischen einer Haupteinheit (Master) 210 und einer SDRAM-Ein­ heit 220 verbindend angeordnet und vermag es, der Haupteinheit 210 auf effizientere Weise zu gewähren, Zugang zur SDRAM-Ein­ heit 220 zu erlangen.
Die Vergleichseinheit 110 weist eine zum Empfangen einer Anzahl von decodierten Adressignalen DA [27:11], SEGIN [1:0] und BANK [9:0] von der Haupteinheit 210 mit derselben verbundene Ein­ gangsseite und eine Ausgangsseite zum Ausgeben einer Anzahl von Zugriffssteuerungssignalen, worunter ein Seitentreffersignal ONPAG, ein Banktreffersignal BKHIT und ein Segmenttreffersignal SEGHIT bezüglich der SDRAM-Einheit 220 sind, auf. Es soll hier angemerkt sein, daß diese Signale freigeschalten werden, wenn die zugehörige Datenleitung in einen gewissen logischen Zustand versetzt wird, der je nach Wahl des Schaltungsdesigners ein Zu­ stand logisch hoher Spannung oder ein Zustand logisch niedriger Spannung sein kann. Wenn das Seitentreffersignal ONPAG freige­ schalten ist, zeigt es an, daß sich die Daten auf der gegenwär­ tig geöffneten Seite befinden; wenn das Banktreffersignal BKHIT freigeschalten ist, zeigt es an, daß die angefragten Daten sich in der aktuellen Bank befinden; und wenn das Segmenttreffersig­ nal SEGHIT freigeschalten ist, zeigt es an, daß die angefragten Daten sich im aktuellen Segment befinden. Ferner ist bei der SDRAM-Einheit 220 die Ausgabe eines Vorlade-Freigabesignals und eines Aktivierungs-Freigabesignals an die SDRAM-Einheit 220 erforderlich, wenn das Öffnen oder Schließen einer speziellen Seite der SDRAM-Einheit 220 gewünscht ist. Diese Anforderung ist jedem, der mit dem Gebrauch von SDRAMs vertraut ist, wohl­ bekannt, und liegt nicht im Geiste oder im Bereich der Absich­ ten der Erfindung, so daß die Signalwege des Vorlade-Freigabe­ signals und des Aktivierungs-Freigabesignals, um die Zeichnung und die Beschreibung zu vereinfachen, in Fig. 1 nicht gezeigt sind.
Die Seitenverzeichnis-Register-Einheit 120 wird zum Abspeichern eines Seitenverzeichnisses 125 verwendet, das zum Registrieren der Adreßdaten aus vorhergehenden Zugriffsoperationen auf die SDRAM-Einheit 220 verwendet wird. Ein Beispiel eines Seitenver­ zeichnisses 125 ist in Fig. 2 gezeigt. Wie gezeigt, weist das Seitenverzeichnis 125 eine vorbestimmte Anzahl von Zeilen und Spalten von Daten auf, zum Beispiel 8 jeweils mit den Bezugs­ buchstaben A, B, . . . und H bezeichnete Reihen, wobei jede Reihe, 6 Datenfelder: BKVC, BNK, SEG, PAG, LRU und VLD aufweist (es sei hier angemerkt, daß im folgenden innerhalb dieser Be­ schreibung die Bezeichnung BKVC_A zur Bezeichnung entweder des Inhalts des Feldes BKVC in Reihe A oder des zum Setzen des In­ halts des Feldes BKVC in Reihe A auf einen spezifizierten Wert verwendeten Datensignals verwendet wird). Jede Reihe steht für die Benutzung durch eine vorhergehende Zugriffsoperation. Das Feld BKVC wird dazu verwendet, anzuzeigen, daß ein im Seiten­ verzeichnis abgespeichertes Datum einen vorhergehenden Zugriff auf eine VC-SDRAM-Einheit (in dem Fall, daß die SDRAM-Einheit 220 eine VC-SDRAM-Einheit ist) darstellt; das Feld BNK wird zum Speichern der Bankadresse eines vorhergehenden Zugriffs auf die SDRAM-Einheit 220 oder den VC-SDRAM verwendet; das Feld SEG wird zum Abspeichern der Segmentadresse eines vorhergehenden Zugriffs auf den VC-SDRAM verwendet; das Feld PAG wird zum Ab­ speichern der Seitenadresse eines vorhergehenden Zugriffs auf die SDRAM-Einheit 220 oder den VC-SDRAM verwendet. Zusätzlich wird das Feld LRU zum Abspeichern eines numerischen Wertes im Bereich von 0 bis 7 verwendet, der den Benutzungsgrad der zuge­ hörigen in den Feldern BKVC, BNK, SEG und PAG registrieren Adreßdaten definiert; und das Feld VLD wird zum Abspeichern eines Gültigkeitsbits verwendet, das angibt, ob das zugehörige Adreßdatum gültig oder ungültig ist. Bei dem Beispiel aus Fig. 2 sind nur die Datenfelder aufgeführt, die einen Bezug zum Ge­ danken und zum Bereich der Erfindung haben. Bei praktischen Im­ plementierungen kann das Seitenverzeichnis 125 weitere zusätz­ liche Felder zum Abspeichern von zu verschiedenen anderen Zwecken bestimmten Daten auf Grundlage der Erfordernisse der tatsächlichen Anwendung aufweisen. Außerdem sind hier die Datenfelder in gesammelter Weise in einem einzigen Verzeichnis dargestellt, in der Praxis können aber einige der Datenfelder in andere Einheiten integriert sein; zum Beispiel können die LRU-Daten in die Ausnutzungsraten-Register-Einheit 130 inte­ griert sein, und die VLD-Daten können in die Gültigkeitsprüf­ einheit 140 integriert sein.
Das schematische Blockdiagramm in Fig. 3 veranschaulicht die detaillierte innere Architektur der bei dem System 100 zur Speicherzugriffsverwaltung aus Fig. 1 verwendeten Vergleichs­ einheit 110. Wie gezeigt ist, weist die Vergleichseinheit 110 eine Seitenvergleichseinheit 310, eine Bankvergleichseinheit 320 und einen Satz von NAND-Gattern 330, 340, 350 auf. Die Sei­ tenvergleichseinheit 310 wird zum Vergleichen der Adreßdaten der gegenwärtig ausgegebenen Zugriffsanfrage von der Hauptein­ heit 210, das heißt DA [27:1] und SEGIN [1:0], mit jedem der 8 Sätze von Adreßdaten (PAG_A, SEG_A, BKVC_A) 311, (PAG_B, SEG_B, BKVC_B) 312, . . . und (PAG_H, SEG_H, BKVC_H) 318 aus dem Seiten­ verzeichnis 125 verwendet, so daß überprüft wird, ob auf den angefragten Speicherplatz kürzlich zugegriffen worden ist. Die Seitenvergleichseinheit 310 gibt ein Seitentrefferisgnal PAGHIT [7:0] aus, welches angibt, ob die aktuelle Zugriffsanfrage ein Seitentreffer ist, und sie gibt ein Segmenttreffersignal SEGHIT [7:0] aus, welches angibt, ob die aktuelle Zugriffsanfrage ein Segmenttreffer ist.
Die Bankvergleichseinheit 320 wird zum Vergleichen der Bank­ adreßdaten der gegenwärtig ausgegebenen Zugriffsanfrage von der Haupteinheit 210, das heißt BANK [9:0], mit jedem der 8 Sätze von Adreßdaten (BNK_A, VLD_A) 321, (BNK_B, VLD_B) 322, . . . und (BNK_H, VLD_H) 328 verwendet. Die Bankvergleichseinheit 320 gibt ein Banktreffersignal BKHIT_[H:A]_ aus, welches angibt, ob die aktuelle Zugriffsanfrage ein Banktreffer ist, ein Seiten­ treffersignal PGHIT_[H:A]_, welches angibt, ob die aktuelle Zugriffsanfrage ein Seitentreffer ist, und ein Segmenttreffer­ signal SGHIT_[H:A]_, welches angibt, ob die aktuelle Zugriffs­ anfrage ein Segmenttreffer ist. Bei dieser bevorzugten Ausfüh­ rungsform werden diese Signale BKHIT_[H:A]_, PGHIT_[H:A]_ und SGHIT_[H:A]_ ein jedes in frei geschaltenen Zustand versetzt, wenn der zugehörige Ausgangsport sich in einem Zustand mit logisch niedriger Spannung befindet. Dazu wird das Banktreffer­ signal BKHIT_[H:A]_ anschließend durch ein erstes NAND-Gatter 330 in einen Zustand logisch hoher Spannung invertiert, so daß es die Freigabe des an die SDRAM-Einheit 220 ausgegebenen Bank­ treffersignals BKHIT bildet; das Seitentreffersignal PGHIT_[H:A]_ wird anschließend von dem zweiten NAND-Gatter 340 in einen Zustand mit logisch hoher Spannung invertiert, so daß es die Freigabe des an die SDRAM-Einheit 220 ausgegebenen Sei­ tentreffersignals ONPAG bildet; und das Segmenttreffersignal SGHIT_[H:A]_ wird anschließend von dem dritten NAND-Gatter 350 in einen Zustand logisch hoher Spannung invertiert, so daß es die Freigabe des an die SDRAM-Einheit 220 ausgegebenen Segment­ treffersignals SEGHIT bildet.
Das in Fig. 4 gezeigte schematische Blockdiagramm veranschau­ licht die detailliertere innere Architektur der bei dem System 100 zur Speicherzugriffsverwaltung aus Fig. 1 verwendeten Sei­ tenverzeichnis-Register-Einheit 120. Wie gezeigt ist, weist die Seitenverzeichnis-Register-Einheit 120 eine Auffangschaltung 410 und eine Auswahlschaltung 420 auf. Darüber hinaus weist die Seitenverzeichnis-Register-Einheit 120 8 Registersätze (BNK_A, PAG_A, SEG_A, BKVC_A) 431, . . ., (BNK_H, PAG_H, SEG_H, BKVC_H) 438 auf, wobei jedes Register zum Abspeichern der Adreßdaten einer vorangehenden Zugriffsoperation auf die SDRAM-Einheit 220 verwendet wird. Diese 8 Registersätze (BNK_A, PAG_A, SEG_A, BKVC_A) 431, . . ., (BNK_A, PAG_H, SEG_H, BKVC_H) 438 bilden ge­ meinsam einen Teil des in Fig. 2 gezeigten Seitenverzeichnisses 125 (bei dieser Ausführungsform sind die beiden anderen Daten­ felder, d. h. LRU und VLD, in die Ausnutzungsraten-Register-Ein­ heit 130 beziehungsweise in die Gültigkeitsprüfeinheit 140 integriert). Die Auffangschaltung 410 wird durch das Signal PGCMP gesteuert, so daß die Ausgangsdaten BKHIT_[H:A]_, SGHIT_[H:A]_, BKHIT und SEGHIT, die von der Haupteinheit 110 kommen, zwischengespeichert werden. Die zwischengespeicherten Daten werden dann über einen Datenbus 412 zur Auswahlschaltung 420 übertragen. Zusätzlich zu den Ausgangsdaten der Auffang­ schaltung 410 empfängt die Auswahlschaltung 420 VLD_[H:A] und LRU [H:A] von der Ausnutzungsraten-Register-Einheit 130 und ein Steuersignal PGUPD, wodurch ein Auswahlsignal SEL erzeugt und an das Seitenverzeichnis 125 übertragen wird, so daß das Daten­ element aus dem Seitenverzeichnis 125 ausgewählt wird, dessen Wert durch die Eingangssignale BANK, LDA [27:11], SEGMENT und VCSDRAM aktualisiert werden soll. Die Ausgangssignale der Sei­ tenverzeichnis-Register-Einheit vvv 120 weisen PREPAG, LPGSB [1:0], LPGBK [7:0], RXPAG [27:11] und RXSEG [1:0] auf.
Das schematische Blockdiagramm in Fig. 5A veranschaulicht die detailliertere innere Architektur der in dem Sytem 100 zur Speicherzugriffsverwaltung aus Fig. 1 verwendeten Ausnutzungs­ raten-Register-Einheit 130. Wie gezeigt, weist die Ausnutzungs­ raten-Register-Einheit 130 einen Satz von Registern 511, 512, . . ., 518 zum Abspeichern der Daten LRU_A, LRU_B. . . und LRU_H auf. Die Ausnutzungsraten-Register-Einheit 130 verwendet PGCMP, BKHIT, PGUPD und SEL als Eingangssignale und erzeugt ein Aus­ gangssignal LRU [H:A]. Darüber hinaus wird das Ausgangssignal LRU [H:A] als Feedback an die Eingangsseite der Ausnutzungs­ raten-Register-Einheit 130 verwendet. Gemäß der Erfindung wer­ den die Register LRU_A, LRU_B, . . . und LRU_H 511, 512, . . ., 518 zum Abspeichern der jeweiligen LRU-Werte verwendet, die die Rate der kürzlichen Ausnutzung von Speicherplätzen in der SDRAM-Einheit 220, auf die kürzlich zugegriffen worden ist, angibt. Wie schon früher erwähnt, liegt jeder LRU-Wert im Bereich von 0 bis 7; außerdem sind die LRU-Werte in diesen 8 Registern 511, 512. . ., 518 jeweils nur einmal zugeordnet und unterscheiden sie sich voneinander (mit anderen Worten ist die Summe der in diesen 8 Registern 511, 512, . . ., 518 abgespei­ cherten jeweiligen Werte immer 28). Der kleinste Wert 0 wird verwendet, um anzuzeigen, daß auf den zugehörigen Speicherplatz zuletzt zugegriffen worden ist, und der höchste Wert 7 wird verwendet, um anzuzeigen, daß auf den zugehörigen Speicherplatz am längsten nicht zugegriffen worden ist. Die Aktualisierung auf die Werte in diesen 8 Registern 511, 512, . . ., 518 wird einen Taktzyklus, nachdem das Signal PGCMP oder PGUPD freige­ schalten worden ist, durchgeführt. Die Zeitdauer dieser Ver­ zögerung von einem Taktzyklus kann zum Berechnen der aktuali­ sierten Werte dieser 8 Register 511, 512, . . ., 518 verwendet werden. Wenn die aktuelle Zugriffsanfrage ein Banktreffer ist, wird die angefragte Bankadresse an das in einer bestimmten Speicherzelle des Seitenverzeichnisses 125 abgespeicherte Bank­ adressendatum angepaßt. Bei der Initialisierung wird ein jedes dieser Register 511, 512, . . ., 518 auf einen bestimmten Initia­ lisierungswert, zum Beispiel 0, eingestellt, so daß die Opera­ tion durch undefinierte Daten im Seitenverzeichnis 125 nicht unterbrochen wird.
Das in Fig. 5B gezeigte schematische Blockdiagramm veranschau­ licht die Eingangs-/Ausgangs-Konfiguration der in dem System 100 zur Speicherzugriffsverwaltung aus Fig. 1 verwendeten Gül­ tigkeitsprüfeinheit 140. Wie gezeigt, verwendet die Gültig­ keitsprüfeinheit 140 PGFLH, PGUPD, BNK_[H:A], EDO_BNK und BKVC_[H:A] als Eingangssignale und erzeugt ein Ausgangssignal VLD_[H:A]. Das Ausgangssignal VLD_[H:A] wird weiter als Feed­ back an die Eingangsseite der Gültigkeitsprüfeinheit 140 ver­ wendet. Das Ausgangssignal VLD_[H:A] ist ein Datenwort, bei dem jedes Bit verwendet wird, um anzuzeigen, ob die entsprechende VLD-Speicherzelle im Seitenverzeichnis 125 auf 1 gesetzt werden soll, wodurch die Gültigkeit des zugehörigen Speicheradreßda­ tums angezeigt wird, oder ob sie auf 0 gesetzt werden soll, wo­ durch angezeigt wird, daß die zugehörigen Speicheradreßdaten ungültig oder noch undefiniert sind.
Der Betrieb des in Fig. 1 gezeigten Systems 100 zur Speicherzu­ griffsverwaltung weist die folgenden Hauptschritte auf.
  • 1. Erstens werden bei der Initialisierung die Speicherzellen des Seitenverzeichnisses 125 eine jede auf einen bestimmten Wert gesetzt, zum Beispiel 0, so daß verhindert wird, daß der Betrieb durch undefinierte Daten im Seitenverzeichnis 125 unterbrochen wird.
  • 2. Zweitens wird, wenn eine Zugriffsanfrage ausgegeben wird, der angefragte Speicherplatz, mitsamt Seitenadresse, Bank­ adresse und Segmentadresse, mit den im Seitenverzeichnis 125 abgespeicherten Adreßdaten verglichen, wodurch überprüft wird, ob auf den angefragten Speicherplatz kürzlich zugegriffen worden ist;
  • 3. Drittens werden die LRU-Daten und die VLD-Daten im Seiten­ verzeichnis 125 daraufhin überprüft, welche Speicherzelle aktu­ alisiert oder zum Abspeichern von neuen Adreßdaten ausgewählt werden muß.
Das in Fig. 6 gezeigte Flußdiagramm veranschaulicht die bei dem Verfahren gemäß dem Verfahren vorkommenden Prozedurschritte.
Im ersten Schritt 610 wird von der Speichersteuereinheit ein Adreßsignal empfangen.
Im zweiten Schritt 612 wird das empfangene Adreßsignal mit den Adreßdaten im Seitenverzeichnis verglichen, wodurch auf Über­ einstimmung überprüft wird. Im Falle eines JA schreitet die Prozedur weiter zu Schritt 614; anderenfalls, im Falle eines NEIN, schreitet die Prozedur weiter zu Schritt 620.
Im Schritt 614 wird ein Treffersignal erzeugt; und dann schrei­ tet die Prozedur fort zum Schritt 628.
Im Schritt 620 andererseits wird das Seitenverzeichnis einge­ sehen, so daß der maximale LRU-Wert aufgefunden wird. Als näch­ stes, im Schritt 622, wird überprüft, ob der mit dem maximalen LRU-Wert verbundene VLD-Wert gültig ist. Falls JA, schreitet die Prozedur weiter zu Schritt 624; ansonsten, im Falle eines NEIN, schreitet die Prozedur fort zu Schritt 626.
Im Schritt 624 wird gemäß den mit dem maximalen LRU-Wert ver­ bundenen Adreßdaten eine Wiederherstellungsadresse erzeugt, so daß die entsprechende Seite geschlossen wird. Nachdem dies vollendet ist, schreitet die Prozedur weiter zu Schritt 626.
In Schritt 626 wird die gegenwärtig empfangene Adresse in die dem maximalen LRU-Wert zugeordnete Speicherzelle abgespeichert. Dann schreitet die Prozedur weiter zu Schritt 628.
In Schritt 628 wird die Speicherzelle, die den maximalen LRU- Wert speichert, auf den LRU-Wert 0 zurückgesetzt, und alle anderen LRU-Werte im Seitenverzeichnis werden um 1 erhöht. Die Prozedur ist dann beendet.
Anhand der in den Fig. 7A bis 7G gezeigten Tabellen sind beispielhafte Daten gezeigt, die in Reaktion auf eine Folge von Zugriffsanfragen in dem bei dem System 100 zur Speicherseiten­ verwaltung aus Fig. 1 verwendeten Seitenverzeichnis 125 abge­ speichert sind. In diesen Tabellen sind die im Seitenverzeich­ nis 125 aus Fig. 2 gezeigten Daten BKVC, BNK, SEG, PAG zur Ver­ einfachung der Beschreibung gemeinsam durch die ADRESSE-Daten in der ersten Spalte dargestellt.
Fig. 7A zeigt die bei der Initialisierung in das Seitenver­ zeichnis abgespeicherten Daten Adresse, LRU und VLD. Wie ge­ zeigt, werden bei der Initialisierung alle 8 ADRESSE-Werte in den 8 Reihen A bis H auf 0 gesetzt, und da alle diese ADRESSE- Werte ungültig sind (was bedeutet, daß sie nicht die Adreßdaten eines vorhergehenden Zugriffs auf den SDRAM darstellen), werden alle VLD-Speicherzellen auf 0 gesetzt. Weiter werden die LRU- Speicherzellen auf 7, 6, 5, 4, 3, 2, 1 beziehungsweise 0 ge­ setzt.
Angenommen, die Haupteinheit 210 gebe dann eine Reihe von Zu­ griffsanfragen aus, wodurch Zugriff auf die SDRAM-Einheit 220 erlangt werden soll.
In Bezug auf Fig. 7B sei angenommen, daß eine Zugriffsanfrage an die Seitenadresse "10" gerichtet sei; dann wird, da alle ADRESSE-Werte des aktuellen Seitenverzeichnisses unbenutzt sind, diese Seitenadresse "10" in die ADRESSE-Speicherzelle der ersten Reihe A abgespeichert; und währenddessen wird die VLD- Speicherzelle von Reihe A auf 1 gesetzt. Weiter wird die LRU- Speicherzelle von Reihe A auf 0 gesetzt, wobei die LRU-Spei­ cherzellen in anderen Reihen, die niedriger als 7 sind, um 1 erhöht werden.
In Bezug auf Fig. 7C sei nun angenommen, daß die nächste Zu­ griffsanfrage an die Seitenadresse "20" gerichtet sei; dann wird diese Seitenadresse "20" mit allen ADRESSE-Werten im Seitenverzeichnis aus Fig. 7B verglichen, so daß überprüft wird, ob Übereinstimmung mit dieser Seitenadresse "20" besteht. In diesem Beispiel ist das Vergleichsergebnis NEIN; und folg­ lich wird die Seitenadresse "20" in die ADRESSE-Speicherzelle der nächsten Reihe B abgespeichert; und währenddessen wird die VLD-Speicherzelle von Reihe B auf 1 gesetzt. Weiter wird die LRU-Speicherzelle von Reihe B auf 0 gesetzt, wobei die LRU- Speicherzellen in den anderen Reihen, die geringer als 7 sind, um 1 erhöht werden.
In Bezug auf Fig. 7D sei nun angenommen, daß die nächsten Zu­ griffsanfragen jeweils an die Seitenadressen "30", "40", "50", "60", "70" bzw. "80" gerichtet seien; dann werden, da keine dieser Seitenadressen mit den im Seitenverzeichnis abgespei­ cherten Seitenadresswerten übereinstimmt, diese Seitenadressen in die verbleibenden unbenutzten Adress-Speicherzellen abge­ speichert und die zugehörigen LRU- und VLD-Werte auf die glei­ che Art wie oben beschrieben gesetzt.
In Bezug auf Fig. 7E sei nun angenommen, daß die folgende Zu­ griffsanfrage an die Seitenadresse "90" gerichtet sei; dann wird diese Seitenadresse "90" mit allen ADRESSE-Werten im Sei­ tenverzeichnis aus Fig. 7D verglichen, so daß überprüft wird, ob Übereinstimmung mit dieser Seitenadresse "90" besteht. In diesem Beispiel ist das Vergleichsergebnis NEIN; und folglich wird diese Seitenadresse "90" in die ADRESSE-Speicherzelle in der Reihe abgespeichert, die den höchsten LRU-Wert enthält (in diesem Beispiel die ADRESSE-Speicherzelle der letzten Reihe A, die den höchsten LRU-Wert 7 enthält (siehe Fig. 7D)). Die VLD- Speicherzelle von Reihe A bleibt unverändert. Weiter wird die LRU-Speicherzelle von Reihe A von 7 zu 0 geändert, wobei alle anderen LRU-Speicherzellen in den anderen Reihen, die niedriger sind als 7, um 1 erhöht. Außerdem verursacht die VLD-Speicher­ zelle von Reihe A, da sie vorher auf 1 gesetzt wird, die Aus­ gabe eines Vorlade-Freigabesignals an die SDRAM-Einheit 220, so daß die gegenwärtig geöffnete Seite mit der Seitenadresse "10" geschlossen wird.
In Bezug auf Fig. 7F sei nun weiter angenommen, daß die nach­ folgende Zugriffsanfrage an die Seitenadresse "40" gerichtet sei; dann wird diese Seitenadresse "40" zuerst mit allen ADRESSE-Werten im Seitenverzeichnis aus Fig. 7E verglichen, so daß überprüft wird, ob Übereinstimmung mit der Seitenadresse "40" besteht. In diesem Beispiel ist das Vergleichsergebnis JA, da die ADRESSE-Speicherzelle von Reihe D "40" ist. In diesem Fall bleiben die Werte der ADRESSE- und der VLD-Speicherzelle unverändert, während die LRU-Speicherzelle von 5 nach 0 geän­ dert wird. Außerdem werden alle LRU-Speicherzellen in anderen Reihen, die geringer sind als der ursprünglich in der LRU-Spei­ cherzelle von Reihe D abgespeicherte Wert, um 1 erhöht (das heißt die jeweiligen LRU-Speicherzellen der Reihen A, E, F, G und H werden eine jede um 1 erhöht).
In Bezug auf Fig. 7G sei nun angenommen, daß die nachfolgende Zugriffsanfrage an die Seitenadresse "22" gerichtet sei und die angefragte Adresse sich in der selben Bank befinde, in der sich die Seite mit der Seitenadresse "20" befindet; dann wird diese Seitenadresse "22" mit all den Speicherzellen im ADRESSE-Feld des Seitenverzeichnisses 125 verglichen. In diesem Beispiel ist das Vergleichsergebnis ein Banktreffer. In diesem Fall wird, da in jeder Bank nur eine Seite auf einmal geöffnet sein kann, der ADRESSE-Wert von Reihe B von "20" zu "22" geändert und der LRU- Wert von Reihe B von "7" nach "0" geändert, während der VLD- Wert von Reihe B unverändert bleibt. Außerdem werden alle ande­ ren LRU-Werte in anderen Reihen, die geringer sind als die ur­ sprünglichen Werte in den LRU_B-Speicherzellen, um 1 erhöht (das heißt, die jeweiligen LRU-Werte der Reihen A, D, E, F, G, C und H werden ein jeder um 1 erhöht). Bevor die angefragte Seite geöffnet werden kann, sollte die gegenwärtig geöffnete Seite, das heißt die Seite bei "20", geschlossen werden.
Fig. 8A bis 8D und Fig. 9A bis 9B sind Signalfolgedia­ gramme von verschiedenen bei dem System 100 zur Speicherseiten­ verwaltung aus Fig. 1 in Reaktion auf verschiedene Betriebs­ bedingungen verwendeten Signalen. Die Zeitabfolgen dieser Sig­ nale basieren auf einem gemeinsamen Taktsignal DCLK.
Das in Fig. 8A gezeigte Signalfolgediagramm veranschaulicht die Zeitabfolge zwischen DCLK, ONPAG, BKHIT, PGCMP, LRU_A, VLD_A, PAG_A und BNK_A für den Fall, daß die aktuelle Zugriffsanfrage von der. Haupteinheit 210 ein Seitentreffer ist (oder ein Seg­ menttreffer bezüglich des VC-SDRAM), und daß der angefragte Speicherplatz auf einen in Reihe A des Seitenverzeichnisses 125 abgespeicherten zutrifft. In diesem Fall schaltet die Ver­ gleichseinheit 110 an T0 die Signale ONPAG und BKHIT in den freigeschaltenen Zustand (das heißt in einen Zustand logisch hoher Spannung); und dann wird an T7 PGCMP in einen Zustand mit logisch hoher Spannung geschalten, wodurch die Auffangschaltung 410 der Seitenverzeichnis-Register-Einheit 120 zum Zwischen­ speichern der aktuell empfangenen Daten von der Vergleichsein­ heit 110 veranlaßt wird. Anschließend wird an T9 das Signal LRU_A freigeschalten, so daß die entsprechende Speicherzelle im Seitenverzeichnis 125 auf 0 gesetzt wird.
Das in Fig. 8B gezeigte Signalfolgediagramm veranschaulicht die Zeitabfolge zwischen DCLK, ONPAG, BKHIT, PGCMP, PGUPD, LRU_A, VLD_A, PAG_A Und BNK_A für den Fall, daß die aktuelle Zugriffs­ anfrage ein Banktreffer und dabei aber ein Seitenfehltref­ fer ist. Wie bereits früher erwähnt wurde, kann in jeder Bank nur eine Seite auf einmal geöffnet sein. Daher sollte die ent­ sprechende Speicherzelle im Seitenverzeichnis 125 durch die Seitenadresse der aktuellen Zugriffsanfrage ersetzt werden. In Reaktion auf die Zugriffsanfrage schaltet die Vergleichseinheit 110 am T0 das Signal BKHIT in den freigeschaltenen Zustand (das heißt in den Zustand logisch hoher Spannung); und dann wird die gegenwärtig geöffnete Seite geschlossen. Danach wird das Signal PGCMP an T5 in den Zustand logisch hoher Spannung geschalten, wodurch die Auffangschaltung 410 der Seitenverzeichnis-Regi­ ster-Einheit 120 zum Zwischenspeichern der gegenwärtig empfan­ genen Daten von der Vergleichseinheit 110 veranlaßt wird. Da­ nach wird an T10 PGUPD freigeschalten, so daß veranlaßt wird, daß die entsprechende Speicherzelle im Seitenverzeichnis 125 durch das Signal PAG_A auf den Wert der angefragten Seiten­ adresse gesetzt wird. Danach wird die angefragte Seite ge­ öffnet.
In dem Fall, daß die aktuelle Zugriffsanfrage ein Bankfehltref­ fer ist, ist es erforderlich, daß eine Speicherzelle im Seiten­ verzeichnis 125 zum Abspeichern des Speicherplatzes der jüng­ sten Zugriffsoperation gefunden wird. In diesem Fall müssen zwei Bedingungen beachtet werden, die im folgenden unter Bezug auf Fig. 8C beziehungsweise 8D veranschaulicht sind.
Das in Fig. 5C gezeigte Signalfolge-Diagramm veranschaulicht die Zeitabfolge zwischen DCLK, ONPAG, BKHIT, PGCMP, PGUPD, LRU_A, VLD_A, PAG_A und BNK_A für den Fall, daß die aktuelle Zugriffsanfrage ein Bankfehltreffer ist und es noch unbenutzte Speicherzelle im Seitenverzeichnis 125 gibt. In diesem Fall behält die Vergleichseinheit 110 den Zustand der Signale ONPAG und BKHIT unverändert bei. Nachfolgend wird an T1 das Signal PGCMP in den freigeschaltenen Zustand geschaltet, so daß die Auffangschaltung 410 der Seitenverzeichnis-Register-Einheit 120 zum Zwischenspeichern der gegenwärtig empfangenen Daten von der Vergleichseinheit 110 veranlaßt wird. Dann wird aus dem Seiten­ verzeichnis 125 die Reihe, die den höchsten LRU-Wert und den VLD-Wert 0 aufweist, zum Abspeichern des Speicherplatzes der aktuellen Zugriffsanfrage ausgewählt (in diesem Beispiel wird die Reihe A gewählt). Nachfolgend wird an T4 das Signal PGUPD freigeschalten, so daß veranlaßt wird, daß die entsprechenden Speicherzellen im Seitenverzeichnis 125 durch die Signale PAG_A und BNK_A jeweils auf den Wert der angefragten Seite bzw. Bank gesetzt werden, und wodurch auch veranlaßt wird, daß die ent­ sprechende Speicherzelle durch das Signal VLD_A auf 1 gesetzt wird. Nach einem Taktzyklus wird das Signal LRU_A freigeschal­ ten, so daß die entsprechende Speicherzelle im Seitenverzeich­ nis 125 auf 0 gesetzt wird; und währenddessen werden alle LRU- Speicherzellen in anderen Reihen, die geringer als 7 sind, um 1 erhöht.
Das in Fig. 8D gezeigte Signalfolge-Diagramm veranschaulicht die Zeitabfolge zwischen DCLK, ONPAG, BKHIT, PGCMP, PGUPD, LRU_A, VLD_A, PAG_A, BNK_A, LPGBK und LPGSB für den Fall, daß die aktuelle Zugriffsanfrage ein Bankfehltreffer ist und es im Seitenverzeichnis 125 keine unbenutzten Speicherzellen gibt. In diesem Fall besteht der erste Schritt darin, die Reihe im Sei­ tenverzeichnis 125 zu finden, die den höchsten LRU-Wert enthält (das heißt 7, was bedeutet, daß die Reihe zuletzt verwendet worden ist). In Reaktionen auf diese einen Bankfehltreffer dar­ stellende Zugriffsanfrage behält die Vergleichseinheit 110 den Zustand der Signale ONPAG und BKHIT unverändert. Anschließend wird an T1 das Signal PGCMP freigeschalten, so daß die Auffang­ schaltung 410 der Seitenverzeichnis-Register-Einheit 120 zum Zwischenspeichern der gegenwärtig empfangenen Daten von der Vergleichseinheit 110 veranlaßt wird. Dann wird aus dem Seiten­ verzeichnis 125 die Reihe mit dem höchsten LRU-Wert (in diesem Beispiel die Reihe A) zum Abspeichern des Speicherplatzes der aktuellen Zugriffsanfrage ausgewählt. Bevor die Aktualisierung des Seitenverzeichnisses 125 durchgeführt wird, ist es erfor­ derlich, daß die SDRAM-Einheit 220 zum Zweck des Schließens der gegenwärtig geöffneten Bank und Subbank vorgeladen wird. An­ schließend, während der ansteigenden Flanke des Taktzyklus T7, werden die in der ausgewählten Speicherzelle abgespeicherten Daten zwischengespeichert, und dann werden die Signale LPGBK und LPGSB in den freigeschaltenen Zustand geschaltet, so daß die gegenwärtig geöffnete Bank und Subbank vorgeladen werden. Anschließend wird an T6 das Signal PGUPD freigeschalten, so daß die Signale PAG_A und BNK_A dazu veranlaßt werden, die entspre­ chenden Speicherzellen im Seitenverzeichnis 125 auf die spezi­ fizierten Werte zu setzen. Anschließend wird an T8 das Signal LRU_A freigeschalten, so daß die entsprechende Speicherzelle im Seitenverzeichnis 125 auf 0 gesetzt wird; und währenddessen werden alle anderen LRU-Speicherzellen in anderen Reihen um 1 erhöht.
Bei dem vorangehenden Beispiel wird angenommen, daß die SDRAM- Einheit 220 8 Bänke aufweist, wobei jede Bank in vier Subbänke partitioniert ist. Daher ist das Signal LBGBK 8 Bit breit, wo­ bei jedes Bit zum Freischalten des Zugriffs auf eine der 8 Bänke verwendet wird; und das Signal LPGSB ist 2 Bit breit, wobei jedes Bit zum Freischalten des Zugriffs auf eine der in der durch das Signal LPGBK spezifizierten Bank angeordneten 4 Subbänke verwendet wird. Wenn ein VC-SDRAM verwendet wird, dann werden, wenn die ausgewählten Speicherzellen bereits Daten auf­ weisen, Wiederherstellungs-Signale RXPAG [27:11] und RXSEGD [1:0] zum zyklischen Wiederherstellen erzeugt.
Es gibt einige Computersysteme, bei denen eine SDRAM-Einheit in Verbindung mit anderen Speichertypen, zum Beispiel einem EDO/FP DRAM, verwendet wird. In diesem Fall wird das 8 Bit lange Sig­ nal CAS# [7:0] vom EDO/FP-DRAM mit dem SDRAM verwendet. Außerdem sollten, wenn die SDRAM-Einheit aufgefrischt wird, alle darin enthaltenen Bänke zuerst in Ruhezustand versetzt werden, bevor das Vorladen ausgeführt werden kann. Das Signal PGFLH wird dazu verwendet, den zugehörigen VLD-Wert im Seitenverzeichnis auf 0 zu setzen, so daß erlaubt wird, daß der Speicherzugriff von der EDO/FP DRAM-Einheit zur SDRAM-Einheit schaltbar ist. Zwei Fälle von Schalten von EDO/FP DRAM zu SDRAM sind im folgenden in Be­ zug auf Fig. 9A bzw. 9B dargestellt.
Das in Fig. 9A dargestellte Signalfolgediagramm veranschaulicht die Zeitabfolge zwischen DCLK, ONPAG, BKHIT, PGCMP, PGFLH, LRU_A, VLD_A, PAG_A und BNK_A für den Fall, daß die aktuelle ausgegebene Zugriffsanfrage ein Bankfehltreffer ist und der aktive Speicherzugriff von der EDO/FP-DRAM-Einheit zur SDRAM- Einheit geschaltet wird. Wie gezeigt, wird an T1 das Signal PGUPD freigeschalten, so daß veranlaßt wird, daß die entspre­ chenden Speicherzellen im Seitenverzeichnis 125 durch die Signale PAG_A und BNK_A auf die Werte der angefragten Seiten- und Bankadressen gesetzt werden; und anschließend wird an T3 das Signal LRU_A freigeschalten, so daß die entsprechenden Speicherzellen des Seitenverzeichnisses 125 auf 0 gesetzt wer­ den, während durch das Signal VLD_A veranlaßt wird, daß der Wert der entsprechenden Speicherzelle unverändert bleibt. An­ schließend wird das Signal PGCMP freigeschalten, so daß der aktive Speicherzugriff auf die SDRAM-Einheit 220 geschalten wird. Wenn der EDO/FP DRAM inaktiv ist, kann seine gegenwärtig geöffnete Seite nicht in geöffnetem Zustand bleiben, weshalb sie geschlossen werden sollte. An T5 wird das Signal PGFLH in den Zustand logisch hoher Spannung geschalten, und an T6 wird VLD_A in den Zustand logisch niedriger Spannung geschalten, wodurch veranlaßt wird, daß der EDO/FP DRAM deaktiviert wird. Anschließend wird an T7 das Signal PGUPD freigeschalten, so daß veranlaßt wird, daß die entsprechenden Speicherzellen im Sei­ tenverzeichnis 125 durch die Signale PAG_A und BNK_A auf die Werte der angefragten Seiten- und Bankadresse gesetzt werden, und außerdem veranlaßt wird, daß die angefragte Seite geöffnet wird. Außerdem wird an T8 bei dem Signal VLD_A ein Zustand logisch hoher Spannung wiederhergestellt, so daß die entspre­ chende Speicherzelle im Seitenverzeichnis 125 auf 1 gesetzt wird, wodurch die Gültigkeit der gespeicherten Adreßdaten an­ gezeigt wird. Die LRU_A-Speicherzelle im Seitenverzeichnis 125 verbleibt jedoch auf 0.
Das in Fig. 9B gezeigte Signalfolgediagramm veranschaulicht die Zeitabfolge zwischen DCLK, ONPAG, PGCMP, PGFLH, PGUPD, LRU_A, LRU_B, VLD_A, PAG_A, BNK_A, VLD_B, PAG_B und BNK_B für den Fall, daß die aktuelle Zugriffsanfrage ein Banktreffer ist und der aktive Speicherzugriff von der EDO/FP DRAM-Einheit zur SDRAM-Einheit geschaltet wird. Wie gezeigt, wird an T1 das Signal PGUPD freigeschalten, so daß bewirkt wird, daß die ent­ sprechenden Speicherzellen in Seitenverzeichnis 125 durch die Signale PAG_A und BNK_A auf die Werte der angefragten Seiten- und Bankadressen gesetzt werden; und anschließend wird an T3 das Signal LRU_A freigeschalten, so daß die entsprechenden Speicherzellen im Seitenverzeichnis 125 auf 0 gesetzt werden, während der Wert des Signals LRU_B um 1 erhöht wird und die VLD_A-Speicherzelle unverändert bleibt. Anschließend wird an T3 das Signal PGCMP freigeschalten, so daß der aktive Speicher­ zugriff auf die SDRAM-Einheit 220 geschalten wird. Anschließend wird an T5, da die Vergleichseinheit 110 anzeigt, daß die aktu­ elle Zugriffsanfrage ein Treffer bezüglich eines in der Reihe B des Seitenverzeichnisses 125 abgespeicherten Speicherplatzes ist, das Signal LRU_B freigeschalten, so daß bewirkt wird, daß die entsprechende Speicherzelle im Seitenverzeichnis 125 auf 0 gesetzt wird; und währenddessen werden alle anderen LRU-Spei­ cherzellen in anderen Reihen, die geringer sind, als der ursprünglich in der LRU_B-Speicherzelle abgespeicherte Wert, um 1 erhöht. Außerdem wird das Signal LRU_A freigeschalten, so daß bewirkt wird, daß die entsprechende Speicherzelle im Seitenver­ zeichnis 125 von 0 auf 1 geschalten wird. Danach wird das Sig­ nal PGFLH in einen Zustand logisch hoher Spannung geschalten und das Signal VLD_A in einen Zustand logisch niedriger Span­ nung geschalten, wodurch bewirkt wird, daß der EDO/FP DRAM ge­ schlossen wird.
Bevor ein Auffrischungsprozeß durchgeführt wird, sollten zuerst alle Bänke in der SDRAM-Einheit 220 vorgeladen werden. Dazu sollten zuerst alle VLD-Werte im Seitenverzeichnis 125 auf 0 gesetzt werden, wodurch die Ungültigkeit aller Adreßdaten im Seitenverzeichnis 125 angezeigt wird. Außerdem ist, wenn ein VC-SDRAM verwendet wird, keine Aktualisierung der Adreßdaten im Seitenverzeichnis 125 erforderlich, da der VC-SDRAM eine automatische Vorladeeinrichtung verwendet.
Zusammenfassend haben das Verfahren und das System zur Spei­ cherzugriffsverwaltung gemäß der Erfindung folgende Vorteile. Erstens ist die Speicherzugriffs-Performanz durch ein Verfolgen der Geschichte vorangehender Zugriffsoperationen auf den SDRAN erhöhbar. Zweitens kann im Voraus abgeschätzt werden, ob der nächste Pipeline-Zugriff ein Vorladen erfordert oder nicht; falls ja, wird zu der Zeit, wenn der aktuelle Zugriff abge­ arbeitet wird, ein Vorlade-Freigabesignal ausgegeben. Folglich ist die Zugriffsverzögerung reduzierbar. Insgesamt ist die Speicherzugriffs-Performanz erhöht.

Claims (11)

1. System zur Speicherzugriffsverwaltung (100) zum Verfolgen der Zugriffsgeschichte auf eine Speichereinheit, die aufweist:
eine Seitenverzeichnis-Register-Einheit (120) mit einem Seiten­ verzeichnis (125) zum Abspeichern einer vorbestimmten Anzahl von Speicherplätzen der Speichereinheit, auf welche Speicher­ plätze kürzlich zugegriffen worden ist, wobei jeder abgespei­ cherte Speicherplatz zusammen mit einem am längsten-unbenutzt- Eintrag (LRU) abgespeichert ist, der angibt, ob auf den abge­ speicherten Speicherplatz am längsten nicht zugegriffen worden ist;
eine Vergleichseinheit (110), die vermag, in Reaktion auf jede Zugriffsanfrage auf die Speichereinheit zu überprüfen, ob der angefragte Speicherplatz ein Treffer bezüglich eines im Sei­ tenverzeichnis (125) der Seitenverzeichnis-Register-Einheit (120) abgespeicherten Speicherplatzes ist; wobei im Falle eines Treffers die Vergleichseinheit (110) ein Treffersignal erzeugt;
eine mit der Seitenverzeichnis-Register-Einheit (120) gekoppel­ te Ausnutzungsraten-Register-Einheit (130) zum Überwachen der in der Seitenverzeichnis-Register-Einheit (120) abgespeicherten am längsten-unbenutzt-Einträge (LRU); und
eine mit der Seitenverzeichnis-Register-Einheit (120) gekoppel­ te Gültigkeitsprüfeinheit (140) zum Überprüfen, ob die im Sei­ tenverzeichnis (125) der Seitenverzeichnis-Register-Einheit (120) abgespeicherten Adreßdaten gültig oder ungültig sind.
2. System (100) nach Anspruch 1, wobei die Seitenverzeichnis- Register-Einheit (120) aufweist:
eine mit der Vergleichseinheit (110) gekoppelte Latch-, d. h. Auffangschaltung (410) zum Zwischenspeichern der Ausgangssig­ nale von der Vergleichseinheit (110), die angeben, ob der ange­ fragte Speicherplatz ein Treffer bezüglich des Seitenverzeich­ nisses (125) ist; und
eine mit der Auffangschaltung (410), der Ausnutzungsraten- Register-Einheit (130) und der Gültigkeitsprüfeinheit (140) gekoppelte Auswahlschaltung (420) zum Auswählen eines der im Seitenverzeichnis (125) abgespeicherten Speicherplätze auf Grundlage des Ausgangssignals der Auffangschaltung (410), der Ausnutzungsraten-Register-Einheit (130) und der Gültigkeits­ prüfeinheit (140).
3. System (100) nach Anspruch 1, wobei das Seitenverzeichnis (125) weiter in Verbindung mit jedem abgespeicherten Speicher­ platz ein Gültigkeitsbit (VLD) aufweist, welches anzeigt, ob der abgespeicherte Speicherplatz gültig oder ungültig ist.
4. System (100) nach Anspruch 3, wobei das Gültigkeitsbit (VLD) eines jeden abgespeicherten Speicherplatzes durch die Ver­ gleichseinheit (110) gesetzt und aktualisiert wird.
5. System (100) nach Anspruch 4, wobei der einem jeden im Sei­ tenverzeichnis (125) abgespeicherten Speicherplatz zugeordnete am längsten-unbenutzt-Eintrag (LRU) durch die Ausnutzungsraten- Register-Einheit (130) gesetzt und aktualisiert wird.
6. System (100) nach Anspruch 5, wobei jeder am längsten-unbe­ nutzt-Eintrag (LRU) durch einen numerischen Wert in einem vor­ bestimmten Zahlenbereich dargestellt ist, wobei der kleinste Wert anzeigt, daß auf den zugehörigen Speicherplatz zuletzt zugegriffen worden ist, und der höchste Wert anzeigt, daß auf den zugehörigen Speicherplatz am längsten nicht zugegriffen worden ist.
7. System (100) nach Anspruch 6, wobei in dem Fall, daß die aktuelle Zugriffsanfrage ein Fehltreffer bezüglich des Seiten­ verzeichnisses (125) ist, der Speicherplatz der aktuellen Zu­ griffsanfrage zum Ersetzen desjenigen verwendet wird, dessen am längsten-unbenutzt-Eintrag (LRU) den höchsten Wert aufweist.
8. System (100) nach Anspruch 7, wobei, bevor der Speicherplatz der aktuellen Zugriffsanfrage denjenigen ersetzt, dessen am längsten-unbenutzt-Eintrag (LRU) den höchsten Wert hat, er­ setzt, die Gültigkeitsprüfeinheit (140) überprüft, ob das zuge­ hörige Gültigkeitsbit (VLD) gesetzt ist, so daß es Gültigkeit anzeigt; falls ja, ein Wiederherstellungssignal zum Wiederher­ stellen des ursprünglichen Zustandes im entsprechenden Spei­ cherplatz erzeugt wird.
9. System (100) zur Speicherzugriffsverwaltung zum Verfolgen der Zugriffsgeschichte auf eine Speichereinheit, welche auf­ weist:
eine Seitenverzeichnis-Register-Einheit (120) mit einem Seiten­ verzeichnis (125) zum Abspeichern einer vorbestimmten Anzahl von Speicherplätzen in der Speichereinheit, auf die kürzlich zugegriffen worden ist, wobei jeder abgespeicherte Speicher­ platz eine Bankadresse (BNK) und eine Seitenadresse (PAG) auf­ weist, und wobei jeder abgespeicherte Speicherplatz zusammen mit einem am längsten-unbenutzt-Eintrag (LRU) und einem Gül­ tigkeitsbit (VLD) abgespeichert wird, wobei der am längsten- unbenutzt-Eintrag (LRU) anzeigt, ob der zugehörige Speicher­ platz am längsten unbenutzt ist, und wobei das Gültigkeitsbit (VLD) anzeigt, ob der zugehörige Speicherplatz gültig oder un­ gültig ist; und wobei jeder am längsten-unbenutzt-Eintrag (LRU) durch einen numerischen Wert aus einem vorbestimmten Zahlen­ bereich dargestellt wird, wobei der kleinste Wert anzeigt, daß auf den zugehörigen Speicherplatz zuletzt zugegriffen worden ist, und der höchste Wert anzeigt, daß auf den zugehörigen Speicherplatz am längsten nicht zugegriffen worden ist;
eine Vergleichseinheit (110), die vermag, in Reaktion auf jede Zugriffsanfrage auf die Speichereinheit, zu überprüfen, ob der angefragte Speicherplatz ein Banktreffer oder ein Seitentreffer bezüglich eines der im Seitenverzeichnis (125) der Seitenver­ zeichnis-Register-Einheit (120) abgespeicherten Speicherplätze ist; wobei die Vergleichseinheit (110) im Fall eines Banktref­ fers ein Banktreffersignal (BKHIT) und im Fall eines Seiten­ treffers ein Seitentreffersignal (ONPAG) erzeugt;
eine mit der Seitenverzeichnis-Register-Einheit (120) gekoppel­ te Ausnutzungsraten-Register-Einheit (130) zum Überwachen der in der Seitenverzeichnis-Register-Einheit (120) abgespeicherten am längsten-unbenutzt-Einträge (LRU), und die vermag, im Fall eines Seitenfehltreffers und Bankfehltreffers bezüglich des Seitenverzeichnisses (125) denjenigen der im Seitenverzeichnis (125) abgespeicherten Speicherplätze, auf den am längsten nicht zugegriffen worden ist, durch den Speicherplatz der aktuellen Zugriffsanfrage zu ersetzen; und
eine mit der Seitenverzeichnis-Register-Einheit (120) gekoppel­ te Gültigkeitsprüfeinheit (140) zum Überprüfen, ob die im Sei­ tenverzeichnis (125) der Seitenverzeichnis-Register-Einheit (120) abgespeicherten Daten gültig oder ungültig sind.
10. System (100) nach Anspruch 9, wobei in dem Fall, das die aktuelle Zugriffsanfrage ein Banktreffer, dabei jedoch ein Seitenfehltreffer ist, die Seitenverzeichnis-Register-Einheit (120) die im Seitenverzeichnis (125) abgespeicherte aktuelle Seitenadresse durch die Seitenadresse der aktuellen Zugriffs­ anfrage ersetzt.
11. Verfahren zur Speicherzugriffsverwaltung zum Verfolgen der Zugriffsgeschichte auf eine Speichereinheit, welches Verfahren die Schritte aufweist:
  • 1. Bereitstellen eines Seitenverzeichnisses (125) zum Abspei­ chern einer vorbestimmten Anzahl von Speicherplätzen in der Speichereinheit, auf die kürzlich zugegriffen worden ist, wobei jeder abgespeicherte Speicherplatz zusammen mit einem am läng­ sten-unbenutzt-Eintrag (LRU) und einem Gültigkeitsbit (VLD) ab­ gespeichert wird, wobei der am längsten-unbenutzt-Eintrag (LRU) angibt, ob der zugehörige Speicherplatz am längsten nicht be­ nutzt worden ist, und das Gültigkeitsbit (VLD) angibt, ob der zugehörige Speicherplatz gültig oder ungültig ist;
  • 2. In Reaktion auf eine Zugriffsanfrage Vergleichen des ange­ fragten Speicherplatzes mit den im Seitenverzeichnis (125) abgespeicherten Speicherplatzdaten, wodurch auf Übereinstimmung geprüft wird;
    falls Übereinstimmung besteht, Erzeugen eines Treffersignals; wohingegen
    falls nicht, Ersetzen desjenigen der im Seitenverzeichnis (125) abgespeicherten Speicherplätze, auf den am längsten nicht zuge­ griffen worden ist, durch den Speicherplatz der aktuellen Zu­ griffsanfrage; und
  • 3. Überprüfen, ob das zugehörige Gültigkeitsbit (VLD) des Speicherplatzes, auf den am längsten nicht zugegriffen worden ist, gesetzt ist, so daß Gültigkeit angezeigt wird; falls ja, Erzeugen eines Wiederherstellungssignals zum Wiederherstellen des ursprünglichen Zustandes in der entsprechenden Speicher­ zelle.
DE19957612A 1999-03-05 1999-11-30 Verfahren und System zur Speicherzugriffsverwaltung für Synchronous Dynamic Random-Access Memories oder dergleichen Ceased DE19957612A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW088103372A TW416032B (en) 1999-03-05 1999-03-05 Memory pages management device and method for tracking memory access

Publications (1)

Publication Number Publication Date
DE19957612A1 true DE19957612A1 (de) 2000-09-07

Family

ID=21639871

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19957612A Ceased DE19957612A1 (de) 1999-03-05 1999-11-30 Verfahren und System zur Speicherzugriffsverwaltung für Synchronous Dynamic Random-Access Memories oder dergleichen

Country Status (4)

Country Link
US (1) US6490665B1 (de)
JP (1) JP2000267930A (de)
DE (1) DE19957612A1 (de)
TW (1) TW416032B (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571323B2 (en) * 1999-03-05 2003-05-27 Via Technologies, Inc. Memory-access management method and system for synchronous dynamic Random-Access memory or the like
US6625700B2 (en) * 2001-05-31 2003-09-23 Sun Microsystems, Inc. Arbitration and select logic for accessing a shared memory
KR100678913B1 (ko) * 2005-10-25 2007-02-06 삼성전자주식회사 가상 메모리 시스템에서 페이지 폴트를 줄이는 장치 및방법
CN101751341B (zh) * 2008-12-18 2012-05-23 慧国(上海)软件科技有限公司 非易失性存储器资料管理方法及非易失性储存装置
KR101612922B1 (ko) * 2009-06-09 2016-04-15 삼성전자주식회사 메모리 시스템 및 메모리 시스템 관리 방법
WO2013095644A1 (en) * 2011-12-23 2013-06-27 Intel Corporation Page miss handler including wear leveling logic
US10528488B1 (en) * 2017-03-30 2020-01-07 Pure Storage, Inc. Efficient name coding
TWI639920B (zh) 2017-11-17 2018-11-01 財團法人工業技術研究院 記憶體控制器及其控制方法以及記憶體及其控制方法
US11537306B2 (en) * 2021-03-12 2022-12-27 Micron Technology, Inc. Cold data detector in memory system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69130495T2 (de) * 1990-06-29 1999-06-24 Digital Equipment Corp., Maynard, Mass. Umwandlung der Befehle von internen Prozessorregistern in I/O-Adressraum
US5873123A (en) * 1996-06-25 1999-02-16 International Business Machines Corporation Processor and method for translating a nonphysical address into a physical address utilizing a selectively nonsequential search of page table entries
US5781922A (en) * 1996-11-19 1998-07-14 International Business Machines Corporation Page boundary caches
US6069638A (en) * 1997-06-25 2000-05-30 Micron Electronics, Inc. System for accelerated graphics port address remapping interface to main memory

Also Published As

Publication number Publication date
JP2000267930A (ja) 2000-09-29
TW416032B (en) 2000-12-21
US6490665B1 (en) 2002-12-03

Similar Documents

Publication Publication Date Title
DE3909896C2 (de)
DE3834759C2 (de)
DE3724317C2 (de)
DE19740695C2 (de) Datenspeicher mit Mehrebenenhierarchie
DE68910391T2 (de) Verfahren zum Speicherdatenzugriff.
DE19526007C2 (de) Horizontal partitionierter Befehls-Cache-Speicher
DE19882486B4 (de) Synchroner, nicht-flüchtiger Seitenmodus-Speicher
DE69031411T2 (de) Verfahren und Anordnung zum Lesen, Schreiben und Auffrischen eines Speichers mit direktem virtuellem oder physikalischem Zugriff
DE3618163C2 (de) Speichermanagementanordnung für ein Mikroprozessorsystem
EP0513611B1 (de) Verfahren zur Datenübertragung für einen Halbleiterspeicher und Halbleiterspeicher zur Durchführung des Verfahrens
EP0974977A2 (de) Integrierter Speicher
DE10307244A1 (de) Automatische Vorladesteuerungsschaltung und zugehöriges Vorladesteuerungsverfahren
DE202007019469U1 (de) Vorrichtung zum Kommunizieren von Befehls- und Adresssignalen
DE10392462T5 (de) Verahren und System zur Speicherzugriffsverwaltung für einen synchronen, dynamischen Direktzugriffsspeicher oder dergleichen
DE19526008A1 (de) Vertikal partitionierter, primärer Befehls-Cache-Speicher
DE112004002181T5 (de) Verfahren und Schaltungskonfiguration zum Auffrischen von Daten in einem Halbleiterspeicher
DE19957612A1 (de) Verfahren und System zur Speicherzugriffsverwaltung für Synchronous Dynamic Random-Access Memories oder dergleichen
DE69025782T2 (de) Registerbankschaltung
DE4302754C1 (de) Monolithisch integrierte Datenspeicheranordnung und Verfahren zu deren Betrieb
DE112007003117T5 (de) Neue Implementierung der Spaltenredundanz für einen Flash-Speicher mit einem hohen Schreibparallelismus
DE10234944B4 (de) Verfahren zum Testen eines Halbleiterspeichers mit mehreren Speicherbänken
DE2355814C2 (de) Kanalzugriffseinrichtung für eine hierarchische Speicheranordnung
EP1100016B1 (de) Speichereinrichtung mit Ersatz-Speicherzellen
DE3535215A1 (de) Verfahren und schaltungsanordnung zum lesen von daten aus dem speicher einer datenverarbeitungsanlage
DE10332314B4 (de) Halbleiterspeicher mit kurzer effektiver Wortleitungszykluszeit sowie Verfahren zum Lesen von Daten aus einem derartigen Halbleiterspeicher

Legal Events

Date Code Title Description
8128 New person/name/address of the agent

Representative=s name: BECKER, KURIG, STRAUS, 80336 MUENCHEN

8110 Request for examination paragraph 44
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20111129