背景技术
卷积交织在现代通信中应用非常广泛,随着数字通信技术的发展,越来越多的领域都会产生对卷积交织盲识别技术的需求,卷积交织的盲识别技术也是当今通信研究的前沿领域。
卷积交织的盲识别包括卷积交织起始点、符号比特数m,支路数B,延迟符号周期数M的确定。此外,卷积交织前所使用的RS编码参数也是需要识别的重要内容。
刘玉君等在其2007年3月出版的“信息工程大学学报”第8卷第1期“有限域上RS码特征的研究”一文中介绍了RS码的一些性质,叙述如下:
设V是由GF(2m)上的k×n阶生成矩阵G生成的RS码,则V的向量表示(nm,km)是GF(2)上由G′生成的线性分组码。反之也成立。G′称为(n,k)RS码对应(n,mk)二进制循环码的生成矩阵。
一个GF(2m)上的(n,k)RS码对应一个二进制(nm,km)循环码,设该二进制循环码的标准生成矩阵是:
其中I是m×m阶单位矩阵,每个Pij(i=1,2,…k,j=1,2,…,n-k)是m×m阶矩阵块,即:
则Pij中的下一行左移一位且后面补0,再与相邻的上一行对应比特分别模2加,其结果不是全0,就是该RS码所在的有限域构成多项式系数。
虽然上述性质为RS码的重要性质,但是该性质却并不能用来对RS码或卷积交织进行盲识别,本发明最后部分将应用该性质来判决识别结果的正确性。
发明内容
本发明所要解决的技术问题提出一种流程清晰,适用面广的卷积交织的盲识别方法。本发明方法经线性变换在初步得到RS码及卷积交织关系后,对矩阵进行数学分析,确定卷积交织的起始点,分析n,B,M,m的取值可能,据此对序列进行解卷积交织,求出其生成多项式和构成多项式,同时验证识别结果的正确性。
为了解决上述技术问题,本发明提供的卷积交织的盲识别方法,包括如下步骤:
①根据接收的数据选取合适长度的序列作为识别序列,确定将要排列的矩阵行数p,p至少大于B倍的等价分组长度(nm)。
②取定列数最大值和最小值,按列数变化将数据序列排成矩阵形式,计算该矩阵的秩,并记下秩不等于列数的列值,初步得到RS码及卷积交织关系;
③矩阵列数依次取为:nm,2nm,3nm,4nm……,行数大于列数即可;将码序列进行移位,对各矩阵分别求秩,记下nm种移位情况(无移位和nm-1种不同移位)时不同维数下矩阵的秩,分析确定卷积交织起始点;
④分析n,m,B,M可能取值;
⑤从卷积交织起始点开始,对序列进行解卷积交织,分析RS码生成多项式;
⑥分析RS码构成多项式,验证识别结果正确性。
优选地,本发明上述卷积交织的盲识别方法中,卷积交织前在GF(2m)上的(n,k)RS码等价(nm,km)分组码分组长度nm的确定:对卷积交织所构成的p×q矩阵(p>Bnm,q<p),若q为nm或nm的整数倍,则单位化后左上角单位阵的维数相等,且此时矩阵的秩不等于列数q。
优选地,本发明上述卷积交织的盲识别方法中,卷积交织起始点的确定:对卷积交织所构成的p×q矩阵(p>q,q为nm倍数)而言,当卷积交织起点(必为分组码起点)与矩阵每行起点重合时,其秩最小,相应解空间维数最大。
优选地,本发明上述卷积交织的盲识别方法中,在GF(2m)上的(n,k)RS码等价(nm,km)分组码生成多项式向量的确定:对(nm,km)线性分组码校验矩阵H,其第km行的第km列到第nm列即为生成多项式向量。
优选地,本发明上述卷积交织的盲识别方法中,解卷积交织后,根据RS码校验矩阵H分析出的构成多项式p(x)可用来验证所得生成多项式g(x)的正确性,验证判据如下:g(x)=(x-αi)(x-αi+1)…(x-α2t+i-1)(x-α2t+i),其中α是构成多项式p(x)的根,通常情况下i=0或1。
优选地,本发明上述卷积交织的盲识别方法中,卷积交织特指信息数据在RS编码后进行的卷积交织,且n=BM。
相对现有技术,本发明经线性变换在初步得到RS码及卷积交织关系后,对矩阵进行数学分析,确定卷积交织的交织起始点,分析n,B,M,m的取值可能,据此对序列进行解卷积交织,求出其生成多项式和构成多项式,同时验证识别结果的正确性。本发明较好地解决了卷积交织前RS码分组长度确定,卷积交织起始点确定,n,B,M,m取值范围确定及RS码生成多项式、构成多项式确定等问题,仅通过通信内容即可实现卷积交织的盲识别,具有过程清晰,判决简捷,识别速度快等特点。
具体实施方式
下面结合附图和具体实施例,进一步阐述本发明。这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明记载的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。
卷积交织是一种符号交织,交织前所对应的非二进制编码一般为RS码,一个GF(2m)上的(n,k)RS码等价于一个二进制(nm,km)线性分组码,为了实现方便,一般B,M值的选择与交织器所使用的RS码的码字长有关,取n=BM。
如图1所示,本发明优选实施例提供的卷积交织的盲识别方法,包括如下步骤:
①根据接收的数据选取合适长度的序列作为识别序列,确定将要排列的矩阵行数p,p至少大于B倍的等价分组长度(nm)。
为了保证下续②中卷积交织相关关系确定的有效性,本步数据长度应大于(Bnm)2,矩阵行数p至少应为未知分组长度的B倍。
②取定列数最大值和最小值,按列数变化将数据序列排成矩阵形式,计算该矩阵的秩,并记下秩不等于列数的列值,初步得到RS码及卷积交织关系。
将数据序列排成p行q列的矩阵形式,其中3≤q<p,对每个矩阵进行初等行变换,计算并记下其秩。确定GF(2m)上的(n,k)RS码nm值的定理1为:对卷积交织所构成的p×q矩阵(p>Bnm,q<p),若q为nm或nm的整数倍,则单位化后左上角单位阵的维数相等,且此时矩阵的秩不等于列数q。
对定理1的证明如下:卷积交织后的数据与交织前的数据相比,只是改变了码元的相对位置,那么对包含完整码字的序列,通过线性变换,其相关性保持不变。对未交织前的(n,k)RS码,等价于一个二进制(nm,km)线性分组码,(nm,km)线性分组码的(n-k)m位校验只对本码组的km位信息起约束关系,和其他码组无关,其编码约束度就是码长nm。对卷积交织而言,有如下性质:交织器的两个相邻的输入数据经过交织器后出现在输出端时其间隔增加为BM个符号周期,交织器输入端任何间隔低于BM个符号的两个符号在交织器输出端最小间隔为B个符号。由此可知,对卷积交织后数据以B·BMm=Bnm为列数进行排列时,每列必定含有一个(nm,km)的线性分组码完整码字,只是位置并不连续,单位化后,其秩小于q。当q(q>Bnm)与nm为倍数关系时,每行至少存在1个位置完全对齐且线性相关的完整码组,单位化后,此矩阵的秩也必定小于q。当q与nm没有倍数关系时,每行要么不存在一个完整的码组,要么虽然存在完整的码组,但其位置却是没对齐的,对矩阵而言,就是各列线性无关,其秩为列数q。
故只需对留存的列值取最大公约数即可得到nm值。
如图2所示即为nm确定流程图。
③矩阵列数依次取为:nm,2nm,3nm,4nm……,行数大于列数即可。将码序列进行移位,对各矩阵分别求秩,记下nm种移位情况(无移位和nm-1种不同移位)时不同维数下矩阵的秩,分析确定卷积交织起始点。
确定卷积交织起始点的定理2为:对卷积交织所构成的p×q矩阵(p>q,q为nm倍数)而言,当卷积交织起点(必为分组码起点)与矩阵每行起点重合时,其秩最小(相应解空间维数最大)。
对定理2的证明如下:对p×q矩阵(p>q,q为nm倍数)而言,当q为nm倍数时,每行码组内位置必定是一一对齐的,若矩阵的每行起点恰好为交织帧的起点(必为分组码起点),从首位开始,每行分散存在的完整码组数最多,线性变换后矩阵内线性相关性最强,其秩最小,相应解空间维数最大。故当记下矩阵移位的nm种情况(无移位和nm-1种不同一位)时,则当各矩阵秩相对最小时的移位即为卷积交织的起点。
如图3所示即为卷积交织起点确定流程图。
④分析n,m,B,M可能取值。
对GF(2m)上的(n,k)RS码而言,其等价二进制线性分组码为(nm,km),一般2≤m≤8,且nm≤m(2m-1),当RS码为非删余码时,取等号。
m取值与nm关系如下表1所示:
表1
m |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
nm最大值 |
6 |
21 |
60 |
155 |
378 |
889 |
2040 |
确定m可能取值时可先由nm所处范围及其是否为nm公约数确定m可能取值范围,如nm=400,则m只可能为7或8时的删余码,由于400不能整除7,能整除8,则确定m为8。
进一步,由m可确定n及B,M的可能值。
⑤从卷积交织起始点开始,对序列进行解卷积交织,分析RS码生成多项式。
对解卷积交织后的序列,将码字排成a行nm列(a>mn)矩阵形式,即每行是一个完整的码字,对这个矩阵进行初等行变换,由线性分组码性质,则矩阵的前km行可以化成[Ikm P]形式,从而可知k,得到校验矩阵H。
确定n,k,m后,通过查表或计算可初步得到卷积交织前RS码的生成多项式及其构成多项式。
由校验矩阵H得到(n,k)RS码等价(nm,km)分组码生成多项式向量的定理3为:对(nm,km)线性分组码校验矩阵H,其第km行的第km列到第nm列即为生成多项式向量。
对定理3的证明如下:(nm,km)分组码的任何生成矩阵都可以简化成“系统形式”:G=[IkmP],称矩阵H为(nm,km)码的校验矩阵,有校验关系:C·HT=0成立。式中0代表由m(n-k)个元素组成的全零行矢量,另有G·HT=0,这里0代表一个由全零元素组成的km×(nm-km)维矩阵,则必有H=[PT Inm-km]。可见要得到P,只需取校验矩阵H的第1到km行的km到nm列子矩阵的转置即可。由定义,分组码中次数最低的多项式称为生成多项式,显然H中第km行的第km列到第nm列即为生成多项式向量。
有了生成多项式向量,自然生成多项式g(x)就很容易写出了。
⑥分析RS码构成多项式,验证识别结果正确性。
由背景技术中所介绍的RS码性质,可以算出该(n,k)RS码的构成多项式,生成多项式的次数2t=n-k,可以写成:
g(x)=(x-αi)(x-αi+1)…(x-α2t+i-1)
其中α是构成多项式p(x)的根,通常情况下i=0或1。
由得出的构成多项式即可验证生成多项式是否正确,从而最终确定m,RS码生成多项式g(x)及构成多项式p(x)。同时也可用⑤中初步确定的RS码生成多项式及其构成多项式来对识别结果进行辅助判定。
以下以某一段采用了RS编码和卷积交织的接收序列为例,阐述本发明的实施过程。
①取定分析长为100000bit的识别数据序列,确定矩阵行数p=300。
②取定列值范围(15,295),按列数变化将数据序列排成矩阵形式,依次计算矩阵的秩,记下秩不等于列数的列值,其值列举如下表2所示:
表2
列数 |
32 |
64 |
96 |
128 |
160 |
192 |
矩阵秩 |
18 |
32 |
44 |
56 |
68 |
80 |
由表2,对留存的列值取最大公约数即可得到nm=BMm=32。
③矩阵列数依次取为:32,64,96,128,160,行数:列数+10。将码序列依次进行移位,对各矩阵分别求秩,记下32种移位情况(无移位和31种不同移位)时不同维数下矩阵的秩,得到相应矩阵的秩,其值如下表3所示:
表3
从表中可以看出,当移12或13位时,在不同维数矩阵下的相应矩阵的秩最小,可知此两处即可能为卷积交织的起点。
④如以移12位时为卷积交织的起点。由nm=32,从表1可知m可能为4,5,6,7,8;从其是否为32的公约数来看,m只可能取4或8。以m=4为例,可得n=8,则B=2,M=4;或B=4,M=2。
⑤从卷积交织起始点开始,由B,M,m对序列进行解卷积交织,如取B=2,M=4;对解卷积交织后的序列按40行32列排列,进行线性变换,单位化后可知km=16,则k=4,且其等价分组码生成多项式向量为:[11111001100011100],由m=4可知其RS码生成多项式g(x)=x4+15x3+3x2+x+12。
同时由m=4,n=8,k=4,可知卷积交织前为(8,4)RS码,查表或计算可得其常用生成多项式:g(x)=x4+15x3+3x2+x+12,相应构成多项式:x4+x+1。其生成多项式与前面所得结果一致。
⑥由校验矩阵,分析得RS码构成多项式p(x)=x4+x+1,与⑤中的g(x)符合g(x)=(x-αi)(x-αi+1)…(x-α2t+i-1),其中α是构成多项式p(x)的根,i=0。此外的p(x)=x4+x+1与⑤中所述结果也保持一致,说明识别结果的正确性。
若识别结果不匹配,则需重新选择前面④相应可选部分进行分析,重复进行⑤,⑥。
本发明所涉及的数学符号均为本技术领域常用符号。