Sub-Page Mapping

Stabilere Flash-Speicher in industriellen Anwendungen

Seite: 2/3

Anbieter zum Thema

Möglichkeiten zur Verringerung des Write Amplification Factors

Ablauf eines Random Write in einen Sektor eines Block-Managed Flash-Speichers.
Ablauf eines Random Write in einen Sektor eines Block-Managed Flash-Speichers.
(Bild: swissbit)

Das Verhältnis der in Flash-Zellen geschriebenen Datenmenge zu den vom Host geschriebenen Daten nennt sich Schreibverstärkung oder Write Amplification Factor (WAF). Typische Blockgrößen belaufen sich bei Single-Level Cell (SLC) Flash auf 1 MByte und bei Multi-Level Cell (MLC) auf 4 MByte. Nutzt die Firmware ein blockbasiertes Mapping, so führt etwa jedes Schreiben eines 4 KByte Sektors bei SLC Flash zum Schreiben eines 1 MByte-Blocks und anschließenden Löschens des nicht mehr benötigten Blocks. Bei MLC Flash beträgt die Blockgröße 4 MByte. Damit errechnet sich der Worst-Case WAF zu 256 bei SLC und zu 1024 bei MLC – Garbage Collection nicht berücksichtigt.

Der hohe WAF verursacht im Flash wesentlich häufigere Schreib-/Löschzyklen als aus der externen Datenmenge zu erwarten ist. Dies reduziert die Lebensdauer der Speicherkarte massiv. Sollen kostengünstige MLC Flash-Karten in industriellen Anwendungen mit zahlreichen Random-Write-Operationen Verwendung finden, muss also der WAF zwingend reduziert werden.

Solid-State-Drives (SSDs) verwenden Page-basierte Mappings. Sie erlauben, dass ein logischer Sektor auf eine beliebige physikalische Page geschrieben werden kann. Eine zufällige Abfolge von logischen Sektoren wird so sequentiell in einen einzigen Flash-Block abgelegt, was den WAF stark verringert. Die Random-Write-Zykluszeiten sind zudem kürzer.

Ein Nachteil ist, dass die Mapping Tabellen wesentlich mehr Einträge benötigen und das Auffinden der physikalischen Page über eine mehrstufige Suche erfolgen muss. Bild 2 illustriert den Zusammenhangzwischen der Größe der Mapping-Tabelle und der Write-Effizienz in Block- und Page-basierten FTLs.

SSD Controller handhaben die höhere Datenmenge, indem sie Mapping-Daten in einem angeschlossenen DRAM hält. Bei Stromausfall gehen diese Daten verloren. Es braucht zusätzliche Maßnahmen, um dem Datenverlust vorzubeugen. Hochleistungskondensatoren und Schutzschaltungen können bei einem Stromausfall die Versorgungsspannung lange genug aufrecht erhalten, um die Mapping-Daten in den Flash-Bereich zu schreiben. Der Platzbedarf für solche Lösungen und die Zusatzkosten sowie die Lebensdauerrisiken machen diesen Ansatz bei Speicherkarten jedoch unmöglich.

Page-basiertes Mapping sorgen für eine längere Lebensdauer sowie mehr Flexibilität bei der Unterstützung unterschiedlicher Einsatzmodi. Bild 3 beschreibt die Verbesserungen hinsichtlich der Zuverlässigkeit, die sich durch Page-basiertes Mapping im Vergleich zu einem blockbasierten Ansatz bei SD-Flash-Karten erzielen lassen.

(ID:44218102)