Ist für die Verwendung von ECC-DRAM-Speicher eine bestimmte CPU erforderlich? Warum?

Ist für die Verwendung von ECC-DRAM-Speicher eine bestimmte CPU erforderlich? Warum?

ECC DRAM hilft, Bit-Flips (z. B. verursacht durch kosmische Strahlung usw.) zu vermeiden, die sonst unentdeckt bleiben würden. Das ist großartig und ich wollte sofort etwas davon bestellen, um mein Nicht-ECC zu ersetzen. Aber ...

... mir scheint, dass das nicht so einfach ist, ich bräuchte nämlich eine Platine + CPU, die das unterstützt, oder?

Wenn ja, frage ich mich, warum. Die (n-stufige) Paritätsbitprüfung würde mehr Speicher erfordern, als effektiv auf einem Speichermodul verwendet werden kann (für die Redudanz, die die ECC-Prüfungen ermöglicht), dennoch könnte man meinen, dass das Modul, das über alle Informationen verfügt, die ECC-Fehlerkorrektur selbst durchführen könnte?

Welche Rolle würde die CPU dabei spielen?

  • Wenn der Fehler korrigierbar ist, sollte er doch transparent vom Modul korrigiert werden, oder?
  • Nur wenn der Fehler erkannt, aber nicht behoben werden kann, sehe ich einen Grund, mit der CPU zu interagieren, um zu kennzeichnen/informieren/festzustellen, dass ein Fehler aufgetreten ist.

Antwort1

Dennoch könnte man meinen, dass das Modul, da es über alle Informationen verfügt, die ECC-Fehlerkorrektur selbst durchführen könnte?

Theoretisch könnte es das.

Welche Rolle würde die CPU dabei spielen?

Für den CPU-Kern selbst: Keiner.

Dies geschieht jedoch normalerweise auf dem Speichercontroller, und bei modernen CPUs ist der Speichercontroller Teil des CPU-Chips. Aus praktischen Gründen benötigen Sie jetzt also eine ECC-fähige CPU.

Nur wenn der Fehler erkannt, aber nicht behoben werden kann, sehe ich einen Grund, mit der CPU zu interagieren, um zu kennzeichnen/informieren/festzustellen, dass ein Fehler aufgetreten ist.

Das passiert tatsächlich. Es wirft eineMCEwenn es nicht korrigierbare Lesefehler erkennt.

verwandte Informationen