纠错编码译码方法和利用这种方法的电路的制作方法

文档序号:7539851阅读:427来源:国知局
专利名称:纠错编码译码方法和利用这种方法的电路的制作方法
技术领域
本发明涉及纠错编码译码方法及其电路,特别是涉及在数据传送或数据记录等的数据发送中,对由比信息符号大的符号所构成里德-所罗门代码进行编码和译码的方法以及为实现这种方法的电路。
通常在传输数字信息时经常都要利用纠错码。例如在文献“编码理论”(今井秀树著,电子情报通信学会编,平成2年3月15日初版发行)中,揭示出各种各样的纠错编码译码方法。其中,在里德-所罗门代码以8比特作为符号进行的符号纠错方面,与计算机或数字装置的适配性很好,适用于很多传输信息和记录信息等的装置。
另一方面,快速存贮器在能写入抹除方面,作为即使设有电源时也能保存数据、而且能进行高于DRAM的高度集成化的设备受到注意,可望被作为存贮器磁盘来加以应用。但是,快速存贮器在重复进行写入和抹除时会破坏内部单元,因而存在损坏数据的可能性。因此,在将数据记录到快速存贮器的情况下,多半要采用纠错码,而在进行数据抹除时因为数据全都成为“1”,即以对此作检验来进行时抹除的确认。
一般,在于磁盘存贮器中记录数据的情况中,以512字节信息数据作为一个扇区来加以存贮。而由于存贮器中以8比特为单位进行存贮,故采用以8比特作为一个符号的里德-所罗门代码。但,在以8比特作为一个符号的里德-所罗门代码中,因为代码长一般仅只取为255,所以采用分成为多个代码字的方法。
对此,例如该代码长一般可能为1023个符号,依靠采用以1个符号为10比特的里德-所罗门代码,即利用由1个代码字的里德-所罗门代码来保护1扇区的数据的方法。


图15是表示这样的已有纠错编码译码方法中的代码结构的说明图,专门列示里德-所罗门代码(418,410)。
其中,“418”为代码符号长,“410”为信息长,可能进行4个符号的校正。在图15中,30表示压缩代码部分,31表示实际信息数据符号部分,32表示检验符号部分,36为伪符号部分。
图15所示的里德-所罗门代码原来是码长为1023个符号的代码,其中,设压缩代码部分30的605个符号为0。而如以1扇区为512字节时,即成为4096比特,在10比特/符号时,就差4比特。因此另外加进4比特的伪符号部分36,从而实际信息数据符号部分31成为410个符号,将检验符号部分32生成10字节的8个符号。
下面利用图16说明生成图15中里德-所罗门代码的检验字节的编码电路。这里像通常快速存贮器中进行处理那样数据输入以8比特为单位,检验符号输出也以8比特为单位。在图16中,22为8比特结构的信息数据输入端,19为8比特/10比特转换电路,23为GF(2E10)上的里德-所罗门代码的编码电路,26为8比特检验符号输出端,29为10比特/8比特转换电路。
下面说明图16结构的操作。编码电路23中生成里德-所罗门代码的检验符号。为此预先将编码电路23清“0”。
首先,由信息数据输入端22输入8比特的信息数据,送至8比特/10比特转换电路19。在8比特/10比特转换电路19中,如存储10比特的信息,就将该信息输入到编码电路23。
在包含图15中的伪符号部分36的4比特的实际信息数据符号部分31被全部输入到编码电路23中时,就得到8个符号(80比特)的检验符号部分32。亦即无需计算压缩代码部分30。
检验符号部分32通过10比特/8比特转换电路29从高位开始进行10比特/8比特转换,检验字节数据每次8比特由检验符号输出端26输出。亦即,10字节的数据被作为检验符号输出。
下面利用图17说明已有的译码方法,特别关于校正子计算的说明。随便说明,图17的结构是设想为快速存贮器,也含有数据抹除检验功能。在图17中,1为输入8比特接收信信号数据的数据输入端,6为GF(2E10)上的有限域(伽罗区域)加法电路,7为10比特寄存器,8为GF(2E10)上的有限域系数乘法电路,9为校正子输出端,20为检测8比特数据是否全都为“1”、亦即是否为16进制码“FF”的FF检验电路,21为抹除检测标志输出电路。
首先,作为纠错的译码,预先将寄存器7加以清O。由数据输入端1输入的接收信号数据被输入到8比特/10比特转换电路19。在此8比特/10比特转换电路19中如存放有10比特的数据的话,就将此信息在有限域加法电路5中与有限域系数乘法电路8的输出作有限域加法运算。而后将加法结果输入给寄存器7。并将寄存器7的输出发送到有限域系数乘法电路8的输入端。
在对图15中的实际信息数据符号部分31和检验符号部分32全都输入时的寄存器7状态成为校正子Sj时,由校正子输出端9输出。
此时,里德-所罗门代码的起头数据符号为“C”,即使符号单位上产生遣漏,但由于里德-所罗门代码为循环码,通过校正仍可能照所遗漏的原样译码。
另一方面,在快速存贮器中抹除数据的情况下,数据就都成为“1”,就有必要检查这一抹除过程的进行是否正常。
此时,由数据输入端1进入的8比特数据被送入FF检验电路20,如检测到1比特为“0”,即由抹除检验标志输出端21输出异常标志。
按照过去,在进行纠错时,在作为积代码结构的译码中,一经存储进存贮器之后即进行译码。图18为表示这样的情况的例子的电路方框图。图中,59为缓冲存贮器,60为校正子电路,63为求取差错位置和大小的差错位置/大小检测电路,64为校正电路,66为校正后的译码数据输出端。
在上述结构中,由数据输入端1输入的编码数据存放在缓冲存贮器59中,然后解除其交错状态作为编码序列输入到校正子电路60。根据这样得到的校正子信号由差错位置/大小检测电路63求取差错位置及其大小,校正电路64读出缓冲存贮器59中所存在的差错位置的数据,进行差错校正后写入缓冲存贮器59。在积代码等中,重复进行多次这种译码操作,在全部译码后由译码数据输出端65输出。
在以一个缓冲存贮器进行上述这样的操作时,必须分时进行接收信号数据的输入、向校正子电路的输出、差错位置的数据的输入输出、校正后的数据的输出等。特别是在进行积代码等的多次重复译码时,就有必要采用能作高速存取的缓冲存贮器。
而为保证存贮器等的可靠性,最好采用一比特纠错、二比特差错检测代码。(72、64)二进制的线性代码为其典型示例。这里“72”为比特符号长,“64”为比特信息长。亦即,检验比特为8比特。
这样的代码的译码电路,往往对全部代码比特数据作并行处理译码,而且多半带有用于检测差错的电路。对于这样的代码,例如在文献“容错系统论”(当麻喜弘编著,电子情报通信学会,平成2年6月10日初版发行)中有介绍。
图19为表示历来的(72、64)二进制线性代码的译码电路示例电路方框图。图中,66为由校正子电路60输入信号的8输入“或”电路,67为由差错位置/大小检测电路63输入信号的72比特输入“或非”电路,68为接收8输入“或”电路66和72比特输入“或非”电路67的输出的2输入”与”电路,49为由2输入“与”电路68输出不可校正检测标志的不可校正检测标志输出端。
在上述这样的结构中进行存贮器的纠错时,因为数据母线为并行结构,所以72比特的代码数据被一次输入到校正子电路60。在校正子电路60中从接收信号数据生成8比特的校正子信息加以输出。差错位置/大小检测电路63检验包含由奇偶检测阵列确定的检验比特的各比特位置的8比特的格式与校正子信息是否一致。其结果被送到72比特输入“或非”电路67和校正电路64。此时,将信息部分的64比特送至校正电路64。在校正电路64中对接收到各信息比特和各比特的差错检测结果分别进行“异或”逻辑运算,其结果由译码数据输出端65输出。
由此代码进行针对二比特差错的纠错。这在校正子信息非“0”、且与72比特的码长的奇偶检验阵列的格式不相等时,就成为不可校正差错检测。8输入“或”电路66检验校正子信息的8比特为非“0”,72比特输入或“非”电路67检验1比特为无差错,在2输入“与”电路68中取二检验结果的逻辑积从不可校正检测标志输出端49输出。
有关上述这样的结构及作用,例如在日本专利公开昭53-5099(D.W.ブライス、1972.11.8.申请)中曾有说明。
已有的纠错编码译码方法由于为上述那样构成,遗留有下述的各种问题。
第一个问题是,对于8比特的输入输出数据,例如在采用1符号10比特的里德-所罗门代码时,必须有8比特/10比特转换电路和10比特/8比特转换电路,符号时钟也就必须产生8比特用和10比特用,因而必须有比特时钟。
第二个问题是,为进行快速存贮器的抹除的检测,必须要有检测全部为“1”的特殊电路。
第三个问题是,即使里德-所罗门代码在符号单位上产生遗漏,由于里德-所罗门代码的循环码,所以有可能通过校正进行遗漏的按原样的译码。
第三四问题是,在将编码数据存入存贮器的情况下,由于存贮器对接收数据的输入、译码电路的输入输出、译码结果的输出进行分时存取,在要作多次译码时就必须有高速存取的存贮器。
第五个问题是,在存贮器纠错中用的(72、64)二进制线性代码中,为输出不可纠错标志,必须要有对72比特的1比特差错检测和对其结果进行逻辑运算的电路,为此必然会带来很大的时间延时,同时还必须有用作逻辑运算的多个门数量的电路。
本发明的目的即为解决上述这样的已有技术中的问题,依靠仅只处理8比特符号同时能省去冗长的电路,来提供一种结构简单的能进行纠错和编码译码而且可靠性良好的纠错码编码方法及其电路。
为达到上述目的,根据本发明的一种纠错编码/译码方法,用于对模元数比信息符号类数多的有限域中由“大符号”组成的里德-所罗门代码(以下简称RS码)进行编码和译码,其特征在于,它包括下列步骤传送步骤,将伪数据放在RS码的由超出所述信息符号位长度的“大符号”组成的部分,进行编码,编码之后只传送此伪数据除去之后剩下的位数据;加入步骤,在译码侧,将伪数据作为不足以形成所述RS的符号的位数据先加入信息部分的符号中;传送步骤,传送检验符号时,无须修正就传送所述“大符号”中与信息符号位长度相应的部分;传送步骤,传送检验符号时,RS码由超出所述信息符号长度的“大符号”组成的部分在所述超出部分从多个信息符号收集、且分组成相当于所述信息符号位长的位长并传送之后一起传送;进行译码时,加上虚拟位,并无须修正对检验符号对应于先传送的所述“大符号”中信息符号位长度的部分进行校正子计算,并根据检验位数据对所述在超出后来传送的所述“大符号”中所述信息符号的位长度的部分中一起传送的数据进行校正子计算;根据先得出的信息和检验符号对所述校正子的计算结果求出有限域之和,并根据超出后来传送的所述信息符号的位长度的数据对所述校正子的计算结果求出有限域之和。
根据本发明的一种RS码编码电路,所述RS码由信息数据符号组成的“大符号”构成,所述电路的特征在于,它包括加法器和输出器,加法器将伪数据加入信息符号中,输出器选择并输出检验符号对应于信息符号位长度的部分和检验符号超出分组成相当于信息符号位长度的位长度的位长度部分,作为检验符号数据。
根据本发明的一种RS码译码电路,所述RS码由信息数据符号组成的“大符号”构成,所述电路的特征在于,它包括加法器、校正器和求和器,加法器将伪数据加入信息符号和检验符号对应于信息符号位长的部分中,校正器对检验符号超出信息符号位长度的部分进行校正子计算,求和器对先得出的信息符号检验位组中信息符号位长度相应的所述部分的校正子和所述校正器得出的校正子求出有限域之和。
根据本发明的由信息数据符号组成的“大符号”构成的RS码的纠错译码方法,其特征在于,它包括下列步骤对检验符号超出信息符号位长度的部分作为删除部分进行处理,并对此部分进行删除校正;和在对应于所述进行所述删除校正时得出的删除部分的错误码形只出现在超出所述删除部分中信息符号位长度的部分时,确定在对应于所述信息符号位长度的部分中没有出现误差。
根据本发明的纠错编码/译码由信息数据符号组成的“大符号”构成的RS码的方法,其特征在于,它包括下列步骤传送对应于检验符号超过信息符号位长度的各部分的多个部分;和在译码侧,根据所述多个相对于各部分超出信息符号位长度的检验符号相应的各部分传送的数据进行多数判定,由此对信息符号译码。
根据本发明的纠错编码/译码由信息数据符号组成的“大符号”构成的RS码的方法,其特征在于,它包括下列步骤用各检验位为信息数据符号长度的整数位的任意纠错码对各部分超出信息符号位长度的检验符号的各部分进行编码;和在译码侧,通过相对于各部分超出信息符号位长度的检验符号相应的各部分对所述任意纠错码进行译码来对信息符号进行译码。
根据本发明的一种编码电路,其特征在于,它包括一个有限域求和电路,在编码过程中将通过根据原先取得的伪码形输入的信息和检验符号得出的有限域求和结果作为经编码的检验符号;和校正数据输入器,输入经校正的数据。
根据本发明的一种译码电路,其特征在于,它包括一个有限域求和电路和一个校正数据输入器,有限域求和电路在译码的过程中取代码数据已传送的校正子数据和基于原先获得的伪码形的校正子数据的有限域求和结果作为经编码的校正子数据,校正数据输入器则输入经校正的数据。
为达到上述目的,根据本发明的纠错编码译码方法,当进行纠错代码的编码和译码时,将信息和检验字节全部作0/1反相后送出,在译码时将所读出的数据由0/1反相后进行译码的处理。
为达到上述目的,根据本发明的纠错编码译码方法中提出,在压缩码长后的纠错代码的编码和译码中具有以使信息和检验符号全都成为“1”的数据作为代码那样,在压缩部分增加数据格式来生成检验符号,并仅只发送信息和检验符号的处理;和在译码侧,将相当于压缩部分的数据的校正子数据增加到由信息和检验符号生成的校正子数据增加到由信息和检验符号生成的校正子信息上的处理。
为达到上述目的,根据本发明的纠错编码译码方法中提出,在压缩码长的纠错代码的编码和译码中具有在信息的一符号前的压缩部分增加该代码的固有数据格式生成检验符号,仅只发送信息和检验符号的处理;和在译码侧,将相当于增加在压缩部分的代码固有数据格式的校正子信息加到由信息和检验符号所生成的校正子信息上的处理。
为达到上述目的,根据本发明的纠错译码电路中提出,在将接收到的经纠错编码的数据由输入单元存入缓冲存贮器并按前述纠错代码进行多次译码操作的译码电路中设置有将经纠错编码的数据存入缓冲存贮器并进行多次译码操作的过程,对输入数据进行校正子计算同时对缓冲存贮器的数据进行校正子计算的校正子计算手段;和选择二个校正子信息同时作差错校正进行译码的手段。
为达到上述目的,根据本发明的纠错编码译码方法中提出,在纠错编码和译码中,具有在进行1比特纠错、2比特差错检测的(76、64)二进制线性编码中,仅以“1”、”3”、“7”来处理奇偶检验阵列加权的过程。
在上述方法中,根据本发明的纠错编码译码方法,例如以8比特信息作为1个符号,对于由比其大的符号构成的里德-所罗门代码,不足的比特给于伪数据,作成1个符号,由此生成的里德-所罗门代码的检验符号以与信息相同的8比特连续在信息符号上进行发送,剩余的检验符号的比特由后面汇总加以发送,在译码中,在8比特的信息符号和8比特的检验符号上增加伪比特后进行校正子计算,对后续的剩余部分汇集得的检验符号的比特数据进行校正计算。
在上述方法中,根据本发明的纠错编码译码方法,例如在将信息和检验符号全部反相后存入快速存贮器等中,在读出时将其全部反相加以译码,由此即可能实现以快速存贮器的抹除状态的全“1”来作为全“0”的编码数据。
在上述方法中,根据本发明权利要求9中记述的纠错编码译码方法,以压缩部分中的信息和检验字节全部作为“1”的编码来设定伪信息,在译码侧,将相当于压缩部分数据的校正子数据附加到由信息和检验符号生成的校正子信息上来进行译码。
在上述方法中,根据本发明的纠错编码译码方法,在压缩部分的起头加以该代码的固有数据,编码中根据该固有数据生成检验符号,仅发送信息和检验符号,而在译码中将相当于固有数据格式的校正子信息附加到由信息和检验符号生成的校正子信息上来进行译码。
在上述方法中,根据本发明的纠错译码电路,选择对应于输入数据的校正子信息和对应于缓冲存贮器的数据的校正子信息,根据这些进行纠错和译码,由此来减少缓冲存贮器的存取次数从而有可能使缓冲存贮器低速化。
上述方法中,根据本发明的纠错编码译码方法,在纠错编码和译码中进行1比特纠错、2比特检测误差的(76、60)二进制线性编码中,以“ 1”、“3”、“7”来构成奇偶检验阵列的加权,在检测不可纠正差错时,求取校正子信息的加权,根据此加权值进行不可纠正差错检测。
图1为用于实现本发明实施例1的纠错编码译码方法的电路方框图;图2为用于实现本发明实施例2的纠错编码译码方法的电路方框图;图3为本发明实施例3的纠错编码译码方法中的译码电路的第一例电路方框图;图4为本发明实施例3的纠错编码译码方法中的译码电路的第二例电路方框图;图5为本发明实施例4纠错编码译码方法中的进行同步判断的电路方框图;图6为本发明实施例3的纠错编码译码方法中,对应于图8中所示的代码结构的编码电路的电路方框图;图7为说明本发明实施例3的纠错编码译码方法中的编码电路的其他示例的方框图;图8为在实行本发明实施例3时的(520、512)里德-所罗门代码的构成法的说明图;图9为在实行本发明实施例4时的代码的构成法的说明图;图10为表明图1结构中的校正子数据校正电路的第一例的电路方框图;图11为表明图1结构中的校正子数据校正电路的第二例的电路方框图12为用于实现本发明实施例6的纠错编码译码方法的电路方框图;图13为用于实现本发明实施例7的纠错编码译码方法的电路方框图;图14为表明图13的偶数和加权”5”检测电路的示例电路方框图;图15为历来的纠错编码译码方法中的代码的结构示例的说明图;图16为生成图15的里德-所罗门代码的检验字节的编码电路的电路方框图;图17为历来的纠错编码译码方法中的译码电路的电路方框图;图18为历来的纠错编码译码方法中进行积代码结构的译码的电路的电路方框图;和图19为历来的纠错编码译码方法中,(72、64)二进制线性代码的译码电路的电路方框图。
图1为实现本发明实施例1的纠错纺码译码方法的电路方框图,特别表示直到压缩1符号10比特的(1023,1015)里德-所罗门代码的(520,512)里德-所罗门代码的编码出差运算的译码电路。
图中,2为输入作为1符号中剩余比特的2比特伪数据(例如,“00”)的伪数据输入电路,3为根据检验符号的超过部分(2比特×8符号)生成校正子数据的校正子数据校正电路,4为选择输出10比特的2个数据的选择器,5为已有的GF(2E10)上的有限域加法电路,7为10比特寄存器,8为GF(2E10)上有限域系数乘法电路,6为选择10比特的二个数据的选择器,9为校正子信息输出端,10为被连接到数据输入端1的0/1反相电路。
顺便提出,此实施例1解决前述的第一个和第二个问题。
现在按上述那样的结构,对其操作加以说明。
在图1的结构中,编码数据全部以0/1反相状态被记录。亦即,由数据输入端1输入的编码数据为以8比特的单位反相后的数据。此数据在0/1反相电路10中被加以反相。亦即,在记录数据的全部比特为“1”的情况时,代码反相全部成为“0”。因而在快速存贮器的抹除中,由于抹除数据全部成为“1”,作为0/1反相电路10的输出就可能成为全部为“0”的代码的校正子检测。
亦就是第二个问题的解决。
下面说明对应于第一个问题的操作。
首先,早先被发送的512字节信息,对作为剩余比特的2比特例如作为“0”加以编码,而在接收信号方也由伪数据输入电路2增加伪数据(例如“0”),作为10比特的符号通过选择器4被输入给有限域加法电路5。
有限域加法电路5的另一个输入是从初始值作为“0”的寄存器7输出,通过有限域系数乘法电路8,经由选择器6输出的数据。此电路系统进行与历来的校正子电路同样的运算。
接着,输入8个符号检验字节,这仅对与信息符号相同的8比特数据加以输入,与信息符号同样,由伪数据输入电路2增加伪数据(例如“0”)作为10比特的符号由选择器4被输入到有限域加法电路5,与先前的信息符号同样地被进行校正子计算。
最后,作为代码序列,各检验符号中的多余比特2比特被汇集在8比特单位,作为8比特数据输入2个符号。此数据被输入到校正子数据校正电路3,成为a4j(d7a3j+d6a2j+d5aj+d4)+(d3a3j+d2a2j+d1aj+d0),进行GF(210)的有限域系数乘法和加法运算。这里,di为以16进制表示的000(HEX)、100(HEX)、200(HEX)、300(HEX)中的一个。由此得到的校正数据与到前一检验符号为止的校正子数据在有限域加法电路5中相加。顺便指出,前一检验符号为寄存器7送出的通过选择器4经由选择器6输出的符号。然后,有限域加法电路5的加法结果再次被存贮到寄存器7中。而且,它作为校正子数据Sj由校正子输出端9输出。
现在根据图10的电路方框说明校正子数据校正电路3的结构的第一例子。图中,37为8比特接收信号数据输入端,38~40为GF(210)上的有限域系数乘法电路,41~44为GF(210)上的有限域加法电路,45为10比特寄存器,46为GF(210)上的有限域系数乘法电路,47为校正数据输出端。
在以上这样的结构中的操作说明如下。
在此例中,针对8比特的输入,4个符号的检验符号的高位2比特被一次输入,这包含2个符号。以8比特由接收信号数据输入端37输入的符号,对此,被分别输入到具有检验符号的次数依次从高起的a3j、a2j、aj的系数的有限域系数乘法电路38~40,将其结果在有限域加法电路41~43进行加法计算。
这些,由于仅高位2比特成为“1”,所以关系到低位8比特的逻辑电路可省略,从而能实现较小规模的电路。
有限域加法电路43的结果被输入到有限域加法电路44,与有限域系数乘法电路46的输出相加,再被输入到寄存器45。寄存器45使初始值为”0”,将其输出输入到有限域系数乘法电路46。有限域系数乘法电路46能完成与图1中的有限域系数乘法电路8相同的职能,但进行有限域系数乘法电路8的4倍的系数乘法运算。这是因为在8比特的数据上被分配以4个符号的检验字节的高位2比特。下一检验符号的高位2比特数据也被作同样处理后,存贮进寄存器45中。经过上述这样的处理,即完成校正数据的计算。
下面根据图11的电路方框图说明对校正子数据校正电路3的结构第二示例。图11的结构为从图10中所示结构去除寄存器45和有限域加法电路44、另外加入选择器48形成的。
下面说明上述这种结构的操作。
图11结构中直到有限域加法电路43为止的操作与图10的情况是同样的。
另一方面,对早先输入的符号所得到的有限域加法电路43的输出,通过有限域系数乘法电路46,经由选择器48,由校正数据输出端47输出。
此结果通过图1的选择器4,与经由选择器6输出的寄存器7的输出结果,在有限域加法电路5中相加,存入寄存器7。而后,由下一8比特符号数据所得的有限域加法电路43的输出,按原样通过选择器48,进行与前面符号同样的操作,由此来得到校正子信息。
图2为实现本发明实施例2纠错编码译码方法的电路方框图,特别谋求解决第二个问题。
实施例1中因为是将代码数据反相后记录的,因而存在有无法区别是信息全部为“0”的代码、还是抹除后全都成为“1”的情况的问题,图2的结构即为解决这一问题。
图2中,11为对应于8比特的2输入数据的选择器,选择是通过0/1反相电路10取入还是直接取入由数据输入端1来的输入。
上述这样的结构,通常情况下通过选择器11对数据输入端1来的接收信号数据进行直接取入校正子计算,只有在快速存贮器的抹除检验时才由选择器11选择取出通过0/1反相电路10输入的数据进行校正子计算。
而且这里通常的编码数据不进行0/1反相即加以存贮。
不过,此实施例2示例表明的是对0/1反相电路10和选择器11分开控制的结构,但两者加以组合的功能亦可利用”异或”电路来实现是大家所熟知的。
上述实施例1和2中,说明的是针对第二个问题采用0/1反相电路来检验快速存贮器的抹除、亦即全“1”的状态的方法,但在第三实施例中提出的是,通过仅对校正子选择器7设定初始值来进行快速存贮器的抹除的检验的方法。此实施例3针对第三个问题提出,即使发生符号单位的遗漏也能对之进行检测的方法。
图8表示实现此实施例3时的(520、512)里德-所罗门代码的组成方式。应看到的是,图8的代码组成也能运用于解决实施例1中的第一问题。
图8中,30为压缩代码部分,31为实际信息数据符号部分,32为检验符号部分,33为在信息和检验符号全为“1”时作成编码所插入的伪符号,34为将10比特检验符号中的各高位2比特汇集附加到代码序列后的附加检验符号。
以10比特作为1个符号的里德-所罗门代码,通常可取到1023个符号的代码长。因而与图15的已有例不同,将快速存贮器的存贮单位的8比特实际信息数据符号部分31作为1个符号,在高位2比特处插入作为伪数据的例如“0”。由此就可不必进行8比特/10比特转换。
由此信息符号生成的检验符号部分32,为每1符号10比特,不保证高位2比特为固定数据。因而,仅将低位8比特连续地配置到8比特信息符号,高位2比特汇集成8比特单位,在作为检验字节的检验符号部分32之后,作为剩余符号配置以2个符号的附加检验符号34。这些操作可作为符号时钟处理,全部操作就可能作为符号时钟。
下面按照图8说明成为解决第二、第三问题的策略的代码结构。例如,作为1个符号10比特的(1023、1015)里德-所罗门代码的示例,其原始多项式为P(X)=X10+X3+1生成多项式为G(X)=Πj=SOS515(X-aj)]]>其中
aj=β491β为P(X)的原始元。在这一情况下,将伪数据的起始部分作为0号,亦就是说实际信息符号部分31的起头作为503号,而作为压缩编码部分30的符号部分中伪符号33,在278号位置设定19D(HEX)、454号设置OAB(HEX),这样在图8中的实际信息数据符号部分31全为“1”、信息符号的高位2比特部分作为“0”的情况下,检验符号部分32的8比特就全部成为“1”。亦即,可能将成为快速存贮器的抹除状态的全部为“1”的状态看作为图8中的(520,512)里德-所罗门代码的代码。
下面说明图8中所示的代码结构中的编码电路。
图6为表明对应于图8中的代码结构的编码电路的构成例的电路方框图。图中,22为8比特信息数据输入端,2为信息符号的高位2比特的伪数据输入电路,23为(例如)可设置线性反馈移位寄存器型式的初始值的GF(210)上的编码电路,24为进行编码电路23的寄存器的初始值设定的编码电路初始值数据设定电路,25为将检验符号的低位8比特或集中高位2比特成为8比特符号作为输出而进行选择的选择器,26为输出检验字节数据的检验符号输出端。
由图可清楚看到,此电路结构在运算量、电路规模上基本与现有的编码电路无大变化。
下面说明上述这样结构的操作。
首先,在8比特信息数据进入信息数据输入端22之前,输入图8中的伪符号33,由编码电路23进行计算。然后,由于伪符号33为固定值,所以在随后接着的信息数据被输入之前的编码电路中的状态可以预先计算。例如,将编码电路23作成在输入历来所采用那样的信息符号时得到检测符号的线性反馈寄存器型式,将检验符号看作是多项式次数的系数,如由高次起看该计算过程中成为的寄存器状态,即成为174(HEX)、OB6(HEX)、105(HEX)、OEA(HEX)、26B(HEX)、260(HEX)、18F(HEX)、OD7(HEX)。因此就可以将此计算结果作为初始值,由编码电路初始值数据设定电路24加给编码电路23的寄存器。因而,用于赋于这样的初始值的结构,例如就可采用像在触发器电路的置位端和复位端直接地设定数据那样的结构来实现。
接着,由信息数据输入端22输入的8比特信息数据,被2比特伪数据输入电路2,增加2比特的例如“0”成为10比特的符号数据形式,输入给编码电路23。然后,在512个符号的8比特信息数据输入结束时,编码电路23中就得到8个符号的检验符号。其中该符号为1符号成为10比特的符号。为此,首先是各检验符号的低位8比特通过选择器25后由检验符号输出端26输出,然后将各检验符号的高位2比特汇集成8比特的单位通过选择器25后由检验符号输出端26输出。因此就有可能以8比特的信息数据的符号时钟来处理全部的数据。
下面说明针对第二、第三问题的解决策略。图7为用于此的结构示例,27为由8比特“异或”门构成的有限域加法电路,28为给有限域加法电路27加以校正数据的检验符号校正数据设定电路。如由图中可看到的,这一电路在选择电路25的输出之前的结构与图6的结构大致相同。不过,没有用于设定初始值的电路,编码电路23在输入信息数据之前被清“0”。
下面说明上述这样结构中的操作。
在图7的结构中除将编码电路23的初始值设定为“0”外,基本上与图6的结构作同样操作。而对于被作为固定值所给予的伪符号则作下面这样的处理。即就是,因为里德-所罗门代码为线性代码,所以对于由初始设定值“0”得到的检验符号,也可由检验符号校正数据设定电路28通过有限域加法电路27来对图8中的伪符号33的检验符号作有限域加法计算。在此,针对伪符号33的检验符号,由高次开始看即成为04A(HEX)、016(HEX)、3AF(HEX)、294(HEX)、125(HEX)、09F(HEX)、02B(HEX)、274(HEX)、由于选择器25每次输出8比特,检验符号校正数据设定电路28的输出,由高次开始看也就成为4A(HEX)、15(HEX)、AF(HEX)、94(HEX)、25(HEX)、9F(HEX)、2B(HEX)、74(HEX)、OE(HEX)、42(HEX)。然后,在选择器25的输出上由有限域加法电路27将检验符号校正数据设定电路28的输出作有限域相加,再由检验符号输出端26输出。
下面说明该实施例3中的译码电路示例。本发明的译码中,因为在校正子计算上有其特点,所以与实施例1同样对校正子电路部分加以说明。
图3为运用于实施例3的译码电路方框图,与图1结构的不同之点是,没有0/1反相电路10,而代之的是在结构上增加校正子初始数据设定手段12。
下面说明上述这样结构的操作。
以8比特为单位接收的接收信号数据中,因为不存在图8中所输入的伪符号33,所以与图6的编码电路中操作相同,预先计算出对应于紧接在寄存器7被输入信息数据之前的伪信号33的校正子计算的中间结果,当将其设定在校正子初始数据设定手段12中。此时,例如,在与先前例中所示相同的参数中,校正子信息S0~S7被设定为S0=09C(HEX),S1=1FB(HEX),S2=026(HEX),S2=10F(HEX),S4=145(HEX),S5=343(HEX),S6=248(HEX),S7=102(HEX)。
其后的操作与实施例1中的结构,仅仅没有0/1反相电路10,是同样的。
下面与图7中说明的编码电路同样地说明在求得对信息数据的校正子信息后在图8中的伪符号33的校正子数据中进行的校正方法。图4是表示用于此目的的电路结构的电路方框图,取代图6中的校正子初始数据设定手段12,设置以校正子校正数据设定电路14。而13为进行GF(210)上的有限域加法运算的有限域加法电路13,由“异或”门构成。
图4结构的操作,除校正子电路部分的寄存器7数初始值数据设定会成为“0”外,进行与图6的结构同样的运算。
在接收信号数据完全被输入、得到校正子信息并由校正子信息输出端9输出时,将校正子校正数据设定电路14发出的各个图8中的伪数据的校正子数值在有限域加法电路13中与接收信号数据中的校正子信息相加。此校正数据,例如,对先前示例中的参数中的校正子信息S0~S7,分别设定为S0=193(HEX),S1=2AE(HEX),S2=2E4(HEX),S3=OD7(HEX),S4=34D(HEX),S5=17B(HEX),S6=OCD(HEX),S7=23A(HEX)。
而作为解决第二、第三问题的对策,本发明中由于进行对伪符号33的初始值的设定,除全部为第一状态的数据外,即使接收信号数据以符号单位发生遗漏,由于已将伪数据部分看作为差错,所以提高能够检测出遗漏的准确度。
而且与实施例2相同地,能够仅在快速存贮器抹除时将校正子初始数据设定手段12或校正子校正数据设定电路14作为有关图8中的伪符号33的校正子数据,通常也可以设定为“0”。
在此实施例中,在使用10比特符号的里德-所罗门代码的第一个问题的解决策略上已涉及到第二、第三个问题,但在例如8比特符号的里德-所罗门代码的压缩代码等方面,此实施例同样也能实现解决第二、第三个问题的策略。
下面对本发明实施例4的纠错编码译码方法加以说明。图9为实现本实施例的代码结构示例,是特别对图8所作的改进。图9中,35表示信息数据邻近的压缩代码的代码原始数据插入符号部分。
本实施例虽与实施例3中所示的解决第二、第三问题的相类似,但更加强了解决第三问题的策略。
下面对图9进行说明。在代码原始数据插入符号部分35的部分中,与图8同样地,设定除“0”外的该代码固有的格式。例如,由K段交错构成的里德-所罗门代码的结构中,在各段中设定由“1”到“K”的数值。
此方法中的编码方法和译码方法由实施例3中所说明的图6、图7、图3、图4的电路结构实现。
下面对图9的编码结构中的同步判定方法进行说明。图5为实现其的结构示例电路方框图。在图5的结构中,在校正子信息输出端9之前的系统,与图3中结构相同。另一方面,15为求取差错位置、差错数值的差错位置/大小检测电路,16为检查是否同步的同步判定电路,17为输出差错的位置和大小的差错位置/大小输出端,18为送出由同步判定电路16输出的同步检验标志的同步检验标志输出端。
下面说明上述这样结构中的操作。
初始值数据认为是分别设定的所接收信号代码的所期望的原始数据。根据由此得到的校正子信息输出端9输出的校正子信息,在差错位置/大小检测电路15中求取差错位置多项式和差错数值多项式,采用链式检索来求得差错位置和差错大小。在此,虽然一般是进行接收到的里德-所罗门代码的代码长部分的链式检索,但在本实施例中,对含有插入代码原始数据插入符号部分35的压缩部分的压缩代码部分30也进行检测。此时,在能加以正确校正的情况下,压缩代码长-1的“0”符号运行相连续,并相继出现代码原始数据插入符号部分35。由同步判定电路16监测此起头的插入数据的状态,如果认为是同步的,即由同步检验标志输出端18输出标志。另一方面,由差错位置/大小输出端17输出包含着同步偏差信息的差错位置和大小。
如这样,依靠在压缩部分的“0”运行和填入压缩部分的起头的原始数据,就能不增加代码长而对符号单位的遗漏进行检测和加以恢复。
而在实现本实施例的方法中,由于能几乎按原样使用实施例3中说明的编码电路和译码电路,所以例如在快速存贮器的抹除中采用实施例3的方法,在通常情况下也就可能采取本实施4的方法。
下面说明本发明实施例5的纠错编码译码方法。本实施例对到目前为止所说明的实施例中,特别是对于第一问题的解决策略,提出不完备部分的解决策略。
到此为止已说明的实施例,例如在图8、图9那样的代码结构的译码中,在进行判定信息符号位置上的高位2比特伪数据部分中具有差错时,存在着不可能校正的差错。
对此,在图8、图9中,后面附加的附加检验符号34如果使1个符号全部发生错误,例如就可能扩散为作为里德-所罗门代码的4个符号的差错,但由于整体上附加的符号数量少,所以准确性也就小。而在出现错误时检测出不可能校正的情况下,以此附加的符号消失来进行消失校正,如此消失位置的差错的大小仅出现在检验符号的高位2比特中,也可以判断为信息符号中无差错。亦即,可能按差错的大小检测差错。
而对于将后面附加的高位2比特汇集的符号,也可作为多数次发送信号或多数个符号记录,而在译码侧作多次译码的方法。
而作为将后面附加的高位2比特汇集后的符号的信息,也有以处于传输形式的例如8比特符号的里德-所罗门代码或4比特符号的里德-所罗门代码等的第二纠错代码进行编码,在增加其检验数据后进行发送或记录,在译码侧对将后面附加的高位2比特汇集后的符号,以第二纠错代码加以译码后对信息符号进行译码的方法。
下面对本发明的实施例6加以说明。图12为实现本发明实施例6的纠错编码译码方法的电路的电路方框图,是特别针对解决第四问题所用结构的示例。图中,61为用于输入接收数据的数据输入端1所输入的代码序列的校正子电路,62为选择对应于缓冲存贮器59来的数据的校正子电路60的数据和对应于从数据输入端1来的数据的校正子电路61的数据并输入给差错位置/大小检测电路63的选择器。至于其他结构,均与图18的结构相同。
下面说这样构成的操作。
由数据输入端1输入的代码序列在被存入缓冲存贮器59的同时,被输入至校正子电路61。校正子电路60对除紧接着接收的代码序列以外的代码序列进行校正子计算。
选择器62分时选择校正子电路60、61各自的数据后,输入到差错位置/大小检测电路63。在差错位置/大小检测电路63中,按照所输入的校正子信息求取差错位置和差错的大小,传送至校正电路64。校正电路64由缓冲存贮器59中所存放的数据中取入相当于该差错位置的数据,进行差错校正再送回缓冲存贮留59。
由此,缓冲存贮器59和校正子电路60的数据存取,减少了输入代码长度,因而即使缓冲存贮器59的存取速度较慢亦能适应,而可以使例如历来以昂贵的SRAM组成的缓冲存贮器59,成为廉价的DRAM。
下面说明本发明的实施例7。图13为实现本发明实施例7的纠错编码译码方法的电路的电路方框图,是特别为解决第五问题的结构示例。图中,51为由校正子电路60输出的8比特校正子信号,50为由校正子信号51检测偶数和加权“5”的偶数和加权“5”检测电路,52为在偶数和加权“5”检测电路50检测偶数和加权“5”时输出信号“1”的偶数和加权“5”检测信号线,至于其他构成,除72比特输入“或非”电路67外,与图19的结构相同。
作为以1比特纠错2比特进行检测的代码构成法有,由奇偶校验阵列各自不同的奇数加权的比特序列来构成的方法。这在前面举出的文献中也有介绍。在(72、64)二进制线性代码中,奇偶校验阵列为8比特,但进行各自的奇数加数状态的组合则成为如下状态。
加权1=8加权3=56
加权5=58加权7=8。
而现有是选择加权“1”、“3”、“5”的状态,构成(72、64)代码,但在本实施例中则取加权“1”、“3”、“7”来构成代码。这时,例如说奇偶校验阵列即使成为H=111111111111111111110111111000001000100000000000000000000010000000000000111101001110111010001000000111110110010010001000100010000001100010001000111010110001110011101000000110000001001111110110010001000000001010001000100010101000111110011100100011110001001001000001111100001000000101000100110010001100100011001111000101001001000100101001001011110100100000100100110110011000010010001000111000101110001000010100000111111000010000011100010010001010110110101010010000010100110111001111000100100100010001000010110011001001110000011001001000000010110000110010111000011100110011000001]]>也可能成为1比特纠错2比特的差错检测。由此,在校正子计算中,与现有的最小结构相比也不改变延迟段数,虽然增加16个“异或”电路,但因为由校正子数据直接得到不可校正的检测结果,总体来说是以较少的电路数量的结构而能实现高速且简单的差错检测。
现按照上述观点说明图13的操作。
在此实施例的代码结构中,由于奇偶校验阵列中采用作为奇数加权的“1”、“3”、“7”的完全格式,故可以检测出除不符合的校正子格式,亦即除“0”以外的偶数加权格式和加权“5”的格式。而由于校正子的“0”检测是由8输入“或”电路66进行检测、并由2输入“与”电路68使得不可校正标志不为“1”,所以亦可以由偶数和加权“5”检测电路50检测偶数和加权“5”。
图14为表明偶数和加权“5”检测电路50的详细结构的电路方框图。图中,53为2输入“异或”电路,54为2输入“与”电路,55为2输入“或”电路,56为2输入“异或非”电路。
如由图中可理解的,现有技术虽然必须是71个2输入“或”电路或“或非”电路,而本实施例的结构却可能以极小的电路规模来实现同样的功能。
这里虽然是针对(72、64)二进制线性代码所作的说明,但对于其他奇偶长度的代码也同样适用,这是不言而喻的。
本发明的纠错代码译码方法由于作成以上这样的结构,所以能取得下述的种种效果。
本发明对于第一个问题,在以比信息符号还大的比特长作为符号的里德-所罗门代码的代码中,以信息比特的高位部分作为伪数据,而对检验符号的高位二比特由后面增加这样来构成,所以不进行符号变换,并由于能仅以符号时钟进行编码译码,所以取得能高速处理的效果。
本发明对于第二个问题,由于依靠代码序列的反相或向压缩部分设定伪数据,而能采用纠错电路来实现快速存贮器的抹除检验,所以不要专门用于检验的电路,从而有取得简化电路结构的效果。
本发明对于第三个问题,由于在压缩部分重叠以代码原始数据,以此来插入同步数据,所以具有不增加信息长或数据长,而能进行同步检验或恢复的效果。
本发明对第四个问题,由于设置有对应输入数据的校正子电路,可由选择器对现有的校正子电路选择地进行译码,所以与现有技术相比,可以使缓冲存贮器的存贮速度降低,从而具有适宜采用廉价存贮器的效果。
本发明对于第五个问题,在8比特的校正子信息长中,对于加权“1”、“3”、“7”的完全格式作对应的1比特纠错,所以可能仅仅从校正子信息中直接检测出除“0”以外的偶数和加权“5”来检测不可校正的情况,从而其有能够以较现有高的速度的小型电路来进行差错检测。
权利要求
1.一种纠错编码/译码方法,用于对编码长度经过压缩的纠错码进行编码和译码,其特征在于,该方法包括下列步骤往所述压缩部分中加入数据码形,产生检验符号,从而使信息和检验符号全为“1”的数据为代码,并只传送所述信息和检验符号;和在译码侧,往所述信息和检验符号所产生的校正子加入所述压缩部分中数据相应的校正子数据。
2.一种纠错编码/译码方法,用于对编码长度经过压缩的纠错码进行编码和译码,其特征在于,该方法包括下列步骤往信息符号紧接前面的压缩部分加入代码数据码形,从而产生检验符号,并只传送所述信息和检验符号;和在译码侧,往所述信息和检验符号产生的校正子中加入加到所述压缩部分的所述数据码形相应的校正子。
3.一种编码电路,其特征在于,它包括一个有限域求和电路,在编码过程中将根据原先取得的代码数据输入的信息和检验符号取得的检验符号有限域求和结果作为经编码的检验符号;和一个校正数据输入器,输入经校正的数据。
4.一种译码电路,其特征在于,它包括一个有限域求和电路和一个校正数据输入器,有限域求和电路在译码过程中取代码数据已传送的校正子数据和基于预计代码数据的校正子数据均有限域求和结果作为经编码的校正子数据。
5.如权利要求4所述的纠错译码电路,其特征在于,它包括校正装置,进行译码时,根据加到所述压缩部分的代码数据码形相应的校正子和加到信息和检验符号所产生的校正子的校正子,通常也对压缩部分施加校正;和确定装置,根据对所述压缩部分中所加数据的译码结果确定同步损耗。
6.如权利要求1或2所述的纠错编码/译码方法,其特征在于,它包括下列步骤代码数据码形通常加到紧跟前一信息符号的压缩部分,以产生检验符号,并只传送信息和检验符号;在译码过程中,往信息和检验符号所产生的校正子中加入被加到所述压缩部分的代码数据码形相应的校正子;和在特殊情况下,往信息和检验符号所产生的校正子数据中加入基于伪码形的加入使所有编码数据为1的校正子数据。
全文摘要
一种纠错编码/译码方法,用于对编码长度经过压缩的纠错码进行编码和译码,其特征在于,该方法包括下列步骤:往所述压缩部分中加入数据码形,产生检验符号,从而使信息和检验符号全为“1”的数据为代码,并只传送所述信息和检验符号;和在译码侧,往所述信息和检验符号所产生的校正子加入所述压缩部分中数据相应的校正子数据。
文档编号H03M13/47GK1334646SQ0111736
公开日2002年2月6日 申请日期2001年4月23日 优先权日1995年5月30日
发明者吉田英夫 申请人:三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1