Die Lebensdauer von Flash-Speicher für LabVIEW-Real-Time-Systeme verstehen

Überblick

In diesem Dokument werden die Auswirkungen einzelner Faktoren auf die Drive-Endurance-Formel erläutert, mit der berechnet wird, wie viele Daten auf ein LabVIEW-Real-Time-System (z. B. ein PXI/PXIe oder cRIO 9803) geschrieben werden können, bevor es unzuverlässig wird.

 

Die Auswahl des richtigen Flash-basierten Speichergeräts für Ihre Anwendung erfordert häufig einen Kompromiss zwischen Kosten, Kapazität und Robustheit. SLC-basierte Laufwerke (Single Level Cell) bieten zum Beispiel die höchste Lebensdauer und Langlebigkeit, sind jedoch pro GB teurer als MLC-basierte Laufwerke (Multi Level Cell). MLC-basierte Laufwerke hingegen haben eine viel kürzere Lebensdauer als SLC-Laufwerke, was besonders problematisch sein kann, wenn sie bei höheren Temperaturen gelagert werden. Um zu ermitteln, welche Art von Flash-Speicher Sie verwenden sollten, müssen Sie die Lebensdauer der einzelnen Optionen verstehen und diese mit den Anforderungen der Anwendung vergleichen. Zu Beginn stellen wir die folgenden Fragen:

 

  • Welche Flash-Architektur steht zur Verfügung?
  • Wie effizient wird der Flash-Speicher verwendet?
  • Wie hoch ist (Speicher-)Temperatur, wenn dieser nicht in Betrieb ist?
  • Wie lange darf der Speicher maximal nicht in Betrieb sein? 

Inhalt

Begriffe

  • Festplattenlaufwerk (HDD): Ein Massenspeichergerät, das rotierende magnetische Medien zum Speichern von Daten verwendet
  • SSD-Laufwerk (Solid State Drive): Ein Massenspeichergerät, das Flash-Speicher zum Speichern von Daten verwendet
  • Drive Endurance: Die Datenmenge, die auf ein Laufwerk geschrieben werden kann, bevor es unzuverlässig wird
  • Drive Writes (DW): Die Häufigkeit, mit der ein Laufwerk mit Daten gefüllt werden kann, bevor es unzuverlässig wird
  • Gesamtzahl geschriebener Bytes (TBW): Die Datenmenge, die auf ein Laufwerk geschrieben werden kann, bevor es unzuverlässig wird
  • Write Amplification Factor (WAF): Ein Maß für die Effizienz der Flash-Nutzung.  Je höher der WAF, desto weniger effizient wird Flash genutzt.
  • Workload: Ein Profil der für die Anwendung erwarteten Datentransaktionen.  Die Workload steht in direktem Zusammenhang mit dem WAF.
  • P/E Cycle: Der Programm-/Löschzyklus, der beim Speichern von Daten in Flash stattfindet
  • Flash-Zelle: Ein Transistor, der Ladung speichert, die Daten darstellt
  • Beständigkeit (Endurance) von Flash-Zellen Die Anzahl der P/E Cycles, die in eine einzelne Zelle geschrieben werden können, bevor die Zelle unzuverlässig wird
  • Beschleunigungsfaktor für Temperatur (AT): Eine Anpassung, die den Einfluss der Lagertemperatur auf die Beständigkeit (Endurance) des Laufwerks berücksichtigt.  Sie wird anhand der Arrhenius-Gleichung berechnet.
  • Storage Time Factor (STF): Eine Anpassung, welche die gewünschte Speicherdauer bei gleichzeitiger Wahrung der Datenintegrität berücksichtigt.  Dies wird berechnet als (N/12), wobei „N“ die Anzahl der Lagermonate ist.
  • Datenhaltung (Data Retention): Die Fähigkeit von Flash, die Datenintegrität gespeicherter Daten im Zeitverlauf aufrechtzuerhalten, wenn keine Stromversorgung vorliegt
  • SLC NAND: Single Level Cell-Flash, der ein einzelnes Datenbit pro Zelle unter Verwendung von zwei möglichen Spannungspegeln speichert
  • MLC NAND: Multi-Level Cell-Flash, der zwei Datenbit pro Zelle unter Verwendung von vier möglichen Spannungspegeln speichert
  • eMLC NAND: Enterprise MLC-Flash, der ein Datenbit in einer MLC-Architektur speichert und so in Bezug auf Kosten, Beständigkeit und Kapazität ein Mittelding zwischen SLC und MLC darstellt.  Wird auch als „pSLC“ (Psuedo SLC) oder „iMLC“ (Industrial-Grade MLC) bezeichnet.
  • TLC NAND: Triple-Level Cell-Flash, der drei Datenbit pro Zelle unter Verwendung von acht möglichen Spannungspegeln speichert
  • Planar NAND: Zellen sind in einer einzigen Schicht aus Silizium strukturiert
  • Vertical NAND (V-NAND): Zellen sind in mehreren Schichten strukturiert und bilden Zellenkolonnen.  Wird auch als „3D NAND“ bezeichnet.

Die Beziehung zwischen Beständigkeit des Laufwerks, Beständigkeit der Flash-Zellen, Lagertemperatur, Speicherdauer und Write Amplification

Die Berechnung der genauen Beständigkeit (Endurance) einer SSD unter verschiedenen Betriebs- und Lagerbedingungen ist äußerst kompliziert und umfasst viele Faktoren, die gemessene und statistische Eigenschaften berücksichtigen.  
Nachfolgend ist jedoch ein gutes Modell für die erwartete Laufwerksbeständigkeit aufgeführt:

wobei gilt:
     Drive Endurance = Gesamtmenge der Daten, die geschrieben werden kann, in Laufwerksschreibvorgängen
    Flash Cell Endurance = Maximale Anzahl von P/E Cycles für die gegebene Flash-Architektur
     STF = Storage Time Factor (Speicherzeitfaktor), der entsprechend der Dauer im Speicher angegeben wird
     AT = Beschleunigungsfaktor für die Temperatur (Acceleration Factor for Temperature), der entsprechend der Lagertemperatur angegeben wird
    WAF = Write Amplification Factor (Schreibverstärkungsfaktor), der entsprechend der Nutzungseffizienz von Flash angegeben wird

Unterschiede in der Flash-Architektur

SSDs verwenden in der Regel NAND-Flash, um Daten in Zellen zu speichern, die aus Floating-Gate-Transistoren bestehen.  Die in den einzelnen Zellen gespeicherte Menge an Ladung bestimmt den Wert der Daten.  Solange die Ladung ausreicht, um den Zustand der Zelle zu bestimmen, oder durch Verwendung von Fehlerkorrekturcodes (ECC) korrigiert werden kann, bleibt die Datenintegrität erhalten.  Die Anzahl der in den einzelnen Zellen gespeicherten Datenbits sowie die Häufigkeit, mit der in diese Zelle geschrieben werden kann, wird durch die von der Flash-Speichervorrichtung verwendete Struktur bestimmt.

Flash-ArchitekturZellenschichten Bits pro Zelle Anzahl ZellenspannungszuständeCell Endurance1 (P/E Cycles)
Planar SLC112~100.000
Planar MLC124~3.000
Planar eMLC/iMLC/pSLC112~20.000
Planar TLC138<1.000
Vertical SLCVariiert, typisch 6412TBD2
Vertical MLCVariiert, typisch 6424TBD2

1 Bei der Beständigkeit wird von einer Datenhaltung von mehr als einem Jahr bei 40° C Lagerung am Ende der Zellenlebensdauer angenommen

2 In Bezug auf die Beständigkeit wird angenommen, dass vertikaler SLC- und MLC-Flash dem Planar Flash ähnlich ist 

Beständigkeit (Endurance) von Flash-Zellen 

Die Zellenbeständigkeit (Cell Endurance) wird als die Anzahl der Programmier-/Löschzyklen (P/E Cycles) angegeben, die eine Flash-Zelle durchlaufen kann, bevor die Daten nicht mehr zuverlässig gespeichert werden können und die Zelle unzuverlässig wird.  Jedes Mal, wenn in eine Flash-Zelle geschrieben wird (ein P/E Cycle), wird die Oxidschicht der Zelle leicht abgebaut.  Während diese Schicht durch die Belastung aufgrund der P/E Cycles geschwächt wird, kann die gespeicherte Ladung leichter abfließen, wodurch die Fähigkeit der Zelle, Daten zu speichern, abnimmt.

Flash-Datenhaltung (Data Retention)

Der Ladungszustand in den einzelnen Zellen muss innerhalb bestimmter Schwellenwerte gehalten werden, um die Integrität der Daten zu gewährleisten.  Mit der Zeit fließt jedoch Ladung aus den Flash-Zellen ab, und wenn zu viel Ladung verloren geht, gehen auch die gespeicherten Daten verloren.  

Während des normalen Betriebs aktualisiert die Firmware des Flash-Laufwerks die Zellen regelmäßig, um den Ladungsverlust auszugleichen.  Wenn der Flash-Speicher jedoch nicht mit Strom versorgt wird, nimmt der Ladungszustand mit der Zeit jedoch natürlich ab.  Die Rate des Ladungsverlusts und die Empfindlichkeit des Flash-Speichers gegenüber diesem Verlust werden durch die Flash-Struktur, das Ausmaß der Abnutzung des Flash-Speichers (Anzahl der für die Zelle durchgeführten P/E Cycles) und die Lagertemperatur beeinflusst.  In den Spezifikationen für Flash Cell Endurance wird normalerweise von einer Mindestaufbewahrungsdauer von 12 Monaten nach dem Ende der Lebensdauer des Laufwerks ausgegangen.  

Für andere Zeiträume kann ein Speicherzeitfaktor (STF, Storage Time Factor) verwendet werden, um die Drive Endurance-Gleichung anzupassen.   Der STF wird als Zeitverhältnis in Bezug auf die standardmäßigen 12 Monate gemessen.  Wenn beispielsweise eine Lagerdauer von 36 Monaten gewünscht wird, beträgt der STF 3 (36 Monate dividiert durch 12 Monate).  Die STF-Werte für verschiedene Lagerzeiträume sind nachfolgend aufgeführt:

LagerdauerSTF
1 Monat0,08
3 Monate0,25
6 Monate0,5
1 Jahr1
3 Jahre3
5 Jahre5
10 Jahre10

Datenhaltung und Lagertemperatur

Obwohl sich sowohl die Betriebstemperatur als auch die Nichtbetriebstemperatur (Lagertemperatur) auf die Datenhaltung auswirken, hat die Nichtbetriebstemperatur einen weitaus größeren Einfluss auf die Berechnung Laufwerksbeständigkeit.  

Niedrigere Lagertemperaturen verlängern die Dauer der Datenhaltung, während höhere Lagertemperaturen sie erheblich verkürzen.  Beispielsweise kann eine Erhöhung der Lagertemperatur von 40 °C auf 70 °C die Lebensdauer des Laufwerks um mehr als eine Größenordnung verringern, was dazu führt, dass die Datenhaltung für ein Laufwerk am Ende seiner Lebensdauer nur wenige Wochen statt ein ganzes Jahr beträgt.

Der Beschleunigungsfaktor der Temperatur (AT, Acceleration Factor for Temperature) kann zur Anpassung der Lagertemperatur verwendet werden.  Dies leitet sich aus der Arrhenius-Gleichung ab und ist in der folgenden Tabelle zusammengefasst:

Lagertemperatur (°C)AT
250,13
300,26
401
556,4
7035
85168

Weitere Informationen zum Einfluss der Temperatur auf die Beständigkeit von Flash-Speicher und die Dauer der Datenhaltung sowie zur Berechnung des AT-Faktors finden Sie unter Effects of Temperature on SSD Endurance (Auswirkungen der Temperatur auf die SSD-Lebensdauer).

Schreibfaktor (Write Amplification Factor) und Daten-Workloads

Flash-Speicher werden nur selten optimal genutzt, und es gibt in der Regel einige Ineffizienzen, die zu einer Beschleunigung des Laufwerksverschleißes führen.  Der Write Amplification Factor (WAF) gibt an, wie effektiv der Flash-Speicher genutzt wird: Je höher der WAF, desto geringer die Effizienz.  Bei der Bestimmung des WAF spielen verschiedene Faktoren eine Rolle, von denen einige durch die Anwendung festgelegt sind:

  • Größe der geschriebenen Daten (Ausrichtung an der Flash-Blockgröße)
  • Wie Daten geschrieben werden (zufällig oder sequentiell)
  • Art des verwendeten Wear-Leveling-Algorithmus (gesteuert durch die Firmware des Laufwerks)


Im Allgemeinen sind größere sequentielle Schreibvorgänge effizienter als kleinere zufällige Schreibvorgänge.  Obwohl es keine festgelegte Formel zum Festlegen eines WAF für industrielle oder eingebettete Anwendungen gibt, können die JEDEC-Normen für Anwendungs-Workloads als Richtlinie verwendet werden (weitere Informationen finden Sie in JEDEC JESD218 und JESD219).  "Enterprise" stellt eine Vielzahl von Dateigrößen mit beliebigen Daten und "Client" längere sequentielle Schreibvorgänge mit wenigen beliebigen Zugriffen dar.

Darüber hinaus wird der WAF dadurch beeinflusst, wie gut die Firmware des Laufwerks die Flash-Nutzung durch Wear-Leveling und intelligentes Blockmanagement verwaltet.  Da der WAF stark von der Arbeitslast der Anwendung und der Firmware des Laufwerks abhängt, wird manchmal auch die „Faustregel“ WAF = 4 verwendet.  

Workload Art des ZugriffsTypischer WAF
Enterprise (JESD219)Zufällige auf der SSD gespeicherte Daten~15
„Faustregel“Mischung aus zufälligen und sequentiellen Daten, die als Annäherung an den WAF verwendet werden, wenn kein anderes Modell verfügbar ist4
Client (JESD219)Typisch für Consumer-Laptops, die hauptsächlich lange sequentielle Schreibvorgänge (z. B. Fotos, Musik) mit einigen kleineren zufälligen Zugriffen nutzen~2
„100 % sequentiell“Alle Schreibvorgänge werden nacheinander mit großen Dateien ausgeführt~1

Eine genauere Bestimmung des WAF kann durch direkte Messung der Laufwerksleistung erfolgen. Ein WAF für einen bestimmten Flash- und Anwendungsnutzungsfall kann berechnet werden, indem eine Anwendung einige Stunden lang ausgeführt und die tatsächliche Datenmenge, die auf das Laufwerk geschrieben wird, sowie die Anzahl der durchgeführten P/E Cycles gemessen werden.  Angesichts der Auswirkungen des WAF auf die Laufwerksbeständigkeit wird dringend empfohlen, Anwendungen entsprechend zu profilieren, um ihren WAF zu bestimmen. 

Berechnen der Laufwerksbeständigkeit (Drive Endurance) 

Die Laufwerksbeständigkeit kann bestimmt werden, sobald die Beständigkeit der Flash-Zellen (Flash Cell Endurance), der STF (Storage Time Factor), der AT (Amplification Factor for Temperature) und die WAFs (Write Amplification Factor) bekannt sind.  

Erinnern Sie sich an die Formel zur Ermittlung der Drive Endurance:

Beispiel 1

64 GB SLC-SSD mit einer Nichtbetriebstemperatur (Lagertemperatur) von 40 °C mit Streaming-Datenprotokollierung (sequentielle Schreibvorgänge) bei gewünschter Datenhaltung von einem Jahr.  Die SLC Flash Cell Endurance beträgt 100.000 P/E Cycles, STF und AT sind beide 1 (da es sich um das Basisjahr 1 bei 40 °C handelt) und der WAF ist 1 für das Modell „100 % sequentiell“.

Gesamtzahl der vor dem Ende der Lebensdauer geschriebenen Bytes = 64 GB x 100.000 Laufwerksschreibvorgänge = 6400 TB

Beispiel 2

64 GB SLC-SSD mit einer Nichtbetriebstemperatur (Lagertemperatur) von 55 °C mit Streaming-Datenprotokollierung (sequentielle Schreibvorgänge) bei gewünschter Datenhaltung von einem Jahr.  Die SLC Flash Cell Endurance beträgt 100.000 P/E Cycles, STF ist 1, AT beträgt bei 55 °C 6,4 und WAF ist 1 für das Modell „100 % sequentiell“.

Gesamtzahl der vor dem Ende der Lebensdauer geschriebenen Bytes = 64 GB x 15.614 Laufwerksschreibvorgänge = 1000 TB

Beispiel 3

128 GB eMLC-SSD mit einer Nichtbetriebstemperatur (Lagertemperatur) von 55 °C mit einem unbekannten Schreibprofil und gewünschter Datenhaltung von 24 Monaten. Die eMLC Flash Cell Endurance beträgt 20.000 P/E Cycles, STF ist 2 (24/12 Monate), AT ist 6,4 bei einer Lagertemperatur von 55 °C und der WAF ist 4 für das Modell „Faustregel“.

Gesamtzahl der vor dem Ende der Lebensdauer geschriebenen Bytes = 128 GB x 390 Laufwerksschreibvorgänge = 50 TB

Beispiel 4 

480 GB MLC-SSD mit einer Nichtbetriebstemperatur (Lagertemperatur) von 70 °C mit Streaming-Datenprotokollierung (sequentielle Schreibvorgänge) bei gewünschter Datenhaltung von drei Monaten.  Die MLC Flash Cell Endurance beträgt 3.000 P/E Cycles, STF ist 0.25 (3/12 Monate), AT ist 35 bei einer Lagertemperatur von 70 °C und der WAF ist 1 für das Modell „100 % sequentiell“.

Gesamtzahl der vor dem Ende der Lebensdauer geschriebenen Bytes = 480 GB x 342 Laufwerksschreibvorgänge = 164 TB

Verwenden von Endurance-Spezifikationen in Datenblättern 

Die Drive Endurance-Formel kann verwendet werden, um die Laufwerksspezifikationen an die Umgebungs- und Leistungsfaktoren Ihrer Anwendung anzupassen.  

Leider gibt es keine konsistente Methode zur Angabe der Laufwerksbeständigkeit.  In einigen Datenblättern werden lediglich die Laufwerkskapazität und die Flash-Technologie aufgeführt, während in anderen Datenblättern unter bestimmten Testbedingungen ermittelte Spezifikationen für die Laufwerksbeständigkeit aufgeführt sind. In diesen Spezifikationen sind möglicherweise die Lagertemperatur und die Dauer der Datenhaltung aufgeführt, die für die Berechnung verwendet wurden. Diese Informationen werden jedoch häufig nicht explizit angegeben.  Wenn nicht angegeben, wird in der Regel von einer Lagerung bei 40 °C und einer Datenhaltung von einem Jahr ausgegangen.  

Beispiel

Im Datenblatt des Laufwerks sind folgende Spezifikationen aufgeführt:

Flash-TypSLC
Laufwerkskapazität64 GB
Beständigkeit: Gesamtzahl geschriebener Bytes (Enterprise)500 TB
Beständigkeit: Gesamtzahl geschriebener Bytes (Client):3855 TB


Die Zielanwendung hat eine Lagertemperatur von 55 °C bei einer erwarteten Lagerzeit von einem Jahr und wird ähnlich wie ein Consumer-Speichergerät verwendet.  

Wir können das Datenblatt analysieren und feststellen, dass mit SLC (100.000 P/E Cycles) der effektive WAF für Enterprise und Client 12,8 bzw. 1,7 beträgt.   Da die Zielanwendung einem Consumer-Gerät ähnlich ist, können wir den Client-WAF von 1,7 und die entsprechende Endurance-Spezifikation von 3855 TB (oder 60.000 Laufwerksschreibvorgänge) verwenden.  

Als Nächstes müssen wir die Lagertemperatur und die Lagerungsdauer anpassen.  Dazu können wir die folgende Gleichung verwenden:

Die angegebene Endurance beträgt 3855 TB bei einer angenommenen Lagerung bei 40 °C (AT SPEC = 1), einer Haltungsdauer von einem Jahr (STFSPEC = 1) und einem WAF SPEC von 1,7.  Bei der Zielanwendung beträgt die Lagerungstemperatur 55 °C (AT ADJ = 6,4), die Haltungsdauer 1 Jahr (STF ADJ = 1) und der WAF ADJ 1,7.  Daraus ergibt sich die folgende angepasste Drive Endurance-Spezifikation:

Was this information helpful?

Yes

No