[go: up one dir, main page]

DE60311199T2 - Vorrichtung und Verfahren, um einen Speicher in Selbstauffrischungsbetrieb zu schalten - Google Patents

Vorrichtung und Verfahren, um einen Speicher in Selbstauffrischungsbetrieb zu schalten Download PDF

Info

Publication number
DE60311199T2
DE60311199T2 DE60311199T DE60311199T DE60311199T2 DE 60311199 T2 DE60311199 T2 DE 60311199T2 DE 60311199 T DE60311199 T DE 60311199T DE 60311199 T DE60311199 T DE 60311199T DE 60311199 T2 DE60311199 T2 DE 60311199T2
Authority
DE
Germany
Prior art keywords
memory
control signals
state
self
memory control
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.)
Expired - Fee Related
Application number
DE60311199T
Other languages
English (en)
Other versions
DE60311199D1 (de
Inventor
Steven J. Sunnyvale Valin
Brad A. Sunnyvale Reger
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.)
NetApp Inc
Original Assignee
Network Appliance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/219,376 external-priority patent/US7139937B1/en
Application filed by Network Appliance Inc filed Critical Network Appliance Inc
Publication of DE60311199D1 publication Critical patent/DE60311199D1/de
Application granted granted Critical
Publication of DE60311199T2 publication Critical patent/DE60311199T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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
    • G11C11/40611External triggering or timing of internal or partially internal refresh operations, e.g. auto-refresh or CAS-before-RAS triggered refresh
    • 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/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4072Circuits for initialization, powering up or down, clearing memory or presetting

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Dram (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

  • BEREICH DER ERFINDUNG
  • Wenigstens eine Ausgestaltung der vorliegenden Erfindung betrifft die Steuerung eines nichtflüchtigen Speichers in einem Verarbeitungssystem und spezieller das Setzen eines nichtflüchtigen Speichers in einen Selbstauffrischungszustand.
  • HINTERGRUND
  • Moderne rechnergestützte Verarbeitungssysteme beinhalten alle eine Art von Prozessor, Speicher und ein oder mehrere Ein-/Ausgabe-(E/A)-Geräte. Beispiele für solche Verarbeitungssysteme sind Personal Computer (PCs), Server-Class-Computer, Handgeräte, wie Personal Digital Assistants (PDAs), und verschiedene Arten von Geräten, die an Netzwerken angeschlossen werden können. Der Speicher in einem Verarbeitungssystem speichert normalerweise Daten und Befehle, die vom Prozessor ausgeführt werden.
  • In vielen dieser Systeme ist der Hauptspeicher gewöhnlich eine Form von Arbeitsspeicher (RAM). Die meisten, wenn nicht sogar alle Formen von RAM, werden als flüchtig angesehen, da sie Leistung benötigen, um die gespeicherten Daten zu behalten. Die beiden üblichsten RAM-Typen sind statischer RAM (SRAM) und dynamischer RAM (DRAM). SRAM ist dahingehend statisch, dass ein Bit in SRAM in einen logischen Zustand gesetzt werden kann und in diesem Zustand bleibt, bis es in einen anderen logischen Zustand gesetzt wird oder die Stromversorgung verloren geht. SRAM ist zwar im Hinblick auf die Zugriffszeit gewöhnlich sehr schnell, aber oft teuer.
  • DRAM ist im Allgemeinen weitaus kostenärmer als SRAM und wird daher häufig gegenüber SRAM für den Einsatz als Hauptspeicher in massenproduzierten Verarbeitungssystemen bevorzugt. DRAM ist jedoch dahingehend dynamisch, dass er periodisch gelesen und neu geschrieben werden muss, um seinen Zustand zu halten. Dieser Lese-/Neuschreibvorgang wird als „Auffrischen" bezeichnet. Wenn DRAM nicht aufgefrischt wird, verliert er seinen Inhalt. Das Auffrischen eines typischen DRAM erfordert das periodische Anlegen von Auffrischungssignalen an den DRAM, während Leistung zugeführt wird, um die darin gespeicherten Daten zu behalten. Normalerweise sendet eine externe Schaltung, wie z.B. eine Speichersteuerung, die Auffrischungssignale zum DRAM. Es gibt viele verschiedene DRAM-Formen, z.B. synchroner DRAM (SDRAM), Doppeldatenraten-SDRAM (DDR-SDRAM), Rambus DRAM (RDRAM) usw.
  • Unter bestimmten Bedingungen werden die normalerweise an den DRAM angelegten Auffrischungssignale möglicherweise nicht erzeugt. So werden beispielsweise Auffrischungssignale typischerweise nicht bei einem System-Reset erzeugt, der dann erfolgen kann, wenn ein Fehler oder eine Fehlfunktion im Verarbeitungssystem aufgetreten ist (z.B. ein „Aufhängen" oder „Abstürzen" des Systems). Ein moderner DRAM hat jedoch gewöhnlich Selbstauffrischungsfähigkeit, die es dem DRAM gestattet, unter diesen Bedingungen in einen Selbstauffrischungszustand zu gehen, in dem der DRAM seine Auffrischungssignale automatisch selbst erzeugt. Der Selbstauffrischungszustand ist ein sicherer Zustand, der die gespeicherten Daten behält.
  • Auch viele übliche Bedingungen, unter denen die externen Auffrischungssignale verloren gehen können, beinhalten einen Leistungsverlust. Beispiele für solche Bedingungen sind ein manuell ausgeführtes Abschalten eines Computersystems, das ansonsten ordnungsgemäß arbeitet, oder ein(e) unerwartete(r) Unterbrechung oder Verlust von Leistung zum Computersystem. Aber selbst dann, wenn der DRAM in den Selbstauffrischungszustand gesetzt wird, gehen die darin gespeicherten Daten verloren, wenn die Leistungsversorgung des DRAM nicht aufrechterhalten wird. Durch Speisen des DRAM von einer zusätzlichen unterbrechungsfreien Leistungsquelle unter diesen Bedingungen, z.B. eine Batterie, können die gespeicherten Daten im Selbstauffrischungszustand bewahrt werden. DRAM nimmt im Selbstauffrischungszustand weitaus weniger Leistung auf als im normalen Zustand, was zum Sparen von Batterieleistung beiträgt.
  • Viele Verarbeitungssysteme können eine(n) durch Software eingeleitete(n) Abschaltung oder Reset durchführen, die/der das Setzen des DRAM in den Selbstauffrischungszustand beinhalten kann. Da jedoch viele Fehlerbedingungen, unter denen dies auftreten könnte, softwarebezogen sind, ist es nicht erwünscht, sich auf Software verlassen zu müssen, um den DRAM in den Selbstauffrischungszustand zu setzen, besonders bei Systemen, bei denen ein Datenverlust unbedingt verhütet werden muss.
  • Das US-Patent 6317657 (der International Business Machines Corporation übertragen) betrifft ein System zum Bereitstellen von Batteriereserve für SDRAM-Daten bei einem Stromausfall. Ein Abschaltevent wird früh erfasst und Systemhardware konfiguriert SDRAM-Selbstauffrischungsschaltungen zum Setzen des SDRAM in einen Selbstauffrischungsmodus, in dem er unmittelbar vor dem Abfallen der Stromversorgung des Systems unter einen sicheren Schwellenpegel einen einzelnen Auffrischungsbefehl ausgibt. Der SDRAM wird nach dem Abfallen der Systemstromversorgung im Selbstauffrischungsmodus gehalten, indem ein SDRAM-Takt-Enable-Signal mit Batterieleistung im L-Zustand gehalten wird.
  • Die US6119200 (der Mylex Corporation übertragen) betrifft ein System, bei dem eine Warm-Reset-Anforderung durch Reset-Hardware erfasst wird, die dann die Warm-Reset-Anforderung sperrt und den SDRAM in einen Selbstauffrischungsmodus setzt, in dem er seine gespeicherten Daten kontinuierlich auffrischt. Wenn sich der SDRAM im Selbstauffrischungsmodus befindet, dann setzt die Reset-Hardware die Steuerung des SDRAM zurück.
  • Die US6137743 (der Hyundai Electronics Industries Co Limited übertragen) beschreibt ein Halbleiterspeichergerät mit verringerter Standby-Stromaufnahme in einem Selbstauffrischungsmodus. Das Gerät beinhaltet eine Gleichspannungsquellen-Steuerschaltung zum Steuern einer Gleichspannungserzeugungseinheit. Die Gleichspannungsquellen-Steuereinheit schaltet die Spannungserzeugungseinheit periodisch ein und aus, so dass die für einen Selbstauffrischungsbetrieb verwendeten Spannungsquellen im Standby-Betrieb in einem Selbstauffrischungsmodus in ihren Ausschaltzuständen gehalten werden.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Erfindung betrifft eine Vorrichtung, die Folgendes umfasst: eine Speichersteuerung zum Erzeugen einer ersten Mehrzahl von Speichersteuersignalen zum Steuern eines dynamischen Arbeitsspeichers mit Selbstauffrischungsfähigkeit; und eine Selbstauffrischungsschaltung außerhalb der Speichersteuerung, um den Speicher als Reaktion auf eine vorbestimmte Bedingung in einen Selbstauffrischungszustand zu setzen, wobei die Selbstauffrischungsschaltung eine Zustandsmaschine zum Erzeugen einer zweiten Mehrzahl von Speichersteuersignalen zum Steuern des Speichers auf der Basis einer Mehrzahl von Eingangssignalen beinhaltet, wobei jedes aus der zweiten Mehrzahl von Speichersteuersignalen einem separaten einen aus der ersten Mehrzahl von Speichersteuersignalen entspricht, wobei die Selbstauffrischungsschaltung die Aufgabe hat, zwischen der ersten Mehrzahl von Speichersteuersignalen und der zweiten Mehrzahl von Speichersteuersignalen auszuwählen, um den Speicher auf der Basis der Mehrzahl von Eingangssignalen bereitzustellen; dadurch gekennzeichnet, dass die Selbstauffrischungsschaltung einen Taktgenerator zum Empfangen eines ersten Taktsignals als Eingabe von der Speichersteuerung und zum Ausgeben eines zweiten Taktsignals zum Speicher beinhaltet, wobei der Taktgenerator das zweite Taktsignal nach dem Stoppen des ersten Taktsignals halten kann, so dass der Speicher den Selbstauffrischungszustand erreichen kann.
  • Die vorliegende Erfindung umfasst ferner ein Verfahren, das die folgenden Schritte beinhaltet:
    Empfangen einer Mehrzahl von Eingangssignalen in Bezug auf den Betrieb eines Verarbeitungssystems, das eine Speichersteuerung und einen dynamichen Arbeitsspeicher mit Selbstauffrischungsfähigkeit beinhaltet;
    Empfangen einer ersten Mehrzahl von von der Speichersteuerung erzeugten Speichersteuersignalen;
    Erzeugen einer zweiten Mehrzahl von Speichersteuersignalen außerhalb der Speichersteuerung, wobei jedes aus der zweiten Mehrzahl von Speichersteuersignalen einem separaten einen aus der ersten Mehrzahl von Speichersteuersignalen entspricht; und
    Zuführen der zweiten Mehrzahl von Speichersteuersignalen zu dem Speicher anstelle der ersten Mehrzahl von Speichersteuersignalen auf der Basis der Mehrzahl von Steuersignalen, um den Speicher als Reaktion auf das Anliegen eines Trigger-Signals in einen Selbstauffrischungszustand zu setzen;
    dadurch gekennzeichnet, dass das Verfahren ferner die folgenden Schritte umfasst:
    Empfangen eines ersten Taktsignals von der Speichersteuerung;
    Erzeugen eines zweiten Taktsignals auf der Basis des ersten Taktsignals;
    Anlegen des zweiten Taktsignals an den Speicher; und
    Halten des zweiten Taktsignals nach einem Stoppen des ersten Taktsignals, damit der Speicher den Selbstauffrischungszustand erreichen kann.
  • Weitere Merkmale der vorliegenden Erfindung gehen aus den Begleitzeichnungen und aus der nachfolgenden ausführlichen Beschreibung hervor.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung ist beispielhaft illustriert und die Figuren der Begleitzeichnungen stellen keine Begrenzung dar. Gleiche Bezugsziffern beziehen sich auf gleiche Elemente. Dabei zeigt:
  • 1 ein Verarbeitungssystem, in dem ein Selbstauffrischungs-Managementschaltkomplex (SRMC) gemäß der vorliegenden Erfindung enthalten ist;
  • 2 eine NAS-(Network Attached Storage)-Umgebung mit einem Netzwerkspeicherserver, in dem der SRMC enthalten sein kann;
  • 3 einen Speicherserverkopf, in dem der SRMC implementiert ist;
  • 4 den SRMC gemäß der zweiten Ausgestaltung der Erfindung;
  • 5 die Leistungsüberwachungs- und -auswahlschaltung (PMS) ausführlicher;
  • 6 die Stromausfallszustandsmaschine (PFSM) ausführlicher; und
  • 7 ein Zustandsdiagramm, das den Betrieb der PFSM illustriert.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Nachfolgend wird ein Schaltkomplex beschrieben, der sich außerhalb einer Speichersteuerung befindet, um nichtflüchtigen DRAM in einen Selbstauffrischungszustand zu setzen. Man beachte, dass in dieser Beschreibung Verweise auf „eine Ausgestaltung" bedeutet, dass das erwähnte Merkmal in wenigstens einer Ausgestaltung der vorliegenden Erfindung enthalten ist. Ferner beziehen sich separate Verweise auf „eine Ausgestaltung" in dieser Beschreibung nicht unbedingt auf dieselbe Ausgestaltung; solche Ausgestaltungen schließen sich jedoch auch nicht gegenseitig aus, wenn nicht anders angegeben und mit den Ausnahmen, die für die Fachperson aus der Beschreibung hervorgehen werden. Zum Beispiel kann ein Merkmal, eine Struktur, eine Tätigkeit usw., die in einer Ausgestaltung beschrieben ist, auch in anderen Ausgestaltungen enthalten sein. Somit kann die vorliegende Erfindung eine Reihe verschiedener Kombinationen und/oder Integrationen der hierin beschriebenen Ausgestaltungen beinhalten.
  • 1 ist eine allgemeine IIlustration eines Verarbeitungssystems, in dem ein Selbstauffrischungs-Managementschaltkomplex gemäß der vorliegenden Erfindung ausgeführt sein kann, um DRAM in einen Selbstauffrischungszustand zu setzen. Wie gezeigt, beinhaltet das Verarbeitungssystem einen oder mehrere Prozessoren 11, Speicher 12 und eine Speichersteuerung 13, die auf einem Bussystem 14 miteinander gekoppelt sind. Das Bussystem 14 kann einen oder mehrere Busse (z.B. einen Systembus und einen oder mehrere E/A- oder Erweiterungsbusse) zusammen mit einer oder mehreren Bussteuerungen, Bridges und/oder Adaptern darstellen. Das Verarbeitungssystem beinhaltet auch ein oder mehrere E/A-Geräte 15, die über das Bussystem 14 mit dem Prozessor 11 und dem Speicher 12 gekoppelt sind.
  • Für die Zwecke der vorliegenden Beschreibung sei angenommen, dass der Speicher 12 die Form eines DRAM hat, der Selbstauffrischungsfähigkeit besitzt. Man wird jedoch erkennen, dass das Verarbeitungssystem auch andere Speichertypen beinhalten kann, wie z.B.
  • Festwertspeicher (ROM), Flash-Speicher, Massenspeichergeräte (z.B. Platten) oder dergleichen. Das Verarbeitungssystem beinhaltet auch einen Selbstauffrischungs-Managementschaltkomplex (SRMC) 16, der mit dem Speicher 12 und der Speichersteuerung 13 gekoppelt ist, sowie eine Leistungsüberwachungs- und -auswahlschaltung (PMS) 17, die mit dem Speicher 12 gekoppelt ist, sowie eine Hauptstromversorgung 18 und eine Reservestromversorgung (z.B. eine Batterie) 19.
  • Viele Fehlerbedingungen, die das Setzen von DRAM in den Selbstauffrischungszustand erfordern, sind softwarebezogen. Folglich ist es wünschenswert, DRAM mit einer rein Hardware-gestützten Lösung in den Selbstauffrischungszustand setzen zu können, die rein deterministisch ist und die nicht wie Software abstürzen oder sich aufhängen kann. Ferner ist es wünschenswert, dass die Lösung mit Speicherbusgeschwindigkeiten arbeiten kann und zwischen der Speichersteuerung und dem DRAM außerhalb von beiden eingebaut wird.
  • Wie nachfolgend näher beschrieben wird, ist der SRMC 16 eine solche Lösung. Der SRMC 16 kann den Speicher 12 unter vielen verschiedenen Bedingungen, einschließlich einer Abschalt-Reset-Bedingung, in den Selbstauffrischungszustand setzen. Der SRMC 16 wird in Verbindung mit der PMS 17 verwendet. Die PMS 17 leitet normalerweise Strom von der Hauptstromversorgung 18 zum Speicher 12, bewirkt aber, dass Strom von der Reservestromversorgung 19 zum Speicher 12 geführt wird, wenn der Spannungspegel der Hauptstromversorgung 18 unter einen vorbestimmten Wert abfällt.
  • Der SRMC 16 und die PMS 17 sind besonders in einem Verarbeitungssystem nützlich, in dem es wesentlich ist, den Verlust von gespeicherten Daten zu verhindern, und wo es nicht erwünscht ist, sich ausschließlich auf Software zu verlassen, um den DRAM in den Selbstauffrischungszustand zu setzen. Ein Beispiel für ein solches Verarbeitungssystem ist ein Dateiserver. Ein Dateiserver ist ein vernetztes Verarbeitungssystem, das gemeinsame Dateien in einem Satz von Speichergeräten (z.B. Plattenlaufwerken) für einen oder mehrere Clients speichert und verwaltet. Dateiserver werden häufig zum Speichern von Sicherungsdaten und anderen kritischen Daten auf Unternehmensebene verwendet. Die Platten in einem Dateiserver werden gewöhnlich als eine oder mehrere Gruppen von redundanten RAIDs (Array of Independent/Inexpensive Disks) organisiert. Eine Konfiguration, in der Dateiserver benutzt werden können, ist eine NAS-(Network Attached Storage)-Konfiguration. In einer NAS-Konfiguration kann ein Dateiserver in der Form eines an ein Netzwerk anschließbaren Gerätes wie z.B. einem LAN (Local Area Network) oder einem Firmenintranet ausgeführt werden. Ein solches Gerät wird mitunter als „Filer" bezeichnet. Ein Beispiel für ein solches Gerät ist irgendeines der Filer-Produkte, die von Network Appliance, Inc. in Sunnyvale in Kalifornien hergestellt werden.
  • Ein weiterer Verarbeitungssystemtyp, in dem der SRMC 16 und die PMS 17 vorteilhafterweise ausgeführt werden können, ist ein SAN-(Storage Area Network)-Speichergerät. Ein SAN ist ein hoch effizientes (schnelles) Netzwerk von untereinander verbundenen gemeinsamen Speichergeräten. SAN-Speichergeräte werden ebenfalls von Network Appliance, Inc. hergestellt. Ein Unterschied zwischen NAS und SAN ist, dass in einem SAN das Speichergerät einen abgesetzten Host mit Zugang zu gespeicherten Daten auf Blockebene bereitstellt, während in einer NAS-Konfiguration der Dateiserver Clients normalerweise nur Zugang zu gespeicherten Daten auf Dateiebene bietet.
  • 2 illustriert eine NAS-Umgebung mit einem Netzwerk-Dateiserver, in dem der SRMC 16 und die PMS 17 vorteilhafterweise enthalten sein können. Man beachte, dass diese Schaltungen nun zwar im Kontext eines Dateiservers beschrieben werden, dass derselbe Ansatz aber vorteilhafterweise auch in einem SAN-Speichergerät oder in im Wesentlichen jedem anderen Verarbeitungssystem ausgeführt werden kann, das eine Form von nichtflüchtigem RAM verwendet, der Selbstauffrischungsfähigkeit besitzt. In 2 ist ein Dateiserverkopf 1 mit einer Reihe von Sätzen von Plattenlaufwerken 2 in einer Schleifenkonfiguration geschaltet. Jeder Satz von Plattenlaufwerken 2 enthält mehrere Plattenlaufwerke 23, die vom Kopf 1 als eine RAID-Gruppe gesteuert werden. Der Dateiserverkopf 1 bietet einer Reihe von Clients 24 Zugang zu in den Plattenlaufwerken 23 gespeicherten Gemeinschaftsdateien.
  • In diesem Zusammenhang ist ein „Kopf" die gesamte Hardware (d.h. Elektronik und unterstützende Infrastruktur), Firmware und/oder Software, die die „Intelligenz" zum Steuern des Zugriffs auf die Massenspeichergeräte (z.B. Plattenlaufwerke) besitzt; er beinhaltet nicht die Massenspeichergeräte selbst. Ein „Kopf" ist in diesem Zusammenhang nicht derselbe wie, und darf nicht damit verwechselt werden, der Magnet- oder Optikkopf, der zum physischen Lesen oder Schreiben von Daten von einer oder auf eine Platte verwendet wird.
  • In einer Dateiserverumgebung ist es häufig wesentlich, jeden Datenverlust aufgrund eines unvorhergesehenen Verlusts oder Abfalls der Stromversorgung zu verhüten, da solche Systeme häufig zum Speichern von Sicherungsdaten und anderen kritischen Daten verwendet werden. Aus den oben beschriebenen Gründen ist es daher wünschenswert, DRAM in einem solchen System im Falle einer Reset-Bedingung, die zu einem Abschalten des Systems führt, in einen Selbstauffrischungszustand setzen zu können. Ferner ist es wünschenswert, da die Fehlfunktionen, die solche Resets häufig verursachen, häufig softwarebezogen sind, eine solche Fähigkeit auf eine von Software unabhängige Weise bereitzustellen. Demgemäß können der SRMC 16 und die PMS 17 (1) vorteilhafterweise im Dateiserverkopf 1 enthalten sein.
  • 3 illustriert den Dateiserverkopf 1 ausführlicher gemäß bestimmten Ausgestaltungen. Wie gezeigt, beinhaltet der Kopf 1 einen Prozessor 41, einen Speicher 42 und einen Chipset 43, der den Prozessor 41 mit dem Speicher 42 verbindet. Wie in der obigen Beschreibung sei angenommen, dass der Speicher 42 die Form von DRAM hat, der Selbstauffrischungsfähigkeit besitzt. Der Chipset 43 verbindet auch einen peripheren Bus 44 mit dem Prozessor 41 und dem Speicher 42. Mit dem peripheren Bus 44 sind auch ein oder mehrere Netzwerkadapter 45, ein oder mehrere Speicheradapter 46, eine oder mehrere verschiedene E/A-Komponenten 47 und, in einigen Ausgestaltungen, eine oder mehrere andere periphere Komponenten 48 verbunden. Der Kopf 1 beinhaltet auch eine Hauptstromversorgung 18 und eine Reservestromversorgung (z.B. Batterie) 19. Die Hauptstromversorgung 18 erhält ihre Leistung von dem externen, dem Verarbeitungssystem zugeführten Wechselstrom.
  • Der Prozessor 41 ist die Zentraleinheit (CPU) des Kopfes 1 und kann ein oder mehrere programmierbare Universal- oder Spezialmikroprozessoren, digitale Signalprozessoren (DSPs), programmierbare Steuerungen, anwendungsspezifische integrierte Schaltungen (ASICs), programmierbare Logikbauelemente (PLDs) oder dergleichen oder eine Kombination solcher Geräte sein oder enthalten.
  • In der illustrierten Ausgestaltung beinhaltet der Chipset 43 eine Speichersteuerung 49, die Lese- und Schreibtransaktionen auf dem Speicher (DRAM) 42 durchführt und überwacht. In anderen Ausgestaltungen kann sich die Speichersteuerung 49 außerhalb des Chipsets 43 befinden, z.B. im Prozessor 41, oder kann eine völlig separate Komponente sein.
  • Der Kopf 1 beinhaltet auch den SRMC 16, der mit dem Speicher 42 und der Speichersteuerung 49 gekoppelt ist. Der Kopf 1 beinhaltet ferner die PMS 17, die mit dem Speicher 42 gekoppelt ist, sowie die Hauptstromversorgung 18 und die Reservestromversorgung 19.
  • Der Chipset 43 kann zusätzlich zur Speichersteuerung 49 eine oder mehrere Bussteuerungen, Bridges und/oder Adapter beinhalten. Der periphere Bus 44 kann beispielsweise ein PCI-(Peripheral Component Interconnect)-Bus, ein HyperTransport- oder ISA-(Industry Standard Architecture)-Bus, ein SCSI-(Small Computer System Interface)-Bus, ein USB-(Universal Serial Bus)-Bus oder ein Bus nach IEEE-(Institute of Electrical and Electronics Engineers)-Standard 1394 (zuweilen als „Firewire" bezeichnet) sein. Jeder Netzwerkadapter 45 gibt dem Kopf 1 die Fähigkeit, mit entfernten Geräten, wie z.B. Clients 24 in 2, zu kommunizieren, und kann beispielsweise ein Ethernet-Adapter sein. Jeder Speicheradapter 46 erlaubt es dem Kopf 1, auf die externen Plattenlaufwerke 23 in den verschiedenen Regalen 2 zuzugreifen und kann beispielsweise ein Fibre Channel Adapter sein.
  • Die 4 bis 7 illustrieren den SRMC 16 und die PMS 17 gemäß bestimmten Ausgestaltungen der Erfindung näher. In den 4 bis 7 wird der DRAM 42 in der Form von einem oder mehreren DIMMs (Dual In-Line Memory Modules) ausgeführt. Der SRMC 16 empfängt ein System-Reset-Signal TRIGGER sowie eine Reihe von Speichersteuersignalen von der Speichersteuerung 49 zum Steuern des DRAM 42, einschließlich eines Reihenadressstrobe-(RAS_N)-Signals, eines Spaltenadressstrobe-(CAS_N)-Signals, eines Write-Enable-(WE_N)-Signals und eines Chipauswahl-(CS_N)-Signals, die alle Active-Low-Signale sind. Der SRMC 16 gibt auch entsprechende Signale mit denselben Bezeichnungen und Funktionen an den DRAM 42 aus. Je nach Speicherkonfiguration können sich die Signale RAS_N, CAS_N, WE_N und CS_N in der Praxis jeweils aus mehr als einem Signal zusammensetzen; zum Vereinfachen der Beschreibung ist jedoch immer nur eines davon dargestellt.
  • Unter normalen Betriebsumständen leitet der SRMC 16 diese Speichersteuersignale einfach von der Speichersteuerung 49 zum DRAM 42 durch. Wenn jedoch der DRAM 42 in den Selbstauffrischungszustand gesetzt werden muss, dann erzeugt der SRMC 16 diese Speichersteuersignale intern, legt sie an den DRAM 42 an und verhindert, dass ihre Pendant-Signale von der Speichersteuerung 49 zum DRAM 42 durchgeleitet werden.
  • Die PMS 17 empfängt ein universelles E/A-Signal GPIO0 von einem Bit von der Speichersteuerung 42, um die PMS 17 selektiv für Batteriereservefähigkeit zu aktivieren. Die PMS 17 empfängt auch Leistung VDD von der internen Hauptstromversorgung 18 sowie von der Reservestromversorgung 19 und führt dem DRAM 42 Leistung von einer dieser Quellen (normalerweise der Hauptstromversorgung 18) zu.
  • 5 zeigt die PMS 17 ausführlicher gemäß einer Ausgestaltung der Erfindung. Wie gezeigt, beinhaltet die PMS 17 einen Zweieingangs-Multiplexer 61 (der ein FET-(Feldeffekttransistor)-Schalter sein kann), einen Komparator 64, einen Signalspeicher 65, einen hocheffizienten DC-DC-Wandler 62 und einen DC-DC-Hochleistungswandler 63. Der hocheffiziente DC-DC-Wandler 62 empfängt Leistung von der Reservestromquelle (z.B. der Batterie) 19 und gibt diese Leistung in regulierter Form VDD_DIMM_BATT zu einem Eingang des Multiplexers 61 aus. Der andere Eingang des Multiplexers 61 ist der Ausgang VDD' des DC-DC-Hochleistungswandlers 63, der als Eingang regulierte Leistung VDD von der Hauptstromversorgung 18 empfängt. Der Ausgang des DC-DC-Hochleistungswandlers 63 wird auch an einen Eingang des Komparators 64 angelegt.
  • Eine Referenzspannung Vref wird an den anderen Eingang des Komparators 64 angelegt und entspricht der Niedrigleistungsschwelle des DRAM 42. Während der Eingang VDD' des Multiplexers 61 über der Referenzspannung Vref bleibt, bleibt dieser Eingang des Multiplexers 61 als Leistungsquelle zum DRAM 42 gewählt. Wenn VDD' unter die Referenzspannung Vref abfällt, gibt der Komparator 64 ein Auswahlsignal an den Multiplexer 61 aus, um zu bewirken, dass der Multiplexer 61 den Batterieleistungseingang als Stromquelle zum DRAM 42 wählt. Wenn also VDD' (der die Spannung der Hauptstromversorgung 18 repräsentiert) unter einen vorbestimmten Pegel (Vref) abfällt, dann bewirkt die PMS 17, dass dem DRAM 42 Leistung von der Reservestromversorgung 19 anstatt von der Hauptstromversorgung 18 zugeführt wird.
  • Die PMS 17 beinhaltet auch einen Signalspeicher 65, der das GPIO0 Signal von der Speichersteuerung 49 empfängt, und gibt ein Bit MEM_VALID an den hocheffizienten DC-DC-Wandler 62 aus, um die Batteriereservefähigkeit zu aktivieren oder zu deaktivieren. Die Batteriereservefähigkeit wird im Allgemeinen aktiviert, wenn die im DRAM 42 gespeicherten Daten gültig sind. In diesem Fall wird GPIO0 angelegt, vom Signalspeicher 65 gerastet und als MEM_VALID zum hocheffizienten DC-DC-Wandler 62 ausgegeben, um die Batteriereservefähigkeit zu aktivieren.
  • 6 illustriert den SRMC 16 gemäß einer Ausgestaltung der Erfindung ausführlicher. Wie gezeigt, beinhaltet der SRMC 16 eine Stromausfallzustandsmaschine (PFSM) 71, vier Zweieingangs-Multiplexer 72, einen Signalspeicher 73 und einen Phasenregelkreis-(PLL)-Taktpuffer 74. Die Multiplexer 72 können sich aus FETs zusammensetzen und vorzugsweise eine sehr geringe Ausbreitungsverzögerung ergeben. Jeder der Multiplexer 72 kann beispielsweise ein QS3217 Multiplexer von Quality Semiconductor sein. Die PFSM 71 hat die Aufgabe, Pendant-Signale zu den Signalen RAS_N, CAS_N, WE_N und CS_N von der Speichersteuerung 49 zum Steuern des DRAM 42 zu erzeugen.
  • Jeder der Multiplexer 72 empfängt eines der Speichersteuersignale von der Speichersteuerung 49 an einem seiner Eingänge und das Pendant dieses Speichersteuersignals von der PFSM 71. Die PFSM 71 gibt ein Auswahlsignal SEL an jeden der Multiplexer 72 aus, um zwischen den Speichersteuersignalen von der Speichersteuerung 49 oder den von ihm intern erzeugten Speichersteuersignalen auszuwählen, die an den DRAM 42 angelegt werden sollen. Wenn SEL = 1 ist, dann verbinden die Multiplexer 72 die Speichersteuersignale von der Speichersteuerung 49 mit dem DRAM 42. Wenn SEL = 0 ist, dann verbinden die Multiplexer 72 die Speichersteuersignale von der PFSM 71 mit dem DRAM 42. Zur leichteren Identifikation erhalten die von der Speichersteuerung 49 kommenden Speichersteuersignale das Präfix „MC", d.h. MC.RAS_N, MC.CAS_N, MC.WE_N und MC.CS_N, während die von der PFSM 71 erzeugten äquivalenten Speichersteuersignale das Präfix „PF" haben, d.h.
  • PF.RAS_N, PF.CAS_N, PF.WE_N und PF.CS_N; und die von den Multiplexern 72 ausgegebenen äquivalenten Speichersteuersignale haben das Präfix „MEM", d.h. MEM.RAS_N, MEM.CAS_N, MEM.WE_N und MEM.CS_N.
  • Wie nachfolgend näher beschrieben wird, arbeitet die PFSM 71 als Reaktion auf mehrere Eingangslogiksignale, inklusive eines WAKEUP-Signals, eines TRIGGER-Signals und eines PORC-(Power On Reset Circuit)-Signals sowie des MC.CS_N Signals von der Speichersteuerung 49. Das MC.CS_N Signal wird von der PFSM 71 zum Ermitteln verwendet, ob der DRAM 42 im Ruhezustand ist. Die Verwendung der Signale WAKEUP, TRIGGER und PORC wird nachfolgend mit Bezug auf 7 erörtert.
  • Der DRAM 42 braucht für eine ordnungsgemäße Funktion ein Taktsignal MEM.CLK. Der PLL-Taktpuffer 74 justiert den Takt CLKOUT von der Speichersteuerung 49 mit dem MEM.CLK Signal zum DRAM 42. Viele Speichersteuerungen stoppen den Takt kurz nach einem Reset. Im Falle einer/s Systemabschaltung oder -Reset muss dieser Takt für eine bestimmte Anzahl von Zyklen (z.B. etwa 20, aber dies hängt vom benutzten DRAM-Typ ab) gehalten werden, damit die PFSM 71 den DRAM 42 in den Selbstauffrischungszustand bringen kann. Der PLL-Taktpuffer 74 lässt es zu, dass MEM.CLK viele Zyklen (z.B. hunderte) nach dem Stoppen des Takts CLKOUT von der Speichersteuerung 49 läuft. Der DRAM 42 wird von einem Takt-Enable-Signal MEM.CKE vom Signalspeicher 73 aktiviert, dessen Eingang das von der PFSM 71 ausgegebene Clock-Enable-Signal PF.CKE ist.
  • 7 ist ein Zustandsdiagramm, das den Betrieb der PFSM 71 gemäß einer Ausgestaltung der Erfindung zeigt. Die PFSM 71 ist eine Zustandsmaschine, die mit herkömmlichen sequentiellen Logikelementen aufgebaut sein kann. Wie gezeigt, hat die PFSM 71 sieben Zustände: IDLE, ARM, WAT4CS, TRCDLY, PRECHRG, TRPDLY und SREF. Die PFSM 71 ist normalerweise im IDLE-(Ruhe)-Zustand, entweder wenn sich der DRAM 42 im Selbstauffrischungszustand befindet oder bevor das System initialisiert wurde, wenn PORC anliegt. Das PORC-Signal wird nur beim Einschalten des Systems angelegt und wird zum asynchronen Zurücksetzen der PFSM 71 verwendet. Wenn PORC anliegt, wird die PFSM 71 in den IDLE-Zustand gezwungen. Der IDLE-Zustand ist charakterisiert durch SEL = 0, PF.CKE = 0 und PF.{RAS_N, CAS_N, WE_N, CS_N} = 1111. Im IDLE-Zustand bleibt die PFSM 71 in diesem Zustand, bis WAKEUP angelegt wird. WAKEUP ist ein Signal, das vom System zum Aufwecken des DRAM 42 aus dem Selbstauffrischungszustand ausgegeben wird. In einer gegebenen Ausführung kann WAKEUP das von der Speichersteuerung ausgegebene Clock-Enable-Signal sein, wenn dieses Signal bei Einschaltbedingungen vorhersehbar ist. Ansonsten kann WAKEUP von einer externen Registerschaltung kommen, auf die Software schreiben kann, wenn DRAM aus dem Selbstauffrischungszustand gebracht werden muss.
  • Wenn WAKEUP angelegt wird, dann geht die PFSM 71 vom IDLE-Zustand in den ARM-Zustand über, in dem die PFSM 71 auf ein Trigger-Event wartet. Der ARM-Zustand ist charakterisiert durch SEL = 1, PF.CKE = 1 und PF.{RAS_N, CAS_N, WE_N, CS_N} = 1111. Im ARM-Zustand wartet die PFSM 71, bis TRIGGER angelegt wird. TRIGGER ist gewöhnlich der Ausgang eines Reset-„Trichters", d.h. einem logischen OR mehrerer Bedingungen, die einen Reset verursachen müssten.
  • Wenn TRIGGER angelegt wird, geht die PFSM 71 in den WAIT4CS-Zustand über. Der WAIT4CS ist ein Zustand, in dem die PFSM 71 wartet, bis der DRAM 42 inaktiv wird (beim Anlegen von TRIGGER lief möglicherweise gerade eine Speicheroperation). Der WAIT4CS-Zustand ist charakterisiert durch SEL = 1, PF.CKE = 1 und PF. {RAS_N, CAS_N, WE_N, CS_N} = 1111. Im WAIT4CS-Zustand bleibt die PFSM 71, bis MC.CS_N weggenommen wird (gleich 1), und in diesem Fall geht die PFSM 71 in den TRCDLY-Zustand über.
  • Nach dem Eintritt in den TRCDLY-Zustand wartet die PFSM 71 eine vorbestimmte Anzahl tRC von Zyklen von PF.CLK, wonach die PFSM 71 in den PRECHRG-(Vorlade)-Zustand übergeht. Der Wert von tRC ist von der Geschwindigkeit des DRAM 42 abhängig.
  • So ist man beispielsweise der Ansicht, dass für einen DDR266 SDRAM ein Wert von tRC = 65 ns (9 Zyklen) geeignet ist. Der TRCDLY-Zustand ist gekennzeichnet durch SEL = 0, PF.CKE = 1 und PF.{RAS_N, CAS_N, WE_N, CS_N} = 1111.
  • Im PRECHRG-Zustand gibt die PFSM 71 den Befehl PRE_CHARGE ALL an den DRAM 42 aus. Der PRECHRG-Zustand ist charakterisiert durch SEL = 0, PF.CKE = 1 und PF.{RAS_N, CAS_N, WE_N, CS_N} = 0100. Aus dem PRECHRG-Zustand geht die PFSM 71 normalerweise sofort in den TRPDLY-Zustand über (es sein denn, dass PORC anliegt).
  • Der TRPDLY-Zustand ist charakterisiert durch SEL = 0, PF.CKE = 1 und PF.{RAS_N, CAS_N, WE_N, CS_N} = 1111. Nach dem Eintritt in den TRPDLY-Zustand wartet die PFSM 71 eine vorbestimmte Anzahl tRP von Zyklen von PF.CLK, wonach die PFSM 71 in den SREF-(Selbstauffrischungs)-Zustand übergeht. Der Wert von tRP ist von der Geschwindigkeit des DRAM 42 abhängig. So ist man beispielsweise der Ansicht, dass für einen DDR266 SDRAM ein Wert von tRP = 20 ns (3 Zyklen) geeignet ist.
  • Im SREF-Zustand gibt die PFSM 71 den Befehl SELF REFRESH an den DRAM 42 aus. Dieser Zustand ist gekennzeichnet durch SEL = 0, PF.CKE = 0 und PF. {RAS_N, CAS_N, WE_N, CS_N} = 0010. Aus dem SREF-Zustand geht die PFSM 71 sofort in den IDLE-Zustand über.
  • Es ist ersichtlich, dass der SRMC 16 in den oben beschriebenen Ausgestaltungen eine rein Hardware-gestützte Lösung ist, um DRAM in einen Selbstauffrischungszustand zu setzen, der aus den oben angegebenen Gründen vorteilhaft ist. Man beachte jedoch, dass auch andere Ansätze möglich sind, die möglicherweise weniger vorteilhaft, aber trotzdem noch nützlich sind. So kann der SRMC 16 beispielsweise in alternativen Ausgestaltungen die Form einer programmierbaren Mikrosteuerung oder eines funktionsspezifischen Prozessors haben, obwohl eine solche Lösung wahrscheinlich komplexer und fehleranfälliger wäre als die oben beschriebenen Ausgestaltungen. Als eine weitere alternative Ausgestaltung könnte ein Software-gestützter SRMC immer noch nützlich sein, wenn er in einer Software ausgeführt wird, die vom Betriebssystem separat (und unabhängig) und nicht für ein Aufhängen oder Abstürzen des Betriebssystems anfällig ist.
  • Somit wurde ein Schaltkomplex beschrieben, der sich außerhalb der Speichersteuerung befindet, um nichtflüchtigen DRAM in einen Selbstauffrischungszustand zu setzen. Die vorliegende Erfindung wurde zwar mit Bezug auf spezielle beispielhafte Ausgestaltungen beschrieben, aber man wird erkennen, dass die Erfindung nicht auf die beschriebenen Ausgestaltungen begrenzt ist, sondern mit Modifikationen und Änderungen umgesetzt werden kann, die in den Umfang der beiliegenden Ansprüche fallen. Demgemäß sind die Beschreibung und die Zeichnungen im illustrativen Sinne und nicht in einem begrenzenden Sinne anzusehen.

Claims (17)

  1. Vorrichtung, die Folgendes umfasst: eine Speichersteuerung (13, 49) zum Erzeugen einer ersten Mehrzahl von Speichersteuersignalen (MC.RAS_N, MC.CAS_N, MC.WE_N, MC.CS_N) zum Steuern eines dynamischen Arbeitsspeichers (12, 42) mit Selbstauffrischungsfähigkeit; und eine Selbstauffrischungsschaltung (16) außerhalb der Speichersteuerung, um den Speicher als Reaktion auf eine vorbestimmte Bedingung in einen Selbstauffrischungszustand zu setzen, wobei die Selbstauffrischungsschaltung (16) eine Zustandsmaschine (71) zum Erzeugen einer zweiten Mehrzahl von Speichersteuersignalen (PF_RAS_N, PF.CAS_N, PF.WE_N, PF.CS_N) zum Steuern des Speichers auf der Basis einer Mehrzahl von Eingangssignalen beinhaltet, wobei jedes aus der zweiten Mehrzahl von Speichersteuersignalen einem separaten einen aus der ersten Mehrzahl von Speichersteuersignalen entspricht, wobei die Selbstauffrischungsschaltung (16) die Aufgabe hat, zwischen der ersten Mehrzahl von Speichersteuersignalen und der zweiten Mehrzahl von Speichersteuersignalen auszuwählen, um den Speicher auf der Basis der Mehrzahl von Eingangssignalen bereitzustellen; dadurch gekennzeichnet, dass die Selbstauffrischungsschaltung (16) einen Taktgenerator (74) zum Empfangen eines ersten Taktsignals (CLKOUT) als Eingabe von der Speichersteuerung (13, 49) und zum Ausgeben eines zweiten Taktsignals (MEM.CLK) zum Speicher (12, 42) beinhaltet, wobei der Taktgenerator (74) das zweite Taktsignal (MEM.CLK) nach dem Stoppen des ersten Taktsignals (CLKOUT) halten kann, so dass der dynamische Arbeitsspeicher (12, 42) den Selbstauffrischungszustand erreichen kann.
  2. Vorrichtung nach Anspruch 1, wobei der Taktgenerator (74) ferner ein drittes Taktsignal (PF.CLK) an die Zustandsmaschine (71) ausgibt.
  3. Vorrichtung nach Anspruch 1 oder Anspruch 2, wobei der Betrieb der Selbstauffrischungsschaltung (16) keine Software erfordert oder beinhaltet.
  4. Vorrichtung nach einem der vorherigen Ansprüche, wobei der Speicher (42) die Form eines synchronen dynamischen Arbeitsspeichers hat.
  5. Vorrichtung nach einem der vorherigen Ansprüche, die ferner eine Leistungsmanagement- und -auswahlschaltung (17) umfasst, um Leistung von einer primären Leistungsquelle (18) und von einer zusätzlichen Leistungsquelle (19) zu empfangen und um dem Speicher von der primären Leistungsquelle (18) Leistung zuzuführen, wenn ein Niveau der primären Leistungsquelle (18) eine zweite vorbestimmte Bedingung erfüllt, und von der zusätzlichen Leistungsquelle (19), wenn das Niveau der primären Quelle (18) die zweite vorbestimmte Bedingung nicht erfüllt.
  6. Vorrichtung nach einem der vorherigen Ansprüche, wobei die Selbstauffrischungsschaltung (16) ferner Folgendes umfasst: eine Multiplexierschaltung (72) außerhalb der Speichersteuerung (13, 49) zum Empfangen und Auswählen zwischen dem ersten Satz von Speichersteuersignalen von der Zustandsmaschine (71) und dem zweiten Satz von Speichersteuersignalen von der Speichersteuerung (13, 49) als Reaktion auf ein Auswahlsignal (SEL) von der Zustandsmaschine (71).
  7. Vorrichtung nach einem der vorherigen Ansprüche, wobei die vorbestimmte Bedingung das Anliegen eines Trigger-Signals (TRIGGER) ist und wobei das Trigger-Signal (TRIGGER) als Reaktion auf das Auftreten einer beliebigen aus einer Mehrzahl von unterschiedlichen Bedingungen angelegt wird, die zuvor als rücksetzbedürftig ermittelt wurden, wobei die genannte Mehrzahl von unterschiedlichen Bedingungen keinen Leistungsverlust beinhaltet.
  8. Vorrichtung nach einem der vorherigen Ansprüche, wobei die Zustandsmaschine (71) auf die vorbestimmte Bedingung durch Eintreten in einen Wartezustand reagiert, um es zuzulassen, dass der Speicher (42) eine laufende Speicheroperation vollendet, und wobei die Zustandsmaschine (71) bewirkt, dass der Speicher (42) erst nach Vollendung des Wartezustands in einen Vorladezustand eintritt.
  9. Vorrichtung nach einem der vorherigen Ansprüche, wobei: der Taktgenerator (74) ferner ein drittes Taktsignal (PF.CLK) an die Zustandsmaschine (71) ausgibt; der Betrieb der Selbstauffrischungsschaltung (16) keine Software erfordert oder beinhaltet; der Speicher (42) die Form eines synchronen dynamischen Arbeitsspeichers hat; die vorbestimmte Bedingung das Anliegen eines Trigger-Signals (TRIGGER) ist und das Trigger-Signal als Reaktion auf das Auftreten einer beliebigen aus einer Mehrzahl unterschiedlicher Bedingungen angelegt wird, die zuvor als rücksetzbedürftig ermittelt wurden, wobei die genannte Mehrzahl unterschiedlicher Bedingungen keinen Leistungsverlust beinhaltet; die Selbstauffrischungsschaltung (16) ferner eine Multiplexierschaltung (72) außerhalb der Speichersteuerung (13, 49) zum Empfangen und Auswählen zwischen dem ersten Satz von Speichersteuersignalen von der Zustandsmaschine (71) und dem zweiten Satz von Speichersteuersignalen von der Speichersteuerung (13, 49) als Reaktion auf ein Auswahlsignal von der Zustandsmaschine (71) umfasst; und die Zustandsmaschine (71) auf die vorbestimmte Bedingung durch Eintreten in einen Wartezustand reagiert, um es zuzulassen, dass der Speicher (42) eine laufende Speicheroperation vollendet, und wobei die Zustandsmaschine bewirkt, dass der Speicher erst nach Vollendung des Wartezustands in einen Vorladezustand eintritt; und die genannte Vorrichtung ferner eine Leistungsmanagement- und -auswahlschaltung (17) umfasst, um Leistung von einer primären Leistungsquelle (18) und von einer zusätzlichen Leistungsquelle (19) zu empfangen und um Leistung zum Speicher (42) von der primären Leistungsquelle (18) zuzuführen, wenn ein Niveau der primären Leistungsquelle (18) eine vorbestimmte Bedingung erfüllt, und von der zusätzlichen Leistungsquelle (19), wenn das Niveau der primären Leistungsquelle (18) die vorbestimmte Bedingung nicht erfüllt.
  10. Verfahren, das die folgenden Schritte beinhaltet: Empfangen einer Mehrzahl von Eingangssignalen in Bezug auf den Betrieb eines Verarbeitungssystems, das eine Speichersteuerung (13, 49) und einen dynamischen Arbeitsspeicher (12, 42) mit Selbstauffrischungsfähigkeit beinhaltet; Empfangen einer ersten Mehrzahl von von der Speichersteuerung (13, 49) erzeugten Speichersteuersignalen (MC.RAS_N, MC.CAS_N, MC.WE_N, MC.CS_N); Erzeugen einer zweiten Mehrzahl von Speichersteuersignalen (PF.RAS_N, PF.CAS_N, PF.WE_N, PF.CS_N) außerhalb der Speichersteuerung (13, 49), wobei jedes aus der zweiten Mehrzahl von Speichersteuersignalen einem separaten einen aus der ersten Mehrzahl von Speichersteuersignalen entspricht; und Zuführen der zweiten Mehrzahl von Speichersteuersignalen zu dem Speicher (12, 42) anstelle der ersten Mehrzahl von Speichersteuersignalen auf der Basis der Mehrzahl von Steuersignalen, um den Speicher als Reaktion auf das Anliegen eines Trigger-Signals (TRIGGER) in einen Selbstauffrischungszustand zu setzen; dadurch gekennzeichnet, dass das Verfahren ferner die folgenden Schritte umfasst: Empfangen eines ersten Taktsignals (CLKOUT) von der Speichersteuerung (13, 49); Erzeugen eines zweiten Taktsignals (MEM.CLK) auf der Basis des ersten Taktsignals (CLKOUT); Anlegen des zweiten Taktsignals (MEM.CLK) an den Speicher (12, 42); und Halten des zweiten Taktsignals (MEM.CLK) nach einem Stoppen des ersten Taktsignals, damit der Speicher den Selbstauffrischungszustand erreichen kann.
  11. Verfahren nach Anspruch 10, wobei das genannte Erzeugen einer zweiten Mehrzahl von Speichersteuersignalen die Verwendung einer Zustandsmaschine (71) außerhalb der Speichersteuerung (13, 49) zum Erzeugen der zweiten Mehrzahl von Speichersteuersignalen beinhaltet.
  12. Verfahren nach Anspruch 10 oder Anspruch 11, das ferner Folgendes umfasst: Erzeugen eines dritten Taktsignals (PF.CLK) auf der Basis des ersten Taktsignals (CLKOUT); und Anlegen des dritten Taktsignals (PF.CLK) an die Zustandsmaschine (71).
  13. Verfahren nach einem der Ansprüche 10 bis 12, wobei das genannte Anlegen der genannten zweiten Mehrzahl von Speichersteuersignalen an den Speicher (12, 42) anstelle der ersten Mehrzahl von Speichersteuersignalen das Verwenden einer Mehrzahl von Multiplexern (72) beinhaltet, die gemäß einem Zustand der Zustandsmaschine (71) gesteuert werden.
  14. Verfahren nach einem der Ansprüche 10 bis 13, das ferner Folgendes beinhaltet: Empfangen von Leistung von einer primären Leistungsquelle (18) und von einer zusätzlichen Leistungsquelle (19); Zuführen von Leistung zum Speicher (12, 42) von der primären Leistungsquelle (18), wenn ein Niveau der primären Leistungsquelle (18) eine vorbestimmte Bedingung erfüllt; und Zuführen von Leistung zum Speicher (12, 42) von der zusätzlichen Leistungsquelle (19), wenn das Niveau der primären Leistungsquelle (18) die vorbestimmte Bedingung nicht erfüllt.
  15. Verfahren nach einem der Ansprüche 10 bis 14, wobei das Trigger-Signal (TRIGGER) als Reaktion auf irgendeine aus einer Mehrzahl von unterschiedlichen Bedingungen angelegt wird, die zuvor als rücksetzbedürftig ermittelt wurden, wobei die genannte Mehrzahl unterschiedlicher Bedingungen keinen Leistungsverlust beinhaltet.
  16. Verfahren nach einem der Ansprüche 10 bis 15, wobei das Zuführen der zweiten Mehrzahl von Speichersteuersignalen zu dem Speicher (12, 42) anstelle der ersten Mehrzahl von Speichersteuersignalen Folgendes beinhaltet: Eintreten in einen Wartezustand als Reaktion auf das Trigger-Signal, um es zuzulassen, dass der Speicher (12, 42) eine laufende Speicheroperation vollendet; und Bewirken, dass der Speicher (12, 42) erst nach Vollendung des Wartezustands in einen Vorladezustand eintritt.
  17. Verfahren nach Anspruch 10, wobei: das Erzeugen der zweiten Mehrzahl von Speichersteuersignalen die Verwendung einer Zustandsmaschine (71) außerhalb der Speichersteuerung (13, 49) zum Erzeugen der zweiten Mehrzahl von Speichersteuersignalen beinhaltet; das Zuführen der zweiten Mehrzahl von Speichersteuersignalen zum Speicher (12, 42) anstelle der ersten Mehrzahl von Speichersteuersignalen Folgendes beinhaltet: Verwenden einer Mehrzahl von Multiplexern (72), die gemäß einem Zustand der Zustandsmaschine (71) gesteuert werden; Eintreten in einen Wartezustand als Reaktion auf das Trigger-Signal, um es zuzulassen, dass der Speicher (12, 42) eine laufende Speicheroperation vollendet; und Bewirken, dass der Speicher (12, 42) erst nach Vollendung des Wartezustands in einen Vorladezustand eintritt; das Trigger-Signal (TRIGGER) wird als Reaktion auf irgendeine aus einer Mehrzahl von unterschiedlichen Bedingungen angelegt, die zuvor als rücksetzbedürftig ermittelt wurden, wobei die genannte Mehrzahl unterschiedlicher Bedingungen keinen Leistungsverlust beinhaltet; und wobei das Verfahren ferner Folgendes beinhaltet: Empfangen von Leistung von einer primären Leistungsquelle (18) und von einer zusätzlichen Leistungsquelle (19); Zuführen von Leistung zum Speicher (12, 42) von der primären Leistungsquelle (18), wenn ein Niveau der primären Leistungsquelle (18) eine vorbestimmte Bedingung erfüllt; und Zuführen von Leistung zum Speicher von der zusätzlichen Leistungsquelle (19), wenn das Niveau der primären Leistungsquelle (18) die vorbestimmte Bedingung nicht erfüllt.
DE60311199T 2002-08-15 2003-08-15 Vorrichtung und Verfahren, um einen Speicher in Selbstauffrischungsbetrieb zu schalten Expired - Fee Related DE60311199T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US219376 2002-08-15
US10/219,376 US7139937B1 (en) 2002-08-15 2002-08-15 Method and apparatus to establish safe state in a volatile computer memory under multiple hardware and software malfunction conditions
US10/407,533 US7200711B2 (en) 2002-08-15 2003-04-04 Apparatus and method for placing memory into self-refresh state
US407533 2003-04-04

Publications (2)

Publication Number Publication Date
DE60311199D1 DE60311199D1 (de) 2007-03-08
DE60311199T2 true DE60311199T2 (de) 2007-11-08

Family

ID=31498057

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60311199T Expired - Fee Related DE60311199T2 (de) 2002-08-15 2003-08-15 Vorrichtung und Verfahren, um einen Speicher in Selbstauffrischungsbetrieb zu schalten

Country Status (4)

Country Link
US (1) US7200711B2 (de)
EP (1) EP1394807B1 (de)
JP (1) JP4511140B2 (de)
DE (1) DE60311199T2 (de)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4778694B2 (ja) * 2004-09-14 2011-09-21 パナソニック株式会社 半導体集積回路
JP4200969B2 (ja) * 2004-12-03 2008-12-24 セイコーエプソン株式会社 半導体装置及び電子機器
US20080028136A1 (en) 2006-07-31 2008-01-31 Schakel Keith R Method and apparatus for refresh management of memory modules
US8386722B1 (en) 2008-06-23 2013-02-26 Google Inc. Stacked DIMM memory interface
US8111566B1 (en) 2007-11-16 2012-02-07 Google, Inc. Optimal channel design for memory devices for providing a high-speed memory interface
US9542352B2 (en) * 2006-02-09 2017-01-10 Google Inc. System and method for reducing command scheduling constraints of memory circuits
US7580312B2 (en) * 2006-07-31 2009-08-25 Metaram, Inc. Power saving system and method for use with a plurality of memory circuits
US8796830B1 (en) 2006-09-01 2014-08-05 Google Inc. Stackable low-profile lead frame package
US20080126690A1 (en) * 2006-02-09 2008-05-29 Rajan Suresh N Memory module with memory stack
US8089795B2 (en) * 2006-02-09 2012-01-03 Google Inc. Memory module with memory stack and interface with enhanced capabilities
US20080082763A1 (en) * 2006-10-02 2008-04-03 Metaram, Inc. Apparatus and method for power management of memory circuits by a system or component thereof
US7590796B2 (en) * 2006-07-31 2009-09-15 Metaram, Inc. System and method for power management in memory systems
US8090897B2 (en) * 2006-07-31 2012-01-03 Google Inc. System and method for simulating an aspect of a memory circuit
US8327104B2 (en) 2006-07-31 2012-12-04 Google Inc. Adjusting the timing of signals associated with a memory system
US8081474B1 (en) 2007-12-18 2011-12-20 Google Inc. Embossed heat spreader
US8335894B1 (en) 2008-07-25 2012-12-18 Google Inc. Configurable memory system with interface circuit
US8077535B2 (en) * 2006-07-31 2011-12-13 Google Inc. Memory refresh apparatus and method
US7609567B2 (en) * 2005-06-24 2009-10-27 Metaram, Inc. System and method for simulating an aspect of a memory circuit
US8055833B2 (en) * 2006-10-05 2011-11-08 Google Inc. System and method for increasing capacity, performance, and flexibility of flash storage
US10013371B2 (en) 2005-06-24 2018-07-03 Google Llc Configurable memory circuit system and method
US8438328B2 (en) 2008-02-21 2013-05-07 Google Inc. Emulation of abstracted DIMMs using abstracted DRAMs
US7472220B2 (en) * 2006-07-31 2008-12-30 Metaram, Inc. Interface circuit system and method for performing power management operations utilizing power management signals
US8244971B2 (en) 2006-07-31 2012-08-14 Google Inc. Memory circuit system and method
US9507739B2 (en) 2005-06-24 2016-11-29 Google Inc. Configurable memory circuit system and method
US8041881B2 (en) * 2006-07-31 2011-10-18 Google Inc. Memory device with emulated characteristics
US8060774B2 (en) 2005-06-24 2011-11-15 Google Inc. Memory systems and memory modules
US8130560B1 (en) 2006-11-13 2012-03-06 Google Inc. Multi-rank partial width memory modules
US7515453B2 (en) * 2005-06-24 2009-04-07 Metaram, Inc. Integrated memory core and memory interface circuit
US8359187B2 (en) * 2005-06-24 2013-01-22 Google Inc. Simulating a different number of memory circuit devices
US9171585B2 (en) 2005-06-24 2015-10-27 Google Inc. Configurable memory circuit system and method
US7386656B2 (en) * 2006-07-31 2008-06-10 Metaram, Inc. Interface circuit system and method for performing power management operations in conjunction with only a portion of a memory circuit
US7392338B2 (en) * 2006-07-31 2008-06-24 Metaram, Inc. Interface circuit system and method for autonomously performing power management operations in conjunction with a plurality of memory circuits
US8397013B1 (en) 2006-10-05 2013-03-12 Google Inc. Hybrid memory module
DE112006002300B4 (de) * 2005-09-02 2013-12-19 Google, Inc. Vorrichtung zum Stapeln von DRAMs
TWI308694B (en) * 2005-12-13 2009-04-11 Wistron Corp Method of data protection for computers
US20070168740A1 (en) * 2006-01-10 2007-07-19 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for dumping a process memory space
US9632929B2 (en) 2006-02-09 2017-04-25 Google Inc. Translating an address associated with a command communicated between a system and memory circuits
US7447096B2 (en) * 2006-05-05 2008-11-04 Honeywell International Inc. Method for refreshing a non-volatile memory
US7724589B2 (en) * 2006-07-31 2010-05-25 Google Inc. System and method for delaying a signal communicated from a system to at least one of a plurality of memory circuits
US20080025136A1 (en) * 2006-07-31 2008-01-31 Metaram, Inc. System and method for storing at least a portion of information received in association with a first operation for use in performing a second operation
US20080028135A1 (en) * 2006-07-31 2008-01-31 Metaram, Inc. Multiple-component memory interface system and method
US7616508B1 (en) * 2006-08-10 2009-11-10 Actel Corporation Flash-based FPGA with secure reprogramming
US8209479B2 (en) * 2007-07-18 2012-06-26 Google Inc. Memory circuit system and method
US8080874B1 (en) 2007-09-14 2011-12-20 Google Inc. Providing additional space between an integrated circuit and a circuit board for positioning a component therebetween
US20090089514A1 (en) * 2007-09-28 2009-04-02 Durgesh Srivastava Implementing Asynchronous Request for Forcing Dynamic Memory into Self Refresh
EP2441007A1 (de) * 2009-06-09 2012-04-18 Google, Inc. Programmierung von dimm-abschlusswiderstandswerten
US8510598B2 (en) * 2010-03-29 2013-08-13 Dot Hill Systems Corporation Buffer management method and apparatus for power reduction during flush operation
US9014749B2 (en) 2010-08-12 2015-04-21 Qualcomm Incorporated System and method to initiate a housekeeping operation at a mobile device
US9153311B1 (en) * 2014-05-27 2015-10-06 SRC Computers, LLC System and method for retaining DRAM data when reprogramming reconfigurable devices with DRAM memory controllers
US9530483B2 (en) 2014-05-27 2016-12-27 Src Labs, Llc System and method for retaining dram data when reprogramming reconfigurable devices with DRAM memory controllers incorporating a data maintenance block colocated with a memory module or subsystem
US9537979B2 (en) * 2014-12-12 2017-01-03 Intel Corporation Network adapter optical alert system
US9568971B2 (en) 2015-02-05 2017-02-14 Apple Inc. Solid state drive with self-refresh power saving mode
US10127968B2 (en) 2015-08-03 2018-11-13 Intel Corporation Method and apparatus for completing pending write requests to volatile memory prior to transitioning to self-refresh mode
US12314603B2 (en) * 2023-04-03 2025-05-27 Hewlett Packard Enterprise Development Lp Selective connection of controllers to a single-ported input/output device
TWI897241B (zh) * 2024-02-19 2025-09-11 華邦電子股份有限公司 記憶體儲存裝置及其操作方法
US20250383696A1 (en) * 2024-06-12 2025-12-18 Micron Technology, Inc. Device reset based on voltage brownout

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4710903A (en) * 1986-03-31 1987-12-01 Wang Laboratories, Inc. Pseudo-static memory subsystem
JPS62293593A (ja) * 1986-06-13 1987-12-21 Fujitsu Ltd メモリバツクアツプ制御回路
US4979171A (en) 1989-05-03 1990-12-18 Rockwell International Corporation Announcement and tone code generator for telephonic network and method
US5175853A (en) 1990-10-09 1992-12-29 Intel Corporation Transparent system interrupt
US5781784A (en) 1992-07-09 1998-07-14 Zilog, Inc. Dynamic power management of solid state memories
JPH07182857A (ja) 1993-12-24 1995-07-21 Toshiba Corp マイコンシステム
JP3524151B2 (ja) * 1994-04-28 2004-05-10 キヤノン株式会社 メモリバックアップ制御装置
US5692202A (en) 1995-12-29 1997-11-25 Intel Corporation System, apparatus, and method for managing power in a computer system
US5935259A (en) 1996-09-24 1999-08-10 Apple Computer, Inc. System and method for preventing damage to media files within a digital camera device
US6216233B1 (en) * 1997-02-12 2001-04-10 Intel Corporation Maintaining a memory while in a power management mode
JPH10228768A (ja) * 1997-02-14 1998-08-25 Mitsubishi Electric Corp 半導体記憶装置
US6212599B1 (en) 1997-11-26 2001-04-03 Intel Corporation Method and apparatus for a memory control system including a secondary controller for DRAM refresh during sleep mode
US6088762A (en) * 1998-06-19 2000-07-11 Intel Corporation Power failure mode for a memory controller
US6119200A (en) 1998-08-18 2000-09-12 Mylex Corporation System and method to protect SDRAM data during warm resets
US6317657B1 (en) 1998-08-18 2001-11-13 International Business Machines Corporation Method to battery back up SDRAM data on power failure
KR100381966B1 (ko) 1998-12-28 2004-03-22 주식회사 하이닉스반도체 반도체메모리장치및그구동방법
JP3588267B2 (ja) * 1999-03-05 2004-11-10 三洋電機株式会社 リフレッシュ回路及びそれを用いた光ディスク再生装置の制御回路
US6633987B2 (en) * 2000-03-24 2003-10-14 Intel Corporation Method and apparatus to implement the ACPI(advanced configuration and power interface) C3 state in a RDRAM based system
JP2002041445A (ja) 2000-05-19 2002-02-08 Matsushita Electric Ind Co Ltd 高性能dmaコントローラ

Also Published As

Publication number Publication date
EP1394807A2 (de) 2004-03-03
EP1394807B1 (de) 2007-01-17
EP1394807A3 (de) 2004-09-01
DE60311199D1 (de) 2007-03-08
US7200711B2 (en) 2007-04-03
JP4511140B2 (ja) 2010-07-28
US20040034732A1 (en) 2004-02-19
JP2005115972A (ja) 2005-04-28

Similar Documents

Publication Publication Date Title
DE60311199T2 (de) Vorrichtung und Verfahren, um einen Speicher in Selbstauffrischungsbetrieb zu schalten
DE112007001987B4 (de) Überführen einer Rechenplattform in einen Systemzustand niedriger Leistung
DE112015006117B4 (de) Halbleiterlaufwerk mit selbstaktualisierungsenergiesparmodus
DE102012212441B4 (de) Verfahren zum Eintreten in und Verlassen eines Schlafmodus in einer Graphikverarbeitungseinheit
US9727462B2 (en) Runtime backup of data in a memory module
DE60224727T2 (de) Multimodus-synchronspeichervorrichtung und verfahren zum betrieb und testen derselben
DE102011014587B4 (de) Schneller Austritt aus Selbstauffrischungszustand eines Speichergeräts
DE102006002526B4 (de) Steuervorrichtung für eine Solid-State-Disk und Verfahren zum Betreiben derselben
DE112006002154T5 (de) Dynamische Speichergrösseneinteilung zur Leistungsreduktion
DE19681716B4 (de) Computersystem und Verfahren für ein Stromversorgungsmanagement
DE102020104367A1 (de) Refresh-befehlssteuerung für eine hostunterstützung einer rowhammer-mitigation
DE602004002300T2 (de) Selektive bankauffrischung
DE102004034760B4 (de) Auffrischsteuerverfahren, Speichersteuerschaltung und Chipprodukt
DE60315651T2 (de) Halbleiterspeicher
DE10307244B4 (de) Automatische Vorladesteuerungsschaltung und zugehöriges Vorladesteuerungsverfahren
DE102004039178B4 (de) Speichersteuerschaltung, Smartcard und Lesesteuerverfahren
DE10161048A1 (de) Halbleiterspeichervorrichtung mit niedrigem Leistungsverbrauch
DE112006000792T5 (de) Variable Speicherfeld-Selbstauffrischungsraten in Suspend- und Standby-Modi
DE102022106020A1 (de) Anwendungsbewusste speicher-patrol-scrubbing-techniken
DE69722100T2 (de) Modulares batteriesicherungssystem für cachespeicher
DE112018000372T5 (de) Systeme und verfahren für eine kohärente energieverwaltung
DE102006048856B4 (de) Verfahren zum Betreiben einer IC-Halbleiterspeichervorrichtung und IC-Halbleiterspeichervorrichtung
DE112021002897B4 (de) Verfahren und vorrichtung zum sichern von speichermodulen
DE4304886A1 (de) Halbleiterspeichervorrichtung
DE102016122763A1 (de) Zugreifen auf daten über verschiedene takte

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee