CN106936541B - Rs编码加字节交织方法及系统 - Google Patents
Rs编码加字节交织方法及系统 Download PDFInfo
- Publication number
- CN106936541B CN106936541B CN201511024385.6A CN201511024385A CN106936541B CN 106936541 B CN106936541 B CN 106936541B CN 201511024385 A CN201511024385 A CN 201511024385A CN 106936541 B CN106936541 B CN 106936541B
- Authority
- CN
- China
- Prior art keywords
- interleaving
- data
- columns
- encoding
- byte
- 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
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/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/0071—Use of interleaving
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B3/00—Line transmission systems
- H04B3/54—Systems for transmission via power distribution lines
- H04B3/542—Systems for transmission via power distribution lines the information being in digital form
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
一种RS编码加字节交织方法及系统,所述方法包括:获取待编码数据的字节数;根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织,得到第一交织结果;对所述第一交织结果按行进行RS编码;将RS编码结果按列输出并进行第二类交织,得到第二交织结果,包括:将所述RS编码结果按列从上向下依次排列形成数据列表;将所述数据列表按列进行循环移位操作;将所述循环移位操作得到的结果按列输出,得到所述第二交织结果。采用所述方法及系统,可以有效降低同步于工频的周期噪声对电力线通信的干扰。
Description
技术领域
本发明涉及电力线通信领域,尤其涉及一种RS编码加字节交织方法及系统。
背景技术
电力线通信(Power Line Communication,PLC)是指利用电力线作为传输介质实现数据传输的一种通信技术。由于电力基础设施的广泛普及,在电力线上进行数据传输可以大大降低通信成本。
在实际的通信过程中,电力线信道存在着传输环境恶劣和噪声干扰严重的问题。为提高数据传输的可靠性,引入了纠错码技术来进行差错控制。RS(Reed Solomon)码作为一种线性分组循环码,具有极强的随机错误与突发错误纠错能力,已广泛应用于电力线通信领域。
为进一步提高接收机抗干扰能力,尤其是对抗突发脉冲干扰和窄带干扰,RS码通常与字节交织器搭配使用。字节交织器的主要作用是打乱原始字节的顺序,增加数据分布的随机性,降低突发脉冲干扰对数据的影响。
然而,现有的RS码与字节交织器搭配使用的编码加字节交织方法,虽然可以提高系统的抗突发脉冲干扰性能,却仍受同步于工频的周期噪声而导致电力线通信干扰较大。
发明内容
本发明解决的技术问题是降低同步于工频的周期噪声对电力线通信的干扰。
为解决上述技术问题,本发明实施例提供一种RS编码加字节交织方法,包括:
获取待编码数据的字节数;
根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织,得到第一交织结果;
对所述第一交织结果按行进行RS编码;
将RS编码结果按列输出并进行第二类交织,得到第二交织结果,包括:将所述RS编码结果按列从上向下依次排列形成数据列表;将所述数据列表按列进行循环移位操作;将所述循环移位操作得到的结果按列输出,得到所述第二交织结果;其中,所述数据列表行数为M2,M2=N-1,N为一个同步于工频的噪声周期内的传输码元的个数;所述数据列表列数为所述RS编码结果的总字节长度与M2之商向上取整;所述数据列表中的每一列均存在一一对应的所述循环移位操作的操作位数,且奇数列与偶数列循环移位的方向不同。
可选的,所述将所述数据列表按列进行循环移位操作,包括:对所述数据列表中的第i列进行循环移位的操作位数z=mod(i-1,M2)。
可选的,采用第一交织器对所述待编码数据进行第一类交织,得到的第一交织结果的行数M1=ceil(L/kmax),且前M1-1行的第1~kmax列均被有效数据填满,其中,L为输入的待编码数据的字节数,kmax为RS编码参数中的最大k值,ceil(L/kmax)为取大于L/kmax的最小整数值。
可选的,所述根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织,包括:
将所述输入的待编码数据的前r×M1个字节按列从上向下依次写入至所述第一交织器,每列填充M1个字节;剩余的L-r×M1个字节从第r+1行按列从上向下依次写入至所述第一交织器,每列填充M1-1个字节,直至所述第一交织器的第kmax列填满;其中,r为最后一行的字节数,且r=L-kmax×(M1-1)。
可选的,所述对所述第一交织结果按行进行RS编码,包括:将所述前M1-1行中的字节采用所述kmax对应的RS编码参数进行编码,将最后一行中的字节采用大于r的最小k值对应的RS编码参数进行编码。
可选的,采用公式M2=ceil((fs/(ft×2))/8)-1计算得到M2,其中:fs为采样频率,ft为工频频率,ceil((fs/(ft×2))/8)为取大于(fs/(ft×2))/8的最小整数值。
本发明实施例还提供了一种RS编码加字节交织系统,包括:
第一交织器,适于接收输入的待编码数据,并根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织;
RS编码器,适于接收所述第一交织器生成的第一交织结果,并对所述第一交织结果按行进行RS编码;
第二交织器,适于对所述RS编码器按列输出的RS编码结果按列从上向下依次排列形成数据列表;将所述数据列表按列进行循环移位操作;其中,所述数据列表行数为M2,M2=N-1,N为一个同步于工频的噪声周期内的传输码元的个数;所述数据列表列数为所述RS编码结果的总字节长度与M2之商向上取整;所述数据列表中的每一列均存在一一对应的所述循环移位操作的操作位数,且奇数列与偶数列循环移位的方向不同;
输出单元,适于将所述循环移位操作得到的结果按列输出,得到第二交织结果。
可选的,所述第二交织器适于对所述数据列表中的第i列进行循环移位的操作位数z=mod(i-1,M2)的循环移位操作。
可选的,所述第一交织器得到的第一交织结果的行数M1=ceil(L/kmax),且前M1-1行的第1~kmax列均被有效数据填满,其中,L为输入的待编码数据的字节数,kmax为RS编码参数中的最大k值,ceil(L/kmax)为取大于L/kmax的最小整数值。
可选的,所述第一交织器适于:将所述输入的待编码数据的前r×M1个字节按列从上向下依次写入至所述第一交织器,每列填充M1个字节;剩余的L-r×M1个字节从第r+1行按列从上向下依次写入至所述第一交织器,每列填充M1-1个字节,直至所述第一交织器的第kmax列填满;其中,r为最后一行的字节数,且r=L-kmax×(M1-1)。
可选的,所述RS编码器适于对所述第一交织结果按行进行编码,其中:将所述前M1-1行中的字节采用所述kmax对应的RS编码参数进行编码,将最后一行中的字节采用大于r的最小k值对应的RS编码参数进行编码。
可选的,所述第二交织器适于采用公式M2=ceil((fs/(ft×2))/8)-1计算得到M2,其中:fs为采样频率,ft为工频频率,ceil((fs/(ft×2))/8)为取大于(fs/(ft×2))/8的最小整数值。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
在对待编码数据进行第一类交织和RS编码后,并不是将经过RS编码的数据作为最终的RS编码加字节交织结果输出,而是对RS编码结果进行第二类交织。在第二类交织过程中,先将RS编码结果按列从上向下依次排列形成行数为M2的数据列表,M2与当前信道的工频周期相关;再对数据列表中的每一列执行相应操作位数和方向的循环移位操作,将同一行的数据尽可能地打散,且每一列都进行了对应循环操作位数和循环方向的循环移位操作,可以使同时受同步于工频的周期噪声影响的数据分散开,从而可以有效提高对抗同步于工频的周期噪声的性能。
附图说明
图1是现有的RS编码加字节交织后的数据分布示意图;
图2是本发明实施例中的一种RS编码加字节交织方法的流程图;
图3是本发明实施例中提供的RS编码加字节交织方法与现有RS编码加字节交织方法的性能比较图;
图4是本发明实施例中的一种RS编码加字节交织系统的结构示意图。
具体实施方式
目前,通常将RS编码器与字节交织器搭配使用,以此来对抗突发脉冲干扰和窄带干扰。字节交织器的主要作用是打乱原始字节的顺序,将相邻字节分散在不同的RS码字中,增加数据分布的随机性,从而有效地降低突发脉冲干扰对数据的影响。现有的RS编码器与字节交织器搭配使用时,字节交织器的列数等于RS码码长,行数由字节交织器输入字节数以及交织器信息区的列数决定。例如,对于RS(n,k)码,字节交织器的列数为n,前k列为信息位,后n-k列为校验位,行数随输入字节数而变。
现有的RS编码器加字节交织器的编码加字节交织方法流程如下:先将输入数据按列输入字节交织器的信息位部分,即从第一列开始输入,第一列满后从第二列输入,以此类推,直至所有输入数据填充完毕,信息区未填充部分用0填充。然后按行做RS(n,k)编码,将每行信息区数据生成的n-k位校验数据分别对应填充到交织器的校验区位置。编码完成后的数据分布如图1所示。编码完成后按列输出,即先输出第一列数据,再输出第二列数据,以此类推至第n列。
然而,现有的编码加字节交织方法虽然能够提高系统的抗突发脉冲干扰性能,但在电力线系统中,仍受电力线系统中同样占主导因素的同步于工频的周期噪声的影响。
在本发明实施例中,在对待编码数据进行第一类交织和RS编码后,并不是直接将经过RS编码的数据作为最终的RS编码加字节交织结果输出,而是对RS编码结果进行第二类交织。在第二类交织过程中,先将RS编码结果按列从上向下依次排列形成行数为M2的数据列表,M2与当前信道的工频周期相关;再对数据列表中的每一列执行相应操作位数和方向的循环移位操作,将同一行的数据尽可能地打散,且每一列都进行了对应循环操作位数和循环方向的循环移位操作,可以使同时受同步于工频的周期噪声影响的数据分散开,从而可以有效提高对抗同步于工频的周期噪声的性能。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
本发明实施例提供了一种RS编码加字节交织方法,参照图2,以下通过具体步骤进行详细说明。
步骤S201,获取待编码数据的字节数。
在具体实施中,可以预先获知当前的待编码数据的字节数L。
步骤S202,根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织。
在具体实施中,可以采用预设的第一交织器对待编码数据进行第一类交织,从而得到第一交织结果。
在本发明实施例中,可以先根据待编码数据的字节数以及预先设定好的RS编码参数,来确定第一交织器对应的行数M1,也即第一交织结果的行数M1。
在本发明一实施例中,采用公式M1=ceil(L/kmax)计算第一交织器的行数M1,其中,kmax为适用于当前RS编码参数中的最大的k值,ceil为向上取整运算。
RS编码参数可以根据实际需要预先配置,参照表1,给出了几组RS编码过程中使用的参数,每一组参数对应的编码效率相同。
n | k | T纠错能力(字) |
48 | 36 | 6 |
40 | 30 | 5 |
32 | 24 | 4 |
24 | 18 | 3 |
16 | 12 | 2 |
8 | 6 | 1 |
表1
在本发明实施例中,可以根据待编码数据的字节数L,从表1中选择对应的k值和n值,选择规则为:当L大于表1中的所有k值时,则选取的k值为所有k值中的最大值;当L小于表1中的所有k值时,则选取的k值为大于L的最小k值,选取的k值为大于L的最小k值。例如,L=26,则选取的k值为30。
结合表1,当待编码数据的字节数L=82时,从表1中可知选取出的k值为所有k值中的最大值,即kmax=36,第一交织器的行数M1=ceil(L/kmax)=ceil(82/36)=3。
在采用第一交织器执行第一类交织时,将第一交织器信息区的第一行到第M1-1行用有效数据填满,即:将前M1-1行的第1~kmax列均被待编码数据填满,也即信息区的第一行到第M1-1行均被待编码数据填满,这样前M1-1行中填充的有效数据占用的字节数为kmax×(M1-1),最后一行剩余的字节数r=L-kmax×(M1-1)。
具体地,采用如下方式将待编码数据输入至第一交织器的信息区中:
1)将待编码数据的前r×M1个字节从第一列开始,按照从上向下的顺序开始填充,每列均填充M1个字节,然后是第二列,以此类推,直至第r列填满;
2)剩余的L-r×M1个字节从第r+1列开始,按照从上向下的顺序开始填充,每列均填充M1-1个字节,直到第一交织器的第kmax列填满。
此时,第一交织器的信息区的前M1-1行的第1~kmax列均被有效数据填充,而最后一行只有前1~r列被有效数据填充,也即最后一行只填充了r个有效数据。
步骤S203,对所述第一交织结果按行进行RS编码。
在具体实施中,可以将得到的第一交织结果输入至RS编码器,通过RS编码器对第一交织结果进行RS编码。RS编码器在编码过程中,可以按行取字,即按照行的方式进行编码。
在本发明一实施例中,由于前M1-1行均被有效数据填满,且M1是由kmax计算得到的,因此,RS编码器在编码过程中,可以将前M1-1行中的字节采用kmax对应的RS编码参数进行编码,将前M1-1行编码生成的校验码元放入第一交织器的校验区。由于第一交织器的信息区的最后一行未被有效数据填满,因此可以将最后一行中的字节采用大于等于r的最小k值对应的RS编码参数进行编码。对最后一行编码生成的校验码元紧挨在补充的零字节之后。
例如,结合表1,设定待编码数据的字节数L=82,表1中kmax=36,对应的n=48,则第一交织器的行数M1=ceil(L/kmax)=ceil(82/36)=3,列数为48。在使用RS编码器进行编码时,将前2行中的字节采用kmax=36对应的RS编码参数进行编码,每一行均生成n-kmax=12个校验码元。最后一行中的有效字节数r=10,在表1中可以得知大于10的最小k=12,对应的n=16,则最后一行中需要补充2个零字节,之后将最后一行中的字节采用k=12对应的RS编码参数进行编码,最后一行生成16-12=4个校验码元。
最后一行采用大于所填充的有效字节数的最小k值对应的RS编码参数进行编码,而不是采用与前M1-1行相同的k值进行编码,这样可以减少在最后一行中补充的零字节的个数,从而可以提高RS编码的效率。
以上述实施例为例,若最后一行也采用kmax=36进行编码,则最后一行需要补充z=36-10=26个零字节,最后一行的编码效率为(kmax-z)/n=10/48。而采用本发明实施例中的RS编码方法,最后一行补充2个零字节,k=12时对应的n=16,最后一行的编码效率为10/16。由此可见,本发明实施例中提供的RS编码方法可以有效提高RS编码的效率。
在本发明实施例中,在对第一交织结果按行进行RS编码,得到RS编码结果后,并不是直接将得到的RS编码结果作为最终的RS编码加字节交织结果输出。考虑到现有技术中存在传输码元受同步于工频的周期噪声的影响,可以继续执行步骤S204,以减小同步于工频的周期噪声对传输码元的影响。
步骤S204,将RS编码结果按列输出并进行第二类交织,得到第二交织结果。
在具体实施中,可以采用预设的第二交织器对RS编码结果进行第二类交织。第二交织器的行数M2与工频ft以及当前系统采样频率fs相关,且M2=N-1,N为一个同步于工频的噪声周期内的传输码元的个数,列数为RS编码结果的总字节长度与M2之商向上取整。
在本发明一实施例中,第二交织器的行数M2=ceil((fs/(ft×2))/8)-1。在确定了第二交织器的行数M2和列数之后,可以将RS编码结果按列从上向下依次进行输入到第二交织器中,在第二交织器中形成行数为M2的数据列表。当最后一列未能被RS编码结果填满时,可以用零字节填充。
在形成行数为M2的数据列表后,将数据列表按列进行循环移位操作。在本发明实施例中,针对于数据列表中的每一列,均可以设置一一对应的循环移位的操作位数,相邻列对应的循环移位的操作位数不相同,且奇数列的循环移位方向与偶数列的循环移位方向不同,这样每一行的数据就会被分散开,也即本该同时受到同步于工频的周期噪声的影响的数据被打散,从而可以提高抗同步于工频的周期噪声干扰的性能。
在本发明实施例中,数据列表中第i列的循环移位的操作位数z可以为z=mod(i-1,M2)。在获取到对应的循环移位的操作位数后,可以按照一定的移位准则在相应的移动方向上移动相应的操作位数。
例如,M2=6,则数据列表中的第一列不进行循环移位,第二列中的所有数据从上向下移动1位,第三列中的所有数据从下向上移动2位,以此类推。
可以理解的是,在本发明其他实施例中,还可以存在其他类型的循环移位操作方法,只要满足将第二交织器中同一行的数据尽量打散即可。
在将数据列表中的所有列均执行循环移位操作后,将循环移位操作得到的结果按列输出,作为第二交织结果。
由此可见,在对待编码数据进行第一类交织和RS编码后,并不是将经过RS编码的数据作为最终的RS编码加字节交织结果输出,而是对RS编码结果进行第二类交织。在第二类交织过程中,先将RS编码结果按列从上向下依次排列形成行数为M2的数据列表,M2与当前信道的工频周期相关;再对数据列表中的每一列执行相应操作位数和方向的循环移位操作,将同一行的数据尽可能地打散,可以使同时受同步于工频的周期噪声影响的数据分散开,从而可以有效提高对抗同步于工频的周期噪声的性能。
下面通过实际举例,对本发明上述实施例中提供的RS编码加字节交织方法进行说明。
在执行本发明上述实施例中提供的RS编码加字节交织方法之前,可以先预先设置RS编码过程中所使用的参数,具体的RS编码参数可以根据实际需要进行设定。本发明实施例中设置的参数可以参照表1,此处不做赘述。
在准备好RS编码过程中使用的参数后,可以获取待编码数据的字节数。获取到的待编码数据的字节数L=82,根据表1中配置的RS编码参数,可以得知适用的最大的k值为kmax=36。根据公式M1=ceil(L/kmax)计算得到第一交织器的行数M1=3,第一交织器的信息区的最后一行的字节数为r=10。
采用第一交织器进行第一类交织,将前r×M1=30个字节从第一列开始按从上向下的顺序开始填充,然后是第二列,以此类推,直到第一交织器的第10列填满为止,前10列每列填充M1=3个字节。剩下的52个字节从第11列开始按从上向下的顺序开始填充,每列填充2个字节,直到第36列完成填充。填充完成后,数据分布如表2所示。
1 | 4 | 7 | …… | 28 | 31 | 33 | …… | 81 |
2 | 5 | 8 | …… | 29 | 32 | 34 | …… | 82 |
3 | 6 | 9 | …… | 30 |
表2
表2中的数字代表输入到第一交织器中的字节序号,例如,1代表第一个字节。
将待编码数据输入到第一交织器之后,按行对其进行RS编码,对前两行采用RS(n=48,k=36)的编码方式进行编码,生成12个校验码元,放置在第一交织器的校验区,第一行的12个校验码元依次为r1,1、r1,2、……、r1,12,第二行的12个校验码元依次为r2,1、r2,2、……、r2,12。由于第3行中只有10个有效数据,因此对第3行采用RS(n=16,k=12)的编码方式进行编码。由于r=10<12,所以需要补充两个零字节,生成4个校验码元并放置在填充的零字节后面,第3行的4个校验码元依次为r3,1、r3,2、r3,3、r3,4。经过RS编码后的数据分布情况可以参照表3。
1 | … | 28 | 31 | 33 | 35 | … | 41 | … | 81 | r<sub>1,1</sub> | … | r<sub>1,12</sub> |
2 | … | 29 | 32 | 34 | 36 | … | 42 | … | 82 | r<sub>2,1</sub> | … | r<sub>2,12</sub> |
3 | … | 30 | 0 | 0 | r<sub>3,1</sub> | … | r<sub>3,4</sub> |
表3
经过RS编码之后,将得到的RS编码结果按列输出,RS编码结果包括填充的0以及生成的校验码元,输出的数据的顺序为1,2,3,4,……,31,32,0,33,34,0,35,36,r3,1,……,42,r3,4,43,……,81,82,r1,1,r2,1,……,r1,12,r2,12。
将输出的RS编码结果输入至第二交织器,以对RS编码结果进行第二类交织。第二交织器的行数M2=ceil((fs/(ft×2))/8)-1,其中:fs为采样频率,ft为工频频率,ceil((fs/(ft×2))/8)为取大于(fs/(ft×2))/8的最小整数值。
在实际应用中,电力线信道的工频ft=50Hz,则同步于工频的噪声的周期为1/50s,设定采样频率为5.6KHz,则在一个噪声周期范围内的码元个数为m=ceil(5.6×1000/(50×2)/8)=7,即每个噪声周期范围内的传输码元个数约为7个,也就是说,传输码元受同步于工频的周期噪声的干扰间隔为6,因此,设定第二交织器的行数M2=7-1=6。
RS编码结果中总的字节数为82+2+24+4=112,因此第二交织器的列数为112/6。由于112/6为非整数,可以取大于112/6的最小整数,即第二交织器的列数为ceil(112/6)=19。最后一列未被RS编码结果占用的区域用零字节填充。将RS编码结果按列从上向下依次填充到第二交织器,得到的数据分布情况(也即得到的数据列表)可以参照表4。
1 | 7 | … | 31 | 35 | … | 79 | r<sub>1,2</sub> | … | r<sub>1,11</sub> |
2 | 8 | … | 32 | 36 | … | 80 | r<sub>2,2</sub> | … | r<sub>2,11</sub> |
3 | 9 | … | 0 | r<sub>3,1</sub> | … | 81 | r<sub>1,3</sub> | … | r<sub>1,12</sub> |
4 | 10 | … | 33 | 37 | … | 82 | r<sub>2,3</sub> | … | r<sub>2,12</sub> |
5 | 11 | … | 34 | 38 | … | r<sub>1,1</sub> | r<sub>1,4</sub> | … | 0 |
6 | 12 | … | 0 | r<sub>3,2</sub> | … | r<sub>2,1</sub> | r<sub>2,4</sub> | … | 0 |
表4
对数据列表中的数据按列进行循环移位操作,将奇数列从上向下移位,将偶数列从下向上移位,第i列进行循环移位的操作位数z=mod(i-1,M2)。
第一列进行循环移位的操作位数z=0,则第一列可以保持不变。第二列进行循环移位的操作位数z=1,且第二列为从下向上移位,则移位后第二列的数值从上向下依次为:8、9、10、11、12、7。第三列进行循环移位的操作位数z=2,且第三列为从上向下移位,移位后的第三列的数值从上向下依次为:17、18、13、14、15、16。以此类推,完成循环移位操作。
在完成循环移位操作后,即可将循环移位操作得到的结果按列输出,得到第二交织结果。
参照图3,给出了在相同仿真环境下,采用本发明上述实施例中提供的RS编码加字节交织方法的与现有的RS编码交织方法的性能比较图。
图3中,仿真环境参数设置为:调制方式为二进制相移键控(Binary Phase ShiftKeying,BPSK),待编码数据的字节数为200个,仿真次数为1000次,噪声模型为同步于工频的周期噪声。横坐标为信噪比,纵坐标为误码率。曲线301为现有的RS编码加字节交织方法的性能曲线,曲线302为本发明实施例中的RS编码加字节交织方法的性能曲线。
从图3中可以得知,若要实现误码率为10-3,则现有的RS编码加字节交织方法需要的信噪比为2.25dB左右,而本发明实施例中提供的RS编码加字节交织方法需要的信噪比仅为1.5dB左右,二者相差0.75dB。也即相比于现有技术,采用本发明实施例中提供的RS编码加字节交织方法可以使得系统抗同步于工频的噪声性能提高0.75dB左右。
参照图4,给出了本发明实施例中的一种RS编码加字节交织系统40,包括:第一交织器401、RS编码器402、第二交织器403以及输出单元404,其中:
第一交织器401,适于接收输入的待编码数据,并根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织;
RS编码器402,适于接收所述第一交织器401生成的第一交织结果,并对所述第一交织结果按行进行RS编码;
第二交织器403,适于对所述RS编码器402按列输出的RS编码结果按列从上向下依次排列形成数据列表;将所述数据列表按列进行循环移位操作;其中,所述数据列表行数为M2,M2=N-1,N为一个同步于工频的噪声周期内的传输码元的个数;所述数据列表列数为所述RS编码结果的总字节长度与M2之商向上取整;所述数据列表中的每一列均存在一一对应的所述循环移位操作的操作位数,且奇数列与偶数列循环移位的方向不同;
输出单元404,适于将所述循环移位操作得到的结果按列输出,得到第二交织结果。
在具体实施中,所述第二交织器403适于对所述数据列表中的第i列进行操作位数z=mod(i-1,M2)的循环移位操作。
在具体实施中,所述第一交织器401得到的第一交织结果的行数M1=ceil(L/kmax),且前M1-1行的第1~kmax列均被有效数据填满,其中,L为输入的待编码数据的字节数,kmax为RS编码参数中的最大k值,ceil(L/kmax)为取大于L/kmax的最小整数值。
在具体实施中,所述第一交织器401可以适于:
将所述输入的待编码数据的前r×M1个字节按列从上向下依次写入至所述第一交织器,每列填充M1个字节;
剩余的L-r×M1个字节从第r+1行按列从上向下依次写入至所述第一交织器,每列填充M1-1个字节,直至所述第一交织器的第kmax列填满;
其中,r为最后一行的字节数,且r=L-kmax×(M1-1)。
在具体实施中,所述RS编码器402可以适于对所述第一交织结果按行进行编码,其中:将所述前M1-1行中的字节采用所述kmax对应的RS编码参数进行编码,将最后一行中的字节采用大于r的最小k值对应的RS编码参数进行编码。
在具体实施中,所述第二交织器403适于采用公式M2=ceil((fs/(ft×2))/8)-1计算得到M2,其中:fs为采样频率,ft为工频频率,ceil((fs/(ft×2))/8)为取大于(fs/(ft×2))/8的最小整数值。
在具体实施中,所述RS编码加字节交织系统的具体工作原理以及工作流程可以参照本发明上述实施例中提供的RS编码加字节交织方法,此处不做赘述。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (12)
1.一种RS编码加字节交织方法,其特征在于,包括:
获取待编码数据的字节数;
根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织,得到第一交织结果;
对所述第一交织结果按行进行RS编码;
将RS编码结果按列输出并进行第二类交织,得到第二交织结果,包括:
将所述RS编码结果按列从上向下依次排列形成数据列表;
将所述数据列表按列进行循环移位操作;
将所述循环移位操作得到的结果按列输出,得到所述第二交织结果;
其中,所述数据列表行数为M2,M2=N-1,N为一个同步于工频的噪声周期内的传输码元的个数;
所述数据列表列数为所述RS编码结果的总字节长度与M2之商向上取整;
所述数据列表中的每一列均存在一一对应的所述循环移位操作的操作位数,且奇数列与偶数列循环移位的方向不同。
2.如权利要求1所述的RS编码加字节交织方法,其特征在于,所述将所述数据列表按列进行循环移位操作,包括:对所述数据列表中的第i列进行循环移位的操作位数z=mod(i-1,M2)。
3.如权利要求1所述的RS编码加字节交织方法,其特征在于,采用第一交织器对所述待编码数据进行第一类交织,得到的第一交织结果的行数M1=ceil(L/kmax),且前M1-1行的第1~kmax列均被有效数据填满,其中,L为输入的待编码数据的字节数,kmax为RS编码参数中的最大k值,ceil(L/kmax)为取大于L/kmax的最小整数值。
4.如权利要求3所述的RS编码加字节交织方法,其特征在于,所述根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织,包括:
将所述输入的待编码数据的前r×M1个字节按列从上向下依次写入至所述第一交织器,每列填充M1个字节;
剩余的L-r×M1个字节从第r+1列按列从上向下依次写入至所述第一交织器,每列填充M1-1个字节,直至所述第一交织器的第kmax列填满;
其中,r为最后一行的字节数,且r=L-kmax×(M1-1)。
5.如权利要求4所述的RS编码加字节交织方法,其特征在于,所述对所述第一交织结果按行进行RS编码,包括:
将所述前M1-1行中的字节采用所述kmax对应的RS编码参数进行编码,将最后一行中的字节采用大于r的最小k值对应的RS编码参数进行编码。
6.如权利要求1所述的RS编码加字节交织方法,其特征在于,采用公式M2=ceil((fs/(ft×2))/8)-1计算得到M2,其中:fs为采样频率,ft为工频频率,ceil((fs/(ft×2))/8)为取大于(fs/(ft×2))/8的最小整数值。
7.一种RS编码加字节交织系统,其特征在于,包括:
第一交织器,适于接收输入的待编码数据,并根据所述待编码数据的字节数以及预设的RS编码参数对所述待编码数据进行第一类交织;
RS编码器,适于接收所述第一交织器生成的第一交织结果,并对所述第一交织结果按行进行RS编码;
第二交织器,适于对所述RS编码器按列输出的RS编码结果按列从上向下依次排列形成数据列表;将所述数据列表按列进行循环移位操作;其中,所述数据列表行数为M2,M2=N-1,N为一个同步于工频的噪声周期内的传输码元的个数;所述数据列表列数为所述RS编码结果的总字节长度与M2之商向上取整;所述数据列表中的每一列均存在一一对应的所述循环移位操作的操作位数,且奇数列与偶数列循环移位的方向不同;
输出单元,适于将所述循环移位操作得到的结果按列输出,得到第二交织结果。
8.如权利要求7所述的RS编码加字节交织系统,其特征在于,所述第二交织器适于对所述数据列表中的第i列进行操作位数z=mod(i-1,M2)的循环移位操作。
9.如权利要求7所述RS编码加字节交织系统,其特征在于,所述第一交织器得到的第一交织结果的行数M1=ceil(L/kmax),且前M1-1行的第1~kmax列均被有效数据填满,其中,L为输入的待编码数据的字节数,kmax为RS编码参数中的最大k值,ceil(L/kmax)为取大于L/kmax的最小整数值。
10.如权利要求9所述的RS编码加字节交织系统,其特征在于,所述第一交织器适于:
将所述输入的待编码数据的前r×M1个字节按列从上向下依次写入至所述第一交织器,每列填充M1个字节;
剩余的L-r×M1个字节从第r+1列按列从上向下依次写入至所述第一交织器,每列填充M1-1个字节,直至所述第一交织器的第kmax列填满;
其中,r为最后一行的字节数,且r=L-kmax×(M1-1)。
11.如权利要求10所述的RS编码加字节交织系统,其特征在于,所述RS编码器适于对所述第一交织结果按行进行编码,其中:将所述前M1-1行中的字节采用所述kmax对应的RS编码参数进行编码,将最后一行中的字节采用大于r的最小k值对应的RS编码参数进行编码。
12.如权利要求7所述的RS编码加字节交织系统,其特征在于,所述第二交织器适于采用公式M2=ceil((fs/(ft×2))/8)-1计算得到M2,其中:fs为采样频率,ft为工频频率,ceil((fs/(ft×2))/8)为取大于(fs/(ft×2))/8的最小整数值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511024385.6A CN106936541B (zh) | 2015-12-30 | 2015-12-30 | Rs编码加字节交织方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511024385.6A CN106936541B (zh) | 2015-12-30 | 2015-12-30 | Rs编码加字节交织方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106936541A CN106936541A (zh) | 2017-07-07 |
CN106936541B true CN106936541B (zh) | 2019-12-17 |
Family
ID=59441973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511024385.6A Active CN106936541B (zh) | 2015-12-30 | 2015-12-30 | Rs编码加字节交织方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106936541B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110098891B (zh) * | 2018-01-30 | 2021-09-07 | 华为技术有限公司 | 交织方法和交织装置 |
CN112422491B (zh) * | 2020-05-08 | 2024-09-20 | 上海幻电信息科技有限公司 | 数字编码的加密解密方法、服务器和存储介质 |
CN114268410B (zh) * | 2020-09-16 | 2023-10-31 | 中国科学院上海高等研究院 | 基于循环移位的交织方法、系统、设备及计算机存储介质 |
CN114978424B (zh) * | 2022-05-13 | 2023-12-22 | 上海瀚讯信息技术股份有限公司 | 一种跳步螺旋交织方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1642275A (zh) * | 2004-03-05 | 2005-07-20 | 上海交通大学 | 一种用于数字电视地面传输的比特交织方法 |
CN101013931A (zh) * | 2006-11-27 | 2007-08-08 | 北京创毅视讯科技有限公司 | 移动多媒体广播中的信道编码和交织方法及其装置 |
EP2226944A1 (en) * | 2007-12-14 | 2010-09-08 | ZTE Corporation | Device and method for interlaced encoding rs code |
CN102355313A (zh) * | 2011-10-19 | 2012-02-15 | 上海炜呈智能电力科技有限责任公司 | 基于信道认知技术的电力线通信方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101800724B (zh) * | 2009-02-11 | 2012-10-24 | 北京泰美世纪科技有限公司 | 移动多媒体广播发送系统 |
-
2015
- 2015-12-30 CN CN201511024385.6A patent/CN106936541B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1642275A (zh) * | 2004-03-05 | 2005-07-20 | 上海交通大学 | 一种用于数字电视地面传输的比特交织方法 |
CN101013931A (zh) * | 2006-11-27 | 2007-08-08 | 北京创毅视讯科技有限公司 | 移动多媒体广播中的信道编码和交织方法及其装置 |
EP2226944A1 (en) * | 2007-12-14 | 2010-09-08 | ZTE Corporation | Device and method for interlaced encoding rs code |
CN102355313A (zh) * | 2011-10-19 | 2012-02-15 | 上海炜呈智能电力科技有限责任公司 | 基于信道认知技术的电力线通信方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106936541A (zh) | 2017-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101502623B1 (ko) | 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널부호/복호 방법 및 장치 | |
CN106936541B (zh) | Rs编码加字节交织方法及系统 | |
CN101636914A (zh) | 用于编码和解码数据的方法和装置 | |
KR101702358B1 (ko) | 저밀도 패리티 검사 코드를 사용하는 통신 시스템에서의 채널 부호화/복호화 방법 및 장치 | |
KR102634676B1 (ko) | 고정 길이 시그널링 정보 부호화를 위한 제로 패딩 장치 및 이를 이용한 제로 패딩 방법 | |
JP5679059B2 (ja) | 無線送受信装置、通信システム及びそれらに用いるチャネルコーディング処理方法 | |
KR20240023542A (ko) | 가변 길이 시그널링 정보를 위한 역 패리티 인터리빙 장치 및 이를 이용한 역 패리티 인터리빙 방법 | |
CA2698533A1 (en) | Multi-layer cyclic redundancy check code in wireless communication system | |
KR20240018558A (ko) | 가변 길이 시그널링 정보를 위한 역 패리티 펑처링 장치 및 이를 이용한 역 패리티 펑처링 방법 | |
KR20240024869A (ko) | 가변 길이 시그널링 정보를 위한 역 제로 패딩 장치 및 이를 이용한 역 제로 패딩 방법 | |
KR102638450B1 (ko) | 가변 길이 시그널링 정보 부호화를 위한 제로 패딩 장치 및 이를 이용한 제로 패딩 방법 | |
KR20240023540A (ko) | 고정 길이 시그널링 정보를 위한 역 제로 패딩 장치 및 이를 이용한 역 제로 패딩 방법 | |
KR20240024868A (ko) | 고정 길이 시그널링 정보를 위한 역 패리티 인터리빙 장치 및 이를 이용한 역 패리티 인터리빙 방법 | |
KR20220141766A (ko) | 고정 길이 시그널링 정보 부호화를 위한 패리티 인터리빙 장치 및 이를 이용한 패리티 인터리빙 방법 | |
WO2007047472A1 (en) | Improved turbo code interleaver for low frame error rate | |
TW200926618A (en) | Devices and methods for bit-level coding and decoding of turbo codes, and a set of interleaving instructions recognizable by a data processing device | |
CN107408950A (zh) | 发送器及其奇偶校验置换方法 | |
CN108667556B (zh) | 比特交织编码调制方法 | |
KR20220139279A (ko) | 가변 길이 시그널링 정보 부호화를 위한 패리티 펑처링 장치 및 이를 이용한 패리티 펑처링 방법 | |
CN101667839B (zh) | 交织方法 | |
KR20090060106A (ko) | 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널부호화/복호화 방법 및 장치 | |
CN108011691A (zh) | 一种低密度奇偶校验码的传输方法及装置 | |
CN110557220B (zh) | 一种物理层信道编码及解码方法 | |
CN101662333B (zh) | 一种交织方法和装置 | |
Jassim et al. | Performance Comparison of Proposed Interleaver With Different Types for Parallel Turbo Code |
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 |