2397895_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2397895_zh-CN

2397895_zh-CN

KE1 ECC RAM 单比特纠错

关于ECC,我有一些问题。

我目前使用 MCM_LMFAR 来确定 ECC 触发故障的位置,然后使用该地址读取并写回以纠正故障。

问题:

1. ECC 是否具备自动纠错功能?或者我真的需要对地址进行读/写操作才能纠正错误吗?

2. 如果没有自动纠错功能,我在执行读/写纠错机制时是否需要补偿字节对齐问题?目前我正在对 MCM_LMFAR 指示的地址执行 4 字节的读/写操作。我觉得这样做很危险,因为我不确定 MCM_LMFAR 是否总是显示 4 字节对齐的地址。

Re: KE1 ECC RAM Single Bit Corrrection

你好@sean_dvorscak

感谢您的帖子。
请问您使用的是KE1系列中的哪一款具体设备?
这将有助于我更准确地找到相关文档,或使用同一设备进行验证。

BR

塞莱斯特

Re: KE1 ECC RAM Single Bit Corrrection

它是 KE18F512VLH16。

感谢您的帮助。

Re: KE1 ECC RAM Single Bit Corrrection

你好@sean_dvorscak

感谢您的回复。

所以,对于你的问题:

1. ECC 是否具备自动纠错功能?或者我真的需要对地址进行读/写操作才能纠正错误吗?

是的,ECC确实支持硬件纠正单比特错误。因此,您无需使用软件读/写序列即可获得校正后的数据。

2. 如果没有自动纠错功能,我在执行读/写纠错机制时是否需要补偿字节对齐问题?目前我正在对 MCM_LMFAR 指示的地址执行 4 字节的读/写操作。我觉得这样做很危险,因为我不确定 MCM_LMFAR 是否总是显示 4 字节对齐的地址。

->> 如果要实施可选的清理操作,请根据实际访问大小或清理粒度来调整访问权限,而不是盲目地根据原始 MCM_LMFAR 值来调整。此外,除非您先正确对齐地址并确认访问大小有效,否则不要使用固定的 4 字节访问。

事实上,对于多位/不可纠正的 ECC 事件,不要假设读/写操作可以修复数据,而应将其视为数据损坏,并从已知良好的源进行恢复,或根据情况重新初始化受影响的内存。

希望对您有所帮助。

BR

塞莱斯特


---------------------------------------------------------------------------------------------------------------------
注:如果此帖解答了您的问题,请点击“接受为解决方案”按钮。谢谢你!
---------------------------------------------------------------------------------------------------------------------

Re: KE1 ECC RAM Single Bit Corrrection

感谢您的确认和信息。

是的,我对无法纠正的比特错误采取了不同的处理方式。

Re: KE1 ECC RAM Single Bit Corrrection

还有一个问题。

自动硬件纠错功能默认启用吗?我没有在 MCM 寄存器中看到任何可以表明这是一个可以禁用/启用的功能的位。

Re: KE1 ECC RAM Single Bit Corrrection

是的,RESET后默认启用ECC校验/生成功能。

Re: KE1 ECC RAM Single Bit Corrrection

还有一些后续问题。

硬件是校正存储单元内的数据,还是只校正读取的数据?

例如,根据 AN5335,读取数据是否已从 0 到 > 1 进行校正?这意味着我们需要将更正后的值写回 RAM 才能真正清除它。

sean_dvorscak_0-1785962043300.pngsean_dvorscak_0-1785962043300.png


我们担心,如果 RAM 存储单元中的数据没有得到纠正,单比特错误可能会演变成双比特错误。

Re: KE1 ECC RAM Single Bit Corrrection

你好@sean_dvorscak

我注意到这个帖子已经关闭了。为了帮助我们更好地跟踪和跟进此问题,请您创建一个新帖子好吗?感谢您的合作。
 
BR
塞莱斯特
Tags (1)
No ratings
Version history
Last update:
2 weeks ago
Updated by: