CN110798229A - 一种Turbo码交织器的产生方法 - Google Patents
一种Turbo码交织器的产生方法 Download PDFInfo
- Publication number
- CN110798229A CN110798229A CN201810865724.0A CN201810865724A CN110798229A CN 110798229 A CN110798229 A CN 110798229A CN 201810865724 A CN201810865724 A CN 201810865724A CN 110798229 A CN110798229 A CN 110798229A
- Authority
- CN
- China
- Prior art keywords
- interleaver
- turbo code
- diffusion factor
- free
- interleaving
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000004088 simulation Methods 0.000 claims abstract description 25
- 238000001228 spectrum Methods 0.000 claims abstract description 22
- 238000009792 diffusion process Methods 0.000 claims description 57
- YBJHBAHKTGYVGT-ZKWXMUAHSA-N (+)-Biotin Chemical compound N1C(=O)N[C@@H]2[C@H](CCCCC(=O)O)SC[C@@H]21 YBJHBAHKTGYVGT-ZKWXMUAHSA-N 0.000 claims description 11
- FEPMHVLSLDOMQC-UHFFFAOYSA-N virginiamycin-S1 Natural products CC1OC(=O)C(C=2C=CC=CC=2)NC(=O)C2CC(=O)CCN2C(=O)C(CC=2C=CC=CC=2)N(C)C(=O)C2CCCN2C(=O)C(CC)NC(=O)C1NC(=O)C1=NC=CC=C1O FEPMHVLSLDOMQC-UHFFFAOYSA-N 0.000 claims description 11
- 230000003595 spectral effect Effects 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims description 3
- 238000012937 correction Methods 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000004422 calculation algorithm Methods 0.000 description 11
- 238000013461 design Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 102100035087 Ectoderm-neural cortex protein 1 Human genes 0.000 description 6
- 101000877456 Homo sapiens Ectoderm-neural cortex protein 1 Proteins 0.000 description 6
- 101001006871 Homo sapiens Kelch-like protein 25 Proteins 0.000 description 6
- 102100027800 Kelch-like protein 25 Human genes 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 108010003272 Hyaluronate lyase Proteins 0.000 description 1
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000452 restraining effect Effects 0.000 description 1
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/2957—Turbo codes and decoding
Abstract
本发明提供了一种Turbo码交织器的产生方法,包括输入N和M,以及设定L,并满足L=NM,设置Dmin和Smin,随机生成S(x),S(x)满足D大于或等于Dmin的约束,当S大于或等于Smin时,计算距离谱;当S小于Smin时,继续执行上述步骤,直到计算出距离谱,根据距离谱判断交织器的性能是否符合规定标准,当交织器的性能符合规定标准时,执行PER模拟,当交织器的性能不符合规定标准时,重新设置新的Dmin和Smin继续执行上述步骤,判断PER模拟的结果是否符合规定要求,当PER模拟的结果符合规定要求时,生成S(x),当PER模拟的结果不符合规定要求时,重新设置新的Dmin和Smin继续执行上诉步骤。其技术方案的有益效果在于,能够有效降低最终纠错后的误码率,提升误码性能。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种Turbo码交织器的产生方法。
背景技术
宽带电力线载波通信系统,不需要重新布线,在现有的配电网配置上PLC终端、中继、局端设备及附属装置,将原有的电力线网络改装成电力线通信网络。通过电力线路构建高速因特网,能够完成诸如视频、语音和数据等承载业务,方便快捷,且可最大限度利用现有的设施。
IEEE P1901系列规范是现行的宽带电力线载波通信标准,其中利用Turbo码作为宽带电力线载波的通信编码,Turbo码又称并行级联卷积码(PCCC,Parallel ConcatenatedConvolutional Code),它巧妙地将卷积码和随机交织器结合在一起,在实现随机编码思想的同时,通过交织器实现了由短码构造长码的方法,并采用软输出迭代译码来逼近最大似然译码。IEEE P1901规范中定义的Turbo编码器架构如图1所示。该Turbo编码由2个相同的分量编码器ENC1,分量编码器ENC2和交织器Π(x)组成,每输入一对信息比特(u1,u2),输出系统比特(u1,u2),和校验比特(p,q)。
其中,交织器Π(x)按预定方式重新排列符号或比特序列。Turbo码交织器是用来构建Turbo码的一部分。在Turbo码作为两个构成递归卷积码的并行级联的情况下,Turbo交织器在编码第二个编码之前,以伪随机方式重新排序输入数据序列。现有的交织器采用由两组成编码器产生的单独的编码,其编码是不相关的,它的特性使得他们被Turbo编码器结合而产生的一种复合编码具有优良的错误保护能力。
然而现有技术中(如IEEE P1901标准)的交织器可以进一步改进和优化。下面先介绍一下P1901 Turbo编码器的过程。P1901 Turbo编码器中的ENC1和ENC2使用8状态编码器,输入数据流的第一个比特位映射到u1,第二个比特位映射到u2,以此类推,在一个ENC中,每一对比特位对应输出一个校验位。校验(p,q)的计算根据图2确定。编码器的状态用S=4s1+2s2+s3表示为S(0≤S≤7)咬尾循环状态Sc1(ENC1)和Sc2(ENC2)由以下两个步骤确定:第一步是确定在全零状态下编码器对长度为L=K/2的信息比特对的响应S0,L-1,也就将信息比特对输入到分量编码器ENC1(ENC2输入的是交织后的信息比特)直到最后一对比特,记下编码结束的末状态S0,L-1,并丢弃编码过程中产生的结果。第二步是实际编码,即从下表(下表为咬尾编码循环状态查询表(Sc))中找出S0,L-1所对应的Sc,并把分量编码的初始状态设为S0=Sc,然后将输入信息比特对重新进入分量编码器,再经过一次编码得到实际输出的Turbo编码校验位,而编码器的末状态SL-1=S0,达到咬尾编码效果。
P1901 Turbo交织模块:Turbo交织器用于将原始数据交织后作为第二个分量码的输入,Turbo交织按照双比特(比特对)为单位进行,交织器长度等于原始数据块长度的双比特数量。假设交织器长度为L,并且可以分拆为L=MN,其中M和N为正整数。P1901 Turbo交织器采用一种结构型交织器,交织器的映射函数Π(x)可表示为:
Π(x+mN)=[S(x)-mN+L]mod L,0≤x<N,m=0,1,…,M-1。
由此可见,这种Turbo交织器具有硬件实现简单,其Turbo解码性能完全由S(x)决定,使交织器的设计从L参数设计简化到N参数设计。
P1901标准定义了三种PB长度,即:PB16(帧控制),PB136和PB520。国家电网宽带标准的扩展了另外两种,即:PB72和PB264,它们的Turbo交织参数由下表给出:
需要注意的是,当交织器输出地址为偶数时,对应的交织后的信息比特对的第0和第1比特要交换一下,以便进一步去除双二元比特的相关性。
需要指出的是大量的性能仿真验证发现现有P1901 Turbo交织器的性能可以通过重新设计交织器的交织表来进一步提升。为此,本发明将揭露一种交织器设计(寻找)方法和装置,并对PB16,PB136,PB520帧长提出一系列改进的交织表,以及改进后的交织表和原P1901的性能对比。本发明还对国家电网宽带电力线载波标准中的PB72和BP264帧长给出相应的交织表。需要指出,本发明所揭露的交织器设计方法也可以用于设计其它帧长的交织器和其他形式的Turbo码。
Turbo码交织器的设计远非一门精确的科学,只能通过仿真验证设计方法获得。通常交织器性能随交织器长度L增大而改善,但对常用的帧长而言,寻找(设计)好的交织表也是相当困难的,因为寻找的维度随L呈指数增长。显而易见,在有限的时间内利用穷举方法寻找交织表,并通过性能仿真验证是完全不可能,也不现实。因此,一个实用的交织表设计方法必须首先充分利用交织器的结构特点,运用适当的指标约束,以及性能比较仿真来筛选,这些正是本发明所要揭露的重点。
发明内容
针对现有技术中存在的上述问题,现提供一种Turbo码交织器的产生方法旨在运用指标约束和通过性能比较仿真来筛选产生能够有效降低最终纠错后的误码率,提升误码性能的交织器。
具体技术方案如下:一种Turbo码交织器的产生方法,其中,包括以下步骤:
步骤1、设定交织表长度N和交织器长度L,并根据L=NM获取M;
步骤2、预设一最小组合扩散因子Dmin和一最小扩散因子Smin;
步骤3、随机生成交织表,使所述交织表的任意一个元素S(x)满足组合扩散因子D大于或等于所述最小组合扩散因子Dmin;
步骤4、判断所述交织表中的扩散因子S是否大于或等于所述最小扩散因子Smin,
当所述扩散因子S大于或等于所述最小扩散因子Smin时,当S小于Smin时,继续执行步骤3到步骤4,直到计算出距离谱;
执行步骤5,否则丢弃所述交织表并返回所述步骤3;
步骤5、计算所述Turbo码的距离谱,以得到自由距离dfree,自由距的多重性因子Nfree,自由距的码重wfree;
步骤6、根据所述步骤5获得的距离谱判断所述交织器的性能是否符合规定要求,当所述交织器的性能符合规定要求时执行步骤7,否则重新设置新的最小组合扩散因子Dmin和最小扩散因子Smin,并返回步骤3;
步骤7、执行误帧率PER模拟;
步骤8、判断所述步骤7所述误帧率PER模拟的结果是否符合规定标准,当误帧率PER模拟的结果符合规定标准时,以所述交织表作为结果输出,否则重新设置新的最小组合扩散因子Dmin和最小扩散因子Smin,并返回步骤3。
优选的,一种Turbo码交织器的产生方法,其中,所述步骤3随机生成的所述交织表中,任意一个元素S(x)不能满足所述组合扩散因子D大于或等于所述最小组合扩散因子Dmin,则重新生成所述交织表,直到所述交织表中所有元素S(x)满足所述组合扩散因子D大于或等于所述最小组合扩散因子Dmin。
优选的,一种Turbo码交织器的产生方法,其中,所述组合扩散因子D的表达式为:
Dtb=min{min{|i-j|,L-|i-j|}+min{|Π(i)-Π(j)|,L-|Π(i)-Π(j)|},其中(i,j)为任意两个交织器输入序号,以及所对应的交织后的序号(Π(i),Π(j))。
优选的,一种Turbo码交织器的产生方法,其中,所述扩散因子S的表达式为:
ifmin{|i-j|,L-|i-j|}≤Stb,then min{|(Π(i)-Π(j)|,L-|Π(i)-Π(j)|}≥Stb,其中(i,j)为任意两个交织器输入序号,以及所对应的交织后的序号(Π(i),Π(j))。
优选的,一种Turbo码交织器的产生方法,其中,所述Turbo码的误码性能可由以下公式来预估:
其中,
PER(packet error rate)是误帧率,
BER(bit error rate)是误码率,
k信息比特长度,n为Turbo码码长,
Eb是单位比特的能量,N0是高斯白噪声的功率谱密度,
dfree为自由距离,
Nfree为自由距的多重性因子,
wfree为由距的码重,
erfc(x)为高斯误差函数。
一种Turbo码交织器的交织表,其中,采用上述的编码方法获得,当所述数据块的所述字节长度为16Byte时,所述交织表如下表所示:
一种Turbo码交织器的交织表,其中,采用上述的编码方法获得,当所述数据块的所述字节长度为72Byte时,所述交织表如下表所示:
一种Turbo码交织器的交织表,其中,采用上述的编码方法获得,当所述数据块的所述字节长度为136Byte时,所述交织表如下表所示:
一种Turbo码交织器的交织表,其中,采用上述的编码方法获得,当所述数据块的所述字节长度为264Byte时,所述交织表如下表所示:
一种Turbo码交织器的交织表,其中,采用上述的编码方法获得,当所述数据块的所述字节长度为520Byte时,所述交织表如下表所示:
上述技术方案具有如下优点或有益效果:运用指标约束和通过性能比较仿真来筛选产生能够有效降低最终纠错后的误码率,提升误码性能的交织器。
附图说明
参考所附附图,以更加充分的描述本发明的实施例。然而,所附附图仅用于说明和阐述,并不构成对本发明范围的限制。
图1为本发明一种Turbo码交织器的产生方法实施例的Turbo码编码器的结构示意图;
图2为本发明一种Turbo码交织器的产生方法实施例的Turbo码编码器的分量编码器架构图;
图3为本发明一种Turbo码交织器的产生方法实施例的迭代解码算法图;
图4为本发明一种Turbo码交织器的产生方法实施例的Turbo码编码器的流程示意图;
图5为数据块字节长度为16Byte(PB16)时,1/2码率误包率曲线;
图6为数据块字节长度为72Byte(PB72)时,1/2码率误包率曲线;
图7为数据块字节长度为136Byte(PB136)时,1/2码率误包率曲线;
图8为数据块字节长度为264Byte(PB264)时,1/2码率误包率曲线;
图9为数据块字节长度为520Byte(PB520)时,1/2码率误包率曲线。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
本发明的优选实施例中,如图4所示,提供一种Turbo码交织器的产生方法,包括以下步骤:
步骤1、设定交织表长度N和交织器长度L,并根据L=NM获取M;
步骤2、预设一最小组合扩散因子Dmin和一最小扩散因子Smin;
步骤3、随机生成交织表,使交织表的任意一个元素S(x)满足组合扩散因子D大于或等于最小组合扩散因子Dmin;
步骤4、判断交织表中的扩散因子S是否大于或等于最小扩散因子Smin,
当扩散因子S大于或等于最小扩散因子Smin时,当S小于Smin时,继续执行步骤3到步骤4,直到计算出距离谱;
执行步骤5,否则丢弃交织表并返回步骤3;
步骤5、计算Turbo码的距离谱,以得到自由距离dfree,自由距的多重性因子Nfree,自由距的码重wfree;
步骤6、根据步骤5获得的距离谱判断交织器的性能是否符合规定要求,当交织器的性能符合规定要求时执行步骤7,否则重新设置新的最小组合扩散因子Dmin和最小扩散因子Smin,并返回步骤3;
步骤7、执行误帧率PER模拟;其中PER(packet errorrate)为误帧率;
步骤8:判断步骤7误帧率PER模拟的结果是否符合规定要求,当误帧率PER模拟的结果符合规定要求时,以交织表作为结果输出,否则重新设置新的最小组合扩散因子Dmin和最小扩散因子Smin,并返回步骤3。
作为优选的实施方式,上述方法可采用C语言,或Matlab工具包来实现。
如图1所示,IEEE P1901规范定义的Turbo编码由2个相同的分量编码器ENC1,分量编码器ENC2组成,每输入一对信息比特(u1,u2),输出系统比特(u1,u2),和校验比特(p,q)。分量编码器ENC1和分量编码器ENC2使用如图2所示的8状态编码器,输入数据流的第一个比特位映射到u1,第二个比特位映射到u2,以此类推,在一个分量编码器中,每一对比特位对应输出一个校验位。
在具体实现Turbo码解码的电力线载波接收机中,Turbo码解码采用迭代解码算法如图3所示,其中包括两个软入软输出(SISO)MAP(Maximum APosteriori,最大后验概率)解码器,并由交织器串联在一起。Turbo解码过程是一种迭代过程,涉及前向递归和后向递归。接收到的软比特(通常表示成log-likelihoodratio,LLR)被输入到第一解码器,第一解码器用收到的LLR(信息和校验位)结合从第二解码器中提取的外部信息(extrinsicinformation)产生更可靠的LLR,其中相对于第二解码器的外部信息将作为其输入。第二解码器用交织后的信息位LLR,第二校验位LLR,以及从第一解码器输出的外部信息LLR,产生原始输入位和外部信息的更精细的对数似然估计(LLR),该信息在下一次迭代时被反馈到第一解码器。这样的迭代过程可以重复多次,直到最终的信息LLR足够可靠,然后对译码器的软估计输出做硬判决来得到解码后的信息位估计。译码迭代处理,每个译码器将其外部信息LLR值传送给另一个译码器,形成一个Turbo的效果。需要说明的是,SISO解码器通常采用最大后验概率(MAP)译码算法,以及相对应的简化算法,如log-MAP、Max-log-MAP算法等,这些都属于前向-后向算法,涉及前向递归和后向递归算法。
Turbo码优越的误码性能是基于译码迭代处理,即:每个译码器将其外部信息LLR值传送给另一个译码器,形成一个Turbo的效果,使得译码结果越来越可靠。在AWGN信道上,对PCCC的性能仿真证明,当BER随SNR的增加下降到一定程度时,就会出现下降缓慢甚至不再降低的情况,即出现误码平台(error floor)。误码平台的存在是Turbo码的一个明显的缺陷,这是由于Turbo码的重量分布造成的。
误码平台是由误码事件对应的低码重没法被纠正而引起的。对于一个特定的采用随机交织器的Turbo码而言,其低重量码字的数量与交织长度成反比。因此,简单地增加随机生成的交织器的长度可以降低误码平台。由此可见,Turbo码交织器的特性对Turbo码性能有决定性的影响。
本发明的目的即为IEEE P1901(又称HomeplugAV)规范定义的Turbo编码器提供高性能且低误码率的交织器。
IEEE P1901规范定义的Turbo编码器的交织器Π(x)的映射函数Π(x)为:
Π(x)=[S(x modN)-(x divN)×N+L]mod L;
其中,
L为交织长度,即数据块位的数据块位长度/2;
S(x)为对应于数据块的数据块字节长度的S查找表;
N为S查找表的S表长度;
mod符号表示取余运算;
div符号表示整除运算。
Turbo交织器的作用在于将原始数据交织后输入,Turbo交织按照双比特(比特对)为单位进行,交织器长度等于原始数据块长度的双比特数量。本实施例中交织器长度为L,并且L可以划分为两块,并且实现L=MN,其中N为交织表的长度。
因此,在步骤1中需要预先设置交织器的长度L以及交织表的长度N。
不同的数据码流的数据块对应M、N以及L的参数如下表1所示:
表1
具体实施例中,交织表是基于交织器的最小组合扩散因子Dmin和最小扩散因子Smin的约束下随机产生的,优选的,可采用贪婪(Greedy algorithm)算法产生,即从S(0)开始,逐步随机地产生S(1),S(2),…,S(N-1),直到所产生的任一一个S(x)都满足给定的Dmin约束(本实施例指D大于或等于Dmin的约束)。如果产生过程中交织表的任何一个元素S(x)所生成的交织器不能满足Dmin约束,则从S(0)重新开始寻找,直到交织表表中所有元素都满足Dmin约束。
上述方案中组合扩散因子D的表达式为:
Dtb=min{min{|i-j|,L-|i-j|}+min{|Π(i)-Π(j)|,L-|Π(i)-Π(j)|},其中(i,j)为任意两个交织器输入序号,以及所对应的交织后的序号(Π(i),Π(j))。
扩散因子S的表达式为:
ifmin{|i-j|,L-|i-j|}≤Stb,then min{|(Π(i)-Π(j)|,L-|Π(i)-Π(j)|}≥Stb,其中(i,j)为任意两个交织器输入序号,以及所对应的交织后的序号(Π(i),Π(j))。
可以证明组合扩散因子D的上限为性能较佳的线性交织器可以达到此上限,但线性交织器的Turbo码的误码性能是由线性交织渐近线所约束,其性能一般情况下不能达到让人满意的程度。因此,仅将组合扩散因子D或扩散因子S的最大化是不能保证良好的误码性能,由于性能良好的交织器都有较好的扩散特性,因此可以使用组合扩散因子D及扩散因子S来做交织器的初选。上述技术方案中,其中步骤3的约束条件Dmin的值可以从小到大逐渐收紧,以确保产生高质量的交织器。
具体实施例中,在信噪比(SNR=Eb/N0)比较高的条件下,步骤7中的误帧率PER模拟能可由以下公式来预估:
其中PER(packet errorrate)是误帧率,BER(bit errorrate)是误码率,k信息比特长度,n为Turbo码码长,Eb是单位比特的能量,N0是高斯白噪声的功率谱密度,dfree为自由距离,Nfree为自由距的多重性因子,wfree为自由距的码重,以及erfc(x)为高斯误差函数。通过上述的公式可以看出,精确计算Turbo码的距离谱,以得到自由距离dfree,自由距的多重性因子Nfree,自由距的码重wfree,是评估交织器性能的决定性因素。
上述技术方案中,优选的,为了得到靠近香浓(Shannon)极限的系统性能,交织器长度L一般比较大,通常至少几千个比特,即L≥1Kbit。
本发明所揭露的交织器设计方法也可以用于设计其他帧长的交织器和其他形式的Turbo码。
本发明较佳的实施例中,当上述数据块的字节长度为16Byte时,上述交织表长度为8个字段。
本发明较佳的实施例中,当上述数据块的字节长度为16Byte时,上述Turbo码交织器的交织表为下表2所示:
表2
作为Turbo码距离谱对比说明,表2也列出了P1901标准中的Turbo码性能数据(PB16_HPA)和国家电网标准Q/GDW11612.41-2016中的Turbo码性能数据(PB16_GDW)。由此可见,用新设计的交织表的任意一个元素S(x)所组成的Turbo码比PB16_GDW和PB16_HPA具有更高的dfree,从而保证了其更优异的误码性能。
本发明较佳的实施例中,当上述数据块的字节长度为72Byte时,上述交织表长度为18个字段。
本发明较佳的实施例中,当上述数据块的字节长度为72Byte时,上述Turbo码交织器的交织表为下表3所示:
表3
作为Turbo码距离谱对比,表3列出了国家电网标准Q/GDW11612.41-2016中的Turbo码性能数据(PB72_GDW)。由此可见,用新设计的交织表的任意一个元素S(x)所组成的Turbo码(PB72_1和PB72_2)比PB72_GDW具有更高的dfree,从而保证了其更优异的误码性能。
本发明较佳的实施例中,当上述数据块的字节长度为136Byte时,上述交织表长度为34个字段。
本发明较佳的实施例中,当上述数据块的字节长度为136Byte时,上述Turbo码交织器的交织表为下表4所示:
表4
作为Turbo码距离谱性能对比,表4也列出了P1901标准中的Turbo码性能数据(PB136_HPA),和国家电网标准Q/GDW11612.41-2016中的Turbo码性能数据(PB136_GDW)。由此可见,用新设计的交织表的任意一个元素S(x)所组成的Turbo码(PB136_1和PB136_2)比PB136_GDW和PB136_HPA具有更高的dfree,从而保证了其更优异的误码性能。
本发明较佳的实施例中,当上述数据块的字节长度为264Byte时,上述交织表长度为33个字段。
本发明较佳的实施例中,当上述数据块的字节长度为264Byte时,上述Turbo码交织器的交织表为下表5所示:
表5
同样作为Turbo码距离谱性能对比,表5也列出了国家电网标准Q/GDW11612.41-2016中的Turbo码性能数据(PB264_GDW)。由此可见,用新设计的交织表的任意一个元素S(x)所组成的Turbo码(PB264_1和PB264_2)比PB264_GDW具有更高的dfree,从而保证了其更优异的误码性能。
本发明较佳的实施例中,当上述数据块的字节长度为520Byte时,上述交织表长度为40个字段。
本发明较佳的实施例中,当上述数据块的字节长度为520Byte时,上述Turbo码交织器的交织表为下表6所示:
表6
同样,作为Turbo码距离谱性能对比,表6也列出了P1901标准中的Turbo码性能数据(PB520_HPA),和国家电网标准Q/GDW11612.41-2016中的Turbo码性能数据(PB520_GDW)。由此可见,用新设计的交织表的任意一个元素S(x)所组成的Turbo码(PB520_1)比PB520_GDW和PB520_HPA具有更高的dfree,从而保证了其更优异的误码性能。
设计好的PB16、PB72、PB136、PB264、PB520交织器参数S(x)发布在表2-6中,作为参考,这些表中也列出了IEEE P1901规范定义的PB16、PB136、PB520Turbo码交织器的交织表,同时给出了这些交织器的性能指标(Dmin,Smin,dfree,Nfree,wfree),除PB520外,上述数据中给出了三个最小的dfree参数,以及对应的Nfree,和wfree参数,由于PB520涉及的计算量太大、太耗时,因此只计算了最小的dfree参数,以及对应的Nfree参数和wfree参数,但这并不影响对交织器性能的评估和筛选。
根据上述误码率和误帧率的计算公式,得到dfree参数越大,误码平台越低的结论,因此得出在相同dfree参数的条件下,Nfree参数越小误码率就越低。
需要说明的是wfree参数只影响误码率,并不影响误帧率,wfree参数越小,即误码率越小。根据上述结论,可以筛选出优秀性能的交织器。
本发明较佳的实施例中,采用上述Turbo码交织器的产生方法对输入序列进行交织以得到输出序列。
我们对P19011/2码率Turbo码进行PER性能仿真。仿真条件是在AWGN(加性高斯白噪)信道下,编码后的比特使用BPSK(Binary Phase Phift Keying)调制,解码算法基于MAX-LOG-MAP近似算法,最大迭代次数12,采用基于CRC检验的自动迭代终止算法,其仿真结果如图4-8所示。
当数据码流的数据块为16字节码率为1/2时,关于误包率的曲线如图5所示,其中交织器采用数据块的字节长度为16Byte的Turbo码交织器的交织表(PB16_1和PB16_2的PER较P1901和国家电网PB16具有更低的误码平台,这个结果与表2中距离谱结果是一致的);
当数据码流的数据块为72字节码率为1/2时,关于误包率的曲线如图6所示,其中交织器采用数据块的字节长度为72Byte的Turbo码交织器的交织表(从表3的距离谱可见PB72_1具有最大最小自由距离,其次是PB72_2,然后是PB72_GDW,图6的PER结果验证这一结果);
当数据码流的数据块为136字节码率为1/2时,关于误包率的曲线如图7所示,其中交织器采用数据块的字节长度为136Byte的Turbo码交织器的交织表(从表4的距离谱可见PB136_1、PB136_2具有最大的最小自由距离,其次是PB136_GDW,最差的是PB136_HPA(IEEEP1901),图7的PER结果与距离谱结果一致);
当数据码流的数据块为264字节码率为1/2时,关于误包率的曲线如图8所示,其中交织器采用数据块的字节长度为264Byte的Turbo码交织器的交织表;
当数据码流的数据块为520字节码率为1/2时,关于误包率的曲线如图9所示,其中交织器采用数据块的字节长度为520Byte的Turbo码交织器的交织表;
由此可见,具体实施例中优化后的Turbo交织表AWGN仿真结果显示,优化后的Turbo S(x)-表对Turbo码的误码性能有一定的提升,特别是对IEEE P1901PB136模式误码性能在中高信噪比区域提升了近1.0dB。
以上仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。
Claims (10)
1.一种Turbo码交织器的产生方法,其特征在于,包括以下步骤:
步骤1、设定交织表长度N和交织器长度L,并根据L=NM获取M;
步骤2、预设一最小组合扩散因子Dmin和一最小扩散因子Smin;
步骤3、随机生成交织表,使所述交织表的任意一个元素S(x)满足组合扩散因子D大于或等于所述最小组合扩散因子Dmin;
步骤4、判断所述交织表中的扩散因子S是否大于或等于所述最小扩散因子Smin,
当所述扩散因子S大于或等于所述最小扩散因子Smin时,当S小于Smin时,继续执行步骤3到步骤4,直到计算出距离谱;
执行步骤5,否则丢弃所述交织表并返回所述步骤3;
步骤5、计算所述Turbo码的距离谱,以得到自由距离dfree,自由距的多重性因子Nfree,自由距的码重wfree;
步骤6、根据所述步骤5获得的距离谱判断所述交织器的性能是否符合规定要求,当所述交织器的性能符合规定要求时执行步骤7,否则重新设置新的最小组合扩散因子Dmin和最小扩散因子Smin,并返回步骤3;
步骤7、执行误帧率PER模拟;
步骤8、判断所述步骤7所述误帧率PER模拟的结果是否符合规定标准,当误帧率PER模拟的结果符合规定标准时,以所述交织表作为结果输出,否则重新设置新的最小组合扩散因子Dmin和最小扩散因子Smin,并返回步骤3。
2.如权利要求1所述的一种Turbo码交织器的产生方法,其特征在于,所述步骤3随机生成的所述交织表中,任意一个元素S(x)不能满足所述组合扩散因子D大于或等于所述最小组合扩散因子Dmin,则重新生成所述交织表,直到所述交织表中所有元素S(x)满足所述组合扩散因子D大于或等于所述最小组合扩散因子Dmin。
3.如权利要求1所述的一种Turbo码交织器的产生方法,其特征在于,所述组合扩散因子D的表达式为:
Dtb=min{min{|i-j|,L-|i-j|}+min{|Π(i)-Π(j)|,L-|Π(i)-Π(j)|},其中(i,j)为任意两个交织器输入序号,以及所对应的交织后的序号(Π(i),Π(j))。
4.如权利要求1所述的一种Turbo码交织器的产生方法,其特征在于,所述扩散因子S的表达式为:
ifmin{|i-j|,L-|i-j|}≤Stb,then min{|(Π(i)-Π(j)|,L-|Π(i)-Π(j)|}≥Stb,其中(i,j)为任意两个交织器输入序号,以及所对应的交织后的序号(Π(i),Π(j))。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810865724.0A CN110798229B (zh) | 2018-08-01 | 2018-08-01 | 一种Turbo码交织器的产生方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810865724.0A CN110798229B (zh) | 2018-08-01 | 2018-08-01 | 一种Turbo码交织器的产生方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110798229A true CN110798229A (zh) | 2020-02-14 |
CN110798229B CN110798229B (zh) | 2023-10-27 |
Family
ID=69425872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810865724.0A Active CN110798229B (zh) | 2018-08-01 | 2018-08-01 | 一种Turbo码交织器的产生方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110798229B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111292006A (zh) * | 2020-02-25 | 2020-06-16 | 武汉轻工大学 | 基于黄酒制品品质范围获取原料品质范围的方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6453442B1 (en) * | 1999-08-20 | 2002-09-17 | At&T Corp. | Two stage S—Random interleaver |
US20020138806A1 (en) * | 2001-02-09 | 2002-09-26 | Fabio Scalise | Versatile serial concatenated convolutional codes |
CN101467354A (zh) * | 2006-06-09 | 2009-06-24 | 弗劳恩霍夫应用研究促进协会 | 交织器设备以及用于由交织器设备产生的信号的接收机 |
CN101662292A (zh) * | 2008-08-28 | 2010-03-03 | 大唐移动通信设备有限公司 | 一种交织器的确定方法及装置 |
CN102227097A (zh) * | 2011-04-11 | 2011-10-26 | 重庆大学 | 一种可变长度s随机交织器的生成方法 |
CN103701475A (zh) * | 2013-12-24 | 2014-04-02 | 北京邮电大学 | 移动通信系统中8比特运算字长Turbo码的译码方法 |
-
2018
- 2018-08-01 CN CN201810865724.0A patent/CN110798229B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6453442B1 (en) * | 1999-08-20 | 2002-09-17 | At&T Corp. | Two stage S—Random interleaver |
US20020138806A1 (en) * | 2001-02-09 | 2002-09-26 | Fabio Scalise | Versatile serial concatenated convolutional codes |
CN101467354A (zh) * | 2006-06-09 | 2009-06-24 | 弗劳恩霍夫应用研究促进协会 | 交织器设备以及用于由交织器设备产生的信号的接收机 |
CN101662292A (zh) * | 2008-08-28 | 2010-03-03 | 大唐移动通信设备有限公司 | 一种交织器的确定方法及装置 |
CN102227097A (zh) * | 2011-04-11 | 2011-10-26 | 重庆大学 | 一种可变长度s随机交织器的生成方法 |
CN103701475A (zh) * | 2013-12-24 | 2014-04-02 | 北京邮电大学 | 移动通信系统中8比特运算字长Turbo码的译码方法 |
Non-Patent Citations (4)
Title |
---|
国家电网公司: "低压电力线宽带载波通信互联互通技术规范第4一1部分:物理层通信协议", 《国家电网公司企业标准》 * |
罗骥: "一种Turbo空时码在MIMO无线通信系统中的应用研究", 《中国博士学位论文全文数据库(电子期刊)》 * |
赵旦峰等: "基于LTE标准的Turbo码编译码性能研究", 《科技致富向导》 * |
高宏峰等: "用遗传算法优化Turbo码交织器", 《南京航空航天大学学报》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111292006A (zh) * | 2020-02-25 | 2020-06-16 | 武汉轻工大学 | 基于黄酒制品品质范围获取原料品质范围的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110798229B (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Raphaeli et al. | Combined turbo equalization and turbo decoding | |
US8352840B2 (en) | Event cleanup processing for improving the performance of sequence-based decoders | |
Umehara et al. | Turbo decoding in impulsive noise environment | |
US20010010089A1 (en) | Digital transmission method of the error-correcting coding type | |
CZ407397A3 (cs) | Paralelní zřetězené konvoluční kódy s koncovými bity a jejich dekodéry | |
Riedel | MAP decoding of convolutional codes using reciprocal dual codes | |
US7027521B2 (en) | Digital transmission method of the error correcting coding type | |
Shaheen et al. | Performance analysis of high throughput map decoder for turbo codes and self concatenated convolutional codes | |
Leung et al. | Concatenated zigzag Hadamard codes | |
Picart et al. | Adapted iterative decoding of product codes | |
CN110798229B (zh) | 一种Turbo码交织器的产生方法 | |
AlMahamdy et al. | Half-iteration early termination of turbo decoding | |
Papaharalabos et al. | SISO algorithms based on Max-Log-MAP and Log-MAP turbo decoding | |
Talakoub et al. | Turbo equalization with iterative online SNR estimation | |
Sreedevi et al. | Design and Implementation of Interleaver in GNU Radio for short block length Turbo codes | |
Daneshgaran et al. | Iterative joint channel decoding of correlated sources | |
Dawood et al. | Enhancement the performance of OFDM based on multiwavelets using turbo codes | |
Umehara et al. | Turbo decoding over impulsive noise channel | |
WO2004054115A1 (en) | Turbo decoder using parallel processing | |
Sowndharya et al. | Reducing bit error rate using CRC verification in turbo codes | |
Sah | Iterative decoding of turbo codes | |
Chaikalis et al. | Improving the reconfigurable SOVA/log-MAP turbo decoder for 3GPP | |
Geldmacher et al. | Adaptive low complexity MAP decoding for turbo equalization | |
Kene et al. | WiMAX physical layer optimization by implementing SOVA Decoding algorithm | |
Shah et al. | Performance analysis of turbo code for CDMA 2000 with convolutional coded IS-95 system in wireless communication system |
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 |