
7.1 ECC基本原理:SECDED与SECDED-DEDECC的核心思想很简单:在数据里加入冗余校验位。你想想看,如果数据本身多带一些“保镖”,出问题时保镖就能帮忙定位和修复。7.1.1 SECDED(单纠错双检错)SECDED是最常见的ECC方案。全称是Single Error Correction, Double Error Detection。它能纠正1个bit的错误,检测出2个bit的错误。怎么做到的?以经典的(72, 64)编码为例:64位数据 + 8位ECC校验码 = 72位总宽度8位校验码通过汉明码(Hamming Code)生成每个校验位覆盖特定的数据位组合我习惯用一个比喻:这就像给数据做“奇偶校验矩阵”。每个数据位被多个校验位“盯”着,出问题时,多个校验位会同时报错,通过它们的组合就能定位到具体哪个bit出了问题。关键点:SECDED能保证:1个bit错误 → 自动纠正,对上层透明2个bit错误 → 检测到并上报,但不纠正3个及以上bit错误 → 可能误判为1bit错误(概率极低)7.1.2 SECDED-DED(双纠错双检错)有些场景下,1bit纠错不够用。比如LPDDR5在高速率下,单次访问可能同时出现多个bit错误。这时候就需要SECDED-DED。DED代表Double Error Detection,但这里的“DED”其实是指能检测到更多错误模式。实际上,SECDED-DED通过增加额外的校验位,把纠错能力从1bit提升到2bit。举个例子:ECC方案数据位校验位总位宽纠错能力SECDED