Der PCI-Express-Hard-IP-Empfangspuffer und der Übertragungs-Wiederholungspuffer implementieren ECC-MRAM-Schutz als Option im MegaWi saharai.
Jeder ECC-Encoder- und Decoder-Block hat drei Signale:
-
derr_cor_ext_rcv[1:0]: Dies weist auf einen korrigierbaren Fehler im Rx-Puffer für den entsprechenden virtuellen Kanal (rvc) hin.
-
derr_cor_ext_rpl: Weist auf einen korrigierbaren Fehler im Puffer für den erneuten Versuch hin.
-
derr_rpl: Weist auf einen nicht korrigierbaren Fehler im Puffer "Wiederholung" hin.
Diese Signale werden mit dem core_clk synchronisiert, haben eine Dauer von einem Taktzyklus und sind nur während des Speicherlesezyklus an der beschädigten Stelle aktiv.
Die derr_cor_ext_rcv[1:0] und derr_cor_ext_rpl signalisieren, dass ein ECC-fehler (correctable error) erkannt und von der ECC-Funktion automatisch korrigiert wurde.
Wenn ein korrigierbarer ECC-Fehler auftritt, wird die PCI Express Hard IP die Daten automatisch ohne Informationsverlust wiederherstellen.
Wenn ein nicht korrigierbarer ECC-Fehler auftritt, werden die beschädigten Daten im Wiederholungspuffer gelöscht. Die Benutzeranwendungsschicht muss diesen Fall entsprechend den Anwendungsanforderungen handhaben. Es ist nicht erforderlich, die PCI Express Hard IP zurückzusetzen, aber die Benutzeranwendungsebene kann dies erfordern.