DE102005047197B4 - Speichersystem und Betriebsverfahren - Google Patents

Speichersystem und Betriebsverfahren Download PDF

Info

Publication number
DE102005047197B4
DE102005047197B4 DE102005047197A DE102005047197A DE102005047197B4 DE 102005047197 B4 DE102005047197 B4 DE 102005047197B4 DE 102005047197 A DE102005047197 A DE 102005047197A DE 102005047197 A DE102005047197 A DE 102005047197A DE 102005047197 B4 DE102005047197 B4 DE 102005047197B4
Authority
DE
Germany
Prior art keywords
memory
cache
data
refresh
read
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.)
Active
Application number
DE102005047197A
Other languages
English (en)
Other versions
DE102005047197A1 (de
Inventor
Min-Yeol Ha
Hyun-Taek Jung
Suk-Soo Pyo
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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
Priority claimed from KR1020040077594A external-priority patent/KR100564633B1/ko
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102005047197A1 publication Critical patent/DE102005047197A1/de
Application granted granted Critical
Publication of DE102005047197B4 publication Critical patent/DE102005047197B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40603Arbitration, priority and concurrent access to memory cells for read/write or refresh operations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40607Refresh operations in memory devices with an internal cache or data buffer

Abstract

Speichersystem mit – einem Hauptspeicher, der zum Beibehalten von Daten aufzufrischen ist und in Blöcke (M1 bis Mn) aufgeteilt ist, – einem Cachespeicher (123), der zum Beibehalten von Daten aufzufrischen ist und Informationen speichert, die mit ausgewählten Blöcken (M1 bis Mn) des Hauptspeichers korrespondieren, wobei dem Cachespeicher Anzeigebits zugeordnet sind, die anzeigen, ob eine bestimmte Information eine gültige Information ist, – einer Auffrischungsschaltung, die periodisch den Hauptspeicher und den Cachespeicher auffrischt und der ein Auffrischungsstartsignal (RFSS) zugeordnet ist, und – einer Eingabe-/Ausgabeschaltung, die Lesesignale erzeugt, welche Informationen von einem Zielspeicherblock im Speichersystem anfordern, gekennzeichnet durch – eine Steuerschaltung, die dafür eingerichtet ist, die Auffrischung des Zielspeicherblocks zu verzögern, die angeforderten Informationen aus dem Hauptspeicher zu lesen und den Inhalt des Zielspeicherblocks des Lesevorgangs an den Cachespeicher (123) zu übertragen und nach dem Durchführen dieser beiden Schritte den Zielspeicherblock aufzufrischen, wenn das Auffrischungsstartsignal (RFSS) freigegeben ist, ein Lesesignal (Ren) empfangen wird, der Cachespeicher nicht die Informationen des Zielblocks des Lesesignals (Ren) enthält und die Daten im Cachespeicher keine gültigen Daten eines anderen Speicherblocks sind, – wobei der Lesevorgang und der Auffrischungsvorgang ohne einen Rückschreibvorgang vom Cachespeicher zum Hauptspeicher stattfinden, wenn im Cachespeicher nicht der Zielspeicherblockinhalt des Lesesignals gespeichert ist und die Daten im Cachespeicher keine gültigen Daten der anderen Speicherblöcke sind.

Description

  • Die Erfindung betrifft ein Speichersystem und ein Betriebsverfahren für ein Speichersystem.
  • Ein dynamischer Speicher mit direktem Zugriff (DRAM) ist ein weit verbreiteter Speichertyp. Eine wichtige Eigenschaft von DRAM-Speichern besteht darin, dass im DRAM gespeicherte Daten periodisch aufgefrischt werden müssen, da sonst die Daten verloren gehen.
  • Anforderungen, auch Anfragen oder Aufrufe genannt, nach externem Zugriff auf Daten erfolgen in der Regel an zufälligen Zeitpunkten. Daher können eine externe Zugriffsanfrage und eine Auffrischungsanfrage eventuell zum gleichen Zeitpunkt initiiert werden. In einigen Speichersystemen wird während eines Auffrischungsvorgangs ein Zugriff auf das DRAM verschoben. Solche Systeme weisen eine variable Latenz auf, wodurch die Systemkomplexität und der Bedarf an Speicherbandbreite erhöht werden. In anderen Systemen wird die Zykluszeitsteuerung so ausgelegt, dass sowohl ein externer Zugriff als auch eine Auffrischung innerhalb einer erlaubten Zykluszeit erfolgen können. Dies verhindert, dass sich ein Auffrischungsvorgang mit einer externen Zugriffsanforderung überlagert.
  • Die erforderliche Zeitdauer, um auf im Speicher gespeicherte Daten zuzugreifen, wird als Speicherzugriffszeit bezeichnet. Es ist allgemein bekannt, dass ein schneller statischer Cachespeicher mit direktem Zugriff (SRAM-Cache) zu einem Speichersystem hinzugefügt werden kann, um die durchschnittliche Zugriffszeit zu reduzieren. Zuletzt bzw. vor kurzem benutzte Daten werden im schnellen Cachespeicher gespeichert, so dass eine Leseanfrage oft erfüllt werden kann, ohne auf einen langsameren Hauptspeicher zuzugreifen. Die Cachetrefferrate ist ein Maß für den prozentualen Anteil, zu welchem gewünschte Daten im Cachespeicher abgelegt sind, wodurch die Notwenigkeit eines Zugriffs auf den Hauptspeicher zur Erfüllung einer Zugriffsanforderung vermieden wird. Die aktuelle Zugriffszeit für ein Speichersystem ist von der Cachetrefferrate abhängig.
  • Herkömmliche Speichersysteme mit Hauptspeicher und Cachespeicher, bei denen einerseits externe Zugriffe und andererseits Auffrischungsvorgänge zu verarbeiten sind, sind beispielsweise in den Patentschriften US 6,697,909 B1 und US 6,757,784 B2 offenbart.
  • Es ist Aufgabe der Erfindung, ein Speichersystem und ein Betriebsverfahren für ein Speichersystem anzugeben, welche einen Zugriff auf einen DRAM-Speicher ermöglichen, ohne dass im Allgemeinen eine Auffrischungsperiode den Speicherzugriff verzögert.
  • Die Erfindung löst diese Aufgabe durch ein Speichersystem mit den Merkmalen des Patentanspruchs 1 oder 6 und durch ein Betriebsverfahren für ein Speichersystem mit den Merkmalen des Patentanspruchs 14.
  • Vorteilhafte Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen angegeben.
  • Die Erfindung stellt einen Speicher und ein Speichersteuersystem zur Verfügung, in welchen außer für einen unten beschriebenen Fall ein Hauptspeicher Lese- oder Schreibvorgängen Priorität gegenüber Auffrischungsvorgängen einräumt. Andererseits räumt ein Cachespeicher den Auffrischungsvorgängen Priorität gegenüber Lese- oder Schreibvorgängen ein. Der Ausnahmefall ist, dass ein Speicherlesesignal empfangen wird, wenn eine Auffrischung des Cachespeichers freigegeben ist und die Daten im Cachespeicher gültig sind. In diesem Ausnahmefall wird der Auffrischungsvorgang für den Cachespeicher verzögert. Während eines Auffrischungsvorgangs werden, wenn eine Leseanforderung für einen bestimmten Speicherblock vorhanden ist, der nicht im Cachespeicher ist, und die Daten im Cachespeicher nicht gültig sind, während des Lesevorgangs die Daten aus diesem Speicherblock auch in den Cachespeicher geschrieben. Der besagte Speicherblock wird nach Abschluss des Lesevorgangs aufgefrischt. In diesem Fall wird kein Zurückschreiben aus dem Cachespeicher durchgeführt. Dies reduziert die Anzahl von Zurückschreibvorgängen und eliminiert eine Verzögerung aufgrund des Auffrischungsvorgangs.
  • Vorteilhafte Ausführungsformen der Erfindung sind in den Zeichnungen dargestellt und werden nachfolgend beschrieben. Es zeigen:
  • 1 ein Blockdiagramm eines Speichersystems,
  • 2A-1 und 2A-2 ein Flussdiagramm bzw. ein logisches Blockdiagramm eines Lesevorgangs,
  • 2B-1 und 2B-2 ein Flussdiagramm bzw. ein logisches Blockdiagramm eines Schreibvorgangs,
  • 2C und 2D je ein Flussdiagramm eines Cacheauffrischungsvorgangs,
  • 3 ein Blockdiagramm einer Hauptspeichersteuerschaltung z. B. für das Speichersystem von 1,
  • 4, 5 und 6 jeweils ein Blockdiagramm beispielhafter Realisierungen verschiedener Komponenten der Hauptspeichersteuerung von 3,
  • 7 ein Blockdiagramm eines Cachespeichers z. B. für das Speichersystem von 1,
  • 8 ein Logikschaltbild einer beispielhaften Realisierung eines Steuersignalgenerators im Cachespeicher von 7,
  • 9 ein Blockdiagramm eines Speicherblocks z. B. für das Speichersystem von 1 und
  • 10 ein Logikschaltbild einer beispielhaften Realisierung eines Steuersignalgenerators im Speicherblock von 9.
  • In den Zeichnungen bezeichnen gleiche Bezugszeichen Elemente bzw. Komponenten, welche gleiche bzw. analoge Funktionen ausführen. Der Begriff „Zielspeicherblock” wird im Zusammenhang mit Lese- und Schreibvorgängen verwendet. Der Zielblock eines Schreibvorgangs ist der Speicherblock, in den Daten geschrieben werden. Der Zielblock eines Lesevorgangs ist der Speicherblock, aus dem Daten gelesen werden.
  • 1 zeigt ein Übersichtsblockdiagramm eines Speichersystems gemäß der Erfindung. In 1 ist ein Speicher mit vier DRAM-Speicherblöcken M1, M2, M3 und Mn explizit dargestellt, wobei jedoch eine beliebige Anzahl n von Speicherblöcken größer gleich eins vorgesehen sein kann.
  • Des Weiteren umfasst das System von 1 einen Auffrischungszustandsdetektor 110, eine gestrichelt dargestellte Steuereinheit 120, einen Adressenpuffer 130 und einen Eingabe-/Ausgabetreiber 140 (I/O-Treiber). Die Steuereinheit 120, für die eine vorteilhafte Realisierung in den 3, 4, 5 und 6 im Detail dargestellt ist, umfasst eine Hauptsteuerschaltung 121, eine Auffrischungssteuerschaltung 122, einen Cachespeicher 123, für den eine vorteilhafte Realisierung im Detail in 7 dargestellt ist, und Multiplexer 124 und 125. Für jeden der Speicherblöcke M1 bis Mn ist in 9 anhand des Blocks M1 eine vorteilhafte Realisierungsmöglichkeit im Detail dargestellt.
  • Die Speicherblöcke M1 bis Mn werden in Reaktion auf ein Auffrischungsstartsignal RFSS und ein Auffrischungsadressensignal RFA aufgefrischt. Die Speicherblöcke geben Auffrischungszustandssignale RFSE1 bis RFSEn aus und führen in Reaktion auf Speicherlesesteuersignale MR1 bis MRn einen Lesevorgang sowie in Reaktion auf Speicherschreibsteuersignale MW1 bis MWn und Speicherrückschreibsteuersignale CWB1 bis CWBn einen Schreibvorgang durch.
  • Der Auffrischungszustandsdetektor 110 ist eine logische Schaltung, welche in Reaktion auf irgendeines der Auffrischungszustandssignale RFSE1 bis RFSEn ein Auffrischungsinformationssignal RFSE ausgibt. Zudem gibt der Auffrischungszustandsdetektor 110 das Auffrischungsinformationssignal RFSE frei, wenn alle Auffrischungszustandssignale RFSE1 bis RFSEn freigegeben sind.
  • Die Hauptsteuerschaltung 121 empfängt eine Anzahl von Eingaben einschließlich eines Lesesignals Ren oder eines Schreibsignals Wen und erzeugt Speichersteuersignale einschließlich einer Rückschreibadresse CWBRC, der Speicherlesesteuersignale MR1 bis MRn, der Speicherschreibsteuersignale MW1 bis MWn, der Speicherrückschreibsteuersignale CWB1 bis CWBn, eines Cachelesesteuersignals CR, eines Cacheschreibsteuersignals CW, eines Cacherückschreibsteuersignals CWB, eines Cacheschreibtreffersignals CWH, eines Cachespeichertreffersignals CH, eines Lesesteuersignals REN und eines Schreibsteuersignals WEN.
  • Die Auffrischungssteuerschaltung 122 erzeugt periodisch ein Auffrischungssteuersignal CRFS und ein Auffrischungsadressensignal RFA in Reaktion auf ein Taktsignal CLK. Die exakte Zeitsteuerung dieser Signale ist von den physikalischen Eigenschaften des Speichers abhängig und von herkömmlicher Art.
  • Der Cachespeicher 123, der im Detail in 7 dargestellt ist, wird in Reaktion auf das Auffrischungssteuersignal CRFS und das Auffrischungsadressensignal RFA aufgefrischt und erzeugt das Auffrischungsstartsignal RFSS. Er gibt Cachelesedaten CDAT aus, wenn das Cachelesesteuersignal CR freigegeben ist, und er schreibt Eingabedaten IDAT oder Speicherlesedaten MDAT, die aus einem jeweiligen Speicherblock gelesen werden, wenn das Cacheschreibsteuersignal CW freigegeben ist.
  • Der Multiplexer 124 gibt die Eingabedaten IDAT aus, wenn das Schreibsteuersignal WEN freigegeben ist, und gibt die Speicherlesedaten MDAT aus, wenn das Steuersignal WEN gesperrt ist.
  • Der Multiplexer 125 gibt die Cachelesedaten CDAT aus, wenn das Cachespeichertreffersignal CH freigegeben ist, und gibt die Speicherlesedaten MDAT aus, wenn das Cachespeichertreffersignal CH gesperrt ist.
  • Der Adressenpuffer 130 empfängt ein externes Adressensignal EX_ADD und das Taktsignal CLK und gibt ein Bankadressensignal BA an die Hauptsteuerschaltung 121 und ein Zeiten-/Spaltenadressensignal RC_ADD an die Steuereinheit 120 aus. Das Zeilen-/Spaltenadressensignal RC_ADD wird zum Cachespeicher 123 und zu den Speicherblöcken M1 bis Mn geleitet.
  • Die Block-/Flussdiagramme gemäß den 2A-1 bis 2D zeigen Vorgänge, welche das System in verschiedenen Situationen ausführt, insbesondere die wesentlichen Aktionen, die im System auftreten, und die Bedingungen, unter denen sie auftreten. Die 2A-1 und 2A-2 zeigen, was passiert, wenn das Auffrischungsstartsignal RFSS freigegeben ist und die Hauptsteuerschaltung 121 das Lesesignal Ren empfängt. Zudem zeigen 2A-1 und 2A-2, was passiert, wenn das Auffrischungsstartsignal RFSS gesperrt ist und die Hauptsteuerschaltung 121 das Lesesignal Ren empfängt, wobei dies in 2A-1 als Flussdiagramm und in 2A-2 als logisches Blockdiagramm dargestellt ist, d. h. beide Figuren zeigen den gleichen Ablauf auf verschiedene Weise.
  • Die 2B-1 und 2B-2 zeigen, was passiert, wenn das Auffrischungsstartsignal RFSS freigegeben ist und die Hauptsteuerschaltung 121 das Schreibsignal Wen empfängt. Zudem zeigen die 2B-1 und 2B-2, was passiert, wenn das Auffrischungsstartsignal RFSS gesperrt ist und die Hauptsteuerschaltung 121 das Schreibsignal Wen empfängt, wobei dies in 2B-1 als Flussdiagramm und in 2B-2 als logisches Blockdiagramm dargestellt ist, d. h. beide Figuren zeigen den gleichen Ablauf auf verschiedene Weise.
  • 2C zeigt, was passiert, wenn das Auffrischungssteuersignal CRFS freigegeben ist und die Hauptsteuerschaltung 121 das Lesesignal Ren empfängt. Zudem zeigt 2C, was passiert, wenn das Auffrischungssteuersignal CRFS gesperrt ist und die Hauptsteuerschaltung 121 das Lesesignal Ren empfängt.
  • 2D zeigt, was passiert, wenn das Auffrischungssteuersignal CRFS freigegeben oder gesperrt ist und die Hauptsteuerschaltung 121 das Schreibsignal Wen empfängt. Die Funktionsweise gemäß den Flussdiagrammen bzw. logischen Blockdiagrammen der 2A-1 bis 2D wird nachfolgend im Detail beschrieben.
  • Die 2A-1 und 2A-2 zeigen beide die Vorgänge, welche auftreten, wenn das Lesesignal Ren empfangen wird. Aufgrund der Komplexität der Vorgänge wird die Information auf unterschiedliche Weise dargestellt, um das Verständnis zu erleichtern. Die Schaltungen, welche diese Vorgänge ausführen, sind in den 3 bis 10 dargestellt.
  • Die genaue Funktionsweise, welche auftritt, wenn das Lesesignal Ren empfangen wird, ist von mehreren Faktoren abhängig, einschließlich dem Zustand des Auffrischungsstartsignals RFSS und davon, ob die angeforderten Daten im Cachespeicher sind und ob die Daten im Cachespeicher gültige Daten sind oder nicht.
  • In 2A-1 wird im Block 901 der Empfang des Lesesignals Ren angezeigt. Die genaue Funktionsweise, welche auftritt, wenn das Lesesignal Ren empfangen wird, ist davor abhängig, ob das Auffrischungsstartsignal RFSS freigegeben oder gesperrt ist, wie im Block 902 ermittelt wird. In 2A-2 wird dies durch UND-Blöcke 961 und 962 bestimmt.
  • Wird das Lesesignal Ren empfangen und ist das Auffrischungsstartsignal RFSS freigegeben, dann ist die Funktionsweise zudem davon abhängig, ob die Daten im Cachespeicher 123 gültige Daten vom angeforderten Speicherblock sind oder nicht. In 2A-1 wird dies durch den Block 903 ermittelt. In 2A-2 wird dies durch UND-Blöcke 963, 964, 966 und 967 ermittelt.
  • Sind die Daten im Cachespeicher 123 gültige Daten aus dem angeforderten Speicherblock, dann steuert die Hauptsteuerschaltung 121 den Lesevorgang des Cachespeichers 123 und die Speicherblöcke werden aufgefrischt. In 2A-1 wird dies durch den Block 905 angezeigt und in 2A-2 wird dies durch die Ausgabe des Blocks 967 angezeigt.
  • Wenn die Daten im Cachespeicher 123 keine gültigen Daten aus dem angeforderten Speicherblock sind, dann ist das weitere Vorgehen davon abhängig, ob die Daten im Cachespeicher gültige Daten von einem anderen Speicherblock sind oder nicht. Dies wird im Block 906 ermittelt. Sind die Daten im Cachespeicher gültige Daten eines anderen Speicherblocks, dann wird das Verfahren gemäß den Blöcken 908, 911 und 913 aus 2A-1 fortgesetzt. Dies ist die Funktionsweise, welche in 2A-2 auf der rechten Seite des Blocks 966 aufgelistet ist. Der Ablauf ist wie folgt:
    • 1) Die Hauptsteuerschaltung 121 hält (a) den Auffrischvorgang des mit dem Cachespeicher 123 abgestimmten Speicherblocks und (b) des angeforderten Speicherblocks an und fährt mit der Steuerung der Auffrischung der anderen Speicherblöcke fort.
    • 2) Die Daten im Cachespeicher 123 werden in den Speicherblock zurückgeschrieben, welcher mit den Daten im Cachespeicher übereinstimmt.
    • 3) Ein Lesevorgang wird mit dem angeforderten Speicherblock ausgeführt.
    • 4) Die angeforderten Daten werden in den Cachespeicher geschrieben.
    • 5) Nach den obigen Vorgängen werden der abgestimmte Speicherblock und der angeforderte Speicherblock aufgefrischt.
  • Zeigt die Überprüfung im Block 906 an, dass die Daten im Cachespeicher 123 nicht gültige Daten sind, dann wird das Verfahren mit den Blöcken 909, 912 und 924 aus 2A-1 fortgesetzt. Diese Funktionsweise ist auch als Ausgabe des Blocks 968 in 2A-2 dargestellt. Der Ablauf ist wie folgt:
    • 1) Die Hauptsteuerschaltung 121 hält den Auffrischungsvorgang des angeforderten Speicherblocks an und steuert den Auffrischungsvorgang der anderen Speicherblöcke.
    • 2) Ein Lesevorgang wird mit dem angeforderten Speicherblock ausgeführt und gleichzeitig wird der Inhalt des angeforderten Speicherblocks in den Cachespeicher 123 geschrieben.
    • 3) Nach dem Lesevorgang wird der angeforderte Speicherblock aufgefrischt.
  • Zeigt die Überprüfung im Block 902 an, dass der Auffrischvorgang nicht freigegeben ist, dann wird das Verfahren mit den Blöcken 904, 907 und 910 aus 2A-1 fortgesetzt und die Blöcke 960, 962 und 969 gemäß 2A-2 werden ausgeführt. Wie aus Block 904 ersichtlich ist, wird das Verfahren in Abhängigkeit davon, ob die Daten im Cachespeicher gültige Daten des angeforderten Speicherblocks sind oder nicht, unterschiedlich fortgesetzt. Sind die Daten im Cachespeicher gültige Daten des angeforderten Speicherblocks, dann steuert die Hauptsteuerschaltung 121 den Lesevorgang des Cachespeichers 123. Sind die Daten im Cachespeicher keine gültige des angeforderten Speicherblocks, dann steuert die Hauptsteuerschaltung 121 den Lesevorgang des angeforderten Speicherblocks.
  • Das Ergebnis der oben beschriebenen Vorgänge ist, dass die Auffrischung des DRAM-Speichers effektiv vor anderen Vorgängen verborgen ist, welche während eines Speicherlesevorgangs ausgeführt werden. Zudem wird der Lesevorgang mit dem angeforderten Speicherblock ausgeführt, wenn die Daten im Cachespeicher keine gültigen Daten sind, und gleichzeitig wird der Inhalt des angeforderten Blocks in den Cachespeicher geschrieben. In dieser Situation wird kein Zurückschreibvorgang ausgeführt.
  • Die 2B-1 und 2B-2 zeigen beide die Vorgänge, welche auftreten, wenn das Schreibsignal Wen empfangen wird. Aufgrund der Komplexität der Vorgänge wird die Information auf unterschiedliche Weise dargestellt, um das Verständnis zu erleichtern. Die Schaltungen, welche diese Vorgänge ausführen, sind in den 3 bis 10 dargestellt.
  • Die genaue Funktionsweise, welche auftritt, wenn das Schreibsignal Wen empfangen wird, ist vom Zustand des Auffrischungsstartsignals RFSS und davon abhängig, ob die angeforderten Daten im Cachespeicher Daten sind, welche mit Daten im Zielblock des Schreibsignals Wen korrespondieren. Dieser Prozess beginnt im Block 921, wenn das Schreibsignal Wen empfangen wird.
  • Wie aus 2B-1 ersichtlich ist, ist die Funktionsweise davon abhängig, ob das Auffrischungsstartsignal RFSS freigegeben oder gesperrt ist, was im Block 923 ermittelt wird. In 2B-2 wird dies durch UND-Schaltungen 971 und 972 bestimmt.
  • Ist das Auffrischungsstartsignal RFSS freigegeben, dann wird das Verfahren mit den Blöcken 922, 925, 928, 931 und 932 fortgesetzt. Verschiedene Funktionsweisen können in Abhängigkeit davon auftreten, ob die Daten einer Schreibanforderung an einen Speicherblock im Cachespeicher 123 sind oder nicht. Dies wird durch den Block 922 angezeigt. In 2B-2 zeigen die Blöcke 973, 974 und 975 den gleichen Bestimmungsprozess an.
  • Sind die Daten für den Schreibvorgang in einen Speicherblock im Cachespeicher 123, dann steuert die Hauptsteuerschaltung 121 den Schreibvorgang in den Cachespeicher 123, wie der Block 925 anzeigt, und der korrespondierende Block im Hauptspeicher wird aufgefrischt. Nach dem Schreibvorgang wird das Gültigkeitsdatenbit im Cachespeicher gesetzt.
  • Wenn die Daten im Cachespeicher nicht die Daten des Speicherblocks sind, an den die Schreibanforderung gerichtet ist, dann wird das Verfahren mit den Blöcken 928, 931 und 932 fortgesetzt. Wie Block 928 anzeigt, hält die Hauptsteuerschaltung 121 den Auffrischvorgang des angeforderten Speicherblocks an und steuert den Schreibvorgang in den angeforderten Speicherblock. Ein Auffrischungsvorgang wird für die anderen Speicherblöcke außer für den angeforderten Speicherblock ausgeführt. Nach dem Schreibvorgang wird der angeforderte Speicherblock aufgefrischt, wie durch Block 931 angezeigt wird.
  • Sind die Daten im Cachespeicher 123 gültige Daten eines anderen Speicherblocks, dann werden die Daten im Cachespeicher 123 in diesen Speicherblock zurückgeschrieben und die Daten im Cachespeicher werden als nicht gültig markiert. Da die Daten als nicht gültig markiert sind, kann der Cachespeicher andere Daten empfangen. Dies wird durch den Block 932 angezeigt.
  • Ist der Auffrischvorgang gesperrt, wenn das Schreibsignal empfangen wird, dann wird das Verfahren mit den Blöcken 924, 927, 929 und 930 fortgesetzt. Wie der Block 924 anzeigt, werden die Vorgänge der Blöcke 927 und 929 ausgeführt, wenn die Daten im Cachespeicher die Daten des Speicherblocks sind, auf den der Schreibvorgang gerichtet ist.
  • Sind die Daten im Cachespeicher die Daten des Speicherblocks, auf den der Schreibvorgang gerichtet ist, dann steuert die Hauptsteuerschaltung 121 den Schreibvorgang des angeforderten Speicherblocks. Das Gültigkeitsbit im Cachespeicher 123 wird abgeschaltet, so dass die Speichersteuerschaltung anzeigt, dass die Daten im Cachespeicher 123 nicht gültig sind. Dies wird durch den Block 929 angezeigt. In 2B-2 wird dies durch den Block 978 angezeigt.
  • Sind die Daten im Cachespeicher nicht die Daten des Speicherblocks, auf welchen der Schreibvorgang gerichtet ist, dann steuert die Hauptsteuerschaltung 121 den Schreibvorgang des angeforderten Speicherblocks, wie durch den Block 930 in 2B-1 und durch den Block 979 in 2B-2 angezeigt wird.
  • Aus den obigen Ausführungen ergibt sich, dass sich der Auffrischungsvorgang nicht mit einem Schreibvorgang überschneidet, so dass der Schreibvorgang nicht durch den Auffrischvorgang beeinflusst bzw. verlängert wird.
  • 2C bezieht sich auf die Vorgänge, welche davon abhängig sind, ob das Auffrischungssteuersignal CRFS freigegeben oder gesperrt ist, wenn das Lesesignal Ren empfangen wird.
  • Ein Block 943 teilt das Verfahren in Vorgänge auf, welche ausgeführt werden, wenn das Auffrischungssteuersignal CRFS freigegeben oder gesperrt ist. Ist das Auffrischungssteuersignal CRFS freigegeben, dann ist das weitere Verfahren davon abhängig, ob die Daten im Cachespeicher 123 gültige Daten des Speicherblocks sind, an den die Leseanforderung gerichtet ist, wie im Block 942 dargestellt ist.
  • Sind die Daten im Cachespeicher gültige Daten des Speicherblocks, welcher durch die Leseanforderung spezifiziert wird, dann wird das Verfahren mit Block 945 fortgesetzt. Die Hauptsteuerschaltung 121 hält, d. h. verzögert, den Auffrischungsvorgang des Cachespeichers 123 in diesem Fall an und steuert den Lesevorgang mit dem Cachespeicher 123. Nach dem Abschluss des Lesevorgangs wird der Cachespeicher 123 aufgefrischt und die Daten im Cachespeicher 123 werden in den abgestimmten Speicherblock zurückgeschrieben.
  • Sind die Daten im Cachespeicher nicht gültige Daten des Speicherblocks, der durch die Leseanforderung spezifiziert wird, dann wird das Verfahren mit Block 949 fortgesetzt. Die Hauptsteuerschaltung 121 steuert in diesem Fall den Lesevorgang mit dem angeforderten Speicherblock.
  • Ist das Auffrischungssteuersignal CRFS gesperrt, dann wird das Verfahren mit den Blöcken 944, 947 und 948 fortgesetzt. Für diese spezielle Situation sei angemerkt, dass zwei verschiedene Arten von gültigen Daten im Cachespeicher gespeichert sein können. Die Daten können gültig für einen Lesevorgang oder gültig für einen Schreibvorgang sein. Die Daten im Cachespeicher können gültige Lesedaten des in der Leseanforderung spezifizierten Speicherblocks sein, sind jedoch, wenn der aktuelle Speicherblock im Hauptspeicher betrachtet wird, eventuell nicht gültige Schreibdaten, da sich die Daten im Hauptspeicherblock von den Daten im Cachespeicher unterscheiden können.
  • Es sei angemerkt, dass in einigen Beispielen, wenn auf Daten im Cachespeicher Bezug genommen wird, der Begriff gültige Daten verwendet wird. In anderen Beispielen wird der Begriff gültige Schreibdaten und gültige Lesedaten verwendet. In den Beispielen, in welchen der Begriff gültige Daten ohne Spezifikation auf gültige Schreibdaten oder gültige Lesedaten verwendet wird, ist keine Unterscheidung zwischen Lesedaten und Schreibdaten erforderlich.
  • Im Betriebszustand gemäß 2C zeigen die Blöcke 944, 947 und 948, wie das Verfahren fortgesetzt wird, wenn die Daten im Cachespeicher gültige oder ungültige Schreibdaten des Speicherblocks sind, welcher durch die Leseanforderung spezifiziert wird. Die Entscheidung erfolgt im Block 944.
  • Sind die Daten im Cachespeicher gültige Schreibdaten des Speicherblocks, welcher durch die Leseanforderung spezifiziert wird, dann wird das Verfahren mit Block 947 fortgesetzt, d. h. die Hauptsteuerschaltung 121 steuert den Lesevorgang mit dem Cachespeicher 123.
  • Sind die Daten im Cachespeicher nicht gültige Schreibdaten des Speicherblocks, welcher durch die Leseanforderung spezifiziert wird, dann wird das Verfahren mit Block 948 fortgesetzt, d. h. die Hauptsteuerschaltung 121 steuert den Lesevorgang mit dem angeforderten Speicherblock.
  • 2D bezieht sich auf Vorgänge, welche auftreten, wenn das System das Schreibsignal Wen empfängt, abhängig davon, ob das Auffrischungssteuersignal CRFS freigegeben oder gesperrt ist.
  • Wie aus Block 952 ersichtlich ist, ist das Verfahren davon abhängig, ob die Daten im Cachespeicher 123 Daten des Speicherblocks sind, welcher durch die Schreibanforderung spezifiziert wird, oder nicht.
  • Sind die Daten im Cachespeicher Daten des Speicherblocks, welcher durch die Schreibanforderung spezifiziert wird, dann wird das Verfahren mit Block 955 fortgesetzt, d. h. die Hauptsteuerschaltung 121 steuert den Schreibvorgang in den durch die Schreibanforderung spezifizierten Speicherblock. Das Gültigkeitsbit im Cachespeicher 123 wird abgeschaltet, da die Daten im Cachespeicher 123 nicht länger gültig sind. Nach dem Schreibvorgang wird der Cachespeicher 123 aufgefrischt.
  • Sind die Daten im Cachespeicher nicht Daten des Speicherblocks, welcher durch die Schreibanforderung spezifiziert wird, dann wird das Verfahren mit Block 959 fortgesetzt, d. h. die Hauptsteuerschaltung 121 steuert den Schreibvorgang mit dem angeforderten Speicherblock.
  • Nun wird die allgemeine Funktionsweise des Systems beschrieben. In dieser Beschreibung wird auf die in 1 dargestellten Einheiten und Signale Bezug genommen.
  • Das Auffrischungssteuersignal CRFS und das Auffrischungsadressensignal RFA sind periodische Signale. Gemäß der hier beschriebenen, besonders vorteilhaften Ausführungsform der Erfindung sind zwanzig Wortleitungen vorgesehen und die vorbestimmte Auffrischungszeitdauer ist 100 μs. Das sind 5 μs für die 1. Wortleitung, 5 μs für die 2. Wortleitung, 5 μs für die 3. Wortleitung usw., was zusammen für alle Wortleitungen 100 μs ergibt.
  • Die Auffrischungsreihenfolge ist wie folgt. In Reaktion auf das Auffrischungssteuersignal CRFS und das Auffrischungsadressensignal RFA frischt der Cachespeicher 123 die Speicherzellen auf, welche mit einer Wortleitung W1, siehe 7, verbunden sind und gibt das Auffrischungsstartsignal RFSS frei. In Reaktion auf das Auffrischungsstartsignal RFSS und das Auffrischungsadressensignal RFA frischen die Speicherblöcke M1 bis Mn gleichzeitig die mit der Wortleitung W1, siehe 9, verbundenen Speicherzellen auf. In Reaktion auf das Auffrischungssteuersignal CRFS und das Auffrischungsadressensignal RFA frischt der Cachespeicher 123 die Speicherzellen auf, welche mit einer Wortleitung W2 verbunden sind und gibt das Auffrischungsstartsignal RFSS frei. In Reaktion auf das Auffrischungsstartsignal RFSS und das Auffrischungsadressensignal RFA frischen die Speicherblöcke M1 bis Mn gleichzeitig die mit der Wortleitung W2 verbundenen Speicherzellen auf, usw.
  • Ein Auffrischungsvorgang, wenn die Daten im Cachespeicher gültige Daten sind, läuft wie folgt ab. Nachfolgendes tritt auf, wenn das Auffrischungsstartsignal RFSS freigegeben, die Daten im Cachespeicher gültig sind und die Hauptsteuerschaltung 121 das Lesesignal Ren oder das Schreibsignal Wen empfängt. Die Hauptsteuerschaltung 121 verifiziert, dass das Bankadressensignal BA mit dem vorherigen Bankadressensignal BA_P übereinstimmt und die Daten im Cachespeicher 123 gültig sind.
  • Entspricht das Bankadressensignal BA dem vorherigen Bankadressesignal BA_P und sind die Cachespeicherdaten gültig, dann gibt eine Cacheinformationssteuerschaltung 200 gemäß 3 ein Cacheadressentreffersignal CAH, ein Cachelese- oder Cacheschreibtreffersignal CRH oder CWH und das Cachespeichertreffersignal CH frei. Eine Cachespeichersteuerschaltung 400 gibt das Cachelese- oder Cacheschreibsteuersignal CR oder CW, ein erstes und zweites Abtastsignal CASB, RASB, ein Vorladesteuersignal PRCB und das Lese- oder Schreibsteuersignal REN oder WEN frei. Daraus resultiert, dass der Cachespeicher einen Lese- oder Schreibvorgang ausführt und die Speicherblöcke aufgefrischt werden können.
  • Ein Auffrischungsvorgang, wenn die Daten im Cachespeicher nicht gültige Daten sind, läuft wie folgt ab. Entspricht das Bankadressensignal BA nicht dem vorherigen Bankadressensignal BA_P, dann sperrt die Cacheinformationssteuerschaltung 200 das Cacheadressentreffersignal CAH, das Cachelese- oder Cacheschreibtreffersignal CRH oder CWH und das Cachespeichertreffersignal CH.
  • Die Cachespeichersteuerschaltung 400 gibt das Cachelesesteuersignal CR, das Cacherückschreibsteuersignal CWB, das erste und zweite Abtastsignal CASB, RASB, ein Abtastverstärkersteuersignal SENB, das Vorladesteuersignal PRCB und das Lesesteuersignal REN frei und gibt ein Rückschreibadressensignal CWBRC aus. In Reaktion auf das Rückschreibadressensteuersignal CWBRC gibt eine Speicherblocksteuerschaltung 300 eines von mehreren Speicherrückschreibsteuersignalen CWB1 bis CWBn frei.
  • In Reaktion auf die Bankadresse BA gibt die Speicherblocksteuerschaltung 300 eines der Speicherlesesteuersignale MR1 bis MRn oder eines der Speicherschreibsteuersignale MW1 bis MWn frei.
  • Nachfolgend wird als ein Beispiel A ein Vorgang beschrieben, welcher ausgeführt wird, wenn die Cachespeicherdaten den Daten des Speicherblocks M2 entsprechen und das Ziel des Lesesignals dem Speicherblock M1 entspricht.
  • Die Speicherblocksteuerschaltung 300 gibt das Speicherrückschreibsteuersignal CWB2 und das Speicherlesesteuersignal MR1 frei. Der Cachespeicher 123 führt in Reaktion auf das Cachelesesteuersignal CR einen Lesevorgang durch. In Reaktion auf das Speicherrückschreibsteuersignal CWB2 hält der Speicherblock M2 einen Auffrischungsvorgang an und schreibt Cachelesedaten CDAT.
  • In Reaktion auf das Speicherlesesteuersignal MR1 hält der Speicherblock M1 einen Auffrischungsvorgang an und führt einen Lesevorgang aus und entsprechende Speicherlesedaten MDAT werden über den I/O-Treiber 140 ausgegeben. Die anderen Speicherblöcke M3 bis Mn werden in Reaktion auf das Auffrischungsstartsignal RFSS aufgefrischt.
  • Schließt der Speicherblock M2 den Rückschreibvorgang ab oder führt der Cachespeicher 123 den nächsten Lesevorgang aus, dann sperrt die Speicherblocksteuerschaltung 300 das Speicherrückschreibsteuersignal CWB2 und steuert die Auffrischung des Speicherblocks M2. Nach dem Rückschreibvorgang des Cachespeichers 123 gibt die Cachespeichersteuerschaltung 400 das Cacheschreibsteuersignal CW frei und der Cachespeicher 123 schreibt Speicherlesedaten MDAT.
  • Führt einer der Speicherblöcke M3 bis Mn und der Cachespeicher 123 einen Lesevorgang durch das nächste Lesesignal Ren aus, dann sperrt die Speicherblocksteuerschaltung 300 das Speicherlesesteuersignal MR1 und steuert die Auffrischung des Speicherblocks M1.
  • Nachfolgend wird als Beispiel B ein Vorgang beschrieben, welcher ausgeführt wird, wenn die Cachespeicherdaten den Daten des Speicherblocks M2 entsprechen und das Ziel des Schreibsignals dem Speicherblock M1 entspricht.
  • Der Speicherblock M2 hält den Auffrischungsvorgang an, bis er den Rückschreibvorgang beendet hat oder der Cachespeicher 123 die Eingabedaten IDAT in Reaktion auf das nächste Schreibsignal schreibt. Die anderen Speicherblöcke M3 bis Mn werden aufgefrischt. In Reaktion auf das Speicherschreibsteuersignal MW1 hält der Speicherblock M1 den Auffrischungsvorgang an und führt einen Schreibvorgang aus.
  • Führen einer der Speicherblöcke M3 bis Mn und der Cachespeicher 123 einen Schreibvorgang zum Zeitpunkt des nächsten Schreibsignals Wen aus oder werden die Eingabedaten IDAT in den Cachespeicher 123 geschrieben, dann sperrt die Speicherblocksteuerschaltung 300 das Speicherschreibsteuersignal MW1 und steuert die Auffrischung des Speicherblocks M1. Nach dem Rückschreibvorgang mit dem Cachespeicher 123 gibt die Cachespeichersteuerschaltung 400 das Cacheschreibsteuersignal CW frei und der Cachespeicher 123 schreibt die Eingabedaten IDAT.
  • Folgende Funktionsweise ergibt sich, wenn das Auffrischungsstartsignal RFSS gesperrt ist und folglich die Speicherblöcke M1 bis Mn nicht aufgefrischt werden. Ist das Auffrischungsstartsignal RFSS gesperrt und empfängt die Hauptsteuerschaltung 121 das Lesesignal Ren oder das Schreibsignal Wen, dann steuert die Speicherblocksteuerschaltung 300 den Lese- oder Schreibvorgang der Speicherblöcke M1 bis Mn.
  • Folgende Funktionsweise ergibt sich, wenn das Auffrischungssteuersignal CRFS freigegeben ist und folglich der Cachespeicher 123 aufgefrischt wird. Wird ein Lesesignal empfangen, wenn das Auffrischungssteuersignal CRFS freigegeben ist, und sind gültige Daten im Cachespeicher, dann tritt folgender Vorgang auf.
  • Die Cacheinformationssteuerschaltung 200 gibt das Cacheschreibtreffersignal CWH frei. Die Cachespeichersteuerschaltung 400 gibt das Lesesteuersignal REN, das Cachelesesteuersignal CR und das Cacherückschreibsteuersignal CWB frei und gibt das Rückschreibadressensignal CWBRC aus. In Reaktion auf das Auffrischungssteuersignal CRFS, das Cacheschreibtreffersignal CWH und das Lesesteuersignal REN hält der Cachespeicher 123 den Auffrischungsvorgang an und führt in Reaktion auf das Cachelesesteuersignal CR einen Lesevorgang durch. Entsprechende Lesedaten CDAT des Cachespeichers 123 werden über den I/O-Treiber 140 ausgegeben und gleichzeitig in den Speicherblock zurückgeschrieben.
  • Nach dem Lesevorgang aus dem Cachespeicher 123 sperrt die Cacheinformationssteuerschaltung 200 das Cacheschreibtreffersignal CWH und die Cachespeichersteuerschaltung 400 sperrt das Lesesteuersignal REN, das Cachelesesteuersignal CR und das Cacherückschreibsteuersignal CWB, so dass der Cachespeicher 123 aufgefrischt wird.
  • Zusammenfassend räumt der Hauptspeicher au er für einen speziellen Fall den Lese- oder Schreibvorgängen Priorität gegenüber den Auffrischungsvorgängen ein. Andererseits räumt der Cachespeicher den Auf frischungsvorgängen gegenüber den Lese- oder Schreibvorgängen Priorität ein. Der Ausnahmefall entspricht dem Fall, dass ein Speicherlesesignal empfangen wird, wenn der Auffrischungsvorgang für den Cachespeicher freigegeben ist und die Daten im Cachespeicher gültig sind. In diesem Ausnahmefall wird der Auffrischungsvorgang des Cachespeichers verzögert.
  • Nun werden Details der Funktionsblöcke aus 1 unter Bezugnahme auf die 3 bis 10 beschrieben. 3 zeigt die Einheiten der Hauptsteuerschaltung 121, die in diesem Beispiel die Cacheinformationssteuerschaltung 200, die Speicherblocksteuerschaltung 300 und die Cachespeichersteuerschaltung 400 umfasst.
  • Es sei angemerkt, das die Schaltung 400 die Signale REN und WEN sowohl als Eingabesignale als auch als Ausgabesignale aufweist. Wie aus 6 ersichtlich ist, sind das Lesesignal Ren und Schreibsignal Wen Eingabesignale für ein Befehlsregister 410. Die Signale REN und WEN sind Ausgabesignale des Befehlsregisters 410. Die Signale REN und WEN werden als Eingabesignal für Schaltungen 443, 444 und 447 in der Cachespeichersteuerschaltung 400 verwendet.
  • Die Cacheinformationssteuerschaltung 200 führt folgende Funktionen aus. Sie speichert Informationen, die anzeigen, welcher Speicherblock mit den Daten des Cachespeichers 123 abgestimmt ist. Zudem speichert die Cacheinformationssteuerschaltung 200 Informationen, die anzeigen, ob die Daten im Cachespeicher 123 gültig sind oder nicht. Sind die Daten im Cachespeicher 123 die gleichen Daten wie im für einen Lesevorgang angeforderten Speicherblock, dann gibt die Cacheinformationssteuerschaltung 200 das Cacheadressentreffersignal CAH frei. Sind die Daten des Cachespeichers 123 die gültigen Daten, dann gibt die Cacheinformationssteuerschaltung 200 das Cachelesetreffersignal CRH und das Cachespeichertreffersignal CH frei.
  • Sind die Daten des Cachespeichers 123 die Daten des Speicherblocks, welcher in einer Schreibanforderung spezifiziert wird, dann gibt die Cacheinformationssteuerschaltung 200 das Cacheadressentreffersignal CAH frei. Sind die Daten des Cachespeichers 123 die gültigen Daten, dann gibt die Cacheinformationssteuerschaltung 200 das Cacheschreibtreffersignal CWH und das Cachespeichertreffersignal CH frei.
  • Werden Daten MDAT vom Speicherblock und die Eingabedaten IDAT in den Cachespeicher 123 geschrieben, dann wird die Information in der Cacheinformationssteuerschaltung 200 aktualisiert.
  • Die Cacheinformationssteuerschaltung 200 empfängt das Cacherückschreibsteuersignal CWB, das Cacherückschreibadressensignal CWBRC, die Bankadresse BA, das Auffrischungssteuersignal CRFS und das Taktsignal CLK und gibt das Rückschreibbankadressensignal CBA und ein zweites Gültigkeitsbtsignal VW aus und wird in Reaktion auf ein Rücksetzsignal RST zurückgesetzt.
  • Die Speicherblocksteuerschaltung 300 erzeugt die Speicherlesesteuersignale MR1 bis MRn, die Speicherschreibsteuersignale MW1 bis MWn und die Speicherrückschreibsteuersignale CWB1 bis CWBn.
  • Die oben aufgelisteten Signale werden erzeugt, wenn das Lesesteuersignal REN oder das Schreibsteuersignal WEN freigegeben ist. Zudem sind die oben angegebenen Signale vom Taktsignal abhängig oder werden in Reaktion auf das Taktsignal erzeugt, und sind vom Cacherückschreibsteuersignal CWB, dem Auffrischungsstartsignal RFSS und dem Auffrischungsinformationssignal RFSE abhängig.
  • Die Cachespeichersteuerschaltung 400 gibt das Lesesteuersignal REN oder das Schreibsteuersignal WEN frei, wenn das Lesesignal Ren oder das Schreibsignal Wen empfangen wird, und gibt das erste und zweite Abtastsignal CASB, RASB, das Abtastverstärkersteuersignal SENB und das Vorladesteuersignal PRCB in Reaktion auf das Taktsignal CLK aus.
  • Ist das Lesesteuersignal REN oder das Schreibsteuersignal WEN freigegeben, dann gibt die Cachespeichersteuerschaltung 400 das Cachelesesteuersignal CR, das Cacheschreibsteuersignal CW oder das Cacherückschreibsteuersignal CWB aus. Diese Signale werden in Reaktion auf das Auffrischungssteuersignal CRFS, das Auffrischungsstartsignal RFSS und das Auffrischungsinformationssignal RFSE ausgegeben.
  • Details der Cacheinformationssteuerschaltung 200 sind in 4 als Logikschaltbild dargestellt. Die Cacheinformationssteuerschaltung 200 umfasst in diesem Beispiel eine Adressenvergleichsschaltung 210, eine erste und eine zweite Gültigkeitsbitüberprüfungsschaltung 220, 230 und eine Ausgabelogikschaltung 240.
  • Die Adressenvergleichsschaltung 210 umfasst ein Adressenregister 211, einen Adressenkomparator 212 und eine Logikschaltung 213, welche einen Inverter 214 und ein UND-Gatter 215 umfasst.
  • Sind das Cacheadressentreffersignal CAH gesperrt und das Cacheschreibsteuersignal CW freigegeben, dann gibt die Logikschaltung 213 ein Registersteuersignal CTL frei. Ist das Registersteuersignal CTL freigegeben, dann speichert das Cacheadressenregister 211 ein vorgegebenes Bankadressensignal BA und gibt das gespeicherte Bankadressensignal BA als vorheriges Bankadressensignal BA_P aus.
  • Der Adressenkomparator 212 vergleicht das vorherige Bankadressensignal BA_P mit dem vorliegenden Bankadressensignal BA. Sind das vorherige Bankadressensignal BA_P und das vorliegende Bankadressensignal BA gleich, dann gibt der Adressenkomparator 212 das Cacheadressentreffersignal CAH frei. Sind die Signale nicht gleich, dann ist das Cacheadressentreffersignal CAH gesperrt.
  • Die erste und zweite Gültigkeitsbitüberprüfungsschaltung 220 und 230 sind gestrichelt dargestellt und speichern Informationen, welche die im Cachespeicher 123 gespeicherten Daten betreffen.
  • Das Speicherlesedatensignal MDAT für die Speicherblöcke M1 bis Mn wird verwendet, um Daten in den Cachespeicher 123 zu speichern. Die erste Gültigkeitsbitüberprüfungsschaltung 220 speichert Informationen, welche anzeigen, dass die Daten im Cachespeicher 123 gültig sind.
  • Die erste Gültigkeitsbitüberprüfungsschaltung 220 umfasst das erste Gültigkeitsbitregister 221, eine erste Auswahlschaltung 222 und eine erste Logikschaltung 223, welche ein UND-Gatter 224, einen Inverter 225 und ein ODER-Gatter 226 umfasst. Werden das Lesesteuersignal REN und das Cacheschreibsteuersignal CW freigegeben, dann gibt das UND-Gatter 224 ein erstes Aktualisierungssignal VBR aus. Ist das Cacheadressentreffersignal CAH gesperrt oder das Rücksetzsignal RST freigegeben, dann wird das Rücksetzsteuersignal RES freigegeben.
  • Ist das erste Auffrischungssignal VBR freigegeben, dann speichert die erste Gültigkeitsbitüberprüfungsschaltung 220 das erste Aktualisierungssignal VBR im ersten Auffrischungsbitregister 221 in Reaktion auf das Taktsignal CLK und das Zeilen-/Spaltenadressensignal RC_ADD. Das bedeutet, dass ein logischer Wert „1” im ersten Gültigkeitsbitregister 221 gespeichert wird.
  • Ist das Rücksetzsteuersignal RES freigegeben, dann werden alle Daten zurückgesetzt, welche im ersten Gültigkeitsbitregister 221 gespeichert sind. Die erste Auswahlschaltung 222 wählt sequentiell die im ersten Gültigkeitsbitregister 221 gespeicherten Bits aus und gibt ein erstes Gültigkeitsbitsignal VR aus.
  • Sind Eingabedaten IDAT im Cachespeicher 123 gespeichert, dann Ist die Information, dass die Daten im Cachespeicher 123 gültig sind, in der zweiten Gültigkeitsbitüberprüfungsschaltung 230 gespeichert. Die zweite Gültigkeitsbitüberprüfungsschaltung 230 umfasst das zweite Gültigkeitsbitregister 231, eine zweite Auswahlschaltung 232, eine zweite Logikschaltung 233 und eine Wechselbitentscheidungseinheit 238. Die zweite Logikschaltung 233 umfasst einen Multiplexer 234, UND-Gatter 235, 236 und ein NOR-Gatter 237.
  • Ist das Cacherückschreibsteuersignal CWB freigegeben oder gesperrt, dann gibt der Multiplexer 234 das Rückschreibadressensignal CWBRC bzw. das Zeilen-/Spaltenadressensignal RC_ADD aus. Werden das Cachelesesteuersignal CR und das Cacherückschreibsignal CWB freigegeben, dann gibt das UND-Gatter 235 ein logisches Signal A1 frei. Sind das Lesesteuersignal RED, das Cacheschreibtreffersignal CWH und das Auffrischungssteuersignal CRFS freigegeben, dann gibt das UND-Gatter 236 ein logisches Signal A2 frei.
  • Sind die logischen Signale A1 und A2 gesperrt, dann gibt das NOR-Gatter 237 ein zweites Aktualisierungssignal VBW frei. Ist das zweite Aktualisierungssignal VBW freigegeben, dann speichert das zweite Auffrischungsbitregister 231 sequentiell das zweite Aktualisierungssignal VBW in Reaktion auf das Taktsignal CLK und das Zeilen-/Spaltenadressensignal RC_ADD, so dass die Bits des zweiten Gültigkeitsregisters 231 den logischen Wert „1” aufweisen.
  • Ist das zweite Aktualisierungssignal VBW gesperrt, dann speichert das zweite Gültigkeitsbitregister 231 sequentiell das zweite Aktualisierungssignal VBW in Reaktion auf das Taktsignal CLK und das Rückschreibadressensignal CWBRC als logischen Wert „0”. Ist das Rücksetzsteuersignal RES freigegeben, dann werden die Bits des zweiten Gültigkeitsbitregisters 231 zurückgesetzt.
  • Weisen die Bits des zweiten Gültigkeitsbitregisters 231 den logischen Wert „1” auf, dann sind die Daten im Cachespeicher 123 gültig, und weisen die Bits des zweiten Gültigkeitsbitregisters 231 den logischen Wert „0” auf, dann sind die Daten im Cachespeicher 123 nicht gültig. Das zweite Gültigkeitsbitregister 231 gibt alle Bits als Informationsbits SRI bis SRM aus. Die zweite Auswahlschaltung 232 wählt sequentiell die im zweiten Gültigkeitsbitregister 231 gespeicherten Bits aus und gibt das zweite Gültigkeitsbitsignal VW aus.
  • Die Wechselbitentscheidungseinheit 238 empfängt die Informationssignale SR1 bis SRM und entscheidet, ob veränderte Bits in den Informationssignalen SR1 bis SRM vorhanden sind, und gibt ein Wechselbitsignal MDF aus. Liegt ein Wechselbit vor, dann gibt die Wechselbitentscheidungseinheit 238 das Wechselbitsignal MDF frei. Die Ausgabelogikschaltung 240 umfasst UND-Gatter 241, 242 und ein ODER-Gatter 243.
  • Das UND-Gatter 241 gibt das Cachelesetreffersignal CRH in Reaktion auf das erste Gültigkeitsbitsignal VR und das Cacheadressentreffersignal CAH aus. Das UND-Gatter 242 gibt das Cacheschreibtreffersignal CWH in Reaktion auf das zweite Gültigkeitsbitsignal VW und das Cacheadressentreffersignal CAH aus.
  • Details des Logikaufbaus der Speicherblocksteuerschaltung 300 sind in 5 dargestellt. Die Speicherblocksteuerschaltung 300 umfasst in diesem Beispiel eine Steuerlogikschaltung 310, eine erste Decoderschaltung 320 und eine zweite Decoderschaltung 330, wie gestrichelt dargestellt.
  • Die Steuerlogikschaltung 310 umfasst Inverter 311 bis 314, ein NOR-Gatter 315, UND-Gatter 316, 317 und ODER-Gatter 318, 319. Ist das Auffrischungsinformationssignal RFSE oder das Cacherückschreibsteuersignal CWB freigegeben oder sind das Auffrischungsstartsignal RFSS und das Cacherückschreibsteuersignal CWB gleichzeitig freigegeben, dann gibt die Steuerlogikschaltung 310 ein Schreibauswahlsignal WCTL frei.
  • Sind das Lesesteuersignal REN freigegeben und das Cachespeichertreffersignal CH gesperrt, dann gibt die Steuerlogikschaltung 310 ein Leseauswahlsignal RCTL frei. Ist das Lesesteuersignal REN, das Cacheschreibtreffersignal CWH oder das Auffrischungssteuersignal CRFS gesperrt, dann wird das Leseauswahlsignal RCTL freigegeben.
  • Die erste Decoderschaltung 320 umfasst einen ersten Decoder 321, mehrere UND-Gatter 322 und mehrere UND-Gatter 323. Der erste Decoder 321 decodiert das Bankadressensignal BA und gibt eine Mehrzahl von ersten Decodiersignalen BA1 bis BAn aus.
  • Sind das Leseauswahlsignal RCTL und die ersten Decodiersignale BA1 bis BAn freigegeben, dann geben die UND-Gatter 322 ein oder mehrere ausgewählte der Speicherlesesteuersignale MR1 bis MRn frei. Ist eines der Speicherlesesteuersignale MR1 bis MRn freigegeben, dann führt einer der Speicherblöcke M1 bis Mn einen Lesevorgang aus.
  • Die UND-Gatter 323 geben in Reaktion auf das Schreibsteuersignal WEN, das Schreibauswahlsignal WCTL und die ersten Decodiersignale BA1 bis BAn die Speicherschreibsteuersignale MW1 bis MWn aus. Sind das Schreibsteuersignal WEN, das Schreibauswahlsignal WCTL und die ersten Decodiersignale BA1 bis BAn freigegeben, dann geben die UND-Gatter 323 ein oder mehrere ausgewählte der Speicherschreibsteuersignale MW1 bis MWn frei. Ist eines der Speicherschreibsteuersignale MW1 bis MWn freigegeben, dann führt einer der Speicherblöcke M1 bis Mn einen Schreibvorgang aus.
  • Die zweite Decoderschaltung 330 umfasst einen zweiten Decoder 331 und mehrere UND-Gatter 332. Der zweite Decoder 331 decodiert das Rückschreibbankadressensignal CBA und gibt eine Mehrzahl von zweiten Decodiersignalen CBA1 bis CBAn aus. Sind das Cacherückschreibsteuersignal CWB und die zweiten Decodiersignale CBA1 bis CBAn freigegeben, dann geben die UND-Gatter 332 eines oder mehrere der Speicherrückschreibsteuersignale CWB1 bis CWBn frei. Ist eines der Speicherrückschreibsteuersignale CWB1 bis CWBn freigegeben, dann führt eitler der Speicherblöcke M1 bis Mn einen Rückschreibvorgang aus.
  • Details des Logikaufbaus der Cachespeichersteuerschaltung 400 sind in 6 dargestellt. Die Cachespeichersteuerschaltung 400 umfasst in diesem Beispiel ein Befehlsregister 410, einen Steuersignalgenerator 420, eine erste Steuerlogikschaltung 430 und eine zweite Steuerlogikschaltung 440. Die erste Steuerlogikschaltung 430 und die zweite Steuerlogikschaltung 440 sind gestrichelt dargestellt.
  • Das Befehlsregister 410 speichert das Lesesignal Ren in Reaktion auf das Taktsignal CLK und gibt das Lesesteuersignal REN aus. Das Befehlsregister 410 speichert das Schreibsignal Wen in Reaktion auf das Taktsignal CLK und gibt das Schreibsteuersignal WEN aus. Der Steuersignalgenerator 420 gibt das erste und das zweite Abtastsignal CASB, RASB, das Abtastverstärkersteuersignal SENB und das Vorladesteuersignal PRCB in Reaktion auf das Taktsignal CLK aus.
  • Die erste Steuerlogikschaltung 430 umfasst einen Zähler 431, einen Multiplexer 432, Inverter 433, 450, UND-Gatter 434 bis 436, ein ODER-Gatter 437 und NOR-Gatter 438 bis 439. Die erste Steuerlogikschaltung 430 gibt das Cacherückschreibsteuersignal CWB und ein Logiksignal LGS in Reaktion auf das Lesesteuersignal REN, das Schreibsteuersignal WEN, das Cacheadressentreffersignal CAH, das Wechselbitsignal MDF, das Auffrischungssteuersignal CRFS und die Informationsbits SR1 bis SRM aus.
  • Die zweite Steuerlogikschaltung 440 umfasst Inverter 441, 442, UND-Gatter 443 bis 446 und ODER-Gatter 447 bis 449. Die zweite Steuerlogikschaltung 440 gibt das Cacheschreibsteuersignal CW in Reaktion auf das Lese- oder Schreibsteuersignal REN oder WEN, das Auffrischungsstartsignal RFSS und das Auffrischungsinformationssignal RFSE aus. Die zweite Steuerlogikschaltung 440 gibt das Cachelesesteuersignal CR in Reaktion auf das Auffrischungssteuersignal CRFS, das Lesesteuersignal REN, das Cacheschreib- oder Cachelesetreffersignal CWH oder CRH und das Logiksignal LGS aus.
  • Details eines vorteilhaften Aufbaus des Cachespeichers 123 sind in 7 gezeigt. Der Cachespeicher 123 umfasst in diesem Beispiel einen Steuersignalgenerator 510, einen Multiplexer 520, ein Speicherzellenfeld 530, einen Zeilendecoder 540, einen Wortleitungstreiber 550, einen Spaltendecoder 560, eine Abtastverstärkerschaltung 570, eine Vorladeschaltung 580 und einen Bustreiber 590. Das Speicherzellenfeld 530 ist ein DRAM-Speicherfeld, welches zum Aufrechterhalten der Daten aufgefrischt wird.
  • In Abhängigkeit davon, ob das Adressenauswahlsignal CRFSS freigegeben oder gesperrt ist, gibt der Multiplexer 520 das Auffrischungsadressensignal RFA oder das Zeilenadressensignal R_ADD aus. Das Zeilenadressensignal R_ADD umfasst einige niederwertige Bits des Zeilen-/Spaltenadressensignals RC_ADD. Weist das Zeilen-/Spaltenadressensignal RC_ADD beispielsweise 8 Bits auf, dann umfasst das Zeilenadressensignal R_ADD 6 niederwertige Bits.
  • Wird der Cachespeicher 123 aufgefrischt, dann sperrt der Steuersignalgenerator 510 das Decodiersteuersignal CASBc, wodurch der Spaltendecoder 560 gesperrt und der Zeilendecoder 540 freigegeben werden. In Reaktion auf das Auffrischungsadressensignal RFA steuert der Zeilendecoder 540 den Wortleitungstreiber 550 so, dass die Wortleitungen W1 bis W64 sequentiell freigegeben werden.
  • Führt der Cachespeicher einen Schreib- oder Lesevorgang durch, dann gibt der Steuersignalgenerator 510 das Decodiersteuersignal CASBc frei und der Spaltendecoder 560 wird freigegeben.
  • Details eines vorteilhaften Aufbaus des Steuersignalgenerators 510 sind in 8 gezeigt. Der Steuersignalgenerator 510 umfasst in diesem Beispiel eine erste Logikschaltung 511 und eine zweite Logikschaltung 512, die gestrichelt dargestellt sind.
  • Ist das erste Abtastsignal CASB freigegeben, dann wird das Cacheschreibsteuersignal CW und/oder das Cachelesesignal CR freigegeben und die erste Logikschaltung 511 gibt das Decodiersteuersignal CASBc frei.
  • Die zweite Logikschaltung 512 umfasst ein RS-Flip-Flop 531, ein NAND-Gatter 532, ein UND-Gatter 533 und ein D-Flip-Flop 534. Liegen das Auffrischungssteuersignal CRFS, das Lesesteuersignal REN, das Cacheschreibtreffersignal CWH und das Taktsignal CLK vor, dann gibt die zweite Logikschaltung 512 das Adressenauswahlsignal CRFSS und das Auffrischungsstartsignal RFSS aus.
  • Details einer beispielhaften Realisierung des Speicherblocks M1 und eines Steuersignalgenerators 610 hierfür sind in 9 gezeigt. Der Speicherblock M1 umfasst in diesem Beispiel einige herkömmliche Komponenten, aber auch spezielle Logik. Es sei angemerkt, dass alle Speicherblöcke M1 bis Mn identisch aufgebaut sind. Der Speicherblock M1 von 9 umfasst einen DRAM-Speicher, der zum Aufrechterhalten der Daten aufgefrischt wird, und den Steuersignalgenerator 610. Details der Logik des Steuersignalgenerators 610 sind in 10 dargestellt.
  • Zusätzlich zum Steuersignalgenerator 610 umfasst der Speicherblock M1 Multiplexer 620, 630, 710, ein Speicherzellenfeld 640, einen Zeilendecoder 650, einen Wortleitungstreiber 660, einen Spaltendecoder 670, eine Abtastverstärkerschaltung 680, eine Vorladeschaltung 690 und einen Bustreiber 700.
  • Der Steuersignalgenerator 610 reagiert auf das erste und zweite Abtastsignal CASB, RASB, das Speicherschreibsteuersignal MW1 oder das Speicherrückschreibsteuersignal CWB1, das Speicherlesesteuersignal MR1, das Auffrischungsstartsignal RFSS, das Auffrischungsinformationssignal RFSE, das Abtastverstärkersteuersignal SENB und das Vorladesteuersignal PRCB. Der Steuersignalgenerator 610 gibt ein erstes und ein zweites Decodiersteuersignal CASB1, RASB1, ein Auffrischungszustandssignal RFSE1, ein Abtastuerstärkersteuersignal SENB1 und ein Vorladesteuersignal PRCB1 aus.
  • Der Steuersignalgenerator 610 umfasst Logikschaltungen 611 bis 615, wie gestrichelt dargestellt. Die Logikschaltung 611 umfasst NOR-Gatter 721, 722 und einen Inverter 723. In Reaktion auf das Speicherschreibsteuersignal MW1, das Speicherlesesteuersignal MR1 und das erste Abtastsignal CASB gibt die Logikschaltung 611 das erste Decodiersteuersignal CASB1 aus. Sind das erste Abtastsignal CASB freigegeben und das Speicherlesesteuersignal MR1 und/oder das Speicherschreibsteuersignal MW1 freigegeben, dann gibt die Logikschaltung 611 das erste Decodiersteuersignal CASB1 frei.
  • Über die Logikschaltungen 612, 613, 614 und 615 gibt der Steuersignalgenerator 610 das Vorladesteuersignal PRCB1, das Abtastverstärkersteuersignal SENB1 und das Decodiersteuersignal RSAB1 aus.
  • Der Multiplexer 620 aus 9 gibt in Reaktion auf das Auffrischungszustandssignal RFSE1 und das Speicherrückschreibsteuersignal CWB1 das Rückschreibzeilenadressensignal CWBR oder das Zeilenadressensignal R_ADD oder das Auffrischungsadressensignal RFA aus und arbeitet wird folgt:
    RFSE1 CWB1 Ausgabe
    Freigegeben Gesperrt RFA
    Gesperrt Freigegeben CWBR
    Gesperrt Gesperrt R_ADD
  • Das Zeilenadressensignal R_ADD ist Teil des Zeilen-/Spaltenadressensignals RC_ADD. Das Rückschreibzeilenadressensignal CWBR ist Teil des Rückschreibadressensignals CWBRC, welches mit dem Zähler 431 der Cachespeichersteuerschaltung 400 verbunden ist.
  • Der Multiplexer 630 gibt in Reaktion auf das Speicherrückschreibsteuersignal CWB1 das Spaltenadressensignal C_ADD oder das Rückschreibspaltenadressensignal CWBC aus. Ist das Speicherrückschreibsteuersignal CWB1 freigegeben, dann wird das Rückschreibspaltenadressensignal CWBC ausgegeben, und wenn das Speicherrückschreibsteuersignal CWB1 gesperrt ist, wird das Spaltenadressensignal C_ADD ausgegeben.
  • Die Struktur des Speicherzellenfelds 640 ist im Wesentlichen die gleiche wie die Struktur des Speicherzellenfelds 530 des Cachespeichers 123 gemäß 7. Ist das Schreibsteuersignal WEN freigegeben oder gesperrt, dann gibt der Multiplexer 710 die Eingabedaten IDAT bzw. die Cachelesedaten CDAT aus.
  • In Reaktion auf das Speicherschreibsteuersignal MW1 gibt der Bustreiber 700 Signale des Multiplexers 710 an das Speicherzellenfeld 640 aus. In Reaktion auf das Speicherlesesteuersignal MR1 gibt der Bustreiber 700 die Speicherlesedaten MDAT aus.
  • Wird der Speicherblock M1 aufgefrischt, dann sperrt der Steuersignalgenerator 610 das erste Decodiersteuersignal CASB1 und gibt das zweite Decodiersteuersignal RASB1 frei, wodurch der Spaltendecoder 670 gesperrt und der Zeilendecoder 650 freigegeben werden. In Reaktion auf das Auffrischungsadressensignal RFA steuert der Zeilendecoder den Wortleitungstreiber 660 so, dass die Wortleitungen W1 bis W64 sequentiell freigegeben werden.
  • Führt der Speicherblock M1 einen Lesevorgang oder einen Schreibvorgang durch, dann gibt der Steuersignalgenerator 610 das erste Decodiersteuersignal CASB1 und das zweite Decodiersteuersignal RASB1 frei, so dass der Spaltendecoder 670 und der Zeilendecoder 650 freigegeben werden.

Claims (16)

  1. Speichersystem mit – einem Hauptspeicher, der zum Beibehalten von Daten aufzufrischen ist und in Blöcke (M1 bis Mn) aufgeteilt ist, – einem Cachespeicher (123), der zum Beibehalten von Daten aufzufrischen ist und Informationen speichert, die mit ausgewählten Blöcken (M1 bis Mn) des Hauptspeichers korrespondieren, wobei dem Cachespeicher Anzeigebits zugeordnet sind, die anzeigen, ob eine bestimmte Information eine gültige Information ist, – einer Auffrischungsschaltung, die periodisch den Hauptspeicher und den Cachespeicher auffrischt und der ein Auffrischungsstartsignal (RFSS) zugeordnet ist, und – einer Eingabe-/Ausgabeschaltung, die Lesesignale erzeugt, welche Informationen von einem Zielspeicherblock im Speichersystem anfordern, gekennzeichnet durch – eine Steuerschaltung, die dafür eingerichtet ist, die Auffrischung des Zielspeicherblocks zu verzögern, die angeforderten Informationen aus dem Hauptspeicher zu lesen und den Inhalt des Zielspeicherblocks des Lesevorgangs an den Cachespeicher (123) zu übertragen und nach dem Durchführen dieser beiden Schritte den Zielspeicherblock aufzufrischen, wenn das Auffrischungsstartsignal (RFSS) freigegeben ist, ein Lesesignal (Ren) empfangen wird, der Cachespeicher nicht die Informationen des Zielblocks des Lesesignals (Ren) enthält und die Daten im Cachespeicher keine gültigen Daten eines anderen Speicherblocks sind, – wobei der Lesevorgang und der Auffrischungsvorgang ohne einen Rückschreibvorgang vom Cachespeicher zum Hauptspeicher stattfinden, wenn im Cachespeicher nicht der Zielspeicherblockinhalt des Lesesignals gespeichert ist und die Daten im Cachespeicher keine gültigen Daten der anderen Speicherblöcke sind.
  2. Speichersystem nach Anspruch 1, dadurch gekennzeichnet, dass die Steuerschaltung dafür eingerichtet ist, die Auffrischung des Speicherblocks zu verzögern, der mit den Daten im Cachespeicher korrespondiert, die Auffrischung des Zielspeicherblocks zu verzögern, ein Zurückschreiben der Daten in den Cachespeicher (123) zu veranlassen, und die angeforderten Informationen aus dem Hauptspeicher zu lesen und den Inhalt des Zielspeicherblocks des Lesevorgangs an den Cachespeicher zu übertragen und nach dem Durchführen dieser vier Schritte den Zielspeicherblock und den mit dem Cachespeicher korrespondierenden Block aufzufrischen, wenn das Auffrischungsstartsignal (RFSS) freigegeben ist, das Lesesignal (Ren) empfangen wird, der Cachespeicher nicht den Inhalt des Zielspeicherblocks des Lesesignals enthält und die Daten im Cachespeicher gültige Daten des mit ihm korrespondierenden Speicherblocks sind.
  3. Speichersystem nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Steuerschaltung dafür eingerichtet ist, die angeforderten Informationen aus dem Cachespeicher (123) zu lesen und alle Speicherblöcke (M1 bis Mn) aufzufrischen, wenn das Auffrischungsstartsignal (RFSS) freigegeben ist, das Lesesignal (Ren) empfangen wird und der Cachespeicher den Inhalt des Zielspeicherblocks des Lesesignals enthält.
  4. Speichersystem nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Steuerschaltung dafür eingerichtet ist, die angeforderten Informationen aus dem Cachespeicher (123) zu lesen, wenn das Auffrischungsstartsignal (RFSS) gesperrt ist, das Lesesignal (Ren) empfangen wird, der Cachespeicher den Inhalt des Zielspeicherblocks des Lesesignals enthält und die Daten im Cachespeicher gültige Daten des Zielspeicherblocks sind.
  5. Speichersystem nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass die Steuerschaltung dafür eingerichtet ist, die angeforderten Informationen aus dem Hauptspeicher zu lesen, wenn das Auffrischungsstartsignal (RFSS) gesperrt ist, das Lesesignal (Ren) empfangen wird und der Cachespeicher (123) nicht den Inhalt des Zielspeicherblocks des Lesesignals (Ren) enthält.
  6. Speichersystem mit – einem Hauptspeicher, der zum Beibehalten von Daten aufzufrischen ist und in Blöcke (M1 bis Mn) aufgeteilt ist, – einem Cachespeicher (123), der zum Beibehalten von Daten aufzufrischen ist und Informationen speichert, die mit ausgewählten Blöcken (M1 bis Mn) des Hauptspeichers korrespondieren, wobei dem Cachespeicher Anzeigebits zugeordnet sind, die anzeigen, ob eine bestimmte Information eine gültige Information Ist, – einer Auffrischungsschaltung, die periodisch aktiv ist, um den Hauptspeicher aufzufrischen, und – einer Eingabe-/Ausgabeschaltung, um Informationen in Reaktion auf einen Schreibbefehl in einen Zielspeicherblock des Speichersystems zu schreiben, gekennzeichnet durch – eine Steuerschaltung, die dafür eingerichtet ist, die Daten in den Cachespeicher (123) zu schreiben und den Hauptspeicher aufzufrischen, wenn die Auffrischungsschaltung aktiv ist, ein Schreibbefehl (Wen) empfangen wird und die Daten im Cachespeicher den Daten des Zielspeicherblocks des Schreibbefehls entsprechen, und dafür eingerichtet ist, den Auffrischungsvorgang des Zielspeicherblocks des Schreibbefehls anzuhalten und den Schreibvorgang in den Zielspeicherblock zu steuern, die anderen Speicherblöcke aufzufrischen, nach dem Schreibvorgang in den Zielspeicherblock selbigen aufzufrischen und, wenn die Daten im Cachespeicher gültige Daten eines anderen Speicherblocks sind, die Daten im Cachespeicher in den anderen Speicherblock zurückzuschreiben und ein Gültigkeitsdatenbit im Cachespeicher zu sperren, wenn die Auffrischungsschaltung aktiv ist, der Schreibbefehl (Wen) empfangen wird und die Daten im Cachespeicher nicht Daten des Zielspeicherblocks sind, auf den die Schreibanforderung gerichtet ist.
  7. Speichersystem nach Anspruch 6, dadurch gekennzeichnet, dass, wenn die Auffrischungsschaltung nicht aktiv ist, das Schreibsignal (Wen) empfangen wird und die Daten im Cachespeicher (123) Daten des Zielspeicherblocks des Schreibbefehls sind, die Steuerschaltung den Schreibvorgang in den Zielspeicherblock steuert und das Gültigkeitsdatenbit im Cachespeicher sperrt.
  8. Speichersystem nach Anspruch 6 oder 7, dadurch gekennzeichnet, dass, wenn die Auffrischungsschaltung nicht aktiv ist, der Schreibbefehl (Wen) empfangen wird und die Daten im Cachespeicher (123) nicht Daten des Zielspeicherblocks sind, die Steuerschaltung die Daten in den Zielspeicherblock schreibt.
  9. Speichersystem nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass der Hauptspeicher und der Cachespeicher (123) DRAM-Elemente umfassen.
  10. Speichersystem nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass die Steuerschaltung dafür eingerichtet ist, in den Zielspeicherblock im Hauptspeicher zu schreiben, das Gültigkeitsdatenbit im Cachespeicher (123) zu sperren und nach dem Schreibvorgang den Cachespeicher aufzufrischen, wenn eine Cachespeicherauffrischungsschaltung aktiv ist, der Schreibbefehl (Wen) empfangen wird und die Daten im Cachespeicher gültige Daten des Zielspeicherblocks der Schreibanforderung sind.
  11. Speichersystem nach einem der Ansprüche 6 bis 10, dadurch gekennzeichnet, dass die Steuerschaltung dafür eingerichtet ist, die Daten der Schreibanforderung in den betreffenden Zielspeicherblock zu schreiben, wenn eine Cachespeicherauffrischungsschaltung aktiv ist, der Schreibbefehl (Wen) empfangen wird und die Daten im Cachespeicher keine gültige Daten des Zielspeicherblocks der Schreibanforderung sind.
  12. Speichersystem nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass die Steuerschaltung Mittel zum Verzögern der Auffrischung des Cachespeichers (123) umfasst, wenn das Lesesignal (Ren) empfangen wird, ein Cachespeicherauffrischungssignal freigegeben ist und die Daten im Cachespeicher gültige Daten sind.
  13. Speichersystem nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, dass die Steuerschaltung einem Lesevorgang oder einem Schreibvorgang gegenüber einem Auffrischungsvorgang im Hauptspeicher Priorität gibt und einem Auffrischungsvorgang gegenüber einem Lesevorgang oder einem Schreibvorgang im Cachespeicher (123) Priorität gibt, wobei die Steuerschaltung die Auffrischung des Cachespeichers (123) verzögert, wenn ein Speicherlesebefehl empfangen wird, ein Cachespeicherauffrischungssignal freigegeben ist und die Daten im Cachespeicher gültige Daten sind.
  14. Betriebsverfahren für ein Speichersystem, das einen Hauptspeicher, der zum Beibehalten von Daten aufgefrischt wird, und einen Cachespeicher (123) umfasst, der zum Beibehalten von Daten aufgefrischt wird, wobei – der Hauptspeicher und der Cachespeicher periodisch in Reaktion auf Hauptspeicher- und Cachespeicherauffrischungsbefehle aufgefrischt werden und – das Speichersystem von Zeit zu Zeit Speicherschreibbefehle zum Auslösen von Schreibvorgängen und Speicherlesebefehle zum Auslösen von Lesevorgängen empfängt, dadurch gekennzeichnet, dass – im Hauptspeicher den Lese- und Schreibvorgängen gegenüber den Auffrischungsvorgängen Priorität gegeben wird und im Cachespeicher (123) den Auffrischungsvorgängen Priorität gegenüber den Lese- und Schreibvorgängen gegeben wird und – die Auffrischung des Cachespeichers verzögert wird, wenn ein Speicherlesebefehl empfangen wird, ein Cachespeicherauffrischungssignal freigegeben ist und die Daten im Cachespeicher gültige Daten sind.
  15. Verfahren nach Anspruch 14, dadurch gekennzeichnet, dass, wenn ein Lesebefehl empfangen wird, ein Hauptspeicherauffrischungssignal aktiv ist, der Inhalt des Speicherblocks, welcher Ziel des Lesebefehls ist, nicht im Cachespeicher (123) ist und die Daten im Cachespeicher gültige Daten eines anderen Speicherblocks sind, die Daten vom Cachespeicher in den anderen Speicherblock im Hauptspeicher zurückgeschrieben werden, die angeforderten Daten aus dem Hauptspeicher gelesen werden, das Ziel des Lesevorgangs im Cachespeicher (123) gespeichert wird und dann der Zielspeicherblock und der andere Speicherblock aufgefrischt werden.
  16. Verfahren nach Anspruch 14 oder 15, dadurch gekennzeichnet, dass, wenn ein Lesebefehl empfangen wird, ein Hauptspeicherauffrischungssignal aktiv ist, der Inhalt des Speicherblocks, welcher Ziel des Lesebefehls ist, nicht im Cachespeicher (123) ist und die Daten im Cachespeicher nicht gültige Daten eines anderen Speicherblocks sind, die angeforderten Daten aus dem Hauptspeicher gelesen werden, das Ziel des Lesevorgangs im Cachespeicher gespeichert wird und dann der Zielspeicherblock und der andere Speicherblock aufgefrischt werden, wobei kein Rückschreibvorgang vom Cachespeicher zum Hauptspeicher ausgeführt wird, wodurch die Anzahl von Rückschreibvorgängen minimiert wird.
DE102005047197A 2004-09-25 2005-09-26 Speichersystem und Betriebsverfahren Active DE102005047197B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2004-0077594 2004-09-25
KR1020040077594A KR100564633B1 (ko) 2004-09-25 2004-09-25 향상된 동작 성능을 가지는 반도체 메모리 장치 및 이에대한 액세스 제어 방법
US11/193,805 US7187608B2 (en) 2004-09-25 2005-07-28 System and method for controlling the access and refresh of a memory
US11/193,805 2005-07-28

Publications (2)

Publication Number Publication Date
DE102005047197A1 DE102005047197A1 (de) 2006-04-06
DE102005047197B4 true DE102005047197B4 (de) 2013-07-18

Family

ID=36062422

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102005047197A Active DE102005047197B4 (de) 2004-09-25 2005-09-26 Speichersystem und Betriebsverfahren

Country Status (2)

Country Link
DE (1) DE102005047197B4 (de)
TW (1) TWI267855B (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8331361B2 (en) * 2006-12-06 2012-12-11 Mosaid Technologies Incorporated Apparatus and method for producing device identifiers for serially interconnected devices of mixed type

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697909B1 (en) * 2000-09-12 2004-02-24 International Business Machines Corporation Method and apparatus for performing data access and refresh operations in different sub-arrays of a DRAM cache memory
US6757784B2 (en) * 2001-09-28 2004-06-29 Intel Corporation Hiding refresh of memory and refresh-hidden memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697909B1 (en) * 2000-09-12 2004-02-24 International Business Machines Corporation Method and apparatus for performing data access and refresh operations in different sub-arrays of a DRAM cache memory
US6757784B2 (en) * 2001-09-28 2004-06-29 Intel Corporation Hiding refresh of memory and refresh-hidden memory

Also Published As

Publication number Publication date
DE102005047197A1 (de) 2006-04-06
TWI267855B (en) 2006-12-01
TW200623123A (en) 2006-07-01

Similar Documents

Publication Publication Date Title
DE10345383B4 (de) Bankadreßabbildung gemäß einer Bankhaltezeit bei dynamischen Direktzugriffsspeichern
DE69932875T2 (de) Verfahren und Anordnung zur Benutzung eines 1-T SRAM-Kompatibelspeichers
DE102006028683B4 (de) Parallele Datenpfadarchitektur
DE19983737B3 (de) System zum Neuordnen von Befehlen, die von einer Speichersteuerung zu Speichervorrichtungen ausgegeben werden, unter Verhinderung von Kollision
DE3909896C2 (de)
DE3115541C2 (de)
DE69913366T2 (de) Lese/schreibe-puffern für ein komplettes verdecken des auffrischen eines halbleiterspeichers und verfahren zum betreiben derselben
DE102006062383B4 (de) Halbleiterspeicherelement und System für ein Halbleiterspeicherelement
DE102007050864B4 (de) Verfahren und Vorrichtung zum Kommunizieren von Befehls- und Adresssignalen
DE602004002300T2 (de) Selektive bankauffrischung
DE4222273C2 (de) Zweikanalspeicher und Verfahren zur Datenübertragung in einem solchen
DE102004027121B4 (de) Ein Mehrfachbankchip, der mit einer Steuerung kompatibel ist, die für eine geringere Anzahl von Banken entworfen ist, und ein Verfahren zum Betreiben
DE102005001175B4 (de) Speicher mit automatischer Auffrischung bei bestimmten Bänken
DE19983745B9 (de) Verwendung von Seitenetikettregistern um einen Zustand von physikalischen Seiten in einer Speichervorrichtung zu verfolgen
DE102005003863B4 (de) Speichervorrichtung mit Nicht-Variabler Schreiblatenz
DE102011087354A1 (de) Halbleiterspeicherelement, Verfahren zum Verifizieren einer Multizyklusselbstauffrischungsoperationeines Haibleiterspeicherelements undTestsystem
DE102006046441A1 (de) Verfahren zum Arbitrieren eines Zugriffs auf ein Speicherbauelement und Master zum Arbitrieren eines Zugriffs auf ein geteiltes Speicherbauelement
DE19645437A1 (de) Synchronhalbleiterspeichereinrichtung mit einer internen Schaltungseinrichtung, die nur dann betriebsberechtigt ist, wenn in normaler Reihenfolge Befehle angelegt sind
DE102006030373A1 (de) Halbleiterspeichervorrichtung
DE102007045497A1 (de) Mechanismus zum Erzeugen von logisch zugeordneten Lese- und Schreib-Kanälen in einer Speichersteuerung
DE112004002181T5 (de) Verfahren und Schaltungskonfiguration zum Auffrischen von Daten in einem Halbleiterspeicher
DE10215362A1 (de) Integrierter Speicher mit einem Speicherzellenfeld mit mehreren Speicherbänken und Schaltungsanordnung mit einem integrierten Speicher
DE60315190T2 (de) Vorladevorschlag
DE69629331T2 (de) System und Verfahren zur Bereitstellung einer flexiblen Speicherhierarchie
DE102005047197B4 (de) Speichersystem und Betriebsverfahren

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20131019