首页> 中国专利> 一种基于素数码交织及脊髓码编码的水下抗干扰传输方法

一种基于素数码交织及脊髓码编码的水下抗干扰传输方法

摘要

本发明涉及一种基于素数码交织及脊髓码编码的水下抗干扰传输方法,属于无线通信编码及交织技术领域。所述水下抗干扰传输方法将待传输的信息比特依次经信源交织再进行校验;接着进行Spinal信道编码及信道交织;最后,经OFDM调制及上变频发送到水声时变信道;接收信号处理模块接收传输来的信号依次进行解调、信道解交织;再进行Spinal解码以及解校验,最后进行信源解交织输出恢复的信息比特。所述方法具有实现灵活且不用刻意考虑矩阵维数的特点;有效降低了误码率;此外,还采用Spinal短码编码作为信道编码,与其他信道编码相比,复杂度相对较低;在不增加甚至降低复杂度时,大大改善连串错误,即能应对突发干扰。

著录项

  • 公开/公告号CN110061808A

    专利类型发明专利

  • 公开/公告日2019-07-26

    原文格式PDF

  • 申请/专利权人 北京理工大学;

    申请/专利号CN201910138272.0

  • 发明设计人 卢继华;冯立辉;王欢;王震;

    申请日2019-02-25

  • 分类号

  • 代理机构北京理工正阳知识产权代理事务所(普通合伙);

  • 代理人毛燕

  • 地址 100081 北京市海淀区中关村南大街5号

  • 入库时间 2024-02-19 12:22:45

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-05-29

    授权

    授权

  • 2019-08-20

    实质审查的生效 IPC(主分类):H04L1/00 申请日:20190225

    实质审查的生效

  • 2019-07-26

    公开

    公开

说明书

技术领域

本发明涉及一种基于素数码交织及脊髓码编码的水下抗干扰传输方法,属于无线通信编码及交织技术领域。

背景技术

随着海底资源的探索,海洋环境的监测等各项海洋开发事业的迅速发展,各种数据信息利用水声信道和水声通信系统进行传送的需求大大增加。水声信道具有环境噪声高、传输损耗大等特性,极大限制了水声信号的传输效率和传输性能。

由Jonathan Perry等人于2011年首次提出的脊髓码,也称为无速率spinal码。Spinal码已被证明在二进制对称及高斯信道都能逼近香农容限,也可适用于时变信道,且具有编码构造简单、实用性强以及效率高的优势。

Spinal码利用译码码树进行译码,无论源码有多大都可完成译码,并且即使是短码,也可获得较好的译码特性。Spinal码的研究工作已经受到了广泛关注,但与现在已商业化的Turbo码、LDPC码以及极码相比,其研究还处于初步阶段。

现有的Spinal码应用主要是信道编码级联:比如内码采用LDPC、外码采用spinal码,主要是为提升误码率性能而提出的改进编码方案。本专利致力于从交织出发,结合Spinal信道编码,提出一种性能优异的水声信道下基于交织及spinal码的传输方法。

现有交织技术虽然已经能明显降低复杂度,但由于设计过于简单,因此在抗干扰上的效果并不理想。本发明的目的是在小幅增加系统复杂度情况下,通过素数码交织技术进一步提升现有spinal码的误码率性能及抗干扰性能。

在水声通信中,水声信道的一些特性容易造成接收端接收的信号波形发生严重的畸变失真,如果在信号传输的过程中引入素数码交织及脊髓码,能够一定程度上减少误码率和提高抗干扰性。

发明内容

本发明的目的在于从信源及信道编码两方面结合实现水下声道信系统信息传输的容量,并进一步提升可靠与安全性,提出了一种基于素数码交织及脊髓码编码的水下抗干扰传输方法。

本发明是通过以下技术方案实现的。

一种基于素数码交织及脊髓码编码的水下抗干扰传输方法所依托的水下抗干扰传输系统包括系统参数初始化模块、发送信号处理模块、交织参数控制单元、时变水声信道模块和接收信号处理模块;

其中,发送信号处理模块包括信源交织单元、校验单元、spinal编码单元、信道交织单元以及调制单元;接收信号处理模块包括解调单元、信道解交织单元、spinal解码单元、解校验单元以及信源解交织单元;

本系统中各模块及单元的连接关系如下:

时变水声信道模块与发送信号处理模块和接收信号处理模块相连,具体地,时变水声信道模块分别与调制单元和解调单元相连;系统参数初始化模块与发送信号处理模块以及接收信号处理模块相连,具体的,系统参数初始化模块分别与其中的校验单元、spinal编码单元、调制单元、解调单元、spinal解码单元以及解校验单元相连;交织参数控制单元分别与信源交织单元、信道交织单元、信源解交织单元以及信道解交织单元相连;

本系统中各模块及单元的功能如下:

系统参数初始化模块的功能包括:1)为校验单元和解校验单元提供所需的校验模式、校验信息比特长度以及校验多项式;2)为Spinal编码单元和Spinal解码单元提供Spinal编码的帧长度、信息比特长度以及滑窗大小;3)为调制单元提供调制参数,为解调单元提供解调参数;4)初始化帧数、最大错误帧数、误码率和误帧率;

发送信号处理模块的功能是将待传输的信息比特依次经信源交织单元进行信源交织再经校验单元进行校验;接着在Spinal编码单元进行Spinal信道编码,然后经信道交织单元进行信道交织;最后,经调制单元进行OFDM调制及上变频得到发送到水声时变信道模块的信号;

水声时变信道模块的功能是模拟水下多径时变衰落信道,具体通过对发送信号处理模块输出的信号加入加性噪声及乘性噪声实现;

接收信号处理模块的功能是接收水声时变信道模块传输来的信号依次经解调单元进行解调、信道解交织单元进行信道解交织;再经Spinal解码单元进行Spinal解码以及解校验单元进行解校验,最后经信源解交织单元进行信源解交织;最后输出恢复的信息比特。

信源交织单元的功能是接收交织参数控制单元传来的发送交织参数p对待传输的信息比特进行信源交织,具体交织方式采用素数码交织及平方素数码交织两种中的一种,输出信源交织后的信息比特;

其中,发送交织参数p的选取原则为:

若为素数码交织,(p-1)*(p-1)大于等于当前帧内待传输的信息比特;

若为平方素数码交织,(p-2)4大于等于当前帧内待传输的信息比特;

校验单元的功能是对输入的待传输的信息比特进行校验;

其中,校验方式是CRC校验、格雷码校验、异或校验、奇偶校验以及MD5校验中的一种;

Spinal编码单元的功能是对校验单元输出的信息比特进行Spinal编码,输出Spinal编码后的信息比特;

信道交织单元的功能是接收交织参数控制单元传来的发送交织参数q对Spinal编码后的信息比特进行信道交织,具体交织方式采用素数码交织及平方素数码交织两种中的一种,输出信道交织后的信息比特;

其中,发送交织参数q的选取原则为:

其中,若为素数码交织,(q-1)*(q-1)大于等于当前帧Spinal编码后符号中的所有信息比特;

若为平方素数码交织,(q-2)4大于等于当前帧Spinal编码后符号中的所有信息比特;

调制单元的功能是对信道交织后的符号进行调制及上变频,并经天线输出待发送信号;

其中,调制方式包括但不限于OFDM调制、FSK调制、QAM调制以及PSK调制;

接收信号处理模块接收调制单元输出的待发送信号经时变水声信道模块后的信号;

解调单元的功能是接收经时变水声信道模块后的信号,并进行下变频和解调,输出解调后信息比特;

信道解交织单元的功能是接收解调单元传来的解调后信息比特,并接收交织参数控制单元传来的接收交织参数q对解调后信息比特进行信道解交织,输出解信道交织后比特;

其中,信道解交织方式与信道交织单元的交织方式相同;

Spinal解码单元的功能是对信道解交织单元输出的解信道交织后信息比特进行Spinal解码,输出Spinal解码后的信息比特;

解校验单元的功能是对Spinal解码后的信息比特进行解校验,输出解校验比特;

其中,解校验方式与校验单元的校验方式相同;

信源解交织单元的功能是对解校验单元输出的解校验比特,依据交织参数控制单元传来的发送交织参数p进行信源解交织,具体交织方式与信源交织单元的交织方式相同;

一种基于素数码交织及脊髓码编码的水下抗干扰传输方法,包括如下步骤:

步骤一、系统参数初始化模块初始化系统参数、Spinal编译码参数、校验参数、调制参数与解调参数;

其中,系统参数包括帧数、帧内编码比特数、帧内信息比特数、误码率、误帧率以及最大错误帧数;

其中,误码率和误帧率均被初始化为0;

帧数及帧内编码比特数的乘积数值范围依据置信度为大于等于99%设置;

其中,Spinal编译码参数包括编码参数以及译码参数;其中,编码参数为hash函数初始状态二进制序列;译码参数根据译码方法不同,参数也不同;

当采用滑窗译码算法,译码参数为滑窗大小;

其中,当前帧内比特数记为Fi

其中,误码率和误帧率参数均被初始化为0;Spinal编译码参数包括Spinal编码的帧长度、信息比特长度以及列表长度;校验参数包括校验类型及对应校验参数;初始化帧序号变量i为0;

当校验类型是CRC校验时,校验参数为CRC长度和CRC校验多项式;

当校验类型是格雷码校验时,校验参数为格雷码长度;

其中格雷码长度的计算方法为:大于等于以2为底,信息比特长度对数的最小整数;

当校验类型是异或校验时,校验参数为异或间隔;

异或间隔的范围为大于等于1,小于等于以2为底,信息比特长度对数的整数部分;

当校验类型是奇偶校验时,无校验参数;

当校验类型是MD5校验时,校验参数为散列函数与校验码;

步骤二、将当前第i帧内待传输的信息比特进行信源交织,具体为:

信源交织单元接收交织参数控制单元传来的发送交织参数p对当前第i帧内待传输的信息比特进行信源交织,输出信源交织后的信息比特;

其中,信源交织方式为素数码交织及平方素数码交织两种中的一种;

步骤三、校验单元对步骤二信源交织后的信息比特进行在校验单元进行校验,输出校验后比特序列;

其中,校验方式是CRC校验、格雷码校验、异或校验、奇偶校验以及MD5校验中的一种;校验后比特序列的长度,记为LFi

步骤四、校验单元对步骤三输出的校验后比特序列在Spinal编码单元中进行Spinal编码,输出Spinal编码后符号;

其中,Spinal编码包括如下子步骤:

步骤4.1将校验后比特中的LFi比特的信息序列以m比特为单位分成LFi/m个信息分段,记为:C1、C2、...、CLFi/m,其中,每个分段都包含有m个比特;

步骤4.2依据步骤一设定的Spinal编译码参数中的hash函数初始状态二进制序列将LFi/m个信息分段按顺序依次经hash函数h经公式(1)计算当前第k段的m个比特对应的二进制序列Sk,再经星座函数映射为Spinal编码后符号,记为:Spinal1,Spinal2,...,SpinalLFi/m

Sj=h(Sj-1,Cj),1≤j≤LFi/m,(1)

其中,Sj-1为当j取1,即S0为步骤一系统参数初始化模块初始化的hash函数初始状态二进制序列;下一个hash函数初始状态二进制序列Sj由当前输入的信息分段Cj和Sj-1经hash函数h产生;

步骤五、信道交织单元将步骤四输出的Spinal编码后符号信道交织,具体包括如下子步骤:

步骤5.1信道交织单元接收交织参数控制单元传来的发送交织参数q;

步骤5.2基于发送交织参数对步骤四输出的Spinal编码后符号中的所有信息比特进行参数为q的素数码交织;

其中,素数码交织具体通过生成素数码矩阵,再将素数码矩阵的元素作为地址,对步骤四输出的Spinal编码后的符号进行交织,输出信道交织后符号;

其中,素数码矩阵中元素的生成表达式如下公式(2):

d=tl(mod q)(2)

其中,d(t,l)是有限域GF(p)上模p乘法的结果,且0<t,l<q;其中,q为素数,d表示对应的输出符号地址,t和l分别表示Spinal编码后的符号转换为矩阵后的输入比特地址;其中t表示行号,l表示列号;

平方素数码是素数码在GF(p2)上的扩展,即以GF(p)中元素的二维向量来表示上述素数码中的各个参数,设(u,v)表示行数l,(a,b)表示符号序号;这里up+v,ap+b,k1p+k0对应的多项式分别为:uy+v,ay+b,k1y+k0,u,v,a,b,k1,k0∈GF(p)且(a,b)≠(0,0);根据以上约定,以f(y)=y2-z为既约多项式,由下式(3)实现GF(q2)域乘法:z为既约多项式的常数项;

其中,表示模q加,(a,b),(u,v)分别表示输入的符号位置,对应的输出符号地址表示为

步骤六、将步骤五输出的信道交织后符号经过调制单元进行调制,再对调制后信号进行上变频,得到待发送信号并经发射天线输出,即发射待发送信号;

其中,调制方式为OFDM调制、FSK调制、QAM调制以及PSK调制中的一种或两种级联;

步骤七、步骤六发射的待发射信号经水声时变信道模块进行传输,引入噪声和衰落;

步骤八、解调单元接收经过水声时变信道模块传输的信号,并进行下变频和解调,输出解调后符号;

其中,解调方式与步骤六中的相同;

步骤九、信道解交织单元接收解调单元传来的解调后信息比特,并接收交织参数控制单元传来的接收交织参数q对解调后信息比特进行信道解交织,输出解信道交织后比特;

其中,信道解交织方式与信道交织单元的交织方式相同;

步骤十、将步骤九输出的解交织后符号经Spinal解码单元进行Spinal码译码,输出Spinal解码后的信息比特;

其中,Spinal码译码方法是ML译码方法、近ML译码方法、Bubble译码方法、堆栈译码方法或滑窗译码方法中的一种;

步骤十一、将步骤十Spinal解码后的信息比特经解校验单元进行解校验,输出解校验比特;

其中,解校验方式与步骤三校验单元采用的校验方法相同;

步骤十二、将步骤十一输出的解校验比特在信源解交织单元进行解信源交织,输出解信源交织后比特,即恢复的信息比特;

其中,信源解交织单元对解校验单元输出的解校验比特依据交织参数控制单元传来的发送交织参数p进行信源解交织,具体交织方式与信源交织单元的交织方式相同;

步骤十三、对步骤十二恢复的信息比特与步骤一输入的当前帧待传输的信息比特进行比较和判决,计算得当前帧是否错误以及得出当前帧内的错误比特数;并将当前错误帧累加更新至当前错误帧数;

步骤十四、判断当前错误帧数是否达到最大错误帧数,如果未达到,则进一步判断当前帧序号i是否等于帧数,如果不等于则当前帧序号i加1,跳到步骤二;否则若等于帧数,则计算并输出错误统计结果;否则,如果达到最大错误帧数,计算并输出错误统计结果。

有益效果

一种基于素数码交织及脊髓码编码的水下抗干扰传输方法,与现有水下传输系统与方法相比,具有如下有益效果:

1.所述水下抗干扰传输方法所采用的素数码交织方法,交织延时和存储量要远远优于传统的行列交织相比,计算复杂度要远远用于随机交织,但性能二者相当,尤其信噪比大的情况下,素数码交织性能接近随机交织;

2.所述水下抗干扰传输方法所采用的素数码交织方法,与现有交织方式相比,对突发干扰具有较好的抑制效果,非常适用于水下时变信道环境;且通过控制交织参数以及关断对应步骤,实现仅含信源交织或仅含信道交织,具有实现灵活且不用刻意考虑矩阵维数的特点;实现了抗干扰与误码率的提升;

3.所述水下抗干扰传输方法采用交织技术以外,还采用Spinal短码编码作为信道编码,与其他信道编码相比,复杂度相对较低;此外,由于交织引入,比传统交织在复杂度上也低;因此能够做到不增加复杂度甚至降低复杂度的前提下,还能大大改善出现连串错误时超出纠错编码纠错能力的纠错性能,即能实现相同SNR输入条件下更低的误码率,且能应对突发干扰。

附图说明

图1是本发明一种基于素数码交织及脊髓码编码的水下抗干扰传输方法所依托的系统组成结构及连接关系示意图;

图2是本发明一种基于素数码交织及脊髓码编码的水下抗干扰传输方法实施例1的流程图;

图3是本发明一种基于素数码交织及脊髓码编码的水下抗干扰传输方法中步骤9及实施例中步骤VIII的流程图;

图4是本发明一种基于素数码交织及脊髓码编码的水下抗干扰传输方法在实施2中OFDM调制方式的系统组成与连接示例图。

具体实施方式

下面结合附图和实施例对本发明一种基于素数码交织及脊髓码编码的水下抗干扰传输方法做进一步说明和详细描述。

实施例1

图1是本发明一种基于素数码交织及脊髓码编码的水下抗干扰传输方法所依托的抗干扰传输系统结构及连接关系示意图。

从图1可以看出,所依托的水下抗干扰传输系统包括系统参数初始化模块、发送信号处理模块、交织参数控制单元、时变水声信道模块和接收信号处理模块;,发送信号处理模块又包括信源交织单元、校验单元、spinal编码单元、信道交织单元以及调制单元;接收信号处理模块包括解调单元、信道解交织单元、spinal解码单元、解校验单元以及信源解交织单元;

时变水声信道模块与发送信号处理模块和接收信号处理模块相连:时变水声信道模块分别与调制单元和解调单元相连;

系统参数初始化模块与发送信号处理模块以及接收信号处理模块相连:系统参数初始化模块分别与其中的校验单元、spinal编码单元、调制单元、解调单元、spinal解码单元以及解校验单元相连;交织参数控制单元分别与信源交织单元、信道交织单元、信源解交织单元以及信道解交织单元相连。

具体到本实施例的实施,如图2所示,包括如下步骤:

步骤1、系统参数初始化模块初始化系统参数、Spinal编译码参数、校验参数、调制参数与解调参数;

其中,系统参数包括帧数、帧内编码比特数、信息比特数、误码率、误帧率以及最大错误帧数;

其中,Spinal编译码参数包括hash函数初始状态二进制序列;

其中,hash函数初始状态二进制序列被初始化为小于2^32的二进制序列,被初始化为0;

其中,当前帧内比特数记为Fi,等于64;

其中,误码率和误帧率参数均被初始化为0;Spinal编译码参数包括Spinal编码的帧长度512、信息比特长度8以及列表长度为512/64=8;校验参数包括校验类型及对应校验参数;初始化帧序号变量i为0;

其中,系统参数中的帧数被设置为100、帧内编码比特数被设置为64、信息比特数被设置为32、误码率、误帧率被初始化为0;最大错误帧数设置为5;

具体到本实施例,省去发明内容中的步骤二中的信源交织;

步骤2、校验单元对待传输信息比特在校验单元进行校验,输出校验后比特序列;

其中,校验类型选择CRC校验,校验参数为CRC长度24和CRC校验多项式的逻辑表达为:logical([1 1 0 0 0 0 1 1 0 0 1 0 0 1 1 0 0 1 1 1 1 1 0 1 1]);校验后比特序列的长度为32bit,记为LFi

步骤3、校验单元对步骤三输出的校验后比特序列在Spinal编码单元中进行Spinal编码,输出Spinal编码后符号;

其中,Spinal编码包括如下子步骤:

步骤3.A将校验后比特中的LFi比特的信息序列以8比特为单位分成4个信息分段,记为:C1、C2、C3和C4,其中,每个分段都包含有8个比特;

步骤3.B依据步骤一设定的Spinal编译码参数中的hash函数初始状态二进制序列0将4个信息分段按顺序依次经hash函数h经公式(1)计算当前第j段的8个比特对应的二进制序列Sj,再经星座函数映射为Spinal编码后符号,记为:Spinal1,Spinal2,...,SpinalLFi/m

Sj=h(Sj-1,Cj),1≤j≤4,(4)

其中,Sj-1为当j取1,即S0为步骤一系统参数初始化模块初始化的hash函数初始状态二进制序列0;下一个hash函数初始状态二进制序列Sj由当前输入的信息分段Cj和Sj-1经hash函数h产生;编码后比特数为64位;

步骤4、信道交织单元将步骤3输出的Spinal编码后符号信道交织,具体包括如下子步骤:

步骤4.A信道交织单元接收交织参数控制单元传来的发送交织参数q;

步骤4.B基于发送交织参数对步骤四输出的Spinal编码后符号中的所有信息比特进行参数为q的素数码交织;

具体实施时,可以采用“信源交织与信源解交织”以及“信道交织与信道解交织”两者其一,即下面的A)和B)两者情况取一:

A)仅含信道交织与解交织情况,即去掉步骤2与步骤12对应的信源交织以及信源解交织步骤,或依据要传输的信息特性灵活选择交织方式与交织参数q;

B)仅含信源交织与解交织情况,步骤5与步骤9对应的信道交织以及信道解交织步骤,或依据水下信道情况灵活选择交织方式与交织参数q;

依据交织参数选取原则:为实现编码比特为64得交织,素数码交织参数q应该大于等于9,具体到本实施例,选取发送交织参数q为13;

当素数参数q=13时构造的素数码如下表1所示:

表1 q=13时构造的素数码矩阵

从表1可以看出,符号序号t=0的码序列为全零序列,m的取值范围为0到12;除开首行和首列,均可作为交织地址。

具体到本实施例表1中不是所有数据均参与信道交织中,仅仅是黑体序号作为对待交织信息比特进行交织的行地址;当交织进行到素数码矩阵的最后一行时往往信息符号的个数不够一行时,此时只要在相应的行中依次挑出不大于所剩信息符号数目的元素组成地址序列即可,不必补零,即两个很大的数字“12”及“6”,这两处空着即可,不用像行列交织那样补零操作。这一点与传统的行列交织相比优势很明显;此外,传统的行列交织方法其交织深度或存储深度就是参与交织的所有比特;而行列交织要根据每次交织的信息符号个数组成完整的矩阵,因此行和列的取值要经过计算来确定。

因此,素数码交织比行列交织简单和实现灵活,因为具体实现时,只需要给出素数码信息即可,存储空间可以大大缩减,只需传输及存储素数参数值。

表2 p=13,交织深度64时不同交织方法的存储量对比

交织方法存储量交织延时行列交织6464素数码交织113伪随机交织6464

其中,交织深度指待交织的比特数量或符号数量;从表2可以看出,素数码交织在存储量以及交织延时方面优势明显。

步骤5、将步骤4输出的信道交织后符号经过调制单元进行调制,再对调制后信号进行上变频,得到待发送信号并经发射天线输出,即发射待发送信号;

其中,具体到实施例,调制方式选择256QAM;当水声信道的多径干扰严重时,可以选择OFDM调制或者OFDM调制与ASK、FSK、PSK或QAM调制方式进行级联;

步骤6、步骤5发射的待发射信号经水声时变信道模块进行传输;具体到本实施例,简化具体操作,仅选择有加性噪声的AWGN信道;

步骤7、解调单元接收经过水声时变信道模块传输的信号,并进行下变频和解调,输出解调后符号;

其中,解调方式与步骤5中相同;

步骤8、信道解交织单元接收解调单元传来的解调后信息比特,并接收交织参数控制单元传来的接收交织参数q=13对解调后信息比特进行信道解交织,输出解信道交织后比特;

其中,信道解交织方式与信道交织单元的交织方式相同,均为素数码交织;

解交织时,由于素数码交织属于确定数学公式(1)及(4)能表达,因此不需要存储地址值;只需要传输q=13一个参数即可,此步骤8就可以正确解交织;

步骤9、将步骤8输出的解交织后符号经Spinal解码单元进行Spinal码译码,输出Spinal解码后的信息比特;

具体到本实施例,Spinal码译码方法采用滑窗译码方法,也可以采用堆栈搜索方法,如图2中Spinal译码箭头所示,具体为:先在第一个基本层内进行堆栈搜索,获取第一个基本层内最优的节点后,将结果保存;第一个基本层的结果在第二个基本层内进行堆栈搜索,获取最优节点;按同样方法进行至最后一个基本层,将最后一个基本层搜索获得的结果,即为当前帧Spinal解码后的信息比特,具体步骤如图3所示,又包括如下子步骤:

步骤VIIII.1设置译码器参数:设置码树的总层数M、搜索单元大小D、每单元搜索完成后所得到的最优节点数目B、在一个搜索单元中搜索时的最大扩展节点数Clim和搜索层指数i,其中M=n/k,n为无速率Spinal码的信息序列长度,k为将无速率Spinal码的信息位分段后每段的信息序列长度,D为能整除M的正整数,i初始化为0。

步骤VIIII.2初始化搜索堆栈stack-C和保留路径堆栈stack-B,令译码器的初始hash状态与编码器的hash状态相同,将译码器的初始hash状态作为初始扩展节点压入保留路径堆栈stack-B,并将初始路径可靠度置为0,将初始扩展节点的层数置为0;

步骤VIIII.3比较iD与n/k的大小,当iD<n/k时,将i增加1,执行步骤VIIII.4;当iD≥n/k时,执行步骤VIIII.9;

步骤VIIII.4清空搜索堆栈stack-C,并将保留路径堆栈stack-B中的节点按可靠度大小顺序压入搜索堆栈stack-C,使得搜索堆栈stack-C中的节点按可靠度大小由栈顶向下降序排列,之后清空保留路径堆栈stack-B;

步骤VIIII.5扩展搜索堆栈stack-C的栈顶节点,遍历所有可能的输入,由子节点的路径编码序列和已有的信道观测值计算子节点的可靠度;删除被扩展过的栈顶节点,并将所有获得的子节点压入搜索堆栈stack-C;在扩展搜索堆栈stack-C的栈顶节点的过程中,当搜索堆栈stack-C的大小等于在一个搜索单元中搜索时的最大扩展节点数Clim时,终止扩展过程,执行步骤VIIII.8;

步骤VIIII.6对搜索堆栈stack-C中的节点按照可靠度大小由栈顶向下降序排序,当搜索堆栈stack-C的栈顶节点的层数小于iD时,返回VIIII.5继续扩展搜索堆栈stack-C的栈顶节点;当搜索堆栈stack-C的栈顶节点的层数等于iD时;执行步骤VIIII.7;

步骤VIIII.7将搜索堆栈stack-C的栈顶节点压入保留路径堆栈stack-B,同时遍历搜索堆栈stack-C至将除栈顶节点以外的可靠度依次从大到小排列的前B-1个层数为iD的节点,按可靠度从大到小的顺序依次压入保留路径堆栈stack-B后停止,之后返回VIIII.3;当除栈顶节点以外的层数为iD的节点数目小于B-1时,遍历搜索堆栈stack-C,将所有层数为iD的节点压入保留路径堆栈stack-B之后停止,之后返回VIIII.3;

VIIII.8遍历搜索堆栈stack-C至将搜索堆栈stack-C中可靠度依次从大到小排列的前B个层数为iD的节点,按可靠度大小顺序依次压入保留路径堆栈stack-B后停止,之后返回VIIII.3;当层数为iD的节点数目大于0且小于B时,遍历搜索堆栈stack-C,将所有层数为iD的节点压入保留路径堆栈stack-B之后停止,之后返回步骤VIIII.3;当层数为iD的节点不存在时,执行步骤VIIII.9;

VIIII.9将保留路径堆栈stack-B中可靠度最大的节点的信息比特输入作为译码结果输出;终止译码,输出当前帧Spinal码译码的信息比特。

若是滑窗译码算法,滑窗译码算法是ML算法的简化,具体是将步骤8输出的解交织后符号分成几个段,每个段中采用ML译码方法,具体包括如下子步骤:

步骤9.A:接收步骤一中滑窗译码算法的译码参数中的窗长度W,并将步骤8输出的解交织后符号分为n/k段,每一段中包含的符号作为节点信息,并将根节点信息存储为S;

其中,n为步骤8输出的解交织后符号数量;k为每个段中的符号数量;n/k表示n除以k,是整数;

步骤9.B:初始化循环参数s=1,并循环如下子步骤直至s=n/k-W+1;

步骤9.B.1:将根节点信息S赋值给S0

步骤9.B.2:判断S0的深度是否小于W+i-1,如果是,则进行如下工作:循环2k次计算S0的子节点,并将计算出来的子节点存储入S;对S内信息比特进行排序,更新给S0;如果否,即S0的深度大于等于W+i-1,则跳至步骤9.B.3;

步骤9.B.3:将S0对应的反馈节点信息存储入F0

步骤9.B.4:判断F0的深度是否等于n/k-W+1,若不等于,清除S,将F0存储入S;否则若等于,跳至步骤9.C;

步骤9.C;结束译码,输出S中存储的内容未当前帧译码结果,即输出Spinal解码后的信息比特;

步骤10、将步骤9输出的Spinal解码后信息比特经解校验单元进行解校验,输出解校验比特;

其中,解校验方式与步骤2校验单元中相同,为循环冗余校验法,校验长度24位;

步骤11、将步骤10输出的解校验比特与步骤1输入的当前帧待传输的信息比特进行比较和判决,计算得当前帧是否错误以及得出当前帧内的错误比特数;并将当前错误帧累加更新至当前错误帧数;

步骤12、判断当前错误帧数是否达到最大错误帧数,如果未达到,则进一步判断当前帧序号i是否等于帧数,如果不等于则当前帧序号i加1,跳到步骤二;否则若等于帧数,则计算并输出错误统计结果;否则,如果达到最大错误帧数,计算并输出错误统计结果。

表3采用和不采用素数码信道交织的误码率结果

(2000帧,编码码长64)

实施例2

图4为是本发明一种基于素数码交织及脊髓码编码的水下抗干扰传输方法具体实施时采用OFDM调制方式时的系统组成与连接示意图。

水声信道是复杂的时变衰落信道,具有频率利用率低、多径干扰严重等特点,为了使水声通信系统有更好的带宽利用率、提高系统的数据传输速率,并且使系统能够抗多径干扰,于是将正交频分复用(OFDM)技术应用于水下通信的研究。正交频分复用(OFDM)技术通过多载波调制技术,将信道造成的频率选择性衰落转化为平坦衰落,克服多径干扰;又通过增加循环前缀,克服码间干扰(ISI)。

对于待传输的信息,先利用本发明中提及的进行信源交织、校验单元进行校验、spinal码单元,素数交织单元进行编码和信道交织处理;再按照QPSK或BPSK调制原则完成相应星座映射,运用快速傅里叶变换把频域上要映射的序列信息变换到时域上,加入循环前缀的目的是为了消除多径传播造成的符号间干扰。经过水声多径时变衰落信道后接收端进行与发射端相应的逆变换过程解调得到解调符号,再进行解校验单元、spinal码解码单元、素数解交织单元,对接收的信号进行译码处理,最后输出译码后信息比特。

以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号