我之前已经问过 E2E 上的闪存1位 ECC 和 SRAM 1位 ECC 之间的区别。 由于闪存本身的特性、校正后的数据不能写入闪存、也就是说、原始闪存地址上的数据不能校正和写入、但是 SRAM 校正后的数据会自动写入。 返回下图中的消息。
但是、在测试期间、我修改了 ECC 地址上的数据、然后读取相应的 SRAM 数据、这会触发1位 ECC 故障。 但是、ECC 地址上的 ECC 校验码没有被校正、之前错误的 ECC 代码仍然被保存。 此时、当 SRAM 数据被触发读取时、1位 ECC 故障未被触发。 也就是说、ECC 校验码被校正、但为什么我看到存储器数据仍然错误、如下图所示;
仅当重新写入 SRAM 数据时、相应地址上的 ECC 检查代码才会更新为正确的值、如下图所示。 因此、我对如何校正 SRAM 的 ECC 有疑问。