1.基于线性约束的卷积码随机交织序列交织关系估计方法,设截取到的随机交织后的卷积码c,并已知截获数据c对应的(2,1,v)卷积码编码器参数、交织深度L和交织起点,目标为估计交织关系π;其特征在于,包括以下步骤:S1、构造数据矩阵:
S11、利用截获数据c按照给定起点与交织深度L构造(2L+1)×L的数据矩阵C1:S12、取出矩阵C1的第二行,将其拼接在矩阵C1的第一行后面,取出矩阵C1的第三行,将其拼接在矩阵C1的第二行后面,依次类推,直到取出矩阵C1的最后一行,将其拼接在矩阵C1的倒数第二行后面,最后删除掉矩阵C1的最后一行得到维数为2L×2L的矩阵C,记C的前L列为第一个交织块U1,后L列为第二个交织块U2;
S2、将U2的列划分为两个集合:
S21、对矩阵C进行伽罗华域上的高斯行消元得到矩阵D,找到D第二个交织块中汉明重量不为1的列j,根据高斯行消元的结果,列j由其前面的列k1、k2、……、kn线性表出,若k1、k2、……、kn中含有第一个交织块中的列,则称列j与第一个交织块中的列存在相关关系,统计出D第二个交织块中所有与第一个交织块中的列存在相关关系的列,记这些列号的集合为A1,初始化i=1;
S22、对矩阵C中所包含的两个交织块进行相同的随机列置换P:C×P=D1
对D1进行高斯行消元,统计第二个交织块中与D第一个交织块中的列存在相关关系的列,记这些列号的集合为A2,根据已知的P对A2进行反排列置换:A2×P1-1=A3
更新A1=A1∪A3,i=i+1,若i
S23、对A1取C中第二个交织块列号的补集得到集合B1;
S3、确定卷积码第一个约束长度内组间交织关系,初始化i=1:S31、在S1中选取没有被选取过的两个列号j,k,若所有选取方式都已被选择,则在S1中选取一个列号j,在B1中选取一个列号k,若所有选取方式都已被选择,则在B1中选取没有被选取过的两个列号j,k;在U2中找到对应的两列(pj,qk),令M=[U1,pj,qk],对M的前[L+2(i+
1)]行做二进制高斯行消元得到M0;
S32、计算M0倒数第二列的汉明重量T1,倒数第一列的汉明重量T2,若T1=1且T2>1进入步骤S33,否则,回到步骤S31;
S33、令U1=M,添加交织关系:(π2i+1,π2i+2)=[j,k],在S1和B1中删除元素j,k,i=i+1,若i
S4、确定卷积码第一个约束长度内组内交织关系:S41、确定卷积码第二个约束长度内组间交织关系,初始化i=1:S411、利用已经得到的部分交织关系,在U2中选取解交织后的第2i+1列到2(i+1+v)列组成矩阵D;
S412、在S1中选取没有被选取过的两个列号j,k,若所有组合方式都已被选择,则在S1中选取一个列号j,在B1中选取一个列号k,若所有组合方式都已被选择,则在B1中选取没有被选取过的两个列号j,k;
S413、在U2中找到对应的两列(pj,qk),令M=[D,pj,qk],对M的前6v行做二进制高斯行消元得到M1;
S414、计算M1倒数第二列的汉明重量R1,倒数第一列的汉明重量R2,若R1=1且R2>1,进入步骤S415,否则,进入步骤S42;
S415、添加交织关系(π2i+1+2v,π2i+2+2v)=[j,k],在A1和A2中删除元素j,k,i=i+1,若i
S42、分析组内关系:
S421、将卷积码校验向量h的每两位分为一组,找到其中0,1或1,0的码组位置,假定有β个这样的码组:β=#{εi=(0,1)or(1,0),i=1,2,…v+1}码组在校验向量中的位置记为:[kj,1,kj,2],j=1,2…,β;
S422、取U2前W行作为测试矩阵B,针对矩阵B,按照已经得到的前两个约束长度内的交织关系解交织,每个码组的组内顺序暂时均按照[pi,qi]的顺序排列,设经过排列后的矩阵B为:B=(b1,b2,b3,…bL)
bi为W×1的列向量,i=1,2,…L,初始化w_flag=1;
S423、取矩阵B的第2×w_flag-1列到第2×w_flag+2v列,构成滑窗矩阵S:S=(b2×w_flag-1,b2×w_flag,…b2×w_flag+2v)根据对偶向量中β组01或10的位置[kj,1,kj,2],j=1,2…,β,列出滑窗矩阵S在这β组对应位置的所有可能顺序的矩阵S424、将得到的2β个矩阵分别与卷积码的校验向量h相乘得到:Ei=Si·hT,i=1,2,…2β
求所有Ei重量的最小值:
式中weight()表示求汉明重量;
S425、找到tmin所对应Ei所对应的Si,按照Si中的β组位置的顺序更新所得的交织关系π中相应位置的顺序,同时,将矩阵B中对应滑窗矩阵的地方替换为矩阵Si,w_flag=w_flag+
1,若w_flag
S5、后续列交织关系恢复:
S51、根据P2后2v个交织关系在U2中进行解交织,在U2中对应的这2v个列构成初始滑窗矩阵B1;
S52、从U2中未确定交织关系所在的列中选取没有选过的2列[pj,qk]拼接在B1的右边构成矩阵w1,测试与卷积码的校验向量h是否满足:weight(w1*h)
1≤T≤5
若满足则进入步骤S53,否则,若π的长度小于L-2,进入步骤S52,若π的长度等于L-2,交织关系估计结束,输出估计的交织关系π;
S53、将选取的两列以[pj,qk]和[pk,qj]的顺序拼接在B1的右边得到矩阵B3,B4,取二者的第3到2*v+2列构成矩阵C1,C2,再从U2中未确定交织关系的列除去[pj,qk]后剩下的列中任意选取2列拼接在C1,C2的右边得到矩阵D1,D2,测试与卷积码的校验向量h0是否满足:weight(D1*h0)
或者
weight(D2*h0)
1≤T≤5
若满足则进入步骤S54,否则重复步骤S53;
S54、记
D1*h0=E1
D2*h0=E2
判定二者所对应的重量较小者为正确的顺序,即
更新矩阵B1为C1,C2中对应重量较小的那一个,回到步骤S52。