Read Disturbance

Einführung

NAND Flash-Speicher sind eine weit verbreitete Form von Speichermedien, mit umfassendem Einsatz in mobilen Geräten von kleinsten Formfaktoren bis hin zu Datencenter-Speichern. Da jedoch moderne Flash-Zellen kontinuierlich verkleinert werden, wird das Problem der Lesestörung zu einem der Hauptfaktoren für die Zuverlässigkeit von NAND Flash-Speichern. Einfach gesagt tritt Read Disturbance dann auf, wenn eine große Menge von Lesevorgängen innerhalb des gleichen Blocks auf derselben Page ausgeführt werden und sich dadurch die digitalen Werte von Zellen in der Nähe dieser gelesenen Zellen ändern.

Wie passiert Read Disturbance?

Jede Flash-Zelle besitzt einen Transistor mit sogenanntem “Floating Gate”. Jede Zelle ist mittels eines Steuer-Anschlusses mit einer Reihe anderer Flash-Zellen, sowie einem Aus- und Eingang und anderen Nachbarzellen verbunden. Das “Floating Gate” befindet sich sehr dicht an den Steuereingängen. Wie Abbildung 1 zeigt, entscheidet die Anzahl der Elektronen im “Floating Gate” darüber, wie hoch der Widerstand des Transistors ist.

Um herauszufinden, ob Elektronen/Informationen im “Floating Gate” vorhanden sind, muss die Speicherverwaltung immer einen kompletten Datensatz auswerten. Zum Lesen der Informationen in einer einzelnen Speicherzelle muss auch die Spannung in den Nachbarzellen erhöht werden (grün markiert). Währenddessen wird für die einzeln ausgewählte Zelle gelesen, welche und wie viele Informationen gespeichert sind und welche Informationen vorhanden sein müssten.

Die Erhöhung der Spannung in den angrenzenden Zellen geschieht auch, wenn diese nicht ausgelesen werden. Durch diese Spannungsveränderungen können die einzelnen Elektronen dann verändert werden. In Folge dessen besteht die Gefahr, dass Daten in den Zellen mit der Zeit verändert oder gar gelöscht werden. Dieses Phänomen nennt sich „Read Disturbance“ und ist irreversibel.

Transcends Lösung

Read Disturbance kann durch die Minimierung übermäßiger Lesezugriffe reduziert werden. Transcend bietet drei verschiedene Lösungen an, um diese Problem zu lösen:

  1. Wear Leveling Algorithmus: 
Vereinfacht gesagt sorgt der Wear Leveling Algorithmus dafür, dass gelöschte Blöcke zusammengefasst werden und der Block mit der niedrigsten Lösch-Rate für den nächsten Schreibprozess zur Verfügung gestellt wird. Die Schreiblast wird so optimal verteilt und möglichst gleichmäßig auf das ganze Speichermedium angewendet.
  2. Early move: 
Diese Funktion erkennt und korrigiert potenzielle Datenfehler, noch bevor die Grenze des ECC (Error Correction Code) erreicht ist. Wenn Fehlerbits in einem Block einen solchen Schwellenwert erreichen, werden die entsprechenden Daten in einen anderen Block verschoben und der ursprüngliche Block gelöscht. (Hinweis: Manche Produkte unterstützen dieses Feature nicht.)
  3. Read retry:
Diese Funktion wurde für Flashspeicher entwickelt, um, basierend auf einer Referenzspannung, die Spannungslevel für Lesevorgänge so zu optimieren, dass Lesefehler durch wiederholtes Lesen minimiert werden können.

Sie haben bereits Cookies akzeptiert, können Ihre Zustimmung dazu jedoch jederzeit widerrufen. Weitere Details dazu erhalten Sie in der Cookie-Erklärung. Einstellungen anpassen

Sie haben bereits Cookies abgelehnt, können Ihre Zustimmung dazu jedoch jederzeit erteilen. Weitere Details dazu erhalten Sie in der Cookie-Erklärung. Einstellungen anpassen