专利名称:纠错装置和包含该装置的光盘阅读器的制作方法
技术领域:
本发明涉及一种里德-所罗门型纠错装置和一种包含这种装置的光学读取设备。本发明特别用于读取光盘或磁光盘设备中的错误修正范围。
一般地简称为“CD”的压缩盘于1982年被引入市场。出于超大容量媒体的需求,以及出于考虑到数据的记录、编码和读取领域开发的同时,近来已出现一种新标准。这就是所谓DVD标准。就读取而言,后者依靠与CD盘相似的原理,不过容许更大的信息密度。
CD盘和DVD阅读器的兼容性显然是为用户所希望的。但按两种标准来编码数据是很不相同的不同长度的数据包和各分组的不同交错,错误修正的不同参数。
就里德-所罗门型错误修正而言,通常为了使读取设备既能按CD格式解码,又能按DVD格式解码,将在同一设备内采用两个电路,分别用于CD型错误修正和DVD型错误修正。
显然这一结果并不令人满意,因为要采用过多的元件,因而提高了装置的成本。此外,给出不同格式的DVD型和CD型数据包有待处理,就难于找到在各种处理情况下都令人满意的结构。
因此,本发明旨在提供一种能实现两种格式修正的修正装置。
本发明的主题是一种里德-所罗门型纠错装置,包括用于实现修正过程的里德-所罗门型修正机构,其特征在于,它还包括-第一存储器,供容纳DVD型数据用,以及供第一次修改过后的CD型数据用,为的是在通过第二次修正之前防止所述CD型数据交错;-第二存储器,为超高速缓冲存储器型并与第一存储器不同,该第二存储器供容纳修正前的CD型数据,以及防止CD型数据交错用。
于是,使用两个存储器,尺寸较大的第一存储器能够存储DVD型数据包以及第一次修改过后的CD型数据包;尺寸非常小的第二存储器,只供按CD方式修正过程中使用。其优点在于,在按CD方式修正过程中,只要求第一存储器用于防止交错之需,因此减小了对第一存储器的访问频率,因而允许使用较低性能的廉价存储器。在第一存储器为民用电路时,这是尤其有益的。
按照一种特定的实施例,将修正DVD型数据的码元从所述第一存储器传给里德-所罗门型纠错机构,而将修正CD型数据的码元从所述第二存储器传给里德-所罗门型纠错机构。
因两点理由,第二存储器被用于实行飞击式修正第一是尺寸小,从访问频率的观点看,这可以使用高性能的存储器;第二,对于这样的修正,CD型码字本身要好于DVD型码字,它们是极为大量的。
按照一种实施例,所述装置包括含有所述里德-所罗门修正部件的第一集成电路和所述第二存储器,而所述第一存储器被包含于与第一集成电路不同的第二集成电路中。
本发明的主题还在于一种包含这种纠错装置的光盘阅读器。
通过借助附图描述的非限定性实施例的说明,将使本发明的其它特点及优点变得愈为清晰,其中
图1是表示CD型数据块的RS编码示意图;图2是表示DVD型数据块的RS编码示意图;图3是当前所示实施例装置的方框图;图4是表示按被称为“DVD”方式进行数据交换的方框图;图5是表示按被称为“CD”方式进行数据交换的方框图;图6是表示在本发明装置的一个存储器中存储DVD型数据包的示意图;图7是表示本发明装置的一个存储器内数据结构的示意图;图8是图3至图5的方程解算器所用多项式系数的两种寄存器的布局;图9是表示里德-所罗门解码中所用方程解算电路内各寄存器的各单元间连接示意图;图10是图9的一个单元的方框图;图11是按照第一种结构图10单元的方框图;图12是按照第二种结构图10单元的方框图;图13是按照第三种结构图10单元的方框图;图14是按照第一种结构串联设置的图10的几个单元的方框图;图15是按照第二种结构串联设置的图10的几个单元的方框图;图16是包含本发明装置之光盘阅读器的方框图。
CD(压缩盘)标准提倡采用十字交错里德-所罗门纠错码(或CIRC)。这种编码的实现包含将每个待编码的16位(bit)数字抽样分成两个8位码元。
图1特别表示在CD标准下数据块(帧)的结构。
将拟编码之抽样存在随机存取存储器中,并按24码元(对应于每2个信道6个16位的抽样)块的形式预置于编码器。按照第一步,通过使偶数抽样延迟2个抽样,并交换对被叫作编码器C2之编码器的第一部分的连接,以插入这些抽样。编码器C2从24个码元的码字中确定4个8位的奇偶码元(被称为码元Q),并将这4个奇偶码元插入其它码元间。这就得到28个码元。因此,编码器C2是一个(28,24)编码器。
将这些码元经不等长的28个延迟线送至被称为编码器C2的第二编码器,这是4(码元)块多用系统,以将28个一字码元排布在28个不同的块上。继而,将按28个块中的1个块对3个其它的块的比率使这28个块与其它的块交错。编码器对每个块附加4个8附加位奇偶码元(码元P),得到总数为32个码元。于是,编码器C1为(32,28)编码器。在要点在于颠倒所述奇偶码元并延迟偶数码元的附加处理之后,应用这些码元,形成数据包。
给这些数据附加一定量的控制信息,这里将不予细述它们。与编码数据有关的进一步信息,可参见名为“数字音频及压缩盘技术(Digital Audio and Compact Disc Technology)”著作的第9章[1995年第III版,Sony欧洲服务中心(Sony Service CentreEurope)],或者再参见著作“里德-所罗门编码及其应用(Reed-Solomon Codes and their applications)”(Wicker/Bhagarva,IEEE Press 1994,第IV章)。
因此,CD型信息包的修正需要两次通过里德-所罗门解码器,随着两次通过间的交错,第一次用于解码C1,第二次用于解码C2。
如果C1的修正容量过大(作为擦除数和拟被修正之错误数的函数),则以擦除标志标记28个码元(32减去4个奇偶码元P),并且不予修正。在交错过程中,将使这28个码元排布在28个块上。
如果C2的修正容量过大,则用一标志标记24个码元(28减去4个奇偶码元Q),并且不予修正。
DVD的前后关系内所用的错误修正(“数字视频/通用盘(Digital Video/Versatile Disc)”)是不同的172个码元(1个码元=1字节)的192线的块与由172字节16线组成的所谓外部里德-所罗门编码(“PO”)纵向相关联,并与由10字节208线组成的所谓内部里德-所罗门编码(“PI”)横向相关联。从数据块并从所述外部编码计算所述内部编码。整个给出一个182字节208线的块。再按交叉方式将外部编码的16线插入192条剩余线之间。
按DVD标准的数据包结构由图2表示。
图3是当前所示实施例装置的方框图。
为了纠错目的之需,电路1以串联方式包括校正子发生器2、方程解算器3和修正器4。
在电路1外部的随机存取存储器5,例如SRAM型,用于存储某些拟被修正的原始数据包及已修正的数据包。只在CD方式下使用的内部随机存取存储器6用于存储中间译码结果。这利于适用于对外部存储器5过于频繁的访问。
此外,电路1还包括四个多路复用器,根据它们的状态,它们确定CD工作方式或DVD工作方式,以及每种方式前后关系中的各个阶段。在校正子发生器2的输入端处,第一多路复用器7或者从SRAM 5选择数据起点,或者从存储器6选择数据起点。在存储器6的输入端处,第二多路复用器8或者从SRAM 5选择数据起点,或者从电路(图1中的线I)外面选择进来的数据起点。在修正器4的输入端处,第三多路复用器9或者从SRAM 5选择数据起点,或者从存储器6选择数据起点,或者从方程解算器3选择数据起点。第四多路复用器10或者给SRAM 5提供来自修正器4的被修正数据起点,或者给其提供进来的数据(I)。
存储器5被用于存储DVD型的块、错误,或者存储在修正通过之前或之后与这些块相关的擦除标记、在修正之前用于交叉的CD型块C2、与之相关的错误标记、被修正的块C1、以及各种同步数据。
可将由电路1实现的每个里德-所罗门型纠错过程总述如下,其中是在CD方式下或者DVD方式下。
步骤1.计算擦除多项式E(z)和被修正之伴随式T(z)的校正子SjS(z)=Σj=0r-1sjzj]]>其中r是一个码字中的奇偶码元数,并且其中Sj=Σi=0n-1riaij]]>其中n是一个码字中的码元数,其中系数ri是r(x)=rn-1·zn-1+rn-2·zn-2+…+r0,其中r(x)是所接收的码字,而其中αi是g(z)的方根,所得多项式为E(z)=Πk=1e(1-zαJk)------(2)]]>其中αJk是擦除k的位置,其中e是擦除数,T(z)=S(z)E(z)mod z2t(3)其中t是RS码的参数。
说明参数r取决于正在进行的修正。它是拟对每个码字计算的校正子数目。它等于拟被修正的码字中的奇偶码元数对于压缩盘的两个编码C1和C2而言,为4和4;对于DVD的内部和外部编码而言,为10和16。
步骤2.实行扩展的欧几里德(Euclid)十进制算法,用以计算误差判断多项式Λ(z)和误差计算多项式Ω(z),还计算新的误差判断多项式Ψ(z),其中Ψ(z)=Λ(z)E(z)mod z2t(4)步骤3.实行Chien十进制算法,以确定误差判断多项式的方根。这种多项式的方根表示所接收的码元中错误及擦除的位置。实行Forney十进制算法,以从该误差判断多项式的方根确定误差及擦除的值,以及从误差判断多项式和误差计算多项式的导数确定误差及擦除的值。
步骤4.核实译码程序,并修正所接收的码元。
上述各十进制算法本质上可从别处得以被了解。特别可参见S.B.Wicker与V.K.Bhagarva所编的著作“里德-所罗门编码及其应用(Reed-Solomon Codes and their applications)”(IEEEPress 1994),与欧几里德十进制算法以及Chien和Forney十进制算法的实行过程有关,而且一般地说与里德-所罗门编码的数学理论有关。该著作还包括用以实现每个步骤的其它十进制算法。
下文中将先描述所述装置按DVD或CD每一种方式的工作情况,然后再进行有关里德-所罗门译码器某些方面的硬件设施,特别是方程解算器3的更详细描述。
-DVD译码图4示出按DVD方式的工作情况。作为与图3一般布局的比较,已去掉了电路1中与按DVD方式工作无关的部分。
(a)内部代码(PI)-第一次通过开始时,经多路复用器10传送,将进来的数据存在SRAM 5中。图6表示将各个块存入SRAM 5中的方法。这些数据由两个208*182字节的块组成。每个块伴随有208*23个擦除字节。对于一个块的码元来说,每个擦除位表示该码元是否被认为要保存。这一信息后面被用于里德-所罗门纠错过程。这些擦除位本质上由电路1外面的部件按公知的方式被确定。按照当前所示的实施例,这些外面的部件确定在数字解调图表中基准的存在。
开始时,所述电路实行内部RS码PI的译码。从SRAM 5逐行读取数据或码元块,以及各擦除位,并送至校正子发生器2。后者对每行(每个码字)确定多项式S(z),并确定擦除多项式E(z),正如较早所解释的那样。
实际上,校正子Sj被计算如下Sj=Σi=0n-1riTij]]>其中,T为与生成多项式G(z)相关的矩阵。按照本例,G(z)=z8+z4+z3+z2+1。在这种情况下,矩阵T为0000000110000000010000010010000100010001000010000000010000000010]]>由发生器2实现校正子Sj的计算,以j标记表示对它们各自通过Tn多路复用器和加法器的输入的各个反馈。校正子Sj构成多项式S(z)的系数。
于是,在DVD译码的情况下,每个被传送的行包含182个数据字节,每个字节表示一个码元,关于每个码元的字节还有182个擦除位。由于内部代码PI包含10个修正码元,所以要计算10个校正子。发生器2还从各擦除位确定擦除多项式E(z)的系数Ej,并将它们存储于一个适当的寄存器中。
如果一行内有10个以上的擦除,则不能修正,并将码字标记为错误。按1位的形式[“Inner 1 Error Flag(内部1错误特征位)”]将码字错误的情况写入SRAM存储器(图6)。
S(z)的系数,而且如果与E(z)相关,被传送给方程解算器3。
如果擦除多项式E(z)存在(至少一个擦除),则电路3计算多项式T(z)、E(z)与S(z)之积,再完成扩展的欧几里德十进制算法,以便同时确定误差判断多项式Λ(z)和误差计算多项式Ω(z)。
如果不存在擦除多项式,则直接从S(z)实现Ω(z)和Λ(z)的确定(就计算而言,在这种情况下,我们将取E(z)=1)。
如果相关,电路3还确定Ψ(z)。
后面将能详细地看到电路3的结构和工作方式。
修正器4以公知的方式完成Chien和Forney十进制算法。
因此,下列数据终归将是适用于这种修正的-被处理的码字中各错误的位置,-这些错误的值,-擦除数。
码字中的错误相应地被修正。为此,修正电路4(图4)从SRAM存储器5读取拟被修正的码字,并从电路3读取各错误的位置和值。修正器4将被修正的码字在原始码字的位置写入SRAM 5。多路复用器9和10相应地受到控制。如果超过RS代码的容量,则所述修正器写入错误指示特征位[参见图6的“Inner 1 ErrorFlag(内部1错误特征位)”]。
(b)外部代码(PO)随后,本装置根据代码PO实现第二修正。根据每个纵向码字的结果,将错误特征位设定成一个适当的值[参见图6的“OuterError Flag(外部错误特征位)”]。
(c)内部代码(PI)-第二次通过一旦进行了PO修正,就要根据内部代码PI进行第二横向修正。某些在第一次通过期间未能修正的码字可能已经变得伴随在根据PO代码的修正过程中这些码字的某些码元的修正。如果相关,将错误特征位设定为适当的值[参见图6的“Inner 2 ErrorFlag(内部2错误特征位)”]。
这次最后的通过可能是任选的。
-CD译码图5示出按CD方式的工作情况。作为与图3一般布局的的比较,已去掉了与按CD方式工作无关的部分。
最初通过输入端E将拟被修正的数据(32码元块C1)写入内部随机存取存储器6。图7表示将所述数据写入该存储器6的方法。存储器6包括3个块的空间,每块32个码元。当把块C1存入存储器6中时,它们交错。给出交错的种类的同时,需要两个块,以得到一个码字C1。第三个块的位置被用于写入下一个块C1,这种写入发生在先前的块修正期间。存储器6的28个位置被用于28码元(编码C2)的一个码字。4个位置被用于其它的信息,这使该存储器的长度为128个码字。该存储器通过9位的宽度,8位是用于存储各码元的,第9位表示擦除。最初,这些擦除位表示所存的码元是否有效。
校正子发生器2从存储器6读取第一非交错的码字,及相应的擦除位。由电路2以及继而由解算器3进行的处理操作与DVD方式时的类似,但应理解,里德-所罗门编码的各参数并不相同。不过,修正的原理是一样的。
由解算器3使错误的位置和它们的值与修正器4联系。后者从RAM6接收除各奇偶码元外的所述码字的全部码元。如果必须修正,则以已修正的码元替代错误码元。然后将这些码元存入存储器5。应予说明的是,在这种“飞击式修正”情况下,所有的所述码元经修正器4从RAM存储器6传送到存储器5,而在DVD方式下,只有那些拟被修正的码元通过所述修正器从存储器5传送,并再回到存储器5。
这种设计是基于这样的公认的事实的,即CD方式下的码字(28或32码元)比DVD方式下的(182或208)要短得多。只对“短”码字实行飞击式修正,并由快速存储器6做这种修正,因为一个码字的所有码元必须经存储器传送。长码字的这种飞击式修正将需要关于部分存储器4上的多次循环,以及非常快速、较为昂贵的存储器5的实行——即使使拟按这种方法被修正的码字在其中被缩短。
因此,这种设计使其能使用商品化的存储器5,后者被安排在包含这里所述装置的组元外部,并为内部存储器的部件本身采取小尺寸作好准备,因而价格低廉。在使存储器5被提供与存储器6不同组件的情况下,这是值得的。
显然,所提到的“外部”或“内部”存储器并不排除使用被描述为既包含存储器5又包含存储器6的集成电路。应将存储器5视为大容量存储器,而存储器6被看成是超高速缓冲存储器。
码字C2的各个码元交错是这样的一个码字以及相同码字的28个码元分布于32个码元的112个块中间。对于每个C1编码的修正,都相应于一个C2编码的修正。于是,本系统将只在112帧之后被正确地初始化。此外,为了能够实现C2的非交错,在C1编码的修正之后,将这些码元存入比存储器6容量大的存储器5内,而且回读它们,以便一方面写入存储器6,另一方面将它们直接提供给校正子发生器2。
为由修正器4以“飞击式”方式修正码字,必须写入存储器6,因为如所述的那样,就按CD方式修正C1而言,修正器不从SRAM存储器5读取拟被修正的码字,而从随机存取存储器6读取之。
C2修正的过程已经表述的修正C1的过程相似。伴随飞击式的修正,将修正的码元存入存储器5,尽管没有编码C2的奇偶码元。
-方程解算器-Ω(z)和Λ(z)的确定接下去的描述涉及方程解算器的执行程序。
方程解算器(也称“关键方程解算器”)的主要任务是为了分别确定误差判断多项式Λ(z)和误差计算多项式Ω(z)。
通过实行扩展的欧几里德十进制算法实现Ω(z)和Λ(z)的确定。为此,实现这些多项式的两种寄存器,分别为图8所示的RTOP和RBOT。
扩展的欧几里德十进制算法如下多项式Ω(z)和Λ(z)满足方程Λ(z)·S(z)=Ω(z)mod zrdeg reΩ(z)<deg reΛ(z)(变量“r”等于一个码字的奇偶码元数(编码的修正容量),也即为2t)。
伴随的初始值取Λn-1(z)=0Λ0(z)=1Ω-1(z)=zrΩ0(z)=T(z)[在没有擦除被知道的情况下,我们将取Ω0(z)=S(z)]。
进行连续的反复,直至deg reΩn<deg reΛn(z)Ωn(z)=Ωn-2(z)modΩn-1(z)(A)Λn(z)=Λn-1(z)*Qn(z)+Λn-2(z) (B)Qn(z)=Ωn-2(z)divΩn-1(z)(C)多项式寄存器RTOP和RBOT各包含r+1个被称为码元寄存器的8位寄存器(RTOP(k)和RBOT(k))。这些码元寄存器中的每一个都存储多项式Ω(z)和Λ(z)之一的一个系数。每个寄存器RTOP和RBOT从右至左都被分成一个被称为Λ部分的部分和一个所谓Ω部分。
开始时,Ω(z)的幂次最高,而Λ(z)的幂次最低。在寄存器RTOP和RBOT中,Ω(z)的幂次从所述Λ部分和Ω部分之间的分点向左增大,而Λ(z)的幂次向右增大。
表1示出在重复的最初阶段各寄存器的内容。
表1
对于每个码元的寄存器来说,标记Ptop和Pbot表明该寄存器究竟是包含Ω(z)的系数(Ptop/bot=0),抑或是包含Λ(z)的系数(Ptop/bot=1)。
此外,“DegTop”和“DegBot”被规定为分别是RTOP和RBOT的Ω部分的幂次,还有变量“ratio”表示比值RTOP(r+1)/RBOT(r+1)。
在这种前后关系中,扩展的欧几里德十进制算法被转换如下
<pre listing-type="program-listing"><![CDATA[DegBot=r,DegTop=r-1WHITE(DegTop>=t)DO IF ratio0 AND(DegTop<DegBot) EXCHANGE RTOP,RBOT EXCHANGE DegTop,DegBot EXCHANGE Ptop,Pbot END IF FOR k=r TO 0 IF(Pbot(k)=Ptop(k)=1)THEN RBOT(k)=RBOT(k)+ratio*RTOP(k) RTOP(k+1)=RTOP(k) ELSE IF(Pbot(k)=Ptop(k)=0)THEN RTOP(k+1)=RTOP(k)+ratio*RBOT(k) ELSE RTOP(k+1)=RTOP(k) END IF Ptop(k+1)=Ptop(k) END FOR DegTop=DegTop-1END WHITE]]></pre>当必须把擦除考虑在内时,WHITE的条件变为DegTop>=m,其中m=t+(degreeE(z)/2)。
符号k表示k次单元和其中所包含的寄存器。
我们规定r+1个单元,每个单元包含两个具有相同顺序的RTOP和RBOT。每个单元必须同样地实行上面规定的操作。
图9是表示r+1个单元连接的布局,用以形成寄存器RTOP和RBOT。划线的长方形表示基本单元,它包含多种寄存器、多路复用器、加法器和实行十进制算法所需的乘法器。
图10是一个单元的功能示意图。
所述单元包括预计用于存储标记Ptop的1位寄存器101,以及预计用于存储标记Pbot的1位寄存器102。这些寄存器中的每一个都包括一个适当控制的D触发器。反转电路103有两个输入端,分别连到寄存器101和102的不颠倒的输出端Q(信号Ptop和Pbot)。这个反转电路包括两个输出端,其中第一个输出端被加以参考标号Ptop NEXT,它连到与下一个单元的寄存器101等效的寄存器的输入端,而其中第二个输出端被回连到寄存器102的D输入端。根据控制信号SWAP的值,使Pbot送到第一输出端,而将Ptop送到第二输出端,或者反过来。
该单元还包括两个8位寄存器,被加以参考标号104和105,分别形成寄存器RBOT和RTOP。这些8位寄存器由比如8个并联连接的1位寄存器形成。寄存器104和105各自的输出端各连到由信号SELECT控制的反转电路106的一个输入端。
反转电路106映射反转电路103,它的每个输入端根据信号SELECT的情况或者连到它的一个输出端,或者连到另一个输出端。反转电路106的第一输出端107连到加法器108的输入端。反转电路106的第二输出端109连到乘法器110,使输出端109处的值扩大变量“比值(ratio)”倍。乘法器110的输出端连到加法器108的输入端。
按照它的D输入,寄存器105接受信号RTOP_IN,这相应于上述单元的RTOP之8位寄存器的输出。
从本单元到下一单元的输出信号被称为RTOP_NEXT。这个输出信号包括多路复用器111的输出,根据被称为OMEGA_C的控制信号的值,这一输出或选择加法器108的输出,或选择反转电路106的第二输出109。
最后,寄存器RBOT 104的输入端根据被称为LAMBDA_C的控制信号的值,借助第二多路复用器112或者连到加法器108的输出端,或者连到第三多路复用器113的输出端。第三多路复用器根据控制信号SWAP的值,或选择寄存器104(RBOT)的内容,或选择寄存器105(RTOP)的内容。
所述控制信号估算如下LAMBDA_C=Pbot AND PtopOMEGA_C=NOT(Pbot OR Ptop)SELECT=NOT(SWAP XOR OMEGA_C)EN_MUL=(LAMBDA_C OR OMEGA_C)图11表示在Ptop和Pbot都等于0情况下的一个单元。此单元的两个寄存器104和105包含Ω(z)的系数。因此将此单元的这种结构称为Omega结构。
图12和13分别表示在Ptop=Pbot=1和Ptop与Pbot不相等情况下的单元,分别称为Lambda和Mixed结构。
表2
Lambda部分实行方程(B)的乘法,而Omega部分实行方程(C)的除法。
例如,取多项式S(z)为S(z)=α14z5+α10z4+α3z3+α7z2+α9z+α12,则初始条件为Λn-1(z)=0Λ0(z)=1Ω-1(z)=Z6Ω0(z)=S(z)表3-10示出在十进制算法每次重复结尾处各单元的内容。
表3(初始条件)(DegBot=6-DegTop=5-ratio=α14-SWAP=1)
表4(重复1)(DegBot=5-DegTop=6-ratio=α-SWAP=0)
<p>表5(重复2)(DegBot=5-DegTop=5-ratio=α12-SWAP=0)<
表6(重复3)(DegBot=5-DegTop=4-ratio=α3-SWAP=1)<
>表7(重复4)(DegBot=4-DegTop=5-ratio=α11-SWAP=0)<
<p>表8(重复5)(DegBot=4-DegTop=4-ratio=α6-SWAP=0)
表9(重复6)(DegBot=4-DegTop=3-ratio=0-SWAP=O)
表10(重复7)
最后,我们就可得到Λ(z)=α12z2+α11z+α14Ω(z)=α11将Λ(z)的系数存在RBOT的Lambda部分,而将Ω(z)的系数存在RTOP的Omega部分。
在计算Λ(z)和Ω(z)之后,必须通过使RTOP(r+1)回到RTOP(2)并实行m=t+(degreeE(z)/2)交替,调整Ω(z)的系数。
T(z)-修正的校正子的确定方便的是,所述方程解算器还被用于多个多项式E(z)和S(z),去计算修正的校正子T(z)。由于多项式Λ(z)的确定需要各多项式的相乘,所以必须的乘法器已为方程解算器所适用。这些办法被用于E(z)*S(z)的乘法,从而简化了发生器2的结构。
S(z)的最高次幂是2t-1=r-1,而由推定,E(z)的最高次幂是2t=r(如果E(z)的最高次幂大于2t,则码字被标记为不能修正的)。于是,T(z)的最高次幂是r+1,这恰好相应于方程解算器单元的数目。
图14表示为实行乘法用的单元结构。寄存器Ptop和Pbot用于确定寄存器RTOP(k)和RBOT(k)的内容。各单元的结构被完全限定为图12所示的那样(Ptop=Pbot=1),也即为Lambda结构。每个寄存器RBOT通过相关的加法器108被反馈至它的输入端,而每个寄存器RTOP的输入端与所述单元的寄存器RTOP的输出端相连。最后,各单元的所有乘法器被连到同一输入端E,为的是顺序输入拟被相乘的两个多项式之一的系数。在本例的框架结构中,正是E(z)的系数被输入,但S(z)的系数也可被输入。输入端E将用于为确定Λ(z)和Ω(z)所用的结构时,以对每个单元提供“ratio”的值。
与图12的Lambda结构的另一个不同在于反转电路106的状态在整个过程中保持相同的乘积。
工作原理如下最初,将S(z)的系数存在寄存器RTOP中。“0”表示第一寄存器RTOP(0)的输入。
继而,在每个时钟周期一个系数的比率情况下,使E(z)的系数Ei按增大的幂次被送至输入端E。
为实行乘法所必须的时钟周期的编号等于E(z)的幂次。
作为举例,表11给出在S(z)和E(z)相乘的情况下每个寄存器的内容,其中S(z)为3次幂,E(z)为3次幂。
表11
可以看出,寄存器RTOP(k)形成移位寄存器,只用于存储S(z)的系数。通过正确地选择反转电路106的状态而实现所述移位寄存器。寄存器RBOT(k)分别用作每个多项式T(z)的系数的累加器。
因此,每个寄存器RBOT(k)归根到底包含系数Tk,其中T(z)=Σk=1rTkzk.]]>新误差判断多项式Ψ(z)的确定方便的是,所述方程解算器还被用于多个多项式E(z)和Λ(z)的相乘,去计算修正的校正子Ψ(z)。一旦已由方程解算器确定Λ(z),就计算后者多项式。一旦实行扩展的欧几里德十进制算法,则将Λ(z)的系数存在RBOT的Lambda部分。其它的寄存器RTOP(k)和RBOT(k)被设定为0。
用于实行乘法的各单元的结构由图15所表示。
寄存器RTOP(k)经各单元的加法器串联连接。值“0”被表示为第一寄存器RTOP(0)的输入。每个寄存器RBOT(k)的输出端连到它的单元k的乘法器。在目前的相乘过程中,寄存器RBOT(k)中所存的值不改变。如图14所示的那样,与连到各寄存器RBOT(k)的输出端的各输入端不同,各乘法器的输入端互相内连(参考点E)。
Λ(z)的幂次等于错误的数目。E(z)的幂次等于擦除的数目。
表12给出每次时钟周期之后单元的内容。
表12
在计算Ψ(z)的过程中,维持进行的乘法是对那些Pbot(k)=1的单元进行的乘法。
虽然目前所示的实施例涉及里德-所罗门修正,但可将所描述的两个组元的结构应用于实际上不同长度的数据包要被修正的所有情况。
最后,图16表示包含本发明装置的光盘201的阅读器200。本阅读器包括一个光学块202,该光学块202按公知的方式具有激光器、聚焦机构和光电探测器。本阅读器还包括由随动单元204控制的电机203。将所述光学块读取的数据传送给信号分离器205。将驱动信息传送给微处理器206,该处理器206控制显示器207、聚焦208和追踪209的随动。键盘210使用户能够控制该阅读器。
CD/DVD数据包由信号分离器205完全传送给连到存储器5的译码机构1,再传给插入单元211,该插入单元211起与数字/模拟转换器(未示出)联系的作用。
权利要求
1.一种里德-所罗门纠错装置,包括用于实现修正过程的里德-所罗门型修正机构(2,3,4),其特征在于还包括-第一存储器(5),供容纳DVD型数据用,以及供第一次修改过后的CD型数据(C2)用,为的是在通过第二次修正之前防止所述CD型数据交错;-第二存储器(6),为超高速缓冲存储器型并与第一存储器不同,所述第二存储器供容纳修正前的CD型数据(C1),以及不交错的CD型数据(C2)用。
2.如权利要求1所述的装置,其特征在于,将修正DVD型数据的码元从所述第一存储器(5)传给所述里德-所罗门型纠错机构,而将修正CD型数据的码元从所述第二存储器(6)传给所述里德-所罗门型纠错机构。
3.如前述任一权利要求所述的装置,其特征在于,所述第二存储器供存储两种以上第一修正通过之前交错的CD型数据包(C1),以实现所述数据包不交错。
4.如前述任一权利要求所述的装置,其特征在于,所述里德-所罗门型纠错机构包括修正器(4),它实现对应于第二存储器(6)的CD型数据的码元的飞击式修正。
5.如权利要求4所述的装置,其特征在于,在DVD型数据修正的前后关系中,修正器(4)只从第一存储器(5)读取拟修正之码元,并将经修正的码元写入其中。
6.如前述任一权利要求所述的装置,其特征在于,所述第一和第二存储器包括用于存储这些存储器内所存数据之错误标记的位置。
7.如前述任一权利要求所述的装置,其特征在于,它包括第一集成电路,该电路包含所述里德-所罗门型修正机构(2,3,4)和所述第二存储器,而所述第一存储器被包含于不同于第一集成电路的第二集成电路内。
8.光盘(201)的阅读器(200),其特征在于,它包含前述任一权利要求所述的装置。
全文摘要
里德-所罗门纠错装置,包括能实现修正过程的里德-所罗门型修正机构(2,3,4),这种装置包括:-第一存储器(5),供容纳DVD型数据用,以及供第一次修改过后的CD型数据(C2)用,为的是在通过第二次修正之前防止所述CD型数据交错;-比所述第一存储器容量小的第二存储器(6),供容纳修正前的CD型数据(C1),以及不交错的CD型数据(C2)用。本发明还涉及包含这种装置的光盘阅读器。
文档编号H03M13/00GK1229232SQ99103309
公开日1999年9月22日 申请日期1999年3月15日 优先权日1998年3月13日
发明者穆罕默德·达乌迪, 菲利普·伊索拉, 菲利普·保罗, 克里斯托夫·维鲁劳德 申请人:汤姆森多媒体公司