Dies kann auf das in diesem Wikipedia-Artikel beschriebene Layout zurückzuführen sein: Reihenhammer .
Im dynamischen RAM (DRAM) belegt jedes Bit der gespeicherten Daten eine separate Speicherzelle […]
Speicherzellen (blaue Quadrate in der Abbildung) sind weiter in Matrizen organisiert und werden durch Zeilen und Spalten adressiert. Eine an eine Matrix angelegte Speicheradresse wird in die Zeilenadresse und die Spaltenadresse aufgeteilt, die von den Zeilen- und Spaltenadressendecodern (in der Abbildung jeweils vertikale und horizontale grüne Rechtecke) verarbeitet werden. Nachdem eine Zeilenadresse die Zeile für eine Leseoperation ausgewählt hat (die Auswahl wird auch als Zeilenaktivierung bezeichnet), werden Bits aus allen Zellen in der Zeile in die Leseverstärker übertragen, die den Zeilenpuffer bilden (rote Quadrate in der Abbildung) Das genaue Bit wird über die Spaltenadresse ausgewählt.
Hypothese: mit einem Bit eines bestimmten Zeilenpuffers (rote Quadrate) stimmt etwas nicht; Dies beeinflusst das Lesen einer Zeile, der der Puffer entspricht. Ich behaupte nicht, dass es jedes Mal, für jede Zeile und alle geschriebenen Daten geschehen wird. Ich glaube jedoch, dass diese Matrixform und der Reihenpuffer (oder ähnliches) etwas damit zu tun haben, dass es immer das letzte Bit des ersten Bytes ist, das versagt hat.
Zweitens hat der memtest nur ein paar Tests bestanden, insbesondere die Tests 0 bis 2 […]. Ich bin überrascht, dass die ersten Tests nie zu einem Fehler geführt haben. Grund warum?
Dieses Handbuch beschreibt die Tests:
- Test 0 [Adresstest, gehende, kein Cache]
Testet alle Adressbits in allen Speicherbänken unter Verwendung eines Adressierungsmusters.
- Test 1 [Adressprüfung, eigene Adresse, sequenziell]
Jede Adresse wird mit einer eigenen Adresse geschrieben und anschließend auf Konsistenz geprüft. Theoretisch sollten frühere Tests Probleme mit dem Speicher aufgefangen haben. Dieser Test sollte Adressierungsfehler abfangen, die zuvor nicht erkannt wurden. Dieser Test wird nacheinander mit jeder verfügbaren CPU durchgeführt.
- Test 2 [Adresstest, eigene Adresse, parallel]
Wie Test 1, aber der Test wird parallel mit allen CPUs und überlappenden Adressen durchgeführt.
Ich verstehe, dass die Tests 0-2 Adressfehler abfangen, nicht unbedingt tatsächliche Datenfehler. Wenn sie alle Fehler abfangen konnten, wären keine weiteren Tests erforderlich.