Hier mal was, was ich schon vor einigen Monaten in einem anderen SSD-Thread geschrieben hatte:
----------------
- SLC, MLC, usw.?
SLC, Single-Level Cell, 1Bit pro Speicherzelle, 2 Zustände müssen unterscheidbar sein
MLC, Multi-Level Cell, 2Bit pro Speicherzelle, 4 Zustände müssen unterscheidbar sein, 100% Zuwachs der Speicherdichte gegenüber SLC
TLC, Triple-Level Cell, 3Bit pro Speicherzelle, 8 Zustände müssen unterscheidbar sein, 50% Zuwachs der Speicherdichte gegenüber MLC
QLC, Quad-Level Cell, 4Bit pro Speicherzelle, 16 Zustände müssen unterscheidbar sein, 33% Zuwachs der Speicherdichte gegenüber TLC
PLC, Penta-Level Cell, 5Bit pro Speicherzelle, 32 Zustände müssen unterscheidbar sein, 25% Zuwachs der Speicherdichte gegenüber QLC
Damit kann man zwar die Speicherdichte erhöhen, mit jeder Stufe um weniger Prozent, aber man erkauft sich einen weit höheren Verwaltungsaufwand pro weitere Stufe.
Außerdem sinkt mit jeder Stufe die Haltbarkeit, denn es müssen immer mehr Informationen pro Zelle valide gespeichert werden
und durch Degradation fallen mit jeder Stufe größere Blöcke aus.
Und die Geschwindigkeit des Laufwerks sinkt mit jeder Stufe, da Schreib-/Lesevorgänge und Fehlerkorrektur immer aufwändiger werden.
In einer SLC-Speicherzelle muss lediglich zwischen 0 und 1 unterschieden werden können. Das ist kein Aufwand, geht schnell und zuverlässig.
Sollen mehrere Bits unabhängig voneinander in eine Speicherzelle geschrieben werden, so unterscheidet man diese in der Ladungsmenge,
aus dieser Ladung bzw. Spannung und einem anliegenden Strom ergibt sich ein elektrischer Widerstand, der letztlich den gewünschten Inhalt der Speicherzelle repräsentiert.
Eins SLC-Speicherzelle hat entweder 10K Ohm, was einer 0 entspricht oder den 1.000fachen Wert 10M Ohm, was einer 1 entspricht.
Je mehr Bits in eine Zelle sollen, desto mehr Widerstandswerte muss man unterscheiden und der Abstand dieser Werte voneinander wird immer kleiner.
Wer auf Schnelligkeit und Haltbarkeit setzt, sollte sich gut überlegen ob QLC- oder gar kommender PLC-Speicher das richtige wäre...
Warum z.B. 16 Zustände bei einem QLC-Speicher?
1111, 1110, 1101, 1100, 1011, 1010, 1001, 1000, 0111, 0110, 0101, 0100, 0011, 0010, 0001, 0000
Diese Zustände müssen alle unterscheidbar sein und jeder dieser Zustände entspricht einem anderen Widerstandswert der Zelle.
Man darf sich das eben nicht so vorstellen das man eine Speicherzelle baut, die groß genug ist z.B. bei QLC 4Bit unterzubringen.
Sondern man baut eine Speicherzelle, in die man eine bestimmte Ladung (Menge Elektronen) bringen kann
und die so gefertigt ist das sie diese sehr genau definierte Ladung halten kann und man diese korrekt wieder auslesen kann.
Bei QLC müssen 16 verschiedene Ladungszustände klar unterscheidbar sein, was natürlich weit aufwändiger ist als nur halb so viele bei TLC.
Der Kaufpreis sinkt aber, da man pro Speicherzelle mehr Informationen unterbringen kann und deshalb weniger Zellen braucht, um die gleiche Datenmenge unterzubringen.
Unsauber ausgedrückt:
Man bringt eine bestimmte Spannung in die Zelle. Die Zelle hält die Spannung. Dann lässt man Strom durch die Zelle fließen, weil man will ja Informationen transportieren, lesen oder schreiben.
Dadurch ergibt sich ein bestimmter Widerstand der Zelle und dieser Widerstand entspricht dem Inhalt der Zelle.
TLC-Speicher. Es soll gelesen werden. Dateisystem usw., egal. Der Controller weiß, er hat die angeforderte Information in Zelle 37 an zweiter Position abgelegt.
Dann wird diese Zelle "gelesen", also eine Widerstandsmessung durchgeführt. Der Wert ist xx Ohm. Das entspricht den Bits 101. Super, die Information "0" wurde korrekt gelesen.
----------------
- RAID bei SSDs?
RAID 0 ist bei SSDs ehr kontraproduktiv.
Da du mit RAID 0 den großen Vorteil einer SSD gegenüber einer herkömmlichen Festplatte einbüßt, nämlich die sehr geringe Zugriffszeit.
Zudem funktioniert der TRIM-Befehl nicht mehr innerhalb eines RAID-Verbunds.
Du verlierst also Arbeitsgeschwindigkeit und Lebensdauer. Mit anderen Worten, lass RAID einfach sein.
Mit RAID 0 steigt die Transferrate. Aber die Zugriffszeit steigt auch.
Die Transferrate ist bei SSDs aber bereits generell so hoch, dass du selbst beim Wechsel von SATA auf PCIe kaum einen Geschwindigkeitsgewinn im Alltag festellen kannst.
Eine weitere Anhebung der Transferrate bringt also kaum etwas.
Das was SSDs so schnell macht im Alltag, ist alleine die Zugriffszeit und die steigt in einem RAID-Verbund an.
Das Laufwerk wird also trotz RAID 0 plötzlich langsamer...
Bei herkömmlichen Festplatten sieht das anders aus. Da ist die Transferrate deutlich niedriger und die Zugriffszeit deutlich höher als bei SSDs.
Da merkt man einen Unterschied, durch die höhere Transferrate. Die ebenfalls ansteigende Zugriffszeit spielt dort kaum eine Rolle, da diese auch ohne RAID schon recht hoch ist.
RAID bei SSDs macht nur Sinn bei höheren RAID Leveln, wo es hauptsächlich um die Ausfallsicherheit geht.
----------------
- Cache, Pseudo-Cache?
Viele SSDs nutzen einen zusätzlichen Cache, um die Geschwindigkeit zu erhöhen.
Ist der Cache vollgelaufen, wird das Laufwerk spürbar langsamer.
Das ist entweder ein zusätzlicher Speicher-Chip, z.B. DDR4 und/oder Bereiche der SSD werden fest oder dynamisch als Cache verwendet.
Man kann eine MLC, TLC usw. Zelle auch so ansprechen als wäre sie eine SLC-Zelle. Dann bringt man halt nur 1Bit unter, obwohl 2-5Bit hineinpassen würden.
Weil man sie dann viel schneller beschreiben/auslesen kann.
Vor allem bei SSDs die viele Bits pro Zelle speichern können, werden diese Cache-Stufen immer wichtiger bzw. interessanter.
Damit so ein Laufwerk, z.B. bei üblichen Benchmarks schön schnell erscheint, weil der Benchmark im Idealfall nur den Cache anspricht,
aber nicht so viel schreibt/liest, das der Cache vollläuft und die Geschwindigkeit plötzlich einbricht.