Auf Wiedersehen Leseköpfe! Oder wie Flash-Speicher funktioniert
Hallo Geektimes! Wir sprechen oft über die Vorteile von SSDs, entlarven die Mythen über Solid-State-Laufwerke und sind kürzlich sogar zur Produktion gegangen . Aber wie funktioniert der Flash-Speicher tatsächlich? Was ist der Unterschied zwischen den verschiedenen Arten von NAND? Alle, die diese Themen verstehen wollen, sind bei cat willkommen.Schau in die Vergangenheit
Bevor wir mit unserem Gespräch beginnen, erinnern wir uns kurz an die Festplatten. Wie Sie wissen, speichern letztere Informationen auf mehreren Magnetplatten, die im Volksmund als Platten bezeichnet werden. In einer vereinfachten Form empfängt ein Aktuator mit Leseköpfen Informationen, und um Lese- / Schreibvorgänge abzuschließen, dreht sich die Platte ständig. Es macht kaum Sinn, lange hier zu bleiben, aber es ist wichtig, den Punkt zu verstehen.Da der Block von Plattenköpfen mit einem bestimmten Bereich (Spur) zum Lesen oder Schreiben von Daten zusammenfallen muss und sich die Platte ständig dreht, dauert es einige Zeit, bis sie auf die Informationen zugreifen können und der gewünschte Sektor unter dem Kopf ist, insbesondere wenn die Anforderungen chaotisch sind. Obwohl die Verzögerung der Festplatte in Millisekunden gemessen wird, reicht dies aus, um die CPU warten zu lassen, deren Verzögerung in Nanosekunden gemessen wird. In einer Millisekunde, einer Million Nanosekunden und im Durchschnitt benötigt die Festplatte 10 bis 15 Millisekunden, um nach Informationen zu suchen und diese zu lesen. Ja, jetzt gibt es Lösungen, deren Drehzahl 15.000 Umdrehungen pro Minute erreicht, aber selbst die schnellste Festplatte ist nicht so schnell, wie wir es uns wünschen.Ein bisschen Theorie
Vielleicht würden Sie und ich uns mit „sehr“ schnellen Festplatten zufrieden geben (wie Henry Ford sagte: „Wenn ich die Leute fragen würde, was sie wollen, würden sie mich bitten, schnelle Pferde zu bauen“), aber die Hersteller von Laufwerken, darunter auch Ihre bescheidener Diener, der Nutzen steht nicht still . SSD (Solid-State-Laufwerke oder Solid-State-Laufwerke) wurde angezeigt, bei denen die Informationen nicht auf rotierenden Festplatten gespeichert werden, sondern im NAND-Flash-Speicher. Wir werden im Detail darauf eingehen.Im Fall von NAND werden Informationen in einem Array von Speicherzellen gespeichert - dies sind Transistoren mit einem Floating Gate (Floating Gate). Abhängig von der Richtung der Spannung bewegen sich Elektronen zwischen dem Control Gate und dem NAND-Kanal.Sobald eine Spannung an das Steuertor angelegt wird, werden die Elektronen nach oben angezogen - das resultierende elektrische Feld hilft ihnen, das schwebende Gate zu erreichen und das Oxidhindernis zu überwinden. Letzterer wirkt als Isolator, da sich die Elektronen dank ihm nicht über das Floating Gate hinaus bewegen. So erfolgt die Zellprogrammierung.Der Vorgang des Löschens der Zelle sieht genau umgekehrt aus - die Spannung wird an den Kanal angelegt, die Elektronen bewegen sich vom schwebenden Gate durch das Oxid zurück durch die Erdung des Steuergates.Eine Zelle mit einem einzelnen Transistor arbeitet wie folgt. Abhängig vom Vorhandensein oder Fehlen einer Ladung an einem Floating Gate wird der Zustand des Transistors bestimmt, ob er offen oder geschlossen ist. Wenn man die Spannungsversorgung des Steuergates als Initialisierung der Speicherzelle betrachtet, kann man das Vorhandensein oder Nichtvorhandensein einer Ladung am Floating Gate anhand der Spannung zwischen Source und Drain beurteilen. Wenn Sie ein Elektron auf ein Floating Gate legen und eine Spannung an das Control Gate anlegen, wird der Transistor geschlossen. Wir erhalten eine Speicherzelle, die ein Bit speichern kann. Bei Verwendung der Heißelektroneninjektionsmethode wird an den Drain und das Steuergatter eine Spannung angelegt, die zur Bewegung von Elektronen durch die Barriere führt.Eine Zelle mit zwei Transistoren ist eine Modifikation eines einzelnen Transistors. In diesem Fall isoliert der Transistor (normal) die Bitleitung vom Floating-Gate-Transistor.Die Ladung wird aus dem Floating Gate entfernt, indem eine negative Spannung an das Steuergate angelegt wird (positive Spannung an der Quelle). Als Ergebnis haben wir den Fowler-Nordheim-Tunnel: Elektronen bewegen sich (Tunnel) vom Bereich des Floating Gates zur Quelle.Zyklus neu schreiben. Bevor Sie eine neue Zelle mit neuen Elektronen programmieren, müssen Sie zuerst die alten löschen. In der Praxis müssen die meisten Benutzer nicht auf die Anzahl der Umschreibzyklen achten, da die SSD-Ressource für jede Menge aufgezeichneter Daten problemlos ausreicht. Es gibt zwar ärgerliche Ausnahmen, aber deshalbGarantie vom Hersteller .Bei SSDs besteht der Flash-Speicher aus Blöcken, während letzterer aus Seiten besteht. Informationen werden auf diese Seiten geschrieben, und zum Aktualisieren von Daten reicht es nicht aus, nur irrelevante Seiten neu zu schreiben. Also werden zuerst die Daten von den alten Seiten auf die neuen verschoben, dann an einen anderen Block gesendet, und erst danach wird der Block mit den irrelevanten Daten gelöscht. Sobald der Block gelöscht ist, können neue Daten geschrieben werden. Solch ein kniffliger Prozess - im visuellen Format scheint es viel verständlicher zu sein.Offensichtlich ist das Fehlen beweglicher Festplatten (und tatsächlich beweglicher Teile) einer der Hauptvorteile von SSDs gegenüber Festplatten, und dies ermöglicht es SSDs, mit Geschwindigkeiten zu arbeiten, die erheblich höher sind als bei Festplatten. Zur Verdeutlichung finden Sie hier eine Übersichtstabelle zur Verzögerungszeit verschiedener NAND- und Festplattentypen.SLC, MLC, TLC sind nicht nur Abkürzungen, sie geben die Anzahl der Bits in jeder Zelle an. Für SLC (Single) ist dies ein Bit, für MLC (Multi) zwei Bits, für TLC (Triple) jeweils drei Bits. Aus diesem Grund speichert der MLC doppelt so viele Informationen wie der SLC, und dies trotz der Tatsache, dass die Anzahl der Zellen gleich ist. Im Allgemeinen ist das Funktionsprinzip für diese NAND-Typen dasselbe, was nicht über die Ausdauer gesagt werden kann.Im Laufe der Zeit kann die physikalische Struktur der Zellen aufgrund einer durch Elektronenaktivität verursachten Abnahme der Oxidschicht einem Verschleiß ausgesetzt sein. Infolgedessen akkumulieren die Elektronen eine negative Ladung und bleiben hängen, eine höhere Spannung wird angelegt und die Oxidschicht nimmt wieder ab. Ein solcher Teufelskreis stellt sich heraus.SLC, MLC und TLC unterscheiden sich in der Ausdauer. Wenn wir zum Beispiel einen NAND-Kristall mit einer Dichte von 16 Gbit nehmen, erhalten wir einen 16 Gbit SLC, obwohl in jeder Zelle ein Bit vorhanden ist. Dementsprechend werden es für MLC 32 Gbit / s und für TLC 48 Gbit / s sein. Zwar muss im letzteren Fall der NAND-Kristall noch geschnitten werden, so dass für MLC das Äquivalent von 32 Gbit erhalten wird. Wer kann Ihrer Meinung nach den größten Spannungsänderungen standhalten?Mit zwei Pegeln (0,1) hat SLC den besten Indikator für diesen Parameter - dieser NAND-Typ hält einem weiten Bereich von Spannungsschwankungen stand. Mit zunehmenden Pegeln nimmt dieser Bereich ab, daher weist TLC mit seinen 8 Pegeln und 3 Bits in einer Zelle die geringste Anzahl von Umschreibzyklen auf.Da Probleme mit der Chipreduzierung seit langem ein Problem sind, ersetzt 3D NAND den modernen planaren NAND-Flash-Speicher. Es ist weniger anfällig für Verschleiß, da beim Schreiben von Daten in die Zelle keine Hochspannung erforderlich ist. Hersteller entwickeln diesen Bereich aktiv weiter und geben ihre eigenen Technologienamen an (für Samsung - 3D V-NAND, für Toshiba - BiCS 3D NAND usw.). Der Punkt ist, dass wir in diesem Fall einen Zylinder mit einer obersten Schicht in der Rolle eines Steuerverschlusses erhalten, während die innere Schicht als Isolator fungiert. Die Zellen selbst befinden sich untereinander und bilden einen Stapel. Die Steuerlogik befindet sich unter dem Speicherarray, der Chipbereich wird freigegeben, wo sie anschließend die "Heimat" der Speicherzelle finden.Ein bisschen Übung
Wir können all dies nicht alleine beobachten (zumindest ohne spezielle Ausrüstung). Und so sieht es nach der Herstellung von Leiterplatten, dem Löten, der Installation von Chips und Mikroschaltungen aus:OCZ Trion 150Hier sehen wir sowohl Flash-Speicher- als auch Puffer-Mikroschaltungen sowie einen Controller, der sorgfältig mit einem thermischen Gummiband abgedeckt ist. Ja, hier geht es nicht um das SSD-Gerät, sondern um die Arbeit des Flash-Speichers, aber ohne Controller gibt es keinen Ort. Und hier ist warum.Der Controller verteilt den Datensatz an die Flash-Speicherzellen, liest aus dem Speicher und den TRIM-Zellen (dazu später mehr) - im Allgemeinen geht es bei dem Satz „Wir haben keine unersetzlichen“ nicht um ihn. Er, der die Datenübertragung sowohl auf SATA als auch auf PCIe steuert, verteilt Informationen auf NAND, um den Verschleiß zu verringern. Ohne die Hilfe der Firmware kann man hier natürlich nicht.Der Controller ist parallel mit dem Flash-Speicher verbunden und übernimmt, wie Sie sehen, eine der Schlüsselrollen. Der Trion 150 verwendet beispielsweise den Toshiba-Controller, während der Vertex 460A 0 bereits über den Barefoot 3 M10 von OCZ verfügt.Oh ja, ich hätte den Cache fast vergessen. Es ist ein zuverlässiger Controller-Begleiter: Sobald der Befehl zum Ändern der Datei auf die SSD gegeben wird, gelangt der Block zuerst in den Cache-Speicher, in dem die Änderung stattfindet. Zu diesem Zeitpunkt werden irrelevante Daten in NAND gelöscht, und der Controller findet heraus, wo die Informationen abgelegt werden sollen, die in den Puffer gestellt wurden. Das Hauptprinzip besteht darin, eine Zelle mit dem geringsten Verschleiß auszuwählen. Dies geschieht, wenn der Controller nach seinem Befehl die geänderten Daten an ein neues "Haus" sendet.Jetzt unterstützen die meisten SSDs, einschließlich der von OCZ, auch TRIM, eine spezielle Technologie, die irrelevante Daten notiert. In diesem Fall werden unnötige Informationen nicht in anderen Speicherblöcken aufgezeichnet, was sich nicht nur günstig auf die Anzahl der Umschreibzyklen, sondern auch auf die Aufzeichnungsgeschwindigkeit selbst auswirkt.Moment der Philosophie
Im Vergleich zu herkömmlichen Festplatten ist NAND natürlich ein echter Durchbruch, hat aber auch seine eigenen Probleme und Nachteile. Ja, NAND hat große Aussichten hinsichtlich der Speicherkapazität, aber der Preis pro Gigabyte lässt zu wünschen übrig. Es ist unwahrscheinlich, dass dieser Parameter in naher Zukunft Festplatten "fangen" kann.Durch die Verwendung von SLC-Caches und schnellen Datenstandards sind SSDs noch produktiver geworden und haben eine gute Bandbreite. Langfristig wird jedoch davon ausgegangen, dass etwas anderes NAND ersetzen wird. Und tatsächlich 3D NAND - die erste "Glocke", die dies anzeigt.Jetzt ist NAND sicherlich zu Pferd - sie sagen wahrer König des Hügels. Und er wird dieser König mindestens die nächsten 4-5 Jahre bleiben. Source: https://habr.com/ru/post/de392891/
All Articles