CN101771422B - 交织方法、编码方法、交织器与编码器 - Google Patents
交织方法、编码方法、交织器与编码器 Download PDFInfo
- Publication number
- CN101771422B CN101771422B CN 200910104887 CN200910104887A CN101771422B CN 101771422 B CN101771422 B CN 101771422B CN 200910104887 CN200910104887 CN 200910104887 CN 200910104887 A CN200910104887 A CN 200910104887A CN 101771422 B CN101771422 B CN 101771422B
- Authority
- CN
- China
- Prior art keywords
- list entries
- data block
- block length
- information bit
- described list
- 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/27—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 using interleaving techniques
- H03M13/2771—Internal interleaver for turbo codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明实施例提供一种在通信系统中进行交织的方法与交织器,还提供一种编码的方法与编码器。特别地,在现有系统提供的数据块长的基础上,增加新的数据块长,减少各个数据块长之间的间隔,可以减少编码时填充比特数目,提高系统频带利用率。
Description
技术领域
本发明实施例涉及数据编码技术领域,尤其涉及一种交织方法、编码方法、交织器与编码器。
背景技术
随着人们对于移动通信系统的频带利用率要求不断提高,出现了很多技术来提高移动通信系统的频带利用率,比如,可以采用多天线技术,自适应编码调制技术等。但是,在提高移动通信系统的频带利用率的同时,还要保证可靠通信。在保证通信可靠性方面,可以通过采用先进的信道编码技术,如Turbo码和低密度奇偶校验码(Low Density Parity Check;简称:LDPC)来保证。其中,Turbo码具有编码简单,译码性能逼近香农容量限,能够灵活支持各种码率等特点,特别适合高速无线通信系统使用。
通常,一个标准的Turbo码是由两个卷积码编码器通过一个内码交织器并行级联而成。其中的分量码编码器是具有递归结构的系统卷积码编码器。在WIMAX(Worldwide Interoperability for Microwave Access,微波存取全球互通)系统中,使用的一种CTC(Convolutional Turbo Code,卷积Turbo码)是基于两个双输入的递归系统卷积码编码器通过一个内码交织器并行级联而成,同时具有循环结尾的特点。即:分量码编码器经过编码后,分量码编码器的移位寄存器的终止状态和移位寄存器的初始状态相同,为了满足这一条件,要求输入的数据块长不能为7的倍数。。
现有WIMAX系统中,CTC采用ARP(Almost Regular Permutation,准规则交织)方法进行内码交织。具体交织形式可以用如下函数表示:
π(j)=(P0*j+d(j))modL,j=0,1,2,...,L-1
其中,L表示待编码的信息符号个数,P0与L互素,d(j)是一个周期为C的偏移向量,其中C表示环长。对于一个ARP交织器,待编码的数据块长要求是C的整数倍。
现有WIMAX系统中,CTC编码时数据块长的取值有{48,72,96,144,192,216,240,288,360,384,432,480,960,1920,2880,3840,4800},单位为比特(bit)。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:采用以上数据块长的取值,在编码时需要填充比特数目较多,导致系统的频带利用率降低。
发明内容
本发明实施例提供一种交织方法、编码方法、交织器以及编码器,可以在编码时减少填充比特数目,提高系统的频带利用率。
有鉴于此,本发明实施例提供一种交织方法,该方法包括:
对一输入序列进行信息比特对内交织,得到第一序列;
对所述第一序列根据函数π(j)进行交织,得到一输出序列;
其中,对于j=0,1,2,...,N-1,所述函数π(j)满足:
当jmod4==0时,π(j)=(P0·j+1)modN;
当jmod4==1时,π(j)=(P0·j+1+N/2+P1)modN;
当jmod4==2时,π(j)=(P0·j+1+P2)modN;
当jmod4==3时,π(j)=(P0·j+1+N/2+P3)modN;
其中,π(j)表示所述输出序列的信息比特对在所述第一序列中的位置索引号,N表示所述输入序列的信息比特对个数,P0、P1、P2和P3为交织偏移量参数,2N为所述输入序列的数据块长K;
其中,所述输入序列的数据块长K包括{120,264,312,408,456,528,576,624,720,768,816,864,912,1056,1152,1248,1440,1536,1632,1728,1824,2112,2208,2304,2400,2496,2592,2784,2976,3072,3168,3264,3456,3552,3648,3744,3936,4128,4224,4320,4416,4512,4608}中的至少一个;其中,数据块长K的单位为比特。
本发明实施例还提供一种交织器,该交织器包括:
第一交织单元,用于对一输入序列进行信息比特对内交织,得到第一序列;
第二交织单元,用于对所述第一序列根据函数π(j)进行交织,得到一输出序列;
其中,第二交织单元交织时可以采用上述交织方法实施例中给出的函数π(j),输入序列的数据块长可以选取上述交织方法中给出的取值。
本发明实施例还提供一种编码方法,该编码方法包括:
对一输入序列进行编码;
对所述输入序列进行信息比特对内交织,得到第一序列,并对所述第一序列根据函数π(j)进行交织,得到一输出序列;
对所述输出序列进行编码;
其中,交织过程采用的函数可以采用上述交织方法实施例给出的函数π(j),编码过程中的输入序列的数据块长可以选取上述交织方法中给出的取值。
本发明实施例还提供一种编码器,该编码器包括:
第一分量编码器,用于对一输入序列进行编码;
内码交织器,用于对所述输入序列进行信息比特对内交织,得到第一序列,并对所述第一序列根据函数π(j)进行交织,得到一输出序列;
第二分量编码器,用于对所述输出序列进行编码;
其中,内码交织器交织时可以采用上述交织方法实施例中给出的函数π(j),该编码器的输入序列的数据块长可以选取上述交织方法中给出的取值。
本发明实施例提供的交织方法、编码方法、交织器以及编码器,在现有系统中提供的数据块长的基础上增加了编码时可以使用的数据块长。这样,可以减少数据块长之间的间隔,进而可以减少编码时填充比特数目,提高系统频带利用率。
附图说明
图1为本发明交织方法的一个实施例流程示意图;
图2为本发明编码方法的一个实施例流程示意图;
图3为本发明编码器的一个实施例结构示意图;
图4为本发明编码器的另一个实施例结构示意图;
图5为本发明交织器的一个实施例结构示意图;
图6为本发明实施例提供的数据块长和现有WIMAX系统中使用的数据块长在BLER(Block Error Rate,误块率) 分别为10%,1%,0.1%时的仿真结果。
具体实施方式
下面结合附图和具体方式进一步说明本发明实施例的技术方案。
本发明实施例涉及通信系统中的编解码技术。本发明实施例中,提供了间隔较小的数据块长,可以在编码时减少填充比特的数目,提高系统频带利用率。
图1为本发明交织方法的一个实施例流程示意图。如图1所示,该交织方法可以包括:
步骤101,对一输入序列进行信息比特对内交织,得到第一序列。
在这一步的交织过程中,对输入序列进行信息比特对内交织可以是对输入序列的信息比特对交替地进行信息比特对内交换。
下面以一个具体的例子说明该交织过程。
假设输入序列u0=[(A0,B0),(A1,B1),(A2,B2),(A3,B3),...,(AN-1,BN-1)],对输入序列进行信息比特对内交织可以采用以下方法:
如果输入序列的信息比特对(Ai,Bi)(其中,i=0,1,2,...,N-1)的下标i满足imod2==1,则交换Ai和Bi的顺序;这样,交织后得到的序列u1=[(A0,B0),(B1,A1),(A2,B2),(B3,A3),...,(BN-1,AN-1)]=[u1(0),u1(1),u1(2),u1(3),...,u1(N-1)]。
当然,还可以采用另一种信息比特对内交织的方法:
如果输入序列的信息比特对(Ai,Bi)(i=0,1,2,...,N-1)的下标i满足imod2==0,则交换Ai和Bi的顺序,进而获得交织后的序列:u1=[(B0,A0),(A1,B1),(B2,A2),(A3,B3),...,(AN-1,BN-1)]=[u1(0),u1(1),u1(2),u1(3),...,u1(N-1)]。
本领域技术人员可以理解的是,对输入序列进行信息比特对内交织并不局限于以上的举例,还可能有其他的交织方法。
步骤102,对第一序列根据函数π(j)进行交织,得到一输出序列。
本步骤中,对于j=0,1,2,...,N-1,函数π(j)满足:
当jmod4==0时,π(j)=(P0·j+1)modN;
当jmod4==1时,π(j)=(P0·j+1+N/2+P1)modN;
当jmod4==2时,π(j)=(P0·j+1+P2)modN;
当jmod4==3时,π(j)=(P0·j+1+N/2+P3)modN;
其中,π(j)表示该输出序列的信息比特对在第一序列中的位置索引号,N表示输入序列的信息比特对个数,P0、P1、P2和P3为交织偏移量参数,2N为所述输入序列的数据块长K。
本发明实施例中,输入序列的数据块长K可以从{120,264,312,408,456,528,576,624,720,768,816,864,912,1056,1152,1248,1440,1536,1632,1728,1824,2112,2208,2304,2400,2496,2592,2784,2976,3072,3168,3264,3456,3552,3648,3744,3936,4128,4224,4320,4416,4512,4608}中取值,其中,K的单位为比特。
本发明实施例中,选取了一些数据块长,使输入序列的数据块长的间隔变小。显然,选取本发明实施例提供的数据块长,在使用上述交织方法进行CTC编码时就可以减少填充的比特数目,提高系统频带利用率。
本发明实施例中,输入序列的数据块长K、输入序列的信息比特对个数N、以及交织偏移量参数(或者称为交织参数)P0、P1、P2和P3可以从表1中选取。
表1
K(比特) | N | P0 | P1 | P2 | P3 | K(比特) | N | P0 | P1 | P2 | P3 |
120 | 60 | 7 | 30 | 28 | 30 | 2208 | 1104 | 67 | 2 | 32 | 10 |
264 | 132 | 5 | 6 | 24 | 6 | 2304 | 1152 | 67 | 22 | 96 | 10 |
312 | 156 | 5 | 2 | 44 | 54 | 2400 | 1200 | 59 | 22 | 32 | 26 |
408 | 204 | 11 | 12 | 44 | 8 | 2496 | 1248 | 53 | 60 | 64 | 92 |
456 | 228 | 13 | 20 | 44 | 8 | 2592 | 1296 | 47 | 96 | 28 | 40 |
528 | 264 | 5 | 2 | 36 | 82 | 2784 | 1392 | 59 | 20 | 16 | 96 |
576 | 288 | 11 | 34 | 4 | 78 | 2976 | 1488 | 47 | 72 | 56 | 96 |
624 | 312 | 11 | 46 | 52 | 6 | 3072 | 1536 | 59 | 28 | 72 | 44 |
720 | 360 | 13 | 2 | 12 | 58 | 3168 | 1584 | 61 | 52 | 80 | 32 |
768 | 384 | 11 | 84 | 84 | 80 | 3264 | 1632 | 37 | 66 | 12 | 94 |
816 | 408 | 5 | 6 | 88 | 62 | 3456 | 1728 | 53 | 22 | 28 | 94 |
864 | 432 | 19 | 84 | 56 | 72 | 3552 | 1776 | 53 | 20 | 60 | 64 |
912 | 456 | 37 | 8 | 24 | 16 | 3648 | 1824 | 59 | 46 | 52 | 82 |
1056 | 528 | 43 | 66 | 4 | 90 | 3744 | 1872 | 31 | 36 | 96 | 24 |
1152 | 576 | 29 | 60 | 16 | 24 | 3936 | 1968 | 67 | 6 | 88 | 54 |
1248 | 624 | 31 | 62 | 8 | 22 | 4128 | 2064 | 67 | 14 | 8 | 58 |
1440 | 720 | 37 | 86 | 32 | 42 | 4224 | 2112 | 59 | 16 | 8 | 40 |
1536 | 768 | 47 | 38 | 28 | 98 | 4320 | 2160 | 37 | 54 | 24 | 66 |
1632 | 816 | 43 | 86 | 12 | 58 | 4416 | 2208 | 37 | 54 | 4 | 82 |
1728 | 864 | 53 | 18 | 20 | 90 | 4512 | 2256 | 53 | 68 | 44 | 4 |
1824 | 912 | 53 | 4 | 24 | 60 | 4608 | 2304 | 31 | 68 | 4 | 88 |
2112 | 1056 | 47 | 34 | 56 | 62 |
表1中,每个数据块长对应的交织参数P0、P1、P2和P3可以通过BLER性能仿真结果获得。或者,还可以考虑BLER性能仿真结果与收发两端的存储开销两方面获得上述交织参数。当然,本领域技术人员可以理解的是,本发明实施例并不局限于表1所提供的交织参数。比如,对表1所提供的交织参数根据仿真结果进行必要的修正得到的交织参数也应当包含在本发明实施例的范围之内。
图2为本发明编码方法的一个实施例流程示意图。如图2所示,该编码方法可以包括:
步骤201,对输入序列进行编码。
假设输入序列为u0=[(A0,B0),(A1,B1),(A2,B2),(A3,B3),...,(AN-1,BN-1)],如果以CTC编码为例,该步骤中,由双输入的递归系统卷积码编码器对输入序列进行编码,生成两路校验比特序列Y1和W1。
步骤202,对输入序列进行两步交织。
本步骤中,对输入序列进行两步交织具体为:首先对输入序列进行信息比特对内交织,得到第一序列;然后对该第一序列根据函数π(j)进行交织,得到一输出序列。对输入序列进行两步交织的具体过程还可以参考图1所示的交织方法实施例中步骤102和步骤103的描述。
本步骤中,对于j=0,1,2,...,N-1,函数π(j)满足:
当jmod4==0时,π(j)=(P0·j+1)modN;
当jmod4==1时,π(j)=(P0·j+1+N/2+P1)modN;
当jmod4==2时,π(j)=(P0·j+1+P2)modN;
当jmod4==3时,π(j)=(P0·j+1+N/2+P3)modN;
其中,π(j)表示输出序列的信息比特对在第一序列中的位置索引号,N表示输入序列的信息比特对个数,P0、P1、P2和P3为交织偏移量参数,2N为输入序列的数据块长K。
其中,输入序列的数据块长K可以从{120,264,312,408,456,528,576,624,720,768,816,864,912,1056,1152,1248,1440,1536,1632,1728,1824,2112,2208,2304,2400,2496,2592,2784,2976,3072,3168,3264,3456,3552,3648,3744,3936,4128,4224,4320,4416,4512,4608}中取值,其中K的单位为比特。
本发明实施例中,输入序列的数据块长K、输入序列的信息比特对个数N、以及交织偏移量参数(或者称为交织参数)P0、P1、P2和P3可以参照表1进行选取。当然,输入序列的数据块长K对应的交织参数还可以根据BLER性能仿真结果选取不同于表1给出的值。
步骤203,对输出序列进行编码。
该步骤同步骤201类似,如果以CTC编码为例,该步骤中,由双输入的递归系统卷积码编码器对输出序列进行编码,并生成两路校验比特序列Y2和W2。
本实施例提供的编码方法中,选取了一些间隔较小的数据块长,在进行CTC编码时可以减少填充的比特数目,提高系统频带利用率。
图3为本发明编码器的一个实施例结构示意图。如图3所示,该编码器由两个双输入的递归系统卷积码编码器31和32(或者称为分量编码器)通过一个内码交织器33并行级联而成。其中,两个分量码编码器31和32均为8状态的双输入递归系统卷积编码器。
其中,分量编码器31用于对输入序列进行编码,输出的校验比特序列在图3中标记为(Y1、W1);分量编码器32用于对内码交织器33输出的序列进行编码,输出的校验比特序列在图3中标记为(Y2、W2);内码交织器33用于对输入序列进行交织。
其中,内码交织器33的交织过程可以分为两步交织。
第一步,信息比特对内交织。
假设序列u0=[(A0,B0),(A1,B1),(A2,B2),(A3,B3),...,(AN-1,BN-1)]作为第一分量编码器31和内码交织器33的输入序列。其中N表示输入的序列的信息比特对数目。
其中,内码交织器33第一步的交织过程为:
如果输入序列的信息比特对(Ai,Bi)(其中,i=0,1,2,...,N-1)的下标i满足imod 2==1,则交换Ai和Bi的顺序,获得交织后的序列:u1=[(A0,B0),(B1,A1),(A2,B2),(B3,A3),...,(BN-1,AN-1)]=[u1(0),u1(1),u1(2),u1(3),...,u1(N-1)],然后将u1进行第二步交织处理。
本领域技术人员可以理解的是,在第一步交织中,也可以是对输入序列的信息比特对(Ai,Bi)的下标i满足imod2==0是,交换Ai和Bi的顺序,进而获得交织后的序列:
u1=[(B0,A0),(A1,B1),(B2,A2),(A3,B3),...,(AN-1,BN-1)]=[u1(0),u1(1),u1(2),u1(3),...,u1(N-1)],然后将其进行第二步交织处理。
第二步,采用函数π(j)对u1的信息比特对进行交织。
其中,π(j)表示通过第二步交织后序列的信息比特对在交织前序列中的位置,即u2(j)=u1(π(j))。第二步中,具体的交织方法为:
对于j=0,1,2,…,N-1,函数π(j)满足:
当jmod 4==0时,π(j)=(P0·j+1)modN;
当jmod 4==1时,π(j)=(P0·j+1+N/2+P1)mod N;
当jmod 4==2时,π(j)=(P0·j+1+P2)mod N;
当jmod 4==3时,π(j)=(P0·j+1+N/2+P3)modN。
通过第二步交织,获得序列u2=[u1(π(0)),u1(π(1)),u1(π(2)),...,u1(π(N-1))],然后将序列u2输入到分量编码器32进行编码。
其中,N是输入序列的信息比特对数目,2N为输入序列的数据块长K,P0、P1、P2和P3是相应的交织偏移量参数(或者称为交织参数)。这些交织参数可以和数据块长K一起存储在收发两端的随机存储器(RAM)中。
本发明实施例中,输入序列的数据块长K(K的单位为比特)可以从{120,264,312,408,456,528,576,624,720,768,816,864,912,1056,1152,1248,1440,1536,1632,1728,1824,2112,2208,2304,2400,2496,2592,2784,2976,3072,3168,3264,3456,3552,3648,3744,3936,4128,4224,4320,4416,4512,4608}中选取。
本发明的实施例中,在现有系统采用的数据块长的基础上,增加新的数据块长,可以减少各个数据块长之间的间隔,进而在CTC编码时可以减少填充比特的数目,提高系统频带利用率。
本发明实施例中,CTC编码器还可以采用如图4所示的结构。如图4所示,CTC编码器有一个分量编码器41。当切换开关位于图4中所示的位置1时,执行的编码过程与图3中分量编码器31执行的编码过程一致;当切换开关切换到位置2时,执行的编码过程与图3中分量编码器32执行的编码过程一致。内码交织器43执行的交织过程与图3中内码交织器33执行的交织过程一致。
本发明实施例中,输入序列的数据块长K、输入序列的信息比特对个数N、以及交织参数P0、P1、P2和P3可以参照表1进行选取。当然,输入序列的数据块长K对应的交织参数还可以根据BLER性能仿真结果选取不同于表1给出的值。
由表1可知,在现有系统提供的数据块长的基础上,增加了一些新的数据块长供编码时使用。这样,可以降低各数据块长之间的间隔,使得编码时需要填充比特数目减少。例如,当所输入的比特流为1000bits,在支持HARQ情况下,若应用现有系统提供的数据块长则选择1920bits的数据块长,因此所要填充比特数目为920bits(即:1920bits-1000bits=920bits),所填充比特数目几乎接近有效数据块长,将严重地影响到系统的频带利用率。而应用本实施例提供的数据块长,则可以选用1056bits的数据块长,此时所要填充比特数目仅为56bits,远远小于920bits,可以大大提高系统的频带利用率。
本发明实施例还提供一种选取数据块长的方法,在选取数据块长时可以考虑译码时的并行度这一因素。本实施例中并行度表示在分量译码器进行并行译码时子块译码器的数目。
本发明的发明人经过分析发现,现有系统中可供选择的数据块长下可以支持的并行度如表2所示。其中,表2所给出的并行度仅从可以满足并行译码条件出发,未考虑对于实际译码性能的影响。
表2
数据块长(比特) | 并行度 | 数据块长(比特) | 并行度 |
48 | 1 2 3 4 6 8 12 | 384 | 1 2 3 4 6 8 12 |
72 | 1 2 3 4 6 9 12 | 432 | 1 2 3 4 6 8 9 12 |
96 | 1 2 3 4 6 8 12 | 480 | 1 2 3 4 5 6 8 10 12 |
144 | 1 2 3 4 6 9 12 | 960 | 1 2 3 4 5 6 8 10 12 |
192 | 1 2 3 4 6 8 12 | 1920 | 1 2 3 4 5 6 8 10 12 |
216 | 1 3 9 | 2880 | 1 2 3 4 5 6 8 9 10 12 |
240 | 1 2 3 4 5 6 8 10 12 | 3840 | 1 2 3 4 5 6 8 10 12 |
288 | 1 2 3 4 6 8 9 12 | 4800 | 1 2 3 4 5 6 8 10 12 |
360 | 1 2 3 4 5 6 9 10 12 |
从表2中可以看出,现有系统中选取的数据块长下对应的并行度中均含有并行度1和3。因此,在选取数据块长时可以考虑并行度这一因素,选取的数据块长是3的倍数。
再有,根据以上描述可知,CTC具有双输入的特点,译码操作的基本单位是信息比特对。因此,在选取数据块长时也可以考虑CTC的这一特点,选取的数据块长是2的倍数。
另外,随着数据块长的增加,为了获得更大的编码增益同时尽量减少收发两端的存储开销,本实施例中,使用ARP交织方法时,取环长为4。因此,本实施例中选取的数据块长对应的信息比特对数目N为4的倍数。
同时,本实施例中数据块长的选取还考虑了与现有系统中的数据块长相兼容。因此,本实施例中选取的数据块长为3×2×4的倍数。
本发明的发明人发现,接收端为了提高译码器吞吐量而采用并行译码,会影响译码性能;且随着并行度的增加,对于并行译码性能的影响越明显。因此,本发明实施例中对并行度的选取考虑了译码性能。下面给出本发明实施例提供的数据块长对应的并行度选择方案:
当48≤K≤480bits时,可以使用的并行度为1、3;
当480<K≤960bits时,可以使用的并行度为1,2,3,6;
当960<K≤4800bits时,可以使用的并行度为1,2,3,4,6,12。
上述并行度选择方案在保证接收端译码性能的基础上,可以在一定的数据块长范围内,具有相同的并行度,简化硬件的实现。
如表1所示,本发明实施例提供的可供编码时使用的数据块长中不包括7的整数倍的情况。例如168bits虽然满足为3×2×4的倍数的要求,但是其同时也是7的整数倍,因此不包括在本发明实施例提供的数据块长的范围内。
上述实施例是基于最大数据块长为4800bits的情况,在本发明其他实施例中,如果系统要求最大的数据块长接近IP包长的一半,其中IP包的最大包长为1500bytes左右,可以选用的最大数据块长为6144bits。相应的,大于4800bits的数据块长部分可以采用如下公式获得:
K=25×3×l,l=51,52,53,...,64。
此时,数据块长之间的间隔为96bits,可以使用的并行度为1,2,3,4,6,12。当然,数据块长也不包括K为7的倍数的情况。
本发明实施例提出的并行度选择方案,可以在保证接收端译码性能的基础上,在一定的数据块长范围内,接收端的译码器具有相同的译码并行度,以简化硬件实现。
图5为本发明交织器的一个实施例结构示意图。如图5所示,该交织器包含第一交织单元51和第二交织单元52。其中,第一交织单元51用于对一输入序列进行信息比特对内交织,得到第一序列;第二交织单元52用于对所述第一序列根据函数π(j)进行交织,得到一输出序列。第一交织单元51和第二交织单元52采用的具体的交织方法可以为图3所示的内码交织器33的两步交织方法,在此不再赘述。
图6为本发明实施例提供的数据块长以及现有WIMAX系统中使用的数据块长在BLER分别为10%,1%,0.1%时的仿真结果。其中,图6的仿真结果所采用的仿真条件为:码率为1/3,QPSK(Quadrature Phase Shift Keying,正交相位转换键控)调制,译码算法为Max-Log-MAP,迭代次数为8次,仿真信道为加性高斯白噪声信道。
本发明的发明人通过仿真发现,现有WIMAX系统中数据块长取值为360bits,432bits,480bits,1920bits,2880bits,3840bits和4800bits,在BLER分别为10%,1%,0.1%时比邻近的数据块长性能差,BLER性能并没有随着数据块长的增加而有所改善。因此,不利于调制编码方案的制定,同时影响系统调度的性能。
另外,对于现有WIMAX系统中数据块长为384bits的情况,交织参数P3需要8个比特进行存储,而本发明实施例中新增加的数据块长最多仅需要7个比特来存储。因此,本发明实施例中还对数据块长为384bits时的交织参数进行优化设计。
因此,本发明实施例还给出数据块长为360bits,384bits,432bits,480bits,1920bits,2880bits,3840bits和4800bits时所采用的新的交织参数,如表3所示:
K(比特) | N | P0 | P1 | P2 | P3 |
360 | 180 | 11 | 48 | 48 | 4 |
384 | 192 | 5 | 4 | 20 | 44 |
432 | 216 | 7 | 54 | 32 | 26 |
480 | 240 | 19 | 34 | 24 | 94 |
1920 | 960 | 49 | 80 | 68 | 40 |
2880 | 1440 | 47 | 20 | 60 | 60 |
3840 | 1920 | 71 | 88 | 8 | 20 |
4800 | 2400 | 67 | 98 | 80 | 90 |
对于数据块长为360bits,432bits,480bits,1920bits,2880bits,3840bits和4800bits情况,本发明实施例提出新的交织参数P0、P1、P2和P3在尽量减少收发两端的存储开销的基础上,可以提高这些数据块长下的BLER性能。同时,对于数据块长为384bits的情况,经过优化后的交织参数P3仅需要7个比特来存储。
本领域技术人员可以理解的是,以上实施例在不冲突的前提下可以相互结合。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (22)
1.一种交织方法,其特征在于,包括:
对一输入序列进行信息比特对内交织,得到第一序列;
对所述第一序列根据函数π(j)进行交织,得到一输出序列;
其中,对于j=0,1,2,...,N-1,所述函数π(j)满足:
当jmod4==0时,π(j)=(P0·j+1)modN;
当jmod4==1时,π(j)=(P0·j+1+N/2+P1)modN;
当jmod4==2时,π(j)=(P0·j+1+P2)modN;
当jmod4==3时,π(j)=(P0·j+1+N/2+P3)modN;
其中,π(j)表示所述输出序列的信息比特对在所述第一序列中的位置索引号,N表示所述输入序列的信息比特对个数,P0、P1、P2和P3为交织偏移量参数,2N为所述输入序列的数据块长K;
其中,所述输入序列的数据块长K包括{120,264,312,408,456,528,576,624,720,768,816,864,912,1056,1152,1248,1440,1536,1632,1728,1824,2112,2208,2304,2400,2496,2592,2784,2976,3072,3168,3264,3456,3552,3648,3744,3936,4128,4224,4320,4416,4512,4608}中的至少一个;其中,数据块长K的单位为比特。
2.如权利要求1所述的交织方法,其特征在于,当所述输入序列的数据块长大于4800比特时,
根据公式K=25×3×l,l=51,52,53,...,64选取不是7的整倍数的值作为所述输入序列的数据块长。
5.如权利要求1至4任意一项所述的交织方法,其特征在于,所述对一输入序列进行信息比特对内交织包括:
对所述输入序列的信息比特对交替地进行信息比特对内交换。
6.一种交织器,其特征在于,包括:
第一交织单元,用于对一输入序列进行信息比特对内交织,得到第一序列;
第二交织单元,用于对所述第一序列根据函数π(j)进行交织,得到一输出序列;
其中,对于j=0,1,2,...,N-1,所述函数π(j)满足:
当jmod4==0时,π(j)=(P0·j+1)modN;
当jmod4==1时,π(j)=(P0·j+1+N/2+P1)modN;
当jmod4==2时,π(j)=(P0·j+1+P2)modN;
当jmod4==3时,π(j)=(P0·j+1+N/2+P3)modN;
其中,π(j)表示所述输出序列的信息比特对在所述第一序列中的位置索引号,N表示所述输入序列的信息比特对个数,P0、P1、P2和P3为交织偏移量参数,2N为所述输入序列的数据块长K;
其中,所述输入序列的数据块长K包括{120,264,312,408,456,528,576,624,720,768,816,864,912,1056,1152,1248,1440,1536,1632,1728,1824,2112,2208,2304,2400,2496,2592,2784,2976,3072,3168,3264,3456,3552,3648,3744,3936,4128,4224,4320,4416,4512,4608}中的至少一个;其中,数据块长K的单位为比特。
7.如权利要求6所述的交织器,其特征在于,当所述输入序列的数据块长大于4800比特时,
根据公式K=25×3×l,l=51,52,53,...,64选取不是7的整倍数的值作为所述输入序列的数据块长。
10.如权利要求6至9任意一项所述的交织器,其特征在于,所述第一交织单元具体用于对所述输入序列的信息比特对交替地进行信息比特对内交换。
11.一种编码方法,其特征在于,包括:
对一输入序列进行编码;
对所述输入序列进行信息比特对内交织,得到第一序列,并对所述第一序列根据函数π(j)进行交织,得到一输出序列;
对所述输出序列进行编码;
其中,对于j=0,1,2,...,N-1,所述函数π(j)满足:
当jmod4==0时,π(j)=(P0·j+1)modN;
当jmod4==1时,π(j)=(P0·j+1+N/2+P1)modN;
当jmod4==2时,π(j)=(P0·j+1+P2)modN;
当jmod4==3时,π(j)=(P0·j+1+N/2+P3)modN;
其中,π(j)表示所述输出序列的信息比特对在所述第一序列中的位置索引号,N表示所述输入序列的信息比特对个数,P0、P1、P2和P3为交织偏移量参数,2N为所述输入序列的数据块长K;
其中,所述输入序列的数据块长K包括{120,264,312,408,456,528,576,624,720,768,816,864,912,1056,1152,1248,1440,1536,1632,1728,1824,2112,2208,2304,2400,2496,2592,2784,2976,3072,3168,3264,3456,3552,3648,3744,3936,4128,4224,4320,4416,4512,4608}中的至少一个;其中,数据块长K的单位为比特。
12.如权利要求11所述的编码方法,其特征在于,当所述输入序列的数据块长大于4800比特时,
根据公式K=25×3×l,l=51,52,53,...,64选取不是7的整倍数的值作为所述输入序列的数据块长。
15.如权利要求11至14任意一项所述的编码方法,其特征在于,对所述输入序列进行信息比特对内交织包括:
对所述输入序列的信息比特对交替地进行信息比特对内交换。
17.一种编码器,其特征在于,包括:
第一分量编码器,用于对一输入序列进行编码;
内码交织器,用于对所述输入序列进行信息比特对内交织,得到第一序列,并对所述第一序列根据函数π(j)进行交织,得到一输出序列;
第二分量编码器,用于对所述输出序列进行编码;
其中,对于j=0,1,2,...,N-1,所述函数π(j)满足:
当jmod4==0时,π(j)=(P0·j+1)modN;
当jmod4==1时,π(j)=(P0·j+1+N/2+P1)modN;
当jmod4==2时,π(j)=(P0·j+1+P2)modN;
当jmod4==3时,π(j)=(P0·j+1+N/2+P3)modN;
其中,π(j)表示所述输出序列的信息比特对在所述第一序列中的位置索引号,N表示所述输入序列的信息比特对个数,P0、P1、P2和P3为交织偏移量参数,2N为所述输入序列的数据块长K;
其中,所述输入序列的数据块长K包括{120,264,312,408,456,528,576,624,720,768,816,864,912,1056,1152,1248,1440,1536,1632,1728,1824,2112,2208,2304,2400,2496,2592,2784,2976,3072,3168,3264,3456,3552,3648,3744,3936,4128,4224,4320,4416,4512,4608}中的至少一个;其中,数据块长K的单位为比特。
18.如权利要求17所述的编码器,其特征在于,当所述输入序列的数据块长大于4800比特时,
根据公式K=25×3×l,l=51,52,53,...,64选取不是7的整倍数的值作为所述输入序列的数据块长。
21.如权利要求17所述的编码器,其特征在于,所述第一分量编码器与所述第二分量编码器为同一个分量编码器。
22.如权利要求17至21任意一项所述的编码器,其特征在于,所述内码交织器用于对所述输入序列进行信息比特对内交织具体为:
所述内码交织器用于对所述输入序列的信息比特对交替地进行信息比特对内交换。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910104887 CN101771422B (zh) | 2009-01-04 | 2009-01-04 | 交织方法、编码方法、交织器与编码器 |
PCT/CN2009/076040 WO2010075748A1 (zh) | 2009-01-04 | 2009-12-25 | 交织方法、编码方法、交织器与编码器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910104887 CN101771422B (zh) | 2009-01-04 | 2009-01-04 | 交织方法、编码方法、交织器与编码器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101771422A CN101771422A (zh) | 2010-07-07 |
CN101771422B true CN101771422B (zh) | 2013-04-24 |
Family
ID=42309804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910104887 Active CN101771422B (zh) | 2009-01-04 | 2009-01-04 | 交织方法、编码方法、交织器与编码器 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101771422B (zh) |
WO (1) | WO2010075748A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104022785B (zh) * | 2014-06-20 | 2017-01-18 | 成都德芯数字科技股份有限公司 | Dvb‑t2标准中的比特交织方法 |
CN113992212B (zh) * | 2021-12-27 | 2022-03-22 | 成都星联芯通科技有限公司 | 数据交织方法及fpga |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101083512A (zh) * | 2006-06-02 | 2007-12-05 | 中兴通讯股份有限公司 | 一种双二进制咬尾Turbo码编码方法和装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100918819B1 (ko) * | 2002-10-19 | 2009-09-25 | 삼성전자주식회사 | 개선된 구조의 내부인터리버를 가지는 디지털방송시스템의 전송장치 및 그의 전송방법 |
JP4166742B2 (ja) * | 2004-09-22 | 2008-10-15 | 株式会社東芝 | 無線通信装置およびそのインタリーブ方法ならびにデインタリーブ方法 |
WO2008057041A2 (en) * | 2006-11-10 | 2008-05-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Quadratic permutation polynomial interleaver/de-interleaver for turbo codes |
CN100588144C (zh) * | 2006-11-27 | 2010-02-03 | 北京创毅视通科技有限公司 | 移动多媒体广播中的信道编码和交织及解码和解交织方法 |
CN101060481A (zh) * | 2007-02-05 | 2007-10-24 | 中兴通讯股份有限公司 | 一种Turbo码传输块的分段方法 |
-
2009
- 2009-01-04 CN CN 200910104887 patent/CN101771422B/zh active Active
- 2009-12-25 WO PCT/CN2009/076040 patent/WO2010075748A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101083512A (zh) * | 2006-06-02 | 2007-12-05 | 中兴通讯股份有限公司 | 一种双二进制咬尾Turbo码编码方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2010075748A1 (zh) | 2010-07-08 |
CN101771422A (zh) | 2010-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1178399C (zh) | 高度并行最大后验概率(map)解码器 | |
US8407561B2 (en) | Formulaic flexible collision-free memory accessing for parallel turbo decoding with quadratic polynomial permutation (QPP) interleave | |
CN101710850B (zh) | 卷积Turbo编码方法及实现编码方法的设备 | |
US20160119001A1 (en) | Methods, apparatus, and systems for coding with constrained interleaving | |
US9118350B2 (en) | Methods, apparatus, and systems for coding with constrained interleaving | |
US8532209B2 (en) | Methods, apparatus, and systems for coding with constrained interleaving | |
US9112534B2 (en) | Methods, apparatus, and systems for coding with constrained interleaving | |
US8572469B2 (en) | Turbo decoder employing ARP (almost regular permutation) interleave and arbitrary number of decoding processors | |
Gnaedig et al. | Design of three-dimensional multiple slice turbo codes | |
US9154165B2 (en) | Apparatus and method for transmitting data using a CTC (convolutional turbo code) encoder in a mobile communication system | |
CN108111256A (zh) | 级联编译方法、装置、存储介质及其计算机设备 | |
JP5700035B2 (ja) | 誤り訂正符号復号装置、誤り訂正符号復号方法および誤り訂正符号復号プログラム | |
CN101777923B (zh) | Ctc编码器、内码交织器以及内码交织方法、编码处理方法 | |
US20080276153A1 (en) | Optimal period rate matching for turbo coding | |
CN101771422B (zh) | 交织方法、编码方法、交织器与编码器 | |
CN101931453A (zh) | 一种基于随机序列的用于交织多址系统的方法 | |
CN101350626B (zh) | 一种Turbo码编码装置及方法 | |
CN1211931C (zh) | 用于最大后验概率解码器的存储器体系结构 | |
CN101150551A (zh) | 低密度奇偶校验编码的qpsk/8psk系统的交织方案 | |
CN108880569B (zh) | 一种基于反馈分组马尔科夫叠加编码的速率兼容编码方法 | |
Omeira et al. | A code-matched collision-free S-random interleaver for turbo codes | |
US8769372B2 (en) | System and method for assigning code blocks to constituent decoder units in a turbo decoding system having parallel decoding units | |
CN101741505A (zh) | 通信系统中内码交织的方法及装置 | |
Zhao et al. | The applied research of convolutional turbo code based on WiMAX protocol | |
CN116455429A (zh) | 一种基于最优贝叶斯算法的多用户电力线通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |