CN107181563B - 解码装置、信息传输系统和解码方法 - Google Patents
解码装置、信息传输系统和解码方法 Download PDFInfo
- Publication number
- CN107181563B CN107181563B CN201610811365.1A CN201610811365A CN107181563B CN 107181563 B CN107181563 B CN 107181563B CN 201610811365 A CN201610811365 A CN 201610811365A CN 107181563 B CN107181563 B CN 107181563B
- Authority
- CN
- China
- Prior art keywords
- error
- bit error
- error position
- data
- bit
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0079—Formats for control data
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1575—Direct decoding, e.g. by a direct determination of the error locator polynomial from syndromes and subsequent analysis or by matrix operations involving syndromes, e.g. for codes with a small minimum Hamming distance
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/31—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining coding for error detection or correction and efficient use of the spectrum
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0047—Decoding adapted to other signal detection operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0079—Formats for control data
- H04L1/0082—Formats for control data fields explicitly indicating existence of error in data being transmitted, e.g. so that downstream stations can avoid decoding erroneous packet; relays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0085—Formatting with cells
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本发明公开了一种解码装置、信息传输系统和解码方法,所述解码装置接收通过根据多项式xa+xb+1进行加扰而获得的传输数据。解码装置包括:接收单元,接收通过对块进行加扰而获得的数据,在块中已向(n‑8)位(其中n<a)的传输数据添加了错误校正码,错误校正码根据循环码生成器多项式x8+x6+x3+x2+1来计算;检错单元,根据与伴随式对应的错误模式,基于表格来计算通过对所接收的数据进行解扰而获得的解扰数据中的错误位置,伴随式基于来自解扰数据的错误校正码和根据解扰数据计算的错误校正码来计算,表格包括预先互相关联的伴随式和位错误位置编号;校正单元,对检错单元计算出的错误位置上的解扰数据进行校正。
Description
技术领域
本发明涉及一种解码装置、信息传输系统和解码方法。
背景技术
日本专利第5106538号中公开了一种为基于包的数字通信系统生成前向纠错(FEC)码的方法,所述方法包括:(a)基于根据不可约多项式生成的汉明码H(x)=X10+X3+1,对第一数据字实施第一编码算法,并基于比特间插奇偶校验(BIP)码B(x)=X6+1,对第一数据字实施第二编码算法;(b)为第一数据字生成第一校验位序列;(c)在第一数据字上附加第一校验位序列;(d)在源节点对步骤(c)的结果进行加扰处理;(e)将步骤(d)的结果通过数据传输链路从源节点传输到目的节点;(f)在目的节点对传输的数据字进行解扰处理,将第一校验位序列与步骤(e)的传输结果分离,并将结果存储在目的节点;(g)基于传输的数据字生成第二校验位序列;(h)将第一校验位序列与第二校验位序列逐位进行比较,以生成伴随式,所述伴随式以与第二编码算法伴随式连接的第一编码算法伴随式的形式存在;(i)确定接收的数据字是否包含第一位错误;(j)利用第一编码算法伴随式校正第一位错误,利用第二编码算法伴随式校正第一和第二重复位错误。
美国专利第7996747号公开了一种利用自动同步加扰器和解扰器,在串化器/解串器(SER/DES)链路上对基于包的数字通信系统生成前向纠错(FEC)码的方法,所述方法包括:对第一数据字实施第一编码算法;对第一数据字实施第二编码算法;对第一数据字生成第一校验位序列;在第一数据字上附加校验位序列;在源节点对第一数据字进行加扰;通过数据传输链路将第一数据字从源节点传输到目的节点;在目的节点对传输的第一数据字进行解扰;基于传输的数据字生成第二校验位序列;将第一校验位序列与第二校验位序列相比较;确定接收的数据字是否包含第一位错误;并对第一位错误以及第一和第二重复位错误进行校正。
美国专利第7284184号公开了一种利用截短的单位错误校正/双位错误检测码检测和校正数字传输系统中的随机位错误的方法,其中,对一组数据施加错误检测/校正码之后,对数据进行加扰,所述方法包括:对完全限于一组数据内的成倍错误的所有组合获取唯一伴随式;对出现于这组数据末端且与下一组数据重叠的成倍错误的这些组合获取唯一伴随式;记住末端唯一伴随式类型,以便校正下一组数据;并且对出现于这组数据开头的成倍错误的所有组合获取伴随式(至少对每种末端类型来说是唯一)。
美国专利第8055984号公开了一种校正数据包中的错误的方法,所述方法包括:为第一数据包计算伴随式,以确定第一数据包内是否存在第一错误;如果第一数据包内存在第一错误,则校正第一错误;确定第二数据包中是否存在第二错误,其中,第二错误是第一错误的成倍错误;并且校正第二错误。
发明内容
本发明的目的在于提供一种解码装置、信息传输系统和解码方法,所述解码装置利用8位错误校正码校正位错误,所述位错误将通过根据多项式xa+xb+1对n位块中的传输数据进行解扰而扩散。
根据本发明的第一方面,提供一种解码装置,其接收通过根据多项式xa+xb+1(其中a和b均为整数,a>b,且a≠2b)进行加扰而获得的传输数据。解码装置包括接收单元、检错单元和校正单元。接收单元接收通过对块进行加扰而获得的数据,在所述块中已向(n-8)位(其中n<a)的传输数据添加了错误校正码,错误校正码根据循环码生成器多项式x8+x6+x3+x2+1来计算。检错单元根据与伴随式对应的错误模式,基于表格来计算通过对所接收的数据进行解扰而获得的解扰数据中的错误位置,伴随式基于来自解扰数据的错误校正码和根据解扰数据计算的错误校正码来计算,所述表格包括预先互相关联的伴随式和位错误位置编号,其中,与代表包括1位错误位置p和1位错误位置p+b的2位错误位置p(其中p≤n)和p+b的位错误位置编号P1对应的伴随式由与1位错误位置p对应的伴随式和与1位错误位置p+b对应的伴随式的异或表示;与代表包括1位错误位置p和1位错误位置p+(a-b)的2位错误位置p和p+(a-b)的位错误位置编号P2对应的伴随式由与1位错误位置p对应的伴随式和与1位错误位置p+(a-b)对应的伴随式的异或表示,并且伴随式和位错误位置编号互相关联,使位错误位置编号P1和位错误位置编号P2满足P1,P2>n,且|P1-P2|>n。校正单元对检错单元计算出的错误位置上的解扰数据进行校正。
根据本发明的第二方面,如果计算的伴随式与表格中包括的所有‘0’除外的位错误位置编号不相关联,检错单元则检测数据中的不可校正错误。
根据本发明的第三方面,提供一种信息传输系统,所述信息传输系统包括根据第一方面或第二方面的解码装置和编码装置。编码装置包括:转换单元,转换单元向传输数据添加根据循环码生成器多项式x8+x6+x3+x2+1计算的错误校正码,以生成添加了错误校正码的传输数据,并对添加了错误校正码的传输数据进行加扰,以获得数据;以及传输单元,传输单元传输转换单元获取的数据。
根据本发明的第四方面,提供一种用于解码装置的解码方法,所述解码装置接收通过根据多项式xa+xb+1(其中a和b均为整数,a>b,且a≠2b)进行加扰而获得的传输数据,所述方法包括:接收通过对块进行加扰而获得的数据,在所述块中已向(n-8)位(其中n<a)的传输数据添加了错误校正码,错误校正码根据循环码生成器多项式x8+x6+x3+x2+1来计算;根据与伴随式对应的错误模式,基于表格来计算通过对所接收的数据进行解扰而获得的解扰数据中的错误位置,伴随式基于来自解扰数据的错误校正码和根据解扰数据计算的错误校正码来计算,所述表格包括预先互相关联的伴随式和位错误位置编号,其中,与代表包括1位错误位置p和1位错误位置p+b的2位错误位置p(其中p≤n)和p+b的位错误位置编号P1对应的伴随式由与1位错误位置p对应的伴随式和与1位错误位置p+b对应的伴随式的异或表示;与代表包括1位错误位置p和1位错误位置p+(a-b)的2位错误位置p和p+(a-b)的位错误位置编号P2对应的伴随式由与1位错误位置p对应的伴随式和与1位错误位置p+(a-b)对应的伴随式的异或表示,并且伴随式和位错误位置编号互相关联,使位错误位置编号P1和位错误位置编号P2满足P1,P2>n,且|P1-P2|>n;以及对计算出的错误位置上的解扰数据进行校正。
根据本发明的第一方面,利用8位错误校正码对位错误进行校正,所述位错误将通过根据多项式xa+xb+1对n位块中的传输数据进行解扰而扩散。
根据本发明的第二方面,检测到不可校正错误。
根据本发明的第三方面,利用8位错误校正码对位错误进行校正,所述位错误将通过根据多项式xa+xb+1对n位块中的传输数据进行解扰而扩散。
根据本发明的第四方面,利用8位错误校正码对位错误进行校正,所述位错误将通过根据多项式xa+xb+1对n位块中的传输数据进行解扰而扩散。
附图说明
将基于下列附图详细说明本发明的示例性实施例,其中:
图1示意性示出根据本发明的示例性实施例的信息传输系统的示例性配置;
图2是示出根据本发明的示例性实施例的编码装置的示例性配置的框图;
图3示出示例性前向纠错(FEC)块;
图4A示出FEC块,图4B示出错误校正码的生成;
图5是示出根据本发明的示例性实施例的解码装置的示例性配置的框图;
图6示出伴随式的计算;
图7示出错误模式;
图8A、图8B和图8C示出伴随式和错误位置;
图9示出伴随式与错误位置编号互相关联的示例性表格;
图10示出根据本发明的示例性实施例的编码装置执行的编码例程的细节;以及
图11示出根据本发明的示例性实施例的解码装置执行的解码例程的细节。
具体实施方式
下面参照附图对本发明的示例性实施例进行详细说明。以下说明示出了以下情况:本发明的示例性实施例应用于信息传输系统,在该系统中,信息是通过串行传输在两个装置之间传输和接收的。
信息传输系统
首先将对根据本发明的示例性实施例的信息传输系统的示例性配置进行说明。图1示意性示出根据本发明的示例性实施例的信息传输系统的示例性配置。如图1所示,信息传输系统10包括传输信息的编码装置12和接收信息的解码装置14。
编码装置12和解码装置14通过传输路径16互相连接。传输路径16是用于通过串行传输将信息从编码装置12传输到解码装置14的传输路径。
编码装置
接下来将对编码装置12的配置进行说明。图2是示出编码装置12的示例性配置的框图。如图2所示,编码装置12包括数据接收单元120、转换单元122和传输单元132。编码装置12由电路(集成电路(IC)),例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)或门阵列执行。编码装置12中包括的上述每个功能单元可由包括中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)等的计算机实现,每个功能单元的每个功能可由执行ROM中存储的对应程序的CPU执行。
数据接收单元120接收并行传输数据。本示例性实施例对使用56位并行传输块数据的情况作为示例进行了说明。
转换单元122获取数据接收单元120接收的并行传输块数据。转换单元122随后向获取的传输数据添加错误校正码(ECC),并对64位传输数据进行编码,以生成66位编码数据。如图2所示,转换单元122包括ECC计算单元124、加扰单元126、64B/66B编码单元128和并串(P/S)转换单元130。
ECC计算单元124根据数据接收单元120接收的并行传输数据和预设的循环码生成器多项式计算将要添加到传输数据中的错误校正码。图3示出根据示例性实施例的传输数据和错误校正码的示例。如图3所示,错误校正码由ECC计算单元124添加到传输数据中,稍后将对此进行说明。
图4A示出前向纠错FEC块,图4B示出错误校正码的生成。在本示例性实施例中,如图4A所示,错误校正码(8位)根据48位(6字节)传输数据来计算。FEC块总共有64位(8字节),包括作为虚拟位的其余8位,例如,"00000000"。另外,48位(6字节)传输数据是块的一个示例。
如图4B所示,ECC计算单元124用传输数据位流除以下列表达式(1)表示的八次循环码生成器多项式G(x)来计算余数,作为错误校正码。
G(x)=x8+x6+x3+x2+1 (1)
图4B示出输入到ECC计算单元124中的48位传输数据。具体地,ECC计算单元124根据以下表达式(2)计算错误校正码。
C7=A1+A3+A4+A8+A9+A12+A13+A14+A21+A22+A23+A24+A25+A27+A30+A32+A34+A37+A43
C6=A0+A2+A3+A7+A8+A11+A12+A13+A20+A21+A22+A23+A24+A26+A29+A31+A33+A36+A42+A47
C5=A2+A3+A4+A6+A7+A8+A9+A10+A11+A13+A14+A19+A20+A24+A27+A28+A34+A35+A37+A41+A43+A46+A47
C4=A1+A2+A3+A5+A6+A7+A8+A9+A10+A12+A13+A18+A19+A23+A26+A27+A33+A34+A36+A40+A42+A45+A46
C3=A0+A1+A2+A4+A5+A6+A7+A8+A9+A11+A12+A17+A18+A22+A25+A26+A32+A33+A35+A39+A41+A44+A45+A47
C2=A0+A5+A6+A7+A9+A10+A11+A12+A13+A14+A16+A17+A22+A23+A27+A30+A31+A37+A38+A40+A44+A46
C1=A1+A3+A5+A6+A10+A11+A14+A15+A16+A23+A24+A25+A26+A27+A29+A32+A34+A36+A39+A45
C0=A0+A2+A4+A5+A9+A10+A13+A14+A15+A22+A23+A24+A25+A26+A28+A31+A33+A35+A38+A44 (2)
表达式(2)用于计算48位输入的错误校正码,其中,Axx表示传输数据的输入中的第xx位,Cx表示错误校正码的输出中的第x位。另外,此处的符号"+"指示异或(XOR)运算。
加扰单元126接收传输数据和已添加到传输数据中的错误校正码,所述传输数据已由数据接收单元120接收,并根据多项式xa+xb+1(其中,a和b均为整数,a>b,且a≠2b)对传输数据和错误校正码进行加扰。
在示例性实施例中,传输数据位数与错误校正码位数的和(用n表示)小于上述多项式中的指数a(n<a)。在示例性实施例中,由于错误校正码有8位,因此传输数据有(n-8)位。
例如,加扰单元126根据以下表达式(3)对传输数据和已添加到传输数据中的错误校正码进行加扰。以下表达式(3)示出了多项式中的指数a为58,指数b为39的情况。
G(x)=x58+x39+1 (3)
64B/66B编码单元128根据预定编码方案对加扰单元126加扰的传输数据进行编码,并对位数进行转换。本示例性实施例示出了根据64B/66B编码方案进行编码(位数已转换)的情况作为示例。
并串(P/S)转换单元130将64B/66B编码单元128进行转换而获得的66位并行数据通过并串(P/S)转换的方式转换成串行位流。在本示例性实施例中,FEC块(在每个块中,虚拟位(8位)和错误校正码(8位)已添加到传输数据(64位)中)先后进行64B/66B转换和并串转换,然后由传输单元132作为数据传输,稍后将对此进行说明。
传输单元132向传输路径16输出通过并串(P/S)转换单元130进行转换而获得的串行数据。传输单元132可与光电转换器(未示出)连接,以将电输出转换成光输出。这种情况下,传输路径16由光纤等构成。
解码装置
接下来将对解码装置14的配置进行说明。图5是示出解码装置14的示例性配置的框图。如图5所示,解码装置14包括接收单元140、串并(S/P)转换单元142、64B/66B解码单元144、解扰单元146、错误校正单元148、错误输出单元160和数据输出单元162。解码装置14由电路(集成电路(IC)),例如,现场可编程门阵列(FPGA)、专用集成电路(ASIC)或门阵列执行。解码装置14中包括的上述每个功能单元可由包括中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)等的计算机实现,每个功能单元的每个功能可由执行ROM中存储的对应程序的CPU执行。
接收单元140接收从编码装置12通过传输路径16传输的串行数据。在接收光输出的情况下,接收单元140与光电转换器(未示出)连接,接收从光输出转换的电输出作为串行数据。
串并(S/P)转换单元142将接收单元140接收的串行数据转换成并行数据。
64B/66B解码单元144根据转换了位数的64B/66B编码方案对串并(S/P)转换单元142获得的并行数据进行解码,并将所得数据作为接收数据和错误校正码输出。
解扰单元146对64B/66B解码单元144解码的接收数据和错误校正码进行解扰。另外,解扰根据上述表达式(3)表示的多项式来进行。另外,解扰单元146使所得解扰数据和错误校正码存储在缓存器150中,稍后将对此进行说明。
错误校正单元148包括缓存器150、ECC单元151、检错单元156和校正单元158。
缓存器150存储通过解扰单元146获得的解扰数据和错误校正码。
ECC单元151根据缓存器150中存储的解扰数据和错误校正码计算伴随式。ECC单元151包括ECC计算单元152和ECC比较单元154。
ECC计算单元152获取缓存器150中存储的解扰数据,基于获取的解扰数据,根据上述表达式(1)表示的循环码生成器多项式G(x)计算错误校正码。具体地,与ECC计算单元124同样,ECC计算单元152用解扰数据位流除以上述表达式(1)表示的八次循环码生成器多项式G(x)来计算余数,作为错误校正码。
ECC比较单元154基于缓存器150中存储的错误校正码和ECC计算单元152计算的错误校正码计算伴随式。
图6示出ECC单元151进行的示例性处理。例如,如图6所示,ECC单元151根据缓存器150中存储的错误校正码C[7:0]和缓存器150中存储的解扰数据A[47:0]计算伴随式S[7:0]。计算伴随式的表达式用以下表达式(4)表示。
S7=C7+A1+A3+A4+A8+A9+A12+A13+A14+A21+A22+A23+A24+A25+A27+A30+A32+A34+A37+A43
S6=C6+A0+A2+A3+A7+A8+A11+A12+A13+A20+A21+A22+A23+A24+A26+A29+A31+A33+A36+A42+A47
S5=C5+A2+A3+A4+A6+A7+A8+A9+A10+A11+A13+A14+A19+A20+A24+A27+A28+A34+A35+A37+A41+A43+A46+A47
S4=C4+A1+A2+A3+A5+A6+A7+A8+A9+A10+A12+A13+A18+A19+A23+A26+A27+A33+A34+A36+A40+A42+A45+A46
S3=C3+A0+A1+A2+A4+A5+A6+A7+A8+A9+A11+A12+A17+A18+A22+A25+A26+A32+A33+A35+A39+A41+A44+A45+A47
S2=C2+A0+A5+A6+A7+A9+A10+A11+A12+A13+A14+A16+A17+A22+A23+A27+A30+A31+A37+A38+A40+A44+A46
S1=C1+A1+A3+A5+A6+A10+A11+A14+A15+A16+A23+A24+A25+A26+A27+A29+A32+A34+A36+A39+A45
S0=C0+A0+A2+A4+A5+A9+A10+A13+A14+A15+A22+A23+A24+A25+A26+A28+A31+A33+A35+A38+A44 (4)
在上述表达式(4)中,Axx表示解扰数据的输入中的第xx位,Cx表示错误校正码中的第x位,Sx表示伴随式的输出中的第x位。另外,此处的符号"+"指示异或(XOR)运算。如果伴随式Sx中的所有位都是零值,则确定没有位错误。如果伴随式Sx中的一个位不是零值,则由检错单元156指出位错误位置,稍后将对此进行说明。
根据ECC比较单元154计算的伴随式,基于伴随式与位错误位置预先互相关联的表格,检错单元156根据与上述伴随式对应的错误模式检测位错误位置。
具体地,除ECC比较单元154计算的伴随式中的所有位均为零值的情况之外,检错单元156检测传输路径上的位错误。随后,检错单元156指出错误模式。
图7示出传输路径上出现1位错误时获得的示例性错误模式。如图7所示,传输路径上的1位错误通过解扰扩散到另一个位上,1位错误造成2位或2位以下的错误。另外,图7中的FEC块的图示中忽略了虚拟位。
如图7所示,在错误模式1中,FEC块包含1位错误,与伴随式对应的位错误位置编号P处于0至55的范围内,并与错误位置p直接对应。与第P个错误位置对应的伴随式指示为αp,与伴随式对应的错误位置编号P与实际位错误位置p互相对应。另外,下文将对位错误位置编号P进行详细说明。
另一方面,在错误模式2和3中,与伴随式对应的错误位置编号P和错误位置p互相不对应。由此,错误位置p根据与伴随式对应的错误位置编号P来获得。另外,每个错误位置p小于或等于传输数据和错误校正码的位数(p≤n)。
例如,在错误模式2中,与伴随式对应的错误位置编号P处于94至149的范围内,其中的编号均大于数据位的数量(即,56)。因此,与伴随式对应的错误位置编号P和错误位置p互相不对应。此处,在错误模式2中,如果FEC块包含2位错误,并且伴随式指示为αp+94,错误位置则为p和p+39。另外,如果用于加扰的多项式是xa+xb+1,位错误位置则为p和p+b。
另外,在错误模式3中,与伴随式对应的错误位置编号P处于178至233的范围内。如果FEC块包含2位错误,并且伴随式指示为αp+178,错误位置则为p和p+19。另外,如果用于加扰的多项式是xa+xb+1,位错误位置则为p和p+(a-b)。
概括而言,每种错误模式中的位错误位置如下。
错误模式1:错误位置是p
错误模式2:错误位置是p和p+39
错误模式3:错误位置是p和p+19
在本示例性实施例中,伴随式和位错误位置编号根据错误模式预先互相关联。
下面将对伴随式与位错误位置编号之间的关联进行说明。
例如,如果错误模式是错误模式2,与位错误位置编号P1(代表2位错误位置p和p+39)对应的伴随式用与1位错误位置p和1位错误位置p+39对应的伴随式的异或表示。
另外,如果错误模式是错误模式3,与位错误位置编号P2(代表2位错误位置p和p+19)对应的伴随式用与1位错误位置p和1位错误位置p+19对应的伴随式的异或表示。
由此,在表格中,伴随式和位错误位置编号互相关联,使位错误位置编号P1和位错误位置编号P2满足以下条件。
P1,P2>n,且|P1-P2|>n
图8A、图8B和图8C示出与位错误位置编号P(代表2位错误位置p和p+19)对应的伴随式和实际位错误位置p和p+19之间的关系。
如图8A、图8B和图8C所示,如果错误模式是错误模式3,当第10位和第29位出现错误时,伴随式是第188位流(错误位置编号P是188)。由于错误位置编号P是188,基于αp+178(p:178至233),将错误模式确定为错误模式3。然后,根据错误模式,计算实际错误位置p,(188-178=10)。另外,计算另一个错误位置p+19,(10+19=29)。然后,由校正单元158对已经计算的第10位和第29位进行校正,稍后将对此进行说明。
图9示出了伴随式与错误位置编号预先互相关联的示例性表格。在图9所示的表格中,代表8位伴随式的255字节地址与错误位置编号P预先关联。图9所示的表格中的字节地址S是与伴随式的二进制数对应的十进制数。
例如,如图9所示,如果计算的伴随式是“10111001”,由于在图9中伴随式“1100100100101”用字节地址“185”表示,可理解的是,错误位置编号P是"188"。
如图9所示,在错误位置编号P处于0至55的范围内的情况下,错误模式与错误模式1对应,错误位置p由校正单元158校正。另外,在错误位置编号P处于94至149的范围内的情况下,错误模式与错误模式2对应,错误位置(p-94)和错误位置(p-94+39)由校正单元158校正。另外,在错误位置编号P处于178至223的范围内的情况下,错误模式与错误模式3对应,错误位置(p-178)和错误位置(p-178+19)由校正单元158校正。另外,在错误位置编号P是处于0至55、94至149和178至223的范围之外的编号的情况下,将错误确定为不可校正错误。
由此,检错单元156根据伴随式与位错误位置编号预先互相关联的表格和与ECC比较单元154计算的伴随式对应的错误模式,指出解扰数据中的位错误位置,并将指出的位错误位置输出给校正单元158。
如果ECC比较单元154计算的伴随式在表格(包含8位表示的255种模式)中不存在,检错单元156检测传输路径上的2位或更多位的错误,并将指示传输路径上的2位或更多位的错误的信息输出给错误输出单元160。
校正单元158在存储于缓存器150的解扰数据中,根据从检错单元156输出的信息转换与错误位置对应的位,从而校正解扰数据中的位错误。
如果检错单元156已输出指示传输路径上的2位或更多位错误的信息,错误输出单元160则指示传输路径上的2位或更多位错误的信息作为不可校正错误输出。
在完成错误校正之后(包括无错误的情况),数据输出单元162按顺序输出存储于缓存器150中的解扰数据。
信息传输系统的运行
下面将对信息传输系统10的运行进行说明。如上所述,信息传输系统10的运行包括编码装置12侧的处理和解码装置14侧的处理。
编码装置侧的处理
首先将说明对编码装置12侧执行的处理。
图10是示出编码装置12执行的编码例程的示例性程序的流程图。收到要编码的并行数据时,编码装置12执行图10所示的编码例程。
在步骤S100中,数据接收单元120接收并行传输数据。
在步骤S102中,ECC计算单元124基于数据接收单元120接收的并行传输数据,并根据上述表达式(1)表示的八次循环码生成器多项式计算将要添加到传输数据中的错误校正码。
在步骤S104中,加扰单元126根据上述表达式(3)对在步骤S100中接收的已添加了错误校正码的传输数据和在步骤S102中计算的错误校正码进行加扰。
在步骤S106中,64B/66B编码单元128根据64B/66B编码方案对步骤S104中加扰的传输数据进行编码,并对位数进行转换。
在步骤S108中,并串(P/S)转换单元130将通过步骤S106中的转换获得的并行数据转换成串行位流。
在步骤S110中,传输单元132将通过步骤S108中的转换获得的串行数据输出到传输路径16,并结束编码例程。
解码装置侧的处理
下面将说明对解码装置14侧执行的处理。
图11是示出解码装置14执行的解码例程的示例性程序的流程图。接收要解码的数据时,解码装置14执行图11所示的解码例程。
在步骤S200中,接收单元140接收从编码装置12通过传输路径16传输的串行数据。
在步骤S202中,串并(S/P)转换单元142将步骤S200中接收的串行数据转换成并行数据。并行数据的字节对齐由64B/66B编码方案进行。
在步骤S204中,64B/66B解码单元144根据转换了位数的64B/66B编码方案,对步骤S202中获得的并行数据进行解码,并将所得数据作为接收数据和错误校正码输出。
在步骤S206中,解扰单元146对步骤S204中解码的接收数据和错误校正码进行解扰。另外,解扰单元146使解码的解扰数据和错误校正码存储在缓存器150中。
在步骤S208中,ECC计算单元152获取缓存器150中存储的解扰数据,基于获取的解扰数据,并根据上述表达式(1)表示的八次循环码生成器多项式G(x)计算错误校正码。
在步骤S210中,ECC比较单元154基于缓存器150中存储的错误校正码和步骤S208中计算的错误校正码计算伴随式。
在步骤S212中,根据步骤S210中计算的伴随式,并基于伴随式和与位错误位置对应的编号预先互相关联的表格,检错单元156确定步骤S210中计算的伴随式是否与预设字节地址相关联。如果计算的伴随式与预设字节地址相关联,处理进入步骤S214。如果计算的伴随式与预设字节地址不相关联,处理进入步骤S222。
在步骤S214中,基于伴随式编号P与表示伴随式的字地址预先互相关联的表格,并根据步骤S210中计算的伴随式,检错单元156根据计算的伴随式编号P确定错误模式。
在步骤S216中,根据步骤S214中确定的错误模式,检错单元156确定实际位错误位置,并将表示实际位错误位置的信息输出给校正单元158。
在步骤S218中,校正单元158在存储于缓存器150的解扰数据中,根据步骤S216中输出的信息转换与错误位置对应的位,从而校正解扰数据中的位错误。
在步骤S220中,数据输出单元162输出存储于缓存器150中的解扰数据,并结束解码例程。
在步骤S222中,检错单元156检测传输路径上的2位或更多位的错误,并输出指示传输路径上的2位或更多位的错误的信息。
在步骤S224中,错误输出单元160输出在步骤S222中输出的表示2位或更多位的错误的信息作为不可校正错误,并结束解码例程。
毫无疑问,示例性实施例中的上述信息传输系统的配置是示例性配置,在不脱离本发明的精神的情况下可对其进行修改。例如,虽然已对包括编码装置和解码装置的信息传输系统进行了说明,但也可提供包括编码单元和解码单元二者的装置,这种装置可在信息传输系统中执行串行传输。位数的转换并不限于64B/66B转换,也可进行位数的其他转换。
虽然示例性实施例描述了采用上述表达式(3)的示例作为用于加扰的多项式xa+xb+1的示例,但用于加扰的多项式xa+xb+1并不限于此,a和b可以是特定编号的组合。
例如,在根据多项式x57+xb+1进行加扰的情况下,指数b可以是9、10、12、19、38、45、47和48中的任何一个。
另外,在根据多项式x58+xb+1进行加扰的情况下,指数b可以是8、10、19、24、34、39、48和50中的任何一个。
另外,在根据多项式x59+xb+1进行加扰的情况下,指数b可以是8、14、55和51中的任何一个。
另外,在根据多项式x60+xb+1进行加扰的情况下,指数b可以是13、15、45和47中的任何一个。
另外,在根据多项式x61+xb+1进行加扰的情况下,指数b可以是13和48中的任何一个。
另外,在根据多项式x62+xb+1进行加扰的情况下,指数b可以是9、12、21、41、50和53中的任何一个。
另外,在根据多项式x63+xb+1进行加扰的情况下,指数b可以是12、21、42和51中的任何一个。
另外,在根据多项式x64+xb+1进行加扰的情况下,指数b可以是14、19、45和50中的任何一个。
不仅可通过使用通信介质,还可通过将其存储在诸如压缩光盘只读存储器(CDROM)的记录介质中来提供本发明的上述任何示例性实施例。
为了进行图示和说明,以上对本发明的示例性实施例进行了描述。其目的并不在于全面详尽地描述本发明或将本发明限定于所公开的具体形式。很显然,对本技术领域的技术人员而言,可以做出许多修改以及变形。本实施例的选择和描述,其目的在于以最佳方式解释本发明的原理及其实际应用,从而使得本技术领域的其他熟练技术人员能够理解本发明的各种实施例,并做出适合特定用途的各种变形。本发明的范围由与本说明书一起提交的权利要求书及其等同物限定。
Claims (4)
1.一种解码装置,其接收通过根据多项式xa+xb+1进行加扰而获得的传输数据,其中a和b均为整数,a>b,且a≠2b,所述解码装置包括:
接收单元,接收通过对块进行加扰而获得的数据,在所述块中已向(n-8)位的传输数据添加了错误校正码,其中n<a,所述错误校正码根据循环码生成器多项式x8+x6+x3+x2+1来计算;
检错单元,根据与伴随式对应的错误模式,基于表格来计算通过对所接收的数据进行解扰而获得的解扰数据中的错误位置,所述伴随式基于来自所述解扰数据的所述错误校正码和根据所述解扰数据计算的错误校正码来计算,所述表格包括
根据错误模式预先互相关联的伴随式和位错误位置编号,其中
与代表包括1位错误位置p和1位错误位置p+b的2位错误位置p和p+b的位错误位置编号P1对应的伴随式由与1位错误位置p对应的伴随式和与1位错误位置p+b对应的伴随式的异或表示,其中p≤n;
与代表包括1位错误位置p和1位错误位置p+(a-b)的2位错误位置p和p+(a-b)的位错误位置编号P2对应的伴随式由与1位错误位置p对应的伴随式和与1位错误位置p+(a-b)对应的伴随式的异或表示,并且
所述伴随式和所述位错误位置编号互相关联,使所述位错误位置编号P1和所述位错误位置编号P2满足P1,P2>n,且|P1-P2|>n;以及
校正单元,对所述检错单元计算出的所述错误位置上的所述解扰数据进行校正。
2.根据权利要求1所述的解码装置,其特征在于,如果计算的所述伴随式与所述表格中包括的所有‘0’除外的所述位错误位置编号不相关联,所述检错单元则检测所述数据中的不可校正错误。
3.一种信息传输系统,包括:
根据权利要求1或权利要求2所述的解码装置;以及
编码装置,其包括:
转换单元,向所述传输数据添加根据所述循环码生成器多项式x8+x6+x3+x2+1计算的所述错误校正码,以生成添加了错误校正码的传输数据,并对添加了所述错误校正码的所述传输数据进行加扰,以获得所述数据,以及
传输单元,传输所述转换单元获取的所述数据。
4.一种用于解码装置的解码方法,所述解码装置接收通过根据多项式xa+xb+1进行加扰而获得的传输数据,其中a和b均为整数,a>b,且a≠2b,所述方法包括:
接收通过对块进行加扰而获得的数据,在所述块中已向(n-8)位的所述传输数据添加了错误校正码,其中n<a,所述错误校正码根据循环码生成器多项式x8+x6+x3+x2+1来计算;
根据与伴随式对应的错误模式,基于表格来计算通过对所接收的数据进行解扰而获得的解扰数据中的错误位置,所述伴随式基于来自所述解扰数据的所述错误校正码和根据所述解扰数据计算的错误校正码来计算,所述表格包括
根据错误模式预先互相关联的伴随式和位错误位置编号,其中
与代表包括1位错误位置p和1位错误位置p+b的2位错误位置p和p+b的位错误位置编号P1对应的伴随式由与1位错误位置p对应的伴随式和与1位错误位置p+b对应的伴随式的异或表示,其中p≤n;
与代表包括1位错误位置p和1位错误位置p+(a-b)的2位错误位置p和p+(a-b)的位错误位置编号P2对应的伴随式由与1位错误位置p对应的伴随式和与1位错误位置p+(a-b)对应的伴随式的异或表示,并且
所述伴随式和所述位错误位置编号互相关联,使所述位错误位置编号P1和所述位错误位置编号P2满足P1,P2>n,且|P1-P2|>n;以及
对计算出的所述错误位置上的所述解扰数据进行校正。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016-048425 | 2016-03-11 | ||
JP2016048425A JP6693187B2 (ja) | 2016-03-11 | 2016-03-11 | 復号化装置、プログラム、及び情報伝送システム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107181563A CN107181563A (zh) | 2017-09-19 |
CN107181563B true CN107181563B (zh) | 2021-03-30 |
Family
ID=59787296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610811365.1A Active CN107181563B (zh) | 2016-03-11 | 2016-09-08 | 解码装置、信息传输系统和解码方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20170264319A1 (zh) |
JP (1) | JP6693187B2 (zh) |
CN (1) | CN107181563B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1284818A (zh) * | 2000-09-29 | 2001-02-21 | 清华大学 | 一种用于有线电视网上视频广播的全数字有条件接收方法 |
CN101257312A (zh) * | 2008-03-03 | 2008-09-03 | 炬才微电子(深圳)有限公司 | 一种解码伴随式的计算方法、电路及解码器 |
CN102811066A (zh) * | 2012-07-17 | 2012-12-05 | 记忆科技(深圳)有限公司 | 伴随式计算装置及解码器 |
KR20140006402A (ko) * | 2012-07-05 | 2014-01-16 | 에스케이하이닉스 주식회사 | 가변 구조의 에러 정정 부호화기 |
KR20140126220A (ko) * | 2013-04-18 | 2014-10-30 | 삼성전자주식회사 | 분할 배치되는 ecc 회로를 포함하는 반도체 메모리 장치 |
CN105337619A (zh) * | 2014-06-09 | 2016-02-17 | 联想(北京)有限公司 | 一种bch码解码方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103166649B (zh) * | 2011-12-19 | 2016-06-15 | 国际商业机器公司 | 用于解码循环码的方法、装置和解码器 |
-
2016
- 2016-03-11 JP JP2016048425A patent/JP6693187B2/ja not_active Expired - Fee Related
- 2016-08-09 US US15/231,917 patent/US20170264319A1/en not_active Abandoned
- 2016-09-08 CN CN201610811365.1A patent/CN107181563B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1284818A (zh) * | 2000-09-29 | 2001-02-21 | 清华大学 | 一种用于有线电视网上视频广播的全数字有条件接收方法 |
CN101257312A (zh) * | 2008-03-03 | 2008-09-03 | 炬才微电子(深圳)有限公司 | 一种解码伴随式的计算方法、电路及解码器 |
KR20140006402A (ko) * | 2012-07-05 | 2014-01-16 | 에스케이하이닉스 주식회사 | 가변 구조의 에러 정정 부호화기 |
CN102811066A (zh) * | 2012-07-17 | 2012-12-05 | 记忆科技(深圳)有限公司 | 伴随式计算装置及解码器 |
KR20140126220A (ko) * | 2013-04-18 | 2014-10-30 | 삼성전자주식회사 | 분할 배치되는 ecc 회로를 포함하는 반도체 메모리 장치 |
CN105337619A (zh) * | 2014-06-09 | 2016-02-17 | 联想(北京)有限公司 | 一种bch码解码方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20170264319A1 (en) | 2017-09-14 |
JP2017163476A (ja) | 2017-09-14 |
CN107181563A (zh) | 2017-09-19 |
JP6693187B2 (ja) | 2020-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8055984B2 (en) | Forward error correction scheme compatible with the bit error spreading of a scrambler | |
US7278085B1 (en) | Simple error-correction codes for data buffers | |
JP2715900B2 (ja) | 並列データ伝送装置 | |
US11201695B2 (en) | Forward error correction with compression coding | |
US20080320370A1 (en) | CRC generator polynomial select method, CRC coding method and CRC coding circuit | |
EP0112988A2 (en) | Syndrome processing for multibyte error correcting systems | |
WO2008052858B1 (en) | Forward error correction encoding for multiple link transmission compatible with 64b/66b scrambling | |
JP6657690B2 (ja) | 復号化装置、プログラム、及び情報伝送システム | |
EP1628402B1 (en) | Correction of error propagation caused by scrambling with subsequent forward error correction | |
US20050257113A1 (en) | Cyclic redundancy check circuit for use with self-synchronous scramblers | |
JP6930090B2 (ja) | 復号化装置、プログラム、及び情報伝送システム | |
JP6417937B2 (ja) | 復号化装置、プログラム及び情報伝送システム | |
US20090110109A1 (en) | Apparatus and method for generating a transmit signal and apparatus and method for extracting an original message from a received signal | |
US8136013B2 (en) | Burst error correction based on fire code | |
US7284182B2 (en) | Error correction on M-bit encoded links | |
US20030051204A1 (en) | Interconnect system with error correction | |
CN107181563B (zh) | 解码装置、信息传输系统和解码方法 | |
US20080082896A1 (en) | Burst error correction with offset for correction vector based on fire code | |
CN108574490B (zh) | 计算循环冗余校验crc编码的方法及装置 | |
EP2285003B1 (en) | Correction of errors in a codeword | |
KR101655809B1 (ko) | 복수의 룩업테이블을 이용한 crc 연산 장치 및 방법 | |
CN115037414B (zh) | 基于crc的纠错解码的方法、装置、终端 | |
JP4708291B2 (ja) | 通信システム | |
KR100192801B1 (ko) | 리드 솔로몬 디코더의 비트 에러율 측정 회로 | |
Mozhiarasi et al. | Analysis on (15, 7) binary BCH encoder and decoder for 7-bit ASCII characters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: Tokyo, Japan Patentee after: Fuji film business innovation Co.,Ltd. Address before: Tokyo, Japan Patentee before: Fuji Xerox Co.,Ltd. |