发明名称 一种可变长度Turbo码的编译方法
摘要 本发明公开了一种可变长度Turbo码的编译方法,包括可变长度Turbo码的编码方法和可变长度Turbo码的译码方法,利用在缩短Turbo码中所传送的信息序列长度一般小于原始信息序列长度的规律,通过在Turbo码母码基础上对缩短的信息序列比特的进行重新排位,将传送信息的比特置于误比特率分布曲线中的低误比特率位置,将不传送信息的比特(置零的比特)置于高误比特率的位置,充分利用Turbo码本身所具有的不等保护的特征,在几乎不改变编译码方法的情况下充分利用信息序列中的已知信息,达到既可任意改变输入信息序列的长度,又能保障信息可靠性的效果。
申请公布号 CN104378122A 申请公布日期 2015.02.25
申请号 CN201410667118.X 申请日期 2014.11.20
申请人 华北水利水电大学 发明人 邵霞;张卫党;李萍;郑丽敏;李甦
分类号 H03M13/29(2006.01)I;H04L1/00(2006.01)I 主分类号 H03M13/29(2006.01)I
代理机构 郑州联科专利事务所(普通合伙) 41104 代理人 时立新;李伊宁
主权项 一种可变长度Turbo码的编译方法,其特征在于:包括可变长度Turbo码的编码方法和可变长度Turbo码的译码方法;可变长度Turbo码的编码方法包括以下步骤:A:确定一个Turbo码母码,Turbo码母码的信息序列长度为k,码率为R,生成多项式矩阵为g=(1,g(D)/h(D)),并给定交织器类型和删截矩阵;B:对Turbo码母码在给定信噪比SNR的条件下进行蒙特卡洛仿真,求出误比特率分布P<sub>b</sub>=(p1,p2,…,pk),式中P<sub>b</sub>(j)=pj,j=1,2,…,k,k为信息序列长度;P<sub>b</sub>(j)为Turbo码母码中第j个信息比特位的错误率;C:对误比特率分布曲线P<sub>b</sub>按照各个信息比特位置的误比特率的大小从小到大进行重新排序,得到位置变化的排序表∏=(π1,π2,π3,…,πk),式中∏(j)=πj,j=1,2,…,k;D:设Turbo码母码缩短后实际输入的信息序列长度为k`,输入的信息序列为Info=(a1,a2,…,ak`),式中Info(j)=aj,j=1,2,…,k`;在序列尾部添加k‑k`个零,得到序列Info`=(a1,a2,a3,…,ak`,0,…0),即前k`位为缩短后的信息序列,后k‑k`位补零,k`≤k,a<sub>j</sub>=0或1;E:对补零后的信息序列Info`中各个信息比特依照排序表∏进行重新排序,设排序后的信息序列表示为Info``,则Info``(∏(j))=Info`(j),j=1,2,…,k,得到新的信息序列Info``=(b1,b2,…,bk),j=1,2,…,k;F:将排序后得到的信息序列Info``送入Turbo码编码器进行编码,得到两路校验序列P1和P2;G:将信息序列Info和两路校验序列P1和P2组成码字序列Codeword;H:对码字序列Codeword进行BPSK调制,生成调制信号序列Modu并送入信道发送;Modu(j)=2×Codeword(j)–1;可变长度Turbo码的译码方法包括以下步骤:I:将接收端收到的与调制信号序列Modu相对应的受到干扰后的接收序列Re中的各路信息进行分离,分别得到与输入信息序列Info、两路交验序列P1和P2相对应的序列S1、Pr1和Pr2,其中S1=(s1,s2,…,sk`);J:将收到的序列S1进行扩展,即在序列S1后追加k‑k`个负数G,G小于等于‑200,得到扩展序列S1`,S1`=(s1,s2,…,sk`,G,…,G);K:对扩展序列S1`依照排序表∏进行重新排序,得到排序后的序列S1``,S1``(∏(j))=S1`(j),j=1,2,…,k;L:将序列S1``、Pr1和Pr2送入Turbo码译码器进行迭代译码,译码结束后输出信息序列的估值序列S2,S2=(t1,t2,…,tk);M:对估值序列S2依照排序表∏进行位置反变换,即恢复原始顺序,得到恢复顺序后的序列S3,位置反变换为:S3(j)=S2(∏(j)),j=1,2,…,k;N:取S3的前k`位,得到最后的译码结果。
地址 450011 河南省郑州市金水区北环路36号