光盘错误检测和校正

合集下载

光盘错误检测和校正

光盘错误检测和校正

光盘错误检测和校正光盘、磁盘和磁带一类的数据记录媒体一样,由于盘的制作材料的性能、盘制造生产技术水平的限制、驱动器的性能以及使用不当等诸多原因,从盘上读出的数据不可能完全正确。

据有关厂家的测试和统计,一片未使用过的只读光盘,某原始误码率约为3×10-4;沾有指纹的盘的误码率约为6×10-4;有伤痕的盘的误码率约为5×10-3。

针对这种情况,激光盘存储器采用了功能强大的错误码检测和纠正措施。

采用的具体对策归纳起来有三种:(1) 错误检测:采用CRC(Cyclic Redundancy Code)检测读出数据是否有错。

(2) 错误校正码:采用里德-索洛蒙码(Reed-Solomon Code),简称为RS码,进行纠错。

RS码被认为是性能很好的纠错码。

(3) 交叉交插里德-索洛蒙码CIRC(Cross Interleaved Reed-Solomon Code), 这个码的含义可理解为在用RS编译码前后,对数据进行交插处理和交叉处理。

对这些码的理论分析和计算有许多专著作了详尽的深入论述,对不需要开发纠错技术的读者仅需要了解错误检测和校正的一些基本概念即可。

1 .CRC错误检测原理在纠错编码代数中,把以二进制数字表示的一个数据系列看成一个多项式。

例如,二进制数字序列10101111,用多项式可以表示成:=式中的表示代码的位置,或某个二进制数位的位置,前面的系数a i表示码的值。

若a i是一位二进制代码,则取值是0或1。

称为信息代码多项式。

在模2多项式代数运算中定义的运算规则有:例如,模2多项式的加法和减法:从这两个例子中可以看到,对于模2运算来说,代码多项式的加法和减法运算所得的结果相同。

所以在做代码多项式的减法时,可用做加法来代替做减法。

代码多项式的除法可按长除法做。

例如:如果一个k位的二进制信息代码多项式为,再增加(n-k)位的校验码,那么增加(n -k)位之后,信息代码多项式在新的数据块中就表示成,如图13-01所示。

八位数据ecc原理

八位数据ecc原理

八位数据ecc原理八位数据ECC原理一、引言在计算机科学领域,错误检测和纠正技术是非常重要的,尤其是在数据传输过程中。

而ECC(Error Correcting Code,纠错码)就是一种常用的错误检测和纠正技术。

本文将介绍其中一种常见的ECC 技术——八位数据ECC原理。

二、什么是八位数据ECC原理八位数据ECC原理是一种基于八位二进制数据的纠错码技术。

它利用了冗余的校验位来检测和纠正传输过程中可能发生的错误。

八位数据ECC原理的基本思想是通过添加冗余位,使得数据能够自动检测和纠正一定数量的错误。

三、八位数据ECC原理的实现步骤1. 数据编码:在数据传输之前,需要对八位数据进行编码。

编码的过程是将原始数据与一系列校验位进行逻辑运算,生成一段具有纠错能力的编码数据。

这些校验位是通过八位数据进行一系列的异或运算得到的。

2. 数据传输:编码完成后,数据就可以进行传输了。

传输过程中,可能会出现噪声、干扰或数据位翻转等错误情况。

3. 数据解码:接收方在接收到数据后,需要对数据进行解码。

解码的过程是将接收到的编码数据与一系列校验位进行逻辑运算,得到一段被纠正的数据。

4. 错误检测和纠正:通过对解码后的数据进行校验,可以检测出传输过程中是否发生错误。

如果发现错误,八位数据ECC原理可以根据校验位的信息进行纠正,恢复出原始的八位数据。

四、八位数据ECC原理的优势和应用1. 高纠错能力:八位数据ECC原理可以检测和纠正多达两位错误,大大提高了数据传输的可靠性。

2. 简单高效:八位数据ECC原理的实现相对简单,运算速度快,适用于大部分数据传输场景。

3. 广泛应用:八位数据ECC原理被广泛应用于存储介质、通信协议、计算机内存等领域。

例如,CD、DVD等光盘介质就采用了八位数据ECC原理来纠正读取过程中的错误。

五、总结八位数据ECC原理是一种常用的错误检测和纠正技术,通过添加冗余校验位,可以检测和纠正传输过程中的错误。

电子文件(档案)长期安全保存的有效方法——光盘备份

电子文件(档案)长期安全保存的有效方法——光盘备份

电子文件(档案)长期安全保存的有效方法——光盘备份随着档案行业信息化的快速发展,电子文件(档案)大量产生,档案工作面临着新的机遇和挑战,电子文件(档案)长期安全保存问题是档案行最为关注的重要问题之一。

电子文件(档案)的长期安全保存是未来相当长的历史时期的重要工作之一。

脱机备份、光盘备份是一个实际有效的方法。

电子文件(档案)的脱机备份、异质备份和异地备份工作中,光盘以其存储适量、不可更改、寿命较长、文件便于查找、保存成本低廉、数据可监测和寿命趋势可监测等突出特点已经在档案行业电子文件长期保存方面得到普遍认同。

《电子文件归档光盘技术要求和应用规范》DA/T38-2008的公布实施,档案级光盘产品的上市以及光盘备份技术的形成,三个基本要素的成熟与完善,光盘已经具备了成为电子文件(档案)的长期安全保存有效载体的条件。

一、光盘备份相关标准、规范1.国际标准ISO/IEC10995《信息技术、信息交换和存储用数字记录媒介光学媒介档案寿命的评估实验方法》2.《电子文件归档与管理规范》GB/T18894-2002中的物理备份定义是“指把电子文件集中下载到可脱机保存的载体上”。

“推荐采用的载体,按优先顺序依次为:只读光盘、一次写光盘、磁带等”。

3.《电子文件归档光盘技术要求和应用规范》DA/T38-2008二、档案级光盘档案级光盘是电子文件(档案)的长期安全保存的有效载体。

目前市场上常见的光盘多是信息记录光盘,信息记录光盘追求的是信号不丢失和可刻录性,光盘寿命不是重点追求指标。

光盘的寿命随着光盘质量的不同也存在明显差异。

档案级光盘以光盘信息长期保存为目标,在追求信号不丢失和可刻录性基础上强调光盘的保存质量和保存寿命,保证光盘信息长期可读。

由于信息记录光盘和档案级归档光盘产品设计目的不同,因此所采用原材料不同,制作工艺不同,检测标准不同,检测指标不同,价格不同,产品特征特点和应用领域也不相同。

CD-RDVD±R1刻录前TE<0.45刻录前TE<0.452刻录前FE<0.5刻录前FE<0.53刻录后BLER<50,E32=0刻录后PIE<80,POF=04刻录后SYM-0.15~+0.15刻录后ASYM-0.05~+0.155刻录后Jitter<35ns刻录后DCJitter≦9%6温湿度耐候试验80℃,85%RH,96小时BLER<150,E32=0温湿度耐候试验80℃,85%RH,96小时PIE<180,POF=0档案级光盘是专为重要数据长期保存而设计开发的优质光盘。

光盘的纠错原理

光盘的纠错原理

光盘的纠错原理光盘是一种常见的存储介质,被广泛应用于数据存储和信息传输领域。

然而,由于各种因素的干扰,光盘上的数据常常会出现错误。

为了解决这个问题,光盘采用了纠错机制,以保证数据的可靠性和完整性。

光盘的纠错原理主要包括两个方面:错误检测和错误校正。

错误检测是指通过特定的算法和校验码来检测数据中的错误;错误校正则是在检测到错误后,通过纠错码来恢复数据的正确性。

在光盘中,数据是以脉冲信号的形式存储的。

纠错码是通过对数据进行编码来增加冗余度,使得在数据传输过程中即使出现一定的错误,仍然能够恢复原始数据。

常见的纠错码有海明码、RS码和BCH码等。

在错误检测方面,光盘通常采用的是海明码。

海明码通过在数据中添加冗余位来实现错误检测。

具体来说,海明码将原始数据分成若干个数据块,并在每个数据块中添加若干个校验位。

这些校验位的值是根据数据块中的数据计算得到的,用于检测数据块中的错误。

当光盘读取数据时,光头会读取到数据块中的原始数据和校验位。

通过对原始数据和校验位进行计算,可以得到一个校验码。

如果校验码与读取到的校验位不一致,就说明数据块中存在错误。

在错误校正方面,光盘通常采用的是RS码和BCH码。

这些码通过在数据中添加冗余位来实现错误校正。

具体来说,RS码在数据中添加一定数量的校验位,用于纠正数据块中的错误;BCH码则通过在数据中添加一定数量的校验位,用于定位错误的位置。

当光盘读取数据时,光头会读取到数据块中的原始数据和校验位。

通过对原始数据和校验位进行计算,可以得到一个校验码。

如果校验码与读取到的校验位不一致,就说明数据块中存在错误。

此时,根据RS码或BCH码的算法,可以根据校验位的值来纠正数据块中的错误。

除了海明码、RS码和BCH码,光盘还可以采用其他纠错码来提高数据的可靠性。

不同的纠错码具有不同的纠错能力和复杂度,可以根据实际情况选择合适的纠错码。

总结起来,光盘的纠错原理包括错误检测和错误校正两个方面。

错误检测通过海明码等纠错码来检测数据中的错误,而错误校正则通过RS码和BCH码等纠错码来纠正数据中的错误。

CHKDSK命令可检查磁盘状态并显示状态报告

CHKDSK命令可检查磁盘状态并显示状态报告

CHKDSK命令可检查磁盘状态并显示状态报告,还能修正磁盘错误。

状态报告显示MS-DOS文件系统中的逻辑错误,该文件系统由文件分配表(FA T)和目录组成(CHKDSK不验证文件中的信息能否准确读出)。

如果磁盘有错误,CHKDSK便会给出一条警告信息。

所以,应不时地用CHKDSK来检查一下磁盘有无错误,以保证系统的正常运行。

一、CHKDSK命令的语法CHKDSK drive:[[path]filename][/F][/V]若要显示当前驱动器的磁盘状态,可用命令:CHKDSK二、CHKDSK命令的参数解释(1)drive指定要用CHKDSK检查的磁盘所在的驱动器。

(2)[path]filename指定要用CHKDSK进行碎片检查的一个或一组文件的路径及名称,可用通配符(*或?)指定多上文件。

三、CHKDSK命令的开关项(1)/F修正磁盘错误。

需要注意的是从其它应用程序(如Windows等)运行CHKDSK时不要选此项。

(2)/V磁盘检查时,显示每个目录下的文件。

四、帮助信息的获取如果不知道CHKDSK命令的用法也没关系,在DOS下随时打入CHKDSK/?便可了解其用法。

五、关于CHKDSK命令的注释(1)状态报告的形式MS-DOS按类似下列的形式显示CHKDSK的状态报告:V olume MS-DOS_6 created 07-16-1996 10:40aV olume Serial Number is 2111-59F0629,424,128 bytes total disk space638,976 bytes in 15 hidden files1,146,880 bytes in 70 directories120,766,464 bytes in 1,802 user files506,871,808 bytes available on disk(2)修正磁盘错误在修正磁盘错误时,最好使用ScanDisk程序。

通信电子中的错误控制码技术

通信电子中的错误控制码技术

通信电子中的错误控制码技术随着电子技术的飞速发展,通信电子领域也在不断地创新和进步。

而错误控制码技术就是通信电子领域的一项关键技术,可以提高数据传输的可靠性和安全性。

本文将详细介绍错误控制码技术的原理、分类和应用。

一、错误控制码技术的原理在通信电子领域中,数据在传输过程中可能会出现各种错误,例如信号传输中受到噪声的影响、存储过程中的数据损坏等等。

而错误控制码技术就是为了识别和纠正这些错误而被引入。

错误控制码技术的原理是在原始数据中添加一些冗余信息,这些信息被称为校验位或校验码。

在数据接收端,接收器会对接收到的数据进行验证和比较,以识别出错误的数据,并尝试进行纠正。

这一过程可以保证数据传输的可靠性和安全性。

二、错误控制码技术的分类根据不同的分类方法,错误控制码技术可以划分为多个类别。

以下是几个常见的分类方法:1. 基于码的分类基于码的分类方法根据不同码的特征来划分错误控制码技术。

例如,可以将错误控制码技术分为方块码、循环码、卷积码等。

方块码(Block Code)是一种从长度为k的信息代码生成长度为n的编码代码的码。

它的特点是编码前后数据长度不变,编码算法简单。

循环码(Cyclic Code)是指在码中加入了循环冗余检验,通过位移引导码生成的编码方式,它具有编码、解码简便等优点。

卷积码则是将输入符号、信道扰动以及一定转移概率之间的关系表示为状态转移过程,并用一些复杂的操作来决定将输入符号变为具体状态符号序列的一种码。

2. 基于编码方式的分类基于编码方式的分类方法根据机制的不同来划分错误控制码技术。

例如,可以将错误控制码技术分为前向纠错码、反向纠错码等。

前向纠错码(FEC)通常用于实时流媒体和传输控制协议中,其原理是在发送端将一定时间内的数据进行编码,然后将编码的数据流发送到接收端,接收端进行解码以实现错误检测和校正。

反向纠错码(BEC)是与FEC相对应的一种编码方式。

它是一种在接收端进行纠正的编码机制。

光盘数据恢复两种武器

光盘数据恢复两种武器

光盘数据恢复“两种武器”随着海量信息时代的到来,人们越来越多的倾向于用光盘来保存一些重要数据。

但在使用光盘时,如果保护不当,光盘很容易出现损坏而导致盘上的数据无法读取,这时用普通方法很难读取这些数据,不过我们可以尝试用“两种武器”——CDCheck和BadCopy来进行修复。

第一种“武器”——CDCheck1.检测光盘数据在修复光盘数据以前,建议先给光盘做一次“全身体检”,检查哪些文件出现错误,然后再对症下药。

具体方法是:将损坏的光盘放入光驱,启动CDCheck(最新版本为3.1.12),在程序的主界面的分区列表中选择光驱,随后单击工具栏中的“检查”按钮,程序会对光盘上的文件逐一进行检查(图1),并且在窗口右侧列出光盘文件的读取信息,包括读取进度、平均传输速率、读取时间和读取文件统计等项目。

当CDCheck检测到光盘中的错误数据时,会在主界面下方的窗口中显示出错误文件的种类、文件类型、文件路径和错误信息等项目,最后给出检测结果。

图12.恢复光盘数据检测出错误文件后,我们就可以用CDCheck的恢复功能来读取损坏的数据了。

单击程序工具栏中的“恢复”按钮,在“恢复设置”窗口的“要修复的源文件夹/源文件”栏中选择需要修复的文件,在下面的“输出文件夹”栏中选择文件恢复后的存放位置(图2),再单击“继续”按钮,即可恢复相应的数据。

图2第二种“武器”——BadCopy如果光盘损坏比较严重,CDCheck就可能力不从心了。

这时我们就可以使用一款功能更强大的数据修复软件——BadCopy(最新版本v3.80),它是老牌磁盘、光盘文件读取/恢复工具,提供了智能数据修复功能,能最大程度的挽回损失。

BadCopy针对数据“已损坏、已丢失”等不同的受损程度,提供了“挽救已损坏文件”模式和“挽救已丢失文件”模式。

而在实际修复光盘数据时,只需几个简单的步骤就能轻松完成任务。

步骤1:首先在程序主界面左侧的“恢复源”列表中选择“光存储介质”项,随后在程序主窗口右侧的“恢复模式”中选择“挽救受损的文件”(图3)。

刻录光盘失败故障逐一排查

刻录光盘失败故障逐一排查

刻录光盘失败故障逐一排查1、要是在使用刻录光驱刻录光盘的过程中,不但无法成功刻录光盘,而且还弹出“Buffer Under Run”这样的故障提示时,就需要对下面几种可能因素进行逐一排查了:①是否启用了屏幕保护程序,关闭省电功能或者是否运行了瑞星2005之类的杀毒软件,一旦启用了屏幕保护程序或者杀毒软件的话,这些程序很容易中断刻录数据的正常传输,这样就容易引发刻录光驱无法成功刻录光盘的现象发生。

当然,现在品牌较好的刻录机一般都有专门的刻录保护技术,这些技术能够确保刻录光驱在遇到突发事件后立即暂停当前正在进行的刻录操作,同时将当前的刻录状态信息全部记录下来,一旦突发事件排除、刻录缓存中的数据得到新的补充后,刻录光驱就能自动恢复到上次的刻录状态并继续进行下面的刻录。

例如:先锋117系列,特别是先锋DVR-217VXL,有先锋特有的“液晶补正”、“激光功率自动调节”和“智能刻录策略”等专业刻录品质保障技术。

②是否同时运行了其他多个应用程序;如果其他应用程序与刻录驱动程序一起运行的话,那么系统有限的CPU资源以及内存资源都将被其他应用程序“抢用”,而刻录光驱一旦无法获得足够高的CPU资源以及内存资源的话,当然会出现刻录失败的故障现象。

2、在新环境下尝试进行刻录,如果成功的话,那就表明刻录光驱自身没有问题,而问题多半是出在原先的计算机身上。

而计算机本身最有可能影响刻录操作的因素:①电源功率大小,不少刻录失败的操作就是因为计算机无法为刻录光驱提供足够的电源动力,普通CDR刻录机的功率一般在15W左右,可是DVD刻录机一般都在25-35W。

②碎片整理,刻录大量小文件时,最好要先对存放文件的硬盘进行碎片整理,保证被刻录的数据连续。

所以说:一个干干净净的系统,是最好的。

3、计算机系统中同时安装了其他的虚拟光驱程序,要是系统有多个虚拟光驱程序时,这些程序与刻录光驱程序之间或者这些程序相互之间都有可能出现资源冲突故障,从而导致刻录光驱发生刻录失败的故障。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第13章错误检测和校正光盘、磁盘和磁带一类的数据记录媒体一样,由于盘的制作材料的性能、盘制造生产技术水平的限制、驱动器的性能以及使用不当等诸多原因,从盘上读出的数据不可能完全正确。

据有关厂家的测试和统计,一片未使用过的只读光盘,其原始误码率约为3×10-4;沾有指纹的盘的误码率约为6×10-4;有伤痕的盘的误码率约为5×10-3。

针对这种情况,激光盘存储器采用了功能强大的错误码检测和纠正措施。

采用的具体对策归纳起来有三种:(1) 错误检测:采用CRC(Cyclic Redundancy Code)检测读出数据是否有错。

(2) 错误校正码:采用里德-索洛蒙码(Reed-Solomon Code),简称为RS 码,进行纠错。

RS码被认为是性能很好的纠错码。

(3) 交叉交插里德-索洛蒙码CIRC(Cross Interleaved Reed-Solomon Code), 这个码的含义可理解为在用RS编译码前后,对数据进行交插处理和交叉处理。

对这些码的理论分析和计算有许多专著作了详尽的深入论述,对不需要开发纠错技术的读者仅需要了解错误检测和校正的一些基本概念即可。

13.1 CRC错误检测原理在纠错编码代数中,把以二进制数字表示的一个数据系列看成一个多项式。

例如,二进制数字序列10101111,用多项式可以表示成:M(x) = a7x7 + a6x6 + a5x5 + a4x4 + a3x3 + a2x2 + a1x1 + ax0= x7 + x6 + x5 + x4 + x3 + x2 + x1 + 1式中的x i表示代码的位置,或某个二进制数位的位置,x i前面的系数a i表示码的值。

若a i是一位二进制代码,则取值是0或1。

M(x)称为信息代码多项式。

在模2多项式代数运算中定义的运算规则有:1x i + 1x i = 0-1x i = 1x i例如,模2多项式的加法和减法:从这两个例子中可以看到,对于模2运算来说,代码多项式的加法和减法运算所得的结果相同。

所以在做代码多项式的减法时,可用做加法来代替做减法。

代码多项式的除法可按长除法做。

例如:如果一个k位的二进制信息代码多项式为 M(x),再增加(n-k)位的校验码,那么增加(n-k)位之后,信息代码多项式在新的数据块中就表示成 x n-k M(x) ,如图13-01所示。

图13-01 信息代码结构如果用一个校验码生成多项式 G(x) 去除代码多项式 x n-k M(x),得到的商假定为Q(x) ,余式为 R(x) ,则可写成x n-k M(x)= Q(x)G(x) + R(x)因为模2多项式的加法和减法运算结果相同,所以又可把上式写成:x n-k M(x) + R(x)= Q(x)G(x)G(x) 称为校验码生成多项式。

从该式中可以看到,代表新的代码多项式 x n-k M(x) + R(x)是能够被校验码生成多项式 G(x) 除尽的,即它的余项为0。

例如,CD盘中的q通道和软磁盘存储器中使用的CRC校验码生成多项式是G(x) = x16 + x12 + x5 + 1若用二进制表示,则为G(x) = 100010000000100001(B) = 11021(H)假定要写到盘上的信息代码 M(x) 为M(x) = 4D6F746F (H)由于增加了2个字节共16位的校验码,所以信息代码变成 x16M(x):4D6F746F0000(H)。

CRC检验码计算如下:两数相除的结果,其商可不必关心,其余数为B994(H)就是CRC校验码。

把信息代码写到盘上时,将原来的信息代码和CRC码一起写到盘上。

在这个例子中,写到盘上的信息代码和CRC码是4D6F746FB994,这个码是能被11021(H)除尽的。

从盘上把这块数据读出时,用同样的CRC码生成多项式去除这块数据,相除后得到的两种可能结果是:①余数为0,表示读出没有出现错误;②余数不为0,表示读出有错。

CD-ROM中也采用了相同的CRC检错。

CD-ROM扇区方式01中,有一个4字节共32位的EDC字域,它就是用来存放CRC码。

不过,CD-ROM采用的CRC校验码生成多项式与软磁盘采用的生成多项式不同,它是一个32阶的多项式, P(x) = (x16 + x15 + x2 + 1)(x16 + x2 + x+ 1)计算CRC码时用的数据块是从扇区的开头到用户数据区结束为止的数据字节,即字节0~2063共2064个字节。

在EDC中存放的CRC码的次序如下:13.2 RS编码和纠错算法13.2.1. GF(2m)域RS(Reed-Solomon)码在伽罗华域(Galois Field,GF)中运算的,因此在介绍RS码之前先简要介绍一下伽罗华域。

CD-ROM中的数据、地址、校验码等都可以看成是属于GF(2m) = GF(28)中的元素或称符号。

GF(28)表示域中有256个元素,除0,1之外的254个元素由本原多项式P(x)生成。

本原多项式P(x)的特性是,得到的余式等于0。

CD-ROM用来构造GF(28) 域的P(x)是P(x) = x8 + x4 +x3 + x2 + 1 (13-1)而GF(28)域中的本原元素为α = (0 0 0 0 0 0 1 0)下面以一个较简单例子说明域的构造。

[例13.1]构造GF(23)域的本原多项式P(x)假定为P(x) = x3 + x+ 1α定义为P(x) = 0的根,即α3+α+1 = 0和α3 = α+1GF(23)中的元素可计算如下:用二进制数表示域元素得到表13-01所示的对照表表13-01 GF(23)域中与二进制代码对照表,P(x) =这样一来就建立了GF(23)域中的元素与3位二进制数之间的一一对应关系。

用同样的方法可建立GF(28)域中的256个元素与8位二进制数之间的一一对应关系。

在纠错编码运算过程中,加、减、乘和除的运算是在伽罗华域中进行。

现仍以GF(23)域中运算为例:加法例:α0+α3 = 001+011 = 010 = α1减法例:与加法相同乘法例:α5·α4 = α(5+4)mod7 = α2除法例:α5/α3 = α2α3/α5 = α-2 = α(-2+7) = α5取对数:log(α5) = 5这些运算的结果仍然在GF(23)域中。

13.2.2 RS的编码算法RS的编码就是计算信息码符多项式M(x)除以校验码生成多项式之后的余数。

在介绍之前需要说明一些符号。

在GF(2m)域中,符号(n,k)RS的含义如下:m 表示符号的大小,如m = 8表示符号由8位二进制数组成n 表示码块长度k 表示码块中的信息长度K=n-k = 2t 表示校验码的符号数t 表示能够纠正的错误数目例如,(28,24)RS码表示码块长度共28个符号,其中信息代码的长度为24,检验码有4个检验符号。

在这个由28个符号组成的码块中,可以纠正在这个码块中出现的2个分散的或者2个连续的符号错误,但不能纠正3个或者3个以上的符号错误。

对一个信息码符多项式M(x),RS校验码生成多项式的一般形式为(13-2)式中,m0是偏移量,通常取K= 0或K= 1,而(n-k)≥2t(t为要校正的错误符号数)。

下面用两个例子来说明RS码的编码原理。

[例13.2] 设在GF(23)域中的元素对应表如表13-01所示。

假设(6,4)RS 码中的4个信息符号为,信息码符多项式M(x)为M(x) = m3x3 + m2x2+ m1x+ m(13-3)并假设RS校验码的2个符号为Q1和Q,的剩余多项式R(x)为R(x) = Q1(x)+ Q这个多项式的阶次比G(x)的阶次少一阶。

如果K= 1,t = 1,由式(13-2)导出的RS校验码生成多项式就为= (x-α)(x-α2) (13-4)根据多项式的运算,由式(13-3)和式(13-4)可以得到m 3x5+m2x4+m1x3+mx2+Q1x+Q= (x-α)(x-α2)Q(x)当用x = α和x = α2代入上式时,得到下面的方程组,经过整理可以得到用矩阵表示的(6,4)RS码的校验方程:求解方程组就可得到校验符号:在读出时的校正子可按下式计算:[例13.3]在例13.2中,如果K= 0,t = 1,由式(13-2)导出的RS校验码生成多项式就为= (x-α0)(x-α1) (13-5)根据多项式的运算,由(13-3)和(13-5)可以得到下面的方程组:方程中的αi也可看成符号的位置,此处i = 0,1, (5)求解方程组可以得到RS校验码的2个符号为Q1和Q,(13-6) 假定mi为下列值:代入(13-6)式可求得校验符号: Q 1 = α6 = 101 Q 0 = α4 = 110 13.2.3 RS 码的纠错算法RS 码的错误纠正过程分三步: (1)计算校正子(syndrome),(2)计算错误位置,(3)计算错误值。

现以例13.3为例介绍RS 码的纠错算法。

校正子使用下面的方程组来计算:为简单起见,假定存入光盘的信息符号m 3、m 2、m 1、m 0和由此产生的检验符号Q 1、Q 0均为0,读出的符号为m 3′、m 2′、m 1′、m 0′、Q 1′和Q 0′。

如果计算得到的s 0和s 1不全为0,则说明有差错,但不知道有多少个错,也不知道错在什么位置和错误值。

如果只有一个错误,则问题比较简单。

假设错误的位置为αx ,错误值为m x ,那么可通过求解下面的方程组:得知错误的位置和错误值。

如果计算得到s 0 = α2和s 1 = α5,可求得αx = α3和m x = α2,说明m 1出了错,它的错误值是α2。

校正后的m 1= m 1′+m x ,本例中m 1=0。

如果计算得到s 0 = 0,而s 1≠0,那基本可断定至少有两个错误,当然出现两个以上的错误不一定都是s 0 = 0和s 1≠0。

如果出现两个错误,而又能设法找到出错的位置,那么这两个错误也可以纠正。

如已知两个错误m x1和m x2的位置αx1和αx2,那么求解方程组:就可知道这两个错误值。

CD-ROM 中的错误校正编码CIRC 和里德-索洛蒙乘积码(Reed Solomon Product -like Code ,RSPC)就是采用上述方法导出的。

13.3 CIRC 纠错技术光盘存储器和其它的存储器一样,经常遇到的错误有两种。

一种是由于随机干扰造成的错误,这种错误称随机错误。

它的特点是随机的、孤立的,干扰过后再读一次光盘,错误就可能消失。

另一种错误是连续多位出错,或连续多个符号出错,如盘片的划伤、沾污或盘本身的缺陷都可能出现这种错误,一错就错一大片。

这种错误称为突发错误。

CIRC(Cross Interleaved Reed Solomon)纠错码综合了交插、延时交插、交叉交插等技术,不仅能纠随机错误,而且对纠突发错误特别有效。

相关文档
最新文档