公开/公告号CN108564972A
专利类型发明专利
公开/公告日2018-09-21
原文格式PDF
申请/专利权人 广东紫晶信息存储技术股份有限公司;
申请/专利号CN201810211186.3
申请日2018-03-14
分类号
代理机构广州粤高专利商标代理有限公司;
代理人林丽明
地址 514781 广东省梅州市梅县畲江镇广州(梅州)产业转移工业园内
入库时间 2023-06-19 06:31:19
法律状态公告日
法律状态信息
法律状态
2023-08-08
专利权的转移 IPC(主分类):G11B20/18 专利号:ZL2018102111863 登记生效日:20230727 变更事项:专利权人 变更前权利人:广东紫晶信息存储技术股份有限公司 变更后权利人:江门晶铠信息科技有限公司 变更事项:地址 变更前权利人:514781 广东省梅州市梅县畲江镇广州(梅州)产业转移工业园内 变更后权利人:529000 广东省江门市江海区金瓯路233号10栋4层自编401室(信息申报制、一址多照)
专利申请权、专利权的转移
2020-05-29
授权
授权
2018-10-23
实质审查的生效 IPC(主分类):G11B20/18 申请日:20180314
实质审查的生效
2018-09-21
公开
公开
技术领域
本发明涉及一种光盘数据存储的纠错方法,更具体地,提出一种用于光盘数据存储的冗余恢复码纠错方法,用于提高光盘数据存储的容错率。
背景技术
随着光盘技术的发展,出现了多层记录数据的技术,增加了数据密度。由于单位密度下记录数据的增加,光盘上同样尺寸的损伤所造成的错误数据也会增加。
光盘的数据存储原理如下:当要将数据刻录到空白光盘时,利用高低两种功率的激光光束对光盘的染料层进行烧蚀,由于功率不同,使得烧蚀后的染料层会出现凹坑和凸起,代表着存储到光盘上的二进制信息。当读取光盘信息时,由于凹坑和凸起对激光的反射率不同,光驱会接收到两种不同的光强信号,反射光的强弱代表着二进制的0和1,光驱根据接收到的光强信号读取光盘信息。
光盘采用了两种编码来保证光盘数据的可靠性,它们分别是纠错码(Error-Correction Code,ECC)和调制码(Modulation),纠错码从信息的逻辑正确性上面保证,调制码从刻录通道脉冲的可靠性上面保证。为了保证刻录数据的正确读取,原始数据在刻录到光盘上之前,首先经过纠错编码,然后经过调制编码,最终通过光驱激光器将电平脉冲信号刻录到光盘上;读取的过程正好相反,先由激光拾光头提取不断变化的光强信号,也就是首先进行通道位的检测,再经过调制解码和纠错解码,最终还原成原始的用户数据。
蓝光光盘上运用的纠错码机制是采用了列方向上的长距码(Long-DistanceCode,LDC)和突发指示子码(Burst-Indicating Subcode,BIS)相结合进行编码。将BIS码均匀插入LDC码中,用于标记在LDC码中的长突发错误位置,再由LDC码纠正已知位置的长突发错误和未知位置的随机错误和短突发错误。CD光盘上运用的纠错码机制是采用交叉交错理德-所罗门码(Cross Interleaved Reed-Solomon Code,CIRC),它的主旨是除了增加二维纠错编码外,还将源数据打散,根据一定的规则进行扰频和交错编码,使数据相互交叉交错,从而进一步提高纠错的能力。DVD光盘上运用的纠错码机制是采用使用理德-所罗门乘积码(Reed-Solomon Product-like Code,RS-PC)纠错编码方式和8/16位信号调制方式,确保数据读取可靠。
在光盘数据的读取过程中,可能会出现两种错误。第一种是随机错误,它主要由光盘的倾斜、激光光斑的离焦等因素引起,错误长度较短,在盘片上分布比较均匀,容易得到纠正;第二类是突发性错误,它由光盘表面的划痕、灰尘、指纹等引起,错误长度较长,容易形成集中分布,可能会出现无法纠正的情况。如图7所示,目前使用了标准纠错码机制的蓝光光盘可恢复数据范围是:切线方向上,长度小于4.5毫米的突发性错误;径向方向上,不能恢复任何长度径向方向上的突发错误,因此需要一种纠错能力更强的方法来满足数据纠错需求。
发明内容
本发明为满足数据纠错需求,提出纠错能力更强的一种用于光盘数据存储的冗余恢复码纠错方法。
为解决上述技术问题,本发明的技术方案如下:
如图1所示,当数据要求刻录时,具体步骤如下:
S10.对用户数据进行冗余恢复码编码,将其与用户数据组成数据条带组;
S20.对编码后的所述数据条带组再次进行纠错和调制的编码;
S30.将再次编码后的所述数据条带组刻录在光盘上;
如图2所示,在数据被读取时,具体步骤如下:
S40.读取光盘上已刻录的所述数据条带组,并对其进行调制和纠错的解码;
S50.读取到无法读取的错误数据时,进行冗余恢复码解码,还原用户数据。
优选地,进行冗余恢复码编码时,具体步骤如下:
S11.将用户数据按一定量等分成用户数据块;
S12.将首个用户数据块再次按一定量等分成用户数据段,并编号为data#0、data#1、data#2……;
S13.将首段用户数据data#0中的每一位二进制数值与次段用户数据data#1内对应数据位的二进制数值进行异或运算,得到首个的冗余恢复码RRC#1;
S14.将首个冗余恢复码RRC#1的二进制数值与其次段用户数据内对应数据位的二进制数值进行异或运算,得到次个冗余恢复码;
S15.重复S14步骤直到得到最后的冗余恢复码即为该用户数据块的冗余恢复码RRC;
S16.将S15得到的所述冗余恢复码RRC与该用户数据块组成数据条带;
S17.将剩余的用户数据块重复S12至S16步骤,直到所有用户数据块完成冗余恢复码编码,得到数据条带组。
优选地,进行冗余恢复码编码时,所述按一定量等分的用户数据块为992MB的数据块,将其再次等分成31块并进行编号为data#0、data#1、data#2……data#30。
优选地,所述异或运算的方法为:
1×or 1=0;
0×or 0=0;
1×or 0=1;
0×or 1=1。
优选地,经异或运算得到的所述冗余恢复码与其对应的数据段具有同等长度。
优选地,所述再次编码后的数据条带组由光驱激光器以电平脉冲信号形式刻录到光盘上。
优选地,所述已刻录的数据条带组由激光拾光头读取。
优选地,所述S50具体步骤如下:将所述错误数据对应数据条带中的冗余恢复码RRC与所述错误数据对应数据条带中的其他用户数据段中对应数值逐一进行异或运算,得出错误数据的正确值并对其进行替换。
优选地,所述异或运算得出错误数据正确值的过程如下,其中x为错误数据:
若x×or 1=0,则x=1;
若x×or 0=0,则x=0;
若x×or 0=1,则x=1;
若x×or 1=1,则x=0。
优选地,本方法可同样适用于CD、DVD、蓝光光盘。
与现有技术相比,本发明技术方案的有益效果是:可兼容现有标准纠错码,提高光盘的容错率。如图8所示,在蓝光光盘的数据刻录中使用本发明提出的一种用于光盘数据存储的冗余恢复码纠错方法后,可恢复宽度小于33微米即100磁道(track)的圆周范围内的突发错误。
附图说明
图1是本发明的数据刻录到光盘的流程图;
图2是本发明的从光盘上读取数据的流程图;
图3是本发明的对用户数据进行冗余恢复码的编码过程;
图4是本发明的数据条带的数据结构示意图;
图5是本发明的对用户数据片段进行异或运算得到冗余恢复码的示意图;
图6是本发明的一个出现错误数据的数据条带组的示意图;
图7是使用标准纠错码机制的蓝光光盘可恢复数据范围示意图;
图8是使用本发明的冗余恢复码纠错方法的蓝光光盘可恢复数据范围示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
如图3所示,对用户数据进行冗余恢复码编码,具体是指:由于
1GB=1024MB=1073741824字节,
1024MB/32=32MB,
32MB×31=992MB;
将需要刻录的用户数据等分成每份992MB的用户数据块,将首个用户数据块等分为31份用户数据段并进行编号,分别为data#0、data#1、data#2……data#30;然后将在data#0中存储数据的每一位二进制数值和data#1内对应数据位的二进制数值进行异或运算,得到一个和等分用户数据段同等长度(32MB)的冗余恢复码RRC#1;再将得到的RRC#1的每一位二进制数值和data#2对应数据位的二进制数值进行异或运算,得到第二个冗余恢复码RRC#2;如此类推,按照上述方法得到的冗余恢复码RRC#29和data#30进行异或运算,得到RRC#30,即该首个用户数据块的冗余恢复码RRC。
如图4所示,992MB用户数据块和通过异或运算得到32MB的冗余恢复码合在一起得到一个1GB的数据条带(band)。
将剩余的用户数据块重复上述步骤,直到所有用户数据块完成冗余恢复码编码,得到数据条带组。
如图5所示,上述对用户数据段内二进制数值进行异或运算,例如对data#0和data#1用户数据段内相同位置的每一位二进制数值进行异或运算,从第一位到第四位分别是:
1×or 1=0;
0×or 0=0;
1×or 0=1;
0×or 1=1;
如此对两个用户数据段内对应位置上的数值进行异或运算可以得到冗余恢复码RRC#1。
如图6所示,在对光盘数据进行读取时,检测到某个位置的数据无法正常读取,开始进行冗余恢复码解码:找到错误数据x所在的用户数据段data#1,使用该用户数据段所在的数据条带band#1的其他用户数据段data#0、data#2、
data#3……data#30和冗余恢复码RRC内对应位置的数值逐一进行异或运算,求出x的值,实现对错误数据的恢复。
上述异或运算求x,求解算法如下:
若x×or 1=0,则x=1;
若x×or 0=0,则x=0;
若x×or 0=1,则x=1;
若x×or 1=1,则x=0。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
机译: v u00ecdeo的编码方法,v u00ecdeo编码器,对v u00ecdeo进行解码的方法,v u00ecdeo解码器可还原位序列的帧。M u00ecdia存储已存储在程序中,通过计算机读取 u00ecvel即可实现一种用于对v u00ecdeo,M u00ecdia存储器进行编码的方法,该方法已存储在计算机读取的程序pass u00ecvel中,以实现对v u00ecdeo进行编码的方法。v u00ecdeo的编码方法,用于消除冗余中的冗余v u00ecdeo的帧,解码v u00ecdeo的方法以恢复输入比特序列的原始图像,以及解码装置以恢复当前帧
机译: 用于在76位存储模块中使用的用于编码64位数据半字节纠错和循环冗余码(CRC)地址错误的子系统和方法
机译: 用于检测纠错码或循环冗余码中的码字错误的系统和方法