Error Checking and Correcting: Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „'''topic''' - Beschreibung == Beschreibung == == Installation == <syntaxhighlight lang="bash" highlight="1" line> </syntaxhighlight> == Aufruf == <syntaxhighlight lang="bash" highlight="1" line> </syntaxhighlight> === Optionen === === Parameter === === Umgebungsvariablen === === Exit-Status === == Anwendung == === Problembehebung === == Konfiguration == === Dateien === <noinclude> == Anhang == === Siehe auch === {{Special:PrefixIndex/{{BASEPAGENAME}}}}…“ |
|||
Zeile 1: | Zeile 1: | ||
'''topic''' - Beschreibung | '''topic''' - Beschreibung | ||
== | == Fehlererkennung (ECC) == | ||
[[Datei:Micron MTC40F204681RC48BA1R 20240407 076.jpg|mini|RAM-RDIMMs für Server wie dieser haben meist ECC integriert]] | |||
Speichermodule können je nach Bestückung verwendet werden | |||
* ohne [[Fehlerkorrekturverfahren|Fehlererkennung]] | |||
* mit Fehlererkennung ([[Paritätsbit|Parität]]) | |||
* mit Fehlerkorrektur ([[Fehlerkorrekturverfahren#ECC- und Paritätsprüfung|ECC]]) | |||
Für die einfache Fehlererkennung mittels Paritätsbit wird je 8 bit Wortbreite ein weiteres Bit benötigt, die Module sind folglich 9 bit (einfaches SIMM), 36 bit (PS/2-SIMM) oder 72 bit breit (übliche DIMMs) organisiert. Ein einzelnes DIMM bietet damit auch genügend Bit-Breite für die Nutzung der Fehlerkorrektur (siehe unten), während hierzu mehrere gleichartige PS/2-Module parallel geschaltet werden müssen. | |||
Die Fehlerkorrektur muss außerdem von der Hauptplatine (Chipsatz und BIOS) unterstützt werden, die zusätzlichen Bits auf den Modulen schaffen nur die Möglichkeit zur Ablage der benötigten Information. | |||
Zur Erkennung von Hauptspeicherfehlern gibt es mehrere Verfahren. Eines dieser Verfahren stammt vom US-Mathematiker [[Richard Hamming]]: Der Error Correction Code (ECC) ist eine Art Hashwert über die 64 Bits jeder Speicherzeile. Diese redundanten Informationen werden vom Speichercontroller berechnet und in acht weiteren Bits abgelegt (bei 32-bit-Speicherzeilen sind es sieben weitere Bits), weshalb ECC-Speicher 72 Bits pro Zeile hat. | |||
Das Verfahren selbst heißt Error Checking and Correcting. | |||
ECC kann alle 1-bit-Fehler korrigieren und alle 2-bit-Fehler sowie manche Mehr-bit-Fehler erkennen. ECC-Speicher kommt in Desktop-PCs kaum zum Einsatz. | |||
Weitere Techniken zur Fehlererkennung sind unter den Namen Chipkill, Active Memory, Memory Resiliency oder Memory RAID bekannt. | |||
Die Hauptursache von Speicherfehlern ist nicht [[ionisierende Strahlung]] (wie früher vermutet), sondern eher Probleme einzelner Speicherzellen (zum Beispiel durch Alterung oder Fertigungsprobleme).<ref>[https://www.heise.de/newsticker/meldung/Hauptspeicherfehler-sehr-viel-haeufiger-als-bisher-angenommen-828883.html heise.de] Hauptspeicherfehler sehr viel häufiger als bisher angenommen (2009)</ref><ref>[http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf cs.toronto.edu] (PDF; 284 kB) DRAM Errors in the Wild: A Large-Scale Field Study, Mai 2009.</ref> | |||
== Installation == | == Installation == | ||
<syntaxhighlight lang="bash" highlight="1" line> | <syntaxhighlight lang="bash" highlight="1" line> |
Version vom 22. November 2024, 10:27 Uhr
topic - Beschreibung
Fehlererkennung (ECC)
Speichermodule können je nach Bestückung verwendet werden
- ohne Fehlererkennung
- mit Fehlererkennung (Parität)
- mit Fehlerkorrektur (ECC)
Für die einfache Fehlererkennung mittels Paritätsbit wird je 8 bit Wortbreite ein weiteres Bit benötigt, die Module sind folglich 9 bit (einfaches SIMM), 36 bit (PS/2-SIMM) oder 72 bit breit (übliche DIMMs) organisiert. Ein einzelnes DIMM bietet damit auch genügend Bit-Breite für die Nutzung der Fehlerkorrektur (siehe unten), während hierzu mehrere gleichartige PS/2-Module parallel geschaltet werden müssen.
Die Fehlerkorrektur muss außerdem von der Hauptplatine (Chipsatz und BIOS) unterstützt werden, die zusätzlichen Bits auf den Modulen schaffen nur die Möglichkeit zur Ablage der benötigten Information.
Zur Erkennung von Hauptspeicherfehlern gibt es mehrere Verfahren. Eines dieser Verfahren stammt vom US-Mathematiker Richard Hamming: Der Error Correction Code (ECC) ist eine Art Hashwert über die 64 Bits jeder Speicherzeile. Diese redundanten Informationen werden vom Speichercontroller berechnet und in acht weiteren Bits abgelegt (bei 32-bit-Speicherzeilen sind es sieben weitere Bits), weshalb ECC-Speicher 72 Bits pro Zeile hat. Das Verfahren selbst heißt Error Checking and Correcting.
ECC kann alle 1-bit-Fehler korrigieren und alle 2-bit-Fehler sowie manche Mehr-bit-Fehler erkennen. ECC-Speicher kommt in Desktop-PCs kaum zum Einsatz.
Weitere Techniken zur Fehlererkennung sind unter den Namen Chipkill, Active Memory, Memory Resiliency oder Memory RAID bekannt.
Die Hauptursache von Speicherfehlern ist nicht ionisierende Strahlung (wie früher vermutet), sondern eher Probleme einzelner Speicherzellen (zum Beispiel durch Alterung oder Fertigungsprobleme).[1][2]
Installation
Aufruf
Optionen
Parameter
Umgebungsvariablen
Exit-Status
Anwendung
Problembehebung
Konfiguration
Dateien
Anhang
Siehe auch
Dokumentation
Man-Page
Info-Pages
Links
Projekt
Weblinks
- ↑ heise.de Hauptspeicherfehler sehr viel häufiger als bisher angenommen (2009)
- ↑ cs.toronto.edu (PDF; 284 kB) DRAM Errors in the Wild: A Large-Scale Field Study, Mai 2009.