错误校正电路的制作方法

文档序号:6405574阅读:198来源:国知局
专利名称:错误校正电路的制作方法
技术领域
本发明涉及通过里德-所罗门码的错误校正和循环冗余码的错误检测对记录体的数据错误进行校正的电路,特别涉及可使循环冗余码计算高速化的错误校正电路。
一般来说,在数字录音磁盘、数字录音磁带、光磁盘等中,为了校正数据错误,将信息m比特作为1个符号来处理,并对冗余符号2七个符号有七个符号为可校正码,可以采用m=8的里德-所罗门码。
其中,光磁盘采用校正能力较大的8符号校正的里德-所罗门码,而其他记录装置采用2~3符号校正的里德-所罗门码。为了高速地校正8符号的错误,例如只要构成伽罗瓦域运算电路(载于“关于利用伽罗瓦运算装置的里德-所罗门码译码法的研究”,吉田他,第9屈信息理论及其应用会议录,第167~170页(1986)),重复执行欧几里得算法或巴伦一坎布算法等的运算就可以。
例如,图3为以往的错误校正电路的方框图(载于“光磁盘用错误校正装置的研究”,吉田他,昭61信总全大,6-53(1987)论文),图中示出,为了对应于特别长的代码长度,并联构成由收信数据进行里德-所罗门码的校验子计算的时序电路,并利用同一电路求出错误位置。
图中,(1)为缓冲存储器,用以存储包含里德-所罗门码(外部代码)和循环冗余码(内部代码)的交错的多个数据系列。
(2)为解开缓冲存储器(1)内的数据交错的接口。(3)为伽罗瓦域运算电路,它根据各里德-所罗门码的校验子在伽罗瓦域上进行四则运算,同时求出错误数值(模式)并校正缓冲存储器(1)内的数据。(4)为时序电路,它由各数据进行里德-所罗门码的校验子计算,同时由四则运算结果并行运算循环检索。这些电路通过数据总线连接起来。
(5)为控制接口(2)、伽罗瓦域运算电路(3)和时序电路(4)的控制电路,在控制电路(5)中,别外电路片的循环冗余码编码时序电路(以后叙述)与时序电路(4)连接起来。
在数据系列中,以循环冗余码为内部代码并以里德-所罗门码为外部代码的结构具有以下优点,即错误检测能力较高,即使在里德-所罗门码中进行消失校正,误校概率也较小。此外,通过这些代码的交错利用,对错误群也具有较强的结构。并且,循环冗余码是以错误检测为目的的一种循环码,但里德-所罗门码和循环冗余码一样可用于错误检测中,但是,在5.25英寸的追记型光磁盘中,也采用里德-所罗门码作为标准(例如,ISO/TC97/SC23,见议ISO,第1ISODP9171/4,7月,1987),图4示出512字节/区段的标准格式例子。
这里所用的里德-所罗门码,其原始多项式P(X)用下式表示P(X)=X8+X5+X3+X2+1……(1)其生成多项式G(X)用下式表示G(X)=Πi=120135(X-αi)······(2)]]>
式中,αi=(βi)88,β为原始多项式P(X)的元。此外,关于循环冗余码,其原始多项式与P(X)相同,其生成多项式g(X)用下式表示g(X)=
(X-αi)=X4+α97X3+α228X2+α117X+α40……(3)在图4的格式中,在#0~#4的各里德-所罗门码信息符号的最后设置里德-所罗门码校正用的里德-所罗门码校验符号。
其次,对循环冗余码编码时序电路的循环冗余码校验符号的生成动作进行说明。
首先,由数据求出用下式(4)表示的I(X)I(X)=(Σj = 0L - 1ij]]>,n-d)Xn-d+(
,n-d-1)Xn-d-1+…+(Σj = 0L - 1j]]>,i)X+(Σj = 0L - 1ij o]]>)……(4)式中,L为交错数,n为代码长度,d为里德-所罗门码的最小距离,ij,K为信息符号,若i≥L-4,则ij,O=O。
在512字节/区段中,L=5,n=122,d=17,并求出对应于I(X)的循环冗余码校验符号。这里,对应于I(X)的C(X)如下C(X)=I(X)X4+Re〔I(X)X4/g(X)〕=I(X)4+a3X3+a2X2+a1X+a0…(5)式中,Re〔A/B〕为A/B的剩余多项式,ak(K=0~3)为循环冗余码校验符号。
若得到I(X),则(5)式的校验符号ak可通过简单的电路构成得。图5为表示这种循环冗余码编码时序电路的构成图,图中(6)为I(X)的输入端,(7)为循环冗余码校验符号aO~a4的输出端,(8)为与控制电路(5)相连接的控制信号输入端,(9)~(12)为串联的8位寄存器,(13)~(16)为在各寄存器(9)~(12)的输出端侧插入的逻辑加法电路,(17)~(20)为在各寄存器(9)~(12)的输入端侧连接的
M(根据(3)式,M=40、117、228、97)倍用的乘法器,(21)为将逻辑加法电路(16)的输出与控制信号的逻辑输入各乘法电路(17)~(20)的门电路。
其次,对图5的循环冗余码编码时序电路的动作进行说明。
由控制信号输入端(8)向寄存器(9)~(12)加入复位信号,以清除各寄存器的内容。若由输入端(6)从高次开始输入I(X),则I(X)的符号由逻辑加法电路(16)与寄存器(12)的输出进行逻辑加,并通过门电路(21)输入乘法电路(17)~(20)。因此,由乘法电路(17)形成α40倍的数据按照由控制信号输入端(8)输入的定时信号锁存在寄存器(9)内,并且,由乘法电路(18)形成α117倍的数据由逻辑加法电路(13)与寄存器(9)的输出进行逻辑加,其相加结果按照由控制信号输入(8)输入的定时信号锁存在寄存器(10)内。以下乘法电路(19)和(20)的输出数据必进行同样的处理。
这样一来,将数据I(X)全部输入时,在寄存器(9)、寄存器(10)、寄存器(11)和寄存器(12)内分别锁存有(5)式的a0数据、a1数据、a2数据和a3数据。其次,将门电路(21)断开后,将这些数据按顺序移至寄存器(9)~(12)内,并作为循环冗余码校验符号a0~a3由输出端输出。
对应于图4所示格式的各校验符号写入区,在编码的情况下,将这些循环冗余码校验符号a0~a3写入如下a3→i1,0a2→i2,0a1→i3,0a0→i4,0此外,在译码的情况下,比较是否一致并进行错误检测。
对于收信字(包含错误的数据)井0~井4,译码动作按以下程序1,~4,顺次校正里德-所罗门码。
1,由收信字求出里德-所罗门码的校验子。
2,由校验子求出错误位置多项式和错误数值多项式。
3,由错误位置多项式通过循环检索求出错误位置。
4,由错误位置、错误位置多项式和错误数值多项式求出错误数值并进行校正。
在以上的程序中,2,和4,、1,和3,分别由伽罗瓦域运算电路(3)、时序电路(4)分担执行。
这样,已校正的数据可存入缓冲存储器(1)内。并且,将全部代码字(已编码的数据)用里德-所罗门码进行校正之后,利用图5的循环冗余码编码时序电路求出循环冗余码校验符号,再通过逻辑加进行循环冗余码的计算。
如上所述,以往的错误校正电路,若得到I(X),则能容易地求出循环冗余码校验符号ak,但对交错的信息符号必须进行逻辑加,并且在I(X)的0次中必须将循环冗余码校验符号部分作为0进行计算,此外,还存在以下问题,即在译码时,若不是在交错的全部代码字已用里德-所罗门码校正之后,则不能开始循环冗余码的计算。
本发明可以解决上述问题,其目的在于得到不要求出I(X)而能高速地计算循环冗余码校验符号的错误校正电路。
本发明所涉及的错误校正电路,将里德-所罗门码时序电路和循环冗余码编码时序电路作为并联电路来构成时序电路,并通过控制电路来选择某一方的运算模式。
在本发明中,利用循环冗余码为线性代码的特点,与进行里德-所罗门码译码的伽罗瓦域运算电路的运算动作并行,利用循环冗余码编码时序电路,求出以前用里德-所罗门码校正的代码字信息部分的循环冗余码校验符号,并利用伽罗瓦域运算电路,将此与以前所得到的代码字的循环冗余码校验符号逐次地进行逻辑加。
然后,利用伽罗瓦域运算电路求出循环冗余码校验符号(对应于里德-所罗门码信息部分所记录的循环冗余码校验符号数据所生成的),将此与以前所得到的循环冗余码校验符号进行逻辑加,并将此逻辑加所得到的循环冗余校验符号与里德-所罗门码的信息符号部分所配置的循环冗余码校验符号进行比较,从而可检测出错误。


图1为本发明一实施例的方框图,图中(1)~(3)和(5)为与上述相同的电路。
(4A)为构成本发明重要部分的时序电路,由与图5构成相同的循环冗余码编码时序电路(22)和进行里德-所罗门码校验子计算及循环检索的里德-所罗门码时序电路的并联电路构成。在循环冗余码编码时序电路(22)、里德-所罗门码时序电路(23)的各输出端侧,插入总线输出控制门(26)、(27)。(24)为由控制电路(5)向时序电路(4A)输入的控制信号,(25)为连接时序电路(4A)和接口(2)及伽罗瓦域运算电路(3)用的数据总线。
其次,参照图2的流程图,对图1所示的本发明一实施例的动作进行说明。并且,这里以利用图4标准格式的光磁盘为例进行说明。
在图2中,S01、S11、S21、S31和S41相当于上述的程序1,,S02、S12、S22、S32和S42相当于程序2,,S03、S13、S23、S33和S43相当于程序3,S04、S14、S24、S34和S44相当于程序4,;并且S05、S15、S25、S35和S45为循环冗余码计算步骤,S06、S16、S26、S36和S46为循环冗余码校验符号存储步骤,S50为逻辑加步骤,S60为比较步骤,图中未示出中间的重复步骤S32~S43。
并且,在时序电路(4A)中,最初按照控制信号(24)进行模式选择,以使里德-所罗门码时序电路(23)工作。
里德-所罗门码时序电路(23),通过步骤S01~S04结束收信字井0的校正之后,求出收信字井1的里德-所罗门码校验子(S11),并通过总线输出控制门(27)送入伽罗瓦域运算电路(3)中,伽罗瓦域运算电路(3),由校验子数据求出收信井1的错误位置多项式和错误数值多项式(S12),并继续进行校正工作。
在此期间,在时序电路(4A)中,按照控制信号(24)进行模式选择,以使循环冗余码编码时序电路(22)工作。已经校正的收信字井0的信息数据,按照图4所示信息符号i0,n-d、i0n-d-1、……、i0,0的顺序,由缓冲存储器(1)通过接口(2)和数据总线(25)输入循环冗余码编码时序电路(22)中。循环冗余码编码时序电路(22),如上所述求出收信字井0的循环冗余码校验符号ak(S05)。此时,代替I(X)输入1个收信字数据。
在步骤S05和S12结束时,收信字井0的循环冗余码校验符号数据,由循环冗余码编码时序电路(22)通过总线输出控制门(26)和数据总线(25)送入伽罗瓦域运算电路(3)中,并通过以后的步骤S15求出收信字井1的循环冗余码校验符号数据后存储起来(S06)。
其次,时序电路(4A),按照控制信号(24)进行模式选择,以使里德-所罗门码时序电路(23)工作,并根据伽罗瓦域运算电路(3)输出的多项式数据,通过循环检索运算求出收信字井1的错误位置(S13)。
然后,在已经求出收信字井1的错误位置时,通过伽罗瓦域运算电路(3)求出错误数值,并校正收信字井1(S14)。
以下同样,通过步骤S01~S46,对图4格式区段内的所有收信字井0~井4进行处理操作。
此时,格式(i1,0~i4,0)上的循环冗余码校验符号(a3~a0)也作为信息数据输入3,但可暂时原样地放置。
此外,由步骤S15、S25、S35、和S45所得到的收信字井1以后的循环冗余码校验符号数据,通过步骤S16、S26、S36和S46,与收信字井0的循环冗余码校验符号数据顺次地进行逻辑加,并存入伽罗瓦域运算电路(3)内。
最后,将写入信息符号数据部分的循环冗余码校验符号用伽罗瓦域运算电路(3)进行逻辑加,求出将其结果作为信息数据的循环冗余码校验符号,再将它与收信字井0~4的循环冗余码校验符号数据逻辑加后的数据进行逻辑加(S50)。
然后,所得到的循环冗余码校验码数据与缓冲存储器(1)内的格式上所写入的循环冗余码校验码是否一致进行比较(S60),从而可检测出由里德-所罗门码校正后的错误。
此外,在上述实施例中,对求出译码时的循环冗余码的操作进行了说明,但不言而喻,对求出编码时的循环冗余码校验符号的情况也同样是适用的。
如上所述,根据本发明,时序电路由里德-所罗门码时序电路和循环冗余码编码时序电路的并联电路构成,按照运算模式某一方进行工作,只要附加循环冗余码计算所需的最小限度电路,不要求I(X)就能通过循环冗余码检测出错误,并且,由于与里德-所罗门码的译码并行执行循环冗余码的计算处理,所以可以得到能以高速进行区段单位校正的错误校正电路。
附图的简单说明如下。
图1为表示本发明一实施例的方框图,图2为说明图1工作的流程图,图3表示以往错误校正电路的方框图,图4为表示光磁盘的512字节/区段数据标准格式的说明图,图5表示一般循环冗余码编码时序电路的构成图。
(1)……缓冲存储器,(2)……接口,(3)……伽罗瓦域运算电路,(4A)……时序电路,(5)……控制电路,(22)……循环冗余码编码时序电路。
(23)……里德-所罗门时序电路,(24)……控制信号。
此外,图中同一符号表示相同或相当部分。
权利要求
1.错误校正电路,具有下述电路存储数据系列的缓冲存储器,该数据系列是将以校正数据错误的里德-所罗门码为外部代码并以检测上述数据错误的循环冗余码为内部代码的系列多个交错起来而构成的;解开上述数据系列交错用的接口;校正用的伽罗瓦域运算电路,该运算电路由上述里德-所罗门码的校验子进行伽罗门域上的四则运算,同时由错误位置求出错误数值;里德-所罗门码时序电路,该时序电路由上述数据计算上述校验子,同时由上述四则运算的结果通过循环检索求出错误位置;进行上述循环冗余码的编码计算的循环冗余码编码时序电路;控制上述接口、上述伽罗瓦域运算电路、上述里德-所罗门码时序电路和上述循环冗余码编码时序电路的控制电路,其特征是时序电路是由上述里德-所罗门码时序电路和上述循环冗余码编码时序电路的并联电路构成的,同时,按照上述控制电路输出的控制信号,有选择地使上述里德-所罗门码时序电路和上述循环冗余码编码时序电路中某一方工作。
2.权利要求1所记载的错误校正电路,其特征是在交错的各代码系列中,利用循环冗余码编码时序电路求出第1代码系列的循环冗余码校验码,并将它存储在伽罗瓦域运算电路中;其次,利用循环冗余码编码时序电路求出第2代码系列的循环冗余码校验码,并将它与伽罗瓦域运算电路中存储的第1代码系列的循环冗余码校验码进行逻辑加之后进行存储,与第2代码系列相同对它执行交错段部分,将最后得到的存储在伽罗瓦域运算电路中的循环冗余码校验码时写入缓冲存储器中的循环冗余码校验码部分中,在译码时根据与缓冲存储器中的循环冗余码校验码是否一致进行检测错误。
3.权利要求1、2所记载的错误校正电路,其特征是在编码时,在计算循环冗余码校验码之前,清除缓冲存储器中的循环冗余码校验码部分之后,在计算循环冗余码校验码时,利用循环冗余码编码时序电路来计算循环冗余码校验码(包含缓冲存储器中的循环冗余码校验码部分)。
4.权利要求1、2所记载的错误校正电路,其特点是在译码时,对于第1代码系列,利用里德-所罗门译码来校正缓冲存储器中的第1代码系列的数据,对于第2代码系列,在进行里德-所罗门译码期间,在未使用里德-所罗门时序电路时,选择循环冗余码编码时序电路来计算第1代码系列的循环冗余码校验码,以后相同,在进行各代码系列的里德-所罗门译码期间,计算以前利用里德-所罗门译码校正的代码系列的循环冗余码校验码,并根据各代码系列的循环冗余码校验码的逻辑加结果是否与缓冲存储器中的循环冗余码校验码一致来检测里德-所罗门译码后的错误。
5.权利要求1、2所记载的错误校正电路,其特征是在译码时,在计算各代码系列的循环冗余码校验码时,在利用循环冗余码编码时序电路来计算循环冗余码校验码(包含缓冲存储器中的循环冗余码校验码部分)时,利用循环冗余码编码时序电路来计算循环冗余码校验码(包含缓冲存储器中的循环冗余码校验码部分),利用伽罗瓦域运算电路来计算缓冲存储器中的循环冗余校验码部分的循环冗余码校验码,利用伽罗瓦域运算电路将它与以前的循环冗余码校验码进行逻辑加,从以前的循环冗余码校验码中清除缓冲存储器中的校验码的影响之后,根据是否与缓冲存储器中的循环冗余码校验码一致来检测错误。
全文摘要
根据本发明,时序电路由里德-所罗门码时序电路和循环冗余码编码时序电路的并联电路构成,按照运算模式某一方进行工作,只要附加循环冗余码计算所需的最小限度电路,就能通过循环冗余码检测出错误,并且,由于与里德-所罗门码的译码并行执行循环冗余码的计算处理,所以可以得到能以高速进行区段单位校正的错误校正电路。
文档编号G06F11/10GK1040698SQ89106740
公开日1990年3月21日 申请日期1989年9月1日 优先权日1988年9月2日
发明者吉田英夫, 小林庆男, 池谷豊, 上條光宏, 河端尔 申请人:三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1