编码数据的错误检测和校正制造技术

技术编号:3083370 阅读:268 留言:0更新日期:2012-04-11 18:40
本发明专利技术的实施例提供了一种用于检测和校正编码数据的技术。在一个实施例中,用于在多个数据位中检测和校正错误的系统包括:静态存储器,被配置为存储多个数据位;系统编码器,被配置为将该多个数据位转换为码字;系统奇偶校验编码器,被配置为将该码字转换为校验子;以及校验子解码器,被配置为基于用于确定校验子是否对应于无法校正的错误的预置标准来评价该校验子。用二进制[16,8,5]码来编码该多个数据位。

【技术实现步骤摘要】

本专利技术一般涉及用于检测和校正存储介质上的错误的技术,尤其涉及用于在编码数据、尤其是要存储在诸如DRAM之类的静态存储器中的数据中检测和校正错误的技术。
技术介绍
传统的DRAM保护方法涉及汉明码(Hamming code)的使用。汉明码中的检验位是用于数据位的奇偶校验位。每个校验位提供了用于数据位唯一子集的奇偶校验。如果出现了错误(即,一个或多个位改变了状态),则将声明(assert)一个或多个校验子(syndrome)位。声明了哪些校验子位也可以用于确定哪些数据位改变了状态,并且使得能够校正错误。汉明码的一种普通使用是校正在一组数据内的单个位错误。单个纠错汉明码能够校正单个错误。可以通过增加额外的校验位来增加码的检错性能。额外校验位的使用允许汉明码检测双位错误并且校正单个位错误。增加位以增加汉明码的数据检测性能被称为扩展的汉明码。汉明距离是在两个相同长度的二进制序列之间不一致的位数目。例如,如果码字x由‘10000’组成而码字y由‘01100’组成,则汉明距离等于3。在传统方法中,为了检测n位错误,编码方案要求使用汉明距离至少为n+1的码字。此外,需要在码字之间汉明距离至少为2n+1的编码方案。码的距离d定义为在该代码中的全部码字对之间的最小汉明距离。具有越大d值的码具有越强的纠错性能。具有参数N和k的码被称为(N,k)码。如果距离d也是已知的,则该码被称为(N,k,d)码。
技术实现思路
本专利技术的实施例提供了用于检测和校正编码数据的技术。将多个数据位转换为码字,其中当读取数据时,该码字被转换为校验子。评价(evaluate)该校验子以确定它是否对应于不可校正/不可接受的错误。在示范实施例中,二进制[16,8,5]码提供了在码字中可靠地校正1个数据位错误以及检测上至2个校验位错误的性能。有利的是,将该校验子直接映射到可接受校验子序列,以便快速地确定该校验子是可接受的还是不可接受的。如果该校验子对应于上至1个错误数据位(其将被校正)而没有校验位错误,或者对应于上至2个错误检验位(其将被忽略)而没有数据位错误,则该校验子是可接受的。该技术可以用于保护存储在诸如用于硬盘驱动器的DRAM之类的静态存储器中的非客户数据。根据本专利技术一个方面,一种用于检测和校正多个数据位中的错误的系统包括静态存储器,被配置为存储多个数据位;系统(systematic)编码器,被配置为将多个数据位转换为码字;系统奇偶校验编码器,被配置为将码字转换为校验子;以及校验子解码器,被配置为基于用于确定校验子是否对应于无法校正错误的预置标准来评价该校验子。二进制[16,8,5]码用于编码多个数据位。在一些实施例中,静态存储器包括DRAM或者快闪存储器(flashmemory)。系统编码器被配置为将8个数据位转换为16位码字。系统奇偶校验编码器被配置为将16位码字转换为8位校验子。如果该校验子包含至多1个错误数据位而没有校验位错误,或者如果该校验子包含至多2个错误校验位而没有数据位错误,则该校验子对应于没有无法校正的错误。如果校验子全部由0组成,则校验子解码器认为不存在错误且该校验子是可接受的。校验子解码器被配置为将校验子直接映射到多个与可接受错误模式相对应的可接受校验子序列,该校验子和与可接受错误模式相对应的可接受校验子序列之一之间的匹配指示该校验子对应于没有无法校正的错误。该多个可接受校验子序列包括第一查找表,该第一查找表具有与没有校验位错误的校验子中的1个数据位错误相对应的校验子序列。校验子解码器被配置为,当校验子与第一查找表中找到的校验子序列相匹配时,校正1个数据位错误。该多个可接受校验子序列包括第二查找表,该第二查找表包括与没有数据位错误的校验子中的1个校验位错误相对应的校验子序列。该多个可接受校验子序列包括第三查找表,该第三查找表包括与没有数据位错误的校验子中的2个校验位错误相对应的校验子序列。校验子解码器被配置为,当校验子包含错误而且在该校验子和与可接受错误模式相对应的可接受校验子序列之间不存在匹配时,将校验子标记为对应于无法校正的错误。在特定实施例中,该系统在硬盘控制器中实现。多个数据位包括非客户数据。硬盘控制器在硬盘驱动器中提供。可以在集成电路中提供静态存储器、系统编码器、系统奇偶校验编码器、以及校验子编码器。根据本专利技术的另一个方面,校验子解码器被配置为接收多个校验子,每个校验子从码字中生成,每个码字从多个数据位中生成。该校验子解码器包括数据位校正模块,被配置为检测和校正没有校验位错误的校验子中的1个错误数据位;校验位检测模块,被配置为检测没有数据位错误的校验子中的1或者2个错误校验位;以及标记模块,被配置为如果校验子包含错误,则除非该校验子包含1个错误数据位而没有校验位错误、或者该校验子包含1或者2个错误校验位而没有数据位错误,否则就将该校验子标记为对应于无法校正的错误。在一些实施例中,数据位校正模块被配置为将校验子直接映射到与1个数据位错误模式相对应的多个可接受校验子序列,该校验子和与1个数据位错误模式相对应的可接受校验子序列之一之间的匹配指示该校验子对应于没有无法校正的错误。校验位检测模块被配置为直接将校验子映射到多个与1个校验位错误模式或者2个校验位错误模式相对应的可接受校验子序列,该校验子和与1个校验位错误模式或者2个校验位错误模式相对应的可接受校验子序列之一之间的匹配指示该校验子对应于没有无法校正的错误。数据位校正模块被配置为通过反转错误的数据位来校正1个数据位错误。根据本专利技术另一个方面,一种用于检测和校正多个数据位中的错误的方法包括将多个数据位转换为码字;将码字转换为校验子;以及基于用于确定该校验子是否对应于无法校正的错误的预置标准来评价该校验子。二进制[16,8,5]码用于编码该多个数据位。在一些实施例中,将8个数据位转换为16位码字,该16位码字被转换为8位校验子。如果校验子包含至多1个错误数据位而没有校验位错误,或者如果它包含至多2个错误检验位而没有数据位错误,则它对应于没有无法校正的错误。评价校验子包括如果校验子全部由0组成,则认为不存在错误且该校验子是可接受的。评价校验子包括将校验子直接映射到多个与可接受错误模式相对应的可接受校验子序列,该校验子和与可接受错误模式相对应的可接受校验子序列之一之间的匹配指示该校验子对应于没有无法校正的错误。本专利技术另一个方面的目的是一种用于检测和校正校验子中的错误的方法,其中该校验子从码字中生成,而该码字从多个数据位中生成。该方法包括检测和校正没有校验位错误的校验子中的1个错误数据位;检测没有数据位错误的校验子中的1或者2个错误检验位;以及如果校验子包含错误,则除非该校验子包含1个错误数据位而没有校验位错误、或者该校验子包含1或者2个错误校验位而没有数据位错误,否则将该校验予标记为对应于无法校正的错误。附图说明图1A是图解有缓冲的硬盘驱动控制器体系结构的简化框图,该硬盘驱动控制器包括实时(on-the-fly)错误校正码(ECC)系统用于实现实时错误校正码。图1B是图解沿着图1A中的硬盘驱动控制器的读通道和写通道的数据流的数据存储系统的简化框图。图2图解了根据本专利技术的实施例的用于编码数据的检测和校正系统的简化框图。图3图解了根据本专利技术的实施例的写入数据字节d本文档来自技高网...

【技术保护点】
一种用于在多个数据位中检测和校正错误的系统,该系统包括:静态存储器,被配置为存储多个数据位;系统编码器,被配置为将该多个数据位转换为码字;系统奇偶校验编码器,被配置为将该码字转换为校验子;以及校验子解码器,被配置为基于用于确定该校验子是否对应于无法校正的错误的预置标准来评价该校验子,其中用二进制[16,8,5]码来编码该多个数据位。

【技术特征摘要】
US 2005-6-15 11/154,9781.一种用于在多个数据位中检测和校正错误的系统,该系统包括静态存储器,被配置为存储多个数据位;系统编码器,被配置为将该多个数据位转换为码字;系统奇偶校验编码器,被配置为将该码字转换为校验子;以及校验子解码器,被配置为基于用于确定该校验子是否对应于无法校正的错误的预置标准来评价该校验子,其中用二进制[16,8,5]码来编码该多个数据位。2.如权利要求1所述的系统,其中,静态存储器包括DRAM或者快闪存储器。3.如权利要求1所述的系统,其中系统编码器被配置为将8个数据位转换为16位码字。4.如权利要求3所述的系统,其中系统奇偶校验编码器被配置为将16位码字转换为8位校验子。5.如权利要求1所述的系统,其中,如果该校验子包括至多1个错误的数据位而没有校验位错误,或者如果该校验子包括至多2个错误的检验位而没有数据位错误,则该校验子对应于没有无法校正的错误。6.如权利要求1所述的系统,其中,如果校验子全部由0组成,则校验子解码器认为不存在错误且该校验子是可接受的。7.如权利要求1所述的系统,其中,校验子解码器被配置为将校验子直接映射到多个与可接受错误模式相对应的可接受校验子序列,该校验子和与可接受错误模式相对应的可接受校验子序列之一之间的匹配指示该校验子对应于没有无法校正的错误。8.如权利要求7所述的系统,其中,该多个可接受校验子序列包括第一查找表,该第一查找表具有与没有校验位错误的校验子中的1个数据位错误相对应的校验子序列。9.如权利要求8所述的系统,其中,校验子解码器被配置为当校验子与第一查找表中找到的校验子序列相匹配时,校正1个数据位错误。10.如权利要求7所述的系统,其中,该多个可接受校验子序列包括第二查找表,该第二查找表包括与没有数据位错误的校验子中的1个校验位错误相对应的校验子序列。11.如权利要求7所述的系统,其中,该多个可接受校验子序列包括第三查找表,该第三查找表包括与没有数据位错误的校验子中的2个校验位错误相对应的校验子序列。12.如权利要求7所述的系统,其中,校验子解码器被配置为当校验子包含错误而且在该校验子和与可接受错误模式相对应的可接受校验子序列之间不存在匹配时,将校验子标记为对应于无法校正的错误。13.一种硬盘控制器,包括如权利要求1所述的系统。14.如权利要求13所述的硬盘控制器,其中,该多个数据位包括非客户数据。15.一种硬盘驱动器,包括如权利要求13所述的硬盘控制器。16.如权利要求1所述的系统,其中,在集成电路中提供静态存储器、系统编码器、系统奇偶校验编码器、以及校验子编码器。17.一种校验子解码器,其被配置为接收多个校验子,每个校验子从码字中生成,每个码字从多个数据位中生成,该校验子解码器包括数据位校正模块,被配置为检测和校正没有校验位错误的校验子中的1个错误数据位;校验位检测模块,被配置为检测没有数据位错误的校验子中的1或者2个错误校验位;以及标记模块,被配置为如果校验子包含错误,则除非该校验子包括1个错误数据位而没有校验位错误、或者该校验子包括1或者2个错误校验位而没有数据位错误,否则将该校验子标记为对应于无法校正的错误。18.如权利要求17所述的校验子解码器,其中,数据位校正模块被配置为将校验子直接映射到多个与1个数据位错误模式相对应的可接受校验子序列,该校验子和与1个数据位错误模式相对应的可接受校验子序列之一之间的匹配指示该校验子对应于没有无...

【专利技术属性】
技术研发人员:马丁哈斯纳拉杰施库尔
申请(专利权)人:日立环球储存科技荷兰有限公司
类型:发明
国别省市:NL[]

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

1