DE102012203713A1 - Verfahren und Vorrichtung zur Verlängerung der Lebensdauer von Speichern - Google Patents

Verfahren und Vorrichtung zur Verlängerung der Lebensdauer von Speichern Download PDF

Info

Publication number
DE102012203713A1
DE102012203713A1 DE102012203713A DE102012203713A DE102012203713A1 DE 102012203713 A1 DE102012203713 A1 DE 102012203713A1 DE 102012203713 A DE102012203713 A DE 102012203713A DE 102012203713 A DE102012203713 A DE 102012203713A DE 102012203713 A1 DE102012203713 A1 DE 102012203713A1
Authority
DE
Germany
Prior art keywords
memory
erase
maximum number
predetermined maximum
value
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.)
Pending
Application number
DE102012203713A
Other languages
English (en)
Inventor
Ty Sopko
Zimin W. Vilar
Alan K. Gilman
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.)
Deere and Co
Original Assignee
Deere and Co
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 Deere and Co filed Critical Deere and Co
Publication of DE102012203713A1 publication Critical patent/DE102012203713A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Ein Verfahren (100) zur Speicherverwaltung enthält die Schritte zum Speichern eines Wertes und zum Ss Wertes speichert einen Wert, der eine Anzahl von Lösch/Schreib-Zyklen darstellt, denen eine Teilmenge des Speicherraums einer ersten Speichereinrichtung (18) unterzogen wurde. Der erste Speicher (18) weist eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen auf. Der Schritt zum Schreiben von Daten schreibt Daten zu der Teilmenge des Speicherraums in Abhängigkeit davon, ob der Wert unter der im Voraus festgelegten maximalen Anzahl liegt.

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Verlängerung der Lebensdauer von Speichern und insbesondere auf ein Verfahren zur Verlängerung der Lebensdauer von Speichern zur Verwendung bei einem Speicher, der eine begrenzte Schreibbeständigkeit aufweist.
  • Die Speicherung und die Verwaltung von Daten sind häufig eine Kombination von Kompromissen bei eingebetteten Plattformen infolge des Overhead, das mit dem Verwalten der Dateisysteme, Dateien, Sektorverifikation, der Wechselwirkung von Einheiten auf niedriger Stufe und dergleichen verbunden ist, was typischerweise bei tragbaren elektronischen Geräten der Fall ist. Um ein übliches Szenario zu veranschaulichen, bei dem diese Komplexität erforderlich ist, wird das Beispiel von 1 betrachtet, in dem eine Digitalkamera mit einem Personalcomputer verglichen wird. Um die Anforderungen in Bezug auf Packungsdichte und Leistung einzuhalten, weist die Digitalkamera Hardware- und Software-Spezifikationen auf, die bedeutend niedriger sind als bei einem Universal-Computer. Der Prozessor der Kamera ist spezialisiert und ein Massenspeicher existiert lediglich in Form einer entnehmbaren Flash-Einrichtung oder Karte, ein Arbeitsspeicher (RAM) ist nahezu nicht vorhanden und E/A sind stark reduziert und hoch spezialisiert, um ihre spezifischen Zwecke zu erfüllen.
  • Eine solche Kamera hat eine zweckbestimmte Software, die zum Verwalten der Flash-Speichereinrichtung eingerichtet ist. Da die Flash-Speichereinrichtung mit dem Personalcomputer direkt verbunden werden kann, muss sie die gleiche Dateiverwaltung hoher Stufe wie der Personalcomputer verwenden. Das heißt, die Kamera muss zusätzlich zu der Notwendigkeit, E/A auf niedriger Ebene bereitzustellen, das Dateisystem, Zuweisungstabellen, Sektorprüfung, über Sektoren verteilte Dateien usw. verstehen.
  • Im Gegensatz dazu können Fahrzeuge wie etwa Baufahrzeuge oder landwirtschaftliche Fahrzeuge eine eingebettete Steuereinheit verwenden. Die eingebettete Steuereinheit weist infolge von Kostenbetrachtungen sehr geringe Betriebsmittel auf. Es ist nicht durchführbar, dass ein intelligentes Dateisystem zur Datenspeicherung vorhanden ist. In einem typischen Speicherungssystem wird kein Dateisystem hoher Stufe verwendet und die Speichereinrichtungen werden direkt und rationell adressiert. Im Vergleich zu der oben erwähnten Digitalkamera dienen die eingebetteten Steuereinheiten eines Fahrzeugs als Datenprotokollierungseinrichtungen mit sehr unterschiedlichen Zielen und Schnittstellen. Bei Fahrzeugen besteht die Notwendigkeit, Betriebsdaten zur Funktion des Fahrzeugs in einer nichtflüchtigen Speichereinrichtung zu speichern. Die Daten werden als eine normale Operation der Steuereinheit in den RAM und im ausgeschalteten Zustand in nichtflüchtige Flash-Speicher geschrieben, um die Daten ständig zur Speicherung bereitzustellen. Wenn kein Dateisystem erforderlich ist, wird die Flash-Einrichtung direkt und rationell adressiert.
  • Typischerweise kann auf Flash-Speicher sektorweise zugegriffen werden, wobei die Sektorgröße von der Größe der Einrichtung abhängt. Ein 32 MB-Flash-Speicher kann z. B. eine Sektorgröße von 32 kB haben und ein 4 GB-Flash-Speicher kann eine Sektorgröße 256 kB haben. Um ein Byte in dem Sektor zu ändern, ist typischerweise ein Lösch/Schreib-Zyklus auf dem gesamten Sektor erforderlich. Ein Problem besteht darin, dass in der Technologie der Flash-Speicher lediglich eine definierte Anzahl wie etwa 100000 Lösch/Schreib-Zyklen pro Sektor möglich sind bevor ein Sektorfehler auftritt. Geräte der Unterhaltungselektronik werden mit dieser Beschränkung entworfen und besitzen Möglichkeiten der Dateiverwaltung, um fehlerhafte Sektoren, die verbraucht sind, zu prüfen und zu vermeiden. Ferner wird mit sekundärem Schatten-RAM versucht, die Anzahl von Lösch/Schreib-Zyklen zu den verschiedenen Sektoren zu minimieren und einen Lösch/Schreib-Zyklus nur dann zuzulassen, wenn zahlreiche Änderungen für einen Schatten-Flash-Sektor gefordert werden. Wenn z. B. ein einziger Schattensektor in einem Schatten-RAM Tausende Störungsfälle aufweist, wird das Schreiben zum Speicher nicht zugelassen, bis der Algorithmus feststellt, dass ein Austauschen von Schattensektoren einen geringen Einfluss auf die Einrichtung hat. Mit der Zeit kann sich die Kapazität der Einrichtung als ein Ergebnis von verbrauchten Sektoren in Abhängigkeit von dem Algorithmus der Einrichtung möglicherweise verringern.
  • Unterschiedliche nichtflüchtige Speichertechnologien wie etwa ferroelektrische Speicher mit wahlfreiem Zugriff (FRAM) oder magnetoresistive Speicher mit wahlfreiem Zugriff (MRAM) weisen Lösch/Schreib-Zyklen auf, deren Anzahl um eine Größenordnung größer ist als bei Flash-Speichern, sie haben jedoch typischerweise Speicherkapazitäten, die um fünf oder mehr Größenordnungen kleiner sind. Die begrenzte Kapazität dieser Speicher machen diese Technologien trotz der erhöhten Langlebigkeit ihrer Einrichtungen für eine großvolumige Speicherung unbrauchbar.
  • Ein FRAM besitzt die gleiche Funktionalität wie ein Flash-Speicher und hat sogar einen geringeren Leistungsverbrauch und eine schnellere Schreibleistung und eine viel größere maximale Anzahl von Lösch/Schreib-Zyklen. Nachteile des FRAM bestehen in viel geringeren Speicherdichten als bei Flash-Speichereinrichtungen, Begrenzungen der Speicherkapazität und höheren Kosten, die mit der FRAM-Technologie verbunden sind.
  • In der Technik wird die Massenspeicherkapazität des Flash-Speichers bei seinen geringeren Kosten in Verbindung mit der höheren Leistung von Lösch/Schreib-Zyklen der FRAM-Technologie benötigt, so dass sie bei Anwendungen, die Speicher verwenden, kostengünstig genutzt werden kann.
  • Es ist deswegen die Aufgabe der vorliegenden Erfindung, einer dieser Forderungen oder allen zu genügen.
  • Diese Aufgabe wird erfindungsgemäß gelöst durch die Lehre der Ansprüche 1 und 10, während Merkmale, die die Lösung vorteilhaft entwickeln, in den weiteren Ansprüchen dargestellt sind.
  • Die Erfindung schafft ein Verfahren zur Verlängerung der Lebensdauer einer Datenspeichereinrichtung insbesondere zur Verwendung in einer Fahrzeuganwendung.
  • Die Erfindung ist in einer ihrer Formen auf ein Verfahren zur Speicherverwaltung gerichtet, das die Schritte zum Speichern eines Wertes und zum Schreiben von Daten enthält. Der Schritt zum Speichern eines Wertes speichert einen Wert, der eine Anzahl von Lösch/Schreib-Zyklen repräsentiert, denen eine Teilmenge des Speicherraums eines ersten Speichers unterzogen wurde. Der erste Speicher weist eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen auf. Der Schritt zum Schreiben von Daten schreibt Daten in die Teilmenge des Speicherraums in Abhängigkeit davon, ob der Wert unter der im Voraus festgelegten maximalen Anzahl liegt.
  • Gemäß einer ersten Ausführungsform enthält die Erfindung ein Verfahren zur Speicherverwaltung, das die Schritte zum Speichern eines Wertes, der eine Anzahl von Lösch/Schreib-Zyklen repräsentiert, denen eine Teilmenge des Speicherraums eines ersten Speichers unterzogen wurde, wobei der erste Speicher eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweist; und zum Schreiben von Daten in die Teilmenge des Speicherraums in Abhängigkeit davon, ob der Wert unter der im Voraus festgelegten maximalen Anzahl liegt, umfasst.
  • Der Wert kann in einem zweiten Speicher gespeichert sein, der eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweist, die größer als die im Voraus festgelegte maximale Anzahl des ersten Speichers ist.
  • Das Verfahren kann ferner den Schritt zum Speichern eines Wertes umfassen, der eine Speicherstelle des ersten Speichers angibt, an der Daten gegenwärtig gespeichert sind.
  • Der Wert, der eine Speicherstelle angibt, kann in dem zweiten Speicher gespeichert sein.
  • Das Verfahren kann ferner den Schritt zum Speichern eines Offset-Wertes umfassen, der verwendet wird, um eine Speicherstelle des ersten Speichers, an der Daten gespeichert werden können, zu bestimmen.
  • Der Offset-Wert kann in dem zweiten Speicher gespeichert sein.
  • Der Schreibschritt kann das Schreiben von Daten zu einer neuen Teilmenge des Speicherraums enthalten, wenn der Wert gleich der im Voraus festgelegten maximalen Anzahl oder größer als diese ist, wobei das Verfahren in einer eingebetteten Steuereinheit eines Fahrzeugs verwendet wird.
  • In einer weiteren Ausführungsform der Erfindung umfasst ein elektrisches Steuersystem eine Steuereinheit, die eine Mikrosteuereinheit, einen ersten Speicher und einen zweiten Speicher umfasst, wobei der erste Speicher und der zweite Speicher mit der Mikrosteuereinheit verbunden sind, wobei die Steuereinheit eingerichtet ist, um das Verfahren zur Speicherverwaltung auszuführen, das einen oder mehrere der Schritte enthält, die in Bezug auf die erste Ausführungsform beschrieben wurden.
  • In einer nochmals weiteren Ausführungsform der Erfindung umfasst eine Energieverbrauchseinrichtung wenigstens eine Leistungsmesseinrichtung, die wenigstens einen Messwert erzeugt; eine erste Speichereinrichtung; eine zweite Speichereinrichtung; und eine Steuereinheit, die mit der Energieverbrauchseinrichtung zum Datenaustausch verbunden ist, wobei die Steuereinheit mit der ersten Speichereinrichtung und der zweiten Speichereinrichtung verbunden ist, der wenigstens eine Messwert an einer ausgewählten Stelle in der ersten Speichereinrichtung gespeichert wird, wobei die erste Speichereinrichtung eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweist, wobei die ausgewählte Stelle zu einer neuen ausgewählten Stelle geändert wird, nachdem die ausgewählte Stelle einer Zahl von Lösch/Schreib-Zyklen unterzogen wurde, die gleich der im Voraus festgelegten maximalen Anzahl von Lösch/Schreib-Zyklen ist, wobei die zweite Speichereinrichtung diese Zahl enthält.
  • Die zweite Speichereinrichtung kann eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweisen, die die im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen der ersten Speichereinrichtung übersteigt.
  • Die zweite Speichereinrichtung kann eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweisen, die mehr als das Zehnfache der im Voraus festgelegten maximalen Anzahl von Lösch/Schreib-Zyklen der ersten Speichereinrichtung ist.
  • Ein Stellenwert, der die ausgewählte Stelle angibt, kann gespeichert sein.
  • Der Stellenwert, der eine Speicherstelle angibt, kann in der zweiten Speichereinrichtung gespeichert sein.
  • Ein Offset-Wert kann in der zweiten Speichereinrichtung gespeichert sein, wobei der Offset-Wert verwendet wird, um eine Speicherstelle der ersten Speichereinrichtung zu bestimmen, an der der wenigstens eine Messwert gespeichert ist, wobei die Energieverbrauchseinrichtung eingerichtet ist, um ein Fahrzeug anzutreiben.
  • Die oben erwähnten und anderen Merkmale und Vorteile dieser Erfindung und die Art, wie sie zu erreichen sind, werden deutlicher und die Erfindung wird besser verstanden durch Bezugnahme auf die folgende Beschreibung einer Ausführungsform der Erfindung, die in Verbindung mit den beigefügten Zeichnungen erfolgt, worin:
  • 1 eine Darstellung des Standes der Technik der Speichernutzung in einem Personalcomputer und einer Digitalkamera ist;
  • 2 eine Seitenansicht eines landwirtschaftlichen Fahrzeugs ist, das eine Ausführungsform eines Verfahrens zur Speichererweiterung der vorliegenden Erfindung verwendet;
  • 3 eine schematische Darstellung einer Steuereinheit ist, die in dem Fahrzeug von 2 verwendet wird;
  • 4 eine schematische Darstellung einer Flash-Speichereinrichtung ist, die durch die Steuereinheit von 3 verwendet wird;
  • 5 eine schematische Darstellung ist, wie das von der vorliegenden Erfindung in den 2 bis 4 verwendete Verfahren ausgeführt wird; und
  • 6 ein schematisches Blockschaubild ist, das Schritte zeigt, um die Funktionsweise einer Ausführungsform der vorliegenden Erfindung zu veranschaulichen.
  • In sämtlichen Ansichten geben entsprechende Bezugszeichen entsprechende Teile an. Die hier gegebenen Veranschaulichungen zeigen eine Ausführungsform der Erfindung, wobei solche Veranschaulichungen in keiner Weise als Einschränkung des Umfangs der Erfindung betrachtet werden sollten.
  • In den Zeichnungen und insbesondere in 2 ist ein Fahrzeug 10 dargestellt, das die Form eines landwirtschaftlichen Fahrzeugs haben kann, das eine Energieverbrauchseinrichtung 12 und eine Steuereinheit 14 aufweist. Die Energieverbrauchseinrichtung 12 liefert Antriebsleistung für das Fahrzeug 10, damit sich das Fahrzeug 10 bewegen kann und verschiedene Bewegungsaktionen des Fahrzeugs als Ganzes und in Bezug auf seine Mechanismen ausgeführt werden können. Die Energieverbrauchseinrichtung 12 kann in Form einer Brennkraftmaschine, etwa einer Dieselkraftmaschine, vorliegen, wobei die Steuereinheit 14 in Form einer Kraftmaschinen-Steuereinheit darin eingebettet ist. Die Steuereinheit 14 ist Teil eines elektrischen Steuersystems, das Teil der Energieverbrauchseinrichtung 12 sowie Teil des Fahrzeugs 10 ist. Verschiedene Leistungsmesseinrichtungen in Form von Sensoren sind mit der Energieverbrauchseinrichtung 12 verbunden, um Messwerte zu erzeugen, die Leistungsattributen der Energieverbrauchseinrichtung 12 zugeordnet sind. Die Messwerte werden durch die Steuereinheit 14 für eine prognostische Verwendung gespeichert.
  • In 3 ist eine Steuereinheit 14 schematisch dargestellt, die eine eingebettete Mikrosteuereinheit 16 enthält, die mit einem Speicher in Form der Flash-Speichereinrichtung 18 und des FRAM 20 eine Schnittstelle bildet. Die eingebettete Mikrosteuereinheit 16 enthält einen Prozessor 22, einen Internspeicher 24 und einen Bus 26 der seriellen Peripherieschnittstelle (SPI), der mit der Flash-Speichereinrichtung 18 und dem FRAM 20 eine Schnittstelle bildet. Die Mikrosteuereinheit 16 verwendet den SPI-Bus 26, um Messwerte in der Flash-Speichereinrichtung 18 zu speichern. Obwohl die Flash-Speichereinrichtung 18 und der FRAM 20 hier zum Zweck der Erläuterung der Erfindung genannt werden, sind sie jeweils Referenzen für zwei Speichereinrichtungen, von denen die erste eine kleinere Anzahl von Lösch/Schreib-Zyklen (E/W-Zyklen) aufweist als die zweite.
  • In 4 ist die Speicherkapazität einer Flash-Speichereinrichtung 18 schematisch dargestellt. Für den Zweck der Erläuterung der vorliegenden Erfindung wird eine 32 MB-Flash-Speichereinrichtung 18 mit 32 kB-Sektoren verwendet, die häufig, z. B. wie in 3 dargestellt, mit 100000 E/W-Zyklen beschrieben werden können. Die Flash-Speichereinrichtung 18 kann man sich in der Weise vorstellen, dass sie Teilsektionen wie etwa die Teilsektion 28 der Flash-Speichereinrichtung 18, die 4 MB der 32 MB-Flash-Speichereinrichtung 18 verwendet, aufweist. Die zweite Teilsektion 30 der Flash-Speichereinrichtung 18 verwendet die nächste 4 MB-Sektion, wobei es ebenso weitere Teilsektionen 32 des Flash-Speichers gibt. Wenn jede Teilsektion des Speichers 4 MB umfasst, gibt es in einer 32 MB-Flash-Speichereinrichtung 18 acht Teilsektionen.
  • In 3 kann der FRAM 20 eine beträchtlich kleinere Speicherkapazität aufweisen, wie etwa 8 kB, er hat jedoch die Kapazität für 1000000 E/W-Zyklen. Damit sind die E/W-Zyklen für den FRAM 20 das Zehnfache der E/W-Zyklen der Flash-Speichereinrichtung 18.
  • In 5 ist wiederum die Steuereinheit 14 gezeigt, die eine spezielle Anzahl von Leistungszyklen von 145680 zeigt, und der aktive Adressbereich ist 2. Diese Zahlen oder Werte werden im FRAM 20 gespeichert. Während des Betriebs der Steuereinheit 14 werden Daten, die in Bezug auf die Leistung der Energieverbrauchseinrichtung 12 oder andere Aspekte des Fahrzeugs 10 erfasst werden, in der Flash-Speichereinrichtung 18, in der zweiten Teilsektion 30 der Flash-Speichereinrichtung 18, gespeichert. Das wird festgelegt, da die System-Leistungszyklen die Zahl 100000 übersteigen und die erste Teilsektion 28 nicht mehr beschrieben wird, da die E/W-Zyklen die Kapazität oder die lange Lebensdauer für die erste Teilsektion 28 der Flash-Speichereinrichtung 18 übersteigen. Den aktiven Adressbereich 2 kann man sich als einen Offset vorstellen, der die Software des Flash-Treibers auf niedriger Ebene anweist, die zweite Teilsektion 30 zum Schreiben von bis zu 4 MB Daten in Bezug auf das Fahrzeug 10 auszuwählen.
  • In 6 ist eine Ausführungsform eines Verfahrens dargestellt, das von der vorliegenden Erfindung eingeschlossen ist. Das Verfahren 100 kann beim Ausschalten des Fahrzeugs 10 oder durch ein anderes Auslöseereignis wie etwa einen detektierten Fehler oder ein anderes Ergebnis ausgelöst werden. Das Verfahren 100 beginnt mit dem Schritt 102, wo der Zählerstand von Zugriffen auf eine spezielle Speichersektion gelesen wird. Der Zählerstand wird im Schritt 104 erhöht und im Schritt 106 erfolgt eine Prüfung, ob der Zählerstand größer ist als die maximale Anzahl von E/W-Zyklen, die pro Teilsektion zulässig sind. Wenn der Zählerstand nicht größer ist als die maximale Anzahl von E/W-Zyklen, geht das Verfahren 100 zum Schritt 116. Es sollte angemerkt werden, dass die maximale Anzahl von E/W-Zyklen eine im Voraus festgelegte Anzahl ist, die für den Zweck der Erläuterung der vorliegenden Erfindung auf 100000 Zyklen gesetzt ist. Eine weitere im Voraus festgelegte Anzahl kann z. B. mit 95000 ausgewählt werden, um eine Sicherheitsspanne unter dem Nennwert von 100000 für die Flash-Speichereinrichtung 18 zu schaffen. Es sollte außerdem angemerkt werden, dass der FRAM 20 eine begrenzte Lebensdauer besitzt, die als die Anzahl von E/W-Zyklen wie etwa 1000000 E/W-Zyklen ausgedrückt wird, die in diesem Beispiel das Zehnfache des Leistungsvermögens der Flash-Speichereinrichtung 18 ist.
  • Im Schritt 116 speichert das Verfahren 100 den erhöhten Zählerstand im FRAM 20 und liest im Schritt 118 den Offset, der in 5 als der aktive Adressbereich mit einem Wert 2 dargestellt ist. Die Daten von der Energieverbrauchseinrichtung 12 und/oder dem Fahrzeug 10 werden im Schritt 120 an der Offset-Stelle gespeichert, wobei das in dem Beispiel von 5 in der zweiten Teilsektion 30 erfolgt.
  • Wenn im Schritt 106 der Zählerstand größer als die maximale Anzahl von Lösch/Schreib-Zyklen oder gleich dieser ist (die die im Voraus festgelegte Anzahl ist), wird der im FRAM 20 enthaltene Offset im Schritt 108 gelesen und der Offset wird im Schritt 110 erhöht und im Schritt 112 gespeichert. Das wählt effektiv eine neue Teilsektion der Flash-Speichereinrichtung 18 für den nächsten Schreib-Zyklus. In diesem Beispiel wird der Zählerstand im Schritt 114 auf Null gesetzt, der der Zählerstand der Anzahl von Lösch/Schreib-Zyklen ist, die in die neue Teilsektion geschrieben wurden. Dann geht das Verfahren 100 zum Schritt 116, wie oben erläutert.
  • Obwohl das oben erläuterte Verfahren eine Zählvariable verwendet, ist außerdem vorgesehen, eine mathematische Operation zu verwenden, um die Teilsektion des Speichers zu bestimmen, die gegenwärtig aktiv ist. Es kann z. B. eine Operation der verkürzten Division verwendet werden, die z. B. dann, wenn wie in 5 die System-Leistungszyklen = 143680 sind, 143680 div 95000 = 1 lautet. Der resultierende Wert von 1 bedeutet, dass der Zählerstand mindestens 95000 beträgt, jedoch kleiner als 190000 ist, so dass auf die zweite Teilsektion des Speichers geschrieben werden soll.
  • Die vorliegende Erfindung kombiniert vorteilhaft die hohe Kapazität der Flash-Speichereinrichtung 18 mit dem hohen Lösch/Schreib-Vermögen des FRAM 20, die durch eine Flash-Ansteuerungsroutine auf niedriger Ebene oder eine Software-Routine, die zum Ausführen der hier beschriebenen Funktionen verwendet wird, vorteilhaft genutzt werden. Diese Konfiguration ist sehr nützlich für eine effektive kostengünstige prognostische Datenspeicherung in einem Fahrzeug 10. Der RAM des Speichers 24 dient als vorübergehender Haltebereich für die Daten oder Werte, die für eine nichtflüchtige Speicherung in der Flash-Speichereinrichtung 18 vorgesehen sind. Die Informationen werden beim Abschalten in die Flash-Speichereinrichtung 18 kopiert, was einen Lösch/Schreib-Zyklus in den Zielsektoren, die in diesem Beispiel die Teilsektion 30 der Flash-Speichereinrichtung 18 ist, induziert. Der Zählerstandswert zählt die Anzahl von Leistungszyklen, die dann beim Abschalten in den FRAM 20 geschrieben wird.
  • In dem vorhergehenden Beispiel wird die 32 MB-Flash-Speichereinrichtung 18 als acht 4 MB-Einrichtungen behandelt. Anfangs werden lediglich Daten in Flash-Sektoren gespeichert, die sich in der ersten Teilsektion 28 befinden, die zwischen dem 0 MB- und 4 MB-Adressbereich liegen. Wenn die Gesamtanzahl von Leistungszyklen die im Voraus festgelegten Anzahl der Lebensdauer des Flash-Sektors erreicht, wird ein anderer Bereich von physikalischen Adressen angepeilt, in diesem Beispiel die Teilsektion 30, wobei der aktive Bereich von Adressen nun in der Flash-Speichereinrichtung 18 zwischen 4 MB und 8 MB liegt. Der aktive Adressbereich wird im FRAM 20 gespeichert, der effektiv einen Offset in Abhängigkeit von der Anzahl von System-Leistungszyklen bereitstellt. Prognostische Daten werden vorteilhaft in der Flash-Speichereinrichtung 18 gespeichert und liefern infolge dessen, dass die Daten in den Sektoren verbleiben, die als verbraucht behandelt werden, eine bestimmte Momentaufnahme der Datenvorgeschichte.
  • Der Schwellenwert von Leistungszyklen, der das Umschalten im Adressbereich zwischen einer Teilsektion des Speichers und einer anderen Teilsektion des Speichers auslöst, sollte eine Spanne der Lebenserwartung der Funktion dieses Sektors schaffen. Wie oben erwähnt kann ein Schwellenwert in der Nähe von 95000 E/W-Zyklen liegen, wenn die Einrichtung normalerweise für 100K E/W-Zyklen geschaffen ist.
  • Wenn in dem vorhergehenden Beispiel lediglich 4 MB zur prognostischen Speicherung erforderlich sind, kann der 32 MB-Abschnitt, der verwendet wird, um eine 4 MB-Einrichtung mit 760000 E/W-Zyklen zu emulieren, leicht in einer kostengünstigen Speichereinrichtung mit hoher Speicherkapazität genutzt werden, die für Fahrzeug-/Automobilanwendungen qualifiziert ist. Es sollte angemerkt werden, dass die Speichermöglichkeit des FRAM 20 natürlich höher sein muss als die emulierten E/W-Zyklen der Flash-Speichereinrichtung 18, andernfalls ist die Lebensdauer der emulierten Flash-Speichereinrichtung auf die Dauer der maximalen Anzahl von E/W-Zyklen des FRAM beschränkt.
  • Es ist außerdem vorgesehen, dass die Gesamtanzahl von System-Leistungszyklen gespeichert sein kann, ohne den Adressbereich zu speichern, wobei der Adressbereich jedes Mal, wenn er benötigt wird, abhängig von der Gesamtanzahl von System-Leistungszyklen, die stattgefunden haben, berechnet werden kann. Es ist außerdem vorgesehen, die auf den Flash-Speicher gerichtete Technik bei dem FRAM-Speicher zu verwenden, um seine Funktionsweise ebenfalls zu erweitern.
  • Die vorliegende Erfindung schafft vorteilhaft eine kostengünstige Einrichtung mit hoher Speicherkapazität, die die strengen Anforderungen der Fahrzeugumgebung erfüllt.
  • Während diese Erfindung in Bezug auf wenigstens eine Ausführungsform beschrieben wurde, kann die vorliegende Erfindung innerhalb des Erfindungsgedanken und Umfangs dieser Offenbarung weiter modifiziert werden. Es ist deswegen vorgesehen, dass diese Anmeldung alle Variationen, Verwendungsarten oder Adaptionen der Erfindung unter Verwendung ihrer allgemeinen Prinzipien abdeckt. Es ist ferner vorgesehen, dass diese Anmeldung die Abweichungen von der vorliegenden Offenbarung abdeckt, die in der Technik, die diese Offenbarung betrifft, bekannte oder übliche Praxis sind und die in die Begrenzungen der angefügten Ansprüche fallen.

Claims (15)

  1. Verfahren (100) zur Speicherverwaltung, gekennzeichnet durch die folgenden Schritte: Speichern eines Wertes, der eine Anzahl von Lösch/Schreib-Zyklen darstellt, denen eine Teilmenge des Speicherraums eines ersten Speichers (18) unterzogen wurde, wobei der erste Speicher (18) eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweist; und Schreiben von Daten in die Teilmenge des Speicherraums in Abhängigkeit davon, ob der Wert unter der im Voraus festgelegten maximalen Anzahl liegt.
  2. Verfahren (100) nach Anspruch 1, dadurch gekennzeichnet, dass der Wert in einem zweiten Speicher (20) gespeichert ist, der eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweist, die größer als die im Voraus festgelegte maximale Anzahl des ersten Speichers (18) ist.
  3. Verfahren (100) nach Anspruch 1 oder 2, gekennzeichnet durch den Schritt Speichern eines Wertes, der eine Speicherstelle des ersten Speichers (18) darstellt, an der Daten gegenwärtig gespeichert werden.
  4. Verfahren (100) nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass der Wert, der eine Speicherstelle darstellt, in dem zweiten Speicher (20) gespeichert ist.
  5. Verfahren (100) nach einem der Ansprüche 1 bis 4, gekennzeichnet durch den Schritt Speichern eines Offset-Wertes, der verwendet wird, um eine Speicherstelle des ersten Speichers (18), an der Daten gespeichert werden können, zu bestimmen.
  6. Verfahren (100) nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass der Offset-Wert in dem zweiten Speicher (20) gespeichert ist.
  7. Verfahren (100) nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass der Schreibschritt das Schreiben von Daten in eine neue Teilmenge des Speicherraums enthält, wenn der Wert gleich der im Voraus festgelegten maximalen Anzahl oder größer als diese ist, wobei das Verfahren in einer eingebetteten Steuereinheit eines Fahrzeugs (10) verwendet wird.
  8. Elektrisches Steuersystem, das Folgendes umfasst: eine Steuereinheit (14) mit einer Mikrosteuereinheit (16), einem ersten Speicher (18) und einem zweiten Speicher (20), wobei der erste Speicher (18) und der zweite Speicher (20) mit der Mikrosteuereinheit (16) verbunden sind, dadurch gekennzeichnet, dass die Steuereinheit (14) ein Verfahren (100) zur Speicherverwaltung nach einem der Ansprüche 1 bis 7 verwendet.
  9. Elektrisches Steuersystem nach Anspruch 8, wobei das elektrische Steuersystem in einem Fahrzeug (10) angeordnet ist.
  10. Energieverbrauchseinrichtung (12), gekennzeichnet durch: wenigstens eine Leistungsmesseinrichtung, die wenigstens einen Messwert erzeugt; eine erste Speichereinrichtung (18); eine zweite Speichereinrichtung (20); und eine Steuereinheit (14), die mit der Energieverbrauchseinrichtung (12) zum Datenaustausch verbunden ist, wobei die Steuereinheit (14) mit der ersten Speichereinrichtung (18) und der zweiten Speichereinrichtung (20) verbunden ist, wobei der wenigstens eine Messwert an einer ausgewählten Stelle in der ersten Speichereinrichtung (18) gespeichert wird, wobei die erste Speichereinrichtung (18) eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweist, wobei die ausgewählte Stelle zu einer neuen ausgewählten Stelle geändert wird, nachdem die ausgewählte Stelle einer Zahl der Lösch/Schreib-Zyklen unterzogen wurde, die gleich der im Voraus festgelegten maximalen Anzahl von Lösch/Schreib-Zyklen ist, wobei die zweite Speichereinrichtung (20) den Zählerstand enthält.
  11. Energieverbrauchseinrichtung (12) nach Anspruch 10, dadurch gekennzeichnet, dass die zweite Speichereinrichtung (20) eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweist, die die im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen der ersten Speichereinrichtung (18) übersteigt.
  12. Energieverbrauchseinrichtung (12) nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass die zweite Speichereinrichtung (20) eine zugewiesene im Voraus festgelegte maximale Anzahl von Lösch/Schreib-Zyklen aufweist, die mehr als das Zehnfache der im Voraus festgelegten maximalen Anzahl von Lösch/Schreib-Zyklen der ersten Speichereinrichtung (18) ist.
  13. Energieverbrauchseinrichtung (12) nach einem der Ansprüche 10 bis 12, dadurch gekennzeichnet, dass ein Stellenwert, der die ausgewählte Stelle darstellt, gespeichert ist.
  14. Energieverbrauchseinrichtung (12) nach Anspruch 13, dadurch gekennzeichnet, dass der Stellenwert, der eine Speicherstelle darstellt, in der zweiten Speichereinrichtung (20) gespeichert ist.
  15. Energieverbrauchseinrichtung (12) nach einem der Ansprüche 10 bis 14, dadurch gekennzeichnet, dass ein Offset-Wert in der zweiten Speichereinrichtung (20) gespeichert ist, wobei der Offset-Wert verwendet wird, um eine Speicherstelle der ersten Speichereinrichtung (18) zu bestimmen, an dem der wenigstens eine Messwert gespeichert ist, wobei die Energieverbrauchseinrichtung (12) eingerichtet ist, um ein Fahrzeug (10) anzutreiben.
DE102012203713A 2011-03-10 2012-03-08 Verfahren und Vorrichtung zur Verlängerung der Lebensdauer von Speichern Pending DE102012203713A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/044,614 2011-03-10
US13/044,614 US8909850B2 (en) 2011-03-10 2011-03-10 Memory life extension method and apparatus

Publications (1)

Publication Number Publication Date
DE102012203713A1 true DE102012203713A1 (de) 2012-09-13

Family

ID=46705628

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012203713A Pending DE102012203713A1 (de) 2011-03-10 2012-03-08 Verfahren und Vorrichtung zur Verlängerung der Lebensdauer von Speichern

Country Status (2)

Country Link
US (1) US8909850B2 (de)
DE (1) DE102012203713A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015223834A1 (de) * 2015-12-01 2017-06-01 Bayerische Motoren Werke Aktiengesellschaft Elektronisches Steuergerät, Fortbewegungsmittel sowie Verfahren zur Verwendung eines beschreibbaren Speichermittels

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9081665B2 (en) * 2012-02-02 2015-07-14 OCZ Storage Solutions Inc. Apparatus, methods and architecture to increase write performance and endurance of non-volatile solid state memory components
KR102374668B1 (ko) 2015-08-31 2022-03-17 삼성전자주식회사 전력 공급 중단의 경향에 따라 불휘발성 메모리를 다르게 관리하는 스토리지 장치
US11206171B2 (en) * 2017-11-07 2021-12-21 Calamp Corp. Systems and methods for dynamic device programming
KR102513941B1 (ko) 2018-06-19 2023-03-27 현대자동차주식회사 자율 주행 제어 장치, 그를 가지는 차량 및 그 제어 방법
US11238904B1 (en) 2020-11-24 2022-02-01 Taiwan Semiconductor Manufacturing Company Limited Using embedded switches for reducing capacitive loading on a memory system
US12014080B2 (en) 2021-11-10 2024-06-18 Samsung Electronics Co., Ltd. Memory system using host memory buffer and operation method thereof

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0671891B2 (ja) * 1983-06-24 1994-09-14 株式会社小松製作所 履帯式トラクタの制御装置
US4771851A (en) * 1986-10-15 1988-09-20 J. I. Case Company Steering control system for articulated vehicle
US5485595A (en) 1993-03-26 1996-01-16 Cirrus Logic, Inc. Flash memory mass storage architecture incorporating wear leveling technique without using cam cells
JPH08137634A (ja) 1994-11-09 1996-05-31 Mitsubishi Electric Corp フラッシュディスクカード
JPH1011878A (ja) 1996-06-28 1998-01-16 Toshiba Corp ディスク装置及び同装置におけるモニター値保存制御方法
US6049856A (en) * 1997-05-27 2000-04-11 Unisys Corporation System for simultaneously accessing two portions of a shared memory
US6779168B2 (en) * 2002-02-01 2004-08-17 Lsi Logic Corporation Magnetoresistive memory for a complex programmable logic device
JP4199519B2 (ja) * 2002-11-05 2008-12-17 パナソニック株式会社 メモリ管理装置及びメモリ管理方法
US20050055495A1 (en) * 2003-09-05 2005-03-10 Nokia Corporation Memory wear leveling
US8185705B2 (en) * 2003-10-31 2012-05-22 Panasonic Corporation Information recording medium, information recording medium accessing apparatus and accessing method
JP4308691B2 (ja) * 2004-03-19 2009-08-05 富士通マイクロエレクトロニクス株式会社 半導体基板および半導体基板の製造方法
US7398181B2 (en) 2004-06-02 2008-07-08 Hewlett-Packard Development Company, L.P. Method for retrieving reliability data in a system
US7269685B2 (en) * 2004-09-02 2007-09-11 Micron Technology, Inc. Apparatus and methods for storing data in a magnetic random access memory (MRAM)
US20060092003A1 (en) * 2004-10-15 2006-05-04 Scott Gardner Bulkhead proximity monitoring system
US8327068B2 (en) * 2005-03-03 2012-12-04 Panasonic Corporation Memory module, memory controller, nonvolatile storage, nonvolatile storage system, and memory read/write method
US7873683B2 (en) * 2005-07-01 2011-01-18 Qnx Software Systems Gmbh & Co. Kg File system having transaction record coalescing
KR101257848B1 (ko) * 2005-07-13 2013-04-24 삼성전자주식회사 복합 메모리를 구비하는 데이터 저장 시스템 및 그 동작방법
US7167395B1 (en) * 2005-07-13 2007-01-23 Infineon Technologies Flash Gmbh & Co. Kg Non-volatile semiconductor memory
US7426618B2 (en) * 2005-09-06 2008-09-16 Dot Hill Systems Corp. Snapshot restore method and apparatus
JP2007080325A (ja) * 2005-09-12 2007-03-29 Matsushita Electric Ind Co Ltd 半導体記憶装置
US8261133B1 (en) * 2006-08-04 2012-09-04 Oracle America, Inc. Protection and recovery of non-redundant information stored in a memory
US8019929B2 (en) * 2006-09-13 2011-09-13 Rohm Co., Ltd. Data processing apparatus and data control circuit for use therein
JP5032172B2 (ja) * 2007-03-28 2012-09-26 株式会社東芝 統合メモリ管理装置及び方法並びにデータ処理システム
US7913032B1 (en) * 2007-04-25 2011-03-22 Apple Inc. Initiating memory wear leveling
KR100909902B1 (ko) * 2007-04-27 2009-07-30 삼성전자주식회사 플래쉬 메모리 장치 및 플래쉬 메모리 시스템
US7865761B1 (en) * 2007-06-28 2011-01-04 Emc Corporation Accessing multiple non-volatile semiconductor memory modules in an uneven manner
US8140739B2 (en) * 2008-08-08 2012-03-20 Imation Corp. Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store files having logical block addresses stored in a write frequency file buffer table
US8327066B2 (en) * 2008-09-30 2012-12-04 Samsung Electronics Co., Ltd. Method of managing a solid state drive, associated systems and implementations
US8040744B2 (en) * 2009-01-05 2011-10-18 Sandisk Technologies Inc. Spare block management of non-volatile memories
US8113033B2 (en) * 2009-06-08 2012-02-14 Cnh America Llc Method to calibrate a flow balance valve on a windrower draper header
JP4988007B2 (ja) * 2010-05-13 2012-08-01 株式会社東芝 情報処理装置およびドライバ
US8990538B2 (en) * 2010-11-05 2015-03-24 Microsoft Corporation Managing memory with limited write cycles in heterogeneous memory systems
JP5641900B2 (ja) * 2010-11-29 2014-12-17 キヤノン株式会社 管理装置及びその制御方法、並びにプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015223834A1 (de) * 2015-12-01 2017-06-01 Bayerische Motoren Werke Aktiengesellschaft Elektronisches Steuergerät, Fortbewegungsmittel sowie Verfahren zur Verwendung eines beschreibbaren Speichermittels

Also Published As

Publication number Publication date
US8909850B2 (en) 2014-12-09
US20120232744A1 (en) 2012-09-13

Similar Documents

Publication Publication Date Title
DE102012203713A1 (de) Verfahren und Vorrichtung zur Verlängerung der Lebensdauer von Speichern
DE60030876T2 (de) Bereichsverwaltung eines nichtflüchtigen Speichers mit hoher Kapazität
DE102008057219B4 (de) Verfahren zum Betreiben eines Solid-State-Speichersystems, Solid-State-Speichersystem und Computersystem
DE102005037037B4 (de) Speicheranordnung und Verfahren zum Betreiben der Speicheranordnung
DE112010003650B4 (de) Container-Markierungsschema zum Verringern einer Schreibverstärkung bei Halbleiter-Einheiten
DE69533570T2 (de) Verfahren und System zum Erkennen von Datenverlust in einem hierarchischen Datenspeichersystem
DE102009034651A1 (de) Prozess und Verfahren zur Abbildung von logischen Adressen auf physische Adressen in Festkörperplatten
EP2401680B1 (de) Verfahren zur verwaltung von flashspeichern mit gemischten speichertypen
DE112014004761T5 (de) Beeinflussung des Wear-Leveling in Speichersystemen
DE102006036070B4 (de) Ladungsfallenspeichervorrichtung und Verfahren für deren Herstellung und Betrieb
DE102018105773A1 (de) Handhabung einer thermischen Abschaltung für Speichervorrichtungen
DE102005034611A1 (de) Speichersystem und zugehörige Betriebs- und Blockverwaltungsverfahren
DE102006003261A1 (de) Speichersystem und Verfahren zur Datenzusammenführung
DE102005031525A1 (de) Verfahren und System zur Steuerung eines Flashspeichers und Speichersystem
DE102009046444A1 (de) An die Software angepasste Abnutzungsausgleichung
DE102009048179A1 (de) Prozess und Verfahren für eine Löschstrategie in Festkörperplatten
DE102012208141A1 (de) Ausgleich nachlassender Funktionsfähigkeit
EP2215636B1 (de) VERFAHREN ZUR GLEICHMÄßIGEN NUTZUNG MEHRERER FLASHSPEICHERCHIPS
DE112020000230T5 (de) Datenspeichervorrichtung mit dynamischem streifenlängenmanager
DE102009033961A1 (de) Emulation eines einmal programmierbaren Speichers
DE102014101185A1 (de) Verfahren zur Verwaltung von Flash-Speichern mit gemischten Speichertypen unter Verwendung einer fein-granulierten Zuordnung logischer auf physikalische Speicheradressen
DE102017103214A1 (de) Verfahren und Vorrichtungen zur Verwaltung eines nichtflüchtigen digitalen Informationsspeichers
DE102012101405B4 (de) Steuervorrichtung zum Steuern eines Datenlesens und - schreibens von und zu einem Flash-Speicher
DE102014100800A1 (de) Verfahren zur zuverlässigen Adressierung eines großen Flash-Speichers
DE10321104B4 (de) Verfahren zur Ablage von veränderlichen Daten

Legal Events

Date Code Title Description
R163 Identified publications notified
R163 Identified publications notified

Effective date: 20130408

R012 Request for examination validly filed