Erfolgreiche Embedded-Massenspeicher Die entscheidenden Details des SSD

Die vielfältigen Formfaktoren von 2,5 Zoll bis eMMC helfen Flash-basiertem Massenspeicher, immer mehr Embedded-Computing-Anwendungen zu erobern.

Das Solid-State-Drive (SSD) hat mittlerweile einen enormen Siegeszug im Embedded-Computing-Bereich angetreten und ein Ende des Booms ist nicht in Sicht – vor allem, was die elektronische Weiterentwicklung seitens der Flash-Chip-Hersteller und die Erschließung neuer Einsatzgebiete angeht.

SSDs verdrängen immer mehr die Festplatten im unteren Kapazitätsbereich. Im Wesentlichen bestehen SSDs aus Controller mit Firmware, Flash-Storage und RAM (Cache). Im Detail gibt es aber erhebliche Unterschiede; so bestimmt beispielsweise der Controller nicht alleine über die Geschwindigkeit eines SSD. Ein wichtiger Aspekt ist die „Intelligenz“ der Firmware, die entscheidet, wohin und wie die Daten geschrieben werden. Wie viel Aufwand wurde hier reingesteckt und welche Algorithmen wurden wie programmiert? Wie groß ist der Cache, um Daten auszulagern, zusammenzupacken und in den Bereich der Flash-Storage zu schreiben? Es gibt sogenannte RAM-less SSDs, bei denen der Hersteller aus Preisgründen den Cache weglässt. Dies kann durch einen Vergleich in den Datenblättern gesehen werden, da ohne Cache die SSDs etwas langsamer sind. Hier ist eine grobe Auflistung der Firmware und deren Inhalts:

  • Wear-Leveling (dynamisch und statisch)
  • ECC/EDC-Handling
  • Write-Amplification-Faktor
  • LPDC (Low-Power-Density-Check)
  • Bad-Block-Management
  • Garbage-Collection
  • Overprovisioning-Handling
  • End-to-End-Power-Handling

In der Praxis muss ein passendes SSD zur entsprechenden Applikation ausgesucht werden. Eine grobe Unterscheidung nach Applikation machen die Hersteller mit den Begriffen Enterprise und Client. Die Enterprise-SSDs sind mehr in Richtung Data-Center- und Server-Anwendung zu sehen und kommen mit einem größeren Flash-Bereich als Alterungsreserve, um auch über einen längeren Zeitraum eine stabilere Leistung im Vergleich zu Client-SSDs zu liefern. Speziell bei Speicher-Arrays ist dies wichtig, um bei Spitzenbelastungen keine oder nur geringe Einbrüche bei den Latenzzeiten zu erhalten. Ein Client-SSD muss acht Stunden/Tag bei durchschnittlichen 40 °C laufen, während von einem Enterprise-SSD 24/7 bei durchschnittlichen 55 °C verlangt werden kann (Jedec-Norm). Der Datenerhalt im ausgeschalteten Zustand sollte bei einem Client-SSD bei einem Jahr liegen, bei der Enterprise-Variante reichen drei Monate.

Ein wichtiges Kriterium bei der Auswahl eines SSD ist Endurance bzw. Lebensdauer. Während beim Einsatz eines SSD als Boot-Medium die Endurance keine Rolle spielt, ist beispielsweise für ein SSD, das die Aufgabe eines Datenloggers übernommen hat, eine sehr hohe Endurance überaus wichtig. Die Endurance gibt die Summe der Schreibleistung in Terabyte an, bis das SSD sein Lebensende erreicht hat. Ein Beispiel: Bei einem Wert von 100 TBW können auf dem SSD 100 TB Daten geschrieben werden. Je nach Applikation kann sich dieser Wert nach unten ändern. Entscheidende Kriterien für die Endurance in der Praxis sind:

  • die richtige Wahl der Kapazität,
  • die Bewertung der Endurance im Datenblatt und der Vergleich mit einer Applikation; Bestimmung der Leistung der SSD und
  • die Festlegung des Betriebstemperaturbereichs des SSD.