Blind Recognition of TPC Code Under Error Code Condition
-
摘要: 针对TPC码盲识别问题,对TPC码的结构和子码展开研究,利用子码码重分布性质,提出了一种误码条件下TPC码盲识别的方法。研究了二维、三维、复用式三维TPC码的编码结构,并列举了TPC码典型的子码类型和参数。研究码长与码字重量奇偶性的关系,得到了子码码字重量均为偶数的性质,利用二维TPC码的结构和系统线性分组码的性质,推导出三维TPC码校验部分具有相同的性质。基于上述性质,遍历不同码长计算对应的偶数码重比例,利用码长与码字重量奇偶性之间的关系,实现了子码扩展BCH码、偶校验码码长的识别,可适用于二维、三维TPC码的情况。仿真结果表明,推导的命题与仿真结果一致,所提方法能够在较高误码率条件下实现TPC码的有效盲识别。Abstract: To solve the problem of blind recognition of TPC codes, the structure and subcodes of TPC codes are studied, and a method for blind recognition of TPC codes under error code conditions is presented by using the redistribution of subcodes. And lists the typical subcode types and parameters of TPC codes. The differences of minimum Hamming distance and code rate between different types of BCH codes as subcodes are analyzed. The relationship between code length and parity of code weight is studied, and the property that the weight of subcodes is even is obtained. Using the structure of two-dimensional TPC codes and the properties of linear system block codes, it is deduced that the parity part of three-dimensional TPC codes has the same property. Based on the above properties, traverse different code lengths to calculate corresponding even-digit weight ratios, and use the relationship between code length and code-word weight parity to realize the recognition of subcode extended BCH code and even-check code length, which can be applied to two-dimensional and three-dimensional TPC codes. The simulation results show that the derived proposition is consistent with the simulation results, and the proposed method can realize the effective blind recognition of TPC codes under the condition of high bit error rate.
-
Keywords:
- channel code /
- TPC code /
- parity of code weight /
- recognition
-
1. 引言
为了实现稳定可靠的通信,信道编码技术被广泛应用于各类数字通信系统中,该技术的合理应用可以有效提高信息传输的质量[1]。随着无线通信信道环境日趋复杂,以及太空等通信领域对信息传输质量的要求越来越高,对信道编码的抗噪性能也提出了更高的要求。BCH(Bose-Chaudhuri-Hocquenghem)码、RS(Reed-Solomon)码和卷积码等单一编码方式逐渐难以适应复杂的信道环境,复合编码因其优异的抗噪性能得到了人们的重视。TPC(Turbo-Product-Codes)码作为一种复合编码,能够同时纠正信息序列中的随机错误和突发错误,且构造简单,适用于信道环境复杂的通信系统。目前,TPC码广泛应用于卫星通信、深空通信,以及无线接入系统中,如WiMAX、IEEE 802.20、数字视频广播卫星(DVB-S)系统等[2]。对于智能通信、频谱监视等应用领域,能否利用接收序列获得所采用的编码参数对后续译码等过程非常关键,TPC码作为一种应用广泛的复合编码,目前对其盲识别的研究成果不足以支撑实际需求。因此,对TPC码进行盲识别的研究具有重要价值。
TPC码作为一种复合编码,目前应用的结构可分为二维TPC码和三维TPC码,即在不同维度方向上利用子码对序列进行编码,中间通过矩阵交织完成码字序列的行列变换。TPC码常采用的子码有扩展汉明码、扩展BCH码、RS码等[3],三维结构中也存在(n,n-1)偶校验码。在卫星通信系统中,子码为扩展BCH码的TPC码最为常见[4],且码率较高。因此,对TPC码进行盲识别,子码的研究识别必不可少。目前对BCH码和RS码的研究,主要将其作为分组码进行盲识别,很少从TPC码子码的角度研究。针对本原BCH码识别问题,文献[5]提出了一种利用码根差熵和码根统计的本原BCH码识别方法,但在高误码率情况下,码根差熵适应误码能力变差,且算法计算量较大。文献[6]利用共轭根的性质简化了伽罗华域的傅里叶变换运算,计算量降低40%,且能够在不遍历整个候选数据集的情况下识别BCH编码参数。文献[7]提出了一种基于平均余弦符合度的识别算法,引入软判决信息对本原BCH码进行识别,利用软判决信息对码根的分布情况进行统计,检验量充分利用了软判决信息,识别效果较好。针对RS码识别,文献[8]从提高容错性能出发,提出基于GFFT的识别算法,虽然算法具有一定的容错性能,但是运算量随着码长会急剧增加。文献[9]基于部分码根校验匹配的识别方法,建立了二元域统计判决模型,引入了能够衡量校验关系成立大小的平均校验符合度概念,通过遍历的方式对参数进行匹配,该算法具有较好的低信噪比适应能力。现有研究成果,均利用先验信息,通过遍历可能的参数取值,选取符合度最高的参数作为识别结果,能够满足本原BCH码和RS码的识别需求。而扩展 BCH码作为TPC码常用的子码,码长与伽罗华域幂次不再有直接的约束关系,码字不再具有循环移位特性,已有BCH码的识别方法并不适用于扩展BCH码。
从公开发表的文献来看,关于TPC码盲识别的文献甚少。文献[10]研究了卫星通信中TPC码的识别与译码算法,提出了基于独特码检测的TPC码长识别算法与基于线性方程组求解法的BCH码识别算法,通过识别TPC码子码,确定TPC码类型和参数。线性方程组求解结果虽然能够清晰地得到各种编码参数,但该方法需要求解的数据中不包含误码,需要寻找数据质量很好的部分解方程,实际接收到的数据难以满足这一需求。而且该方法涉及到的参数较多,需要多次求解,找到合适的参数,才能解出正确的结果。容错性差和计算步骤复杂,使得该算法的适用性受到很大的限制。文献[2]研究了噪声条件下TPC码的参数盲估计,使用参数遍历和高斯消元法确定子码的参数,该方法虽然比文献[10]提高了抗噪性能,但该方法是基于本原BCH码、RS码作为TPC码子码进行研究的,对实际中由扩展BCH码构造的TPC码无法进行识别。现有算法对TPC码的识别和参数估计,都需要采用参数遍历的方法对子码空间进行搜索,导致算法过程复杂,计算量较大,均未深入研究实用中TPC码的子码类型及其相关性质,对误码条件下应用的TPC码无法进行有效识别。
针对上述问题,本文对TPC码编码过程展开研究,深入分析其结构和子码性质,推导出三维TPC码的校验部分也存在编码结构,提出了TPC码盲识别算法。通过对TPC码常用子码扩展汉明码、扩展BCH码和偶校验码的码重性质进行研究,分析得到了码重奇偶性与码长之间的关系,提出基于码重奇偶性的码长识别算法,实现子码码长的估计。从而进一步识别TPC码的结构,通过帧长与各子码码长乘积之间的大小关系,判别是否存在二维TPC码。若存在,在二维TPC码结构识别的基础上,识别三维TPC码和复用式三维TPC码,实现TPC码的盲识别。仿真结果表明,该算法能够有效识别出TPC码的码型和结构,且能够较好地适应高误码率的信道环境。
2. TPC码编码基础
TPC码是由两个或多个短分组码简单而有效地构造,通过两个或多个编码器的串行级联而成,这些编码器被矩阵交织器分隔开。其构造过程是将编码数据输入到一个
q 维超立方体排列,第i维子码使用线性分组码Ci(ni,ki,di) 进行编码,其中ni 表示码长,ki 为信息长,di 代表最小汉明距离。若第i 维子码的码率为ri=ki/ni ,则q 维TPC码的码长L=q∏i=1ni ,信息长K=q∏i=1ki ,码率R=q∏i=1ri ,最小汉明距离d=q∏i=1di ,纠错能力t=(d-1)/2 。实际应用中,考虑到信息传输速率和纠错能力等因素,一般采用二维或三维TPC码。以二维TPC码为例,由两个系统线性分组码
C1(n1,k1,d1) 和C2(n2,k2,d2) 组成,其结构如图1所示。将二维TPC码平面形式化为X-Y二维平面,则X维对应分组码C1(n1,k1,d1) ,Y维对应分组码C2(n2,k2,d2) ,二维TPC码的编码步骤如下[11]:(1)将
k1×k2 个信息位按照k2 行k1 列排列;(2)对
k2 行使用C1(n1,k1,d1) 进行分组编码;(3)对
n1 列使用C2(n2,k2,d2) 进行分组编码。对于二维TPC码,码长
L=n1×n2 ,信息长K=k1×k2 ,码率R=r1×r2 ,最小汉明距离d=d1×d2 。实际应用中,通常采用行列编码方式相同的码字作为TPC码的子码,并且在行列编码时增加一个奇偶校验位以增大码字间最小距离[3],从而增强码字的纠错能力。二维TPC码常采用的子码是扩展BCH码,一些典型的参数如表1所示,表中TPC码组成的第一个子码对应二维TPC码的X维编码,第二个子码对应Y维编码。表 1 一些二维TPC码参数Tab. 1. Some two-dimensional TPC code parametersTPC码组成 码块大小 信息比特 码率 BCH(16,11)*(16,11) 256 121 0.473 BCH(32,26)*(32,26) 1024 676 0.660 BCH(44,31)*(43,30) 1892 930 0.491 BCH(64,51)*(64,51) 4096 2601 0.653 BCH(64,57)*(32,26) 2048 1482 0.724 BCH(64,57)*(46,39) 2944 2223 0.755 BCH(64,57)*(64,57) 4096 3249 0.793 BCH(128,120)*(128,120) 16384 14400 0.879 对于三维TPC码,编码结构在二维TPC码X-Y平面化形式的基础上,增加了Z维编码,对应的是X-Y-Z三维立体空间。增加的Z维编码,使用
C3(n3,k3,d3) 分组编码器对k3 个大小为n1×n2 的码字矩阵进行编码,三维TPC码结构图如图2所示。三维TPC码的一些典型参数如表2所示,维度与码型对应与表1类似,增加的第三个子码对应Z维分组码,表中(8,7)、(16,15)为偶校验码,其他均为扩展BCH码。表 2 一些三维TPC码的参数Tab. 2. Some 3D TPC code parametersTPC码组成 码块大小 信息比特 码率 (16,11)*(16,11)*(16,11) 4096 1331 0.325 (16,11)*(32,26)*(8,7) 4096 2730 0.488 (64,57)*(32,26)*(16,11) 32768 16302 0.497 (64,57)*(128,120)*(8,7) 65536 47880 0.731 结合表1和表2可知,相比于同样子码构造的二维TPC码,三维TPC码的码块大小更大,对应的纠错能力更强。但随着编码维度的增加,码率则会出现较为明显的下降,使得信息传输效率降低。而实际通信需要的编码是希望在纠错能力一定的条件下,编码效率越大且编、译码越简单越好。
考虑到卫星通信中的实际使用情况,一般采用的三维TPC码并非图2所示的结构,而是由N个二维TPC码连接在一起,加上同步码,形成一个长帧结构,这样构成的TPC码结构称为复用式三维TPC码[10],结构如图3所示。
相比二维TPC码,这样的结构在不降低码率的情况下,码长的选择变得更加灵活。相比于三维TPC码,其码长同样能够很长,而不降低码率,部分参数如表3所示,维度与码型对应与表1类似,Z维方向N表示二维TPC码的个数,表中码型均为扩展BCH码。
表 3 一些复用式三维TPC码参数Tab. 3. Some parameters of multiplex 3D TPC codesTPC码组成 码块大小 信息比特 码率 BCH (16,11)*(16,11)*N 256*N 121*N 0.473 BCH (16,11)*(32,26)*N 512*N 286*N 0.559 BCH (64,57)*(32,26)*N 2048*N 1482*N 0.724 BCH (64,57)*(128,120)*N 8192*N 6840*N 0.834 综上所述,目前应用的TPC码主要包括二维、三维以及复用式三维这三种结构,通常采用的子码为扩展汉明码、扩展BCH码和偶校验码。TPC码的参数选取灵活,由子码能够构造出合适的码长、信息长、纠错能力和码率,从而满足应用的需求。
3. TPC码识别原理与算法
3.1. 问题描述
根据信道编码识别在信号处理中的位置,编码类型是对解调后的二进制数据进行识别。TPC码在传输的过程中,往往加入帧同步后进行再发送。本文是在帧同步后,去掉帧同步头后,已知TPC码码长的条件下,通过识别不同维度子码码长,确定存在分组码,并对识别结果进行验证判别,最终确定TPC码的码型及结构,识别过程如图4所示。
对于TPC码的盲识别,关键在于编码结构和子码的识别,通过识别子码能够确定码型是否为TPC码。但TPC码的码长通常较大(1000以上),结构较为复杂,需要首先估计TPC码的码长。由于TPC码的特性,一般码长估计的算法很难适用于TPC码长估计,通常需要结合信道帧结构分析确定码长。TPC码在实际传输过程中,都是以同步码字为序列帧头,然后再与二维或三维编码结合进行组合传输,如图5所示。文献[10]提出了基于同步码快速检测来确定TPC码的帧结构,去掉同步码即为TPC码的码长。
在实际的通信系统中,采用分组码的比特流序列通常具有固定的帧结构和同步码[12],且已有方法能够实现帧同步码的盲识别,故本文假设已完成帧同步[13-14]。因此,对于TPC码的盲识别,是在帧同步的基础上,帧长度已知,可通过识别每帧排成的码字矩阵是否同时存在行、列线性分组子码,判断TPC码是否存在,若存在,可通过分析子码的参数进一步确定TPC码的参数,包括信息块大小、码率等。
3.2. 三维TPC码校验位的研究
对于三维TPC码和复用式三维TPC码,主要的区别在于Z维上是否存在编码,即三维TPC码的Z维存在分组编码,而复用式三维TPC码不存在,如图2和图3所示。由图2可知,三维TPC码,Z维方向是由
k3 个n1×n2 大小的二维TPC码作为信息位,n3-k3 个平面作为校验位构成。由表2可知,Z维方向使用的编码分为(n,k) 扩展BCH码和(n,n-1) 偶校验码,其中k≠n-1 ,扩展BCH码是由BCH码和偶校验码复合而成,下面分别研究两种类型校验位的编码情况。对于Z维方向使用的编码为
(n,k) 扩展BCH码,先进行本原BCH码编码,再进行扩展码编码。本原BCH码和偶校验位作为系统线性分组码,从系统线性分组码的基本性质,研究Z维方向校验位的关系。系统线性分组码的生成关系如式(1)、(2)所示[4]。由式(2)可得,生成矩阵
G 的左边是一个k×k 的单位矩阵,右边是一个k×(n-k) 的矩阵块,该矩阵块的每一列可由单位矩阵的某几列线性组合而成。因此,对于信息组m=(mk-1,mk-2,⋯,m1,m0) ,可由式(1)得到线性分组编码,即信息组保持不变,校验位由式(3)的关系得到。根据式(3)的关系可知,本原BCH码的校验位是信息位之间的线性组合,不同校验位对应的组合系数不同。对于三维TPC码,以X-Z平面为例进行研究,Y-Z平面同理。在X-Z平面上,X方向为
C1(n1,k1,d1) 线性分组码,Z方向则是对n1 个k3 位的信息位矩阵进行编码,得到(n3-k3-1)×n1 大小的校验位矩阵。对于n1 个(n3-k3-1) 位的校验位,每个都是k3 个信息位按照式(3)线性组合而成,Z方向上(n3-k3-1) 个n1 位的校验比特是由k3 个线性分组码线性组合而成,结合引理1,可得到命题1。引理1[4]:对于同一编码类型和参数的系统线性分组码,任意个不同编码之间的线性组合,得到的码组仍然是该类型的编码。
命题1:对于子码为扩展BCH码、偶校验码构造的三维TPC码,在Z轴方向上,校验部分的X-Y平面仍然是二维TPC码,对应的X维和Y维为扩展BCH码或偶校验码。
若子码均是扩展BCH码,则Z方向上(n3-k3-1)个
n1 位的校验比特是k3 个C1(n1,k1,d1) 扩展BCH码的线性组合,每个n1 位的校验比特就是一个参数为C1(n1,k1,d1) 的扩展BCH码。对于Z轴方向使用的编码为(n,n-1) 偶校验码,以及扩展BCH码的扩展位,均满足公式(4)。在X-Z平面X方向上,n3-1 个本原BCH码按照式(4)计算扩展位,Z方向上,n1 个n3-1 位信息位,每个按照式(4)得到扩展位。因此,在三维TPC码Z方向上的最后一个平面,其每行、列均满足公式(4),即每行、列也是(n,n-1) 偶校验码。3.3. 基于码重奇偶性的子码码长估计
实际应用中,TPC码子码主要包括扩展汉明码、扩展BCH码和偶校验码,对于码长为
2m-1 、纠单个错误的BCH码就是汉明码[15],因此,本文中涉及的汉明码按照BCH码进行研究。扩展BCH码就是在原码BCH码的基础上,扩展一位奇偶校验位得到。对于参数为
(n,k,d) 的分组码,设d 为奇数,对每一个码字v=(vk-1,vk-2,⋯,v1,v0) ,增加一个校验位v'0 ,其值为二进制“0”或者“1”,满足如下二进制运算关系:若原码字的重量为奇数,由式(4)加上校验位后码重变为偶数,原码重为偶数的则校验位为“0”。由式(4)变换后,码的最小重量变为
d+1 ,码长变为n+1 ,因此,称(n+1,k,d+1) 码为(n,k,d) 码的扩展码[4]。偶校验码的参数为(n,n-1) ,生成关系也满足式(4),码重均为偶数。扩展BCH码,在(n,k) 或(n-b,k-b) BCH码的基础上,按照式(4)的关系得到,码重也均为偶数。综上所述,可得命题2,下文将基于该命题给出TPC子码码长识别的算法。
命题2:扩展汉明码、扩展BCH码和偶校验码的码重均为偶数。
设去除帧同步的码流
r 每帧长度为L ,按照式(5)对不同码组长度n 进行分块,得到S=⌊L/n⌋ 个码组B(n)i ,i∈[1,S] ,ri,j 表示码元“0”或“1”。利用分块
B(n)i 构建码组矩阵R ,如式(6)所示。不考虑误码情况,若码长估计正确,所有码组的重量均为偶数,遍历码长若不是实际码长,按照码重分布随机理论,奇数码重和偶数码重的码组各占总码组的50%左右。当存在误码时,导致码重发生变化,其奇偶性也可能随之变化,若发生奇数个错误,则码重变为奇数,若发生偶数个错误,则码重仍为偶数。但在一定的误码范围内,码长估计正确时,其偶数码重的码组所占比例仍然较大,由此可估计子码码长。
子码码长估计的具体步骤如下:
步骤1 对于不同的遍历码长n,按照式(5)、(6)构建
S×n 大小的矩阵R 。步骤2 统计每个码组的码重wi ( v ),并判断其奇偶性,如图6所示。
步骤3 统计偶数码重的个数D(n),并计算其占所有码组的比例
E(n)=D(n)/S 。步骤4 对E(n)求平均值得到mean(E(n)),然后计算E(n)与均值的差值,如下式:
3.4. TPC码识别算法
对TPC码的识别,不仅要识别是否存在,还需要识别TPC码的结构,区分二维TPC码、三维TPC码和复用式三维TPC码。而每帧中,可能存在不止一个二维TPC码,这是区分不同结构的关键所在,如图7所示。设二维TPC码按照X维由上至下逐行发送,三维TPC码在二维TPC码平面的基础上,从前到后逐面发送。
按照图5的结构,去除同步码后,使用码重奇偶性识别每帧的码流中是否存在X维码长,若存在,则按此长度将每帧数据排列成矩阵,识别Y维上是否存在码长。若每帧数据排成矩阵后,行、列均存在码长,比较帧长
L 与n1×n2 之间的关系,两者相等,则认为是二维TPC码。如果两者不相等,对每帧按照n1 列排列的矩阵进行Y维上分段码长识别,分段长为码长n2 ,根据分段识别产生的峰值,判断Z维上二维TPC码的个数。若此个数与L/(n2×n1) 相等,则再次利用码重奇偶性识别Z维上是否存在码长,区分三维TPC码和复用式三维TPC码,从而完成TPC码的识别和结构的区分,过程如图8所示。4. 仿真分析
实验仿真生成TPC码,所选码型来自表1、表2和表3,不失一般性,设噪声环境为通信系统中最常用的二进制对称信道。仿真编码为二进制数据,过信道后,取同步码之后的数据进行识别。
4.1. 本文算法有效性分析
本小节主要考察本文算法对TPC码识别和结构区分的有效性。
1)二维TPC码识别有效性分析
对表1中子码为(44,31)、(43,30)扩展BCH码的TPC码进行验证,其他码型同理。该TPC码码长为1892比特,仿真中取数据帧数M为15,信道误码率
τ=0.01 ,结果如图9所示。可以发现,当X维码长
n 识别正确时,码长n 处所对应的差值V(n) 最大。在码长n 整数倍处,也存在局部峰值,如图9(a)所示。产生峰值的原因是码长正确时或者是码长整数倍时,码组内码字之间存在约束关系,码重的奇偶性不存在随机性。一定的误码范围内,部分偶数码重变为奇数码重,偶数码重仍然占据大多数,此时差值V(n) 取到最大值,判断为实际码长。由图9可知,每帧数据排成矩阵后,按行识别存在码长为44的编码,按列识别存在码长为43的编码,且44×43=1892 ,即两维码长相乘等于TPC码长,由此可判断为二维TPC码。2)三维TPC码识别有效性分析
对表2中子码为(16,11)、(32,26)扩展BCH码以及(8,7)偶校验码构造的TPC码进行验证,其他码型同理。该TPC码码长为4096比特,仿真中取数据帧数M为15,信道误码率
τ=0.02 ,结果如图10所示。按照图8所示的流程,使用码重奇偶性和分段识别的方式对三维TPC码进行识别,结合图10(a)、图10(b)可知,识别到其中X维的码长为16,按此长度排列码字矩阵,再次识别到Y维的码长为32。然后每帧数据按照矩阵
16×256 大小排列,以码长32进行分段码长识别,识别存在的峰值,由图10(c)可知,256的长度中存在8个间隔为32的峰值,可判断Z维方向上有8个二维TPC码。基于码重奇偶性,再次对TPC码的Z维进行长度识别,由图11(d)可知,存在长度为8的编码,且该值为4096/(16×32) ,即TPC码码长除以二维TPC码的值。综上识别结果,可判断为三维TPC码,每个维度都存在编码。3)复用式三维TPC码识别有效性分析
对表3中子码为(64,57)、(128,120)扩展BCH码构造的三维复用式TPC码进行验证,取N为8,其他码型同理。该TPC码码长为65536比特,仿真中取数据帧数M为10,信道误码率
τ=0.005 ,结果如图11所示。复用式三维TPC码与三维TPC码的区别是Z维方向上是否存在编码,按照图8所示的流程,对复用式三维TPC码进行识别,由图11(a)、图11(b)可知,识别到其中X维的码长为64,按此长度排列码字矩阵,再次识别到Y维的码长为128。然后每帧数据按照矩阵
64×1024 大小排列,以码长128进行分段码长识别,识别存在的峰值,由图11(c)可知,1024的长度中存在8个间隔为128的峰值,可判断Z维方向上有8个二维TPC码。为了与三维TPC码进行区别,再次对TPC码的Z维进行长度识别,由图11(d)可知,Z维上码长识别不存在明显的峰值,且峰值不位于码长为8处。综上识别结果,该TPC码为复用式三维结构,每帧由8个大小为64×128 的二维TPC码复用而成。4.2. 本文算法鲁棒性分析
本节主要考察不同帧数、子码及码长对TPC码识别性能的影响。设仿真中数据通过二进制对称信道,误码率范围为
10-3~3×10-2 ,间隔为2×10-3,蒙特卡洛仿真次数为500。1)不同帧数对识别性能的影响
本节主要考察码字帧数对TPC码识别的影响。三维TPC码的识别是建立在二维TPC码基础上的,因此,以二维TPC码的识别为例,研究不同帧数对识别性能的影响。理论上,对于同一误码率,帧数越多,识别出TPC码的概率就越高,但所需的时间也越长,需要综合考虑识别准确率与时间的关系,在识别准确率相差不大的时候,所需要的帧数尽可能少,以便加快识别速度。仿真使用的编码为表1中码长为2944的TPC码,其子码分别为(64,57)、(46,39)扩展BCH码。设接收到的TPC码字帧数M分别为5、10、15、20、25和30,统计不同误码率下TPC码识别的准确率,结果如图12所示。
由图12可以看出,随着TPC码帧数的增加,识别准确率也有所提升,主要是因为随着码字帧数的增加,所求得的结果更具有稳健性,使识别结果准确率更高。以误码率为0.015为例,码字帧数M由5增加到20时,准确率提升明显,当码字帧数达到20以上时,性能提升趋缓,但均到达了90%以上的识别准确率。因此,取20帧以上的数据进行处理,基本能够满足识别需求。
2)子码及码长对识别性能的影响
本节主要考察不同子码及码长对TPC码识别的影响,码型为表1、表2和表3中设定的参数,设定识别的帧数为25,其他条件同上,研究子码及码长对识别性能的影响,表3中的N与对应三维TPC码的Z维子码码长相同。
表1中各种TPC码在不同误码率条件下的识别准确率如图13所示,由图可知,由相同子码构造的TPC码,码长越长,相同误码率情况下,识别准确率越低,这是因为子码长度越长,码重奇偶性出错的概率越大。而对于码长相同、信息长不同的子码构造的TPC码,识别准确率基本相同。对于X维子码相同,Y维子码长度在不超过X维子码长度的情况下,长度越短,识别准确率越低。这是由于子码长度的识别会受到另一维子码长度的影响,一维子码长度变短,对应的另一维子码识别的码组数就会减少,识别准确率就会降低。
表2和表3中TPC码在不同误码率条件下的识别准确率如图14所示,由图可知,对于三维TPC码和复用式三维TPC码,随着误码率的升高,识别准确率呈现下降趋势。在码长和X维、Y维相同的情况下,本文算法对三维TPC码的识别率高于复用式三维TPC码,这是由于算法会将部分三维复用式TPC码识别为三维TPC码。
4.3. 本文算法复杂度分析
设去除帧同步之后的TPC码每帧硬判决序列长度为
L ,识别帧数为M 。遍历X维子码不同码长,码长遍历范围为1~n1 ,n1 可取150左右,每帧得到S=⌊L/n⌋ 个码组,共得到M×S 个码组。在X维子码遍历码长估计时,计算量主要体现在码重统计和奇偶性判断上,码重统计需要n1∑n=1M×S×n 次加法,奇偶性判断可等效为M×S 次加法和M×S 次乘法。在得到X维子码码长n1 后,将每帧数据按照n1 列S 行进行排列,识别Y维子码码长,码长遍历范围为1~n2 ,n2=L/n1 。计算量也体现在码重统计和奇偶性判断上,码重统计需要n2∑n=1M×n1×n 次加法,奇偶性判断可等效为M×n1 次加法和M×n1 次乘法。同理,Z维子码码长复杂度为N∑n=1M×n1×n2×n ,奇偶性判断可等效为M×n1 次加法和M×n1 次乘法,其中N=L/(n1×n2) 。因此,本文算法识别TPC码的算法复杂度与维度有关,根据维数将上述的乘法和加法次数求和即可得到总的复杂度。本文仿真实验在i7-8700处理器平台进行。设接收到的帧数M 为5,以表1中的TPC(128,120)*(128,120)码为例,取n1 为150,误码率为0.005,则完成一次二维TPC码识别所需的时间为6.3 s左右。5. 结论
本文提出了一种基于子码识别的TPC码盲识别方法。该方法利用子码共有的特性,使用码重奇偶性对TPC码的每一维度存在的编码长度进行估计,在二维TPC码识别正确的基础上,进一步识别存在的三维TPC结构。码重奇偶性能够识别出子码扩展汉明码、扩展BCH码、偶校验码的码长,分段识别的结果能够进一步验证Z维方向上存在二维TPC码的个数。仿真结果表明,文章提出的方法能够对误码条件下三种TPC码结构进行有效盲识别,具有较高的实用价值。
-
表 1 一些二维TPC码参数
Table 1 Some two-dimensional TPC code parameters
TPC码组成 码块大小 信息比特 码率 BCH(16,11)*(16,11) 256 121 0.473 BCH(32,26)*(32,26) 1024 676 0.660 BCH(44,31)*(43,30) 1892 930 0.491 BCH(64,51)*(64,51) 4096 2601 0.653 BCH(64,57)*(32,26) 2048 1482 0.724 BCH(64,57)*(46,39) 2944 2223 0.755 BCH(64,57)*(64,57) 4096 3249 0.793 BCH(128,120)*(128,120) 16384 14400 0.879 表 2 一些三维TPC码的参数
Table 2 Some 3D TPC code parameters
TPC码组成 码块大小 信息比特 码率 (16,11)*(16,11)*(16,11) 4096 1331 0.325 (16,11)*(32,26)*(8,7) 4096 2730 0.488 (64,57)*(32,26)*(16,11) 32768 16302 0.497 (64,57)*(128,120)*(8,7) 65536 47880 0.731 表 3 一些复用式三维TPC码参数
Table 3 Some parameters of multiplex 3D TPC codes
TPC码组成 码块大小 信息比特 码率 BCH (16,11)*(16,11)*N 256*N 121*N 0.473 BCH (16,11)*(32,26)*N 512*N 286*N 0.559 BCH (64,57)*(32,26)*N 2048*N 1482*N 0.724 BCH (64,57)*(128,120)*N 8192*N 6840*N 0.834 -
[1] 王垚,王翔,杨国东,等. 基于编码矩阵结构特征的非删余极化码参数盲识别算法[J]. 通信学报,2022,43(2):22- 33. doi:10.11959/j.issn.1000-436x.2022033 doi: 10.11959/j.issn.1000-436x.2022033 WANG Yao,WANG Xiang,YANG Guodong,et al. Recognition algorithm of non punctured polarization codes based on structural characteristics of coding matrix[J]. Journal on Communications,2022,43(2):22- 33.(in Chinese). doi:10.11959/j.issn.1000-436x.2022033 doi: 10.11959/j.issn.1000-436x.2022033
[2] SWAMINATHAN R,MADHUKUMAR A S,WANG Guohua. Blind estimation of code parameters for product codes over noisy channel conditions[J]. IEEE Transactions on Aerospace and Electronic Systems,2020,56(2):1460- 1473. doi:10.1109/taes.2019.2934308 doi: 10.1109/taes.2019.2934308
[3] 张永光,翟绪论. 比特流分析[M]. 北京:电子工业出版社,2018:122- 126. ZHANG Yongguang,ZHAI Xulun. Bit Stream Analysis[M]. Beijing:Publishing House of Electronics Industry,2018:122- 126.(in Chinese)
[4] 刘玉君. 信道编码[M].(第三版). 郑州:河南科学技术出版社,2006:49- 133,390. LIU Yujun. Channel Coding[M].(Third Edition). Zhengzhou:Henan Science and Technology Press,2006:49- 133,390.(in Chinese)
[5] 杨晓静,闻年成. 基于码根信息差熵和码根统计的BCH码识别方法[J]. 探测与控制学报,2010,32(3):69- 73. doi:10.3969/j.issn.1008-1194.2010.03.017 doi: 10.3969/j.issn.1008-1194.2010.03.017 YANG Xiaojing,WEN Niancheng. Recognition method of BCH codes based on roots information dispersion entropy and roots statistic[J]. Journal of Detection& Control,2010,32(3):69- 73.(in Chinese). doi:10.3969/j.issn.1008-1194.2010.03.017 doi: 10.3969/j.issn.1008-1194.2010.03.017
[6] CHANG Yanyan,ZHANG Wei,WANG Hao,et al. Fast blind recognition of BCH code based on spectral analysis and probability statistics[J]. IEEE Communications Letters,2021,25(10):3170- 3174. doi:10.1109/lcomm.2021.3100348 doi: 10.1109/lcomm.2021.3100348
[7] 吴昭军,张立民,钟兆根,等. 基于平均余弦符合度下的本原BCH码盲识别[J]. 通信学报,2020,41(1):15- 24. doi:10.11959/j.issn.1000-436x.2020022 doi: 10.11959/j.issn.1000-436x.2020022 WU Zhaojun,ZHANG Limin,ZHONG Zhaogen,et al. Blind recognition of primitive BCH code based on average cosine conformity[J]. Journal on Communications,2020,41(1):15- 24.(in Chinese). doi:10.11959/j.issn.1000-436x.2020022 doi: 10.11959/j.issn.1000-436x.2020022
[8] LIU Pengtao,PAN Zhipeng,LEI Jing. Parameter identification of reed-Solomon codes based on probability statistics and Galois field fourier transform[J]. IEEE Access,2019,7:33619- 33630. doi:10.1109/access.2019.2904718 doi: 10.1109/access.2019.2904718
[9] 吴昭军,张立民,钟兆根,等. 一种软判决下的RS码识别算法[J]. 电子与信息学报,2020,42(9):2150- 2157. doi:10.11999/JEIT190690 doi: 10.11999/JEIT190690 WU Zhaojun,ZHANG Limin,ZHONG Zhaogen,et al. Blind recognition of RS codes based on soft decision[J]. Journal of Electronics& Information Technology,2020,42(9):2150- 2157.(in Chinese). doi:10.11999/JEIT190690 doi: 10.11999/JEIT190690
[10] 刘双龙. 卫星通信中TPC码识别与译码算法研究[D]. 广州:华南理工大学,2013. LIU Shuanglong. Research on the recognition and decoding algorithm for TPC codes in satellite communication[D]. Guangzhou:South China University of Technology,2013.(in Chinese)
[11] 刘东华,向良军. 信道编码与MATLAB仿真[M]. 北京:电子工业出版社,2014:332. LIU Donghua,XIANG Liangjun. Channel Coding and MATLAB Simulation[M]. Beijing:Publishing House of Electronics Industry,2014:332.(in Chinese)
[12] 吴昭军,钟兆根,张立民,等. 基于软判决下的不删余极化码参数识别[J]. 通信学报,2020,41(12):60- 71. doi:10.11959/j.issn.1000-436x.2020254 doi: 10.11959/j.issn.1000-436x.2020254 WU Zhaojun,ZHONG Zhaogen,ZHANG Limin,et al. Recognition of non-drilled polar codes based on soft decision[J]. Journal on Communications,2020,41(12):60- 71.(in Chinese). doi:10.11959/j.issn.1000-436x.2020254 doi: 10.11959/j.issn.1000-436x.2020254
[13] 邵堃,雷迎科. 基于离散度分析的帧同步快速盲识别算法[J]. 信号处理,2020,36(3):361- 372. SHAO Kun,LEI Yingke. Fast blind recognition algorithm of frame synchronization based on dispersion analysis[J]. Journal of Signal Processing,2020,36(3):361- 372.(in Chinese)
[14] 李歆昊,张旻,韩树楠. 基于多重分形谱的物理层帧结构检测算法研究[J]. 电子与信息学报,2018,40(2):400- 407. doi:10.11999/JEIT170356 doi: 10.11999/JEIT170356 LI Xinhao,ZHANG Min,HAN Shunan. Study on frame structure detection in physical layer based on multi-fractal spectrum[J]. Journal of Electronics& Information Technology,2018,40(2):400- 407.(in Chinese). doi:10.11999/JEIT170356 doi: 10.11999/JEIT170356
[15] SHU Lin,Costello DANIEL J.. 差错控制编码[M]. 晏坚,何元智,潘亚汉,等,译.(原书第2版). 北京:机械工业出版社,2007:131. SHU Lin,Costello DANIEL J.. Error Control Coding[M]. YAN Jian,HE Yuanzhi,PAN Yahan,et al. translate.(Second Edition). Beijing:Publishing House of Machinery Industry,2007:131.(in Chinese)
-
期刊类型引用(1)
1. 张蕾,李钰洁,何善宝,程星,陈德丽. 基于TPC信道编码的PCM-FM遥测系统仿真与实现. 科学技术与工程. 2024(23): 9921-9928 . 百度学术
其他类型引用(0)