错误校正代码播种制造技术

技术编号:10443012 阅读:102 留言:0更新日期:2014-09-17 19:06
本发明专利技术公开了错误校正代码播种。本发明专利技术中公开的技术提供了一种当数据块的单元号与存储在数据块中的ECC值不匹配时对从数据块读取的数据进行验证的方法。特别地,该方法包括:将数据块的索引序列中的数据块指定为不可用,其中每个数据块与物理索引相关联;将单元号与所述索引序列中的指定的数据块之后的后续可用数据块相关联;以及将偏移量与所述后续可用数据块的单元号相关联地记录在可由错误检测与校正模块访问的偏移量表中,其中所述偏移量和所述单元号的组合表示用于所述错误检测与校正模块的种子。

【技术实现步骤摘要】
错误校正代码播种相关申请的交叉引用本申请涉及到序号为、专利技术名称为“Error Correct1n Code Seeding”且与本申请同时递交的美国专利申请,该美国申请因其所公开和教导的全部内容特此通过引用合并于本文中。
技术介绍
在驱动器处理的多个阶段中都会发现不可用数据块。当发现这样的数据块时,驱动器会被重新线性化,以使可用数据块具有以关于每个数据块的错误校正代码(ECC)信息编码的顺序索引。由于该重新线性化,ECC信息被重新写到全部可用数据块上,使得可用块具有顺序索引。然而,要花费几个小时来将单个驱动器重新线性化,这对制造商而言是相当大的开销。 专利技术概述 本文所描述的以及进行权利要求的实施方案通过如下方案解决了上述问题:将数据块的索引序列中的数据块指定为不可用,其中每个数据块与物理索引相关联;将单元号与索引序列中的识别的数据块之后的后续可用数据块相关联;以及与后续可用数据块的单元号相关联地将偏移量记录在可由错误检测与校正模块访问的偏移量表中,其中偏移量和单元号的组合表示用于错误检测与校正模块的种子。 提供该概述是为了以简化形式引入下文在专利技术详述部分中进一步说明的构思的选择。该概述不意在确定权利要求主题的关键特征或必要特征,也不意在用于限定权利要求主题的范围。这些以及其它的特征和优点将从下面的专利技术详述的阅读中变得显然。 【附图说明】 图1图示出具有当数据块的单元号与存储在数据块中的错误校正代码(ECC)值不匹配时用于对从数据块中读取的数据进行验证的机构的系统。 图2图示出具有创建偏移量表的偏移量表创建模块的存储设备,偏移量表能够用于计算用于错误检测模块的种子值。 图3图示出具有用于当数据块的单元号与存储在数据块中的ECC值不匹配时用于对从数据块中读取的数据进行验证的机构的另一系统。 图4图不出用于创建偏移量表的实施例操作,偏移量表能够用于创建用于错误检测模块的种子值。 图5图示出当数据块的单元号与存储在数据块中的ECC值不匹配时用于对从数据块中读取的数据进行验证的实施例操作。 图6披露了适于实施用于在磁盘访问操作期间选择性略去目标数据块的索引序列中的一个以上数据块的系统的一个以上方案的计算机系统的框图。 专利技术详述 图1图示出具有用于当数据块的单元号与存储在数据块中的错误校正代码(ECC)值不匹配时用于对数据块的数据进行验证的机构(例如,偏移量查找模块114)的系统100。系统100包括主计算机102,其将一个或多个访问命令104 (例如,读命令或写命令)发送到存储驱动器106。存储驱动器106是具有有形的计算机可读存储介质的设备,该存储介质能够将数据存储在可由计算机访问的顺序单位中(例如,单元或数据块)。该有形计算机可读介质可以包括但不限于磁存储盘、固态驱动器、快擦写存储器、光存储盘、随机存取存储器(RAM)、只读存储器(ROM)等等。存储驱动器106包括多个数据块(例如,数据块108),其能够保持设定数量的存储字节。 每个数据块都具有与存储设备106上的数据块的索引序列中的数据块物理位置相关联的物理索引(例如,数据块108中的物理索引O)。根据一种实施方式,存储设备106上的顺序数据块与连续增加的物理索引相关联。每个数据块还包括错误校正代码(ECC)信息(未示出),包括对数据块的物理索引进行编码的ECC值。 存储设备(例如,存储驱动器106)可以包括在设备的初始处理期间被标识为差的或不可用的多个数据块。例如,磁盘表面上的块缺陷或不规格(例如,热粗糙)会使得磁盘的一个或多个块不可用。没有实际的物理缺陷的数据块也可能是“不可用的”,因为它们由于其它原因从存储设备的数据存储操作中被选择性地略去了。因此,术语“不可用”在本文中用于表示由于任何原因而从数据存储操作中的使用选择性地略去的存储块。 当从存储驱动器106上的数据块读回数据时,错误检测与校正模块110执行数据完整性校验以确保所读或写的数据是正确的并且正确的数据块被访问。为了执行该完整性校验,错误检测与校正模块I1使用种子值和从数据块读回的数据来生成ECC值。当完整性校验成功时,所生成的ECC值与存储在数据块中的ECC值匹配。然而,如果种子值与数据块的物理索引不匹配,该确认通常是不可能的。 在图1中,在初始工厂处理操作期间具有物理索引I和4的数据块被标识为不可用。然而,存储驱动器106无需重新线性化来从存储设备的索引方案中排除不可用块I和4。相反,系统100已经被制造为包括偏移量查找模块114,其可以是固件中的功能模块。偏移量查找模块114允许错误检测与校正模块110对从数据块读取的数据的完整性进行验证,即使当输入到错误检测与校正模块110的种子值不同于数据块的物理索引时。 在图示的实施例中,主计算机102发送四个访问命令104以将四个名字(例如,Sarah、Jake、June和Charlie)写入具有单元号0_3的四个目标数据块中。与四个目标数据块中的每一个相关联的数据(例如,名字)连同与每个数据块对应的逻辑块地址(LBA) —起发送到存储驱动器106。存储设备100将来自主计算机102的LBA分别转换成单元号O、1、2和3。此后,数据分配模块(未示出)选择物理块索引以与各单元号对应。为避免将数据写到具有物理索引I和4的不可用块中,数据分配模块判定与单元号O、1、2和3相关联的数据能够分别分配到物理数据块0、2、3和5中。结果是,名字Sarah、Jake、June和Charlie被写入物理数据块O、2、3和5中。 当从四个目标数据块中的一个读回数据时,偏移量查找模块114计算种子值,该种子值能够由错误检测与校正模块110使用来对从目标数据块中读取的数据的完整性进行验证。特别地,偏移量查找模块114访问偏移量表(未示出)并且取回与目标数据块的单元号相关联的偏移量。利用单元号和偏移量,偏移量查找模块生成种子值。错误检测与校正模块110使用种子值和从关联数据块读回的数据来计算ECC值,将该ECC值与存储在目标数据块中的ECC值进行比较。 例如,为了验证数据“Sarah”的完整性,偏移量查找模块114取回与单元号O相关联的偏移量O。利用偏移量0,偏移量查找模块114计算种子值0,该种子值用于计算与存储在具有物理索引O的数据块中的ECC值匹配的ECC值。 同样,为了验证数据“Jake”的完整性,偏移量查找模块114使用单元值I来取回偏移量I并且计算种子值2。错误检测与校正模块110使用种子2来计算与存储在具有物理索引2的数据块中的ECC值匹配的ECC值。 类似地,为了验证数据“Charlie”的完整性,偏移量查找模块110取回与单元号3相关联的偏移量2并且计算种子值5。错误检测与校正模块110使用种子值5和从具有物理索引5的数据块读回的数据来计算与存储在具有物理索引5的数据块中的ECC值匹配的ECC值。结果,数据写入到介质上的顺序可用数据块中,验证了数据的完整性,并且在初始驱动器处理期间未对驱动器进行重新线性化。 图2图示出具有创建偏移量表204的偏移量表创建模块202的存储设备200,偏移量表204能够用于计算用于错误检测模块(未示出)的种子值,并且因此对从数据块读取的数据的完整性进行验本文档来自技高网...

【技术保护点】
一种方法,包括:将数据块的索引序列中的数据块指定为不可用,其中每个数据块与物理索引相关联;将单元号与所述索引序列中的指定的数据块之后的后续可用数据块相关联;以及将偏移量与所述后续可用数据块的单元号相关联地记录在可由错误检测与校正模块访问的偏移量表中,其中所述偏移量和所述单元号的组合表示用于所述错误检测与校正模块的种子。

【技术特征摘要】
2013.03.11 US 13/793,9201.一种方法,包括: 将数据块的索引序列中的数据块指定为不可用,其中每个数据块与物理索引相关联; 将单元号与所述索引序列中的指定的数据块之后的后续可用数据块相关联;以及 将偏移量与所述后续可用数据块的单元号相关联地记录在可由错误检测与校正模块访问的偏移量表中,其中所述偏移量和所述单元号的组合表示用于所述错误检测与校正模块的种子。2.如权利要求1所述的方法,其中所述偏移量是所述后续可用数据块的所述单元号与所述物理索引之间的差值。3.如权利要求1所述的方法,其中将所述偏移量记录在所述偏移量表中还包括与所述索引序列中的受所述偏移量影响的第一数据块相关联地记录所述偏移量。4.如权利要求1所述的方法,其中记录所述偏移量是在存储设备的工厂格式化操作期间执行的。5.如权利要求1所述的方法,其中所述偏移量表存储在存储设备的固件中。6.如权利要求1所述的方法,其中所述索引序列包括与存储设备上的顺序数据块相关联的连续增加的索引。7.如权利要求1所述的方法,其中所述索引序列中的数据块是沿着磁盘上的数据磁道的连续扇区。8.—个以上有形处理器可读存储介质,其对用于在基于处理器的系统上执行计算处理的处理器可执行指令进行编码,所述计算处理包括: 将数据块的索引序列中的数据块指定为不可用,其中每个数据块与物理索引相关联; 将单元号与所述索引序列中的指定的数据块之后的后续可用数据块相关联;以及 将偏移量与所述后续可用数据块的单元号相关联地记录在可由错误检测与校正模块访问的偏移量表中,其中所述偏移量和所述单元号的组合表示用于所述错误检测与校正模块的种子。9.如权利要求8所述的一个以上计算机可读存储介质,其中所述偏移量是所述后续可用数据块的所述单元号与所述物...

【专利技术属性】
技术研发人员:D·J·库能A·T·卡塔里亚
申请(专利权)人:希捷科技有限公司
类型:发明
国别省市:美国;US

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

1