Anbieter zum Thema
Stress beim Lesen und Datenpflege

Bezogen auf die Retention lässt sich sagen, dass Daten vor allem dann langfristig sicher sind, wenn möglichst wenig gelöscht und wiederbeschrieben wird. Doch es wäre falsch anzunehmen, dass ein Datenträger, der hauptsächlich gelesen wird, nicht altert.
Bei jedem Schreiben werden die Zellen in der Umgebung der zu programmierenden Zelle gestresst, d.h., sie weisen eine leicht erhöhte Spannung auf (Program Disturb). Auch das Lesen führt zu Stress (Read Disturb). Hier sind es die benachbarten Pages, die Ladung ansammeln. Mit der Zeit erhöht sich in diesen Zellen das gespeicherte Potential und es kommt zu Lesefehlern, die nach dem Löschen des Blocks wieder verschwinden.
Der Effekt ist durch die niedrigere Spannung beim Lesen geringer als beim Schreiben, doch auch hier tauchen Bit-Fehler auf, die vom Fehlerkorrekturverfahren (Error Correcting Code, ECC) ausgeglichen und durch ein Löschen des Blocks gelöst werden müssen. Zu bedenken ist dabei: Der Effekt ist besonders stark bei Anwendungen, die immer wieder dieselben Daten lesen. Auch im Inneren eines Speichers, der nur gelesen wird, müssen daher im Rahmen der Fehlerkorrektur regelmäßig Blöcke gelöscht und Pages geschrieben werden.
Die Bits in Form von Ladungsunterschieden in NAND-Zellen sind also permanent vom Verschwinden bedroht. Hersteller von Flash-Medien, die für Anwendungen in Maschinen, Industrieanlagen oder Fahrzeugen geeignet sein sollen, setzen deshalb auf Prozesse zum Erhalt der gespeicherten Daten. Eine Kombination verschiedener Mechanismen wie ECC Monitoring, Read Disturb Management und Auto Read Refresh stellt sicher, dass sämtliche gespeicherten Daten überwacht und falls nötig aufgefrischt werden. Damit lassen sich Systemausfälle schon im Vorfeld verhindern. Datenintegrität soll ohne Beteiligung der Hostapplikation garantiert werden, deshalb verlaufen diese Prozesse autonom innerhalb der Speicherkarte.
Zunächst dient die Fehlerkorrektur (ECC) als Auslöser, dass im Fall gehäufter Bitfehler beim Lesen der betroffene Block neu geschrieben und der fehlerhafte gelöscht wird. Dieser Mechanismus bedingt aber die Leseanfrage der Hostapplikation. Schleichende Korruption länger nicht gelesener Daten bleibt hier unbehandelt. Fortschrittliches Data Care Management sucht daher unabhängig von Anfragen durch die Applikationen nach potenziellen Fehlern. Dazu werden im Hintergrund alle beschriebenen Seiten inklusive Firmware und Zuordnungstabelle des FTL (Flash Translation Layer) gelesen und aufgefrischt.
Für diesen Prozess gibt es verschiedene Trigger. So kann er durch eine festgelegte Zahl des wiederholten Einschaltens ausgelöst werden, wobei der Prozess möglichst verzögert startet, um keinen Boot-Vorgang zu stören. Ein anderer Trigger ist abhängig von der Zahl durchgeführter P/E-Zyklen; am Anfang der Lebensdauer wird der Refresh nur selten gestartet, bei zunehmenden P/E-Zyklen verkürzt sich das Intervall zwischen den Refreshläufen immer mehr.
Um den Folgen des Read-Disturb-Effekts entgegenzuwirken, ist auch die gelesene Datenmenge ein Hinweis für den Controller, Daten in frische Blöcke umzukopieren. Ganz wichtige Auslöser sind Lesewiederholungen. Read-Retry-Mechanismen können Bits, die auf den ersten Versuch nicht erkannt wurden, durch eine schrittweise Erhöhung der Schwellwertspannung doch noch lesen. Dies gleicht Fehler aus, die durch Temperaturunterschiede beim Schreiben und Lesen zustande kommen, wird aber auch als Warnzeichen verstanden, da ja sowohl Alterungserscheinungen als auch der Read-Disturb-Effekte Lesefehler verursachen.
(ID:44498628)