DE102013114365A1 - Variable dynamische Speicherauffrischung - Google Patents

Variable dynamische Speicherauffrischung Download PDF

Info

Publication number
DE102013114365A1
DE102013114365A1 DE102013114365.2A DE102013114365A DE102013114365A1 DE 102013114365 A1 DE102013114365 A1 DE 102013114365A1 DE 102013114365 A DE102013114365 A DE 102013114365A DE 102013114365 A1 DE102013114365 A1 DE 102013114365A1
Authority
DE
Germany
Prior art keywords
memory
area
refresh
refresh rate
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE102013114365.2A
Other languages
English (en)
Other versions
DE102013114365B4 (de
Inventor
William J. Dally
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.)
Nvidia Corp
Original Assignee
Nvidia Corp
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 Nvidia Corp filed Critical Nvidia Corp
Publication of DE102013114365A1 publication Critical patent/DE102013114365A1/de
Application granted granted Critical
Publication of DE102013114365B4 publication Critical patent/DE102013114365B4/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/40626Temperature related aspects of 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/40622Partial refresh of memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/023Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50016Marginal testing, e.g. race, voltage or current testing of retention

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Dram (AREA)

Abstract

Es werden ein System und ein Verfahren zum Auffrischen eines dynamischen Speichers bereitgestellt. Ein erstes Gebiet eines Speichers wird mit einer ersten Auffrischungsrate aufgefrischt, und ein zweites Gebiet des Speichers wird mit einer zweiten Auffrischungsrate aufgefrischt, die sich von der ersten Auffrischungsrate unterscheidet. Eine Speichersteuerung ist konfiguriert, das erste Gebiet eines Speichers mit der ersten Auffrischungsrate aufzufrischen, und das zweite Gebiet des Speichers mit der zweiten Auffrischungsrate aufzufrischen.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft dynamische Speicher und betrifft insbesondere die Auffrischung dynamischer Speicher.
  • HINTERGRUND
  • Konventionelle dynamische Speichereinrichtungen, etwa dynamische Speicher mit wahlfreiem Zugriff (DRAM) erfordern, dass alle Reihen bzw. Zeile in jedem Auffrischungsintervall (typischerweise 64 ms) aufgefrischt werden, um die Daten zu bewahren, die in dem RAM gespeichert sind. Wenn die Daten nicht aufgefrischt werden, dann geht im Laufe der Zeit die Ladung, die die Daten kodiert, in den Speicherzellen durch Leckströme verloren. Tatsächlich können die meisten DRAM-Zeilen viele Sekunden zwischen Auffrischvorgängen an der oberen Grenztemperatur arbeiten, und können die Daten bei typischen Temperaturen sogar länger halten. Typischerweise ergibt sich das kurze Auffrischungsintervall aus wenigen „leckenden” Speicherzellen. Nur die „leckenden” Speicherzellen müssen die schnelle Auffrischungsrate erhalten. Ein unnötiges Auffrischen aller Zeile mit der Rate, die von den „leckenden” Speicherzellen benötigt wird, verschwendet beträchtliche Leistung, wenn der DRAM ansonsten nicht verwendet wird (das heißt in einem Wartemodus ist). Die Verschwendung von Leistung ist insbesondere in mobilen Anwendungen problematisch, in der die Energie in Batterien gespeichert ist.
  • Es besteht daher ein Bedarf zur Reduzierung der Auffrischungsraten und/oder anderer im Stand der Technik auftretender Probleme.
  • ÜBERBLICK
  • Es werden ein System und ein Verfahren zur Auffrischung eines dynamischen Speichers bereitgestellt. Ein erstes Gebiet eines Speichers wird mit einer ersten Auffrischungsrate aufgefrischt, und ein zweites Gebiet des Speichers wird mit einer zweiten Auffrischungsrate aufgefrischt, die sich von der ersten Auffrischungsrate unterscheidet. Eine Speichersteuerung ist ausgebildet, das erste Gebiet eines Speichers mit der ersten Auffrischungsrate aufzufrischen, und das zweite Gebiet des Speichers mit der zweiten Auffrischungsrate aufzufrischen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein Flussdiagramm eines Verfahrens zur Auffrischung von Gebieten eines DRAM mit unterschiedlichen Raten gemäß einer Ausführungsform;
  • 2A zeigt unterschiedliche Auffrischungsraten für unterschiedliche Gebiete eines dynamischen Speichers gemäß einer Ausführungsform;
  • 2B zeigt eine Speichersteuerung gemäß einer Ausführungsform;
  • 3 zeigt ein weiteres Flussdiagramm eines Verfahrens zur Auffrischung von Zeilen eines DRAM mit unterschiedlichen Raten gemäß einer Ausführungsform;
  • 4A zeigt ein Flussdiagramm für einen Schritt, der in 3 gezeigt ist, gemäß einer Ausführungsform;
  • 4B zeigt ein Flussdiagramm für einen weiteren Schritt, der in 3 gezeigt ist, gemäß einer Ausführungsform;
  • 4C zeigt ein Flussdiagramm für einen weiteren, in 3 gezeigten Schritt gemäß einer Ausführungsform; und
  • 5 zeigt ein anschauliches System, in welchem die diversen Architekturen und/oder Funktionen der diversen vorhergehenden Ausführungsformen realisiert werden können.
  • DETAILLIERTE BESCHREIBUNG
  • Aktuelle DRAMs erfordern, dass alle Zeilen einmal in jedem Auffrischungsintervall (typischerweise 64 ms) aufgefrischt werden. Tatsächlich können jedoch die meisten DRAM-Seiten mehrere Sekunden zwischen Aufrischungsvorgängen an der oberen Grenztemperatur arbeiten und können ihre Daten bei typischen Temperaturen sogar noch länger halten. Das kurze Auffrischungsintervall wird durch einige wenige „leckende” Speicherpositionen notwendig gemacht. Nur diese Positionen erfordern die sehr schnelle Auffrischungsrate. Ein unnötiges Auffrischen aller DRAM-Seiten mit der Rate, die von der schlechtesten Seite gefordert wird, verschwendet beträchtliche Leistung, wenn der DRAM ansonsten nicht verwendet wird (d. h., in einem Wartezustand ist). Diese Verschwendung ist insbesondere in mobilen Anwendungen problematisch.
  • Anstatt sich nur auf die Auffrischungsrate, die von dem DRAM-Hersteller spezifiziert wird, zu verlassen, können unterschiedliche Gebiete des DRAM während des Betriebs charakterisiert werden und die Charakterisierungsinformation kann verwendet werden, um unterschiedliche Gebiete mit unterschiedlichen Auffrischungsraten aufzufrischen, um dadurch Leistung im Wartezustand zu reduzieren.
  • 1 zeigt ein Flussdiagramm 100 eines Verfahrens zur Auffrischung von Gebieten eines DRAM mit unterschiedlichen Raten gemäß einer Ausführungsform. Im Schritt 110 werden Auffrischungsraten für ein erstes Speichergebiet und ein zweites Speichergebiet ermittelt. In einer Ausführungsform entspricht jedes Gebiet einer oder mehreren Zeilen einer DRAM-Einrichtung oder einer oder mehreren Seiten einer DRAM-Einrichtung. Die Auffrischungsraten können ermittelt werden, indem die unterschiedlichen Zeilen oder Seiten einer DRAM-Einrichtung charakterisiert werden. Im Schritt 120 wird das erste Speichergebiet mit einer ersten Auffrischungsrate aufgefrischt. Im Schritt 130 wird das zweite Speichergebiet mit einer zweiten Auffrischungsrate, die sich von der ersten Auffrischungsrate unterscheidet, aufgefrischt. In einer Ausführungsform ist entweder die erste oder die zweite Auffrischungsrate diejenige Auffrischungsrate, die für das DRAM-Bauteil von dem DRAM-Zulieferer oder dem Hersteller spezifiziert ist. In einer weiteren Ausführungsform ist weder die erste noch die zweite Auffrischungsrate diejenige Auffrischungsrate, die für das DRAM-Bauteil spezifiziert ist.
  • Es wird nun anschaulichere Information im Hinblick auf diverse optionale Architekturen und Merkmale angegeben, mit der die zuvor genannte Technik realisiert werden kann oder auch nicht, wobei dies von den Wünschen des Anwenders abhängt. Es sollte jedoch dringend beachtet werden, dass die folgende Information nur für anschauliche Zwecke angegeben ist und in keiner Weise als Einschränkung erachtet werden sollte. Jedes der folgenden Merkmale kann optional mit oder ohne Einschluss anderer beschriebener Merkmale umgesetzt werden.
  • In einer Ausführungsform kann für jedes externe DRAM-Bauteil, das mit einer Recheneinrichtung gekoppelt ist, eine Gruppe an Auffrischungsregistern in einer Speichersteuerung einen Bereich von Seitenadressen (Bank und Zeile), die ein Gebiet an Speicher und Charakterisierungsinformation definieren, speichern. Die Charakterisierungsinformation umfasst das Auffrischungsintervall für das Speichergebiet, wobei das Auffrischungsintervall der Kehrwert der Auffrischungsrate oder Raten ist, mit der das Gebiet aufgefrischt werden sollte. Eine Speicherauffrischungseinheit durchläuft jedes Gebiet, wobei Zeilenaktivierungsbefehl- und Vorladeoperationen ausgeführt werden, um jede Zeile oder Seite in dem Gebiet entsprechend der Auffrischungsrate, die für das Gebiet angegeben ist, aufzufrischen. Um zu ermitteln, welche Gebiete mit welcher gegebenen Rate aufzufrischen sind, umfasst die Speichersteuerung eine temporäre Speicherressource, die ausgebildet ist, eine Kopie der Daten zu speichern, die in dem Gebiet gespeichert sind, während Eigenschaften des DRAM für das Gebiet gemessen werden.
  • 2A zeigt unterschiedliche Auffrischungsraten für unterschiedliche Gebiete eines dynamischen Speichers 200 gemäß einer Ausführungsform. Jedes Muster repräsentiert eine andere Auffrischungsrate und jedes Gebiet umfasst mindestens eine Zeile an Speicherplätzen. Zeilen innerhalb des Auffrischungsgebiets 210 sollten mit einer ersten Auffrischungsrate aufgefrischt werden. Zeilen innerhalb der Auffrischungsgebiete 215, 225 und 235 sind gegebenenfalls noch nicht charakterisiert, und können daher mit der Rate aufgefrischt werden, die von dem DRAM-Zulieferer angegeben ist. Die Zeilen in den Auffrischungsgebieten 220A und 220B sollten mit einer zweiten Auffrischungsrate aufgefrischt werden.
  • Es kann eine Reihe von verschiedenen Techniken eingesetzt werden, um ein Speichergebiet zu ermitteln, das mit einer Rate aufgefrischt werden kann, die sich von der von dem DRAM-Zulieferer angegebenen Rate unterscheidet. Eine Vorgehensweise besteht darin, jedes Auffrischungsgebiet unter Anwendung einer einzelnen Adresse (Bank und/oder Zeile) zu spezifizieren. Die einzelne Adresse wird dargestellt, indem 2 Bits gespeichert werden, die 0, 1 oder X (egal) für jedes Bit der einzelnen Adresse in einem Auffrischungsregister kodieren. Wenn beispielsweise Bank = 0X01 und Zeile = 0000.0100.0X11, dann enthält das Gebiet die Zeilen 0x043 und 0x047 der Bänke 1 und 5. Wie in 2A gezeigt ist, kann gemäß den Auffrischungsgebieten 220A und 220B jedes Auffrischungsgebiet in einem physikalischen Speicher unzusammenhängend sein. Anders ausgedrückt, ein spezielles Auffrischungsgebiet kann einen ersten Teil eines physikalischen Speichers und einen zweiten Teil des physikalischen Speichers, der mit dem ersten Teil des physikalischen Speichers nicht zusammenhängend ist, umfassen. In einer alternativen Vorgehensweise wird eine Anfangsadresse (Bank und Zeile) und eine and Adresse (Bank und Zeile) gespeichert, um jedes Auffrischungsgebiet anzugeben. Wenn der Anfang beispielsweise Bank = 0011, Zeile = =0x045 und die and Adresse Bank = 0100, Zeile = 0x32 ist, sind alle Speicherseiten von der Bank 3, Zeile 0x045 bis Bank 4, Zeile 0x32 in dem Auffrischungsgebiet enthalten.
  • In einer Ausführungsform kann ein Auffrischungsregister ein Prioritätssubgebiet speichern. Ein Prioritätssubgebiet ist ein kleines Auffrischungsgebiet, das aus einem größeren Auffrischungsgebiet herausgelöst ist. Beispielsweise kann ein großes Auffrischungsgebiet mit Priorität = 1, Bank = 01XX, Zeile = 0000.0100.XXXX und einem Auffrischungsintervall = 4 s definiert sein. Ein kleines Auffrischungsgebiet innerhalb des großen Auffrischungsgebiets kann durch ein zweites Auffrischungsregister mit Priorität = 2, Bank = 0100, Zeile = 0000.0100.0111, Auffrischungsintervall = 1 s definiert sein. Zusammen geben die Auffrischungsregister an, dass die Zeilen 0x040 bis 0x04F in den Bänken 4–7 alle 4 Sekunden aufgefrischt werden, mit der Ausnahme der Zeile 0x47 der Bank 4, die alle 1 Sekunden aufgefrischt wird. Wenn eine Adresse in mehreren Auffrischungsgebieten enthalten ist, wird das Auffrischungsregister mit der höchsten Priorität, das mit dieser Adresse übereinstimmt, ausgewählt. Es sollte beachtet werden, dass, obwohl diverse optionale Merkmale hierin in Verbindung mit der Definition von Auffrischungsgebieten eines Speichers angegeben sind, derartige Merkmale nur für anschauliche Zwecke angegeben sind und nicht als irgendeine Einschränkung erachtet werden sollten.
  • 2B zeigt eine Speichersteuerung 250 gemäß einer Ausführungsform. Die Speichersteuerung 250 enthält eine Charakterisierungseinheit 260, eine Auffrischungstabelle 265, einen Speichergebiet-Speicher (Direktzugriffsspeichergebiet-Speicher, Memory Region Storage) 255 und eine Speicherauffrischungseinheit 270. Die Speichersteuerung 250 umfasst ferner andere Komponenten (nicht gezeigt), um Daten aus dem DRAM 280 zu lesen und Daten in den DRAM 280 zu schreiben. Die Auffrischungstabelle 265 enthält eine Gruppe aus einem oder mehreren Auffrischungsregistern für jede externe DRAM-Einrichtung, die mit der Speichersteuerung 250 gekoppelt ist. Zusätzlich zur Kodierung eines Auffrischungsgebiets (eine Gruppe aus Seiten) enthält ein Auffrischungsregister auch ein Auffrischungsintervall, einen Zeitgeber und ein Feld für die nächste Adresse. Wie zuvor beschrieben ist, kann ein Auffrischungsregister auch eine Priorität und ein entsprechendes Auffrischungssubgebiet zusammen mit einem Auffrischungsintervall, Zeitgeber und einer nächsten Adresse für das Subgebiet kodieren. In einer Ausführungsform ist die Auffrischungstabelle 265 als ein inhaltsadressierbarer Speicher (CAM) realisiert. In einer Ausführungsform ist die Auffrischungstabelle 265 ein nicht-flüchtiger Speicher, so dass die in den Auffrischungsregistern enthaltenen Charakterisierungsdaten nicht erneut erzeugt werden müssen, wenn ein System, das die Speichersteuerung 250 enthält, eingeschaltet wird.
  • Der Zeitgeber und die Felder für die nächste Adresse werden von der Speicherauffrischungseinheit 270 verwendet. Die Speicherauffrischungseinheit 270 durchläuft gleichzeitig jedes Auffrischungsgebiet (und Auffrischungssubgebiet) und führt Zeilenaktivierungs- und Vorladeoperationen an der Gruppe aus Adressen (d. h., Zeile oder Seite) aus, die der nächsten Adresse entsprechen, wenn der Zeitgeber, der dem Auffrischungsgebiet entspricht (oder dem Auffrischungssubgebiet) abgelaufen ist. Die Speicherauffrischungseinheit 270 prüft die Zeitgeber in jedem Zeitschritt, setzt abgelaufene Zeitgeber zurück und aktualisiert die nächste Adresse für ein Auffrischungsgebiet (oder Auffrischungssubgebiet), wenn eine Auffrischung ausgeführt wird. Die Zeitgeber für jedes Auffrischungsgebiet (und Auffrischungssubgebiet) werden in jedem Zeitschritt aktualisiert (d. h., verringert).
  • Um die Auffrischungsrate zu ermitteln, mit der ein Gebiet innerhalb des DRAM 280 aufgefrischt werden sollte, umfasst die Speichersteuerung 250 einen Speichergebiet-Speicher 255, der ausgebildet ist, eine Kopie der in dem Gebiet gespeicherten Daten in dem Speichergebiet-Speicher 255 zu speichern, während die Charakterisierungseinheit 260 die Datenhalteeigenschaften des Gebiets misst.
  • Um das Auffrischungsintervall für jedes Speichergebiet zu ermitteln, kopiert die Charakterisierungseinheit 260 temporär die in dem Speichergebiet gespeicherten Daten in den Speichergebiet-Speicher 255. Die Charakterisierungseinheit 260 misst dann die Datenhalteeigenschaften des Speichergebiets, indem Datenmuster (beispielsweise abwechselnde 1'en und 0'en abgewechselt werden 11010...10) in das Speichergebiet in dem DRAM 280 mittels der Speicherauffrischungseinheit 270 geschrieben werden, indem eine Haltezeit gewartet wird, bevor das Speichergebiet aus dem DRAM 280 mittels der Speicherauffrischungseinheit 270 ausgelesen wird, und indem geprüft wird, ob die Daten bewahrt wurden, indem die aus dem DRAM 280 gelesenen Daten mit den Mustern verglichen werden, die in das Speichergebiet geschrieben wurden.
  • Eine anschauliche Charakterisierungsprüfung zur Messung der Datenhalteeigenschaften eines Speichergebiets besteht darin, das Schreiben, das Warten und das Auslesen des Speichergebiets unter Anwendung eines Vektors aus exponentiell anwachsenden Haltezeitdauern zu wiederholen. In einer Ausführungsform beginnt die Charakterisierungseinheit 260 mit der Haltezeitdauer von 64 ms, dann stellt die Charakterisierungseinheit 260 die Haltezeitdauer auf 128 ms, 0,25 Sekunden, 0,5 Sekunden, dann 1 Sekunde usw. ein. Für jede Haltezeitdauer wiederholt die Charakterisierungseinheit 260 das Schreiben und Lesen für einige unterschiedliche Datenmuster. Wenn die Charakterisierungseinheit 260 einen Fehler erkennt (d. h., das Muster, das geschrieben wurde, stimmt nicht mit dem ausgelesenen Muster überein), dann stellt die Charakterisierungseinheit 260 die Haltezeitdauer für das Speichergebiet ein. In einer Ausführungsform stellt die Charakterisierungseinheit 260 das Auffrischungsintervall mindestens um zwei Schritte zurück entsprechend dem Vektor der Haltezeitdauern, und wenn die zurückgesetzte Haltezeitdauer nicht getestet worden ist, dann wird das Muster für das Schreiben und Lesen wiederholt. Wenn beispielsweise der Fehler für die Haltezeitdauer von 4 Sekunden aufgetreten ist, ist die zurückgesetzte Haltezeitdauer 1 Sekunde. Wenn die zurückgesetzte Haltezeitdauer keinen Fehler erzeugt, keine die zurückgesetzte Haltezeitdauer in der Auffrischungstabelle 265 als das Auffrischungsintervall für das Speichergebiet gespeichert werden.
  • Auffrischungsintervalle können sensitiv sein im Hinblick auf Temperatur und/oder Spannungspegel. Die Speicherauffrischungseinheit 270 kann ausgebildet sein, die Auffrischungsintervalle so einzustellen, dass Auffrischungsintervalle verlängert werden (d. h., die Auffrischungsrate verringert sich), wenn der DRAM 280 bei tieferen Temperaturen arbeitet, als dies für das Auffrischungsintervall der Fall war, das in der Auffrischungstabelle 265 gespeichert ist. In ähnlicher Weise kann die Speicherauffrischungseinheit 270 ausgebildet sein, die Auffrischungsintervalle so einzustellen, dass Auffrischungsintervalle verkürzt werden (d. h. die Auffrischungsrate wird erhöht), wenn der DRAM 280 bei kleineren Spannungen arbeitet als diejenigen, die bei der Speicherung des Auffrischungsintervalls in der Auffrischungstabelle 265 angewendet wurde.
  • Wenn Temperaturmesswerte verfügbar sind, kann die Charakterisierungseinheit 260 die Temperaturmesswerte verwenden, um die Werte der Auffrischungstabelle, die in der Auffrischungstabelle 265 für das Speichergebiet gespeichert sind, so einstellen, dass sie einer Referenztemperatur entsprechen. Wenn beispielsweise die Charakterisierung bei einer Temperatur am Halbleiterübergang von 60°C ausgeführt werden und eine Referenztemperatur für den Halbleiterübergang 40°C beträgt, dann kann das in der Auffrischungstabelle 265 für das Speichergebiet gespeicherte Auffrischungsintervall um einen Faktor von 4 vergrößert werden (unter der Annahme, dass sich das Auffrischungsintervall für einen –10° Unterschied in der Temperatur am Halbleiterübergang relativ zu der Referenztemperatur am Halbleiterübergang ändert), um der Referenztemperatur am Halbleiterübergang zu entsprechen. Die Charakterisierungseinheit 260 kann ferner ausgebildet sein, die Werte für die Auffrischungsintervalle, die in der Auffrischungstabelle 265 für die Speichergebiet gespeichert sind, entsprechend dem gemessenen Spannungspegel und einem Referenz Spannungspegel einzustellen.
  • Die Speicherauffrischungseinheit 270 kann ausgebildet sein, die Werte der Auffrischungsintervalle entsprechend den Temperaturmesswerten einzustellen, wenn ein Speichergebiet aufgefrischt wird. Wenn beispielsweise die aktuelle Temperatur am Halbleiterübergang zu 60°C gemessen wird und die Referenztemperatur für den Halbleiterübergang 40°C beträgt, dann kann das Auffrischungsintervall, das aus der Auffrischungstabelle 265 für das Speichergebiet ausgelesen wird, um einen Faktor von 4 reduziert werden (wobei angenommen ist, dass das Auffrischungsintervall halbiert wird für jeden +10°-Unterschied in der Temperatur am Halbleiterübergang im Vergleich zu der Referenztemperatur am Halbleiterübergang), um die Rate zu steuern, mit der die Speicherauffrischungseinheit 270 das Speichergebiet auffrischt. Die Speicherauffrischungseinheit 270 kann ferner ausgebildet sein, die Werte für die Auffrischungsintervalle, die aus der Auffrischungstabelle 265 für die Speichergebiete ausgelesen werden, entsprechend dem gemessenen Spannungspegel und entsprechend einem Referenzspannungspegel einzustellen.
  • Es sollte beachtet werden, dass, obwohl diverse optionale Merkmale in Verbindung mit der Charakterisierung von Gebieten eines Speichers und für die Speicherung der Charakterisierungsinformation angegeben sind, derartige Merkmale nur für anschauliche Zwecke gedacht sind und nicht als irgendeine Einschränkung zu betrachten sind.
  • Für einige DRAMs 280 haben die meisten Speichergebiet sehr lange Auffrischungsintervalle (beispielsweise einige 10 Sekunden) – und nur ein geringer Bruchteil des Speichers in dem DRAM 280, häufig nur eine einzelne Seite oder Zeile, wird ein Auffrischungsintervall für den schlechtesten Falle (beispielsweise Ziffer 64 ms) aufweisen. Für DRAMs 280, die Anteil an Speicher besitzen, der besonders leckend ist (d. h., mit großen Auffrischungsraten oder kurzen Auffrischungsintervallen), kann es praktisch sein, den Anteil des Speichers, der das schlechteste Auffrischungsintervall besitzt, in dem Speichergebiet-Speicher 255 zu speichern. Dazu werden alle Zugriffe auf das eine oder die mehreren Speichergebiet auf den Speichergebiet-Speicher 255 abgebildet, so dass das entsprechende eine oder die mehreren Gebiete an Speicher in dem DRAM 280 ungenutzt bleiben und keine Auffrischung benötigen.
  • In einer Ausführungsform kann ein Teil des Speichergebiet-Speichers 255 für die Verwendung durch die Charakterisierungseinheit 260 verfügbar bleiben.
  • Konventionellerweise konfigurieren DRAM-Zulieferer DRAM-Bauteile so, dass Zeilen mit fehlerhaften Speicherzellen und Zeilen mit extrem kurzen Auffrischungsintervallen durch Ersatzzeilen innerhalb des DRAM-Bauteils ersetzt werden. Jedoch wird eine Ersetzung einer Zeile in dem DRAM-Bauteil nur dazu ausgeführt, dass Zeilen ersetzt werden, die außerhalb der Spezifikation liegen (d. h., sie haben ein Auffrischungsintervall, das kleiner als 64 ms ist). Im Gegensatz dazu ist die Speichersteuerung 250 ausgebildet, die Daten für Zeilen, die innerhalb der Spezifikation liegen, in dem Speichergebiet-Speicher 255 zu speichern, um die gesamte Leistungsaufnahme im Wartemodus zu verringern.
  • 3 zeigt ein weiteres Flussdiagramm 300 eines Verfahrens zur Auffrischung von Gebieten eines DRAM mit unterschiedlichen Raten gemäß einer Ausführungsform. Im Schritt 305 werden die in der Auffrischungstabelle 265 gespeicherten Intervalle initialisiert, so dass sie gleich dem Auffrischungsintervall sind, das von dem DRAM-Zulieferer spezifiziert wird. Im Schritt 310 wird ein Speichergebiet von der Charakterisierungseinheit 260 getestet, um eine Charakterisierungsinformation für das Speichergebiet zu erzeugen. Der Schritt 310 kann ausgeführt werden, während ein Bauteil, das die Speichersteuerung 250 enthält, arbeitet, selbst wenn die Speichersteuerung 250 auf den DRAM 280 zugreift, solange die Zugriffe nicht die Prüfung stören, die von der Charakterisierungseinheit 260 ausgeführt wird (d. h., die Zugriffe sollten nicht das gerade charakterisierte Speichergebiet auffrischen). Beispielsweise kann auf andere Speichergebiete zugegriffen werden oder diese können aufgefrischt werden, während ein spezielles Speichergebiet geprüft wird. In einer Ausführungsform werden während der Charakterisierungszugriffe auf das Speichergebiet, das gerade charakterisiert wird, auf den Speichergebiet-Speicher 255 abgebildet, und wenn Daten während der Charakterisierung geschrieben werden, wird der Speichergebiet-Speicher 255 in das Gebiet des DRAM 280, das charakterisiert wurde, zurück kopiert. In einer weiteren Ausführungsform werden während der Charakterisierungszugriffe auf das Speichergebiet, das gerade charakterisierte wird, verzögert, bis die Charakterisierung abgeschlossen ist. Ein anschauliches Verfahren zur Ausführung des Schritts 310 ist in Verbindung mit 4A beschrieben.
  • Im Schritt 315 ermittelt die Charakterisierungseinheit 260, ob die Auffrischungsrate des Speichergebiets die schlechteste Auffrischungsrate ist, die bislang für Speichergebiete, die getestet worden sind, ermittelt worden ist, und wenn dies der Fall ist, werden im Schritt 318 die in dem Speichergebiet gespeicherten Daten chipintern (on-chip) in dem Speichergebiet-Speicher 255 gespeichert (das heißt, Zugriffe auf das eine oder die mehreren Gebiete an Speicher werden auf den Speichergebiet-Speicher 255 abgebildet). In einer Ausführungsform wird das Auffrischungsintervall, das am kürzestem ist (d. h., der niedrigste Wert), als eines betrachtet, das angibt, dass das Speichergebiet die schlechteste Auffrischungsrate hat. In einer Ausführungsform ist der Speichergebiet-Speicher 255 ausgebildet, ein oder mehrere der Speichergebiete zu ersetzen und die Schritte 315 und 318 werden weggelassen.
  • Ansonsten wird im Schritt 350 das Speichergebiet der Auffrischungstabelle 265 hinzugefügt. Ein anschauliches Verfahren zur Ausführung des Schritts 350 ist in Verbindung mit 4B beschrieben. Ein anschauliches Verfahren zur Ausführung des Schritts 350 ist in Verbindung mit 4C beschrieben. Im Schritt 370 frischt die Speicherauffrischungseinheit 270 den DRAM 280 entsprechend der Auffrischungstabelle 265 auf. In einer Ausführungsform werden ein oder mehrere der Schritte 305, 310, 315, 318, 350 und 370 ausgeführt, während das Gerät, das die Speichersteuerung 250 enthält, untätig ist oder nicht arbeitet.
  • 4A zeigt ein Flussdiagramm für den Schritt 310, der in 3 gezeigt ist, gemäß einer Ausführungsform. Im Schritt 320 kopiert die Charakterisierungseinheit 260 den Inhalt (d. h., Daten) eines Speichergebiet in dem DRAM 280 in den Speichergebiet-Speicher 255. Im Schritt 325 führt die Charakterisierungseinheit 260 eine Charakterisierungsprüfung an dem Speichergebiet in dem DRAM 280 aus, wobei eine Haltezeitdauer verwendet wird. Im Schritt 330 ermittelt die Charakterisierungseinheit 260, ob ein Fehler während der Haltezeitdauer aufgetreten ist, und wenn dies der Fall ist, stellt im Schritt 335 die Charakterisierungseinheit 260 die Haltezeitdauer ein und kehrt zum Schritt 325 zurück. Wenn ansonsten kein Fehler während der Haltezeitdauer aufgetreten ist, dann ermittelt im Schritt 340 die Charakterisierungseinheit 260, ob weitere Haltezeitdauern verwendet werden sollten, um das Speichergebiet zu charakterisieren, und wenn dies der Fall ist, geht die Charakterisierungseinheit 260 zum Schritt 335 weiter. In einer Ausführungsform stellt die Charakterisierungseinheit 260 sicher, dass im Schritt 340 eine zurückgestufte Haltezeitdauer getestet worden ist. Ansonsten ist der Charakterisierungsvorgang abgeschlossen, und im Schritt 345 stellt die Charakterisierungseinheit 260 die Haltezeitdauer für die Betriebsbedingungen im Vergleich zu Referenzbetriebsbedingungen ein (d. h., einen Referenzspannungspegel und/oder eine Referenztemperatur). Das Auffrischungsintervall, das für das Speichergebiet ermittelt wird, wird als die Haltezeitdauer nach dem Kompensieren im Hinblick auf die Betriebsbedingungen festgelegt.
  • Die Charakterisierungseinheit 260 leitet das Auffrischungsintervall für ein Gebiet der Auffrischungstabelle 265 zu. Die Anzahl an Auffrischungsregistern, die in der Auffrischungstabelle 265 enthalten ist, ist begrenzt. Da ein spezielles Auffrischungsintervall typischerweise nicht für jede Zeile des DRAM 280 gespeichert werden kann, werden die Speichergebiete als Auffrischungsgebiete kodiert, die zwei oder mehr Zeilen (oder Seiten) mit unterschiedlicher Charakterisierungsinformation mit dem gleichen Auffrischungsintervall (das minimale Auffrischungsintervall zweier oder mehrerer Zeilen) enthalten. Anders ausgedrückt, Zeilen mit einem kleinen Auffrischungsintervall werden mit Zeilen zu einer Gruppe zusammengefasst, die ein größeres Auffrischungsintervall besitzen, um die Anzahl an Auffrischungsgebieten auf eine Angabe zu begrenzen, für die die Charakterisierungsinformation in der Auffrischungstabelle 265 gespeichert werden kann.
  • 4B zeigt ein Flussdiagramm für den in 3 gezeigten Schritt 350 gemäß einer Ausführungsform. Das in 4B gezeigten Flussdiagramm entspricht einer Ausführungsform der Auffrischungstabelle 265, die die Startadresse und Endadresse speichert, um jedes Auffrischungsgebiet zu definieren. Im Schritt 410 ermittelt die Auffrischungstabelle 265, ob ein Eintrag (d. h., ein Auffrischungsregister) für die Speicherung der Charakterisierungsinformation verfügbar ist, und wenn dies der Fall ist, dann wird im Schritt 440 die Charakterisierungsinformation für das Speichergebiet in dem Eintrag gespeichert. In einer Ausführungsform speichert die Auffrischungstabelle 265 die Charakterisierungsinformation für das Speichergebiet als ein Prioritäts-Subgebiet, wenn das Speichergebiet innerhalb eines Auffrischungsgebiets liegt.
  • Wenn ansonsten keine Einträge im Schritt 410 verfügbar sind, ermittelt im Schritt 420 die Auffrischungstabelle 265 einen Eintrag, der dem Speichergebiet am „nächsten” liegt. Die Nähe kann in Form eines Auffrischungsintervalls des Speichergebiets oder in Form der einzelnen Adresse oder der Startadresse und Endadresse für das Speichergebiet ermittelt werden. In einer Ausführungsform kann die Auffrischungstabelle 265 Einträge mit Auffrischungsintervallen, die kürzer sind als das Auffrischungsintervall des Speichergebiets, als nahe liegend erachten im Vergleich zu Einträgen mit Auffrischungsintervallen, die länger sind als das Auffrischungsintervall des Speichergebiets. Wenn mehr als ein Eintrag als der „nächste” Eintrag für das Speichergebiet ermittelt wird, da die Einträge gleiche Auffrischungsintervalle haben, wird nur ein einzelner Eintrag ausgewählt. Wenn Speichergebiete unter Anwendung einer einzelnen Adresse (Bank und/oder Zeile) spezifiziert sind, wobei jedes Bit unter Anwendung von 2-Bit 0, 1, X-Werten kodiert ist, wird der einzelne Eintrag, der ausgewählt ist, der Eintrag sein mit einer Adresse, die näher gemäß einem Hamming-Abstand zu der Adresse des Speichergebiets liegt. Die Kodierung von einem oder mehreren Bit der einzelnen Adresse kann geändert werden von einer „0” oder „1” zu einem „X”, um das Speichergebiet in den Eintrag einzufügen. Die Änderung von mehr als einem Bit der einzelnen Adresse kann bewirken, dass weitere Speichergebiete in den Eintrag kombiniert werden. Daher sollte das Auffrischungsintervall auf das kürzeste Auffrischungsintervall der kombinierten Speichergebiete aktualisiert werden. Wenn Gebiete unter Anwendung der Startadresse und der Endadresse repräsentiert sind, kann der einzelne Eintrag, der ausgewählt ist, der Eintrag sein, der am nächsten an dem Speichergebiet in einem linearen Adressenraum liegt. Es wird entweder die Startadresse oder die Endadresse des Eintrags geändert, um das Speichergebiet in den Eintrag zu kombinieren. Wiederum kann die Änderung der Startadresse oder Endadresse bewirken, dass weitere Speichergebiete in den Eintrag kombiniert werden, so dass das Auffrischungsintervall auf das kürzeste Auffrischungsintervall der kombinierten Speichergebiete aktualisiert werden sollte.
  • In einer weiteren Ausführungsform kann die Auffrischungstabelle 265 Einträge in Betracht ziehen, die einzelne Adressen besitzen, die sprechend einem Hamming-Abstand am nächsten zu dem Speichergebiet liegen, das als eine einzelne Adresse repräsentiert ist, wobei jedes Bit unter Anwendung von 2-Bit-Werten 0, 1, X kodiert ist. Wenn mehr als ein Eintrag als der „nächste” Eintrag für das Speichergebiet ermittelt wird, da sich die gleiche Anzahl an Bits der einzelnen Adresse unterscheiden, wird ein einzelner Eintrag ausgewählt. Der einzelne Eintrag, der ausgewählt ist, kann der Eintrag sein mit einem Auffrischungsintervall, das am nächsten zu dem Auffrischungsintervall des Speichergebiets ist. Da eines oder mehrere Bits der einzelnen Adresse von einer „0” oder „1” in ein „X” zur Kombination des Speichergebiets in den Eintrag verändert werden, sollte das Auffrischungsintervall auf das kürzeste Auffrischungsgebiet der kombinierten Speichergebiete aktualisiert werden. Wenn Gebiete unter Verwendung einer Startadresse und Endadresse repräsentiert sind, kann die Auffrischungstabelle 265 Einträge in Betracht ziehen, die dem Speichergebiet im linearen Adressenraum am nächsten liegen. Wenn mehr als ein Eintrag als der „nächste” Eintrag für das Speichergebiet ermittelt wird, wird nur ein einzelner Eintrag ausgewählt. Der einzelne Eintrag, der ausgewählt ist, kann der Eintrag sein mit einem Auffrischungsintervall, das dem Auffrischungsintervall des Speichergebiets am nächsten ist. Es wird entweder die Startadresse oder die Endadresse des Eintrags geändert, um das Speichergebiet in den Eintrag einzufügen. Wiederum kann die Änderung der Startadresse oder der Endadresse bewirken, dass weitere Gebiete an Speicher in den Eintrag kombiniert werden, so dass das Auffrischungsintervall auf das kürzeste Auffrischungsintervall der kombinierten Speichergebiete aktualisiert werden sollte. Das Auffrischungsintervall weiterer Gebiete kann, wenn der einzelne Eintrag ausgewählt wird, von der Auffrischungstabelle 265 in Betracht gezogen werden, um das Auffrischungsintervall der kombinierten Speichergebiete zu minimieren.
  • Im Schritt 435 aktualisiert die Auffrischungstabelle 265 den Eintrag nach Bedarf, um das Speichergebiet in den Eintrag einzufügen (d. h., sie aktualisiert einen oder mehrere der folgenden Aspekte: die einzelne Adresse, die Startadresse oder die Endadresse, die Priorität oder das Auffrischungsintervall).
  • Es sollte beachtet werden, dass, obwohl diverse optionale Merkmale in Verbindung mit der Speicherung der Charakterisierungsinformation für Speichergebiete und für die Kombination von Einträgen von Auffrischungsgebieten angegeben sind, derartige Merkmale nur anschaulicher Natur sind und in keiner Weise als Einschränkung zu betrachten sind.
  • 4C zeigt ein Flussdiagramm für einen Schritt 370, der in 3 gezeigt ist, gemäß einer Ausführungsform. Jeder Eintrag in der Auffrischungstabelle 265 enthält ein Zeitgeberfeld. Das Zeitgeberfeld wird auf die Anzahl von Zeitschritten (beispielsweise Zeitschritt = 16 μs) zwischen Auffrischvorgängen für Zeilen oder Seiten in dem Auffrischungsgebiet initialisiert. Für ein Auffrischungsgebiet R mit der Größe |R| wird der Zeitgeber auf, ri(R)/(Zeitschritt*|R|) gesetzt, wobei ri das Auffrischungsintervall ist. Die Auffrischungstabelle 265 ist ausgebildet, die Zeitgeberfelder ihres Eintrags in jedem Zeitschritt zu aktualisieren (d. h., zu dekrementieren).
  • Im Schritt 450 ist die Speicherauffrischungseinheit 270 ausgebildet zu prüfen, ob einer der Zeitgeber, die in der Auffrischungstabelle 265 gespeichert sind, abgelaufen ist, und wenn dies nicht der Fall ist, wird der Schritt 450 wiederholt. Wenn ein Zeitgeber abgelaufen ist, setzt im Schritt 460 die Speicherauffrischungseinheit 270 den Zeitgeber auf den Anfangswert zurück. Im Schritt 465 führt die Speicherauffrischungseinheit 270 einen Speicherauffrischungsvorgang an den Zeilen oder der Seite in dem DRAM 280 aus, die durch das nächste Adressenfeld in dem Eintrag der Auffrischungstabelle 265, der den abgelaufenen Zeitgeber aufweist, angegeben ist. Im Schritt 470 aktualisiert die Speicherauffrischungseinheit 270, wenn die Speicherauffrischungsoperation abgeschlossen ist, das Feld für die nächste Adresse, so dass dieses auf die nächste Adresse zeigt, die in dem Auffrischungsgebiet zu aktualisieren ist (wenn sie aktualisiert ist, kann die Adresse einen nächsten Umlauf beginnen). In einer weiteren Ausführungsform können die Speicherauffrischungsvorgänge zeitlich dicht beieinander ausgeführt werden. Doch kann die Ausführung einer Anhäufung aus Auffrischungsvorgängen anstelle einer zeitlichen Spreizung der Auffrischungsvorgänge zu einer Spitze in der Leistungsaufnahme führen und kann ferner die Bandbreite verringern, die für Speicherzugriffe verfügbar ist.
  • 5 zeigt ein anschauliches System 500, in welchem die diversen Architekturen und/oder Funktionen der diversen vorhergehenden Ausführungsformen realisiert sein können. Wie gezeigt, ist ein System 500 bereitgestellt, das mindestens einen zentralen Prozessor 501 aufweist, der mit einem Kommunikationsbus 502 verbunden ist. Der Kommunikationsbus 502 kann realisiert werden unter Anwendung eines beliebigen geeigneten Protokolls, etwa PCI (periphere Komponenten-Verbindung), PCI-Express, AGP (beschleunigter Graphikport), HyperTransport, oder durch ein oder mehrere andere Busprotokolle oder Punkt-Zu-Punkt-Kommunikationsprotokollen. Das System 500 umfasst ferner einen Hauptspeicher 504. Steuerlogik (Software) und Daten sind in dem Hauptspeicher 504 abgelegt, der die Form eines Speichers mit wahlfreiem Zugriff (RAM) annehmen kann.
  • Das System 500 enthält ferner Eingabegeräte 512, einen Grafikprozessor 506 und eine Anzeige 508, d. h. eine konventionelle CRT (Kathodenstrahlröhre), eine LCD (Flüssigkristallanzeige), eine LED (lichtemittierende Diode), eine Plasmaanzeige oder dergleichen. Eine Anwendereingabe kann aus den Eingabegeräten 512, beispielsweise Tastatur, Maus, berührungsempfindliches Feld, Mikrofon, und dergleichen, empfangen werden. In einer Ausführungsform kann der Grafikprozessor 506 mehrere Schattierungsprogramme, ein Rastermodul, usw. aufweisen. Jedes der vorhergehenden Module kann sogar auf einer einzelnen Halbleiterplattform angeordnet sein, um eine grafische Verarbeitungseinheit (GPU) zu bilden. Der Grafikprozessors 506 kann mit einem oder mehreren DRAM-Bauteilen 515 gekoppelt und ausgebildet sein, unterschiedliche Gebiete des bzw. der DRAM Id unterschiedlichen Raten auf der Grundlage einer Charakterisierungsinformation aufzufrischen. In einer Ausführungsform ist der zentrale Prozessor 501 mit dem einen oder den mehreren DRAM-Bauteilen 515 gekoppelt und ausgebildet, unterschiedliche Gebiete des bzw. der DRAM mit unterschiedlichen Raten auf der Grundlage der Charakterisierungsinformation aufzufrischen. Der DRAM 515 kann als der DRAM 280 aus 2 realisiert sein.
  • In der vorliegenden Beschreibung kann eine einzelne Halbleiterplattform eine einzelne alleinstehende halbleiterbasierte integrierte Schaltung oder einen Chip bezeichnen. Es sollte beachtet werden, dass der Begriff einzelne Halbleiterplattform auch Multi-Chip-Module mit vergrößerter Verbindungsstruktur bezeichnen kann, die eine chipinterne Funktion simulieren, und die wesentliche Verbesserung gegenüber einer Realisierung mit konventioneller zentraler Recheneinheit (CPU) und Bus darstellen. Selbst verständlich können die diversen Module auch separat angeordnet sein oder können in diversen Kombinationen von Halbleiterplattformen entsprechend den Bedürfnissen des Anwenders vorgesehen sein. Eines oder mehrere der in 5 gezeigten Systeme 500 kann in dem System 500 integriert sein, um Leistung für einen oder mehrere der Chips bereitzustellen.
  • Das System 500 kann ferner einen sekundären Speicher 510 umfassen. Der sekundäre Speicher 510 umfasst beispielsweise ein Festplattenlaufwerk und/oder ein entfernbares Laufwerk, was durch ein Diskettenlaufwerk, ein Magnetbandlaufwerk, ein Kompaktdisketten-Laufwerk, ein Laufwerk für eine digitale Vielseitigkeitsdiskette (DVD), ein Aufzeichnungsgerät, einen Flash-Speicher mit universellem seriellen Bus (USB) repräsentiert sein kann. Das entfernbare Speicherlaufwerk liest von einer entfernbaren Speichereinheit in gut bekannter Weise und/oder beschreibt diese. Computerprogramme oder Computer-Steuerlogik-Algorithmen können in dem Hauptspeicher 504 und/oder in dem sekundären Speicher 510 gespeichert sein. Derartige Computerprogramme verleihen, wenn sie ausgeführt werden, dem System 500 die Fähigkeit, diverse Funktionen auszuführen. Der Speicher 504, der Speicher 510 und/oder ein anderer Speicher sind mögliche Beispiele von computerlesbaren Medien.
  • In einer Ausführungsform können die Architektur und/oder Funktionen der diversen vorhergehenden Figuren realisiert werden in Verbindung mit dem zentralen Prozessor 501, dem Grafikprozessor 506, einer integrierten Schaltung (nicht gezeigt), die über die Fähigkeiten zumindest eines Teils des zentralen Prozessors 501 und des Grafikprozessors 506 verfügt, einem Chipsatz (beispielsweise eine Gruppe aus integrierten Schaltungen, die so gestaltet sind, dass sie als Einheit betreffende Funktionen ausführen und als solche verkauft werden, usw.), und/oder in Zusammenhang mit einer anderen integrierten Schaltung für diesen Zweck.
  • Ferner können die Architektur und/oder Funktionen der diversen vorhergehenden Figuren in Verbindung mit einem allgemeinen Computersystem, einem System aus Leiterplatten, einem Spielekonsolensystem, das für Unterhaltungszwecke vorgesehen ist, einem anwendungsspezifischen System und/oder einem anderen gewünschten System realisiert werden. Beispielsweise kann das System 500 die Form eines Tischrechners, eines mobilen Rechners, eines Dienstleister-Rechners, eines Arbeitplatzrechners, von Spielekonsolen, eines eingebetteten Systems und/oder eine andere Art von Logik annehmen. Ferner kann das System 500 die Form diverser anderer Geräte annehmen, wozu gehören, ohne einschränkend zu sein, eine Einrichtung in Form eines persönlichen digitalen Assistenten (PDA), eine Einrichtung in Form eines Mobiltelefons, eines Fernsehgeräts, usw.
  • Ferner kann, obwohl dies nicht gezeigt ist, das System 500 mit einem Netzwerk (beispielsweise einem Telekommunikationsnetzwerk, einem Nahbereichsnetzwerk (LAN), einem drahtlosen Netzwerk, einem Weitbereichsnetzwerk (WAN), etwa dem Internet, einem Gerät-zu-Gerät-Netzwerk, einem Kabelnetzwerk oder dergleichen) für Kommunikationszwecke gekoppelt sein.
  • Obwohl diverse Ausführungsformen beschrieben sind, sollte beachtet werden, dass diese nur als Beispiel und nicht als Einschränkung präsentiert sind. Somit sollten die Breite und der Schutzbereich einer bevorzugten Ausführungsform nicht durch eine der zuvor beschriebenen anschaulichen Ausführungsformen eingeschränkt sein, sondern sie sollten nur entsprechend den folgenden Ansprüchen und ihren äquivalenten definiert sein.

Claims (23)

  1. Ein Verfahren aufweisend: Auffrischen eines ersten Gebiets eines Speichers mit einer ersten Auffrischungsrate; und Auffrischen eines zweiten Gebiets des Speichers mit einer zweiten Auffrischungsrate, die sich von der ersten Auffrischungsrate unterscheidet.
  2. Das Verfahren gemäß Anspruch 1, wobei das erste Gebiet eine oder mehrere Seiten des Speichers enthält und wobei das zweite Gebiet eine oder mehrere weitere Seiten des Speichers enthält.
  3. Das Verfahren gemäß Anspruch 1, wobei das erste Gebiet eine oder mehrere Zeilen des Speichers und wobei das zweite Gebiet eine oder mehrere weitere Zeilen des Speichers enthält.
  4. Das Verfahren gemäß Anspruch 1, wobei der Speicher eine dynamische Speichereinrichtung mit wahlfreiem Zugriff ist.
  5. Das Verfahren gemäß Anspruch 1, ferner aufweisend: Charakterisieren des ersten Gebiets, um Datenhalteeigenschaften des ersten Gebiets zu messen.
  6. Das Verfahren gemäß Anspruch 5, wobei die Charakterisierung aufweist: Kopieren von Daten aus dem ersten Gebiet des Speichers in eine Speicherressource; Schreiben eines Musters in das erste Gebiet des Speichers; Abwarten einer Wartezeitdauer; und Lesen des ersten Gebiets, um Lesedaten zu erhalten.
  7. Das Verfahren gemäß Anspruch 6, das ferner aufweist: Einstellen der Haltezeitdauer, wenn die Lesedaten nicht mit dem Muster übereinstimmen.
  8. Das Verfahren gemäß Anspruch 6, das ferner aufweist: Speichern der Haltezeitdauer als ein erstes Auffrischungsintervall, wenn die Lesedaten mit dem Muster übereinstimmen.
  9. Das Verfahren gemäß Anspruch 1, das ferner aufweist: Einstellen der ersten Auffrischungsrate, um eine gemessene Temperatur im Vergleich zu einer Referenztemperatur zu kompensieren.
  10. Das Verfahren gemäß Anspruch 1, das ferner aufweist: Einstellen der ersten Auffrischungsrate, um einen gemessenen Spannungspegel im Vergleich zu einem Referenzspannungspegel zu kompensieren.
  11. Das Verfahren gemäß Anspruch 1, das ferner aufweist: Abbilden von Schreiboperationen auf ein drittes Gebiet des Speichers und von Leseoperation aus dem dritten Gebiet des Speichers auf eine Speicherressource, die innerhalb einer Speichersteuerung liegt, die mit dem Speicher gekoppelt ist.
  12. Das Verfahren nach Anspruch 1, das ferner aufweist: Charakterisieren des dritten Gebiets, um Datenhalteeigenschaften des dritten Gebiets zu messen; Ermitteln einer dritten Auffrischungsrate auf der Grundlage der Datenhalteeigenschaften; und Ermitteln, dass die dritte Auffrischungsrate größer als die erste Auffrischungsrate ist.
  13. Das Verfahren gemäß Anspruch 1, das ferner aufweist: Speichern von Charakterisierungsdaten für das erste Gebiet des Speichers in einem ersten Eintrag einer Tabelle.
  14. Das Verfahren gemäß Anspruch 1, das ferner aufweist: Kombinieren von Charakterisierungsdaten für ein drittes Gebiet des Speichers in den ersten Eintrag der Tabelle, die zu dem ersten Gebiet des Speichers korrespondiert.
  15. Das Verfahren gemäß Anspruch 1, wobei das erste Gebiet des Speichers als eine einzelne Adresse spezifiziert ist und wobei jedes Bit der einzelnen Adresse als ein Wert von 0, 1 oder X kodiert ist.
  16. Das Verfahren gemäß Anspruch 1, wobei das erste Gebiet des Speichers unter Anwenden einer Startadresse und eine Endadresse spezifiziert wird.
  17. Das Verfahren gemäß Anspruch 1, wobei dem ersten Gebiet des Speichers eine Priorität zugeordnet ist.
  18. Das Verfahren gemäß Anspruch 1, das ferner aufweist: Kopieren von Daten aus dem ersten Gebiet des Speichers in eine Speicherressource; und Abbilden von Zugriffen, die auf das erste Gebiet des Speichers gerichtet sind, in die Speicherressource.
  19. Ein System aufweisend: einen dynamischen Speicher; und eine Speichersteuerung, die mit dem dynamischen Speicher verbunden und konfiguriert ist, um: ein erstes Gebiet des dynamischen Speichers mit einer ersten Auffrischungsrate aufzufrischen; und ein zweites Gebiet des dynamischen Speichers mit einer zweiten Auffrischungsrate aufzufrischen, die sich von der ersten Auffrischungsrate unterscheidet.
  20. Das System gemäß Anspruch 19, wobei die Speichersteuerung ferner konfiguriert ist, um das erste Gebiet zu charakterisieren, um Datenhalteeigenschaften des ersten Gebiets zu messen.
  21. Das System gemäß Anspruch 20, wobei die Charakterisierung umfasst: Kopieren von Daten aus dem ersten Gebiet des Speichers in eine Speicherressource; Schreiben eines Musters in das erste Gebiet des Speichers; Abwarten einer Haltezeitdauer; und Auslesen des ersten Gebiets, um Lesedaten zu erhalten.
  22. Das System gemäß Anspruch 21, wobei die Speichersteuerung ferner konfiguriert ist, die Haltezeitdauer einzustellen, wenn die Lesedaten nicht mit dem Muster übereinstimmen.
  23. Das System gemäß Anspruch 21, wobei die Speichersteuerung ferner konfiguriert ist, die Haltezeitdauer als ein erstes Auffrischungsintervall zu speichern, wenn die Lesedaten mit dem Muster übereinstimmen.
DE102013114365.2A 2013-03-11 2013-12-18 Variable dynamische Speicherauffrischung Active DE102013114365B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/794,563 US9224449B2 (en) 2013-03-11 2013-03-11 Variable dynamic memory refresh
US13/794,563 2013-03-11

Publications (2)

Publication Number Publication Date
DE102013114365A1 true DE102013114365A1 (de) 2014-09-11
DE102013114365B4 DE102013114365B4 (de) 2023-11-09

Family

ID=51385450

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013114365.2A Active DE102013114365B4 (de) 2013-03-11 2013-12-18 Variable dynamische Speicherauffrischung

Country Status (4)

Country Link
US (1) US9224449B2 (de)
CN (1) CN104050049A (de)
DE (1) DE102013114365B4 (de)
TW (1) TWI517150B (de)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9324398B2 (en) 2013-02-04 2016-04-26 Micron Technology, Inc. Apparatuses and methods for targeted refreshing of memory
US9165668B1 (en) 2013-07-29 2015-10-20 Western Digital Technologies, Inc. Data retention monitoring using temperature history in solid state drives
US9047978B2 (en) 2013-08-26 2015-06-02 Micron Technology, Inc. Apparatuses and methods for selective row refreshes
DE102014208609A1 (de) * 2014-05-08 2015-11-26 Robert Bosch Gmbh Refresh eines Speicherbereichs einer nichtflüchtigen Speichereinheit
JP2015219938A (ja) 2014-05-21 2015-12-07 マイクロン テクノロジー, インク. 半導体装置
US9524769B2 (en) * 2015-04-17 2016-12-20 Samsung Electronics Co., Ltd. Smart in-module refresh for DRAM
US9761296B2 (en) 2015-04-17 2017-09-12 Samsung Electronics Co., Ltd. Smart in-module refresh for DRAM
KR102321745B1 (ko) * 2015-08-27 2021-11-05 삼성전자주식회사 동적 랜덤 액세스 메모리 장치, 그것의 동작 방법, 및 그것을 포함하는 메모리 모듈
WO2017151567A1 (en) * 2016-03-01 2017-09-08 University Of Rochester Content aware refresh
JP2017182854A (ja) 2016-03-31 2017-10-05 マイクロン テクノロジー, インク. 半導体装置
KR20180081989A (ko) * 2017-01-09 2018-07-18 삼성전자주식회사 메모리 장치 및 그것의 리프레시 방법
US10490251B2 (en) 2017-01-30 2019-11-26 Micron Technology, Inc. Apparatuses and methods for distributing row hammer refresh events across a memory device
US10109339B1 (en) * 2017-07-28 2018-10-23 Micron Technology, Inc. Memory devices with selective page-based refresh
CN109658961B (zh) * 2017-10-12 2021-08-03 华邦电子股份有限公司 易失性存储器存储装置及其刷新方法
TWI639920B (zh) 2017-11-17 2018-11-01 財團法人工業技術研究院 記憶體控制器及其控制方法以及記憶體及其控制方法
KR20190075334A (ko) * 2017-12-21 2019-07-01 에스케이하이닉스 주식회사 반도체 장치
US10580475B2 (en) 2018-01-22 2020-03-03 Micron Technology, Inc. Apparatuses and methods for calculating row hammer refresh addresses in a semiconductor device
US11017833B2 (en) 2018-05-24 2021-05-25 Micron Technology, Inc. Apparatuses and methods for pure-time, self adopt sampling for row hammer refresh sampling
US10896715B2 (en) * 2018-06-15 2021-01-19 Micron Technology, Inc. Dynamic memory refresh interval to reduce bandwidth penalty
US11152050B2 (en) 2018-06-19 2021-10-19 Micron Technology, Inc. Apparatuses and methods for multiple row hammer refresh address sequences
US12020740B2 (en) * 2018-06-26 2024-06-25 Rambus Inc. Memory device having non-uniform refresh
US10685696B2 (en) 2018-10-31 2020-06-16 Micron Technology, Inc. Apparatuses and methods for access based refresh timing
WO2020117686A1 (en) 2018-12-03 2020-06-11 Micron Technology, Inc. Semiconductor device performing row hammer refresh operation
CN111354393B (zh) 2018-12-21 2023-10-20 美光科技公司 用于目标刷新操作的时序交错的设备和方法
US10957377B2 (en) 2018-12-26 2021-03-23 Micron Technology, Inc. Apparatuses and methods for distributed targeted refresh operations
US10770127B2 (en) 2019-02-06 2020-09-08 Micron Technology, Inc. Apparatuses and methods for managing row access counts
US11043254B2 (en) 2019-03-19 2021-06-22 Micron Technology, Inc. Semiconductor device having cam that stores address signals
US11227649B2 (en) 2019-04-04 2022-01-18 Micron Technology, Inc. Apparatuses and methods for staggered timing of targeted refresh operations
US10824573B1 (en) 2019-04-19 2020-11-03 Micron Technology, Inc. Refresh and access modes for memory
US11264096B2 (en) 2019-05-14 2022-03-01 Micron Technology, Inc. Apparatuses, systems, and methods for a content addressable memory cell with latch and comparator circuits
US11158364B2 (en) 2019-05-31 2021-10-26 Micron Technology, Inc. Apparatuses and methods for tracking victim rows
US11069393B2 (en) 2019-06-04 2021-07-20 Micron Technology, Inc. Apparatuses and methods for controlling steal rates
US11158373B2 (en) 2019-06-11 2021-10-26 Micron Technology, Inc. Apparatuses, systems, and methods for determining extremum numerical values
US10832792B1 (en) 2019-07-01 2020-11-10 Micron Technology, Inc. Apparatuses and methods for adjusting victim data
US11139015B2 (en) 2019-07-01 2021-10-05 Micron Technology, Inc. Apparatuses and methods for monitoring word line accesses
US11386946B2 (en) 2019-07-16 2022-07-12 Micron Technology, Inc. Apparatuses and methods for tracking row accesses
US10943636B1 (en) 2019-08-20 2021-03-09 Micron Technology, Inc. Apparatuses and methods for analog row access tracking
US10964378B2 (en) 2019-08-22 2021-03-30 Micron Technology, Inc. Apparatus and method including analog accumulator for determining row access rate and target row address used for refresh operation
US11302374B2 (en) 2019-08-23 2022-04-12 Micron Technology, Inc. Apparatuses and methods for dynamic refresh allocation
US11200942B2 (en) 2019-08-23 2021-12-14 Micron Technology, Inc. Apparatuses and methods for lossy row access counting
US11302377B2 (en) 2019-10-16 2022-04-12 Micron Technology, Inc. Apparatuses and methods for dynamic targeted refresh steals
US11309010B2 (en) 2020-08-14 2022-04-19 Micron Technology, Inc. Apparatuses, systems, and methods for memory directed access pause
US11380382B2 (en) 2020-08-19 2022-07-05 Micron Technology, Inc. Refresh logic circuit layout having aggressor detector circuit sampling circuit and row hammer refresh control circuit
US11348631B2 (en) 2020-08-19 2022-05-31 Micron Technology, Inc. Apparatuses, systems, and methods for identifying victim rows in a memory device which cannot be simultaneously refreshed
US11222682B1 (en) 2020-08-31 2022-01-11 Micron Technology, Inc. Apparatuses and methods for providing refresh addresses
US11557331B2 (en) 2020-09-23 2023-01-17 Micron Technology, Inc. Apparatuses and methods for controlling refresh operations
US11222686B1 (en) 2020-11-12 2022-01-11 Micron Technology, Inc. Apparatuses and methods for controlling refresh timing
US11462291B2 (en) 2020-11-23 2022-10-04 Micron Technology, Inc. Apparatuses and methods for tracking word line accesses
US11264079B1 (en) 2020-12-18 2022-03-01 Micron Technology, Inc. Apparatuses and methods for row hammer based cache lockdown
CN112711548B (zh) * 2021-01-11 2023-05-16 星宸科技股份有限公司 内存装置、图像处理芯片以及内存控制方法
US11482275B2 (en) 2021-01-20 2022-10-25 Micron Technology, Inc. Apparatuses and methods for dynamically allocated aggressor detection
US11600314B2 (en) 2021-03-15 2023-03-07 Micron Technology, Inc. Apparatuses and methods for sketch circuits for refresh binning
US11664063B2 (en) 2021-08-12 2023-05-30 Micron Technology, Inc. Apparatuses and methods for countering memory attacks
US11688451B2 (en) 2021-11-29 2023-06-27 Micron Technology, Inc. Apparatuses, systems, and methods for main sketch and slim sketch circuit for row address tracking

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278796A (en) 1991-04-12 1994-01-11 Micron Technology, Inc. Temperature-dependent DRAM refresh circuit
DE10042383B4 (de) 2000-08-29 2005-04-28 Infineon Technologies Ag Halbleiteranordnung mit optimiertem Refreshzyklus
US6483764B2 (en) 2001-01-16 2002-11-19 International Business Machines Corporation Dynamic DRAM refresh rate adjustment based on cell leakage monitoring
US6438057B1 (en) 2001-07-06 2002-08-20 Infineon Technologies Ag DRAM refresh timing adjustment device, system and method
US6781908B1 (en) 2003-02-19 2004-08-24 Freescale Semiconductor, Inc. Memory having variable refresh control and method therefor
US7095669B2 (en) * 2003-11-07 2006-08-22 Infineon Technologies Ag Refresh for dynamic cells with weak retention
KR20050118952A (ko) 2004-06-15 2005-12-20 삼성전자주식회사 히스테리리스 특성을 갖는 온도 감지 회로
US8122187B2 (en) * 2004-07-02 2012-02-21 Qualcomm Incorporated Refreshing dynamic volatile memory
US7035157B2 (en) 2004-08-27 2006-04-25 Elite Semiconductor Memory Technology, Inc. Temperature-dependent DRAM self-refresh circuit
KR100865830B1 (ko) * 2007-02-22 2008-10-28 주식회사 하이닉스반도체 메모리 소자의 독출 방법
WO2008131058A2 (en) * 2007-04-17 2008-10-30 Rambus Inc. Hybrid volatile and non-volatile memory device
US8248831B2 (en) * 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US7990795B2 (en) * 2009-02-19 2011-08-02 Freescale Semiconductor, Inc. Dynamic random access memory (DRAM) refresh
US20110289349A1 (en) 2010-05-24 2011-11-24 Cisco Technology, Inc. System and Method for Monitoring and Repairing Memory
US8705302B2 (en) * 2010-09-24 2014-04-22 Samsung Electronics Co., Ltd. Semiconductor memory devices having self-refresh capability
US8440846B2 (en) * 2010-09-30 2013-05-14 Lyondell Chemical Technology, L.P. Direct epoxidation process
US8797813B2 (en) * 2011-05-17 2014-08-05 Maxlinear, Inc. Method and apparatus for memory power and/or area reduction
US9058896B2 (en) * 2012-08-29 2015-06-16 International Business Machines Corporation DRAM refresh

Also Published As

Publication number Publication date
TW201440043A (zh) 2014-10-16
CN104050049A (zh) 2014-09-17
TWI517150B (zh) 2016-01-11
DE102013114365B4 (de) 2023-11-09
US9224449B2 (en) 2015-12-29
US20140254298A1 (en) 2014-09-11

Similar Documents

Publication Publication Date Title
DE102013114365B4 (de) Variable dynamische Speicherauffrischung
DE69835794T2 (de) Halbleiterschaltung und steuerungsverfahren dazu
DE102011055714B4 (de) Verfahren zum Programmieren einer nicht-flüchtigen Speichervorrichtung
DE102019118638A1 (de) Ein-Chip-System, das ein Training des Tastgrades des Schreibtakts unter Verwendung eines Modus-Register-Schreibbefehls durchführt, Betriebsverfahren des Ein-Chip-Systems, elektronische Vorrichtung mit dem Ein-Chip-System
DE102007038615B4 (de) Speicher mit Speicherbänken und Modusregistern, sowie Verfahren zum Betreiben eines solchen Speichers
DE102005001175B4 (de) Speicher mit automatischer Auffrischung bei bestimmten Bänken
DE102006031346B4 (de) Selbstauffrischmodul für einen Speicherbaustein und Verfahren
DE602004002300T2 (de) Selektive bankauffrischung
DE102007063812B3 (de) Verfahren und Vorrichtung zum Kommunizieren von Befehls- und Adresssignalen
DE102008028327A1 (de) Speicherauffrischsystem und -Verfahren
DE102011087354A1 (de) Halbleiterspeicherelement, Verfahren zum Verifizieren einer Multizyklusselbstauffrischungsoperationeines Haibleiterspeicherelements undTestsystem
DE102010053097A1 (de) Memory-Controller-Funktionalitäten zur Unterstützung von Daten-Swizzling
DE10228719A1 (de) Vorrichtung, System und Verfahren zur Einstellung der DRAM-Auffrisch-Zeitsteuerung
DE10345383A1 (de) Bankadreßabbildung gemäß einer Bankhaltezeit bei dynamischen Direktzugriffsspeichern
DE10240342A1 (de) Stromsteuerverfahren für eine Halbleiterspeichervorrichtung und Halbleiterspeichervorrichtung, welche dasselbe anwendet
DE102006046441A1 (de) Verfahren zum Arbitrieren eines Zugriffs auf ein Speicherbauelement und Master zum Arbitrieren eines Zugriffs auf ein geteiltes Speicherbauelement
DE102012219059A1 (de) Effizientes Befehlsabbildungsschema für Kurze-Datenburstlängen- Speichervorrichtungen
DE112012004456T5 (de) Verfahren zum Planen von Arbeitsspeicher-Auffrischungsoperationen unter Einbeziehung von Engergiezuständen
DE102019120360A1 (de) Speichervorrichtung mit selektiver vorladung
DE102004010706A1 (de) Selbsttrimmender Spannungsgenerator
DE102004016148A1 (de) Verfahren und System zur Herstellung von dynamischen Speichern (DRAM) mit reduziertem Strombedarf für die Selbstauffrischung
DE102006030888A1 (de) Verfahren und Vorrichtung zum Erzeugen eines Startwertes für einen Pseudo-Zufallszahlengenerator
DE102019111632A1 (de) Periodische kalibrationen während der selbstauffrischung einer speichereinrichtung
DE10233250A1 (de) Halbleiterspeichervorrichtung
DE112017004919T5 (de) Bestimmung der Abgrenzungsspannung zur Handhabung von Drift in nichtflüchtigen Speichergeräten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: KRAUS & WEISERT PATENTANWAELTE PARTGMBB, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division