Paritätsfehler im Speicher werden unter Verwendung eines einfachen Paritätsbits erkannt. So funktioniert es:
1. Paritätsbitberechnung: Wenn Daten in den Speicher geschrieben werden, wird für jedes Byte (oder das Wort, abhängig von der Architektur des Systems) ein Paritätsbit berechnet. Dieses Bit ist entweder auf 0 oder 1 eingestellt, um die Gesamtzahl von 1s im Byte (einschließlich des Paritätsbits) entweder gleichmäßig (sogar Parität) oder ungerade (ungerade Parität) zu machen. Das System verwendet konsequent entweder eine gleichmäßige oder ungerade Parität.
2. Speicherspeicher: Das Paritätsbit wird zusammen mit dem Datenbyte im Speicher gespeichert.
3. Paritätscheck unter: Wenn Daten aus dem Speicher gelesen werden, berechnet das System das Paritätsbit basierend auf den abgerufenen Daten.
4. Fehlererkennung: Dieses neu berechnete Paritätsbit wird dann mit dem gespeicherten Paritätsbit verglichen. Wenn sie unterschiedlich sind, wird ein Paritätsfehler festgestellt. Dies weist darauf hin, dass mindestens ein Bit innerhalb der Daten geflippt ist (von 0 auf 1 oder umgekehrt).
Beispiel (sogar Parität):
Nehmen wir an, wir haben das Data Byte `10110100`.
* Anzahl von 1s:4 (sogar)
* Sogar Parity Bit:0 (um die Gesamtzahl von 1s sogar zu halten)
* Im Speicher gespeichert:`101101000`
Wenn während des Speichers oder Abrufs ein bisschen flippt und wir `101101100` lesen, wäre die neu berechnete Parität 1 (fünf 1s), was nicht mit dem gespeicherten Paritätsbit (0) übereinstimmt. Dies signalisiert einen Paritätsfehler.
Einschränkungen:
* Nur-Einzel-Fehler-Erkennung: Paritätsprüfung kann nur eine * ungerade * Anzahl von Bitfehlern erkennen. Wenn zwei Bits flip sind, ist die Parität immer noch korrekt, was zu einem unentdeckten Fehler führt.
* Fehlerspeicherort nicht identifiziert: Parität erkennt nur das Vorhandensein eines Fehlers, nicht die * Position * innerhalb des Byte. Fehlerkorrektur erfordert komplexere Techniken wie ECC (Fehlerkorrekturcode).
Während die Paritätsprüfung einfach eine kostengünstige Möglichkeit ist, einen erheblichen Teil der Speicherfehler zu erkennen, wodurch es in vielen Speichersystemen zu einem gemeinsamen Merkmal ist. Es werden robustere Fehlererkennungs- und Korrekturmethoden verwendet, wenn eine höhere Zuverlässigkeit von entscheidender Bedeutung ist (wie bei Servern und Hochleistungs-Computing).