纠错方法和系统的制作方法

文档序号:7534137阅读:207来源:国知局
专利名称:纠错方法和系统的制作方法
技术领域
本发明涉及根据一个乘积码方案校正在数据记录磁盘或DVD(数字视盘)中所记录的错误数据的一种纠错方法和系统。
DVD已被用作ROM(只读存储器)或RAM(随机存取存储器)。在DVD-ROM/RAM中,基于乘积码方案的纠错在数据从DVD被读出时被完成,以及在DVD-RAM中,纠错码的生成在数据被新写入DVD时被完成。乘积码方案的使用由DVD标准规定。参见

图1简单介绍乘积码方案如下数据以K1(208行)×K2(172列)的数组排列,其中K1和K2每个是一正整数,同时一个纠错码即PO(奇偶外层码-Parity-Outer Code)被添加到垂直方向的每列的数据,一个纠错码即PI(奇偶内层码-Parity-Inner Code)被添加到在水平方向的每个行中的数据。包括数据和纠错码PO或PI的一组被称为ECC编码数据。在这个规范中,一行与一列的交点被称为一个位置。每个位置包括代表数据或符号的8个位。一行包括从#1到#172的172个位置,被从左端位置至右端位置沿水平方向排列,一列包括从#1至#208个位置,被从顶端位置至底端位置沿垂直方向排列。例如,在行2与列4的交点上的位置,当以行方向来查看这个位置时,被称为行的位置#4,或者当以列方向来查看这个位置时,被称为列的位置#2。
在图1中符号“X”代表一个错误数据。在图1所示的示例情况下,行1在位置#5和#7中包括错误数据,行2在位置#4至#8中包括错误数据,行3在位置#4到#7中包括错误数据,行4在位置#2至#4和位置#7到#9中包括错误数据,以及行5在位置#3和#7中包括错误数据。在乘积码方案中,在行方向的错误数据首先被校正,然后在列方向的错误数据被校正。也就是说,208行的纠错首先被完成,然后172列的纠错被完成。在行方向的数据和PI被取出以便完成在每行中数据的纠错,同时在列方向的数据和PO被取出以便完成在每列中数据的纠错。应当指出,在本规范中的描述是指从DVD读出的编码数据的纠错,而在图1中所示的ECC编码数据被称为编码数据。行1至208和纠错码被逐次记录在磁盘驱动装置的DVD中,并由一读出头读出,它们未被示出且保存在图3中所示的主存储器1中。在图1中所示的编码数据的一个位置,例如行1至8,被发送到缓冲存储器2。每行被发送到在图3中所示的编码器/译码器3的错误位置/模式发生器4,它们是本专业众所周知的。
在行方向和列方向纠错所要求的信息由错误位置/模式发生器4实现。错误位置/模式发生器4执行本专业中众所周知的一个Chien搜索函数,其生成产生错误数据的位置的一个表示式和校正错误数据的位模式,并根据该表示式计算错误数据的位置和位模式。假设在每行的纠错中最大可以校正三个错误数据。如果象在行2和4的情况中一样,在一行中的错误数据数目等于或大于四,则如本专业周知的那样,这个行被称为“删除”,且行2和4的错误数据不在行方向的纠错中被校正,删除行即行2和4的指针被保存在列方向纠错的编码器/译码器3的一个寄存器9B中。错误位置/模式发生器4发送一个指出被处理的一行是删除的信号至行计数器9A,它设置在寄存器9B中行的指针。被当作为删除处理的在行2和4中的错误数据在列方向的纠错中被校正。包含的错误数据小于四的行,例如在图1中行1、3和5在此处被称为“不删除”。
图2示出行方向纠错结果的一个例子。应当指出,该例子被选择来说明在以前的纠错过程中的问题。假设在行1的位置#1和#2中的错误数据,和在行3的位置#1和#2中的错误数据是新产生的。这些新的错误数据通过错误地校正在这些位置中的正确数据产生。如前所述,在每列中数据或符号的位置从列的上面至下面被规定为位置#1至#208。在列方向纠错中,在图3中示出的错误位置/模式发生器4配有在行方向纠错中获得的删除行即行2和4的指针。即删除行2和4的指针被用作例如输入到基于Read Solomon的一个纠错表示式的一个参数。由于Read Solomon的译码算法是众所周知的,所以此处不介绍纠错算法。删除的最大可校正数目N由下面的表示式表示。
N=16-(2×不删除中的错误数据的数目)如果在列方向中的错误数据不包括属于不删除的错误数据,则N等于16,如果包括属于不删除的三个错误数据,则N等于10。包括保存在缓冲存储器2中的208个数据和第一列1的PI的编码数据被供给错误位置/模式发生器4。错误位置/模式发生器4确定属于不删除的错误数据的位置以及产生校正错误数据的位模式。另外,错误位置/模式发生器4根据指针,在列1的情况下行2和4,确定属于删除的错误数据的位置以及产生校正属于删除的数据的位模式。
更详细地说,在列1的纠错中,错误位置/模式发生器4查找在位置#1中属于不删除的错误数据,并产生校正错误数据的一个位模式,以及产生一个第二信息块,它包括NE1-1、位置(POS)=#1和NE1-1、BP(位模式),如在图4中所示的表的列1的框(BDX)1中所示,其中NE1-1表示它是在列1中属于不删除的第一个错误数据,POS=#1表示错误数据的位置是位置#1,BP表示校正错误数据的位模式。错误位置/模式发生器4把第二信息块发送到错误数据寄存器6至地址指针5的第一级。应当指出,包括指出保存属于被归入删除一类的行之数据的位置的一个位置数据的一个信息块和校正在该位置上的数据的一个模式被称为第一信息块,而包括指出保存属于被归入不删除一类的行之错误数据的位置的一个位置数据的一个信息块和校正在该位置上的错误数据的一个模式被称为第二信息块。
接着,错误位置/模式发生器4根据指针“行2”查找在位置#2中属于删除的第一个错误数据,并产生校正错误数据的一个位模式,以及产生一个第一信息块,它包括E1-1、位置(POS)=#2和E1-1、BP(位模式),如在图4中所示的列1的框2中所示,其中E1-1表示它是列1的删除的第一个错误数据,POS=#2表示错误数据的位置是位置#2,BP表示校正错误数据的位模式。错误位置/模式发生器4把第一信息块经由地址指针5发送到错误数据寄存器6的第二级。接着,错误位置/模式发生器4查找在位置#3中属于不删除的第二个错误数据,并产生校正错误数据的一个位模式,以及产生一个第二信息块,它包括NE1-2、位置(POS)=#3和NE1-2、BP(位模式),如在图4中所示的列1的框3中所示,其中NE1-2表示它是列1的属于不删除的第二个错误数据,POS=#3表示错误数据的位置是位置#3,BP表示校正错误数据的位模式。错误位置/模式发生器4把第二信息块经由地址指针5发送到错误数据寄存器6的第三级。接着,错误位置/模式发生器4根据指针“行4”查找在位置#4中属于删除的第二个错误数据,并产生校正错误数据的一个位模式,以及产生一个第一信息块,它包括E1-2、位置(POS)=#4和E1-2、BP(位模式),如在图4中所示的列1的框4中所示,其中E1-2表示它是列1的属于删除的第二个错误数据,POS=#4表示错误数据的位置是位置#4,BP表示较正错误数据的位模式。错误位置/模式发生器4把第一信息块经由地址指针5发送到错误数据寄存器6的第二级。用这种方法,错误位置/模式发生器4顺序地查找列1的错误数据,把每个错误数据的上述信息块经由地址指针5发送到错误数据寄存器6。当产生列1的上述信息块的操作结束时,错误数据寄存器6的内容被逐次发送到缓冲存储器2的区域7,列1的上述信息块在区域7中被组合成在图4中所示的表。对相继的列2、3、…7重复上述操作,在缓冲存储器2中的区域7内组合成在图4中所示的表。
接着,在列1中纠错的操作被完成。MPU8取出现在保存在段7中的在图4中表的列1中框1的第二信息块,并计算在主存储器1中保存相应于在列1中位置#1的数据的原来数据的一个地址。接着,MPU8从缓冲存储器2中取出在位置#1中的数据,并通过使用在框1中所包含的位模式校正所取出的数据,以及把经校正的数据写入到主存储器1的所计算得到的地址内。接着,MPU8取出在图4中表的列1中框2的第一信息块,并计算在主存储器1中保存相应于在列1中位置#2的数据的原来数据的一个地址。接着,MPU8从缓冲存储器2中取出在位置#2中的数据,并通过使用在框2中所包含的位模式校正所取出的数据,以及把经校正的数据写入到主存储器1的所计算得到的地址内。
MPU8对保存所有列1至172的一个字节(8位数据)的每个位置重复上述操作。显然,在主存储器1上的地址计算被对每个位置进行,对于每个对主存储器1的存取操作,一个字节被保存在主存储器1中,因此对在删除中的错误数据的地址计算的数目用N×172(列)来表示,其中如前所述,N是对在删除中的错误数据以列方向的最大可校正数目。通常,DRAM(动态随机存取存储器)被用作主存储器1,它能以一低的存取速度保存大的数据容量,而高存取速度的SRAM(同步随机存取存储器)以成本观点被用作缓冲器2。纠错的总处理时间取决于对主存储器1的存取操作数目。在以前的处理方案中存在的问题是由于对主存储器1的大量存取,所要求的处理时间太长。
本发明的目的是提供一种纠错方法和系统,它能大大减小在乘积码方案的列方向中纠错的处理时间,以便减小纠错的总处理时间。
按照本发明的一种基于乘积码方案的纠错方法,其中数据以K1×K2位置的数组排列(K1是行数,K2是列数),纠错码PO被添加到K2列,纠错码PI被添加到K1行,一行包含的错误数据等于或小于一预定数目,把该行作为不删除处理,一行包含的错误数据大于预定数目,该行作为删除处理,该方法包括下列步骤(a)取出包含K2数据和纠错码PI的一行,以便将该一行归入不删除或删除一类,并且如果该一行被归入不删除一类,则根据纠错码PI校正在该一行中所包含的错误数据;(b)重复步骤(a),以处理K1行;(c)取出包含K1数据和纠错码PO的一列,以便产生一个第一信息块,它包括指出保存属于被归入删除一类的行之数据在该一列中的位置的一个位置数据,以及校正在该位置上的数据的一个模式,同时产生一个第二信息块,它包括指出保存属于被归入不删除一类的行之错误数据在该一列中的位置的一个位置数据,以及校正在该位置上的错误数据一个模式;(d)取出在被归入删除一类的一行中至少两个相邻位置的数据以及与该数据有关的至少两个第一信息块,以便根据在第一信息块中所包含的模式校正在至少两个相邻位置上的数据;以及(e)重复步骤(d),直到被归入删除一类的所有行的数据被校正为止。
步骤(a)产生被归入删除一类的行的指针,而步骤(d)根据指针产生保存在被归入删除一类的行中至少两个相邻位置的数据之一个单元的地址,以及把经校正的数据保存至该单元。
该方法还包括下列步骤(f)取出一个第二信息块,以及取出在由该第二信息块的一个位置数据所指出的一个位置上的一个错误数据,以便根据在该第二信息块中所包含的模式校正该一个错误数据;以及(g)重复步骤(f),以便校正属于所说的不删除一类的错误数据。
第一信息块被保存在一个表的第一部分中,而第二信息块被保存在表的第二部分中,以及在被归入删除一类的一行中的数据的第一信息块以该第一信息块产生的次序被顺序地保存在第一部分的框中。
在步骤(d)中与在被归入删除一类的一行中至少两个相邻位置的数据有关的第一信息块的取出,通过顺序访问在表的第一部分中至少两个框来完成。
步骤(c)根据指针产生第一信息块的位置数据。
按照本发明的一种基于乘积码方案的纠错方法,其中数据以K1×K2位置的数据数组排列(K1是行数,K2是列数),纠错码PO被添加到K2列,纠错码PI被添加到K1行,一行包含的错误数据等于或小于一预定数目,把该行作为不删除处理,一行包含的错误数据大于该预定数目,该行作为删除处理,该方法包括下列步骤(a)把K1×K2位置的数据数组、纠错码PO和纠错码PI保存在一个主存储器中,(b)从主存储器读取小于K1的一预定数目的行,以便把它们保存在一个缓冲存储器中,(c)访问缓冲存储器,取出包含K2数据和纠错码PI的一行,以便把该一行归入不删除或删除一类,同时如果该一行被归入不删除一类,则根据纠错码PI校正在该一行中所包含的错误数据;(d)如果一行被归入删除一类,则保存该行的指针;(e)重复步骤(b)、(c)和(d),以处理K1行;(f)在主存储器中产生许多单元的地址,每个地址根据指针保存在被归入删除一类的一行中的两个相邻数据,(g)从主存储器读取小于K2的一预定数目的列,以便把它们保存在缓冲存储器中,(h)访问缓冲存储器,取出包含K1数据和纠错码PO的一列,以便产生一个第一信息块,它包括指出保存属于被归入删除一类的行的数据的该一列中的位置的一个位置数据,以及校正在该位置上的数据的一个模式,同时产生一个第二信息块,它包括指出保存属于被归入不删除一类的行之错误数据的该一列中的位置的一个位置数据,以及校正在该位置上的错误数据的一个模式;(i)把第一信息块和第二信息块保存在一个表中;(j)重复步骤(g)、(h)和(i),以处理该预定数目的列;(k)访问缓冲存储器,取出在被归入删除一类的一行中至少两个相邻位置的数据,访问表,取出与该数据有关的至少两个第一信息块以及根据在该第一信息块中所包含的模式校正在至少两个相邻位置上的数据;(l)通过使用在步骤(f)中所产生的地址,访问在主存储器中保存两个数据的一个单元,以便把经校正的数据保存在该单元中,以及(m)重复步骤(k)和(l),直到被归入删除一类的所有行的数据被校正为止。
该方法还包括下列步骤(n)访问表,取出与一个错误数据有关的一个第二信息块,访问缓冲存储器,取出由第二信息块的一个位置数据所指出的一个位置上的一个错误数据,以便根据在第二信息块中所包含的一个模式校正该一个错误数据;以及(o)重复步骤(n),以校正属于不删除一类的错误数据。
第一信息块被保存在一个表的第一部分中,而第二信息块被保存在表的第二部分中,以及在被归入删除一类的一行中的数据的第一信息块以第一信息块产生的次序被顺序地保存在第一部分的框中。
按照本发明的一种基于乘积码方案的纠错系统,其中数据以K1×K2位置的数组排列(K1是行数,K2是列数),纠错码PO被添加到K2列,纠错码PI被添加到K1行,一行包含的错误数据等于或小于一预定数目,把该行作为不删除处理,一行包含的错误数据大于预定数目,该行作为删除处理,该系统包括(a)取出包含K2数据和纠错码PI的一行,以便将该一行归入所说的不删除或删除一类,并且如果该一行被归入不删除一类,则根据纠错码P工校正在该一行中所包含的错误数据的装置;(b)重复地操作装置(a),以处理K1行的装置;(c)取出包含K1数据和纠错码PO的一列,以便产生一个第一信息块,它包括指出保存属于被归入删除一类的行之数据的该一列中的位置的一个位置数据,以及校正在该位置的数据的一个模式,同时产生一个第二信息块,它包括指出属于被归入不删除一类的行之错误数据的该一列中的位置的一个位置数据,以及校正在该位置上的错误数据的一个模式的装置;(d)取出在被归入删除一类的一行中至少两个相邻位置的数据以及与该数据有关的至少两个第一信息块,以便根据在第一信息块中所包含的模式校正在至少两个相邻位置上的数据的装置;以及(e)重复地操作装置(d),直到被归入删除一类的所有行的数据被校正为止的装置。
装置(a)产生被归入删除一类的行之指针,而装置(d)根据该指针产生保存在被归入删除一类的一行中至少两个相邻位置的数据之一个单元的地址,以及把经校正的数据保存至该单元。
该系统还包括(f)取出一个第二信息块,以及取出在由第二信息块的一个位置数据所指出的一个位置上的一个错误数据,以便根据在第二信息块中所包含的一个模式校正该一个错误数据的装置;以及(g)重复地操作装置(f),以便校正属于不删除一类的错误数据的装置。
第一信息块被保存在一个表的第一部分中,而第二信息块被保存在表的第二部分中,以及在被归入删除一类的一行中的数据的第一信息块以第一信息块产生的次序被顺序地保存在第一部分的框中。
在装置(d)中与在被归入删除一类的一行中至少两个相邻位置的数据有关的第一信息块的取出,通过顺序地访问在表的第一部分中至少两个框来完成。
装置(c)根据指针产生第一信息块的位置数据。
按照本发明的一种基于乘积码方案的纠错系统,其中数据以K1×K2位置排列(K1是行数,K2是列数),纠错码PO被添加到K2列,纠错码PI被添加到K1行,一行包含的错误数据等于或小于一预定数目,把该行作为不删除处理,一行包含的错误数据大于预定数目,该行作为删除处理,该系统包括(a)把K1×K2位置的数据数组、纠错码PO和纠错码PI保存在一个主存储器中的装置,(b)从主存储器读取小于K1的一预定数目的行,以便把它们保存在一个缓冲存储器中的装置,(c)访问缓冲存储器,取出包含K2数据和纠错码PI的一行,以便把该一行归入不删除或删除一类,同时如果该一行被归入不删除一类,则根据纠错码PI校正在该一行中所包含的错误数据的装置;(d)如果一行被归入删除一类,则保存该行的指针的装置;(e)重复步骤(b)、(c)和(d),以处理K1行的装置;(f)在主存储器中产生许多单元的地址的装置,每个地址根据指针保存在被归入所说的删除一类的一行中的两个相邻数据;(g)从主存储器中读取小于K2的一预定数目的列,以便把它们保存在缓冲存储器中的装置,(h)访问缓冲存储器,取出包含K2数据和纠错码PO的一列,以便产生一个第一信息块,它包括指出保存属于被归入删除一类的行之数据的该一列中的位置的一个位置数据,以及校正在该位置上的数据的一个模式,同时产生一个第二信息块,它包括指出保存属于被归入不删除一类的行之错误数据的该一行中的位置的一个位置数据,以及校正在该位置上的错误数据的一个模式的装置;(i)把第一信息块和第二信息块保存在一个表中的装置;(j)重复地操作装置(g)、(h)和(i),以处理预定数目的列的装置;(k)访问缓冲存储器,取出在被归入删除一类的一行中至少两个相邻位置的数据,访问表,取出与该数据有关的至少两个第一信息块以及根据在第一信息块中所包含的模式校正在至少两个相邻位置上的数据的位置;(l)通过使用由装置(f)所产生的地址,访问在主存储器中保存两个数据的一个单元,以便把经校正的数据保存在该单元中的装置,以及(m)重复地操作装置(k)和(l),直到被归入删除一类的所有行的数据被校正为止的装置。
该系统还包括(n)访问表,取出与该一个错误数据有关的一个第二信息块,访问缓冲存储器,取出由第二信息块的一个位置数据所指出的一个位置上的一个错误数据,以便根据第二信息块中所包含的一个模式校正该一个错误数据的装置;以及(o)重复地操作装置(n),以校正属于不删除一类的错误数据的装置。
第一信息块被保存在一个表的第一部分中,而第二信息块被保存在表的第二部分中,以及在被归入删除一类的一行中的数据的第一信息块以第一信息块产生的次序被顺序地保存在第一部分的框中。
图5示出按照本发明的一个DVD系统。一个磁盘驱动装置11包括顺序地保存图1所示编码数据的数据记录磁盘或DVD、旋转DVD的一个主轴马达和从DVD读出编码数据的一个读出头。因为DVD、主轴马达和读出头是本专业众所周知的,所以这些在图5中未示出。为便于将本发明的纠错过程与以前技术的纠错过程作一比较,本发明的纠错过程采用图1所示的编码数据来说明。记录在DVD上的图1的编码数据的行1至208和纠错码PO与PI被顺序地读出,并经由一根线21被保存在一主存储器12,例如DRAM中。一个缓冲存储器13,例如SRAM包括四个存储器区域14、14A、15和15A。存储器区域14和15被用作具有比主存储器12高的处理速度的一个高速缓冲存储器。一部分编码数据,例如一组8行和下一组8行在行方向的纠错过程中被保存在存储器区域14和15中,而一部分编码数据,例如一组8列和下一组8列在列方向的纠错过程中被保存在存储器区域14和15中。存储器区域14A和15A分别被用于保存在行或列方向的纠错中所组合成的图7所示的表1和图10所示的表2。
一个编码器/译码器16包括一个编码器部分,当一个208行×172列的新数据被保存到DVD时,编码器部分产生PI和PO,以及一个译码器部分,它包括用以产生组合成表1和2的第一和第二信息块的错误位置/模式发生器26、第一和第二地址指针27和28、一个错误数据寄存器29、一个行计数器31、一个寄存器17和一个寄存器32。这些部件的工作在后面说明。MPU18控制磁盘驱动装置11、主存储器12、缓冲存储器13和编码器/译码器16的工作,并包括一个存储器33,它包含存储器区域34、35和36。如前所述,错误位置/模式发生器26执行本专业中众所周知的一个Chien搜索函数,其生成产生错误数据的位置的一个表示式和校正错误数据的位模式,并根据该表示式计算错误数据和位置和位模式。
A行方向的纠错。
图6示出校正图1所示的编码数据的行的错误数据的处理步骤的流程图。行方向的纠错操作实际上与以前的技术一样。MPU18控制图6的步骤的操作。应当指出,包括等于或小于一预定数目的错误数据的行被称为不删除,包括大于预定数目的错误数据的行被称为删除,表1的信息块被用于校正在不删除中的错误数据。在示例实施例中,数字“3”被选择作为预定数目。操作在步骤41上开始,从主存储器12中取出第一组8行并保存在存储器区域14中,从主存储器12中取出第二组8行并保存在存储器区域15中。第一组8行的纠错通过经由步骤42至步骤50的第一个循环操作来进行。当第一组的处理被完成时,第三组8行被保存在存储器区域14中,并被保存在存储器区域15中的第二组8行的纠错被开始。
步骤42至48的操作的目的是把每个8行,在本例中行1至8归入不删除和删除一类,并组合成图7所示的表1。操作进到步骤42,包括行1的K2数据和PI的编码数据经由一根线24被发送到错误位置其中/模式发生器26。错误位置/模式发生器26计算错误数据的位置和根据纠错码IP校正错误数据的位模式。对于行1的位置#5中第一个错误数据,错误位置/模式发生器26产生校正错误数据的一个位模式(BP),以及产生一个第二信息块,它包含NE1-1、位置(POS)=#5和NE1-1、BP(位模式),如图7所示的在行1的框1中所示,其中NE1-1表示它是被归入不删除一类的行1的第一个错误数据,POS=#5表示错误数据的位置是位置#5,BP表示校正错误数据的位模式。错误位置/模式发生器26把第二信息块经由第一个地址指针27发送到错误数据寄存器29的第一级。应当指出,如前所述,包含指出保存属于被归入删除一类的行的数据的一个位置的一个位置数据以及校正在该位置上的数据的一个模式的一个信息块被称为第一信息块,而包括指出属于被归入不删除一类的行的错误数据的一个位置的一个位置数据以及校正在该位置上的错误数据的一个模式的一个信息块被称为第二信息块。
对于在行1的位置#7中的第二个错误数据,错误位置/模式发生器26产生校正错误数据的一个位模式,以及产生一个第二信息块,它包含NE1-2、位置(POS)=#7和NE1-2、BP(位模式),如图7所示的在行1的框2中所示,其中NE1-2表示它是被归入不删除一类的行1的第二个错误数据,POS=#7表示错误数据的位置是位置#7,BP表示校正错误数据的位模式。错误位置/模式发生器26把第二信息块经由第一个地址指针27发送到错误数据寄存器29的第二级。操作进到步骤43,其中错误位置/模式发生器26确定行1是否包含错误数据。如果步骤43的回答是NO,操作进到步骤44,其中这行的一个标志1在MPU18中的存储器区域36中被设置。如果步骤43的回答是YES,则操作进到步骤45,其中错误位置/模式发生器26确定在一行中错误数据的总数是否大于3。也就是说,该行在步骤45中被归入删除或不删除一类。如果步骤45的回答是YES,则操作进到步骤46,其中错误位置/模式发生器26把指出当前行是删除的一个信号发送到行计数器31。行计数器31设置删除的行号为一个至寄存器17的指针。用这种方法,被归入删除一类的行的指针被保存在译码器部分的寄存器17中。在行1的情况中,行1是不删除,因此步骤45的回答是NO,操作进到步骤47,其中包含NE1-1、位置(POS)=#5和NE1-1、BP(位模式)的第二信息块以及包含NE1-2、位置(POS)=#7和NE1-2、BP(位模式)的第二信息块被从错误数据寄存器29发送到存储器区域14A,以便组合成表1的第一行。
应当指出,图7所示的表1是对第一组行1至8在存储器区域14A中所组合成的一个最后获得的表,仅第一个地址指针27被用在行方向的纠错中。操作进到步骤48,其中译码器部分确定所有8行是否已处理过。如果步骤48的回答是YES,则操作进到步预49。在示例的情况下,步骤48的回答是NO,操作返回到步骤42,行2的编码数据被发送到错误位置/模式发生器26。由于这个行2包括错误数据且在行2中所包含的错误数目大于3,所以这个行2在步骤45中被归入删除一类,操作进到步骤46,其中指针“行2”被保存在寄存器17中,操作返回到步骤42,其中下一行3被发送到错误位置/模式发生器26,同时错误位置/模式发生器26产生包含第一个错误数据的NE3-1、位置=#4、NE3-1、BP的第二信息块以及包含第二个错误数据的NE3-2、位置=#7、NE3-2、BP的第二信息块,并把这两个第二信息块经由第一个地址指针27发送到错误数据寄存器29的第一级和第二级。
操作进到步骤43,回答YES被产生,操作进到步骤45,它产生回答NO,因为行3仅包含两个错误数据,行3被归入不删除一类。操作进到步骤47,其中在错误数据寄存器29中的上面两个第二信息块被发送到在存储器区域14A中表1的行3。操作进行步骤48,在本例中步骤48的回答是NO,操作返回到步骤42,同时上述的操作被重复,直到步骤48的回答变成YES为止。当步骤48的回答是YES,其表示第一组的所有8行已被处理时,保存在译码器部分的寄存器17中的删除的指针即“行2”、“行4”被传送到MPU18的存储器区域34,同时在这个时刻,在8行中不删除的第二信息块已被组合在缓冲存储器13的存储器区域14A中的表1内。
步骤49和50的操作的目的是根据图7所示的表1的第二信息块校正在8行中被归入不删除一类的行的错误数据。在步骤49的操作中,MPU18取出图7所示表1的行1的框1的第二信息块,根据在第二信息块中位置数据#5计算保存行1的位置#5的错误数据的主存储器12的一个地址。同时,MPU18从区域14取出行1的位置#5的错误数据,例如8位数据“00000001”,并执行错误数据“00000001”与校正该错误数据的位模式(BP)例如“00000001”的异或操作,结果得到经校正的8位数据“00000000”。同时,MPU18把经校正的数据保存到主存储器12的地址中。用这种方法,保存在主存储器12中的行1的位置#5的原来数据被校正。当在一行中所有错误数据在步骤49中被校正时,操作进到步骤50,其中MPU18确定8行的处理是否已被完成。如果步骤50的回答是NO,则操作返回到步骤49。如果步骤50的回答是YES,操作进到步骤51,其中MPU18确定208行的处理是否已被完成。如果步骤51的回答是NO,则操作返回到步骤42,其中在存储器区域15中的下一个8行,即行9至16的处理被开始,下一个8行的新的表1被组合到存储器区域15A中。
如果步骤51的回答是YES,操作在步骤52上结束。
对于每组8行,重复步骤42至步骤50的操作,在被归入不删除一类的行中被保存在主存储器12中的错误数据根据表1的第二信息块被校正,同时被归入删除一类的行的指针被累积在MPU18的存储器区域34中。当208行的处理已被完成时,被归入删除一类的行的指针被保存在MPU17的存储器区域34中。步骤51的回答YES表示在所有行是不删除且所有行包括三个错误数据的情况下,校正一个错误数据的处理最多被重复3×208次。
B行方向纠错的结果图2示出行方向纠错结果的例子,其被参见以前技术的说明。如前所述,在行1的位置#1和#2中的错误数据,以及在行3的位置#1和#3中的错误数据被新产生。这些新的错误数据通过错误地校正在这些位置中的正确数据被产生。在行方向纠错中在一行中产生错误校正的概率取决于在一行中可校正错误数据的数目,如下所述。
可校正错误数据的数目产生错误校正的概率5 10-14 10-33 10-62 10-81 10-11在示例实施例中,在一行中可校正错误数据的数目是3,因此,查看在列方向中的数据,在一列中产生属于不删除一类的错误数据的概率是10-6,在一列中剩下的错误数据属于删除一类。因此,在列方向的纠错中,在一列中所包括的几乎没有错误数据属于删除一类。但是,图2所示的示例例子被选择供说明之用,在该例子中第一列包括在位置#1和#3中所产生的两个错误数据。
C列方向的纠错图8和9示出按照本发明校正图2所示编码数据的列的数据的错误数据的处理步骤的流程图。
C-1校正在列方向中属于删除一类的错误数据
简略地说,步骤54至58的操作的目的是组合图10所示的表2。操作在步骤53上开始,第一组8列被从主存储器12中取出并被保存在存储器区域14中,以及第二组8列被从主存储器12中取出并被保存在存储器区域15中。第一组8列的纠错通过经由步骤54至步骤65的操作来进行。当第一组的处理被完成时,第三组8列被保存在存储器区域14中,并且被保存在存储器区域15中的第二组8列的纠错被开始。操作进到步骤54,其中MPU18把删除的指针即现在保存在MPU18的存储器区域34中的行2、行4…发送到译码器部分的寄存器32中。操作进到步骤55,其中MPU18根据删除的指针即保存在存储器区域34中的行2、行4、…计算主存储器12的单元的地址,每个地址包括删除的两个相邻位置。参见图11,被归入删除一类的行2和4的列1至8被分成四个单元,每个单元包括两个相邻位置的两个数据。行2的第一个单元包括列1和2的两个数据,行2的第二个单元包括列3和4的两个数据,如此等等。对包括如图11所示的列1和8的行2和4,MPU18计算主存储器12上的8个单元的地址例如(X0、Y0),(X1、Y1)等等,同时MPU18反这些地址保存到存储器33的存储器区域35中。
操作进到步骤56,其中列1的编码数据经由线24被发送到错误位置/模式发生器26,以产生第一信息块和第二信息块,如在图10的表2中所示。错误位置/模式发生器26根据被保存在寄存器32中的删除的指针,可以检测哪一种类型的错误数据,属于删除一类的错误数据还是属于不删除一类的错误数据被处理。更具体地说,对于在列1的位置#1中属于不删除(行1)的错误数据,错误位置/模式发生器26计算位置#1和校正错误数据的一个位模式(BP),并产生第二信息块,它包括NE1-1、位置(POS)=#1和NE1-1、BP(位模式),如在图10的表2中所示的列1的不删除部分或第二部分的框X中所示,其中NE1-1表示它是在列1中属于不删除一类的第一个错误数据,POS=#1表示错误数据的位置是位置#1,BP表示校正错误数据的位模式。错误位置1模式发生器26把第二信息块经由第二个地址指针28发送到错误数据寄存器29的不删除部分的第一级,如图12所示。
应当指出,译码器部分的第一和第二地址指针27和28被用于列方向的纠错,而错误数据寄存器29被分成经由第一地址指针27保存属于删除一类的错误数据的第一信息块的删除部分,以及经由第二地址指针28保存属于不删除一类的错误数据的第二信息块的不删除部分。对于在列1的位置#2中属于删除(行2)一类的错误数据,错误位置/模式发生器26计算位置#2和校正错误数据的一个位模式(BP),并产生一个第一信息块,它包括E1-1、位置(POS)=#2和E1-1、BP(位模式),如在表2的列1的错误数据或第一部分的框1中所示,其中E1-1表示它是在列1中属于删除一类的第一个错误数据,POS=#2表示错误数据的位置是位置#2,BP表示校正错误数据的位模式。错误位置/模式发生器26把第一信息块经由第一个地址指针27发送到错误数据寄存器29的删除部分的第一级,如图12所示。
用同样的方法,误差位置/模式发生器26产生包括NE1-2、位置(POS)=#3和NE1-2、BP(位模式)的第二信息块并把第二信息块经由第二个地址指针28保存到错误数据寄存器29的不删除部分的第二级,然后产生包括E1-2、位置(POS)=#4和E1-2、BP(位模式)的第一信息块并把第一信息块经由第一个地址指针27保存到错误数据寄存器29的删除部分的第二级。当列1的所有错误数据的信息块被保存在错误数据寄存器29中时,操作进到步骤57,其中第一和第二信息块被发送到缓冲存储器13的存储器区域14A,在那里表2的列1被组合,操作进到步骤58,其中译码器部分确定所有8列是否已被处理。如果步骤58的回答是YES,则操作进到步骤59。在示例的情况中,步骤58的回答是NO,操作返回到步骤56,下一个列2的编码数据被发送到错误位置/模式发生器26。步骤56至58的循环操作被重复直到步骤58的回答变成YES。当步骤58的回答是YES时,操作进到步骤59。应当指出,与在图2中列1与行2的交点上的数据有关的第一信息块E1-1被保存在图10的表2的列1的框1中,与在图2中列2与行2的交点上的数据有关的第一信息块E2-1被保存在图10的表2的列2的框1中,以及与在图2中列3与行2的交点上的数据有关的第一信息块E3-1被保存在图10的表2的列1的框1中,如此等等。也就是说,与第一个删除即行2有关的第一信息块被排列在表2的垂直方向的172个框1中,而与第二个删除即行4有关的第一信息块被排列在表2的垂直方向的172个框2中,如此等等。MPU18知道上述排列关系,因此当MPU18样正在列1与行2的交点上的数据,和在列2与行2的交点上的数据时,MPU18从存储器区域14中并行地取出在删除即行2中在两个相邻位置上的这二个数据,并从表2取出第一信息块E1-1和E2-1。换句话说,第一信息块被保存在表2的删除部分,而第二信息块被保存在表2的不删除部分,在被归入删除一类的一行中K2位置的第一信息块以第一信息块产生的次序被保存在表2垂直方向的相继的框中。
步骤59和61的操作效果是将为校正属于删除一类错误数据访问主存储器12的数目减小至值N×86,其中N是删除的最大可校正数目。在步骤59中,MPU18从存储器区域14中取出在图2中所示的编码数据中在被归入删除一类的行2中两个相邻列位置#1和#2上的两个数据,并从表2取出两个第一信息块,即在表2(图10)中列1的框1的第一信息块和列2的框1的第一信息块。两个数据的例子是“0000000100000000”。也就是说,与删除的两个相邻列位置的两个数据(16位数据)有关的两个第一信息块被从表2取出。
应当指出,第一信息块E1-1的位模式(BP)是“00000000”和第一信息块E2-1的位模式是“00000000”,因为在行2中两个相邻列位置#1和#2的两个数据被校正,如在图2中所示。MPU18执行取出数据“0000000100000000”与位模式(BP)“0000000000000000”的异或操作,结果得到16位数据“0000000100000000”。同时,MPU18把所得到的16位数据“0000000100000000”保存到主存储器12的地址(X0、Y0)的单元中作为经校正的数据。上述两个数据被原本地校正,且没被位模式校正,因此可以说原来的两个数据被复现。但是在纠错领域习惯地说,两个数据的复现被称为两个数据的校正,即使它们实际上没被校正,因此在规范中它被称为两个数据的校正。操作进到步骤60,其中MPU18确定一个删除的位置#1至#8的处理是否已被完成。
在示例例子中,步骤60的回答是NO,操作返回到步骤59,其中MPU18从存储器区域14中取出在图2所示的行2中两个相邻位置#3和#4上的两个数据(16位数据),并从表2取出两个第一信息块,即表2(图10)中列3的框1的第一信息块和列4的框1的第一信息块。MPU18执行16位数据与16位模式的异或操作,并把所得到的16位数据保存到主存储器12的地址(X1、Y0)的一个单元中作为经校正的数据。在本例中,如果行2的位置#4的8位错误数据是“00000001”,例如被保存在表2的列4的框1中的第一信息块E4-1的8位模式是“00000001”,则所得到的经校正的8位数据“00000000”。用这个方法,在图11所示的包括8列的一个删除的四个单元中的数据在步骤59和60中被顺序地校正。如果步骤60的回答是YES,则操作进到步骤61,其中MPU18确定N删除的处理是否已被完成。如果步骤61的回答是NO,则操作返回到步骤59。如果步骤61的回答是YES,它意味着包含列#1至#8的所有N删除的处理已被完成,其中N是删除的最大可校正数目,操作进到图9中的步骤62。
显然,在本发明中删除的两个相邻位置的16位数据以一次访问操作被保存在主存储器12中。在以前根据图4所示的表进行的处理中,仅删除的一个位置的8位数据以一次访问操作被保存在主存储器中。显而易见,按照本发明,为校正删除的数据访问主存储器的次数可以实质上被减小到在以前处理中次数的一半。此外,MPU18从缓冲存储器13取出16位数据以及从表2取出保存在存储器区域14A或15A中的校正错误数据的16位模式,以便校正删除的16位数据。在以前根据图4所示的表进行的处理中,从主存储器1中取出8位数据,从图4中的表取出8位模式。显而易见,按照本发明,访问缓冲存储器13和表2的次数可以实质上被减小到在以前的处理中次数的一半。
另外,按照本发明,MPU18计算所有单元的所有地址,每个地址包括删除的两个相邻位置的两个数据,在步骤55中根据删除的指针,即行2、行4…一齐被保存在存储器区域34中。在以前的处理中,主存储器1的地址的计算由MPU8进行,每次从图4所示的表中取出一个框的信息块。本发明可以简化操作流程,因此纠错的处理时间可以被减小。用这个方法,本发明由于上述理由可以减小校正在删除中所包含的错误数据的处理时间。更具体地说,在删除中错误数据的校正占据列方向纠错的较大部分。例如,如前所述,在一行中可校正错误数据数目为3的情况下,在一列中产生属于不删除的错误数据的概率是10-6,而在一列中剩下的错误数据属于删除。也就是说,在一列中几乎所有错误数据属于删除。本发明可以减小校正在列方向纠错中属于删除一类的数据的处理时间,因此本发明可以显著减小乘积码方案的行和列方向纠错所要求的总处理时间。
C-2在列方向不删除中错误数据的校正图9所示的过程校正在包括列1至8的不删除中剩下的错误数据,因为如前所述,包括列#1至#8的所有N删除的处理已在图8中步骤61中完成。操作在步骤62上开始,其中MPU18取出在图10所示的表2的列1的框X的第二信息块NE1-1,以根据第二信息块NE1-1计算保存列1的位置#1的错误数据的主存储器12的地址。操作进到步骤63,春中MPU18从区域14取出列1的位置#1的错误数据例如8位数据“00000001”,并执行错误数据“00000001”与校正错误数据的位模式(BP)例如“00000001”的异或操作,结果得到经校正的8位数据“00000000”。同时,MPU18把经校正的数据保存到在步骤62中计算的主存储器12的地址中。用这个方法,保存在主存储器12中的列1的位置#1的原来数据被校正。当一个错误数据在步骤63中被校正时,操作返回到步骤62至步骤64。步骤64确定在一列中属于不删除的所有错误数据的校正是否已完成。
如果步骤64的回答是NO,则操作返回到步骤62。如果步骤64的回答是YES,则操作进到步骤65,其中MPU18确定8列的处理是否已被完成。如果步骤65的回答是NO,则操作返回到步骤62以处理下一列。如果步骤65的回答是YES,则操作进到步骤66,其中MPU18确定所有172列的处理是否已被完成。如果步骤66的回答是NO,则操作返回到步骤54,其中在存储器区域15中的下一个8列即列9至16的处理被开始,同时第三组8列被保存在区域14中。
对于每组8列,重复步骤54至步骤65的操作。步骤66的回答YES表示在172列中错误数据的校正已完成。如果步骤66的回答是YES,则操作在步骤67上终止。考虑属于删除一类的错误数据的校正,为校正属于图2所示编码数据的所有删除的数据所要求的至主存储器12的访问操作的数目被减小到最大N×86次,其中N是删除的最大可校正数目。如前所述在以前的处理中,至主存储器12的访问操作要求N×172次。
在所述的实施例中,虽然步骤62至65在步骤61之后执行,但步骤62至65可以在步骤54至61的处理之前进行。在本实施例中,包含主存储器12的两个字节的一个单元同时被访问,但如果主存储器12被构成能接受三字节或四字节方案的地址操作,则包含三个或四个字节的一个单元可以同时被访问。本发明由于上述理由可以减小乘积码方案的行和列方向纠错所要求的总处理时间。
4.附图简介图1示出基于乘积码方案的编码数据。
图2示出在行方向纠错之后的编码数据。
图3示出校正编码数据中错误的一个以前的系统。
图4示出在以前的系统中列方向纠错所使用的一个表。
图5示出按照本发明校正编码数据中错误的一个DVD系统。
图6示出执行行方向纠错的一个流程图。
图7示出在行方向纠错中所使用的一个表。
图8示出按照本发明执行在列方向中删除的纠错的一个流程图。
图9示出执行在列方向中不删除的纠错的一个流程图。
图10示出在图8和9中所示纠错中所使用的一个表。
图11示出在主存储器中单元的地址。
图12示出按照本发明的一个编码器/译码器。11…磁盘驱动装置12…主存储器13…缓冲存储器14、14A、15、15A…存储器区域16…编码器/译码器17…寄存器18…MPU26…错误位置/模式发生器27、28…地址指针31…行计数器32…寄存器
33…存储器34、35、36…存储器区域
权利要求
1.一种基于乘积码方案的纠错方法,其中数据以K1×K2位置的数组排列(K1是行数,K2是列数),纠错码PO被添加到所说的K2列,纠错码PI被添加到所说的K1行,一行包含的错误数据等于或小于一预定数目,把该行作为不删除处理,一行包含的错误数据大于所说的预定数目,该行作为删除处理,其特征在于改进包括下列步骤(a)取出包含所说的K2数据和所说的纠错码PI的一行,以便将所说的一行归入所说的不删除或所说的删除一类,并且如果所说的一行被归入所说的不删除一类,则根据所说的纠错码IP校正在所说的一行中所包含的错误数据;(b)重复所说的步骤(a),以处理所说的K1行;(c)取出包含所说的K1数据和所说的纠错码PO的一列,以便产生一个第一信息块,它包括指出在所说的一列中的位置的一个位置数据在该列中保存属于被归入所说的删除一类的行之数据,以及校正在所说的位置上的所说的数据的一个模式,同时产生一个第二信息块,它包括指出在所说的一列中的位置的一个位置数据在该列中保存属于被归入所说的不删除一类的行之错误数据,以及校正在所说的位置上的所说的错误数据的一个模式;(d)取出在被归入所说的删除一类的一行中至少两个相邻位置的数据以及与所说的数据有关的至少两个第一信息块,以便根据在所说的第一信息块中所包含的模式校正在至少两个相邻位置上的所说的数据;以及(e)重复所说的步骤(d),直到被归入所说的删除一类的所有行的数据被校正为止。
2.按照权利要求1的纠错方法,其特征在于,所说的步骤(a)产生被归入所说的删除一类的所说的行之指针,而所说的步骤(d)根据所说的指针产生保存在被归入所说的删除一类的一行中至少两个相邻位置的所说的数据之一个单元的地址,以及把所说的经校正的数据保存至所说的单元。
3.按照权利要求2的纠错方法,其特征在于所说的方法还包括下列步骤(f)取出一个所说的第二信息块,以及取出在由所说的第二信息块的一个位置数据所指出的一个位置上的一个错误数据,以便根据在所说的第二信息块中所包含的模式校正所说的一个错误数据;以及(g)重复所说的步骤(f),以便校正属于所说的不删除一类的错误数据。
4.按照权利要求3的纠错方法,其特征在于所说的第一信息块被保存在一个表的第一部分中,而所说的第二信息块被保存在所说的表的第二部分中,以及在被归入所说的删除一类的一行中的所说的数据的所说的第一信息块以所说的第一信息块产生的次序被顺序地保存在所说的第一部分的框中。
5.按照权利要求4的纠错方法,其特征在于,在所说的步骤(d)中与在被归入所说的删除一类的所说的一行中至少两个相邻位置的所说的数据有关的所说的第一信息块的所说的取出,通过顺序地访问在所说的表的所说的第一部分中至少两个框来完成。
6.按照权利要求5的纠错方法,其特征在于所说的步骤(c)根据所说的指针产生所说的第一信息块的所说的位置数据。
7.一种基于乘积码方案的纠错方法,其中数据以K1×K2位置的数据数组排列(K1是行数,K2是列数),纠错码PO被添加到所说的K2列,纠错码PI被添加到所说的K1行,一行包含的错误数据等于或小于一预定数目,把该行作为不删除处理,一行包含的错误数据大于所说的预定数目,该行作为删除处理,其特征在于改进包括下列步骤(a)把所说的K1×K2位置的数据数组、所说的纠错码PO和所说的纠错码PI保存在一个主存储器中;(b)从所说的主存储器读取小于所说的K1的一预定数目的所说的行,以便把它们保存在一个缓冲存储器中,(c)访问所说的缓冲存储器,取出包含所说的K2数据和所说的纠错码PI的一行,以便把所说的一行归入所说的不删除或所说的删除一类,同时如果所说的一行被归入所说的不删除一类,则根据所说的纠错码PI校正在所说的一行中所包含的错误数据;(d)如果所说的行被归入所说的删除一类,则保存所说的一行的指针(e)重复所说的步骤(b)、(c)和(d),以处理所说的K1行;(f)在所说的主存储器中产生许多单元的地址,每个地址根据所说的指针保存在被归入所说的删除一类的一行中的两个相邻数据,(g)从所说的主存储器读取小于所说的K2的所说的列的一预定数目,以便把它们保存在所说的缓冲存储器中,(h)访问所说的缓冲存储器,取出包含所说的K1数据和所说的纠错码PO的一列,以便产生一个第一信息块,它包括指出保存属于被归入所说的删除一类的行的数据的所说的一列中的位置的一个位置数据,以及校正在所说的位置上的所说的数据的一个模式,同时产生一个第二信息块,它包括指出保存属于被归入所说的不删除一类的行之错误数据的所说的一列中的位置的一个位置数据,以及校正在所说的位置上的所说的错误数据的一个模式;(i)把所说的第一信息块和所说的第二信息块保存在一个表中;(j)重复所说的步骤(g)、(h)和(i),以处理所说的列的所说的预定数目;(k)访问所说的缓冲存储器,取出在被归入所说的删除一类的一行中至少两个相邻位置的数据,访问所说的表,取出与所说的数据有关的至少两个第一信息块以及根据在所说的第一信息块中所包含的模式校正在所说的至少两个相邻位置上的所说的数据;(l)通过使用在所说的步骤(f)中所产生的所说的地址,访问在所说的主存储器中保存所说的两个数据的一个单元,以便把所说的经校正的数据保存在所说的单元中,以及(m)重复所说的步骤(k)和(l),直到被归入所说的删除一类的所有行的数据被校正为止。
8.按照权利要求7的纠错方法,其特征在于所说的方法还包括下列步骤(n)访问所说的表,取出与所说的一个错误数据有关的一个第二信息块,访问所说的缓冲存储器,取出由所说的第二信息块的一个位置数据所指出的一个位置上的一个错误数据,以便根据在所说的第二信息块中所包含的一个模式校正所说的一个错误数据;以及(o)重复所说的步骤(n),以校正属于所说的不删除一类的错误数据。
9.按照权利要求8的纠错方法,其特征在于所说的第一信息块被保存在一个表的第一部分中,而所说的第二信息块被保存在所说的表的第二部分中,以及用于在被归入所说的删除一类的一行中的所说的数据的所说的第一信息块以所说的第一信息块产生的次序被顺序地保存在所说的第一部分的框中。
10.一种基于乘积码方案的纠错系统,其中数据以K1×K2位置的数组排列(K1是行数,K2是列数),纠错码PO被添加到所说的K2列,纠错码PI被添加到所说的K1行,一行包含的错误数据等于或小于一预定数目,把该行作为不删除处理,一行包含的错误数据大于所说的预定数目,该行作为删除处理,其特征在于改进包括(a)取出包含所说的K2数据和所说的纠错码PI的一行,以便将所说的一行归入所说的不删除或所说的删除一类,并且如果所说的一行被归入所说的不删除一类,则根据所说的纠错码PI校正在所说的一行中所包含的错误数据的装置;(b)重复地操作所说的装置(a),以处理所说的K1行的装置;(c)取出包含所说的K1数据和所说的纠错码PO的一列,以便产生一个第一信息块,它包括指出保存属于被归入所说的删除一类的行之数据的所说的一列中的位置的一个位置数据,以及校正在所说的位置上的所说的数据的一个模式,同时产生一个第二信息块,它包括指出保存属于被归入所说的不删除一类的行之错误数据的所说的一列中的位置的一个位置数据,以及校正在所说的位置上的所说的错误数据的一个模式的装置;(d)取出在被归入所说的删除一类的一行中至少两个相邻位置的数据以及与所说的数据有关的至少两个第一信息块,以便根据在所说的第一信息块中所包含的模式校正在至少两个相邻位置上的所说的数据的装置;以及(e)重复地操作所说的装置(d),直到被归入所说的删除一类的所有行的数据被校正为止的装置。
11.按照权利要求10的纠错系统,其特征在于,所说的装置(a)产生被归入所说的删除一类的所说的行之指针,而所说的装置(d)根据所说的指针产生保存在被归入所说的删除一类的一行中至少两个相邻位置的所说的数据之一个单元的地址,以及把所说的经校正的数据保存至所说的单元。
12.按照权利要求11的纠错系统,其特征在于所说的系统还包括(f)取出一个所说的第二信息块,以及取出在由所说的第二信息块的一个位置数据所指出的一个位置上的一个错误数据,以便根据在所说的第二信息块中所包含的一个模式校正所说的一个错误数据的装置;以及(g)重复地操作所说的装置(f),以便校正属于所说的不删除一类的错误数据的装置。
13.按照权利要求12的纠错系统,其特征在于所说的第一信息块被保存在一个表的第一部分中,而所说的第二信息块被保存在所说的表的第二部分中,以及用于在被归入所说的删除一类的一行中的所说的数据的所说的第一信息块以所说的第一信息块产生的次序被顺序地保存在所说的第一部分的框中。
14.按照权利要求13的纠错系统,其特征在于,在所说的装置(d)中与在被归入所说的删除一类的所说的一行中至少两个相邻位置的所说的数据有关的所说的第一信息块的所说的取出,通过顺序地访问在所说的表的所说的第一部分中至少两个框来完成。
15.按照权利要求14的纠错系统,其特征在于所说的装置(c)根据所说的指针产生所说的第一信息块的所说的位置数据。
16.一种基于乘积码方案的纠错系统,其中数据以K1×K2位置的数组排列(K1是行数,K2是列数),纠错码PO被添加到所说的K2列,纠错码PI被添加到所说的K1行,一行包含的错误数据等于或小于一预定数目,把该行作为不删除处理,一行包含的错误数据大于所说的预定数目,该行作为删除处理,其特征在于改进包括(a)把所说的K1×K2位置的数据数组、所说的纠错码PO和所说的纠错码PI保存在一个主存储器中的装置,(b)从所说的主存储器读取小于所说的K1的一预定数目的所说的行,以便把它们保存在一个缓冲存储器中的装置,(c)访问所说的缓冲存储器,取出包含所说的K2数据和所说的纠错码PI的一行,以便把所说的一行归入所说的不删除或所说的删除一类,同时如果所说的一行被归入所说的不删除一类,则根据所说的纠错码PI校正在所说的一行中所包含的错误数据的装置。(d)如果所说的行被归入所说的删除一类,则保存所说的一行的指针的装置;(e)重复所说的步骤(b)、(c)和(d),以处理所说的K1行的位置。(f)在所说的主存储器中产生许多单元的地址的装置,每个地址根据所说的指针保存在被归入所说的删除一类的一行中的两个相邻数据,(g)从所说的主存储器中读取小于所说的K2的一预定数目的所说的列,以便把它们保存在所说的缓冲存储器中的装置,(h)访问所说的缓冲存储器,取出包含所说的K1数据和所说的纠错码PO的一列,以便产生一个第一信息块,它包括指出保存属于被归入所说的删除一类的行的数据的所说的一列中的位置的一个位置数据,以及校正在所说的位置上的所说的数据的一个模式,同时产生一个第二信息块,它包括指出保存属于被归入所说的不删除一类的行之错误数据的所说的一列中的位置的一个位置数据,以及校正在所说的位置上的所说的错误数据的一个模式的装置;(i)把所说的第一信息块和所说的第二信息块保存在一个表中的装置;(j)重复地操作所说的装置(g)、(h)和(i),以处理所说的列的所说的预定数目的装置;(k)访问所说的缓冲存储器,取出在被归入所说的删除一类的一行中至少两个相邻位置的数据,访问所说的表,取出与所说的数据有关的至少两个第一信息块以及根据在所说的第一信息块中所包含的模式校正在所说的至少两个相邻位置上的所说的数据的装置;(l)通过使用由所说的装置(f)所产生的所说的地址,访问在所说的主存储器中保存所说的两个数据的一个单元,以便把所说的经校正数据保存在所说的单元中的装置,以及(m)重复地操作所说的装置(k)和(l),直到被归入所说的删除一类的所有行的数据被校正为止的装置。
17.按照权利要求16的纠错系统,其特征在于所说的系统还包括(n)访问所说的表,取出与说的一个错误数据有关的一个第二信息块,访问所说的缓冲存储器,取出由所说的第二信息块的一个位置数据所指出的一个位置上的一个错误数据,以便根据在所说的第二信息块中所包含的一个模式校正所说的一个错误数据的装置;以及(o)重复地操作所说的装置(n),以校正属于所说的不删除一类的错误数据的装置。
18.按照权利要求17的纠错系统,其特征在于所说的第一信息块被保存在一个表的第一部分中,而所说的第二信息块被保存在所说的表的第二部分中,以及用于在被归入所说的删除一类的一行中的所说的数据的所说的第一信息块以所说的第一信息块产生的次序被顺序地保存在所说的第一部分的框中。
全文摘要
在乘积码方案的以前的处理方案中存在的问题是由于对主存储器1的大量存取所要求的处理时间太长。在基于乘积码方案的纠错方法中行方向纠错之后执行的列方向纠错中,在被归入删除一类的一行中至少两个相邻位置的数据以及与该数据有关的至少两个第一信息块被取出,以便根据在第一信息块中所包含的模式校正在至少两个相邻位置上的数据。
文档编号H03M13/00GK1225491SQ9910091
公开日1999年8月11日 申请日期1999年1月4日 优先权日1998年2月5日
发明者名仓宽尚, 出村雅之, 田村哲也, 田中启介 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1