《电子技术应用》
您所在的位置:首页 > 测试测量 > 设计应用 > 基于水声信道状态的自适应差错控制
基于水声信道状态的自适应差错控制
2016年微型机与应用第17期
张凯,姜胜明,杨恺健
上海海事大学 信息工程学院,上海 201306
摘要: 水声信道具有时变、环境噪声高、传播时延大、信道带宽窄等特点,以致水声通信的可靠性不高(接收数据发生错误)。目前的解决办法主要有自动请求重传和前向纠错,但是这两种方式均不能在所有信道状态下保持较高的接收吞吐量。提出了一种自适应差错控择方法,其中包括一种利用信道误码率计算吞吐量的方法,并且采用自适应线性预测方法预测信道误码率,根据信道误码率选择合适的差错控制方式。仿真结果表明,采用该选择方法能够在所有的信道状态下保持较高的接收端吞吐量,提高水声通信的性能。
Abstract:
Key words :

  张凯,姜胜明,杨恺健

  (上海海事大学 信息工程学院,上海 201306)

       摘要:水声信道具有时变、环境噪声高、传播时延大、信道带宽窄等特点,以致水声通信的可靠性不高(接收数据发生错误)。目前的解决办法主要有自动请求重传前向纠错,但是这两种方式均不能在所有信道状态下保持较高的接收吞吐量。提出了一种自适应差错控择方法,其中包括一种利用信道误码率计算吞吐量的方法,并且采用自适应线性预测方法预测信道误码率,根据信道误码率选择合适的差错控制方式。仿真结果表明,采用该选择方法能够在所有的信道状态下保持较高的接收端吞吐量,提高水声通信的性能。

  关键词:自动请求重传;前向纠错;吞吐量;误码率;自适应线性预测

0引言

  水声通信广泛应用于军事、石油工业、环境污染和海洋资源探索等领域。但是,在水声通信网络中声音的传播速度只有1 500 m/s,因此对于水声通信网络的物理层以及数据链路层的实现比较困难[1]。另外,水声信道又是当今最为复杂的无线通信信道之一,其本身所具有的随机的时空频变,以及窄带宽、多径传播、多普勒效应、环境噪声高、传播延时大等特征,使得水声通信信道的稳定性差,通信的质量面临巨大挑战[2]。

  目前该领域众多研究人员提出了很多差错控制的解决方案,这些方案在一定程度上缓解了水声通信因为恶劣环境所造成的通信中传播的数据发生错误而影响通信质量的问题,但是这些差错控制方案也存在其本身的限制,这严重影响了其实际使用。

1差错控制相关介绍

  目前,差错控制的解决方法包括自动请求重传(ARQ)、前向纠错(FEC)以及混合纠错(HEC),下面简要介绍这几种解决方法。

  1.1自动请求重传(ARQ)

  自动请求重传的基本原理是在发送端将待发送的信息码元加入冗余校验码,经过调制后再通过信道发送给接收端,待接收端接收到码元之后解调,对接收到的码元按照与发送端一致的编码方式进行差错校验,检测码元是否有错误。如果有错误,就向发送端发送信息,让发送端重新发送出错的数据;如果没有错误,就向发送端发送确认信息[3]。ARQ编码有奇偶校验、循环冗余校验等。

  当信道环境恶劣时,水声信道传播延时大,环境噪声高,数据在传播时发生错误,需要多次重传发生错误的数据,接收端接收到的有效数据就相对比较少,造成接收端的有效吞吐量低。

  1.2前向纠错(FEC)

  前向纠错的基本方法是发送端在向接收端发送数据之前,先对数据包进行纠错编码,之后才经过调制并发送到接收端,接收端接收到数据包之后,对数据包进行错误检测和纠正,之后再向发送端反馈接收信息[4]。FEC编码有线性循环码、RS码、BCH码、Turbo码、LDPC码等[5]。

  前向纠错的差错控制方式为了增强检错和纠错功能,在进行纠错编码时加入更多的冗余码,而使得接收端在单位时间里接收到的有效数据较少。

  1.3混合纠错(HEC)

  混合纠错的基本原理是对发送数据包先进行ARQ编码,然后再对编码后的码元进行FEC编码,在接收端接收到数据包之后,先进行FEC检错并纠错,再对去除了纠错冗余的码元进行ARQ错误检测,如果发现错误在纠错范围内,就进行纠错,并向发送端反馈确认成功接收信息;如果在纠错能力范围之外,则向发送端反馈信息,让发送端重传出错数据包[6]。

  这种差错控制方式虽然同时具有了自动请求重传和前向纠错两种差错控制方式的功能,提高了通信的可靠性,但是增加了实际实现的复杂度,加入了更多的冗余,同时其纠错能力比单独应用前向纠错的纠错能力弱,检错能力比单独使用自动请求重传的检错能力弱[7]。

  总之,上述三种差错控制方式只是从单方面入手解决问题,虽然提高了通信的可靠性,但是不能在所有的信道状态下保持较高的吞吐量。

2自适应差错控制方法

  该差错控制选择方法首先分析了信道误码率与接收端的有效吞吐量之间的关系,然后提出了一种利用信道误码率计算吞吐量的公式,同时,采用自适应线性预测方法预测信道误码率,最后利用误码率计算吞吐量,根据吞吐量最大原则来选择差错控制方式。

  2.1吞吐量的计算方法

  因为每个数据包在接收端被正确接收的方式和过程都是相同的,所以文中吞吐量定义为单个数据包的信息比特数与被正确接收概率的乘积再比上其被正确接收所用的时间。

  由此可分别推出,ARQ的接收端的吞吐量计算公式为:

  QQ图片20161007221919.png

  其中,P表示数据包错误率,S表示每一个经过编码后的数据包的比特数目,R′表示ARQ编码的编码效率,t表示编码后数据包在信道中的传播延时,T表示经过ARQ编码后数据包的平均重传次数。

  FEC的接收端的吞吐量公式为:

  QQ图片20161007221924.png

  其中,P表示数据包错误率, S表示每一个经过编码后的数据包的比特数目,R″表示FEC编码的编码效率, t表示编码后的数据包在信道中的传播延时。

  数据包的错误率计算公式,即每一个经过编码后的数据包的错误率为:

  QQ图片20161007221928.png

  其中,Pe表示信道误码率。

  由于采用不同的重传方式,经过ARQ编码后的数据包的平均重传次数(包括第一次发送和重传)也不同,而水声通信一般所采用的重传方式为选择重传,其平均重传次数为[7](设定最大的重传次数为Tmax):

   QQ图片20161007221931.png

  上式中,T为传播次数。

  2.2信道误码率的自适应线性预测方法

  文中利用误码率来体现信道状态,采用线性预测方式来预测当前信道的误码率,假设已知第n次传输数据的前p次数据传输的信道误码率分别为x(n-p),x(n-p+1),…,x(n-1),通过前p次数据传输的误码率来线性预测第n次传输数据的误码率x(n),预测值为:

  QQ图片20161007221936.png

  其线性预测误差为:

   QQ图片20161007221940.png

  因此,其均方误差为:

   QQ图片20161007221945.png

  则均方误差的期望为:

   QQ图片20161007221949.png

  如果令其均方误差最小,则有:

 QQ图片20161007221952.png

  将QQ图片20161007222756.png代入上式可得:

    QQ图片20161007221956.png

  那么,可以令:

    QQ图片20161007222001.png

  其中,i=1,2,3,…,p;

  令E为最小均方误差,则有:

     QQ图片20161007222006.png

  同上可有:

    QQ图片20161007222009.png

  因此,可根据式(11)和式(13)得出最小均方误差E和最优ap(k)的值。

  2.3本文所提出的选择方法

  当两种差错控制方式的吞吐量相等时,误码率为Pe0(设定最大的重传次数为Tmax=3):

      QQ图片20161007222013.png

  若信道的当前状况已知,则误码率和传播延时都已知,且在两种差错控制方式中分别相等,则:

  (1)当信道误码率大于Pe0时,选择的差错控制方式为自动请求重传(ARQ);

  (2)当信道误码率小于等于Pe0时,选择的差错控制方式为前向纠错(FEC)。

3实验仿真与分析

  文中通过MATLAB/Simulink进行了仿真实验,获取仿真数据并对其进行了分析,文中所有实验的传播时延均采用t1=0.01 s,仿真时间为t2=10 s。首先,对误码率的线性预测性能进行验证。因为信道的时变其根本是信噪比的变化,所以可以利用信噪比的变化来表示信道时变特性。图1给出了通过仿真得到的信噪比与实际误码率和预测误码率的关系。

图像 001.png

  图1说明文中提出的误码率预测方法能很好地反映在时变信道中信噪比与误码率的关系,同时证明了文中提出的误码率预测方法较准确、可行。

  再次,利用MATLAB/Simulink搭建仿真模型,仿真误码率与吞吐量之间的关系,如图2所示。本文采用两种不同的编码效率进行仿真,(a)中的编码效率为:CRC(127,111),BCH(127,64);(b)中的编码效率为:CRC(127,95),BCH(127,85)。

图像 002.png

  理论吞吐量指的是由本文中提出的吞吐量计算公式得到的吞吐量值,通过仿真与理论结果进行比较分析得出,ARQ和FEC这两种差错控制方式的仿真和理论吞吐量分别在某个特定误码率值时相等。并且可以看出,ARQ和FEC的仿真吞吐量的交点和理论吞吐量的交点的横坐标即误码率的值分别为P0和P1,这两个值比较接近。观察图2(a)和(b),可得到在信道的误码率大于P0和P1时,自动请求重传的吞吐量比前向纠错的吞吐量高,反之,在小于时自动请求重传的吞吐量比前向纠错的吞吐量低。

  由图2(a)和(b)分析得出,当改变编码效率时,自动请求重传和前向纠错的吞吐量大小关系进行交换时的误码率的值也会改变,此时,由于前文提出的吞吐量计算公式以及所提到的数据包错误率、平均重传次数都与误码率有关,所以当误码率减小时,吞吐量增加、数据包错误率减小、平均重传次数减小。

  然后,分别单独使用ARQ和FEC这两种差错控制方式进行了仿真,得到了它们的误码率与吞吐量的关系,也对采用了本文提出的差错控制方式选择方法进行了仿真,得到误码率与接收端吞吐量的关系,仿真结果如图3。

  图3仿真结果表明,设ARQ与FEC吞吐量交点处误码率为P,采用了文中提出的差错控制方式选择方法的接收端吞吐量为TP0,ARQ的接收端吞吐量为TP1,FEC的接收端吞吐量为TP2,则误码率小于P时,TP0>TP1且与TP2重合;误码率大于P时,TP0>TP2且与TP1重合。

  综上所述,当误码率小于等于P时,选择用FEC,而大于P时选择用ARQ,从而提高整个水声通信系统的接收端的有效吞吐量。

4结论

  本文分析了信道的误码率与接收端有效吞吐量之间的关系,提出一种差错控制方式的选择方法。该方法根据当前信道误码率选择使用合适的差错控制方式,仿真结果证明接收端有效吞吐量得到了提高。文中也提出了一种自适应线性预测信道误码率的方法,该方法根据历史的信道误码率利用前向线性预测方法来预测当前信道的误码率,仿真结果证明该预测方法较准确、可行。

图像 003.png

  

  参考文献

  [1] TALAVAGE J L, THIEL T E, BRADY D. An efficient storeandforward protocol for a shallowwater coustic local area network[J]. IEEE, 1994,1:883888.

  [2] Cao Rui, Yang Liuqing. Reliable relayaided underwater acoustic communications with Hybrid DLT codes[C]. Proceedings of Military Communications Conference, 2011,8069(5):412417.

  [3] 黄忠虎,沈连丰,李文峰,等. 时变信道中自适应VRHARQ研究[J]. 电子学报, 2006, 34(4):690694.

  [4] 张辉. IEEE802.16m中的HARQ技术研究[D].成都: 电子科技大学,2012.

  [5]CASARI P, HARRIS A F. Energyefficient reliable broadcast in underwater acoustic networks[C]. Workshop on Underwater Networks,2007(7):4956.

  [6] Zhuang Haojie, TAN H P, VALERA A, et al. Opportunistic ARQ with bidirectional overhearing for reliable multihop underwater networking[C]. In IEEE OCEANS, 2010: 510.

  [7] 杨谨滔. 802.16m系统MAC层中的ARQ机制研究[D].成都:电子科技大学, 2012.


此内容为AET网站原创,未经授权禁止转载。