有多组纠错码的数据制造技术

技术编号:3062025 阅读:196 留言:0更新日期:2012-04-11 18:40
数据被格式化为逻辑的纠错码块以便于通信或记录。对于第一块中的原始数据(308,316,320),在第一块中有纠错码数据,在第二块(310,318,322)中有附加纠错码数据。当第一和第二块中的纠错码数据相互独立时,兼容设备可以使用来自任一块的纠错码数据,而其它设备可使用仅来自第一块的纠错码数据。

【技术实现步骤摘要】

本专利技术总体上涉及数据存储,更具体而言,涉及检错和纠错。
技术介绍
计算机数据存储器系统和数据存储器系统经常包括对检测和纠正错误的规定。通常数据的最小的可寻址单元被称为扇区,并且通常多个扇区进一步逻辑地归并成块,其中各块都包含用于该块的错误纠正。这些逻辑块被称为纠错码(ECC)块。对大多数应用而言,在一个纠错码块中错误可以保持未被检测和未被纠正的概率可接受地低。然而,有时对数据完整性的高得多的保证存在需求。需要能与现有标准格式兼容的、可选的附加检错和纠错。
技术实现思路
对至少一个纠错码块而言,该纠错码块中的数据区域包含有用于至少一个其他纠错码块的纠错码数据。附图说明图1是一个纠错码块的示例性实施例。图2说明比图1中纠错码块具有更多纠错码数据的示例性概念纠错码块。图3A-3C说明介质上的数据轨道,及辅助纠错码块的备选排列示例。图4A是一种方法的示例性实施例的流程图。图4B是一个为图4A中的方法提供附加详述的,在读取或接收数据时的一个示例性替换方法的流程图。图5是一种系统的一个示例性实施例的一个框图。具体实施例方式图1说明编码前的示例性纠错码块100。在图1的示例中,扇区(102)包含2,048个字节的原始数据。在某些现有的光盘标准中,一个纠错码块包含16个扇区的原始数据,如图1所示。在一些推荐标准中,一个纠错码块包含32个扇区的原始数据。在图1的示例中,每一扇区(加上16字节的标识和其他开销数据)在逻辑上被格式化为12行,每行172字节。对包含16扇区原始数据的纠错码块,为上述172列(每列一个字节)原始数据中的各列计算16字节的列纠错码数据106,并且做为结果的16行的列纠错码数据与上述行原始数据相互交错。10字节的行纠错码数据(104)被添加到172字节的原始数据的各行和16行的列纠错码的各行。对于一个有16扇区的纠错码块,有2,752字节的列纠错码数据(16行,每行172字节)和2,080字节的行纠错码数据(每行10字节,每扇区12行,16扇区,加上16行的列纠错码),总计4,832个字节的纠错码数据。对于至少一个纠错码块(至少部分区域被指定为原始数据(图1,102)),为在至少一个其他纠错码块中的原始数据至少包含一些纠错码数据。一个仅包含原始数据的纠错码块是“原始纠错码块”,在一个为原始数据指定的区域内包含纠错码数据的纠错码块是“辅助纠错码块”。假设,仅作为举例,每一纠错码块有16个扇区,每4个原始纠错码块有一辅助纠错码块。而且假设每一辅助纠错码块由纠错码数据充分填充。每一辅助纠错码块为相关联的4个原始纠错码块中的每一个提供可达8,192字节的纠错码数据(与每一原始纠错码块中的4,832字节的纠错码数据相比)。使用上述示例数字,一个辅助纠错码块能纠正的错误比特是原始纠错码块的1.7倍。每4个原始纠错码块有一个辅助纠错码块只是一个示例。通过为每一个辅助纠错码块提供少于4个原始纠错码块,包括为每一原始纠错码块提供多个辅助纠错码块,能获得强得多的纠错能力。另外,辅助纠错码块中的所有数据不必都是纠错码数据。例如,数据的16个扇区中的一些可以是纠错码数据,剩余的可以是原始数据。使用上述示例中的假设,图2说明包含相当于1/4的辅助纠错码块中可用的纠错码数据比特数的概念纠错码块200(编码前)。换句话说,图2没有说明实际的纠错码块,而是说明原始纠错码块中的原始数据的数量和由辅助纠错码块的1/4提供的纠错码数据的数量(假设一个辅助纠错码块对应4个原始纠错码块)。在图2中,有16个原始数据扇区202。每一行有17字节的行纠错码数据(204),而在图1中有10字节的行纠错码数据。有26行的列纠错码数据(206),而在图1中有16行的列纠错码数据。图2中说明的纠错码数据物理上位于辅助纠错码块的原始数据区域,并占用将近1/4的可用原始数据区域。图2中的纠错码数据自身被其他的纠错码数据保护,如图1所示。为原始纠错码块中的原始数据分配在辅助纠错码块中的纠错码比特是任意的。下面只是辅助纠错码块中纠错码数据的一种可能排列的示例,基于图2的纠错码数据,假设每个纠错码块有16个扇区,每个辅助纠错码块对应4个原始纠错码块,并且假设辅助纠错码块中的数据区域被纠错码数据充分填充列纠错码,字节列1(26字节)··列纠错码,字节列172(26字节)行纠错码,行1(17字节)··行纠错码,行218(17字节)上述示例假设纠错码数据是基于行和列被计算的,正如几个光盘标准中指定的。然而,辅助纠错码块中的纠错码数据必须遵照光盘标准。也就是说,辅助纠错码块的格式最好能遵照标准,但是辅助纠错码块的原始数据区域中的纠错码数据可以与这些标准指定的不同。例如,纠错码数据可以基于对角线而不是基于行和列进行计算。如果有一串错误导致多个行和列中有无法纠正的错误,则使用对角线可以导致各对角线上的可纠正数量的错误。在一些多级纠错码算法中,如果第一级纠正确定一组字节是错误的和无法纠正的,则该第一级通过将这一组所有字节赋值为一擦除符号来擦除该组字节。于是,下一级纠正除了纠正某些错误字节外,还能够纠正某些擦除。在一个可选择的实施例中,只有当错误不能被原始纠错码块纠正时才使用辅助纠错码块,该原始纠错码块中的错误纠正擦除所有不能纠正的行,然后擦除所有不能纠正的列,然后把该辅助纠错码块中的纠错码数据施加到产生的有擦除的数据。辅助纠错码块占用通常会被原始纠错码块占用的空间。从而,辅助纠错码块减少介质的数据容量。如果原始纠错码块中的纠错码数据独立于辅助纠错码块中的纠错码数据,那么在需要额外容量时辅助纠错码块可以被改写。如果是独立的,即使在辅助纠错码块不可用的情况下(出错或被改写),原始纠错码块中的纠错码数据仍然可用。一个使用的示例是仅在相关联的原始纠错码块不能纠正错误时才使用辅助纠错码块。当然,还有原始纠错码块中的错误不被发现的一定概率,所以如果辅助纠错码块可用的话,则可以通过仅使用辅助纠错码块获得额外的数据完整性的保证。图3A-3C说明光盘上的一个轨道300的示例,包括辅助纠错码块。光盘(例如数据CD和DVD)通常在一个轨道的开始处有一块称为导入区域(302)的保留区域,以及在轨道的结尾处有一块称为导出区域(304)的保留区域。导入区域和导出区域之间的任何部分都可用于数据(306)。通常,导入区域和导出区域包括指定扇区或块的物理位置的数据结构。导入区域和导出区域可能也包括扇区或块的控制结构。一般地,逻辑文件目录位于数据区域中。在图3A中,原始纠错码块308位于数据可用的区域。辅助纠错码块可以被放置在数据区域的结尾,所以,如果没有额外的数据容量需求,它们都应保持原状。在图3A和3B中,辅助纠错码块310被放置在数据区域306的结尾。可选择地,辅助纠错码块可以被放置在原始纠错码块间的规律性间隔中。例如,每第5个纠错码块可以是一个辅助纠错码块,或者每第9个和第10个纠错码块可以是一个辅助纠错码块,等等。在图3C中,辅助纠错码块318被放置在原始纠错码块316和320之间的规律性间隔中。并非所有的原始纠错码块都需要辅助纠错码块。也就是说,只有选中的原始数据才可能需要数据完整性的附加保证。更优选地,对每个原始纠错码块,有一个关于是否存在有相关联的辅助纠错码块的指示。该指示可以位本文档来自技高网...

【技术保护点】
一种数据存储介质,包括:原始数据(308,316,320),在逻辑上被格式化成第一块和第二块(310,318,322),第一块包括用于原始数据的第一纠错码,第二块包括用于第一块中原始数据的第二纠错码。

【技术特征摘要】
US 2003-7-31 10/6327551.一种数据存储介质,包括原始数据(308,316,320),在逻辑上被格式化成第一块和第二块(310,318,322),第一块包括用于原始数据的第一纠错码,第二块包括用于第一块中原始数据的第二纠错码。2.如权利要求1所述的数据存储介质,还包括第二块,包含用于第二纠错码的第三纠错码。3.如权利要求1所述的数据存储介质,进一步包括第一块,包含将第二块和第一块关联起来的指示(312)。4.如权利要求1所述的数据存储介质,进一步包括标识数据的物理位置的数据结构;和在数据结构中的、将第二块和第一块关联起来的指示(314)。5.如权利要求1所述的数据存储介质,进一步包括数据区域(306),该数据区城具有开头和结尾,第一块在数据区域内,第二块接近数据区域的结尾。6.如权利要求1所述的数据存储介质...

【专利技术属性】
技术研发人员:CR魏劳赫
申请(专利权)人:惠普开发有限公司
类型:发明
国别省市:US[美国]

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

1