Offenbarung
der Erfindung
Die
vorliegende Erfindung betrifft ein Verfahren mit den Merkmalen des
Patentanspruchs 1, eine Vorrichtung mit den Merkmalen des Patentanspruchs
12, eine Speichereinrichtung mit den Merkmalen des Patentanspruchs
13, ein Computerprogramm mit den Merkmalen des Patentanspruchs 14
und ein Computerprogrammprodukt mit den Merkmalen des Patentanspruchs
15.
Bei
blockorientierten Speichereinrichtungen oder Dateisystemen, für die das
Verfahren anwendbar ist, ist ein Speicherbereich üblicherweise
in bspw. logische Blöcke
gleicher Größe unterteilt.
Blöcke
können
unterschiedliche Zustände
annehmen, wie bspw. frei oder belegt. Blöcke enthalten mindestens eine
Verwaltungsinformation, die nicht notwendigerweise mit den Daten
zusammen abgelegt werden muss. Dabei können die Daten in verketteten
Listen von Blöcken
abgelegt werden. Jede verkettete Liste besteht aus mindestens einem Block.
In der Regel ist keine feste Zuordnung von Daten und Speicherbereichen
auf dem Medium vorgesehen, so dass die Daten immer wieder in unterschiedlichen
Blöcken
an unterschiedlichen Positionen abgespeichert werden. Dadurch wird
die Speichereinrichtung gleichmäßiger belastet,
als dies bei einer festen Zuordnung von Daten zu Blöcken bzw.
Speicherbereichen der Fall ist. Vor dem Schreiben von Daten ist
es erforderlich, nach freien bzw. leeren Blöcken zu suchen. Bei der Suche
nach den freien Blöcken
sollten keine defekten Blöcke ausgewählt werden.
Insgesamt sollte jedoch immer eine möglichst große Anzahl an freien Blöcken zur
Verfügung
stehen.
Bei
Ausführung
des erfindungsgemäßen Verfahrens
zum Betreiben einer Speichereinrichtung, die eine Anzahl Blöcke aufweist,
wird einem Speicherbereich, also mindestens einer Speicherzelle,
eines Blocks nach Durchführung
einer Löschoperation,
die von einer Schreiboperation getrennt ist, ein erstes Bitmuster
zugeordnet. Im Fall eines Umkippens von mindestens einem Bit innerhalb
dieses Speicherbereichs kann für
diesen Block eine Zustandsänderung
erkannt werden.
Weitere
Ausführungsformen
des Verfahrens ergeben sich aus den abhängigen Ansprüchen.
Die
erfindungsgemäße Vorrichtung
zum Betreiben einer Speichereinrichtung, die eine Anzahl Blöcke aufweist,
ist dazu ausgebildet, einem Speicherbereich, also mindestens einer
Speicherzelle, eines Blocks nach Durchführung einer Löschoperation,
die von einer Schreiboperation getrennt ist, ein Bitmuster zuzuordnen,
so dass für
den Fall eines Umkippens von mindestens einem Bit innerhalb des
Speicherbereichs für
diesen Block eine Zustandsänderung
erkannt werden kann.
Die
Erfindung betrifft außerdem
eine Speichereinrichtung, die eine Anzahl Blöcke aufweist und dazu ausgebildet
ist, einem Speicherbereich, also mindestens einer Speicherzelle,
eines Blocks, nach Durchführung einer
Löschoperation,
die von einer Schreiboperation getrennt ist, ein Bitmuster zuzuordnen,
so dass für
den Fall eines Umkippens von mindestens einem Bit innerhalb des
Speicherbereichs für
diesen Block eine Zustandsänderung
erkannt werden kann.
Sämtliche
Schritte des erfindungsgemäßen Verfahrens
sind mit der erfindungsgemäßen Vorrichtung und
der erfindungsgemäßen Speichereinrichtung
durchführbar.
Zwischen der erfindungsgemäßen Vorrichtung und
der erfindungsgemäßen Speichereinrichtung
kann eine Wechselwirkung bestehen. In möglichen Ausführungsformen
der Erfindung kann die Vorrichtung als eine Komponente der Speichereinrichtung
oder die Speichereinrichtung als eine Komponente der Vorrichtung
ausgebildet sein.
Das
erfindungsgemäße Computerprogramm
mit Programmcodemitteln ist dazu ausgebildet, alle Schritte eines
erfindungsgemäßen Verfahrens
durchzuführen,
wenn das Computerprogramm auf einem Computer oder einer entsprechenden
Recheneinheit, insbesondere einer erfindungsgemäßen Vorrichtung, ausgeführt wird.
Die
Erfindung betrifft des weiteren ein Computerprogrammprodukt mit
Programmcodemitteln, die auf einem computerlesbaren Datenträger gespeichert
sind, um alle Schritte eines erfindungsgemäßen Verfahrens durchzuführen, wenn
das Computerprogramm auf einem Computer oder einer entsprechenden
Recheneinheit, insbesondere einer erfindungsgemäßen Vorrichtung, ausgeführt wird.
Bei
Durchführung
des erfindungsgemäßen Verfahrens
wird ein Block durch Einführung
eines neuen Zustands als gelöscht
klassifiziert und entsprechend markiert, indem der mindestens einen
Speicherzelle des Blocks der erste von zwei möglichen Bitwerten bzw. Bits
zugeordnet wird. Die Löschoperation
für einen
bisherigen Inhalt des Blocks wird separat von einer Schreiboperation
für einen
neuen Inhalt dieses Blocks ausgeführt, so dass Lösch- und
Schreiboperationen, insbesondere zeitlich unabhängig und getrennt voneinander und
nicht wie ansonsten üblich
automatisch oder unmittelbar nacheinander durchgeführt werden.
Blöcke
weisen in der Regel mehrere Speicherzellen auf, mindestens ein Block
kann zur Speicherung insbesondere eines insbesondere nicht-flüchtigen
Datums verwendet werden, dieses Datum kann durch inhaltliche Veränderung von
Speicherzellen des mindestens einen Blocks gespeichert und gelöscht werden.
Das
Verfahren bietet sich insbesondere für eine Speichereinrichtung
an, bei der die Wahrscheinlichkeit, dass der erste Bitwert durch
Umkippen zu dem zweiten Bitwert wird, größer ist als die Wahrscheinlichkeit, dass
der zweite Bitwert durch Umkippen zu dem ersten Bitwert wird.
Durch
eine derartige separate Ausführung
der Löschoperation,
der Schreiboperation und einer Zuweisung des neuen Zustands "gelöscht" können insbesondere
sog. speicherbedingte Zustandsänderungen
des Blocks, die in der Regel durch physikalische Einflüsse verursacht
werden, besser erkannt werden, indem der mindestens einen Speicherzelle
des Blocks der erste Bitwert zugeordnet wird. Eine Markierung des
Blocks als gelöscht
bzw. eine Zuweisung des Zustands "gelöscht" im Zusammenhang
mit der Löschoperation,
kann nach, insbesondere unmittelbar nach, der Löschoperation und somit an diese
anschließend
erfolgen. Bei Realisierung der Erfindung kann dies auch bedeuten,
dass die Zuweisung des Zustands "gelöscht" implizit mit dem Löschvorgang
und somit als Teil des Löschvorgangs
erfolgen kann.
Mit
der Erfindung ist es insbesondere bei blockorientierten Speichereinrichtungen
oder Dateisystemen, bspw. bei EEPROMs, möglich, die Lebensdauer derartiger
Speichereinrichtungen zu erhöhen
und somit eine Verfügbarkeit
eines Dienstes zur Verwaltung und/oder Speicherung bspw. nicht-flüchtiger
Daten zu verbessern. Das vorgestellte Verfahren verringert die Wahrscheinlichkeit,
dass physikalisch defekte Blöcke
zur Speicherung von Daten herangezogen werden. Außerdem kann
vermieden werden, dass physikalisch intakte Blöcke nicht zur Speicherung verwendet
werden.
Ein
Block einer Speichereinrichtung wird bei bekannten Vorgehensweisen
automatisch gelöscht,
wenn neue Daten in den Block geschrieben werden. Dabei werden der
Schreibvorgang und der Löschvorgang
gemeinsam bzw. miteinander gekoppelt ausgeführt.
Bei
der vorliegenden Erfindung ist dagegen für blockorientierte Speichereinrichtungen,
die bspw. als EEPROMs ausgebildet sind, unterstützt durch die Hardware und
Software vorgesehen, die Löschoperation bzw.
einen Löschvorgang
getrennt von der Schreiboperation bzw. einem Schreibvorgang auszuführen. Beide Operationen
sind somit zeitlich voneinander unabhängig. Ein anschließendes oder
späteres
Schreiben führt zu
der gleichen Belastung des entsprechenden Speicherbereichs wie ein
Schreibvorgang, der wie bei herkömmlichen
Vorgehensweisen einen Löschvorgang
umfasst.
Im
Fall der separaten Lösch-
und Schreiboperation wird ausgenutzt, dass der Block, ohne Einfluss
auf die Anzahl von Schreiboperationen oder -zugriffen, den weiteren
Zustand "gelöscht" annehmen kann. Dabei kann
eine Zuweisung dieses Zustands oder eine entsprechende Markierung
des Blocks bei Durchführung
des Löschvorgangs
erfolgen. Der gelöschte
Block kann entsprechend markiert werden. Dadurch kann eine bestimmte
Situation codiert werden. Der Zustand "gelöscht" wird durch ein bestimmtes
Bitmuster der mindestens einen Speicherzelle eines Speicherbereichs
oder sämtlicher
Speicherzellen des Blocks markiert und somit gekennzeichnet. Durch
Verwendung des zusätzlichen
Zustands "gelöscht" ist eine Verlängerung
der Lebensdauer der Speichereinrichtung oder eines entsprechenden
Mediums erreichbar. Dies ist dagegen nicht möglich, wenn die Lösch- und
Schreiboperation gemeinsam ausgeführt werden.
Die
Markierung mit dem neuen Zustand "gelöscht" sowie eine Trennung
der Lösch-
und Schreiboperation bei der Speichereinrichtung wird dazu eingesetzt,
die Wahrscheinlichkeit der richtigen Erkennung eines Status von
Blöcken
zu erhöhen.
Dazu werden die Rahmenbedingungen und eine Codierung von der Verwaltungsinformation
und von den Daten des jeweiligen Blocks bei Durchführung des
Verfahrens in geeigneter Weise angepasst.
Das
vorliegende Verfahren kann in möglicher
Ausgestaltung mit einer Vorgehensweise zur Erkennung defekter Blöcke ergänzt werden.
Gemäß dieser
Ausgestaltung des Verfahrens kann ein Block als intakt, in diesem
Fall ist der Block entweder frei oder belegt, markiert sein. Falls
es für
den Block zu der insbesondere speicherbedingten Zustandsänderung
kommt, wobei es sich hierbei um eine unbeabsichtigte oder ungewollte Zustandsänderung
handelt, die nicht durch ein Eingreifen eines Anwenders verursacht
wird, kann der Block des weiteren als defekt oder verdächtig markiert
werden. Diese Zustandsänderung
kann durch mindestens einen Fehler bedingt sein und sich durch das
Kippen mindestens eines Bits der mindestens einen Speichereinrichtung
automatisch bemerkbar machen. In Abhängigkeit einer Art oder einer
Häufigkeit
des Fehlers wird der Block entweder als verdächtig oder defekt eingestuft
und entsprechend klassifiziert. Eine explizite Markierung als verdächtig oder
defekt kann erfolgen.
Als
verdächtig
markierte oder erkannte Blöcke
können
hinsichtlich der weiteren Entwicklung beobachtet werden. Ein zumindest
ursprünglich
intakter Block kann hierbei nach Auftreten eines ersten Fehlers
als verdächtig
markiert werden. Ein Block kann gemäß dieser Vorgehensweise nur
nach zwei aufeinanderfolgenden Fehlern als defekt markiert werden,
wobei der zweite Fehler im Zustand verdächtig auftreten muss. Unter
Ausnutzung dieser Zustände
ist es möglich,
die Wahrscheinlichkeiten der richtigen Erkennung der Zustände der Blöcke zusätzlich zu
erhöhen.
Zur
Realisierung des Verfahrens liegt in einer nachfolgend beschriebenen
Ausführungsform
die Annahme zugrunde, dass das Verfahren für ein blockorientiertes Dateisystem
bzw. eine blockorientierte Speichereinrichtung mit einer Anzahl
Blöcken
angewendet wird. Jeder Block besteht aus Daten bzw. Nutzdaten und einer
Verwaltungsinformation, die Auskunft über einen Status und einen
Typ des Blocks liefert sowie einen Zeiger auf den nächsten Block
bereitstellt. Ferner können
Prüfdaten
eingesetzt werden. Durch Bestimmung derartiger Prüfdaten kann
für den
Block, bei dem mindestens ein Bit gekippt ist, überprüft werden, ob der Inhalt des
Blocks sich in dem Zustand befindet, der geschrieben worden ist. Über die
Prüfdaten
können
somit vermeintlich speicherbedingte Zustandsänderungen sowie durch eine
beabsichtigte Operation gezielt hervorgerufene Zustandsänderungen
erkannt werden.
Es
sei nunmehr angenommen, dass in der vorliegend beschriebenen Ausführungsform
der Zustand oder Status des Blocks durch die Codierung oder ein
Bitmuster der Speicherzellen codiert ist. Bei dem in der Ausführungsform
vorgestellten Verfahren ist ohne Beschränkung der Allgemeinheit vorgesehen,
dass die Speicherzellen die binären
Werte Eins ("1") und Null ("0") annehmen können. Bei anderen Ausführungen
der Erfindung können
den Speicherzellen beliebige geeignete Zeichen, die eindeutige,
vorzugsweise binäre
Werte darstellen, zugewiesen werden.
Ein
Datensatz besteht aus einem ersten Block und kann mehrere weitere
Blöcke
enthalten, was von der Länge
eines Datums abhängt.
In
der nachfolgenden Tabelle 1 sind Beispiele für Blöcke in unterschiedlichen Zuständen und
deren jeweilige Codierungen angeführt. Dabei umfasst in diesem
Ausführungsbeispiel
jede Codierung acht Speicherzellen, wobei die Codierung zur Festlegung
und/oder Markierung des Zustands des jeweiligen Blocks vorgesehen
ist.
Bei
den in Tabelle 1 dargestellten Beispielen sind bei dem freien und
somit gelöschten
Block sämtliche Werte
für die
Speicherzellen der Codierung Einsen. Bei dem ersten Block des Datensatzes
ist die erste Speicherzelle der Codierung eine Eins, die weiteren
Speicherzellen sind mit beliebigen Bitwerten belegt, mit Ausnahme
des Bitmusters für
freie Blöcke.
Bei einem verdächtigen
Block weist die erste Speicherzelle der Codierung eine Null auf,
die weiteren Speicherzellen sind Einsen. Eine erste Speicherzelle
einer Codierung eines weiteren Blocks des Datums ist eine Null,
die weiteren Speicherzellen sind beliebig, mit Ausnahme des Bitmusters
für verdächtige Blöcke.
Wenn
Blöcke
bei Durchführung
der Löschoperation
gelöscht
werden, was bedeutet, dass deren Inhalte und somit Daten gelöscht werden,
ist vorgesehen, dass insbesondere der ersten Speicherzelle der Codierung
eines jeweiligen Blocks der Wert Eins bzw. "1",
d. h. logisch1, zugeordnet bzw. zugewiesen wird. Eine derartige
Zuweisung oder Markierung kann automatisch oder implizit mit der
Löschoperation
oder zumindest unmittelbar nach der Löschoperation durchgeführt werden.
Durch diese Maßnahme
kann durch die Codierung der Zustand bzw. Status des Blocks markiert
und somit bei einer Überprüfung schnell
und zuverlässig
erkannt werden. Dieser ersten Speicherzelle zur Bestimmung des Status
des Blocks den Wert bzw. Bitwert "1" zuzuordnen
ist dann sinnvoll, wenn es wahrscheinlicher ist, dass ein Bitwert
innerhalb der Codierung eher von "1" in
den Zustand Null bzw. "0", d. h. logisch0
kippt als umgekehrt.
Außerdem kann
in der Codierung für
den Status codiert werden, ob es sich bei dem betreffenden Block um
einen ersten oder einen weiteren Block innerhalb des Datensatzes
handelt. Des weiteren befindet sich dort eine Codierung der ID,
unter der das Datum in der Speichereinrichtung gefunden werden kann.
Belegte
Blöcke
enthalten demnach an mindestens einer Speicherzelle, außer an der
ersten Speicherzelle, den Wert "logisch0". Diese belegten
Blöcke
können
in weiterer Ausgestaltung der Erfindung durch Bestimmung der Prüfdaten als
korrekt oder fehlerhaft erkannt werden.
Defekte
Blöcke
sehen aus wie verdächtige
Blöcke,
jedoch befindet sich bei der Codierung defekter Blöcke an mindestens
einer weiteren Speicherzelle der Wert bzw. Bitwert "0". Wenn ein Block als freier Block markiert
werden soll, wird er gelöscht.
So ist es möglich,
den zusätzlichen
Zustand "gelöscht" der Speichereinrichtung
durch die Trennung der Operationen Löschen und Schreiben auszunutzen.
Eine Markierung eines gelöschten
und somit freien Blocks erfordert keinen Schreibzugriff. Ein Schreibzugriff
erfolgt erst, wenn der gelöschte
Block wieder mit Daten beschrieben wird.
Da
es wahrscheinlicher ist, dass der Bitwert von "1" nach "0" kippt als umgekehrt, wird in einer
weiteren Ausgestaltung der Erfindung für die Codierung des freien
bzw. gelöschten
Blocks ein aus Einsen bestehendes Bitmuster "1 ... 1" gewählt.
Das Verfahren kann in Ausgestaltung auch die Möglichkeit umfassen, dass durch Bereitstellung
des Bitmusters, gemäß dem der
mindestens einen Speicherzelle der erste Bitwert zugeordnet und
somit der Block als gelöscht
markiert wird, die Löschoperation
automatisch erfolgt, so dass ein Markieren des Blocks als gelöscht auch
der Löschoperation
entsprechen oder diese umfassen kann. Somit wird einerseits erreicht,
dass mögliche
Speicherfehler erkannt werden können,
andererseits wird die Speichereinrichtung bzw. ein Medium geschont,
da zur Erkennung des Zustands kein Schreibzugriff erforderlich ist.
Auch
bei einem verdächtigen
Block können
Fehler mit hoher Wahrscheinlichkeit erkannt werden. Die Codierung
eines verdächtigen
Blockes unterscheidet sich nur durch eine Speicherzelle von der
Codierung eines freien Blocks. Dieses Bit an der den Zustand markierenden,
vorzugsweise ersten Speicherzelle der Codierung dient auch der Unterscheidung
eines ersten Blocks eines Datensatzes und der weiteren Blöcke für diesen
Datensatz.
Wenn
der Fehler an der den Zustand markierenden Speicherzelle der Codierung
des freien Blocks auftritt, kann dieser zu einem verdächtigen
Block werden. Wenn der Fehler an dieser den Zustand markierenden Speicherzelle
bei einem verdächtigen
Block auftritt, kann dieser Block ohne Probleme für jeden
Block eines Datensatzes mit Ausnahme des ersten Blocks verwendet
werden. Die Unterscheidung der Codierung des ersten und aller weiteren
Blöcke
wird so gewählt,
dass mit viel größerer Wahrscheinlichkeit
aus einem ersten Block in einer Liste ein weiterer Block werden
kann, als dass aus einem weiteren Block ein erster Block wird.
Bei
einer weiteren vorteilhaften Ausgestaltung des Verfahrens können Codierungen
in Tabelle 1 für
andere Zustände
verwendet werden. Bspw. ist der nur aus "0" bestehende
Status bei bestimmten Speichern gut zur Markierung defekter Blöcke geeignet.
Bei
Speichereinrichtungen oder Dateisystemen dieser Art ist neben den
für einen
Anwender sichtbaren Funktionen, wie Lesen, Schreiben und Löschen, eine
weitere Funktion zum Bereinigen der Speichereinrichtung vorgesehen.
Diese Funktion umfasst zum Beispiel eine Freigabe unvollständiger Ketten
und ein Markieren verdächtiger
Blöcke.
Bei allen erwähnten
Operationen kann es erforderlich sein, den Status von Blöcken erkennen
oder markieren zu müssen.
Eine genaue Vorgehensweise zur Realisierung der Erfindung kann von nicht-funktionalen Anforderungen
an das System abhängen.
Anhand
einer Gewichtung der nicht-funktionalen Anforderungen kann das Verfahren
im Detail festgelegt werden. Insbesondere kann festgelegt werden,
zu welchen Zeitpunkten und bei welchen Operationen welche Typen
von Blöcken
wie markiert werden und welche Typen von Blöcken zum Speichern von Daten
verwendet werden dürfen.
Eine Markierung für
die mindestens eine Speicherzelle einer jeweiligen Codierung, wobei
durch diese mindestens eine Speicherzelle der Status des Blocks
angezeigt wird, ist je nach Anwendung derart gewählt, dass, insbesondere unter
Berücksichtigung
von Bitkippern und abgebrochenen Lösch- und Schreibvorgängen, Blöcke, die
aufgrund der insbesondere speicherbedingten Zustandsänderung
defekt sind, mit hoher Wahrscheinlichkeit als defekt und intakte
Blöcke
als intakt erkannt werden.
Im
allgemeinen kann die Ursache für
einen fehlerhaften Speicherinhalt nicht mit hundertprozentiger Sicherheit
erkannt werden. Bei Fehlern kann es sich zum Beispiel um physikalische
Fehler in der Speicher-Hardware oder um nicht abgeschlossene Schreibvorgänge, die
durch Spannungsunterbrechungen oder Resets verursacht sind, handeln.
Dennoch wird bei der Erkennung eines Speicherfehlers häufig entweder
der entsprechende Block als defekt markiert und nicht wieder verwendet
oder aber der Fehler wird ignoriert und der Block weiterverwendet.
Bei einer Ausgestaltung des vorliegenden Verfahren können Blöcke als
gelöscht und
somit als frei sowie des weiteren als intakt, als verdächtig und
als defekt markiert werden. Auf diese Weise ist es möglich, eine
Verfügbarkeit
gespeicherter oder zu speichernder Daten zu erhöhen.
Das
Verfahren kann ebenfalls eine Strategie zur Wiederbelebung oder
Reaktivierung von verdächtigen Blöcken umfassen.
Es gibt verschiedene Aspekte für
diese Strategie, bspw. eine Wiederbelebung bei Bedarf, nach einer
gewissen Zeit und/oder nach bestimmten Vorgaben, wonach bspw. nur
eine benötigte
Anzahl von Blöcken
oder alle verdächtigen,
nicht defekten Blöcke
wiederbelebt werden. Eine bestimmte Ausgestaltung dieser Strategie
hängt ebenfalls
von den nicht-funktionalen Anforderungen an die Speichereinrichtung
ab. Ein Beispiel für
eine Gewichtung nicht-funktionaler Anforderungen kann umfassen,
dass darüber
eine Entscheidung getroffen wird, ob die Datensicherheit oder die
Lebensdauer der Speichereinrichtung wichtiger ist. Eine mögliche Frage
hierzu wäre,
ob ein Datenverlust mit der Konsequenz, dass ein geschriebenes Datum
nicht gelesen werden kann, oder ein Speicherverlust mit der Konsequenz,
dass eine Speicherzelle fälschlicherweise als
defekt erkannt wird, eher akzeptabel ist.
In
Abhängigkeit
von der verwendeten Hardware und Software können inverse Vorraussetzungen
gegeben sein: Der gelöschte
Zustand der Speicherzelle entspricht "0" und
die Wahrscheinlichkeit von Bitkippern von "0" nach "1" ist größer als von "1" nach "0".
Dies erfordert lediglich eine andere, insbesondere inverse, Codierung
oder Auslegung des Bitmusters der mindestens einen Speicherzelle.
Dementsprechend sind die anderen Markierungen zur Erkennung der
weiteren voranstehend beschriebenen Zustände zu verändern. Dadurch bleibt das Verfahren
an sich unverändert.
Die
Codierung kann bspw. hinsichtlich eines Aufbaus und/oder hinsichtlich
der Bestandteile der Verwaltungsinformation und Daten variieren.
Dies kann einen Status, also Typ und Zustand des Blocks, einen Verweis
auf einen nächsten
Block eines Datums und/oder eine Verwendung und Typen von Checksummen
sowie deren Anordnung betreffen. Des weiteren kann die Codierung
in Abhängigkeit
eines Typs der blockorientierten Speichereinrichtung variieren.
Es kann bspw. vorgesehen sein, die Verwaltungsinformation getrennt
von den Daten zu speichern. In einer hierzu alternativ ausgebildeten
Speichervorrichtung kann dagegen die Verwaltungsinformation mit
den Daten zusammen abgelegt werden.
Die
Erfindung kann in eingebetteten Systemen, bspw. Steuergeräten im Kfz,
die jeweils erfindungsgemäße Speichereinrichtungen
aufweisen und/oder mit diesen in Wechselwirkung stehen, eingesetzt
werden.
Durch
Ausnutzung der Verwendung des zusätzlichen Zustands "gelöscht", der durch die getrennte Ausführung der
Lösch-
und Schreiboperation bereitgestellt wird, kann eine Reduktion der
Anzahl der Schreibvorgänge
und eine Verlängerung
der Lebensdauer der Speichereinrichtung erreicht werden. Durch Verwendung
des beschriebenen Verfahrens kann die Verfügbarkeit bei bestimmten blockorientierten
EEPROM-Dateisystemen, bei denen Blöcke entweder als intakt, verdächtig oder
defekt markiert werden, erhöht
werden.
Weitere
Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der
Beschreibung und der beiliegenden Zeichnung.
Es
versteht sich, dass die vorstehend genannten und die nachstehend
noch zu erläuternden
Merkmale nicht nur in der jeweils angegebenen Kombination, sondern
auch in anderen Kombinationen oder in Alleinstellung verwendbar
sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.