CN1009047B - 交叉穿插的里德-所罗门码的高速纠错译码系统 - Google Patents
交叉穿插的里德-所罗门码的高速纠错译码系统Info
- Publication number
- CN1009047B CN1009047B CN 85109458 CN85109458A CN1009047B CN 1009047 B CN1009047 B CN 1009047B CN 85109458 CN85109458 CN 85109458 CN 85109458 A CN85109458 A CN 85109458A CN 1009047 B CN1009047 B CN 1009047B
- Authority
- CN
- China
- Prior art keywords
- circuit
- word
- sign indicating
- indicating number
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明属于数码存贮和数码通信中的可靠性技术领域
本发明为交叉穿插的里德-所罗门(即 Reed-So-lomon)码(RS1×RS2)提供一个速度高、器件省的纠错译码系统。它包括一个使RS2码能在一个接收字周期内完成纠错操作的译码电路,一个供译本原RS2码选用的无求逆运算的译码电路,一个为纠正RS1码的接收字中擦除位置上差错的所需乘法次数甚少的译码电路。
本发明可用于高密度、高数据通过率的存贮系统(如光盘存贮器)、高速传真系统和空间通信系统。
Description
本发明属于数码存贮和数码通信中可靠性技术领域,目的在于为交叉穿插的里德-所罗门(即Reed-Solomon)码提供一个译码响应时间短,数据通过速率高,译码电路器件省的纠错译码系统。
如所知,Fq(含q个元素的有限域,q=pm,p为素数,实用上p=2)上的里德-所罗门码(简记为RS码)是编码效率最高的多元符差错纠正码。而近年来出现的交叉穿插两次编码格式,更具有误码率低,纠突发错性能强的优点,已装备在如数字光盘等高密度的存贮器中用作差错控制码,所谓交叉穿插两次编码是指当信息源按RS码的编码方式完成了第一次编码(记为RS1)后,借助于一个具有不同时延效果的时延网络,使RS1的码字序列中相应的码元交叉穿插组成新的信息序列,继而实施第二次RS编码(记为RS2),此过程记为RS1×RS2,一般情况下RS2就作为信道码。如此两次编码的特点是:当RS2码作为纠错/检错合用的差错控制码使用时,它具有甚低的漏检率,当信道中受破坏了的接收字被RS2码检出差错但未能纠正时,就在该接收字的每一位都标上出错怀疑标记。于是经过反穿插,这些出错怀疑标记就散布开来附属于一系列相继的RS1码的接收字上,指出了这些接收字的擦除位置(Erasure Position),于是使用纠擦除位置上差错的方法,可以比较容易地找出这些位置上的正确值。易见,RS1的纠擦除位置上差错的能力直接影响着纠错系统的纠突发错的效果,所以,使用两次编码格式能达到很强的纠突发错能力。
由于在RS1×RS2中,RS2工作在纠错/检错并用的状态,
而RS1则仅用作纠正擦除位置上的差错,因而译码方法各不相同。目前都采用一些传统的方法,或虽经改进,但效果不理想。例如,在一些采用RS1×RS2方式作为纠错系统的光盘存贮器中,由于译RS1码方式不佳,只能牺牲原设计潜力,降格使用(包括采取伪值插入等辅助手段)。Philips Technical Review 1982 9月号和美国NSF Grant NO.ECS-8260180的总结报告(1983年4月)都提到了这个情况。在U.S.Patent 4413340中,较好的处理了译RS1码,但仍需较多的乘法电路作为实现的支持,至于译RS2码,目前都设计为纠1位错,检3位错。(“位”的概念是在q元码意义下而言,当q=2m时,它相当于mbit),因而容易实现纠错/检错的操作,但由于纠错位数太少,接收字含有差错被检出而未能纠正的概率就较大,这就使RS1码纠擦除位置差错的负担加重,按正常使用时(例如不允许伪值插入补救),拒纠(即RS1码的接收字中标明擦除位置的个数超过能纠正的数目)的概率很高,若增加RS2编码的冗余位个数,就能编成纠2位以上差错、同时又能检测出更多位数差错的纠/检合用的差错控制码,如此,既降低了RS1的拒纠率,又使RS1×RS2系统有更小的误码率,但此时如要求译码操作必须与信道中很高的数据通过速率相匹配,就给纠多位错译码的算法提出新的课题。例如,译码响应快就是一项基本要求。至今对纠2位以上随机差错的RS码的译码能适应高数据通过率要求的仍属于W.W.Peterson提出的代数译码模式,即在求得接收字的检验子S后,接着进行如下三段操作。
(1)求出差错定位多项式
σ(x)=Ⅱ1 j=1(1-Yjx),l是错位个数;
(2)在Fq上求解σ(x)=0,决定错位所在;
(3)在Fq上解一个含1个变量的联立方程组,或通过其它方法,求出1个差错位置上的错值。
这套译码模式虽经以E.R.Berlekamp为主的,包括R.T.Chien等人的努力,有不少改进,但仍保留了以上的三个环节,如此,在纠错的规范操作中,需占用三个周期(即3n,n为RS2的码长),且所用器件量也较可观,近年来,如U.S.Patents:4142174,4413339等为缩短计算时间作了有效的努力,也有设计了专用的计算程序,从事上述(1),(2),(3)的计算,这些都有很大成功之处,但总的步骤,仍属于前述的三段操作,译码响应慢的矛盾未能解决。
本发明为交叉穿插两次编码系统RS1×RS2提供一套完善的,可对接收数据作实时处理的纠错译码电路系统,具体地说,本发明为RS2码提供了可供实用的能在一个输入周期内完成错位个数的测定、指出差错所在位置、计算相应位置上的错值并加以纠正,以及验证纠错的正确性等一连串动作的译码电路;当RS2是本原码时,本发明还提供了一个无需除法运算的译码电路,这在域很大时,就有特别的方便之处;本发明为RS1提供了一个在移位搜索电路支持下的参量变换,利用它,能使纠正擦除位置上差错的器件需要量大幅度地减少。因之,本发明不仅园满地解决了目前正在光盘系统中使用着的(28,24)×(32,28)纠错电路所遇到的困难,还为设计性能更好的交叉穿插编码系统开辟了前景。
图1是纠错系统RS1×RS2在译码过程中各部分所起作用的示意图,当信道〔101〕中(如光盘存贮器)的数据流被取出经过解调电路〔102〕后,进入RS2的译码电路〔103〕,使用本发明提供的方
法,当一个接收字进入完毕后,即能在一个接收字周期中完成纠正≤1位随机差错或检测出≤2t2-1位随机差错的操作,接着把经过纠/检的接收字连同附属于它的怀疑标记序列,一起通过时延穿插网络〔105〕,进行反穿插,随之输出附有擦除标记的数据流作为RS1译码电路〔106〕的接收字序列,进而在译RS1码电路〔106〕中完成纠正擦除位置上差错的操作。本发明中,纠正擦除位置上差错是借助参量变换进行的。此外,当RS2是本原码时,可选用无逆译码电路〔104〕代替原译码电路〔103〕,避免了译码中的除法运算,而且与目前实际使用的译码器相比,减少了一个操作周期,提高了译码速度。
图2是本发明中逐位判错,逐位纠正译RS2码的电路框图。
图3是本发明中无求逆运算译RS2码的电路框图。
图4是本发明中借助移位搜索实现参量变换而完成译RS1的电路框图。
本发明的理论依据:
先简述一下数域Fq上RS码的定义。设Fq是含q个元素的有限域,本发明常取q=2m,它是特征数为2的有限域。所谓Fq上设计距离为2t+1的本原RS码是Fq上的一个线性码:{(C0,C1,…,Cn-1)},Ci∈Fq,它可处理为Fq上一个线性方程组Hxtr=0
它是个循环码,且具有纠正≤t位随机差错的能力,或纠正≤1<t位随机差错同时检出≤2t-1位随机差错的能力,或者具有纠正≤2t个擦除位置上随机差错的能力。若码长≤q-2,则称之为缩短RS码,它具有与本原码一样的纠错功能,但不是循环码,然而在译码时可以借助亲码(Parent Code)的循环性质获得某些方便。在编码理论中,系数阵H常称之为校验阵,而接收字C′=(C′ 0,C′ 1,…,C′ 2m-2)中与H中的列相对应的码位常以这个列的首元素称呼之,如α0位,α1位,…,α2m-2位等。对接收字C′=c+e(e称为差错模式)常可计算得一校验子S:S=HC′tr=(S1,S2,…,S2t)tr,纠错的途径就是从接收字C′的最初信息S来推定差错模式e的结构。在实际问题中,校验阵可适当选定,本发明中常取l0=1,即为如下的形式:
(这样安排只是为了使论述有个统一的出发点,而不限制本发明的普遍适用,事实上,若取l0=0,或者取l0使生成多项式g(x)成为自反多项式〔Reversible〕时,本发明将表现更多的优越之处)。
下面两点是RS码译码算法中最基本的知识:
(Ⅰ)设RS码的设计距离为2t+1,于是它能纠正接收字中≤t位差错。若接收字C′含有1个差错,l≤t,于是行列式序列:
M1,M2,…,Mt中,M1≠0,而Ml+1,…,Mt皆为0。此地Mj是:
因此,可以强调地说,M1≠0是接收字C′中含有1个差错的必要条件;
(Ⅱ)当接收字C′中差错位置事先指明时(这类差错位置称为擦除位置),那末,设计距离为2t+1的RS码可以用来恢复≤2t个擦除位置上的码符,它通常是通过求解Fq上一组含≤2t个未知量的线性方程来实现的。
以下为叙述方便起见,直接介绍已处于RS1×RS2交叉穿插结构的两个RS码:RS1,RS2的新的译码方法。记RS2的码长为n2(≤q-1),冗余位个数为2t2;RS1的码长为n1,冗条位个数为2t1,此外,n2=n1+2t1。
Ⅰ.用于纠≤1位,检2t2-1位差错的RS2码的逐位判错、逐位纠正的原理。
设C′为RS2码的接收字,作C′的校验子S,并进而作行列式序列M1,M2,…,M1,其定义如前,若能从中找出Mk:Mk≠0,Mk+1=0,…,M1=0,于是可暂假定C′含有k位随机错。为实施纠错,先证明两条性质:
性质Ⅰ:若接收字C′含有k≤t2位差错,则第α0位是错位的充要条件是M( ) k=0,此地M( ) k是如下的行列式:
证明:设C′的差错定位多项式为σ(x)=Ⅱk i=1(1-Yix)=σkxk+σk-1xk-1+…+σ1x+1,其中σj是M(j) k/Mk,M(j) k是Mk中第k+1-j列为(Sk+1,Sk+2,…,S2k)tr所代替而成的行列式,显然第α0位有错的充要条件应当是σ(α0)=0,于是展开之并加以整理便得性质1。 〔证毕〕
性质Ⅱ:若C′中第α0位有错,那末α0上的错值就是Mk/(M(+1) k+Mk),其中M(+1) k是如下的行列式:
证明:设第α0位上的错值为β,(β∈Fq),作C′+(β,0,0,…,0),于是它是一个含k-1位错的接收字,并可依Sj+β-Sj的规则获得它的校验子,于是有M(+β) k=0,即
展开此式,经过整理,即有:β=Mk/(M(+1) k+Mk)
〔证毕〕
不论所使用的RS2是否是缩短码,上述两条性质总可以反复地用来判别经过左循环移位后的“接收字”的第α0位是否出错,以及错值是什么,只是在每左循环移位一次后校验子应作如下修改:
Sj→(Sj+e0)/αj=(Sj+e0)αq-j-1。
上面所提到的循环移位当RS2是缩短码时,应当在它的亲码中进行,才能有简单的计算校验子的规则:Sj→(Sj+e0)/αj,但实际上,所有判错位,求错值的计算只涉及“当时”的校验子S,无需真的要在长为q-1的亲码中进行循环移位,因此只须配置一个长为n2的左循环移位寄存器就可实现边左移边纠正的操作。
Ⅱ.本原RS2码无逆运算译码原理
当使用的RS2不是缩短码,即n2=q-1时,本发明还提供了一个无除法运算的译码方法,并且与目前实际使用的译码器相比,该方法减少了一个操作周期。此方法是基于如下二条性质上的:
性质Ⅲ:若接收字C′含有k≤t2位错,则最高位αn2-1位是错位的充要条件为:
此性质的证明与性质Ⅰ类似,只有αn2-1出错时,α应为差错定位多项式σ(x)的根。
性质Ⅳ:接收字C′含有k≤t2位差错,且已判出第αn2-1位有错,则错值为:
其中:
这里n=n2。
此性质的证明与性质Ⅱ的证明类似,只是在最高位αn-1上加一值β后,校验子变化为Sj→Sj+(αj)n-1β。
利用这两条性质,可以反复判别右移后的“接收字”的第αn2-1位是否出错,如出错,则计算出相应的Mk和△Mk=
+MK然后利用一个一次多项式的Chien搜索电路求方程△Mk·x+Mk=0的根,即错值β,此值在n2拍内必能求出,只是每次右移一位后,校验子应作如下修改:Sj→Sj·αj。
其实,对于RS2,即使是缩短码时,除了有前述的性质Ⅰ、Ⅱ可
用来判定α0位的状态外(包括错值计算),也可以有类似于性质Ⅲ和Ⅳ可以用来判别最高位的状态(包括计算错值),从而在对接收字的右移过程中能对“最高位”进行判断、纠正,以实现逐位判决、逐位纠正的纠错译码,这种方式,与前述处理RS2时相比较,除了移位方式有左、右之分外,基本精神是一样的。因此,本发明的说明书将只着重解释对译RS2采用最低位上判错/纠错以实现逐位判决、逐位纠正的过程。
但是必须说明,所介绍的译RS2的原理,不论是哪一种方式,论证的是出发点都是出了K位错的必要条件,(K≤t2),在此上面建立逐位判决原则,因此,当纠错完毕后,尚须补充一个验证纠错是否正确,即纠正后的接收字是否确为码字的复核过程,如验证结果不是码字,说明原接收字含有1位以上的差错,就检测出来而不再予以纠正。
Ⅲ.纠擦除位置上差错的参量变换
RS1的码长n1<q-1(在RS1×RS2系统中RS1必为缩短码),设计距离为2t1+1,因而可纠正≤2t1个任意位置上的擦除错。下面就是目前常用的寻找错值的方法。
设C′为RS1码的一个接收字,它附有≤2t1个(不妨就假定2t1个)擦除位标记,于是可以写为:
其中C∈RS1,仍取RS1的校验阵H为形如(1)式的矩阵,但t=t1,于是C′的校验子可表示为:
由此解出
便得到擦除位上的错值。通常在求解方程组(*)时,是把擦除位和校验子Si都放在等同的地位当作独立参量对待的,因而解
的表达中包含的乘法运算数量较大,本发明将在这些独立参量之间引入参量变换以达到减少乘法运算数量的效果,为清晰起见,以2t1=4来说明基本步骤和原理:
1)把接收字C′在RS1的亲码所在的环Fq〔x〕xq-1-1中左移循环i0次,此时方程组(*)利用原来的校验子表示时,就是:
2)作参量代换:
上述步骤在一般情况(即纠正≤2t1擦除位置上差错)也是可行的,只须利用熟知的Vandermonde行列式△r的有关性质和准(Pseudo)Vandermonde行列式△(S) r的展开式:
(式中j的下标α是△(S) r中比△r中相应的行增加一次幂的行所占全部行数)便可求获得错值
的表达式:
与直接使用消元技术求得方程组(*)所获结果相比,使用参量变换会使所需乘法次数减少一半,如2t1=4时,通常的消元法得到的
形式是:
可以看出,在两种解的表达式中引入参量变换后乘法次数与直接消元法所用的乘法次数之比为1∶2,这在一般情况也近乎如此。
本发明的具体实施
本发明的具体实施电路如图2、图3、图4所示。
图2是逐位判决,逐位纠正译RS2电路框图。设RS2的码长为n2,冗余位个数为2t2,作纠≤1(1≤t2)、检≤2t2-1的差
错控制码使用,为解释方便起见,不妨把RS2设想为
上的RS码。在图2中,接收序列中的每一位(
的意义下)表现为8位二元符,它们平行地按节拍进入接收字移位寄存器(Ⅰ)〔201〕和校验子计算电路〔202〕,n2拍后,第一操作周期结束。此时,第一个接收字已全部进入接收字移位寄存器(Ⅰ)〔201〕,并且在校验子计算电路〔202〕中完成了校验子的计算,在第n2拍的后沿时间完成如下的预备操作:
1)校验子计算电路〔202〕中的内容被打入校验子寄存器〔210〕,并且自身清零。同时在参量运算器〔208〕中,形成基本状态参量M1,M2,…,Ml,随即进入α0位出错判决/错值计算电路〔207〕,指出接收字的第α0位的状况和可能的错值e0。为保证上述运算电路工作稳定,要求节拍脉冲有较大的占空比;
2)接收字移位寄存器(Ⅰ)〔201〕中的内容被打入接收字循环移位寄存器〔204〕。
第二个操作周期开始,在第一拍的上升沿时间内执行如下操作:
1)接收字移位寄存器(Ⅰ)〔201〕和校验子计算电路〔202〕开始接收新的接收字,同时,接收字移位寄存器(Ⅰ)〔201〕开始把内容按拍移给接收字移位寄存器(Ⅱ)〔203〕。
2)接收字循环移位寄存器〔204〕开始左移,在左移时,α0位的输出与α0位出错判决/错值计算电路〔207〕的输出e0相加的结果送入接收字循环移位寄存器〔204〕的最高位,完成α0位纠正后左移循环操作。
3)与校验子寄存器〔210〕的输出相连的校验子修改电路〔211〕中已完成(Si-eo)/αi→Si,并被输入校验子寄存器〔210〕,
它的输出“值”通过参量运算器〔208〕指出接收字的现在状况,继而通过α0位出错判决/错值计算电路〔207〕决定现在的α0位出错与否,并决定错值“e0”,它与接收字循环移位寄存器〔204〕的第α0位相加,等待下一拍被送入接收字移位寄存器〔204〕的最高位,同时e0与校验子寄存器〔210〕的输出一起进入校验子修改电路〔211〕,它的输出准备在下一拍被送入校验子寄存器〔210〕。
如此,第二拍到来时,便完成接收字第“α0”位(实际已是第“α1”位)的纠正,并被左移到最高位,且在稍后的时间内完成对移位后的第“αi”位的纠正的准备工作。注意,每一拍中,校验寄存器〔210〕的打入脉冲比接收字循环移位寄存器〔204〕的打入脉冲应有△t的延迟,以保证对α0位的纠正不会有误动作。
依次下去,第二操作周期的第n2拍到达时,接收字循环移位寄存器〔204〕中已完成“纠错”的任务,准备移交给已“纠正”接收字移位寄存器〔206〕在下一执行周期中等待移出,而校验子修改电路〔211〕则输出最后修改完的校验子,稍后时刻被送入校验子寄存器〔210〕,它的输出立即被送到“纠正”结果复核电路〔209〕进行计算,其结果送到复核结果指示器〔215〕,指示接收字是否真的被纠正。在后沿时刻,接收字左移循环移位寄存器〔204〕中内容被打入到“纠正”接收字移位寄存器〔206〕等待移出,并接收(稍有延迟)接收字移位寄存器(Ⅰ)〔201〕送来的内容。如此,便完成了
第三个操作周期的准备工作。
第三个操作周期开始,前述操作重复执行,而接收字移位寄存器(Ⅱ)以及“纠正”接收字移位寄存器〔206〕即开始向着纠正字/差错检出字移位寄存器〔213〕移出(由复核结果指示器〔215〕通过对或门〔212〕的控制决定何者送往),若“纠正”接收字移位寄存器〔206〕中内容允许通过或门〔212〕送往纠正字/差错检出字移位寄存器(213)时,怀疑出错标记移位寄存器〔214〕全零,开始移位,否则,就置全1,但不论何种情况,在RS1×RS2系统中,纠正字/差错检出字寄存器〔213〕和怀疑出错标记移位寄存器〔214〕中的内容并行地被送往实现反穿插的时延网络。
如此周而复始地进行下去,随着解调器〔102〕输出的序列进入接收字移位寄存器(Ⅰ)〔201〕和校验子计算电路〔202〕,经过包括计算校验子所需时间在内共两个执行周期(即 2n2拍)的延迟,就源源不绝地获得一个稳定的纠正后码字序列或检测出错的码字序列。
以上就是本发明中对RS2码使用逐位判错、逐位纠正方法实现纠错或检错的全过程。
图3是无求逆运算译RS2的电路框图。此地RS2仍作纠≤1位,检≤2t2-1位的随机差错控制码使用,以下是实施过程,基本操作周期含n2拍(现在,n2=q-1)。
在第一个操作周期中,接收字移位寄存器(Ⅰ)〔301〕和校验子计算电路〔302〕的结构和所执行的任务完全同图2中相应部件一样。在第
一操作周期的最后一拍的后沿时刻,校验子计算电路〔302〕中的内容被打入校验子寄存器〔310〕,并自身清零,然后基本参量计算电路〔308〕,〔309〕分别完成Mi和△Mi的计算,接着错误位数计算电路〔307〕指出接收字所含的错位个数,而
位出错判断电路〔306〕指出
位是否有错。
第二个操作周期开始,接收字移位寄存器(Ⅰ)〔301〕及校验子计算电路〔302〕操作同前。接收字移位寄存器(Ⅱ)〔303〕则逐位逐拍地接收来自接收字移位寄存器(Ⅰ)的内容。应指出,一次多项式求错值电路组〔305〕中有两组电路,每组各含1个一次多项式的Chien搜索电路,在第一拍的前沿时刻若
位出错判断电路指出
位有错,则由控制电路〔304〕在第一组搜索电路中顺序选择一个,开始搜索相应的多项式Mi+x△Mi=0的根(此根在n2拍内必被找到,于是在n2拍后即送到加法器〔312〕与已经移到的错位-就是此刻的错位-相加予以纠正),同时校验子修改电路〔311〕完成了Si·αi→Si的操作,在该拍的后沿时刻,新的校验子被打入寄存器〔310〕中,基本参量Mi,△Mi计算电路〔308〕,〔309〕又开始计算新的参量值,错误位数计算电路〔307〕也计算出错位个数,并与上次计算所得的核对,(如不符,接收字即作检出差错而不予纠正),此外
位出错判断〔306〕指示
位上是否出错。以后各拍操作均同第一拍所述。由于RS2码只用来纠≤1位错,所以本操作周期结束时,〔305〕中只有第一组搜索电路在工作,而第二组搜索电路则空闲着。
第三操作周期开始,前述各操作重复,只是当控制电路〔304〕工作时,应在求错值电路组〔305〕的第二组中顺序选用搜索电路。第一
拍到来前,若接收字移位寄存器(Ⅱ)〔303〕的最高位是错位,则该错位的错值已由求错值电路组〔305〕中第一组的一个搜索电路所求出,并已被送到加法器〔312〕中与该错位的码符相加,准备“纠正”后送入“纠正”字移位寄存器〔314〕,当该位不是错位时,求错值电路组〔305〕的输出为另。因此,在第一拍的上升沿时刻,接收字移位寄存器(Ⅱ)〔303〕中的最高位被移入接收字移位寄存器(Ⅲ)〔313〕中,同时,“纠正”结果被移入“纠正”字移位寄存器〔314〕,而纠正结果复核电路〔315〕则开始复核。以后各拍均同第一拍中所述。直到最后一拍的后沿时刻,复核结果指示器〔319〕根据“纠正”结果复核电路〔315〕中验算校验子的结果而输出0(当校验子为0)或1(当校验子不为0)。在此操作周期结束后,错值求解电路组〔305〕中第一组全部停止搜索,可供控制电路〔304〕在下一个操作周期中选择使用。
第四操作周期开始,选通门〔316〕根据复核结果指示〔319〕的输出选择接收字移位寄存器(Ⅲ)〔313〕的输出通过(若指示为1)或让“纠正”字移位寄存器〔314〕的输出通过(若指示为0),并根据指示情况,怀疑标记序列〔318〕为全1(指示为1)或全零(指示为0)。
以上就是本发明中无求逆运算译本原RS2时一个完整的接收字被纠正或被检测出错的全过程。
图4是借助参量变换实现纠正擦除位置上差错的框图。为使操作规格化,当接收字所附的擦除标记符不足2t1个时,一律设法补足为2t1个,当然,这些人为地补上去的擦除位置上的“错值”应该是零。此外,基本操作周期所含的节拍数应为n2拍,n2=n1+2t1。
在第一个操作周期内的前n1拍内完成如下的动作:
1)第一个接收字C′按拍进入接收字移位寄存器(Ⅰ)〔401〕。
2)C′所附的擦除标记按拍进入擦除标记移位寄存器(Ⅰ)〔402〕。并在擦除标记计数器〔403〕中计数。
3)C′按拍进入校验子计算电路〔404〕,完成
的计算。
在此后的2t2拍中,前述四个电路暂停工作,但当第n2拍的后沿时刻,擦除标记移位寄存器(Ⅰ)〔402〕的内容被打入擦除标记循环移位寄存器〔406〕,它是个左移循环移位寄存器;校验子计算电路〔404〕的内容被打入校验子寄存器〔410〕,此值并送入Si/αi计算电路〔411〕作为初态值。
第二周期开始,第二个接收字和它所附的擦除标记序列进入电路〔401〕~〔404〕,工作情况如前述。此外,接收字移位寄存器(Ⅱ)〔405〕开始接收来自接收字移位寄存器(Ⅰ)〔401〕中的内容;擦除标记移位寄存器(Ⅱ)〔406〕按拍左移,它的最低位有电位输出,当第一次出现高电位时,启动乘α电路〔413〕开始运算(〔413〕的初值为1)。随着擦除标记循环移位寄存器〔406〕的左移,启动了的乘α电路,在擦除标记循环移位寄存器〔406〕的最低位依次出现第2个高电平,第3个高电平…时,把运算结果依次打入寄存器〔412〕,于是第n1拍到达以后,它寄存了
。至于校验子寄存器〔410〕,它在每一拍的上升沿时刻(比擦除位标记循环移位寄存器〔406〕的移位脉冲的上升
沿稍有△t的延迟)接受Si/αi计算电路〔411〕的输出,并且在擦除位标记循环移位寄存器〔406〕的最低位第一次出现高电平时,把内容送往参量变换电路〔409〕,于是当第n1拍的后沿时刻寄存器〔412〕的内容和参量变换电路〔409〕中的内容一起打入错值计算电路〔415〕,准备在后面的2t2拍中分时求解擦除位上的错值
在本周期的操作中,擦除标记循环移位寄存器〔406〕中α0位置上高电位形成还受到擦除标记补足指示器〔407〕来的信号的影响,其结果是第α1位开始遇到非擦除位时,就准备在左移后“修改为擦除位”(即把α0位变成高电位),如此直到补足2t1个擦除位为止。在本周期的后2t2拍中,错值计算电路〔415〕即分时地按拍计算
并把结果置于错值寄存器〔418〕中,(因此,从RS1×RS2的系统角度考虑,RS2的冗余位个数2t2不宜少于RS1的冗余位个数2t1),在本周期的最后时刻(第n2拍的后沿),擦除标记循环移位寄存器〔406〕的内容(已是经补足到2t1个擦除位的内容)被打入擦除标记移位寄存器(Ⅱ)〔408〕,并接受擦除标记移位寄存器(Ⅰ)〔402〕强置进来的内容。
第三个操作周期开始,第三个接收字开始进入译码器,此外,第二个接收字的擦除位置参量
及 在进行参量变换运算,不再重述,从本周期的第一拍开始,第一个接收字的差错值
在擦除标记移位寄存器(Ⅱ)〔408〕的输出的引导下,依次在适当的时刻
通过错值选通〔417〕,送达加法器〔414〕,与从接收字移位寄存器(Ⅱ)〔405〕移出的擦除位上的码符相加进入纠正后的码字寄存器〔416〕,到本n1拍结束,第一个接收字被纠正后,全部移入完毕。
以上就是在RS1×RS2两次编码系统中,经过反穿插电路实现怀疑标记扩散后的接收字进入译RS2电路而被纠正的过程。
Claims (4)
1、一种供数码存储和数码通信中使用的交叉穿插的里德-所罗门(即Reed-Solomon)码(RS1X RS2)进行高速纠错译码的系统,它包括一个译纠错、检错合用的RS2码的电路系统;一个供纠错、检错合用的本原RS2码选用的电路系统,以及一个译纠擦除位置上差错的RS1码的电路系统,本发明的特征是:在译RS2码的电路系统中,含有一个逐位判决、逐位纠正,使在一个接收字输入周期内完成纠错、检错全部操作的电路;在译本原RS2码的电路中,配置了一个无需求逆运算能完成纠错操作的电路;在译RS1码的电路中,含有一个利用参量变换以大幅度减少乘法部件的电路。
2、如权利要求1所述的系统,其中上述在一个接收字周期中完成对RS2码接收字的纠错、检错操作的电路,其特征是:有一对能判决接收字的最低位是否出错和直接计算其错值的装置,在一个校验子修正电路的支持下,这组装置能随着接收字的循环移位,对码符逐位地进行出错判决和错值计算,并有一个纠错结果复核的装置,以保证纠错电路的准译率达到理论计算值。
3、如权利要求1所述的系统,其中上述为纠错、检错合用的本原RS2码专用的无需求逆运算的译码电路,其特征是:装备一个能对接收字的最高位进行出错判决的装置,以及两组为相应的错位进行搜索求解的电路,它们能交替地为相继进入本译码电路的接收字中的出错位按拍搜索错值,且无需求逆运算,因而,当一个接收字进入译码电路后,只需两个操作周期就能完成纠错操作,此外,有一个纠错结果复核装置,以保证纠错电路的准译率达到理论计算值。
4、如权利要求1所述的系统,其中上述的利用参量变换以大幅度减少乘法部件的电路,其特征是:具有把接收字的擦除位置和校验子分量转换为另外一组参量的装置,借助它,得以使错值求解电路中,所需的乘法部件的数量比传统的求解电路中所需的减少一半,此外,本电路中,还配备了一个擦除位置数目补足的装置,从而使错值求解电路模式单一,更减少了乘法部件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 85109458 CN1009047B (zh) | 1985-12-27 | 1985-12-27 | 交叉穿插的里德-所罗门码的高速纠错译码系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 85109458 CN1009047B (zh) | 1985-12-27 | 1985-12-27 | 交叉穿插的里德-所罗门码的高速纠错译码系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN85109458A CN85109458A (zh) | 1987-02-11 |
CN1009047B true CN1009047B (zh) | 1990-08-01 |
Family
ID=4796339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 85109458 Expired CN1009047B (zh) | 1985-12-27 | 1985-12-27 | 交叉穿插的里德-所罗门码的高速纠错译码系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1009047B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100461664C (zh) * | 2005-07-15 | 2009-02-11 | 联发科技股份有限公司 | 包含有多个平行运作的错误更正模块的错误更正装置及方法 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5592498A (en) * | 1994-09-16 | 1997-01-07 | Cirrus Logic, Inc. | CRC/EDC checker system |
KR100370239B1 (ko) * | 2000-10-25 | 2003-01-29 | 삼성전자 주식회사 | 고속 블럭 파이프라인 구조의 리드-솔로몬 디코더에적용하기 위한 메모리 장치와 메모리 액세스 방법 및 그메모리 장치를 구비한 리드-솔로몬 디코더 |
CN100459438C (zh) * | 2006-10-20 | 2009-02-04 | 东南大学 | 里德所罗门解码器的关键方程与错误值求解优化电路 |
CN111162799B (zh) * | 2019-12-27 | 2023-08-29 | 北京时代民芯科技有限公司 | 一种抗辐射rs码译码电路 |
-
1985
- 1985-12-27 CN CN 85109458 patent/CN1009047B/zh not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100461664C (zh) * | 2005-07-15 | 2009-02-11 | 联发科技股份有限公司 | 包含有多个平行运作的错误更正模块的错误更正装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN85109458A (zh) | 1987-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2313177C2 (ru) | Турбодекодер, использующий линейные конгруэнтные последовательности | |
CN102164025B (zh) | 基于重复编码和信道极化的编码器及其编译码方法 | |
US3818442A (en) | Error-correcting decoder for group codes | |
CN102122964B (zh) | 一种基于fpga的高速rs编译码器实现方法 | |
CN1679243A (zh) | 通过被恢复符号的钝化作用而对链式反应代码的解码 | |
CN1499731A (zh) | 低密度奇偶校验码解码装置和方法 | |
CN101777926B (zh) | 一种Turbo乘积码的通用译码器及其方法 | |
JP2009201140A (ja) | 一般的なターボコードトレリスの終端方法およびシステム | |
CN101080875A (zh) | 纠错方法以及装置 | |
CN1198422C (zh) | 检测带逆序校验位的循环冗余校验码中的错误的装置和方法 | |
CN1859013A (zh) | 低密度奇偶校验码迭代排序统计译码方法 | |
CN1757165A (zh) | 译码器内的部件块消息传送 | |
CN1146116C (zh) | 截短法尔码的差错捕获译码方法和装置 | |
CN109981112A (zh) | 一种部分循环冗余校验辅助的排序统计译码方法 | |
CN1623280A (zh) | 纠错译码器中的双chien搜索块 | |
CN1467918A (zh) | 里得-索罗门解码器 | |
CN1568577A (zh) | 特播解码装置和方法 | |
US4293951A (en) | Method and apparatus for encoding/decoding a convolutional code to a periodic convolutional code block | |
CN1009047B (zh) | 交叉穿插的里德-所罗门码的高速纠错译码系统 | |
CN1756090A (zh) | 信道编码装置和方法 | |
CN1636324A (zh) | 纠错解码器的钱搜索单元 | |
CN1271791C (zh) | Turbo译码器及其实现方法 | |
Peng et al. | On Construction of the $(24, 12, 8) $ Golay Codes | |
CN1183687C (zh) | Turbo码编码器及编码方法 | |
CN101034894A (zh) | 一种实现解码的电路和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C13 | Decision | ||
GR02 | Examined patent application | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |