当前位置: 首页 > 专利查询>英特尔公司专利>正文

双重误差校验码系统技术方案

技术编号:3062555 阅读:196 留言:0更新日期:2012-04-11 18:40
以误差校验行(12)和列的形式组织数据单元10。在行(12)和列上可以应用不同的误差校验算法。结果,一旦一个给定行被判定含有双重错误,则使用与列相关的误差校验算法,可以确定行(12)中的每个错误的位置。结果,在任意的其它单重错误被纠正之后,简单双重错误可以被定位和纠正。在一些实例中,误差校验的成功率得到极大的提高。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】
技术介绍
总的来说,本专利技术有关基于处理器的系统和基于处理器的系统中的内存,具体的,有关纠正储存于这些系统中的数据的系统。在电子系统中,数据可以存储在内存中,在某些情况下,在存储或传输期间,数据可能会发生损坏。因此,希望能够确定数据是否损坏,如果可能,希望能纠正损坏的数据。已经开发出了附加在所存储数据中的误差校验码。在读取数据时,利用一个判据来确定所读取的这个数据是否是正确的。该判据是基于附加的误差校验码。在某些情况下,如果存储的数据是错误的,数据可以被纠正。例如,一种常规的误差校验码是汉明码。标准的汉明码只有纠正单一错误的能力,最多能发现双重错误。如果双重错误被发现,这就意味着数据损坏了,一般来说,除了重复发送数据外,没有其它方法能够纠正错误。结果是数据必须重新发送,拖延了系统的运行并且消耗资源。简单地重复发送数据并不能解决在硬错误的情况下所出现的问题。当数据被错误地调制(例如,由于噪音的原因)时,会产生硬错误。因而,需要一种前向误差校验系统以减少数据的重复发送。如果能够纠正被发现的双重错误,至少在某些情况下,可以减少重复发送数据的频率,增加系统的速度和减少因双重错误而产生的系统负荷。因此,有必要找到与误差校验码有关的纠正双重错误的方法。附图概要附图说明图1是本专利技术一个实例的逻辑描述;图2是本专利技术一个实例的流程图;图3是本专利技术另一个实例的流程图;图4是本专利技术另一个实例的流程图;图5是图4流程图的续图;图6对单独使用汉明码和使用本专利技术实例进行了比较;图7是本专利技术一个实例的示意图。专利技术详述如图1所示,用于误差纠正的数据单元10的逻辑描述包括在水平方向延伸的行12(用字母R表示)和横向的列(用在C方向延伸的箭头表示)。因而,数据单元10可以看作带误差校验行12和误差校验列的二维数据结构。然而,在本文中的“误差校验行”和“误差校验列”术语不是指逻辑上的行和列,与常规存储设备上的物理行和列无关。单元10包含一些行12和列。除了最后的行12c,所有的行12都包含用户数据。因此,在一个实例中,行12a和行12b是用户行,行12c可以是奇偶校验行。奇偶校验行12c包含奇偶校验数据。每一个行12,包含用户行12a和12b以及奇偶校验行12c,都包含一些用户位16和汉明校验位18。当然,我们希望图1的描述是纯粹的逻辑示意图,位16和位18可以以任何物理形式储存在存储介质中。此外,尽管我们参考的是汉明校验位18和奇偶校验行12c,本专利技术的一些实例中仍然可能使用了其它的误差校验算法。因此,可以在行12中使用汉明校验位18,在列中使用其它误差校验算法,并在本专利技术的一些实例中使用一个奇偶校验行,该行使用不同于汉明校验位的误差校验算法。在本专利技术的另一个实例中,可以使用不同于汉明和奇偶算法的算法。汉明方案是在固定数量的数据上操作的。即,在例证实例中,在行12上使用汉明码。在每一个行12上的汉明校验位18保护每行上的16个用户位。每一个行12实现了一个单误差校验,双重错误检测方案。奇偶行12c就象用户行12a和12b一样被汉明码检查处理。也就是说,按本专利技术的一个实例,如奇偶行12c上的18所表示的那样,奇偶校验位也受汉明码保护。误差校验方案并不完美,很小部分的错误会躲过任何方案的检查,或者被检测到但没有纠正或没有被检测到。如果在任意一个行12中出现两个错误,在没有更多的信息时,汉明方案只能侦测到错误而不能纠正它,因为这个方案没有办法知道这两个错误在行12的什么地方。换句话说,汉明算法知道有错误但是因为无法定位而不能纠正错误。奇偶行12c中的每一位都是被编排好的,所以,正如所期望的那样,列C的权(即1的数量)应该为偶数或奇数。因而,每一个列C实现了一个奇偶校验方案。借助于奇偶行12c,可以被定位并从而修复误差校验行12上的双重错误。在一个实例中,所有的单误差都可以被纠正,如果有双重误差,则随后可以纠正该双重误差。因此在一些实例中,可以使用两次检查。在第一次检查时纠正所有的单一错误,在第二次检查时纠正单一的双重错误。由于常规系统中双重错误的出现将导致数据损坏,这个方案与现存的方案相比有相当的优势。如图2所示,一开始,双重误差校验运算方法20判断是否在任何行上有两个错误,如菱形框22所示。如果有,则检查奇偶行12c,如方框24所示。利用奇偶行12c,确定有错误的列,如方框26所示。然后,一旦它们的位置被定位,这些错误可以被修正,如方框28所示。如图3所示,一开始,编码算法30判断缓冲区中是否接收到了数据,如菱形框32所示。数据可能串行或并行地到达一个单元10大小的数据缓冲区。当接收到相当一个行大小的数据时,汉明校验位18将被计算并被发送到缓冲区,如方框34所示。当所有的用户行12都被接收到并且各自的汉明校验位18都已被计算,则计算并保存奇偶行12c,如菱形框38和方框40所示。最后,奇偶行12c的汉明校验位被计算和保存在缓冲区中,如方框42所示。数据单元10现在可以被写入存储介质。例如对于闪存,一个内置状态机可以开始其从数据缓冲器写数据单元10到闪存单元的算法。如方框44所示。在另一个实例中,在接收行数据和计算汉明校验位的同时,计算奇偶位。在接收行12时,在包含锁存器和反馈逻辑的时序电路中可以得到每一列的累积加权。这样,在接收并存储了最后的用户行12之后,立即可以将奇偶行12c写入缓冲区。参照图4,一开始,译码算法从存储介质(例如闪存排列)读取数据单元10,如方框52所示。每一个行12都被送到一个误差校验码解码器(ECC),以纠正单一的错误,如方框54所示。如果发现一个错误,如菱形框56所示,将检查此错误是否为单一错误,如菱形框58所示。如果是,则如方框60所示,利用包含该错误的行12的汉明方案,可以立即纠正该单一错误。随后,如方框62所示,保存该纠正后的数据。如果该错误不是单一错误,那么将检查其是否为双重错误,如菱形框64所示。如果是,则将行号保存在一组名为错误地址累加器的锁存器中,如方框66所示。同时一个错误计数器被递增,如方框68所示,其目的是记录包含双重错误的行的行号。如果错误既不是单一的也不是双重的,将产生一个错误信息,如方框65所示。同时进行解码过程,单元10的垂直方向奇偶位被计算和累加。最后被读取的行12是奇偶行12c,该行是在先前的编码阶段保存的。如果有必要,奇偶行12c也是经汉明校验的,并且其数据与其它块一起被积累而生成奇偶校正码。随后,如菱形框70所示,判断是否已处理了最后的行和列。如果是,继续执行图5,如方框72所示。参照图5,如方框74所示,检查错误计数器和地址累加器,判断是否有单个的行包含一个双重错误。在菱形框76中,如果没有双重错误,奇偶校正码将被设为0,如方框78所示。如果只有一行包含双重错误,如菱形框80所示,则相应位的位置反映在奇偶校正码上,如方框84所示。否则将产生一个错误信息,如方框82所示。因为行号保存在错误累加器中,这个方案可以知道那一行包含了双重错误。从而,如先前描述的那样,奇偶校验码和错误地址累加器使得双重错误能被纠正。利用本专利技术的实例,可以纠正双重错误。汉明方案只有有限的错误纠错能力。然而,汉明纠正系统的编码和解码简单性使它在许多应用场合都极具吸引力。汉明方案是可配置的,以具备各本文档来自技高网...

【技术保护点】
一种方法,包括:布置数据单元在误差校验行和列上;对上述行和列,确定一个纠错算法值;及纠正一个双重错误。

【技术特征摘要】
【国外来华专利技术】US 2001-9-25 09/962,8281.一种方法,包括布置数据单元在误差校验行和列上;对上述行和列,确定一个纠错算法值;及纠正一个双重错误。2.权利要求1中的方法,其中确定纠错算法值的步骤包括对上述行和列使用不同的误差校验算法。3.权利要求2的方法,包括在所述行使用汉明码,在所述列使用奇偶方案。4.权利要求1的方法,包括定位和纠正单一错误,然后纠正一个双重错误。5.权利要求1的方法,包括提供一个附加的数据行,以便在所述列上执行一个误差校验算法。6.权利要求5的方法,包括在所述行应用第一误差校验算法和在所述列应用第二误差校验算法,并在所述附加行提供所述第一误差校验算法。7.权利要求6的方法,包括逐一为所述行和列确定纠错算法值。8.权利要求6的方法,包括一前一后地为所述行和列确定纠错算法值。9.权利要求1的方法包括计算双重错误的数量。10.权利要求9的方法,包括确定双重错误的数量是否超过一个单一的双重错误。11.一种产品,包含存有指令的媒介,这些指令能使基于处理器的系统完成以下动作安排数据单元在误差校验行和列上;为上述行和列,确定一个纠错算法值;纠正双重错误。12.权利要求11的产品,还储存有这样的指令,该指令使基于处理器的系统为上述行和列确定一个纠错算法值。13.权利要求12的产品,还储存有这样的指令,该指令使基于处理器的系统在上述的行使用汉明码和在上述的列使用奇偶方案。14.权利要求11的产品,还储存有这样的指令,该指令使基于处理器的系统,定位和纠正单一的错误,然后纠正双重错误。15.权利要求11的产品,还储存有这样的指令,该指令使基于处理器的系统提供附加的数据行,以便在所述列上执行误差校验算法。16.权利要求15的产品,还储存有这样的指令,该指令使基于处理器的系统,在上述的行使用第一误差校验算法,在上述的列使用第二误差校验算法,并在上述...

【专利技术属性】
技术研发人员:R法肯塔尔B本哈米达
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利