一种基于水声语音通信Turbo码译码分段迭代停止方法与流程

文档序号:23474082发布日期:2020-12-29 13:25阅读:66来源:国知局
一种基于水声语音通信Turbo码译码分段迭代停止方法与流程

本发明涉及一种基于水声语音通信turbo码译码分段迭代停止方法,属于水声通信技术领域。



背景技术:

近年来,随着水声通信技术的发展,数字式水声语音通信广泛应用于军事和民用领域。turbo码作为一种趋近于香农限的拥有良好性能的纠错编码,广泛应用于水声通信的信道编码中。在水声信道中,由于存在海洋环境噪声,传播衰减,多径扩展等因素,导致系统的信噪比的不稳定性。传统的turbo码的迭代停止一般基于带译码次数上限的各种迭代停止准则或者固定的迭代次数。迭代停止准则基于信号迭代译码收敛的前提,根据系统的交叉熵等参数结合设定门限进行判定。具有稳定的性能和自适应的迭代次数。但由于水声信道信噪比的不稳定性,在低信噪比下,使用迭代停止准则会出现迭代译码收敛慢甚至不收敛的情况,对于水声通信系统,迭代译码收敛过慢会导致系统迭代次数过多难于进行应用,不收敛的迭代译码会因为永远无法通过达到预定性能导致系统陷入死循环。对于固定次数的迭代译码,如果迭代次数选取较大在高信噪比和低信噪比时无法提升系统性能且会浪费迭代译码时间,而如果次数选取较低会使性能较差,达不到预期性能,因此需要结合迭代停止准则和固定次数迭代译码各自的优点,设计一种针对水声语音通信的turbo码分段译码准则,确保系统在能达到预期性能的前提下,尽可能少的迭代译码次数以减少译码时间。snr为系统的信噪比,即系统的信号平均功率与噪声平均功率比值的对数形式,s表示信号平均功率,n表示噪声的平均功率,则snr=10lg(s/n)。sdr准则为turbo码的迭代停止准则中的一种,利用在译码收敛的前提下,信号的外部信息符号和先验信息符号的硬判决应保持一致。设dm(i)表示第i次迭代中外部信息的硬判决结果和先验信息的硬判决结果符号不同的个数,q为门限值,n为帧长,则sdr准则为,当满足式下式时,

dm(i)≤qn

停止迭代译码,否则继续迭代译码。



技术实现要素:

本发明的目的是提出一种基于水声语音通信turbo码译码分段迭代停止方法,以解决现有技术存在的问题。

一种基于水声语音通信turbo码译码分段迭代停止方法,所述译码分段迭代停止方法包括以下步骤:

s100、首先估计系统的snr,依据不同的信噪比设置不同的迭代停止准则;

s200、判断是否snr<0db,若是,则舍弃本次结果,要求发送端重传,并结束迭代;否则,执行s300;

s300、判断是否0≤snr≤1db,若是,则采用改进的sdr准则;否则,执行s400;

s400、判断是否1<snr<2.5db,若是,则采用最大迭代次数为18次的sdr准则;

s500、判断是否snr≥2.5db,若是,则采用分段固定迭代译码准则。

进一步的,在s300中,所述sdr准则为:设d2(i),表示第i次迭代后,外部信息和先验信息之间不同的符号次数,定义改进sdr函数辅助判决函数:

g(i)=|d2(i)-d2(i-1)|。

进一步的,改进的sdr准则步骤为:

s310、初始化最大迭代次数;

s320、检测是否达到最大迭代次数,如果达到,则停止译码;否则,执行s330;

s330、判断迭代次数是否大于等于2,若大于等于2,则执行s340,若迭代次数小于2,则执行s350;

s340、计算g(i)与0.003*n,其中n为帧长,当g(i)<0.003*n时,停止迭代;当g(i)≥0.003*n时,执行s350;

s350运用sdr准则进行判决,sdr准则的q值取0.01。

进一步的,在s400中,sdr准则的q值取0.01。

进一步的,在s500中,采用分段固定迭代译码准则,其中迭代次数如下:

本发明的主要优点是:本发明的一种基于水声语音通信turbo码译码分段迭代停止方法,与sdr准则相比在保证性能的前提下拥有更低的迭代次数。与固定迭代次数相比,在低信噪比具有更好的性能,高信噪比在保证性能的前提下降低迭代次数减少译码时间。

附图说明

图1为不同信噪比的dm(i);

图2为改进sdr准则与sdr准则误码率性能对比;

图3为改进sdr准则与sdr准则迭代次数对比;

图4为不同q值改进sdr准则误码率对比;

图5为不同q值改进sdr准则迭代次数对比;

图6为不同q值sdr准则迭代次数对比;

图7为不同q值sdr准则迭代次数对比;

图8为系统固定次数迭代的误码率对比;

图9为系统不迭代的误码率;

图10为专利算法与其他算法误码率对比;

图11为专利算法与其他算法迭代次数对比;

图12为本发明的一种基于水声语音通信turbo码译码分段迭代停止方法的流程图。

具体实施方式

下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提出了一种基于水声语音通信turbo码译码分段迭代停止方法,所述译码分段迭代停止方法包括以下步骤:

s100、首先估计系统的snr,依据不同的信噪比设置不同的迭代停止准则;

s200、判断是否snr<0db,若是,则舍弃本次结果,要求发送端重传,并结束迭代;否则,执行s300;

s300、判断是否0≤snr≤1db,若是,则采用改进的sdr准则;否则,执行s400;

s400、判断是否1<snr<2.5db,若是,则采用最大迭代次数为18次的sdr准则;

s500、判断是否snr≥2.5db,若是,则采用分段固定迭代译码准则。

在s300中,所述sdr准则为:设d2(i),表示第i次迭代后,外部信息和先验信息之间不同的符号次数,定义改进sdr函数辅助判决函数:

g(i)=|d2(i)-d2(i-1)|。

改进的sdr准则步骤为:

s310、初始化最大迭代次数;

s320、检测是否达到最大迭代次数,如果达到,则停止译码;否则,执行s330;

s330、判断迭代次数是否大于等于2,若大于等于2,则执行s340,若迭代次数小于2,则执行s350;

s340、计算g(i)与0.003*n,其中n为帧长,当g(i)<0.003*n时,停止迭代;当g(i)≥0.003*n时,执行s350;

s350运用sdr准则进行判决,sdr准则的q值取0.01。

在s400中,sdr准则的q值取0.01。

在s500中,采用分段固定迭代译码准则,其中迭代次数如下:

下面提出一具体实施例:

本发明的目的在于提供一种针对水声语音通信turbo译码通信系统的迭代停止准则。相比于传统的停止准则,在水声语音通信的环境下,在能够保持语音通信质量的前提下降低译码迭代次数以降低译码时间。

本实施例包括如下步骤

步骤一:首先根据误码率对语音通信的影响,将系统划分为两个部分。对于语音通信,经过多次测试后,误码率在10-4以上时语音信号的通信质量随着误码率降低有明显的提高,误码率在10-4以下时增加语音信号的通信质量随着误码率降低无明显变化。

步骤二:根据误码率对语音通信的影响,确定每个区间的迭代准则。当语音通信的误码率在10-4以上时,需要综合考虑迭代次数以及通信质量,在保证通信质量的前提下尽量降低迭代次数,当误码率在10-4以下时,尽量降低迭代次数以降低系统的运算负担。

步骤三:根据迭代准则选择每个分段的迭代方法,当语音通信的误码率在10-4以上时,要在保证系统通信质量的前提下降低迭代次数,应当使用迭代停止准则,常用的迭代停止准则有ce准则,scr准则,sdr准则等,ce准则由于算法复杂度较高以及存储占用较大,在实际中应用较少,sdr准则相比于scr准则占有更少存储空间,因此本专利采用sdr准则。针对迭代译码准则存在的问题,为防止在低信噪比迭代收敛过慢和不收敛,在snr≤1db对sdr准则进行改进。在snr≥2.5db采用分段固定次数迭代译码在保证通信质量的前提下获得更少的迭代次数。

步骤四:

对sdr准则进行改进,dm(i)表示第i次迭代中外部信息的硬判决结果和先验信息的硬判决结果符号不同的个数,sdr准则在低信噪比下迭代次数较高的原因是在低信噪比存在大量的码的dm(i)不会收敛到门限以内,如附图1所示。

参照附图1,dm(i)不收敛到门限内的码大部分会收敛到较高的值,小部分会在某个范围内波动,并且随着信噪比降低,dm(i)不收敛到门限内概率提高。对于dm(i)收敛到较高值的码,此时进行迭代无法改善其性能,并且浪费计算量。因此为了改善低信噪比的译码情况,引入辅助判决系统,以|dm(i)-dm(i-1)|为辅助判定条件,当dm(i)收敛时提前停止迭代以减少判决次数。设d2(i)表示第i次迭代后,分量译码器2的外部信息和先验信息之间不同的符号次数,定义改进sdr函数辅助判决函数:

g(i)=|d2(i)-d2(i-1)|

改进的sdr准则步骤为:

(1)初始化最大迭代次数;

(2)检测是否达到最大迭代次数,如果达到,则停止译码,否则继续步骤(3);

(3)判断迭代次数是否大于等于2,如大于等于2,计算g(i)与0.003*n,其中n为帧长,当g(i)<0.003*n时,停止迭代,当g(i)≥0.003*n时,跳到步骤(4)。如果迭代次数小于2,直接跳到步骤(4);

(4)运用sdr准则进行判决。

对改进后的判决准则和sdr准则进行对比测试,取q=0.005仿真参数如表1,得到误码率性能对比如附图2,迭代次数对比如附图3所示。

由附图3,改进的sdr准则相比sdr准则极大的减少了低信噪比下的迭代次数。但由于采用辅助判决会提前结束译码,系统的性能会有一定的损失。但由附图2仿真结果,当snr≤1db时,此损失非常小。因此可以在snr≤1db时采用改进的sdr译码准则,在性能几乎没有损失的情况下可以节约大量译码时间。

步骤五:

对每个信噪比区间选择的迭代方法的不同参数进行仿真,得出迭代准则。首先对不同q值的改进的sdr准则进行仿真,得到的误码率性能对比如附图4所示,得到的迭代次数对比结果如附图5所示。由附图4,在snr≤1db时,不同门限准则性能几乎没有差别。选择迭代次数较低迭代准则q取0.01。

对最大迭代次数为18次的sdr准则性能进行仿真性能对比如附图6所示,迭代次数对比如附图7所示。turbo码迭代次数随q值提高下降,并且随snr上升而下降。当1db<snr≤2db时,q=0.01的sdr准则具有更好的误码率性能和更少的迭代次数。当snr在2db<snr<2.5db时,由于误码率降低到10-4以下,此时只需要尽量降低迭代次数,因此选择q=0.01的sdr准则。因此当1db<snr<2.5db时,采用q=0.01的sdr准则。当snr≥2.5db时,误码率已经满足小于10-4,此时采用固定次数分段迭代译码可以降低迭代次数。

对固定次数迭代译码进行仿真,可以得到如附图8附图9所示的性能曲线。对于分段固定次数迭代译码,只需要保证误码率性能达到10-4以下,选择迭代次数较少迭代方法的即可。因此根据附图8,附图9,当2.5≤snr≤3时,采用3次迭代译码。当3<snr≤5时,采用2次迭代译码。当snr>5时,不进行迭代直接译码,即迭代次数为1。最终可以得到分段固定次数迭代译码的迭代次数如下。

综上所述,可以得到最终的迭代停止准则为:

1.当snr在0≤snr≤1db时,采用改进的sdr准则,改进的sdr准则如下:

设d2(i)表示第i次迭代后,分量译码器2的外部信息和先验信息之间不同的符号次数,定义改进sdr函数辅助判决函数

g(i)=|d2(i)-d2(i-1)|

改进的sdr准则步骤为:

(1)初始化最大迭代次数;

(2)检测是否达到最大迭代次数,如果达到,则停止译码,否则继续步骤(3);

(3)判断迭代次数是否大于等于2,如大于等于2,计算g(i)与0.003*n,其中n为帧长,当g(i)<0.003*n时,停止迭代,当g(i)≥0.003*n时,跳到步骤(4)。如果迭代次数小于2,直接跳到步骤(4);

(4)运用sdr准则进行判决,sdr准则的q值取0.01。

2.当snr在1<snr<2.5db时,采用最大迭代次数为18次的sdr准则,其中sdr准则的q值取0.01

3.当snr在snr≥2.5db时,采用分段固定迭代译码准则,其中迭代次数如下:

对专利算法性能进行仿真,得到误码率性能如附图10所示,迭代次数如附图11所示。

对专利算法与传统的sdr准则和固定次数迭代进行对比仿真,得到误码率性能如附图9所示,迭代次数如附图10所示。由仿真可知,专利算法与sdr准则相比在保证性能的前提下拥有更低的迭代次数。与固定迭代次数相比,在低信噪比具有更好的性能,高信噪比在保证性能的前提下降低迭代次数减少译码时间。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1