Proceedings Template - WORD - Institut für Verteilte Systeme

Transcription

Proceedings Template - WORD - Institut für Verteilte Systeme
SSDs und Flash Memory
Matthias Müller
Institut für Verteilte Systeme
Universität Ulm
matthias-2.mueller@uni-ulm.de
ABSTRACT
Im Bereich der PC Hardware gibt es in nahezu allen Bereichen
ständig Weiterentwicklungen und Verbesserungen. Jedoch hat
sich, was die Technik angeht, bei konventionellen Festplatten
(Hard Disk Drives, HDDs) kaum etwas verändert. Solid-State
Disks (SSDs) sollen nun der breiten Masse ein völlig neues Gefühl der Datenspeicherung vermitteln. Im Folgenden werden die
SSDs näher erläutert und mit den konventionellen Festplatten
verglichen.
1.
BEGRIFFSKLÄRUNG
Solid-State stammt vom Begriff der Festkörperphysik (solidstate physics) und bezieht sich auf die Verwendung von Halbleiterspeicherbausteine. Als Solid-State Disks werden festplattenähnliche Laufwerke bezeichnet, die statt der Magnetscheiben
und den mechanischen Lese-/Schreibarmen nur aus einer Leiterplatine besteht, auf der Speicherbausteine und ein Controller
sitzt. Im Gegensatz zur konventionellen Festplatte bestitzen Solid-State Disks daher keine beweglichen Teile.
2.
TE
EINORDNUNG IN DIE GESCHICH-
Die ersten Solid-State Disks aus Halbleitermaterialien stammen
aus den 1970er und 1980er Jahren. Sie wurden meistens in Supercomputer eingesetzt und speziell für die jeweiligen Aufträge
gefertigt. In jenen Jahren war Hardware, und Speicher aus
Halbleiterbausteinen im Speziellen, sehr teuer. Andere Einsatzgebiete außer den Spezialcomputern und dem Militär gab es daher zunächst nicht. Viele Versuche nicht flüchtigen Speicher
herzustellen scheiterten. Zum einen, weil die Technik nicht ausgereift genug war und zum anderen, weil der Markt noch nicht
reif war für eine solch neue Technologie. EMC stellte 1987 eine
Solid-State Disk für den Kleinstcomputermarkt vor. Sie war
zwanzig mal schneller als die damals erhältlichen konventionellen Festplatten. Der Kraft des Marktes und Verluste seitens
EMC führten dazu, dass das Unternehmen die Forschung an
neuartigen Speichermethoden bis auf Weiteres einstellte. Seit
M-Systems, die seit 2006 zu SanDisk gehören, 1995 eine Flash
basierte Solid-State Disk vorstellte, wurden diese erfolgreich als
Festplattenersatz im Militär und in der Luftfahrtindustrie als
auch in anderen kritischen Anwendungen eingesetzt. Diese Anwendungen erforderten nämlich die außerordentlichen mean
time between failures (MTBF) Raten, die Solid-State Disks
durch ihre Eigenschaften, Vibrationen, Stöße und hohe Temperaturunterschiede zu widerstehen, erreichten. MTBF gibt die
mittlere Betriebsdauer bis zum nächsten Ausfall an. Seit einigen
Jahren werden Solid-State Disks in Industrierechnern und Ser-
versystemen eingesetzt. Ihre wesentlich geringere Anfälligkeit
gegenüber Wärme und der geringere Energieverbrauch stehen
dem immer noch hohen Preis gegenüber.
3.
AUFBAU VON SOLID-STATE
DISKS
Eine Solid-State Disk ist einer konventionellen Festplatte nachgeahmt. Das rechteckige Gehäuse sieht dementsprechend ähnlich aus. Jedoch wird häufig nur ein kleinerer Teil des Innenraumes genutzt. Eine Solid-State Disk besteht üblicherweise aus
einer Trägerplatine, die mehrere Speicherchips und einen Mikrocontroller auf sich trägt. Durch den geringeren Platzverbrauch werden Solid-State Disks normalerweise höchstens in
2,5 Zoll Gehäusegröße gebaut. Die Speicherbausteine aus Halbleitermaterial können aus flüchtigem oder nichtflüchtigem Speicher bestehen. Kombinationen aus flüchtigem Speicher, beispielsweise SDRAM Chips, haben oftmals eine zusätzliche Batterie zur Speicherung der Daten während die primäre Stromquelle abgeschaltet ist. Die Stärken dieser Lösung sind die unbegrenzte Wiederbeschreibarkeit und ihre sehr hohe Lese- und
Schreibgeschwindigkeit. Die zusätzliche Batterielösung zur
langfristigen Speicherung der Daten und der deutlich höhere
Energieverbrauch pro Gigabyte Speicherplatz im Vergleich zu
konventionellen Festplatten sind auch gravierende Nachteile.
Der höhere Energieverbrauch ist ersichtlich wenn man sich die
Funktionsweise eines SDRAM Chips betrachtet: Durch hohe
Leckströme würden die einzelnen Speicherzellen ihren Zustand
schon nach sehr kurzer Zeit verlieren. Um dem entgegen zu
wirken werden die Bits periodisch ständig wiederbeschrieben.
Im folgenden werden jedoch nur Solid-State Disks mit nichtflüchtigem Speicher betrachtet. Der nichtflüchtige Speicher
wird mit Flash Technik realisiert.
4.
4.1
FLASH SPEICHER
Aufbau und Funktionsweise
Die Flash Speichertechnik ging aus den EEPROMs (Electrical
Erasable and Programmable Read-Only Memory) hervor und
nutzt einen quantenmechanischen Effekt in Halbleitern aus.
Flash Zellen ähneln vom Aufbau her einem gewöhnlichen Feldeffekttransistor (FET) (siehe Abbildung 1). Wie bei einem nKanal Metall-Oxid-Feldeffekttransistor (MOSFET) besitzt die
Flashzelle ein schwach positiv dotiertes Substrat, das die beiden
stark negativ dotierten Elektroden Drain und Source voneinander trennt. Es entsteht ein npn-Übergang, der erst einmal nicht
leitet, da die freien Ladungsträger an den Übergängen miteinander rekombinieren und nicht mehr für den Ladungstransport zur
Verfügung stehen.
1
fasst werden. Planes umfassen beispielsweise 1024 Blöcke, was
einer Größe von 512 MByte entspricht. Mehrere Planes werden
zu einem Die zusammengefasst. Und hier hört das Zusammenfassen nocht nicht auf. Um pro Chip noch höhere Speichergrößen zu erzielen, findet man üblicherweise mehrere Dies pro
Chip.
Abbildung 1: Schematische Darstellung eines MOSFETs [1]
Über der Zone zwischen den beiden n-dotierten Elektroden
liegt das Gate, das mit einer dünnen Oxidschicht isoliert wird.
Es bildet mit dem Bulk-Anschluss, der unter dem p-Substrat
liegt und mit dem Source-Anschluss verbunden ist, einen kleinen Kondensator. Legt man nun eine Gate-Source-Spannung an
um den Kondensator zu laden, bildet sich ein elektrisches Feld.
Dieses bewegt Ladungsträger aus dem Substrat zur Grenzschicht. Zunächst rekombinieren sie dort mit den vorhandenen
Ladungsträgern, ehe eine gewisse Spannung erreicht wird
(Threshold), die dafür sorgt, dass in dem ursprünglichen p-Bereich ein dünner n-leitender Kanal mit Elektronenüberschuss
entsteht (siehe Abbildung 2). Durch diesen Kanal kann nun ein
großer Strom zwischen Drain und Source fließen.
Abbildung 3: Schematische Darstellung
einer Flash Speicherzelle [1]
4.1.1
4.1.2
Abbildung 2: n-leitender Kanal bei angelegter Spannung [1]
Im Vergleich zu einem klassischen bipolaren Transistor fließt
bei einem MOSFET zwischen Gate und Source kein Strom
mehr, sobald ein stabiler Zustand erreicht wurde.
Schon ein MOSFET behält also in gewisser Weise seinen Zustand, leitend oder nicht leitend, bei. Jedoch hängen in aller Regel weitere Schaltungsteile an einer Gate-Elektrode. Dadurch
entlädt sich das Gate sobald die Schaltung nicht mehr mit Energie versorgt wird. Flash-Speicher soll aber auch ohne eine Betriebsspannung seinen Zustand nicht verlieren.
Daher besitzen die Flashzellen unterhalb des Control Gate eine
zusätzliche Elektrode, die als Floating Gate bezeichnet wird
(siehe Abbildung 3) und als Ladungsfalle arbeitet. Diese ist von
einer nicht leitenden Oxidschicht umgeben und besitzt keinen
Anschluss nach draußen. Ist man nun in der Lage Ladungsträger auf das Floating Gate zu bringen, bleiben sie dort. Der Kondensator kann sich somit nicht mehr entladen und der Zustand
der Flash-Zelle bleibt auch ohne eine Betriebsspannung erhalten.
Damit Flash-Speicherchips die entsprechenden Speichergrößen
erreichen, werden die Flash-Zellen gruppiert zu sogenannten
Pages. Diese sind die kleinste Einheit, die lesbar bzw. beschreibbar ist. Im Allgemeinen haben Pages eine Größe von 4
KByte. Pages werden wiederum zu Blöcken zusammengefasst,
die in der Regel 128 Pages, also 512 KByte, groß sind. Planes
sind die nächstgrößere Einheit, zu denen Blöcke zusammenge-
Schreiben der Flash-Zelle
Um eine Ladungsänderung im Floating Gate zu erreichen, erfolgt der Zustandswechsel über den quantenmechanischen Effekt des Fowler-Nordheim-Tunnels: Durch das Anlegen einer
hohen Spannung an das Control Gate (10 bis 13 Volt) tunneln
einige Elektronen aus dem Source Gate durch die dünne Isolierschicht hindurch in das Floating Gate.
Lesen einer Flash-Zelle
Das Auslesen einer einzelnen Zelle ist im Vergleich zum Laden
einer Zelle recht einfach. Man legt eine Spannung an den Transistor an. Die gefangene Ladung im Floating Gate verhält sich
genau wie eine Ladung, die auf dem (Control) Gate sitzen würde. Wenn eine Ladung vorhanden ist, ensteht daraus wieder ein
elektrisches Feld, das einen leitenden Kanal zwischen Drain
und Source erzeugt. Der Transistor schaltet durch und es fließt
ein Strom (beispielsweise logisch 1).
4.1.3
Löschen einer Flash-Zelle
Um die Ladungsträger vom Floating Gate wieder zu entfernen,
muss eine hohe negative Spannung angelegt werden. Diese
treibt die Ladungsträger wieder aus dem Floating Gate heraus.
Während das Lesen und Schreiben Zellenweise passiert, kann
eine Solid-State Disk nur ganze Blöcke auf einmal löschen.
Dieses blitzartige Löschen ganzer Regionen soll laut einer Anekdote auch zu dem Namen „Flash“ geführt haben [2].
4.2
NAND vs NOR
Es gibt zwei verschiedene Möglichkeiten Flash-Speicher herzustellen: entweder mit NOR- oder mit NAND-Schaltungen. Bei
NOR-Flash sitzen die einzelnen Zellen parallel (OR) in einem
Gitter aus Word- und Bit-Lines (siehe Abbildung 4). Sie lassen
sich wahlfrei und direkt auslesen. Ein Anwendungsgebiet ist
daher der Programmspeicher eines Mikroprozessors. Denn eine
Stärke der NOR basierten Technik ist die schnellere Auslesbarkeit der Zellen. Allerdings ist NOR-Flash noch immer relativ
teuer und hat keine besonders hohe Speicherdichte.
2
ger, da der Abstand zum jeweiligen Schwellwert, der erkannt
werden muss, kleiner ist (siehe Abbildung 6). Da mehrere Werte unterschieden werden müssen, dauert das Schreiben ebenfalls
länger als bei SLC-Speicher.
Abbildung 4: NOR-Flash [2]
Abbildung 6: SLC und MLC Technik [4]
NAND-Flash ist deutlich platzsparender pro Zelle, da viele
Transistoren in Reihe (AND) geschaltet sind (siehe Abbildung
5). Um eine bestimmte Zelle auslesen zu können, muss man zuvor alle anderen Zellen entsprechend maskiern, also auf leitend
schalten. An die nicht gefragten Transistoren legt man dazu
eine Offset-Spannung an. Ein direktes Auslesen wie bei NORFlash ist somit nicht möglich. Aus diesem Grund wird NAND-Flash normalerweise blockweise angesprochen. Die Adressierung übernehmen interne Adressierungsregister.
Abbildung 5: NAND-Flash [2]
4.3
SLC vs MLC
Bei NAND-Flash gibt es noch zwei Arten, die unterschieden
werden: Single Level Cells (SLC) und Multi Level Cells
(MLC). Als Single Level Cells werden Zellen bezeichnet, die
sich genau ein Bit, also 2 Zustände, logisch 1 oder 0, merken
können. Multi Level Cells können sich dagegen üblicherweise 2
bis 4 Bit merken. Gegenüber NOR-Flash kann dadurch die
Speicherdichte nochmals erhöht werden. Um mehrere Bits pro
Flash-Zelle zu speichern, kann entweder die Stärke des Stroms
die Zustände kodieren oder man platziert geschickt mehrere
Floating Gates innerhalb einer Zelle. Bei MLC-Speicher ist das
Auslesen und Schreiben aufwendiger und weitaus fehleranfälli-
4.4
Haltbarkeit
Ein großer Nachteil der Flash-Speichertechnik ist die begrenzte
Haltbarkeit der Zellen. Bei jedem Löschvorgang wird die Isolierschicht zwischen Control Gate, Floating Gate und Substrat
ein wenig zerstört (Degradation). Nach einer gewissen Zeit wird
das Floating Gate nicht mehr ausreichend isoliert. Die Ladungsträger verflüchtigen sich schneller, bis irgendwann keine Ladung mehr auf dem Floating Gate festgehalten werden kann.
Nach Herstellerangaben hält NOR-Flash etwa 10 000 und
NAND-Flash etwa 100 000 Löschzyklen durch. Die unterschiedlichen Werte rühren daher, dass bei NAND-Flash die
Blockgröße, die gelöscht werden kann, kleiner ist als bei NORFlash. Der einzelne Block muss daher nicht so häufig gelöscht
werden.
Um die Last möglichst auf alle Zellen gleich zu verteilen, wird
in einem Mikrocontroller ein aufwendiges Defektmanagement
betrieben: Die Schreibzugriffe werden mit aufwendigen WearLeveling-Algorithmen so auf alle Blöcke verteilt, dass kein einzelner Block allzu oft gelöscht und neu beschrieben wird. Mit
der Zeit auftretende defekte Blöcke werden markiert und die
dort gespeicherten Daten in Reserveblöcke ausgelagert. Für die
Reserveblöcke werden etwa zehn Prozent der gesamten Speichergröße von Anfang an reserviert. Um Daten von defekten
Blöcken rekonstruieren zu können, enthält jeder Block Prüfsummen. Tritt ein Fehler auf, kann der Controller versuchen die
Daten anhand der Prüfsummen zu rekonstruieren und in einen
anderen intakten Block zu transferieren.
Zu Beginn der Flash-Technik wurde an speziellen Flash-Dateisystemen geforscht, die das Wear-Leveling übernehmen sollten.
Heutzutage sitzt diese Logik meist im Herstellereigenen Mikrocontroller. Wenn die Algorithmen des Controllers nicht auf bestimmte Dateisysteme optimiert sind, kann der Benutzer sogar
ein Dateisystem frei wählen.
Wie effizient das Defektmanagement und die Verteilung der
Daten funktioniert, hat ein Versuch des c't-Labors gezeigt [1]:
Es wurde versucht ein USB-Stick mit Flash-Speicher gezielt kaputt zu schreiben. Auch nach 16 Millionen Schreibzugriffen auf
ein und dieselbe Datei konnte kein Fehler festgestellt werden.
3
5.
FLASH-SPEICHER IM VERGLEICH MIT KONVENTIONELLEN
FESTPLATTEN
5.1
Flashback: Konventionelle Festplatten
Konventionelle Festplatten bestehen aus mindestens einer, oft
aber aus mehreren Magnetplatten, die übereinander angeordnet
sind. Wie in Abbildung 7 zu sehen, sind die Magnetplatten auf
einer drehbaren Spindel gelagert. Durch einen Arm pro Magnetplatte und dessen Kopf am Ende des Armes können Daten
auf die Magnetplatte geschrieben und von ihr gelesen werden.
Die Magnetplatte ist dazu in konzentrische Spuren unterteilt,
von denen es meist mehrere Tausend pro Magnetplatte gibt. Sie
sind wiederum logisch in Blöcke unterteilt, die typischerweise
jeweils 512 Bytes an Daten enthält. Alle Blöcke mit gleichen
Winkelkoordinaten werden als ein Sektor gesehen. Alle Spuren,
die sich auf den Magnetplatten übereinander befinden, nennt
man Zylinder.
gnetplatte liegen und am Besten noch sequentiell hintereinander, so dass der Kopf so wenig wie möglich bewegt werden
muss. Bei mehreren Magnetplatten ist eine Anordnung der Daten im gleichen Zylinder sehr von Vorteil, da zwei Köpfe parallel Daten lesen können.
5.2
Flash-Speicher vs konventionelle
Festplatte
5.2.1
Lesetransferraten
Da Flash-Speicher keine mechanischen Bauteile besitzen, entfällt die zeitaufwendige Positionierung des Kopfes völlig. Vibrationsgeräusche durch hohe Umdrehungsgeschwindigkeiten
entfallen ebenso. Solid-State Disks auf Flash-Basis zeichnen
sich durch eine sehr hohe sequentielle Leserate von bis zu 250
MByte/s aus (siehe Abbildung 8). Konventionelle DesktopFestplatten können hier nur schwer mithalten obgleich die Western Digital Festplatten die Samsung SLC SSD übertrumpfen.
Western Digitals VelociRaptor ist derzeit eine der schnellsten
konventionellen Desktop-Festplatten, die auf dem Markt angeboten wird. Aber auch sie muss den meisten SSDs den Vorrang
lassen und erreicht beim sequentiellen Lesen weniger als die
Hälfte der Übertagungsgeschwindigkeit der besten zwei SSDs.
Seagates Momentus 5400.6 erreicht in diesem Test, auch aufgrund ihrer geringeren Rotationsgeschwindigkeit, eine nochmal
deutlich kleinere Leserate als ihre Geschwister.
Abbildung 7: Schematischer Aufbau einer konventionellen
Festplatte [6]
Daten werden auf die Magnetplatte gespeichert, indem der Kopf
des Armes die Teilchen der Platte entsprechend polt, also magnetisch ausrichtet. Dadurch können wieder 2 Zustände, also 1
Bit gespeichert werden. Bei einem Lese- oder Schreibvorgang
muss zunächst der Arm bzw. der Kopf an die richtige Spur positioniert werden. Dann muss gewartet werden bis der entsprechende Block unter dem Kopf vorbeifliegt und gelesen bzw.
geschrieben werden kann. Diese mechanisch bedingte Verzögerung liegt im Mittel bei etwa 10 - 15 ms, was in der Informatik
als eine halbe Ewigkeit betrachtet werden kann. Die mittlere
Zugriffszeit kann etwa durch die Steigerung der Umdrehungsgeschwindigkeit der Magnetplatten etwas reduziert werden. Allerdings erhöht sich dadurch im Normalfall auch der Lärm, den
die Festplatte durch ihre Bewegungen und Vibrationen erzeugt.
Die Datentransferrate einer Festplatte hängt primär von der Datendichte und der Umdrehungsgeschwindigkeit ab. Bei einer
3,5 Zoll großen Festplatte passieren pro Umdrehung 29 cm magnetisches Material den Schreib-/Lesekopf, wenn er sich am äußeren Rand befindet. Im Zentrum sind es nur noch 11 cm. Da
Datendichte und Drehzahl bei Festplatten konstant sind, sinkt
die Transferrate folglich immer mehr ab, je weiter sich der
Schreib-/Lesekopf in Richtung Rotationsachse bewegt. Um die
höchstmögliche Transferrate einer Festplatte zu erreichen, müssen die Daten also bevorzugt auf den äußeren Spuren einer Ma-
Abbildung 8: Sequentieller Lesezugriff von diversen SSDs
und HDDs [3]
Warum die Solid-State Disks mit Flash-Speicher so schnell
sind, kann anhand von Flash-basierten USB-Sticks erläutert
werden. Sie erreichen in der Regel eine sequentielle Leserate
von bis zu 20 MByte/s. Um die Geschwindigkeiten der aktuellen SSDs zu erreichen, setzen die Hersteller daher massiv auf
Parallelisierung. Sie verbauen nicht nur einen Flash-Speicherchip, sondern bis zu zehn Chips, verbauen einen entsprechenden Controller, der alle Chips gleichzeitig ansprechen kann und
erreichen dadurch im Optimalfall diese hohen Transferraten.
Beim Lesen zufällig verteilter Daten trumpft die Flash-Technik
erst richtig auf. Ausnahmslos alle konventionellen Festplatten
offenbaren hier ihre große Schwäche: Die ständige Neuausrichtung des Kopfes lässt nur Leseraten von knapp einem MByte/s
zu. Die grafischen Balken dazu sind in Abbildung 9 kaum noch
zu sehen. Die schnellste SSD liefert hier schnelle 56,5 MByte/s.
4
dann der sequentiellen Schreibtransferrate an [9]. Bei einer normalen Benutzung eines PCs werden jedoch eher verteilt Daten
geschrieben statt große aneinanderhängende Daten. Diese Einbrüche soll der nächste Abschnitt versuchen zu erklären.
Abbildung 9: Leserate von zufällig verteilten Daten [3]
Statt der Transferrate kann auch die Latenz beider Techniken
verglichen werden. Die Latenz gibt an, nach welcher Zeit der
gewünschte Sektor unter dem Lese-/Schreibkopf steht und bereit ist gelesen zu werden. Bei Festplatten ist die Latenz in der
Regel einige Millisekunden groß, bei SSDs dagegen werden zufällig verteilte Daten komplett in unter einer Millisekunde gelesen.
Abbildung 10: Sequentielle Schreibrate [3]
5.2.2
Schreibtransferraten
Damit Daten gelesen werden können, müssen sie jedoch erst
mal geschrieben werden. Wenn Daten sequentiell geschrieben
werden, erreichen die Testkandidaten die in Abbildung 10 abgebildeten Werte. Auch hier sind Solid-State Disks an der Spitze, allerdings ist der Abstand zu konventionellen Festplatten geringer als beim sequentiellen Lesen. Konnten noch Leseraten
über 200 MByte/s erzielt werden, so sinken die sequentiellen
Schreibraten der meisten SSD-Vertreter sogar unter die 100
MByte/s-Grenze. Ein noch dramatischeres Ergebnis liefert der
Test, der vier Kilobyte große Daten zufällig verteilt schreibt
und dessen Werte in Abbildung 11 dargestellt sind. Besonders
drastisch sind die Einbrüche bei den JMicron SSDs, die nur
noch 20 und 30 Kbyte/s an Daten schreiben können. Selbst die
eigentlich stark benachteiligten konventionellen Festplatten
können sich hier vor den meisten SSDs platzieren. Lediglich Intels zwei SSDs erreichen noch Schreibraten von 23 MByte/s
und knapp 32 MByte/s. Nähert sich die Datengröße der internen
Blockgröße von 512 Kilobyte an, so ergibt sich ein anderes
Bild: Die zufällig verteilten Schreibtransferraten nähern sich
Abbildung 11: Schreibraten bei zufällig verteilten Daten [3]
5.2.3
Schwächen der Flash-Technik
Eine Eigenart der Flash-Technik ist, dass man vor dem Schreiben von Daten Speicherstellen blockweise löschen muss. Dem
Controller bleibt diese Arbeit erspart, wenn es genügend frisch
gelöschte oder fabrikneue Blöcke gibt. Nur dann kann der Controller direkt die Daten hineinschreiben und erreicht seine
höchsten Schreibraten. Je mehr Daten allerdings auf der SSD
gespeichert werden, desto weniger frische Blöcke gibt es. Wenn
Daten logisch auf Betriebssystemebene gelöscht werden, werden die entsprechenden Pages nur als gelöscht markiert. Will
der Benutzer dann beispielsweise eine 4 KByte große Datei
schreiben, wird der Controller eine geeignete Page anhand seines Wear-Leveling-Algorthmus auswählen. Dabei kann es passieren, dass diese Page nicht frei, sondern nur als gelöscht markiert ist. Der Controller muss daraufhin den kompletten Block,
meist 512 KByte, lesen und zwischenspeichern. Die entsprechende Page im Zwischenspeicher wird auf die neue Datei aktualisiert. Der gesamte Block muss dann wieder zurückgeschrieben werden (Read-Modify-Write). Dieses Verhältnis aus der zu
schreibenden und der tatsächlich geschriebenen Datenmenge
bezeichnet man als „Write Amplification“. Je höher der Wert,
desto eher muss man mit steigenden Schreiblatenzen rechnen,
die sich in niedrigen Schreibtransferraten bemerkbar machen.
Abhilfe kann ein sogenannter „Secure Erase“ schaffen. Dabei
ist keine Formatierung gemeint, die bekanntlich nur das Inhaltsverzeichnis löscht und neu anlegt. Die Pages bleiben aber mit
Daten gefüllt. Erst Werkzeuge, die jede Page löschen und auf
den Auslieferungszustand zurücksetzen, sorgen dafür, dass sich
die Solid-State Disk wieder wie neu anfühlt. Unangenehmer
Nebeneffekt ist die Tatsache, dass dabei natürlich alle Daten
verloren gehen. Die Hersteller indes arbeiten an verbesserten
Controllern und setzen vermehrt DRAM-Puffer ein. Auf diesen
beispielsweise 128 MByte großen Zwischenspeichern kann die
SSD Schreibzugriffe sehr schnell entgegennehmen, mit Native
Command Queuing sortieren und möglichst intelligent auf die
einzelnen Blöcke verteilen. Jedoch ist ein solcher Puffer keineswegs die endgültige Lösung dieses Problems. Es kann nämlich
durchaus vorkommen, dass der Controller Daten vor dem
Schreiben umschichtet, die bereits als gelöscht markiert sind.
Umschichtungen dieser Art soll der ATA-Trim-Befehl unterbin-
5
den. Durch diesen Befehl kann das Betriebssystem dem Controller mitteilen welche Blöcke das Dateisystem nicht mehr
braucht. Allerdings unterstützen nicht alle Betriebssysteme diesen Befehl. Um unabhängiger von solchen Umgebungseigenschaften zu sein, implementieren viele Hersteller noch zusätzlich eine Funktion in ihrer Firmware, die als eine Art Garbage
Collection betrachtet werden kann. Sie arbeitet wie ein Defragmentierer auf Laufwerksebene: Der Controller versucht in Leerlaufzeiten beschriebene Blöcke zusammenzufassen, um möglichst viele freie Blöcke zu erzeugen. Diese können dann wieder
direkt und mit hohen Schreibtransferraten beschrieben werden.
Abbildung 12: Kosten pro Gigabyte bei konventionelle Festplatten (Stand: Januar 2010) [7]
6.
ZUSAMMENFASSUNG UND AUSBLICK
Flash-basierte Solid-State Disks sind in der Lage den Festplattenmarkt in Zukunft zu verändern. Die verwendete Technik hat
noch ihre Kinderkrankheiten, die sie überwinden muss. Doch
schon jetzt können SSDs viele aktuelle Festplatten in ihren
Schatten stellen: Geräuschloses Arbeiten, unempfindlich gegen
Stöße und Vibrationen, rasante Zugriffszeiten und der wesentlich effizientere Energieverbrauch sind die positiven Eigenschaften einer jeden Solid-State Disk. Hinzu kommen Hersteller
abhängige Eigenschaften wie z.B. die Lese- und Schreibtransferraten. In der Regel ist jedoch eine SSD deutlich schneller als
eine konventionelle Festplatte. Dass sich SSDs im Moment
noch nicht am Markt durchsetzen können, liegt daran, dass die
Preise pro Gigabyte Speicherplatz noch enorm hoch sind. Die
Preise bewegen sich dabei im Bereich von 2,25 bis 3,7
€/GByte [5]. Abbildung 12 veranschaulicht die Preise für herkömmliche Festplatten. Diese liegen im Bereich von 0,07 bis
0,15 €/GByte bei 3,5 Zoll und zwischen 0,15 und 0,37 €/GByte
bei 2,5 Zoll Festplattengröße. Die Hersteller sind dabei Techniken zu entwickeln, die den Ausfall ganzer Speicherblöcke kompensieren sollen. Der Controller-Hersteller Sandforce bietet bei
eine solche Technik an. Es ist eine RAID-verwandte Technik,
die Sandforce Redundant Array of Independent Silicon Elements (RAISE) nennt [5]. Hersteller von SSDs sollen dadurch
in der Lage sein, billigere Flash-Chips zweiter Wahl mit einem
Sandforce Controller einzusetzen. Um keine neuen Modelle
entwickeln zu müssen, gehen einige Hersteller her und specken
ihre Oberklasse SSDs ab. Weniger parallel ansprechbare FlashChips und abgeschaltete Firmware Funktionen sorgen für niedrigere Preise zu Lasten der Performanz. Seagate geht einen an-
deren Weg und kombiniert Flash-Technik mit konventioneller
Technik zu einer Hybrid-Festplatte. Momentus XT heißt Seagates aktuellstes Modell und setzt einen 4 GByte großen SLCSpeicher ein, der ausschließlich als Lesezwischenspeicher eingesetzt wird [8]. Ein lernendes Adaptive Memory Konzept soll
oft benötigte Anwendungen und Daten vorhalten, auf die dann
schnell zugegriffen werden kann. Preislich sollen die Modelle
etwa 30 bis 40 € über den herkömmlichen Modellen ohne Flash-Chip kosten bei Speicherkapazitäten von 250 bis 500 GByte.
Laut Seagate ist die Festplatte beim Bootvorgang und beim Laden von Programmen nur wenig langsamer als eine Mittelklasse-SSD, aber in etwa ein Drittel schneller als herkömmliche
Notebookfestplatten mit 7200 Umdrehungen pro Minute. Hybrid-Festplatten könnten einen Übergang zu den SSDs darstellen, zumal die Festplattenhersteller ihre herkömmlichen Platten
nicht einfach ad acta legen wollen. Möglicherweise sind die
Hybrid-Festplatten in Zukunft mit größeren Flash-Chips ausgestattet und einem Cache-Verhalten wie man es von Prozessoren
her kennt, so dass eben auch Schreibzugriffe über den Flash-Speicher laufen.
Der Festplattenmarkt ist gerade erst dabei sich zu verändern.
Sinkende Preise für Flash-Speicher könnten die SSDs für den
breiten Markt interessant machen. Entwicklungen auf dem Hybrid-Sektor darf man angesichts der noch hohen Preise für
Speicher nicht außer Acht lassen. Langfristig wird die SolidState Disk die Magnetfestplatte verdrängen.
7.
REFERENZEN
[1]
Benjamin Benz, Erinnerungskarten, 23/2006
Heise Zeitschriften Verlag GmbH & Co. KG
[2]
Benjamin Benz,Boi Feddern, Festplatte ade 21/2007
Heise Zeitschriften Verlag GmbH & Co. KG
[3]
Anand Lal Shimpi, The SSD Anthology:
Understanding SSDs and New Drives from OCZ,
2009
http://www.anandtech.com/show/2738/1
[4]
Toshiba America Electronic Components, Inc.,
Compare NAND vs. NOR Flash memory,
http://www.toshiba.com/taec/components/Descrition/
nand_static_pop.html
[5]
Boi Feddern, Zellkulturen, 12/2010
Heise Zeitschriften Verlag GmbH & Co. KG
[6]
bruckbauer.at, Festplatte, 2008
http://www.bruckbauer.at/informatik/hardware/ ?
Speichermedien:Festplatte
[7]
computerbild.de, Endlich Platz: Die besten internen
Festplatten, 2010
http://www.computerbild.de/artikel/cb-Test-PCHardware-Die-besten-Festplatten-HDD-SATA-3-5-25-2892062.html
Nico Ernst, SSD-Tempo zum Preis einer Festplatte?,
2010
http://www.golem.de/1005/75405.html
[8]
[9]
Nathan Kirsch, The Intel X25-M 80GB Solid State
Drive Review, 2008
http://www.legitreviews.com/article/788/6/
6
7