TechTarget网络 > 百科词汇

ECC:代码纠错

ECC(“代码纠错[或纠正]”(error correction [or correcting] code)或“错误检验和纠正”(error checking and correcting))允许被读取和传送的数据进行错误检验,并当需要时进行不工作纠正。这不同于奇偶检验,因为错误不仅能被发现而且可以得到改正。当数据传输速度(因此出错率)增加的情况下,ECC是逐步被设计进行数据存储和输送硬件的。

  以下是其如何进行数据存储工作:

  1. 当一单位数据(或“单词”)被储存在RAM或者外部存储器里时,描述单词中位次序的代码被计算并且跟数据的单位一起储存。对每句64位的话来说,额外的7位需要储存这条代码。
  2. 什么时候数据的单位需要读取,储存和将要读取的词语的一条代码使用原先的算法再次被计算。当词语被储存时,将新近合成码与产生的代码相比较。
  3. 如果代码符合,则说明数据没有错误并且得到传送。
  4. 如果代码不匹配,丢失或者错误的比特将被通过代码比较确定,比特或者几个比特将被需要提供或者改正。
  5. 不尝试改正依然在内存中的数据。最终,它将被新数据覆盖,并认为错误是短暂的,错误的比特将会“离开”。
  6. 在系统已经关闭之后仓库里相同地方重复出现的任何错误,再次显示某一永久硬件错误和消息被存入日志或发给系统管理员,表明经常出现错误的位置。

  在64位的单词水平上,奇偶检验和ECC需要相同数目的额外比特。通常,ECC增加任何计算的可靠性或者电信系统(或者一个系统的部分)而没有增加更多的花费。里德-索洛蒙代码常被执行;它可发现并恢复“擦掉”的比特及错误的比特。

最近更新时间:2009-03-17 作者:Rene MartinezEN

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐