This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
各位专家、您好!
在上一篇文章中、我们提到了单个位故障注入触发单位错误的问题。 我们现在发现了注入双位错误时的相同反应。
这也会触发 ESM 1.83和1.15。
此外、我们发现启用 ECC、禁用单位错误校正和启用错误事件(vim->ECCCTL = 0x0A050A0A)也会触发 ESM 1.83和1.15。
每次启用 ECC 时都会启用、并且在第一次启用 ECC 后不会初始化 RAM
因此、我们的解决方案是:
1写入 vim->ECCCTL = 0x0A050A0A
2清除 ESM 1.83和1.15以及 VIM 错误寄存器
3自动初始化 RAM
(Q1)您能否确认首次写入 vim->ECCCTL = 0x0A050A0A 会触发单位和双位错误?
谢谢、此致、
最大
尊敬的 Max:
我已开始处理您的问题、我将很快返回给您。
--
谢谢、
Jagadish。
尊敬的 Max:
注入1位 ECC 错误或1位数据错误将设置 ESM 1.83和 ESM 1.15
2.注入2位 ECC 错误或2位数据错误将仅设置 ESM 1.15
写入 ECCCTL 寄存器不会设置任何 ESM 标志。
在 VIM 被初始化之前、我在_C_int00 ()中编辑了这个寄存器、如果 VIM RAM 未被初始化并且如果 VIM RAM 未初始化数据中存在 ECC 错误、那么只有读取这个数据才会触发 ESM 错误标志。