CN111277830B - 一种编码方法、解码方法及装置 - Google Patents
一种编码方法、解码方法及装置 Download PDFInfo
- Publication number
- CN111277830B CN111277830B CN201811483003.XA CN201811483003A CN111277830B CN 111277830 B CN111277830 B CN 111277830B CN 201811483003 A CN201811483003 A CN 201811483003A CN 111277830 B CN111277830 B CN 111277830B
- Authority
- CN
- China
- Prior art keywords
- symbols
- code
- codes
- symbol
- payload
- 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
- 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/29—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 two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—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 two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/184—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
-
- 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/29—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 two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—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 two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
- H03M13/2909—Product 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/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- 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/0057—Block 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/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/0064—Concatenated codes
- H04L1/0065—Serial concatenated codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/65—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
-
- 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/1515—Reed-Solomon codes
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
Abstract
本申请公开了一种编码方法、解码方法及装置,属于通信领域。所述编码方法包括:接收数据比特流;对所述数据比特流进行前向纠错FEC编码得到X个里德索罗门RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,其中,N1>K1,N1和K1为大于1的整数,X为大于0的整数;对所述X个RS外码进行FEC编码得到Y个RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,其中,N2>K2,N2和K2为大于0的整数,Y为大于1的整数,N1>N2。本申请能够提高FEC解码的纠错性能。
Description
技术领域
本申请涉及通信领域,特别涉及一种编码方法、解码方法及装置。
背景技术
互联网的飞速发展导致数据流量井喷式的增长,为了缓解数据传输的压力需要不断提升通信链路的数据传输速率。数据传输速率不断提升的同时,信道传输环境不断劣化,对数据的损伤凸显,进而导致信噪比下降。为了对抗通信过程中对数据造成不利的影响,在发送数据前,需要对数据进行编码。
目前可以采用里德索罗门(reed solomon,RS)码对数据进行编码,RS码定义了码字长度N和信息长度K,N大于K。发送端可以一次对K个待发送的第一符号进行编码得到一个码字,该码字包括N个编码后的第二符号,然后向接收端发送该码字包括的N个第二符号。接收端接收该N个第二符号,对该N个第二符号进行解码,在解码的过程如果该N个第二符号在传输过程中发生的错误不超过(N-K)/2个,则可以对发生的错误进行纠错,以恢复出K第一符号。
目前当码字长度N和信息长度K确定下来后,最多可以纠正(N-K)/2个发生错误的符号,也就是说对符号的纠错性能就已经确定,随着数据传输速率不断提升,当前对符号的纠错性能已无法满足需求,需要进一步提高纠错性能。
发明内容
为了提高纠错性能,本申请实施例提供了一种编码方法、解码方法及装置。所述技术方案如下:
第一方面,本申请提供了一种编码方法,接收数据比特流;对所述数据比特流进行前向纠错FEC编码得到X个里德索罗门RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,其中,N1>K1,N1和K1为大于1的整数,X为大于0的整数;对所述X个RS外码进行FEC编码得到Y个RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,其中,N2>K2,N2和K2为大于0的整数,Y为大于1的整数,N1>N2。由于在对数据比特流进行FEC编码得到RS外码后,还继续对该RS外码进行二次FEC编码得到RS内码,这样可以增加接收端解码时能够纠错的符号数目,从而提高了纠错性能。
在一种可能的设计中,Y=(X*N1)/K2。
在一种可能的设计中,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
可选的,当X大于或等于2时,所述每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。可选的,当X大于或等于2时,所述每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。这样可以实现在通信链路上传输的任意相邻两个符号属于不同的RS外码和RS内码,从而实现将出错的符号分散在不同RS外码和RS内码中,提高解码的性能。
在一种可能的设计中,针对Y个RS内码中的每一个RS内码,确定该RS内码包括的K2个净荷符号;对所述K2个净荷符号进行FEC编码,得到包括N2个符号的所述RS内码。
在一种可能的设计中,针对所述K2个净荷符号中的每一个净荷符号,根据所述净荷符号所在的RS外码的编号j和所述净荷符号在第j个RS外码中的编号i,按如下第一公式确定所述净荷符号属于的RS内码的编号h和所述净荷符号在所述第h个RS内码中的编号c,j=0、1、……、X-1,i=0、1、……、N1-1;
第一公式为:h=floor((i*X+j)/K2),c=(i*X+j)MODK2,其中,floor为向下取整运算,MOD为取余运算。这样在X大于1时,通过上述第一公式可以将同一个RS外码中的相邻两个符号映射到同一个RS内码时,使该相邻两个符号在该RS内码中间隔X-1符号。
在一种可能的设计中,所述方法还通过L条通信链路发送所述Y个RS内码包括的Y*N2个符号,其中,L为大于0的整数。
在一种可能的设计中,针对同一条通信链路发送的符号,任意两个相邻符号属于不同的RS内码。可选的,针对同一条通信链路发送的符号,任意两个相邻的属于相同RS内码的符号中间间隔D-1个符号,D为大于1的整数,且D<Y。这样可以实现在通信链路上传输的相邻两个符号属于不同的RS内码。
第二方面,本申请提供了一种解码方法,所述方法接收Y个里德索罗门RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,N2>K2,N2和K2为大于0的整数,Y为大于1的整数;对所述Y个RS内码进行前向纠错FEC解码得到X个RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,N1>K1,N1>N2,N1和K1为大于1的整数,X为大于0的整数;对所述X个RS外码进行FEC解码得到每一个RS外码对应的K1个净荷符号。如此,由于在对RS内码进行FEC解码得到RS内码的净荷符号后,再根据该RS内码的净荷符号形成RS外码,然后还继续对该RS外码进行二次FEC解码,这样可以增加在解码时能够纠错的符号数目,从而提高了纠错性能。
在一种可能的设计中,X=(Y*K2)/N1。
在一种可能的设计中,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
在一种可能的设计中,当X大于或等于2时,所述每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。可选的,当X大于或等于2时,所述每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。这样可以实现在通信链路上传输的任意相邻两个符号属于不同的RS外码和RS内码,从而实现将出错的符号分散在不同RS外码和RS内码中,提高解码的性能。
在一种可能的设计中,对所述Y个RS内码中的每个RS内码进行FEC解码,得到所述每个RS内码对应的K2个净荷符号;根据所述每个RS内码对应的K2个净荷符号确定X个RS外码。如此实现将解码的Y个RS内码转换成X个RS外码。
在一种可能的设计中,获取目标RS内码中发生错误的符号的位置,所述目标RS内码为所述Y个RS内码中的任一个RS内码;根据所述目标RS内码中发生错误的符号的位置,对所述目标RS内码包括的N2个符号进行FEC解码,得到所述目标RS内码对应的K2个净荷符号。其中,根据发生错误的符号的位置,可以增加RS内码中的纠错的符号数目,从而进一步提高纠错性能。
在一种可能的设计中,针对X个RS外码中的每个RS外码包括的每一个符号,根据所述符号所在的RS内码的编号h和所述符号在所述第h个RS内码中的编号c,按如下第二公式确定所述符号属于的RS外码的编号j和所述符号在第j个RS外码中的编号i,h=0、1、……、Y-1,c=0、1、……、K2-1;
第二公式为:j=(h*K2+c)MODX,i=floor((h*K2+c)/X),其中,floor为向下取整运算,MOD为取余运算。如此实现将解码的Y个RS内码转换成X个RS外码。
可选的,获取目标RS外码中发生错误的符号的位置,所述目标RS外码是所述X个RS外码中的任一个RS外码;根据所述目标RS外码中发生错误的符号的位置,对所述目标RS外码进行FEC解码得到所述目标RS外码对应的K1个净荷符号。其中,根据发生错误的符号的位置,可以增加RS外码中的纠错的符号数目,从而进一步提高纠错性能。
在一种可能的设计中,所述符号包括多个段,在检测出所述符号中存在段的信号幅度不在预设幅度范围内或检测出所述符号中存在段的取值不在预设数值集合内,则确定所述符号为发生错误的符号,预设数值集合包括多个预设数值。由于获取到出错的符号,这样在解码时可以引入出错的符号的位置,以提升纠错性能。
在一种可能的设计中,通过L条通信链路接收符号,L=1、2、3、……;根据接收的每个符号和所述每个符号的接收顺序确定第0至第Y-1个RS内码包括的符号,从而实现接收Y个RS内码。
第三方面,本申请实施例提供了一种编码装置,用于执行第一方面或第一方面的任意一种可能的实现方式中的方法。具体地,所述装置包括用于执行第一方面或第一方面的任意一种可能的实现方式中的方法的单元。
第四方面,本申请实施例提供了一种解码装置,用于执行第二方面或第二方面的任意一种可能的实现方式中的方法。具体地,所述装置包括用于执行第二方面或第二方面的任意一种可能的实现方式中的方法的单元。
第五方面,本申请实施例提供了另一种编码装置,所述装置包括:至少一个处理器,至少一个存储器和至少一个收发器,所述至少一个处理器通过总线与所述至少一个存储器和至少一个收发器连接;所述至少一个存储器存储有一个或多个程序,所述一个或多个程序被配置成由所述至少一个处理器执行,所述一个或多个程序包含用于执行第一方面或第一方面的任意一种可能的实现方式的方法的指令。
第六方面,本申请实施例提供了另一种解码装置,所述装置包括:至少一个处理器,至少一个存储器和至少一个收发器,所述至少一个处理器通过总线与所述至少一个存储器和至少一个收发器连接;所述至少一个存储器存储有一个或多个程序,所述一个或多个程序被配置成由所述至少一个处理器执行,所述一个或多个程序包含用于执行第二方面或第二方面的任意一种可能的实现方式中的方法的指令。
第七方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
第八方面,本申请提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面的方法。
第九方面,本申请实施例提供了一种芯片,所述芯片包括可编程逻辑电路和/或程序指令,当所述芯片运行时用于实现上述第一方面、第二方面、第一方面的任意可能的实现方式或第二方面的任意可能的实现方式中的方法。
第十方面,本申请实施例提供了一种编解码系统,所述系统包括第三方面所述的装置和第四方面所述的装置,或,第五方面所述的装置和第六方面所述的装置。
附图说明
图1是本申请实施例提供的一种交换设备的结构示意图;
图2是本申请实施例提供的一种编码方法流程图;
图3是本申请实施例提供的另一种编码方法流程图;
图4是本申请实施例提供的第一RS外码结构示意图;
图5是本申请实施例提供的第一RS外码和第二RS外码结构示意图;
图6是本申请实施例提供的第一RS外码、第二RS外码、第三RS外码和第四RS外码结构示意图
图7是本申请实施例提供的17个RS内码包括的净荷符号示意图;
图8是本申请实施例提供的34个RS内码包括的净荷符号示意图;
图9是本申请实施例提供的68个RS内码包括的净荷符号示意图;
图10是本申请实施例提供的17个RS内码示意图;
图11是本申请实施例提供的34个RS内码示意图;
图12是本申请实施例提供的68个RS内码示意图;
图13是本申请实施例提供的一种解码方法流程图;
图14是本申请实施例提供的另一种解码方法流程图;
图15是本申请实施例提供的一种编码装置结构图;
图16是本申请实施例提供的一种解码装置结构图;
图17是本申请实施例提供的另一种编码装置结构图;
图18是本申请实施例提供的另一种解码装置结构图;
图19是本申请实施例提供的一种编解码系统结构图。
具体实施方式
下面将结合附图对本申请实施方式作进一步地详细描述。
参见图1,本申请实施例提供了一种交换设备,该交换设备可以为路由器或交换机等,包括:
背板1和多个线卡2,该多个线卡2通过背板1连接。
交换设备部署在通信网络中,该多个线卡2中的每个线卡2与通信网络连接,该线卡2可以接收来自通信网络中的某个设备发送的数据比特流,将该数据比特流转换成至少一个符号,每个符号的长度相等且包括多个比特,通过背板1向另一个线卡2发送该至少一个符号,该另一个线卡2接收该至少一个符号,再将该至少一个符号转换成数据比特流,向通信网络中的其他设备转发该数据比特流。
可选的,每个线卡2可以通过背板连接器3连接至背板1上。
线卡2中可以包括PCB21、通信端口22和至少一个芯片23,该至少一个芯片23部署在PCB21上,每个芯片23可以通过PCB21内的PCB走线与通信端口22连接以及通过PCB21内的PCB走线与背板连接器3连接,每个背板连接器3与背板1内的PCB走线连接。
这样对于某个线卡2,为了便于说明称为第一线卡,第一线卡中的芯片23通过通信端口22接收来自通信网络中的某个设备发送的数据比特流,如果需要向另一线卡2发送该数据比特流,为了便于说明称该另一线卡2为第二线卡。在向第二线卡发送该数据比特流时,将该数据比特流转换成至少一个符号,对转换的符号进行前向纠错(forward errorcorrection,FEC)编码,在第一线卡的PCB21中的PCB走线上发送编码的符号,该编码的符号经过第一线卡的PCB21上的PCB走线,与第一线卡连接的背板连接器3,背板1中的PCB走线、与第二线卡连接的背板连接器和第二线卡内的PCB走线,然后被第二线卡内的芯片23从第二线卡内的PCB走线上接收。第二线卡内的芯片23对接收的符号进行FEC解码,将解码的符号转换为数据比特流,通过第二线卡的通信端口22向通信网络中的其他设备转发该数据比特流。
示例地,第一线卡中的芯片23可以包括至少一个外码编码器和至少一个内码编码器,通过该至少一个外码编码器和至少一个内码编码器对转换的符号进行FEC编码。第二线卡的芯片23可以包括至少一个外码解码器和至少一个内码解码器,通过该至少一个外码解码器和至少一个内码解码器对接收的符号进行FEC解码。对于第一线卡中的芯片23编码的详细过程和第二线卡中的芯片23解码的详细过程可以参见如下实施例的描述,在此不再详细说明。
参见图2和图3,本申请实施例提供了一种编码方法,该方法可以应用于发送端中,例如可以应用于图1所示的交换设备中,发送端可以为该交换设备中的任一线卡或该线卡上的芯片。该方法包括:
步骤201:接收数据比特流。
发送端可以通过通信接口从通信网线中接收数据比特流,该数据比特流可以由多个比特组成。
步骤202:对该数据比特流进行FEC编码得到X个RS外码,该X个RS外码中的每个RS外码包括N1个符号,该N1个符号中的K1个符号为净荷符号,N1>K1,N1和K1为大于1的整数,X均为大于0的整数。
其中,N1可以称为外码长度,K1可以称为外码信息长度,该X个RS外码中的每个RS外码均可以表示为RS(N1,K1)。
在本步骤中,根据外码长度N1和外码信息长度K1对该数据比特流进行FEC编码得到X个RS外码。可选的,可以通过如下2021至2023的操作对该数据比特流进行FEC编码得到X个RS外码,分别为:
2021:对该数据比特流进行划分得到至少一个净荷符号,每个净荷符号包括m个比特,m为大于1的整数。
m的取值可以为6、8或10等数值。数据比特流由连续的多个比特组成,可以根据该数据比特流中的每个比特的顺序将该数据比特流划分成至少一个净荷符号。例如,可以将该数据比特流中的第一个比特至第m个比特划分成第一个净荷符号,将第m+1个比特至第2m个比特划分成第二个净荷符号,第2m+1个比特至第3m个比特划分成第三个净荷符号……。
由于发送端可能会持续地从通信网络接收数据比特流,因此在本步骤中可能持续地得到净荷符号。
2022:每当得到K1个净荷符号时,将得到的K1个净荷符号组成一个符号集合。
例如,将得到的第一个净荷符号至第K1个净荷符号组成第一个符号集合,将得到的第K1+1个净荷符号至第2*K1个净荷符号组成第二个符号集合,将得到的第2*K1+1个净荷符号至第3*K1个净荷符号组成第三个符号集合,……。其中,*为乘法运算。
可选的,每当组成X个符号集合时,可以按如下2023的操作对该X个符号集合进行FEC编码。
可选的,当发送端在某时刻接收完数据比特流,且当前未编码的符号集合数目少于X个,此时可以根据预设比特得到净荷符号,得到的净荷符号包括的比特均为预设比特,且每当得到K1个净荷符号,将得到的K1个净荷符号组成一个符号集合,直至得到X个未编码的符号集合时停止。
预设比特可以为0或1。
2023:每当组成X个符号集合时,对X个符号集合进行FEC编码得到X个RS外码。
可选的,发送端可以包括一个或多个外码编码器。可选的,发送端为线卡或线卡上的芯片,该外码编码器可以为RS FEC外码编码器。
对于每个外码编码器,该外码编码器在进行一次FEC编码时,可以对K1个净荷符号进行FEC编码得到一个RS外码,该RS外码包括N1个符号。该RS外码包括的前K1个符号可以为该K1个净荷符号,该RS外码包括的后N1-K1个符号可以为冗余符号。该N1-K1个冗余符号为该外码编码器在对该K1个净荷符号进行编码时生成的。该N1-K1个冗余符号用于对出错的符号进行纠错,该出错的符号是在传输该K1个净荷符号的过程出现的错误的符号。
在本步骤中,当发送端包括一个外码编码器,可以根据外码长度N1和外码信息长度K1,对一个符号集合中的K1个净荷符号进行FEC编码得到一个RS外码。重复上述过程直至通过该外码编码器对最后一个符号集合进行FEC编码得到RS外码,从而得到X个RS外码。
例如,发送端可以根据外码长度N1和外码信息长度K1对第一个符号集合中的K1个净荷符号进行FEC编码得到一个RS外码;根据外码长度N1和外码信息长度K1对第二个符号集合中的K1个净荷符号进行FEC编码得到一个RS外码;……;根据外码长度N1和外码信息长度K1对第X个符号集合中的K1个符号进行FEC编码得到一个RS外码,从而得到X个RS外码。
当发送端包括多个外码编码器,可以通过该多外码编码器对多个符号集合中的K1个净荷符号进行FEC编码得到多个RS外码。
外码编码器数目可以等于X,也可以小于X。当外码编码器数目小于X时,分多次编码,直至得到X个RS外码时为止。
例如,在本步骤中,X的取值为1,N1的取值为544,K1的取值为514,即存在1个符号集合,该符号集合包括514个净荷符号。可以通过一个外码编码器对该符号集合包括的514个净荷符号进行FEC编码,得到第一RS外码,第一RS外码包括544个符号,第一RS外码中的前514个符号可以为该514个净荷符号,第一RS外码中的后30个符号为该外码编码器生成的冗余符号。参见图4,上述第一RS外码包括的544个符号可以分别表示为C0,0、C0,1、……、C0,543。
再例如,在本步骤中,X的取值为2,N1的取值为544,K1的取值为514,即存在2个符号集合,每个符号集合包括514个净荷符号,该2个符号集合分别为第一符号集合和第二符号集合,假设发送端包括第一外码编码器和第二外码编码器。可以通过第一外码编码器对第一符号集合包括的514个净荷符号进行FEC编码,得到第一RS外码,第一RS外码中的前514个符号可以为该514个净荷符号,第一RS外码中的后30个符号为第一外码编码器生成的冗余符号;可以通过第二外码编码器对第二符号集合包括的514个净荷符号进行FEC编码,得到第二RS外码,第二RS外码中的前514个符号可以为该514个净荷符号,第二RS外码中的后30个符号为第二外码编码器生成的冗余符号。参见图5,上述第一RS外码包括的544个符号可以分别表示为C0,0、C0,1、……、C0,543。上述第二RS外码包括的544个符号可以分别表示为C1,0、C1,1、……、C1,543。
还例如,在本步骤中,X的取值为4,N1的取值为544,K1的取值为514,即存在4个符号集合,每个符号集合包括514个净荷符号,该4个符号集合分别为第一符号集合、第二符号集合、第三符号集合和第四符号集合,假设发送端包括第一外码编码器和第二外码编码器。可以通过第一外码编码器对第一符号集合包括的514个净荷符号进行FEC编码,得到第一RS外码,第一RS外码中的前514个符号可以为该514个净荷符号,第一RS外码中的后30个符号为第一外码编码器生成的冗余符号。可以通过第二外码编码器对第二符号集合包括的514个净荷符号FEC进行FEC编码,得到第二RS外码,第二RS外码中的前514个符号可以为该514个净荷符号,第二RS外码中的后30个符号为第二外码编码器生成的冗余符号。继续通过第一外码编码器对第三符号集合包括的514个净荷符号进行FEC编码,得到第三RS外码,第三RS外码中的前514个符号可以为该514个净荷符号,第三RS外码中的后30个符号为第一外码编码器生成的冗余符号。可以通过第二外码编码器对第四符号集合包括的514个净荷符号进行FEC编码,得到第四RS外码,第四RS外码中的前514个符号可以为该514个净荷符号,第四RS外码中的后30个符号为第二外码编码器生成的冗余符号。参见图6,上述第一RS外码包括的544个符号可以分别表示为C0,0、C0,1、……、C0,543。上述第二RS外码包括的544个符号可以分别表示为C1,0、C1,1、……、C1,543。上述第三RS外码包括的544个符号可以分别表示为C2,0、C2,1、……、C2,543。上述第四RS外码包括的544个符号可以分别表示为C3,0、C3,1、……、C3,543。
步骤203:对该X个RS外码进行FEC编码得到Y个RS内码,该Y个RS内码中的每个RS内码包括N2个符号,该N2个符号中的K2符号为净荷符号,N2>K2,N2和K2为大于0的整数,Y为大于1的整数。
其中,N2可以称为内码长度,K2可以称为内码信息长度,该Y个RS内码中的每个RS内码均可以表示为RS(N2,K2)。
在一种可能的设计中,Y=(X*N1)/K2。
可选的,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
在本步骤中,根据内码长度N2和内码信息长度K2对该X个RS外码进行FEC编码得到Y个RS内码。可选的,可以通过如下2031-2032的操作对该X个RS外码进行FEC编码得到Y个RS内码。
2031:针对Y个RS内码中的每个RS内码,确定该RS内码包括的K2个净荷符号。
可选的,当X大于或等于2时,每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。以及当X大于或等于2时,每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。
可选的,针对Y个RS内码中的每个RS内码包括的K2个净荷符号中的每一个净荷符号,根据该净荷符号所在的RS外码的编号j和该净荷符号在第j个RS外码中的编号i,按如下第一公式确定该净荷符号属于的RS内码的编号h和该净荷符号在第h个RS内码中的编号c,j=0、1、……、X-1,i=0、1、……、N1-1;
第一公式为:h=floor((i*X+j)/K2),c=(i*X+j)MODK2,其中,在第一公式中,floor为向下取整运算,例如,floor(2.6)=2,floor(3.1)=3;MOD为取余运算,例如5MOD2=1,15MOD4=3,*为乘法运算。
通过上述第一公式,可以得到该X个RS外码包括的X*N1个符号中的每个符号属于的RS内码的编号和在该RS内码中的编号,从得到Y个RS内码中的每个RS内码包括的K2个净荷符号。
可选的,在X=1时,通过上述第一公式将一个RS外码包括的N1个符号转换成Y个RS内码包括的净荷符号,Y=N1/K2,第0个RS内码包括的K2个净荷符号为该RS外码的第0至第K2-1个符号,第1个RS内码包括的K2个净荷符号为该RS外码的第K2至第2*K2-1个符号,……,第Y-1个RS内码包括的K2个净荷符号为该RS外码的第(Y-1)*K2至第Y*K2-1个符号。
在X大于或等于2时,通过上述第一公式将X个RS外码包括的X*N1个符号转换成Y个RS内码包括的净荷符号,Y=(X*N1)/K2,此时每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。以及当X大于或等于2时,每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。
例如,对于图4所示的第一RS外码,第一RS外码的编号为0。第一RS外码包括的符号C0,0、C0,1、……、C0,543的编号分别为0、1、……、543。假设内码长度为34以及内码信息长度为32,这样对于第一RS外码中的编号为0的符号C0,0,根据该符号C0,0所在的第一RS外码的编号0和在第一RS外码中的编号0,按上述第一公式计算出该符号C0,0所在的RS内码的编号为0和在第0个RS内码中的编号也为0。对于第一RS外码中的编号为1的符号C0,1,根据该符号C0,1所在的第一RS外码的编号0和在第一RS外码中的编号1,按上述第一公式计算出该符号C0,1所在的RS内码的编号为0和在第0个RS内码中的编号为1。对于第一RS外码中的编号为2的符号C0,2,根据该符号C0,2所在的第一RS外码的编号0和在第一RS外码中的编号2,按上述第一公式计算出该符号C0,2所在的RS内码的编号为0和在第0个RS内码中的编号为2。重复上述过程,直到第一RS外码中的编号为543的符号C0,543,根据该符号C0,543所在的第一RS外码的编号0和在第一RS外码中的编号543,按上述第一公式计算出该符号C0,543所在的RS内码的编号为16和在第16个RS内码中的编号为31。其中,参见图7所示的17个RS内码包括的净荷符号。图7所示的每行为一个RS内码的净荷符号,每行包括的32个净荷符号。其中,需要说明的是:在具体实现过程中,可能会存在如图7所示的矩阵,也可能不存在图7所示的矩阵;在不存在图7所示的矩阵时,每当确定出属于该RS内码的一个净荷符号时,就会执行如下2032的操作对该净荷符号进行FEC编码,当确定出该RS内码的最后一个净荷符号时,对该最后一个净荷符号进行FEC编码,从而实现对该RS内码的K2个净荷符号进行FEC编码。其中对于如下列举的例子中出现的矩阵结构,和图7所示的含义相同,就不再一一说明。
再例如,对于图5所示的第一RS外码和第二RS外码,第一RS外码的编号为0,第二RS外码的编号为1。第一RS外码包括的符号C0,0、C0,1、……、C0,543的编号分别为0、1、……、543,第二RS外码包括的符号C1,0、C1,1、……、C1,543的编号分别为0、1、……、543。假设内码长度为34以及内码信息长度为32,这样对于第一RS外码中的编号为0的符号C0,0,根据该符号C0,0所在的第一RS外码的编号0和在第一RS外码中的编号0,按上述第一公式计算出该符号C0,0所在的RS内码的编号为0和在第0个RS内码中的编号也为0。对于第一RS外码中的编号为1的符号C0,1,根据该符号C0,1所在的第一RS外码的编号0和在第一RS外码中的编号1,按上述第一公式计算出该符号C0,1所在的RS内码的编号为0和在第0个RS内码的编号为2。对于第一RS外码中的编号为2的符号C0,2,根据该符号C0,2所在的第一RS外码的编号0和在第一RS外码中的编号2,按上述第一公式计算出该符号C0,2所在的RS内码的编号为0和在第0个RS内码中的编号为4。重复上述过程,直到对于第二RS外码中的编号为543的符号C1,543,根据该符号C1,543所在的第二RS外码的编号1和在第二RS外码中的编号543,按上述第一公式计算出该符号C1,543所在的RS内码的编号为33和在第33个RS内码中的编号为31,从而得到如图8所示34个RS内码包括的净荷符号。图8所示的每行为一个RS内码的净荷符号,每行包括的32个净荷符号。
在图8所示的例子中,X=2,每个RS内码中任意两个相邻的净荷符号属于不同的RS外码,每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号,即间隔1个符号。例如,图8中的净荷符号C0,0和C1,0是第0个RS内码中的两个相邻的净荷符号,净荷符号C0,0属于第一RS外码,净荷符号C1,0属于第二RS外码。在第0个RS内码中净荷符号C0,0和净荷符号C0,1是相邻的属于第一RS外码的净荷符号,净荷符号C0,0和净荷符号C0,1之间间隔1个符号。
还例如,对于图6所示的第一RS外码、第二RS外码、第三RS外码和第四RS外码,第一RS外码的编号为0,第二RS外码的编号为1、第三RS外码的编号为2、第四RS外码的编号为3。第一RS外码包括的符号C0,0、C0,1、……、C0,543的编号分别为0、1、……、543,第二RS外码包括的符号C1,0、C1,1、……、C1,543的编号分别为0、1、……、543,第三RS外码包括的符号C2,0、C2,1、……、C2,543的编号分别为0、1、……、543,第四RS外码包括的符号C3,0、C3,1、……、C3,543的编号分别为0、1、……、543。假设内码长度为34以及内码信息长度为32,这样对于第一RS外码中的编号为0的符号C0,0,根据该符号C0,0所在的第一RS外码的编号0和在第一RS外码中的编号0,按上述第一公式计算出该符号C0,0所在的RS内码的编号为0和在第0个RS内码中的编号也为0。对于第一RS外码中的编号为1的符号C0,1,根据该符号C0,1所在的第一RS外码的编号0和在第一RS外码中的编号1,按上述第一公式计算出该符号C0,1所在的RS内码的编号为0和在第0个RS内码中的编号为4。对于第一RS外码中的编号为2的符号C0,2,根据该符号C0,2所在的第一RS外码的编号0和在第一RS外码中的编号2,按上述第一公式计算出该符号C0,2所在的RS内码的编号为0和在第0个RS内码中的编号为8。重复上述过程,直到对于第四RS外码中的编号为543的符号C3,543,根据该符号C3,543所在的第四RS外码的编号3和在第四RS外码中的编号543,按上述第一公式计算出该符号C3,543所在的RS内码的编号为67和在第67个RS内码中的编号为31,从而得到如图9所示68个RS内码包括的净荷符号。图9所示的每行为一个RS内码的净荷符号,每行包括的32个净荷符号。
2032:对于每个RS内码,对该RS内码包括的K2净荷符号进行FEC编码,得到包括N2符号的RS内码。
可选的,发送端可以包括一个或多个内码编码器。可选的,该内码编码器可以为RSFEC内码编码器。
对于每个内码编码器,该内码编码器在进行一次FEC编码时,可以对K2个净荷符号进行FEC编码得到一个RS内码,该RS内码包括N2个符号。该RS内码包括的前K2个符号可以为该K2个净荷符号,该RS内码包括的后N2-K2个符号为冗余符号。该N2-K2个冗余符号为该内码编码器在对该K2个净荷符号进行编码时生成的。该N2-K2个冗余符号用于对出错的符号进行纠错,该出错的符号是在传输该K2个净荷符号的过程出现错误的符号。
在本步骤中,当发送端包括一个内码编码器,通过该内码编码器分别对每个RS内码包括的K2净荷符号进行FEC编码得到每个RS内码。
例如,内码长度N2的取值为34和内码信息长度K2的取值为32,对于图7所示的17个RS内码包括的32个净荷符号,可以通过一个内码编码器对第0个RS内码中的32个净荷符号进行FEC编码得到第0个RS内码,第0个RS内码包括的前32个符号可以为该32个净荷符号,第0个RS内码包括的后2个符号为在编码过程中生成的冗余符号,分别为P0,0和P1,1;继续通过该一个内码编码器对第1个RS内码包括的32个净荷符号进行FEC编码得到第1个RS内码;……;通过该一个内码编码器对第16个RS内码包括的32个净荷符号进行FEC编码得到第16个RS内码,从而得到如图10所示的17个RS内码,图10所示的每行为一个RS内码,每行包括34个符号。
当发送端包括多个内码编码器,将多个RS内码包括的净荷符号分别输入到该多个内码编码器中,通过该多个内码编码器中的每个内码编码器对RS内码包括的K2个净荷符号进行FEC编码得到一个RS内码。
发送端中的内码编码器数目可以等于Y,也可以小于Y。当内码编码器数目小于Y时,可以重复上述过程,直至得到Y个RS内码时为止。
例如,内码长度N2的取值为34和内码信息长度K2的取值为32,以及假设发送端包括17个内码编码器,对于图7所示的17个RS内码包括的净荷符号,通过该17个内码编码器对该17个RS内码包括的32个净荷符号进行FEC编码,得到17个RS内码,该17个RS内码如图10所示,图10所示的每行为一个RS内码,每行包括34个符号。
再例如,对于图8所示的34个RS内码包括的净荷符号,在得到第0至第16个RS内码包括的净荷符号时,通过该17个内码编码器对第0至第16个RS内码包括的净荷符号进行FEC编码,得到第0至第16个RS内码;在得到第17至第33个RS内码包括的净荷符号时,继续通过该17个内码编码器对第17至第33个RS内码包括的净荷符号进行FEC编码,得到第17至第33个RS内码,从而得到34个RS内码,该34个RS内码如图11所示,图11所示的每行为一个RS内码,每行包括34个符号。
还例如,对于图9所示的68个RS内码包括的净荷符号,在得到第0至第16个RS内码包括的净荷符号时,通过该17个内码编码器对第0至第16个RS内码包括的净荷符号进行FEC编码,得到第0至第16个RS内码;在得到第17至第33个RS内码包括的净荷符号,继续通过该17个内码编码器对第17至第33个RS内码包括的净荷符号进行FEC编码,得到第17至第33个RS内码;在得到第34至第50个RS内码包括的净荷符号时,继续通过该17个内码编码器对第34至第50个RS内码包括的净荷符号进行FEC编码,得到第34至第50个RS内码;在得到第51至第67个RS内码包括的净荷符号时,继续通过该17个内码编码器对第51至第67个RS内码包括的净荷符号进行FEC编码,得到第51至第67个RS内码,从而得到68个RS内码,该68个RS内码如图12所示,图12所示的每行为一个RS内码,每行包括34个符号。
步骤204:通过L条通信链路发送编码后的Y个RS内码包括的Y*N2个符号,L为大于或等于1的整数。
该L条通信链路是发送端与接收端之间的通信链路。该通信链路可以为发送端与接收端之间的物理链路,该物理链路可以为PCB走线等。
在X为大于1的整数时,针对同一条通信链路发送的符号,任意两个相邻符号属于不同的RS内码,任意两个相邻的属于相同RS内码的符号中间间隔D-1个符号,D为预设整数,D大于1,且D<Y。其中,D可以称为交织深度。
在X为大于1的整数时,针对同一条通信链路发送的符号,任意两个相邻符号属于不同的RS外码。
在通信链路上传输符号的过程中,当符号出错时,通常会导致连续多个符号出现错误,由于通信链路中传输的相邻两个符号属于不同的RS外码和RS内码,这样可以将出现错误的符号分散到不同的RS外码和RS内码,从而减小了在同一个RS外码和RS内码中出现错误的符号数目,在接收端解码时可以提高纠错的性能。
可选的,在X=1时,本步骤可以通过如下方式发送该Y*N2个符号,可以为:形成至少一个子块,每个子块包括连续的D个RS内码,例如,第0个子块包括第0至第D-1个RS内码,第1个子块包括第D至第2*D-1个RS内码。从第n个子块中选择L个集合,每个集合包括编号相同的D个符号,通过该L条通信链路分别发送该L个集合,n=0、1、2、3……。
可选的,Y可以是D的整数倍,或者,Y也可以不是D的整数倍。
在Y是D的整数倍的情况下,可以直接将产生的Y个RS内码形成S个子块,S=Y/D。在Y不是D的整数倍的情况下,可以先从该Y个RS内码中形成S个子块,S是能够从该Y个RS内码中形成子块的最大数目,即将前D*S个RS内码形成第0至第S-1个子块,对于该剩余的Q个RS内码,该Q个RS内码为该第D*S个RS内码至第Y-1个RS内码,按上述步骤202至203的操作重新得到Y个RS内码,将该Q个RS内码和重新得到的Y个RS内码中的前D-Q个RS内码形成第S个子块。
例如,假设D=9,对于图10所述的17个RS内码,将图10所示的前9个RS内码形成第0个子块,对于图10所示的剩余8个RS内码,在重新得到17个RS内码后,将剩余的8个RS内码和重新得到的17个RS内码中的第0个RS内码形成第1个子块。继续按上述操作不断地形成子块。
可选的,在L=1时,从第0个子块中获取一个集合,该集合包括编号均为0的D个符号,在该条通信链路上发送该集合;从第0个子块中获取一个集合,该集合包括编号均为1的D个符号,在该条通信链路上发送该集合包括的D个符号,……,从第0个子块中获取一个集合,该集合包括编号均为N2的D个符号,在该条通信链路上发送该集合包括的D个符号。按上述方式发送第1个子块、第2个子块、第3个子块……。
在L大于1时,可以从第0个子块中获取L个集合,第0个集合包括编号均为0的D个符号,第1个集合包括编号均为1的D个符号,……,第L-1个集合包括编号均为L-1的D个符号,确定该L个集合中的每个集合对应的一条通信链路,在每个集合对应的一条通信链路上分别发送每个集合包括的D个符号。例如,第0个集合、第1个集合、……、第L-1个集合分别对应第0条通信链路、第1条通信链路、……、第L-1条通信链路,在第0条通信链路、第1条通信链路、……、第L-1条通信链路分别发送第0个集合包括的D个符号、第1个集合包括的D个符号、……、第L-1个集合包括的D个符号。
然后再从第0个子块中获取L个集合,第0个集合包括编号均为L的D个符号,第1个集合包括编号均为L+1的D个符号,……,第L-1个集合包括编号均为2*L-1的D个符号,确定该L个集合中的每个集合对应的一条通信链路,在每个集合对应的一条通信链路上分别发送每个集合包括的D个符号。例如,第0个集合、第1个集合、……、第L-1个集合分别对应第0条通信链路、第1条通信链路、……、第L-1条通信链路,在第0条通信链路、第1条通信链路、……、第L-1条通信链路分别发送第0个集合包括的D个符号、第1个集合包括的D个符号、……、第L-1个集合包括的D个符号。重复上述过程发送完第0个子块。且在发送完第0个块后,再继续按上述过程发送第1个子块、第2个子块、第3个子块……、可选的,在X大于1时,在本步骤中,可以通过如下2041至2045的步骤来发送Y个RS内码包括的Y*N2个符号,分别为:
2041:形成至少一个子块,每个子块包括D个RS内码。
可选的,Y可以是D的整数倍,或者,Y也可以不是D的整数倍。
可选的,D大于X,D的取值可以等于a*X+1,a为大于0的整数。
例如,假设D=9,对于图11所述的34个RS内码,将图11所示的第0至第8个RS内码形成第0个子块,将图11所示的第9至第17个RS内码形成第1个子块,将图11所示的第18至第26个RS内码形成第2个子块;对于图11所示的剩余7个RS内码,在重新得到图11所示的Y个RS内码后,将剩余的7个RS内码和重新得到的Y个RS内码中的第0至第1个RS内码形成第3个子块。继续按上述操作不断地形成子块。
可选的,在L=1时,从第0个子块中获取一个集合,该集合包括编号均为0的D个符号,在该条通信链路上发送该集合包括的D个符号;从第0个子块中获取一个集合,该集合包括编号均为1的D个符号,在该条通信链路上发送该集合包括的D个符号,……,从第0个子块中获取一个集合,该集合包括编号均为N2-1的D个符号,在该条通信链路上发送该集合包括的D个符号,如此发送完第0个子块。按上述方式继续发送第1个子块、第2个子块、第3个子块……。
例如,假设D=9,图11中的第0至第8个RS内码组成第0个子块,从第0个子块中获取一个集合,该集合包括编号相同的9个符号,该9个符号为C0,0、C1,16、C0,32、C1,48、C0,64、C1,80、C0,96、C1,112、C0,128。在该通信链路上依次发送符号C0,0、C1,16、C0,32、C1,48、C0,64、C1,80、C0,96、C1,112、C0,128。再从第0个子块中获取一个集合,该集合包括编号相同的9个符号,该9个符号为C1,0、C0,16、C1,32、C0,48、C1,64、C0,80、C1,96、C0,112、C1,128。在该通信链路上依次发送符号C1,0、C0,16、C1,32、C0,48、C1,64、C0,80、C1,96、C0,112、C1,128。按上述方式继续发送,直至发送完第0个子块。
在该例子中,在该条通信链路发送的符号中,任意两个相邻符号属于不同的RS内码,任意两个相邻的属于相同RS内码的符号中间间隔D-1个符号,即间隔8个符号。例如,在该条通信链路发送的符号C0,0和C1,16为相邻两个符号,但符号C0,0和C1,16分别属于第0个RS内码和第1个RS内码,以及在该条通信链路发送的符号C0,0和C1,0属于第0个RS内码,且符号C0,0和C1,0之间间隔8个符号。
在L大于1时,可以通过如下2042至2045的步骤发送符号。
2042:从第0个子块中获取L个集合,每个集合包括编号相同的D个符号,通过该L条通信链路发送该L个集合包括的符号。
可以从第0个子块中获取L个集合,第0个集合包括编号均为0的D个符号,第1个集合包括编号均为1的D个符号,……,第L-1个集合包括编号均为L-1的D个符号,确定该L个集合中的每个集合对应的一条通信链路,在每个集合对应的一条通信链路上分别发送每个集合包括的D个符号。
可选的,在本步骤中,每个子块可以是D个RS内码组成的矩阵,该矩阵包括D行N2列的符号,每列包括编号相同的D个符号。假设第0个子块包括的N2列,该N2列分别为B0、B1、B2、……、BN2,每列为一个集合。从第0个子块中获取L个集合,该L个集合分别为第0个集合、第1个集合、……、第L-1个集合,第0个集合、第1个集合、……、第L-1个集合分别为第0列符号B0、第1列符号B1、……、第L-1列符号BL-1。第0个集合、第1个集合、……、第L-1个集合分别对应第0条通信链路、第1条通信链路、……、第L-1条通信链路,在第0条通信链路、第1条通信链路、……、第L-1条通信链路分别发送第0个集合B0、第1个集合B1、……、第L-1个集合BL-1。
假设,L等于4,从第0个子块中获取第0个集合B0、第1个集合B1、第2个集合B2、第3个集合B3,确定第0个集合B0、第1个集合B1、第2个集合B2、第3个集合B3分别对应第0条通信链路、第1条通信链路、第2条通信链路、第3条通信链路,在第0条通信链路、第1条通信链路、第2条通信链路、第3条通信链路分别发送第0个集合B0、第1个集合B1、第2个集合B2、第3个集合B3。
2043:从第n个子块剩余的符号中获取L个集合,该L个集合中的每个集合包括编号相同的D个符号,n=0、1、2……。
从第0个子块剩余的符号中获取L个集合,该L个集合分别为第0个集合、第1个集合、……、第L-1个集合,第0个集合包括编号均为L的D个符号,第1个集合包括编号均为L+1的D个符号,……,第L-1个集合包括编号均为2*L-1的D个符号。例如在L等于4时,从第0个子块剩余的符号中获取4个集合,该4个集合分别为第0个集合、第1个集合、第2个集合和第3个集合,第0个集合、第1个集合、第2个集合和第3个集合分别为第4列符号B4、第5列符号B5、第6列符号B6和第7列符号B7。
2044:确定该L个集合中的每个集合对应的通信链路,在该集合对应的通信链路上前一次发送的一个集合中的最后一个符号与该集合中的第一个符号属于不同的RS外码。
可选的,对于L大于1以及X大于1的情况,发送端和接收端可以事先约发送策略。发送策略有多种。在本步骤中列举了一种发送策略,对于其他的发送策略就不再一一列举。
该发送策略可以记录第L-1条通信链路上前一次发送的集合的序号z,这样在本步骤中,对于当前每个待发送的集合,可以将第z至第L-1个集合分别与第0至第L-z-1个通信链路相对应,以及将第0至第z-1个集合分别与第L-z至第L-1个通信链路相对应。
例如,前一次的四个集合分别为第0个集合B0、第1个集合B1、第2个集合B2和第3个集合B3;也就是说在第3条通信链路上前一次发送第3个集合B3,所以z=3。
在本步骤中的当前待发送的第0个集合、第1个集合、第2个集合和第3个集合分别为获取的B4、B5、B6、B7,这样可以将第3集合与第0条通信链路相对应,将第0至第2集合分别与第1至第3条通信链路相对应。
2045:在每个集合对应的通信链路上分别发送每个集合包括的D个符号。
可选的,在通信链路上发送集合时,由于每个集合包括D个符号,每个符号包括m个比特,在该集合对应的通信链路上发送该集合中的符号时,在该通信链路上从该集合包括的第一个符号的第一比特开始一个比特一个比特地发送。
例如,在第0条通信链路、第1条通信链路、第2条通信链路、第3条通信链路上分别发送待发送的第3个集合B7、第0个集合B4、第1个集合B5、第2个集合B3,记录z=2。
再例如,从第0个子块剩余的列中获取第0个集合、第1个集合、第2个集合和第3个集合,分别为第8列符号B8、第9列符号B9、第10列符号B10和第11列符号B11,也就是说当前待发送的第0个集合、第1个集合、第2个集合和第3个集合分别为第8列符号B8、第9列符号B9、第10列符号B10和第11列符号B11。将第2至第3个集合分别与第0至第1条通信链路相对应,将第0至第1个集合分别与第2至第3条通信链路相对应,在第0条通信链路、第1条通信链路、第2条通信链路、第3条通信链路上分别发送待发送的第2个集合B10、第3个集合B11、第0个集合B8、第1个集合B9,记录z=1。
还例如,从第0个子块剩余的列中获取第0个集合、第1个集合、第2个集合和第3个集合,分别为第12列符号B12、第13列符号B13、第14列符号B14和第15列符号B15,也就是说当前待发送的第0个集合、第1个集合、第2个集合和第3个集合分别为第12列符号B12、第13列符号B13、第14列符号B14和第15列符号B15。将第1至第3个集合分别与第0至第2条通信链路相对应,将第0个集合与第3条通信链路相对应,在第0条通信链路、第1条通信链路、第2条通信链路、第3条通信链路上分别发送待发送的第1个集合B13、第2个集合B14、第3个集合B15、第0个集合B12,记录z=0。
还例如,从第0个子块剩余的列中获取第0个集合、第1个集合、第2个集合和第3个集合,分别为第16列符号B16、第17列符号B17、第18列符号B18和第19列符号B19,也就是说当前待发送的第0个集合、第1个集合、第2个集合和第3个集合分别为第16列符号B16、第17列符号B17、第18列符号B18和第19列符号B19。将第0至第3个集合分别与第0至第3条通信链路相对应,在第0条通信链路、第1条通信链路、第2条通信链路、第3条通信链路上分别发送待发送的第0个集合B16、第1个集合B17、第2个集合B18、第3个集合B19,记录z=3。
在本申请实施例中,对X个符号集合进行FEC编码得到X个RS外码,对于每个RS外码,能够对该RS外码纠错小于或等于(N1-K1)/2个出错符号。对X个RS外码进行FEC编码得到Y个RS内码,对于每个RS内码,能够对该RS内码纠错小于或等于(N2-K2)/2个出错符号。由于在对数据比特流进行FEC编码得到多个RS外码后,还继续对该RS外码进行二次FEC编码得到RS内码,这样可以增加接收端解码时能够纠错的符号数目,从而提高了纠错性能。
参见图13和图14,本申请实施例提供了一种解码方法,该方法可以应用于接收端,例如可以应用于图1所示的交换设备中,接收端可以为该交换设备中的除发送端对应的线卡以外的任一其他线卡或该其他线卡上的芯片。该方法包括:
步骤301:通过L条通信链路接收Y个RS内码中包括的Y*N2个符号并获取接收该符号的接收顺序。
对于每条通信链路,从该条通信链路上进行一个比特一个比特的接收,每当接收到m个比特,将该m个比特组成一个符号。
可选的,接收端可以包括反馈判决均衡器(decision feedback equalizer,DFE)和非线性纠错(nonlinear error correction,NEC),可以通过DFE和NEC对接收的每个符号进行处理。其中,DFE和NEC在对接收的每个符号进行处理时,会获取出错的符号。
可选的,接收端还可以包括模拟信号数字信号转换器(analog to digitalconverter,ADC),可以对接收的每个符号分别经过ADC、DFE和NEC处理。
其中,接收的每个符号等长度且由多个比特组成,所以对于每个符号,可以将该符号划分成多个等长度的段,每个段包括位置连续的至少两个比特,每个段的取值为预设数值集合中的一个数值,每个段的信号幅度在预设幅度范围内。例如,假设每个符号包括8个比特,划分的每个段包括位置连续的两个比特,每个段的取值为0、1、2或3,所以预设数值集合包括0、1、2和3。预设幅度范围可以为大于或等于最大电平值且小于或等于最小电平值。
可选的,接收端在接收到一个符号时,接收端可以通过如下方式获取出错的符号:接收端将该符号划分成多个等长度的段,通过DFE获取每个段的信号幅度,通过NEC判断每个段的信号幅度是否在预设幅度范围内,如果某个段的信号幅度不在预设幅度范围中,则确定该符号出错。
可选的,接收端在接收到一个符号时,接收端可以通过如下方式获取出错的符号:接收端将该符号划分成多个等长度的段,通过DFE获取每个段的取值,通过NEC判断每个段的取值是否是预设数值集合中的数值,如果某个段的取值不是预设数值集合中的数值,则确定该符号出错。例如,假设符号包括8个比特,将该符号划分成4个段,获取该4个段中的每个段的取值,如果该4个段的取值中存在某个段的取值不是0、1、2或3,则确定该符号出错。
步骤302:根据接收的每个符号和每个符号的接收顺序生成Y个RS内码,每个RS内码包括N2个符号,该N2个符号中的K2符号为净荷符号,N2>K2。
发送端和接收端可以事先约定好发送符号的策略,这样在接收侧,接收端在接收每个符号时,获取每个符号的接收顺序,然后根据接收的每个符号的接收顺序形成RS内码。
可选的,每次可以形成D个RS内码,该D个RS内码可以形成包括D行N2列符号的矩阵,每行为一个RS内码,每列包括编号相同的D个符号。
其中N2可以称为内码长度,K2可以称为内码信息长度,该Y个RS内码中的每个RS内码均可以表示为RS(N2,K2)。
可选的,在L=1时,即发送端和接收端之间只有一条通信链路,在本步骤中,首先从该条通信链路中接收D个符号,D为大于1的整数,将D个符号作为第0列;然后从该条通信链路中接收D个符号,将该D个符号作为第1列;继续从该条通信链路中接收D个符号,将该D个符号作为第2列,重复上述过程直至得到第N2-1列,总共得到N2列符号,在该N2列符号中将每行作为一个RS内码,从而得到第0至第D-1个RS内码。
接下来继续从该条通信链路中接收D个符号,将D个符号作为第0列;继续从该条通信链路中接收D个符号,将该D个符号作为第1列;重复上述过程直至得到第N2-1列,总共得到N2列符号,将每行该N2个符号作为一个RS内码,从而得到第D至第2*D-1个RS内码,重复上述过程得到不同的RS内码。
可选的,在L大于1且X=1时,在本步骤中,首先从每条通信链路中接收D个符号,将每条通信链路上接收的D个符号作为第0列至第L-1列;然后从每条通信链路中接收D个符号,将每条通信链路上接收的D个符号作为第L至第2*L-1列;按上述方式继续从每条通信链路中接收D个符号,得到包括D行N2列符号的矩阵,将每行N2个符号作为一个RS内码,从而得到第0至第D-1个RS内码。重复上述过程得到不同的RS内码。
可选的,在L大于1且X大于1时,假设发送端和接收端事先约定的发送策略是上述步骤2044中列举的发送策略,在本步骤中,可以通过如下3021至3024的操作来实现,包括:
3021:首次从每条通信链路中接收D个符号,将每条通信链路上接收的D个符号作为第0列至第L-1列,设置z=1,z表示下一次接收的第0列符号所在的通信链路的编号。
例如,假设L=4,首次从第0条通信链路上接收D个符号得到一列符号B0,从第1条通信链路上接收D个符号得到一列符号B1,从第2条通信链路上接收D个符号得到一列符号B2,从第3条通信链路上接收D个符号得到一列符号B3,将该B0、B1、B2、B3分别作为矩阵的第0至第3列。
3022:从每条通信链路中接收D个符号,得到每条通信链路对应的一列符号。
例如,从第0条通信链路上接收D个符号得到一列符号B7,从第1条通信链路上接收D个符号得到一列符号B4,从第2条通信链路上接收D个符号得到一列符号B5,从第3条通信链路上接收D个符号得到一列符号B6。
3023:将第z条通信链路对应的一列符号至第L-1条通信链路对应的一列符号分别确定为第0至第L-z-1列,以及将第0条通信链路对应的一列符号至第z-1条通信链路对应的一列符号分别确定为第L-z至第L-1列。
例如,将第1条通信链路对应的一列符号B4,第2条通信链路对应的一列符号B5,第3条通信链路对应的一列符号B6分别确定为第0至第2列,将第0条通信链路对应的一列符号B7确定为第3列。
3024:将第0至第L-1列分别作为连续L列符号,在z小于L-1时,设置z=z+1,返回执行3022,在z=L-1时,设置z=0,返回执行3022。
基于上述过程,每当得到包括D行N2列符号的矩阵时,将每行N2个符号作为一个RS内码,从而得到第0至第D-1个RS内码。重复上述过程得到不同的RS内码。
例如,可以将第0列B4、第1列B5、第2列B6和第3列B7分别作为矩阵的第4至第7列,设置z=2。
接下来从第0条通信链路上接收D个符号得到一列符号B10,从第1条通信链路上接收D个符号得到一列符号B11,从第2条通信链路上接收D个符号得到一列符号B8,从第3条通信链路上接收D个符号得到一列符号B9。将第2条通信链路对应的一列符号B8,第3条通信链路对应的一列符号B9分别确定为第0至第1列,将第0条通信链路对应的一列符号B10,第1条通信链路对应的一列符号B11分别确定为第2至第3列。将第0列B8、第1列B9、第2列B10和第3列B11分别作为矩阵的第8至第11列,设置z=3。
接下来从第0条通信链路上接收D个符号得到一列符号B13,从第1条通信链路上接收D个符号得到一列符号B14,从第2条通信链路上接收D个符号得到一列符号B15,从第3条通信链路上接收D个符号得到一列符号B12。将第3条通信链路对应的一列符号B12确定为第0列,将第0条通信链路对应的一列符号B13,第1条通信链路对应的一列符号B14,第2条通信链路对应的一列符号B15分别确定为第1至第3列。将第0列B12、第1列B13、第2列B14和第3列B15分别作为矩阵的第12至第15列,设置z=0。
接下来从第0条通信链路上接收D个符号得到一列符号B16,从第1条通信链路上接收D个符号得到一列符号B17,从第2条通信链路上接收D个符号得到一列符号B18,从第3条通信链路上接收D个符号得到一列符号B19。将第0条通信链路对应的一列符号B16,第1条通信链路对应的一列符号B17,第2条通信链路对应的一列符号B18,第3条通信链路对应的一列符号B19分别确定为第0至第3列。将第0列B16、第1列B17、第2列B18和第3列B19分别作为矩阵的第16至第19列,设置z=1。
重复上述操作,继续得到矩阵的第20至33列,将矩阵包括的每行34个符号作为一个RS内码。
步骤303:对该Y个RS内码进行FEC解码得到X个RS外码,每个RS外码包括N1个符号,该N1个符号中的K1个符号为净荷符号,N1>K1
可选的,N1>K1>N2,X=(Y*K2)/N1。N1和K1为大于1的整数,X为大于0的整数。该X个RS外码中的每个外码均可以表示为RS(N1,K1)。
在本步骤中,根据内码长度N2和内码信息长度K2对该Y个RS内码进行FEC解码得到X个RS外码。可选的,可以通过如下3031和3032的步骤得到X个RS外码,分别为:
3031:对该Y个RS内码中的每个RS内码进行FEC解码,得到每个RS内码包括的K2个净荷符号。
可选的,接收端可以包括一个或多个内码解码器。可选的,该内码解码器可以为RSFEC内码解码器。
对于每个内码解码器,该内码解码器在进行一次解码时,可以对一个RS内码包括的N2个符号进行FEC解码得到K2个净荷符号。
在本步骤中,当接收端包括一个内码解码器,通过该内码解码器对一个RS内码中的N2个符号进行FEC解码得到K2个净荷符号。重复上述过程对不同的RS内码进行FEC解码,得到不同RS内码包括的K2个净荷符号。
当接收端包括多个内解编码器,通过该多个内码解码器中的每个内码解码器对RS内码包括的N2符号进行FEC解码,得到多个RS内码包括的K2个净荷符号。重复上述过程对不同的RS内码进行FEC解码,得到不同RS内码包括的K2个净荷符号。
其中对于每个RS内码,RS该内码的后N2-K2个符号是冗余符号,内码解码器可以根据该N2-K2个冗余符号纠错该RS内码中发生错误的符号,可以纠错的符号数目小于或等于(N2-K2)/2个。
可选的,在接收符号的过程中还可以获取发生错误的符号,在本步骤中,由于已获取发生错误的符号,这样对于每个RS内码,可以获知该RS内码中的哪些符号为出错的符号,获取出错的符号在该RS内码中的位置,可以根据错误的符号的位置、对该RS内码进行FEC解码,引入出错的符号的位置后,内码解码器纠错该RS内码中发生错误的符号数目可以小于或等于N2-K2,从而提高了纠错性能。
对于每个RS内码,该RS内码的符号序列为(c0,c1,c2,c3,……,cN2-1),相应的该RS内码的码字多项式可以为CN2,K2(x)=c0+c1·x+c2·x2+……+cN2·xN2-1。该RS内码在经过通信链路传输时会引入错误,定义错误序列为(e0,e1,e2,……,eN2-1),e0,e1,e2,……,eN2-1分别为符号c0,c1,c2,c3,……,cN2-1对应的错误值,某个符号对应的错误值为0,表明该符号在通信链路传输时没有发生错误,某个符号对应的错误值不为0,表明该符号在通信链路传输时发生错误。该错误序列中有v个不为0,即该RS内码发生错误的符号目数为v,该错误序列对应的错误多项式为为发生错误的符号的位置,这样可以得到该RS内码的接收多项式为Rx(x)=CN2,K2(x)+E(x)。其中,内码解码器纠错的能力为t=(N2-K2)/2,即纠错的符号数目为t,令α为多项式的根,则可以得到如下的第三公式。
第四公式为共有2t个独立无关的线性方程组。若v≤2t,则可以唯一确定因此利用错误的符号的位置,可以最多纠2t个错误。从而使内码解码器的纠错的符号数目由小于或等于t,变为小于或等于2t,即小于或等于N2-K2。
3032:根据每个RS内码对应的K2个净荷符号确定X个RS外码。
可选的,针对X个RS外码中的每个RS外码包括的每一个符号,根据该符号所在的RS内码的编号h和该符号在第h个RS内码中的编号c,按如下第二公式确定该符号属于的RS外码的编号j和该符号在第j个RS外码中的编号i,h=0、1、……、Y-1,c=0、1、……、K2-1;
第二公式为:j=(h*K2+c)MODX,i=floor((h*K2+c)/X),其中,floor为向下取整运算,MOD为取余运算。
步骤304:对该X个RS外码进行FEC解码得到每个RS外码对应的K1个净荷符号。
可选的,接收端可以包括一个或多个外码解码器。可选的,该外码解码器可以为RSFEC外码解码器。
对于每个外码解码器,该外码解码器在进行一次解码时,可以对一个RS外码包括的N1个符号进行FEC解码得到K1个净荷符号。
在本步骤中,当接收端包括一个外码解码器,通过该外码解码器对一个RS外码包括的N1个符号进行FEC解码得到K1个净荷符号。重复上述过程对不同的RS外码进行FEC解码。
当接收端包括多个外码解编码器,通过该多个外码解码器中的每个外码解码器对RS外码中的N1个符号进行FEC编码,得到多个RS外码对应的K1个净荷符号,重复上述过程对不同的RS外码进行FEC解码。
接收端中的外码解码器数目可以等于X,也可以小于X。当外码解码器数目小于X时,分多次FEC解码,直至解码完X个RS外码时为止。
其中,对于每个RS外码,该RS外码的后N1-K1个符号是冗余符号,外码解码器可以根据该N1-K1个冗余符号纠错该RS内码中发生错误的符号,可以纠错的符号数目小于或等于(N1-K1)/2个。
可选的,在接收符号的过程中还可以获取发生错误的符号,在本步骤中,由于已获取发生错误的符号,这样对于每个RS外码,可以获知该RS外码中的哪些符号为出错的符号,获取出错的符号在该RS外码中的位置,可以根据错误的符号的位置、对该RS外码进行FEC解码。
这样外码解码器就可以根据该错误的符号的位置对RS外码进行FEC解码。引入出错的符号的位置后,外码解码器纠错该RS外码中发生错误的符号数目可以小于或等于N1-K1,从而提高了纠错性能。
其中,在引入出错的符号的位置后,如何提高外码解码器的纠错性能的详细分析,可以参见上述如何提高内码解码器的纠错性能的详细分析,在此不再详细说明。
可选的,在得到K1个净荷符号时,由于每个净荷符号包括m个比特,这样可以从第一个净荷符号的第一个比特开始一个比特一个比特地向通信网络发送。
在本申请实施例中,对Y个RS内码进行FEC解码得到X个RS外码,对于每个RS内码,能够对该RS内码纠错小于或等于(N2-K2)/2个出错符号。对X个RS外码进行FEC解码,对于每个RS外码,能够对该RS外码纠错小于或等于(N1-K1)/2个出错符号。这样通过两次FEC解码,从而提高了纠错性能。当引入RS内码中出错的符号的位置时,能够对该RS内码纠错小于或等于(N2-K2)个出错符号,以及当引入RS外码中出错的符号的位置时,能够对该RS外码纠错小于或等于(N1-K1)个出错符号,从而进一步提高了纠错性能。
参见图15,本申请实施例提供了一种编码装置400,所述装置400可以部署在图1所示的交换设备的一个线卡中,可以用于执行上述实施例提供的编码方法,包括:
接收单元401,用于接收数据比特流;
外码编码单元402,用于对所述数据比特流进行前向纠错FEC编码得到X个里德索罗门RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,其中,N1>K1,N1和K1为大于1的整数,X为大于0的整数;
内码编码单元403,用于对所述X个RS外码进行FEC编码得到Y个RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,其中,N2>K2,N2和K2为大于0的整数,Y为大于1的整数,N1>N2。
可选的,Y=(X*N1)/K2。
可选的,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
可选的,当X大于或等于2时,所述每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。
可选的,当X大于或等于2时,所述每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。
可选的,所述内码编码单元403,用于:
针对Y个RS内码中的每一个RS内码,确定该RS内码包括的K2个净荷符号;
对所述K2个净荷符号进行FEC编码,得到包括N2个符号的所述RS内码。
可选的,所述内码编码单元403,用于:
针对所述K2个净荷符号中的每一个净荷符号,根据所述净荷符号所在的RS外码的编号j和所述净荷符号在第j个RS外码中的编号i,按如下第一公式确定所述净荷符号属于的RS内码的编号h和所述净荷符号在所述第h个RS内码中的编号c,j=0、1、……、X-1,i=0、1、……、N1-1;
第一公式为:h=floor((i*X+j)/K2),c=(i*X+j)MODK2,其中,floor为向下取整运算,MOD为取余运算。
可选的,所述装置400还包括:发送单元404;
所述发送单元404,用于通过L条通信链路发送所述Y个RS内码包括的Y*N2个符号,其中,L为大于0的整数。
可选的,针对同一条通信链路发送的符号,任意两个相邻符号属于不同的RS内码。
可选的,针对同一条通信链路发送的符号,任意两个相邻的属于相同RS内码的符号中间间隔D-1个符号,D为大于1的整数,且D<Y。
编码装置400涉及的具体技术特征,在上述方法实施例中已经有详细的描述,可以参考上述方法实施例的描述,此处不再赘述。
在本申请实施例中,外码编码单元对数据比特流进行FEC编码得到X个RS外码,对于每个RS外码,接收端能够对该RS外码纠错小于或等于(N1-K1)/2个出错符号。内码编码单元对X个RS外码进行FEC编码得到Y个RS内码,对于每个RS内码,接收端能够对该RS内码纠错小于或等于(N2-K2)/2个出错符号。这样通过两次FEC编码提高了纠错性能。
参见图16,本申请实施例提供了一种解码装置500,所述装置500可以部署在图1所示的交换设备的一个线卡中,可以用于执行上述实施例提供的解码方法,包括:
接收单元501,用于接收Y个里德索罗门RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,N2>K2,N2和K2为大于0的整数,Y为大于1的整数;
内码解码单元502,用于对所述Y个RS内码进行前向纠错FEC解码得到X个RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,N1>K1,N1>N2,N1和K1为大于1的整数,X为大于0的整数;
外码解码单元503,用于对所述X个RS外码进行FEC解码得到每一个RS外码对应的K1个净荷符号。
可选的,X=(Y*K2)/N1。
可选的,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
可选的,当X大于或等于2时,所述每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。
可选的,当X大于或等于2时,所述每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。
可选的,所述内码解码单元502,用于:
对所述Y个RS内码中的每个RS内码进行FEC解码,得到所述每个RS内码对应的K2个净荷符号;
根据所述每个RS内码对应的K2个净荷符号确定X个RS外码。
可选的,所述内码解码单元502,用于:
获取目标RS内码中发生错误的符号的位置,所述目标RS内码为所述Y个RS内码中的任一个RS内码;
根据所述目标RS内码中发生错误的符号的位置,对所述目标RS内码包括的N2个符号进行FEC解码,得到所述目标RS内码对应的K2个净荷符号。
可选的,所述外码解码单元503,用于:
针对X个RS外码中的每个RS外码包括的每一个符号,根据所述符号所在的RS内码的编号h和所述符号在所述第h个RS内码中的编号c,按如下第二公式确定所述符号属于的RS外码的编号j和所述符号在第j个RS外码中的编号i,h=0、1、……、Y-1,c=0、1、……、K2-1;
第二公式为:j=(h*K2+c)MODX,i=floor((h*K2+c)/X),其中,floor为向下取整运算,MOD为取余运算。
可选的,所述外码解码单元503,用于:
获取目标RS外码中发生错误的符号的位置,所述目标RS外码是所述X个RS外码中的任一个RS外码;
根据所述目标RS外码中发生错误的符号的位置,对所述目标RS外码进行FEC解码得到所述目标RS外码对应的K1个净荷符号。
可选的,所述装置500还包括:
检测单元504,用于检测接收的符号,所述符号包括多个段,在检测出所述符号中存在段的信号幅度不在预设幅度范围内或检测出所述符号中存在段的取值不在预设数值集合内,则确定所述符号为发生错误的符号,预设数值集合包括多个预设数值。
在本申请实施例中,内码解码单元对Y个RS内码进行FEC解码得到X个RS外码,对于每个RS内码,能够对该RS内码纠错小于或等于(N2-K2)/2个出错符号。外码解码单元再对X个RS外码进行FEC解码,对于每个RS外码,能够对该RS外码纠错小于或等于(N1-K1)/2个出错符号,从而提高了纠错性能。
参见图17,图17所示为本申请实施例提供的一种编码装置600示意图。该装置600包括至少一个处理器601,总线602,存储器603以及至少一个收发器604。
可选的,该至少一个处理器601,总线602,存储器603以及至少一个收发器604可集成在一个块PCB中。该至少一个处理器601可以是该PCB上的芯片,该总线602可以该是PCB中的PCB走线,该至少一个收发器604可以是集成在该PCB中的通信接口和/或背板连接器。
该装置600是一种硬件结构的装置,可以用于实现图15所述的装置中的功能模块。例如,图15所示的装置400中的外码编码单元402和内码编码单元403可以通过该至少一个处理器601调用存储器603中的代码来实现,图15所示的装置400中的接收单元401和发送单元404可以通过该收发器604来实现。
可选的,该装置600还可用于实现上述任一实施例中发送端的功能。
可选的,上述处理器601可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
上述总线602可包括一通路,在上述组件之间传送信息。
上述收发器604,用于与其他设备或通信网络通信。
上述存储器603可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)等。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器603用于存储执行本申请方案的应用程序代码,并由处理器601来控制执行。处理器601用于执行存储器603中存储的应用程序代码,从而实现本申请中的编码方法中的功能。
在具体实现中,作为一种实施例,处理器601可以包括一个或多个CPU,例如图17中的CPU0和CPU1。
在具体实现中,作为一种实施例,处理器601中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器601可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
参见图18,图18所示为本申请实施例提供的一种编码装置700示意图。该装置700包括至少一个处理器701,总线702,存储器703以及至少一个收发器704。
可选的,该至少一个处理器701,总线702,存储器703以及至少一个收发器704可集成在一个块PCB中。该至少一个处理器701可以是该PCB上的芯片,该总线702可以该是PCB中的PCB走线,该至少一个收发器704可以是集成在该PCB中的通信接口和/或背板连接器。
该装置700是一种硬件结构的装置,可以用于实现图16所述的装置中的功能模块。例如,图16所示的装置500中的内码解码单元502、外码解码单元503和检测单元504可以通过该至少一个处理器701调用存储器703中的代码来实现,图16所示的装置500中的接收单元501可以通过该收发器704来实现。
可选的,该装置700还可用于实现上述任一实施例中接收端的功能。
可选的,上述处理器701可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
上述总线702可包括一通路,在上述组件之间传送信息。
上述收发器704,用于与其他设备或通信网络通信。
上述存储器703可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)等。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器703用于存储执行本申请方案的应用程序代码,并由处理器701来控制执行。处理器701用于执行存储器703中存储的应用程序代码,从而实现本申请中的编码方法中的功能。
在具体实现中,作为一种实施例,处理器701可以包括一个或多个CPU,例如图18中的CPU0和CPU1。
在具体实现中,作为一种实施例,处理器701中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器701可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
参见图19,本申请实施例提供了一种编解码系统800,所述系统800包括如图15所述的装置和如图16所述的装置;或者,所述系统800包括如图17所述的装置和如图18所示的装置。
可选的,如图15或17所述的装置可以为发送端801,如图16或18所述的装置可以为接收端802。
上述实施例可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (31)
1.一种编码方法,其特征在于,所述方法包括:
接收数据比特流;
对所述数据比特流进行前向纠错FEC编码得到X个里德索罗门RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,其中,N1>K1,N1和K1为大于1的整数,X为大于0的整数;
对所述X个RS外码进行FEC编码得到Y个RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,其中,N2>K2,N2和K2为大于0的整数,Y为大于1的整数,N1>N2;
其中,所述对所述X个RS外码进行FEC编码得到Y个RS内码,包括:
针对一个RS内码包括的K2个净荷符号中的每一个净荷符号,根据所述净荷符号所在的RS外码的编号j和所述净荷符号在第j个RS外码中的编号i,按如下第一公式确定所述净荷符号属于的RS内码的编号h和所述净荷符号在所述第h个RS内码中的编号c,j=0、1、……、X-1,i=0、1、……、N1-1;
第一公式为:h=floor((i*X+j)/K2),c=(i*X+j)MODK2,其中,floor为向下取整运算,MOD为取余运算;
对所述K2个净荷符号进行FEC编码,得到包括N2个符号的所述RS内码。
2.如权利要求1所述的方法,其特征在于,Y=(X*N1)/K2。
3.如权利要求1或2所述的方法,其特征在于,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
4.如权利要求1或2所述的方法,其特征在于,当X大于或等于2时,所述每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。
5.如权利要求1或2所述的方法,其特征在于,当X大于或等于2时,所述每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。
6.如权利要求1或2所述的方法,其特征在于,所述方法还包括:通过L条通信链路发送所述Y个RS内码包括的Y*N2个符号,其中,L为大于0的整数。
7.如权利要求6所述的方法,其特征在于,针对同一条通信链路发送的符号,任意两个相邻符号属于不同的RS内码。
8.如权利要求6所述的方法,其特征在于,针对同一条通信链路发送的符号,任意两个相邻的属于相同RS内码的符号中间间隔D-1个符号,D为大于1的整数,且D<Y。
9.一种解码方法,其特征在于,所述方法包括:
接收Y个里德索罗门RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,N2>K2,N2和K2为大于0的整数,Y为大于1的整数;
对所述Y个RS内码进行前向纠错FEC解码得到X个RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,N1>K1,N1>N2,N1和K1为大于1的整数,X为大于0的整数;
对所述X个RS外码进行FEC解码得到每一个RS外码对应的K1个净荷符号;
其中,所述对所述Y个RS内码进行FEC解码得到X个RS外码,包括:
对所述Y个RS内码中的每个RS内码进行FEC解码,得到所述每个RS内码对应的K2个净荷符号;
针对X个RS外码中的每个RS外码包括的每一个符号,根据所述符号所在的RS内码的编号h和所述符号在所述第h个RS内码中的编号c,按如下第二公式确定所述符号属于的RS外码的编号j和所述符号在第j个RS外码中的编号i,h=0、1、……、Y-1,c=0、1、……、K2-1;
第二公式为:j=(h*K2+c)MODX,i=floor((h*K2+c)/X),其中,floor为向下取整运算,MOD为取余运算。
10.如权利要求9所述的方法,其特征在于,X=(Y*K2)/N1。
11.如权利要求9或10所述的方法,其特征在于,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
12.如权利要求9或10所述的方法,其特征在于,当X大于或等于2时,所述每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。
13.如权利要求9或10所述的方法,其特征在于,当X大于或等于2时,所述每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。
14.如权利要求9所述的方法,其特征在于,所述对所述Y个RS内码中的每个RS内码进行FEC解码,包括:
获取目标RS内码中发生错误的符号的位置,所述目标RS内码为所述Y个RS内码中的任一个RS内码;
根据所述目标RS内码中发生错误的符号的位置,对所述目标RS内码包括的N2个符号进行FEC解码,得到所述目标RS内码对应的K2个净荷符号。
15.如权利要求9或10所述的方法,其特征在于,所述对所述X个RS外码进行FEC解码得到每一个RS外码对应的K1个净荷符号,包括:
获取目标RS外码中发生错误的符号的位置,所述目标RS外码是所述X个RS外码中的任一个RS外码;
根据所述目标RS外码中发生错误的符号的位置,对所述目标RS外码进行FEC解码得到所述目标RS外码对应的K1个净荷符号。
16.一种编码装置,其特征在于,包括:
接收单元,用于接收数据比特流;
外码编码单元,用于对所述数据比特流进行前向纠错FEC编码得到X个里德索罗门RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,其中,N1>K1,N1和K1为大于1的整数,X为大于0的整数;
内码编码单元,用于对所述X个RS外码进行FEC编码得到Y个RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,其中,N2>K2,N2和K2为大于0的整数,Y为大于1的整数,N1>N2;
其中,所述内码编码单元,用于:
针对一个RS内码包括的K2个净荷符号中的每一个净荷符号,根据所述净荷符号所在的RS外码的编号j和所述净荷符号在第j个RS外码中的编号i,按如下第一公式确定所述净荷符号属于的RS内码的编号h和所述净荷符号在所述第h个RS内码中的编号c,j=0、1、……、X-1,i=0、1、……、N1-1;
第一公式为:h=floor((i*X+j)/K2),c=(i*X+j)MODK2,其中,floor为向下取整运算,MOD为取余运算;
对所述K2个净荷符号进行FEC编码,得到包括N2个符号的所述RS内码。
17.如权利要求16所述的装置,其特征在于,Y=(X*N1)/K2。
18.如权利要求16或17所述的装置,其特征在于,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
19.如权利要求16或17所述的装置,其特征在于,当X大于或等于2时,所述每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。
20.如权利要求16或17所述的装置,其特征在于,当X大于或等于2时,所述每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。
21.如权利要求16或17所述的装置,其特征在于,所述装置还包括:发送单元;
所述发送单元,用于通过L条通信链路发送所述Y个RS内码包括的Y*N2个符号,其中,L为大于0的整数。
22.如权利要求21所述的装置,其特征在于,针对同一条通信链路发送的符号,任意两个相邻符号属于不同的RS内码。
23.如权利要求21所述的装置,其特征在于,针对同一条通信链路发送的符号,任意两个相邻的属于相同RS内码的符号中间间隔D-1个符号,D为大于1的整数,且D<Y。
24.一种解码装置,其特征在于,所述装置包括:
接收单元,用于接收Y个里德索罗门RS内码,所述Y个RS内码中的每一个RS内码包括N2个符号,所述N2个符号中的K2个符号为净荷符号,N2>K2,N2和K2为大于0的整数,Y为大于1的整数;
内码解码单元,用于对所述Y个RS内码进行前向纠错FEC解码得到X个RS外码,所述X个RS外码中的每一个RS外码包括N1个符号,所述N1个符号中的K1个符号为净荷符号,N1>K1,N1>N2,N1和K1为大于1的整数,X为大于0的整数;
外码解码单元,用于对所述X个RS外码进行FEC解码得到每一个RS外码对应的K1个净荷符号;
其中,所述内码解码单元,用于:
对所述Y个RS内码中的每个RS内码进行FEC解码,得到所述每个RS内码对应的K2个净荷符号;
针对X个RS外码中的每个RS外码包括的每一个符号,根据所述符号所在的RS内码的编号h和所述符号在所述第h个RS内码中的编号c,按如下第二公式确定所述符号属于的RS外码的编号j和所述符号在第j个RS外码中的编号i,h=0、1、……、Y-1,c=0、1、……、K2-1;
第二公式为:j=(h*K2+c)MODX,i=floor((h*K2+c)/X),其中,floor为向下取整运算,MOD为取余运算。
25.如权利要求24所述的装置,其特征在于,X=(Y*K2)/N1。
26.如权利要求24或25所述的装置,其特征在于,N1=544,K1=514,N2=34,K2=32;或者,N1=544,K1=514,N2=36,K2=34。
27.如权利要求24或25所述的装置,其特征在于,当X大于或等于2时,所述每个RS内码中任意两个相邻的净荷符号属于不同的RS外码。
28.如权利要求24或25所述的装置,其特征在于,当X大于或等于2时,所述每个RS内码中任意两个相邻的属于相同RS外码的净荷符号中间间隔X-1个符号。
29.如权利要求24所述的装置,其特征在于,所述内码解码单元,用于:
获取目标RS内码中发生错误的符号的位置,所述目标RS内码为所述Y个RS内码中的任一个RS内码;
根据所述目标RS内码中发生错误的符号的位置,对所述目标RS内码包括的N2个符号进行FEC解码,得到所述目标RS内码对应的K2个净荷符号。
30.如权利要求24或25所述的装置,其特征在于,所述外码解码单元,用于:
获取目标RS外码中发生错误的符号的位置,所述目标RS外码是所述X个RS外码中的任一个RS外码;
根据所述目标RS外码中发生错误的符号的位置,对所述目标RS外码进行FEC解码得到所述目标RS外码对应的K1个净荷符号。
31.一种非易失性计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序通过处理器进行加载来执行如权利要求1-15任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811483003.XA CN111277830B (zh) | 2018-12-05 | 2018-12-05 | 一种编码方法、解码方法及装置 |
PCT/CN2019/121752 WO2020114318A1 (zh) | 2018-12-05 | 2019-11-28 | 一种编码方法、解码方法及装置 |
EP19892287.4A EP3737013B1 (en) | 2018-12-05 | 2019-11-28 | Encoding method, decoding method and device |
US16/998,560 US11128320B2 (en) | 2018-12-05 | 2020-08-20 | Encoding method, decoding method, encoding apparatus, and decoding apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811483003.XA CN111277830B (zh) | 2018-12-05 | 2018-12-05 | 一种编码方法、解码方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111277830A CN111277830A (zh) | 2020-06-12 |
CN111277830B true CN111277830B (zh) | 2022-09-23 |
Family
ID=70975199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811483003.XA Active CN111277830B (zh) | 2018-12-05 | 2018-12-05 | 一种编码方法、解码方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11128320B2 (zh) |
EP (1) | EP3737013B1 (zh) |
CN (1) | CN111277830B (zh) |
WO (1) | WO2020114318A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118868968A (zh) * | 2020-10-29 | 2024-10-29 | 华为技术有限公司 | 一种以太网的编码方法及装置 |
CN117294386A (zh) * | 2022-06-24 | 2023-12-26 | 华为技术有限公司 | 一种数据处理方法及数据处理装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6195781B1 (en) * | 1997-07-10 | 2001-02-27 | Sony Corporation | Error correction code calculator |
CN1476013A (zh) * | 2002-08-13 | 2004-02-18 | 联发科技股份有限公司 | 具有错误处理的光盘数据读取方法 |
CN101277118A (zh) * | 2007-03-28 | 2008-10-01 | 北京三星通信技术研究有限公司 | 基于ldpc码的级联码的编码方法 |
CN103430455A (zh) * | 2011-05-31 | 2013-12-04 | 三菱电机株式会社 | 纠错编码装置、纠错解码装置、以及其方法 |
CN107925422A (zh) * | 2015-09-04 | 2018-04-17 | 华为技术有限公司 | 无源光网络(pon)中的自适应前向纠错(fec) |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2113941A1 (en) * | 1993-01-25 | 1994-07-26 | Andrew J. Macdonald | Error correcting decoder and decoding method for receivers in digital cellular communications systems |
US20020159614A1 (en) * | 2000-12-18 | 2002-10-31 | Bradley Brett Alan | Message coding for digital watermark applications |
KR100235617B1 (ko) * | 1996-12-31 | 1999-12-15 | 전주범 | 디지털-vhs 인코딩 방법 및 인코더 |
US20040268209A1 (en) * | 2003-04-22 | 2004-12-30 | Apoorv Srivastava | Concatenated iterative forward error correction codes |
JP4603536B2 (ja) * | 2003-05-05 | 2010-12-22 | トムソン ライセンシング | 階層変調システムにおける復調のための装置および方法 |
WO2004105337A1 (en) * | 2003-05-16 | 2004-12-02 | Thomson Licensing S.A. | Repetition coding in a satellite-based communications system |
KR101005036B1 (ko) * | 2003-05-16 | 2010-12-30 | 톰슨 라이센싱 | 레이어된 그리고 계층적인 변조 시스템을 위한 통합 수신기 |
WO2005086444A1 (en) * | 2004-02-19 | 2005-09-15 | Thomson Licensing | Method and apparatus for carrier recovery in a communications system |
US7949074B2 (en) * | 2004-04-24 | 2011-05-24 | Thomson Licensing | Apparatus and method for decoding in a hierarchical, modulation system |
WO2007100185A1 (en) * | 2006-02-28 | 2007-09-07 | Lg Electronics Inc. | Digital broadcasting system and method of processing data |
CN101667887A (zh) * | 2009-09-02 | 2010-03-10 | 中兴通讯股份有限公司 | 编码方法及其装置、解码方法及其装置 |
CN101702640B (zh) * | 2009-10-15 | 2013-03-20 | 北京网御星云信息技术有限公司 | 一种在单向网络中传输数据的方法及装置 |
CN102640442B (zh) * | 2009-12-01 | 2015-01-28 | 三菱电机株式会社 | 纠错方法以及装置 |
US20130028336A1 (en) * | 2011-07-28 | 2013-01-31 | Limberg Allen Leroy | Receivers for COFDM digital television transmissions |
US20130028269A1 (en) * | 2011-07-28 | 2013-01-31 | Limberg Allen Leroy | DTV systems employing parallel concatenated coding in COFDM transmissions for iterative diversity reception |
US9124396B2 (en) * | 2011-07-28 | 2015-09-01 | Allen LeRoy Limberg | COFDM digital television receivers for iterative-diversity reception |
US9143785B2 (en) * | 2012-10-25 | 2015-09-22 | Allen LeRoy Limberg | COFDM broadcast systems employing turbo coding |
US9419750B2 (en) * | 2013-06-05 | 2016-08-16 | Texas Instruments Incorporated | NLOS wireless backhaul uplink communication |
-
2018
- 2018-12-05 CN CN201811483003.XA patent/CN111277830B/zh active Active
-
2019
- 2019-11-28 EP EP19892287.4A patent/EP3737013B1/en active Active
- 2019-11-28 WO PCT/CN2019/121752 patent/WO2020114318A1/zh unknown
-
2020
- 2020-08-20 US US16/998,560 patent/US11128320B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6195781B1 (en) * | 1997-07-10 | 2001-02-27 | Sony Corporation | Error correction code calculator |
CN1476013A (zh) * | 2002-08-13 | 2004-02-18 | 联发科技股份有限公司 | 具有错误处理的光盘数据读取方法 |
CN101277118A (zh) * | 2007-03-28 | 2008-10-01 | 北京三星通信技术研究有限公司 | 基于ldpc码的级联码的编码方法 |
CN103430455A (zh) * | 2011-05-31 | 2013-12-04 | 三菱电机株式会社 | 纠错编码装置、纠错解码装置、以及其方法 |
CN107925422A (zh) * | 2015-09-04 | 2018-04-17 | 华为技术有限公司 | 无源光网络(pon)中的自适应前向纠错(fec) |
Also Published As
Publication number | Publication date |
---|---|
EP3737013A4 (en) | 2021-04-21 |
EP3737013A1 (en) | 2020-11-11 |
US11128320B2 (en) | 2021-09-21 |
US20200382142A1 (en) | 2020-12-03 |
EP3737013B1 (en) | 2023-03-01 |
WO2020114318A1 (zh) | 2020-06-11 |
CN111277830A (zh) | 2020-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11463111B2 (en) | Encoding/decoding method, device, and system | |
US7246294B2 (en) | Method for iterative hard-decision forward error correction decoding | |
CA3072857C (en) | Forward error correction with compression coding | |
CN110071727B (zh) | 编码方法、译码方法、纠错方法及装置 | |
KR101298745B1 (ko) | 데이터를 복호화 및 부호화하는 방법 및 장치 | |
US7231575B2 (en) | Apparatus for iterative hard-decision forward error correction decoding | |
CN111277830B (zh) | 一种编码方法、解码方法及装置 | |
US11018699B2 (en) | Method and apparatus for controlling interleaving depth | |
KR101314232B1 (ko) | 에러 정정 코드의 부호화 및 복호화 방법 그리고 코덱 | |
CN114731166A (zh) | 空间耦合fec编码方法和使用gel码的分量码的设备 | |
RU2379841C1 (ru) | Декодер с исправлением стираний | |
US9236890B1 (en) | Decoding a super-code using joint decoding of underlying component codes | |
US11362679B2 (en) | Method and apparatus for generating redundant bits for error detection | |
JPH08293802A (ja) | インターリーブ式誤り訂正方法 | |
CN107579803B (zh) | 包括错误更正程序的解码装置及解码方法 | |
JP6739354B2 (ja) | インターリービング深度を調整するための装置及び方法 | |
RU2420870C1 (ru) | Способ кодирования-декодирования каскадной кодовой конструкции в системах передачи данных | |
WO2009069087A1 (en) | Apparatus and method for decoding concatenated error correction codes | |
RU2541844C1 (ru) | Способ декодирования кода-произведения с использованием упорядоченного по весу смежного класса векторов ошибок и устройство его реализующее | |
JP2015126247A (ja) | Fec符号化装置、fec符号化方法及びfec符号化装置の制御プログラム | |
JP2015032885A (ja) | 符号化装置及び復号装置 | |
Rani et al. | Recovery of [radical] n bytes of data using Backtracking Algorithm |
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 |