In diesem artikel:
Was ist ECC-Speicher? ECC-Speicher Vorteile
Assured Systems bietet eine breite Palette von Produkten, die ECC- und Non-ECC-Speicher unterstützen. Erfahren Sie alles, was Sie über ECC-Speicher und ihre Vorteile wissen müssen.
Da viele unserer Kunden nach ECC-Speicher fragen, haben wir einen Artikel verfasst, in dem wir erklären, wie dieser in den Markt für Embedded- und Industriecomputer passt. Da sowohl Embedded- als auch Industriecomputer auf dem Markt für hohe Zuverlässigkeit ausgelegt sind, sollte man annehmen, dass sie ECC-RAM implementieren, um Systemfehler zu reduzieren. Der Nuvo-8208GC GPU-Computer von Neousys ist ein Beispielprodukt, das sowohl Non-ECC- als auch ECC-Speicher unterstützt.
Was ist ECC-RAM oder ECC-Speicher?
ECC RAM steht für "Error-correcting Code Random Access Memory". Der ECC oder fehlerkorrigierende Code bezieht sich auf die Fähigkeit der Speicherkomponenten, Fehler zu erkennen, die im Datenspeicher auftreten, ohne dass externe Rechenressourcen benötigt werden. ECC-RAM ist in Servern oder eingebetteten Systemen mit hochwertigen Daten sehr beliebt, da er durch automatische Erkennung und Korrektur von Speicherfehlern vor Datenverfälschung schützt.
ECC vs. Nicht-ECC-RAM
Non-ECC-Speicher verwendet eine Bank von acht Speicherchips, in denen Daten gespeichert und der CPU bei Bedarf zur Verfügung gestellt werden. Im Vergleich zum Non-ECC-Speicher ist im ECC-Speicher ein zusätzlicher Speicherchip integriert, der sowohl zur Fehlererkennung als auch zur Fehlerkorrektur für die anderen acht Speicherchips dient.
Um zu verstehen, warum Sie einen fehlerbereinigten Code-RAM benötigen oder nicht, müssen Sie zunächst die grundlegende Funktionsweise von Flash-Speicher verstehen.
Wie funktioniert der Flash-Speicher?
In Flash-Chips sind Zellen integriert, die einen von zwei Zuständen haben, nämlich Zustand 0 oder Zustand 1. Flash-Zellen benötigen Strom, um jeden Zustand zu übertragen. Daher wird der Computer einen bestimmten Stromverbrauch haben, je nachdem, ob Ihr eingebettetes System dem Speicher einen 0- oder 1-Zustand zuweisen möchte. Der Speicher-Controller fasst dann den Zustand jeder Zelle zu einer binären Sequenz zusammen, wobei jede binäre Zeichenfolge eindeutig ist. Die gesammelte Binärsequenz wird dann in Computerdaten übersetzt.
Bei flüchtigen Flash-Anwendungen wie Computer-RAM benötigt die Zellenbank immer Strom, um ihren 0- oder 1-Zustand beizubehalten. Wenn Sie Ihren Computer ausschalten, wird die Zellenbank des RAM gelöscht. Statische Elektrizität kann auch dazu führen, dass eine Zelle ihren Zustand wechselt, von 1 auf 0 oder umgekehrt. Dadurch wird die Binärsequenz verändert, was sich negativ auswirkt. Ohne zu sehr ins Binärsystem einzusteigen, wird die Zahl 135 als 010000111 in ihrer Binärfolge ausgedrückt. Wenn statische Elektrizität eine dieser Zellen umkippen würde, könnte man die erheblichen Auswirkungen auf die vom Computer übersetzten Einzelbitfehler sehen:
010000111 = 135
110000111 = 391
011000111 = 199
010100111 = 167
000000111 = 7
Memory Flips können weiche Fehler in der Leistung verursachen, die relativ harmlos sein können. Beispielsweise treten bei einem durchschnittlichen 8-GB-Speicherstick etwa 5 Fehler pro Betriebsstunde auf, und für den durchschnittlichen Computernutzer sind die Auswirkungen dieser Fehler nicht spürbar. Bei unternehmenskritischen Anwendungen auf Servern oder Industriecomputern können sich diese Fehler jedoch schnell zu Systemausfällen durch Abstürze des Betriebssystems oder zu kostspieligen Fehlern aufgrund falscher Aktionen ausweiten.
Vorteile von ECC-RAM
Bei unternehmenskritischen Anwendungen kommen die Vorteile des ECC-Speichers voll zum Tragen. ECC-RAM verfügt über einen eingebauten Controller, der einen Paritätscode, auch bekannt als Hamming-Code, enthält. Wenn eines der Bits fehlerhaft ist, kann der eingebaute Controller den korrigierten Fehler an den Host-Computer zurückmelden. Ein Algorithmus wird verwendet, um die Daten so zu schreiben, dass die Formel mit korrelierenden Daten übereinstimmt. Der Hamming-Code-Algorithmus kann die Datenintegrität mit einer minimalen Menge an redundanten Daten prüfen und so den Arbeitsspeicher des Computers unterstützen. Wenn die Fehlerraten sehr hoch sind, ist diese Methode nicht sehr nützlich.
Wann sollte ich ECC-RAM verwenden und lohnt sich ECC-RAM?
Mit einer Verringerung der Datenfehler scheint der Einbau von ECC-Speicher in Ihr Computersystem die beste Lösung zu sein. Nicht alle Computersysteme können ECC-RAM unterstützen und erfordern eine Hauptplatine, einen Chipsatz und einen Prozessor, die diese Funktion unterstützen. Die zusätzlichen Speicherzellen und der eingebaute Controller führen außerdem zu einem Leistungsabfall von 2-3 % im Vergleich zu Nicht-ECC-RAM, da der Hamming-Code-Algorithmus für die Datenverarbeitung mehr Ressourcen benötigt.
Wenn Sie ein unternehmenskritisches eingebettetes System haben, das anfällig für Speicherfehler ist, sollten Sie ECC-Speicher und seine Fähigkeit zur Datenkorrektur in Betracht ziehen, um Datenverlust, teure Fehler oder Systemausfälle zu vermeiden. Die geringen Mehrinvestitionen in ECC-Speicher und kompatible Komponenten könnten Ihnen spätere Reparaturen ersparen, so dass Ihre Produktionslinie in Betrieb bleibt und die Hardware-Wartung wie beabsichtigt reduziert wird. Die Mehrkosten für ECC-Speicher sind unterschiedlich hoch, aber je nach Größe des Speichersticks müssen Sie im Durchschnitt mit 10 bis 20 % höheren Kosten rechnen. Je größer der Speicherstick ist, desto größer ist der Kostenanstieg.