语音通信是人与人交流的最直接手段。随着人们对海洋资源的开发利用,岸基人员与水下平台、水下潜水员间的实时语音传输变得更为迫切。对于多径严重的水声信道,其可用频带窄,水声通信的信息传输速率往往只有几百比特每秒到几千比特每秒。因此,为了更直接可靠地传递指挥、命令等重要信息,研究实现水下实时数字语音通信机具有重要价值。
本文在已经构建好的LDPC-OFDM水声通信系统的基础上,加入语音压缩算法MELP,在ARM+DSP嵌入式平台上实现了水下实时数字语音通信样机。该样机有别于国内外已实现的OFDM系统通信机,无需PC机参与即可实现人机交互,并且用软件语音压缩算法取代硬件声码器,大大提高了系统的灵活性,降低了开发成本。水池实验表明,该数字语音通信样机设计方案合理可行,并取得了满意的语音通信效果。
1 关键技术
本文设计的水声语音通信系统主要由语音编解码模块、语音压缩解压缩模块、信道纠错编解码模块、OFDM调制解调模块以及模/数转换模块组成。系统框图如图1所示。发送端通过话筒将语音声信号转换为电信号,电信号经由CODEC编码成为数字语音信号,即语音码流。通过语音压缩模块减少语音码流的冗余信息,产生低速码流,压缩后需要经过信道纠错编码,以提高系统传输可靠性。之后将信息码流经过OFDM调制到系统频带上,已调信号加上同步信号成帧后送入发射换能器经过信道发射出去。接收部分将接收到的微弱信号经由低噪放大电路送至A/D转换器变为数字信号,后经发送端的一系列逆过程完成语音信号的还原播放。
本实时数字语音通信系统主要包括OFDM调制解调、信道编码及语音压缩三个关键技术。
1.1 OFDM调制解调技术
OFDM以其频谱利用率高、抗多径干扰与频率选择性衰落能力强以及基于离散傅立叶变换的OFDM有快速算法、OFDM采用IFFT和FFT来实现调制和解调、易用DSP实现[1]等优点而成为水声通信领域的研究热点之一。根据水声信道的特点,构建的基带OFDM通信系统帧格式如图2所示。
帧同步信号与数据之间需有一定的保护间隔,其长度要大于信道的最大时延扩展,以免帧同步信号的多径效应影响数据。系统采用粗、细两级同步。粗同步信号采用DDS(Direct Digital Synthesis)直接数字合成技术产生5个单频信号;细同步信号采用线性调频信号。接收端最先通过捕获电路获得粗同步,然后采用拷贝相关器进行细同步信号的检测,从而保证OFDM系统有准确的定时同步。该系统信息调制采用QPSK映射方式。详见参考文献[2]。
1.2 信道编码
在水声通信中的信道是高噪声、多径干扰严重的环境,为增加信号在信道中传输的可靠性,必须采用纠错编码技术。本系统中采用纠错编码技术有两个目的:一是解决由信道白噪声所产生的随机性差错;二是解决由脉冲干扰所引起的突发性差错。目前,信道纠错编码方案中比较好的两种选择是Turbo码和低密度奇偶校验码LDPC(Low Density Parity Check),理论已经证明利用迭代译码的LDPC码性能接近Shannon限[3],并且具有较好的抗突发噪声的特性。基于以上几点考虑,本系统采用一种新型的水下数据传输纠错编码QC-LDPC(Quasi Cyclic LDPC码,也称准循环LDPC码)。在LDPC译码过程中,使用Normalized BP-based算法,不仅硬件实现简单,而且在效率和性能方面也都具有一定的优势[4]。前期研究表明加入LDPC信道编码的OFDM水声通信系统的误码率可低至10-3以下。这为OFDM水声通信的实时语音传输奠定了良好的基础。
1.3 语音压缩
美国联邦标准MELP2.4(Mixed Excited Linear Prediction 2.4 kb/s)具有出色的语音质量和低速的压缩比特流等优点,并考虑到LDPC-OFDM水声通信系统的传输速率,因此将其应用在本文构建的系统中。该算法中一帧语音长度为22.5 ms,编码后每帧包含54 bit,最后补充2 bit至56 bit以便于字节传输[5]。实验表明,在嵌入式上移植经过优化之后的MELP2.4算法完全可以满足实际的工程需要。该算法对误码率的容忍度是10-3[6],在此容限下保证恢复出来的语音具有良好的可懂度和较好的自然度。而加入LDPC信道编码的OFDM调制系统的信息传输速率大于2.4 kb/s,可以很好地与该语音压缩算法相匹配。
综合上述关键技术,构建了基于LDPC-OFDM技术的水下实时语音数字通信系统,并在Matlab平台上进行仿真研究和水池实验,验证了该水声通信系统方案的可行性。
2 样机实现
2.1 硬件实现
本文构建的实时语音通信系统以ARM+DSP双核处理器为核心搭建而成。DSP采用TMS320DM642处理器芯片,它具有优越的数字信号处理能力,其主频高达600 MHz,最大指令执行速度是4 800 MIPS,主要负责LDPC码的信道编译码、OFDM信号调制解调等工作。嵌入式系统则采用ARM架构的S3C2440芯片,它的主频为400 MHz,主要负责语音采集播放、语音压缩编解码以及其他数据、图像等多媒体数据的采集、控制等工作。图3所示为OFDM水声通信样机的硬件结构框图。其中,CODEC负责音频信号的编解码,摄像头完成图像采集功能,显示屏则实现图像的还原显示和系统的误码统计结果显示等。在硬件接口设计上,ARM处理器S3C2440内置的I2S总线接口直接外接16 bit的立体声CODEC,收、发两端的ARM与DSP之间通过SPI协议实现数据流的高速传输,ARM自带SPI接口,DSP则采用兼容SPI协议的多通道缓冲串口McBSP1,另一个多通道缓冲串口McBSP0用于控制D/A和A/D。
2.2 软件实现
在软件设计上,语音采集、播放部分采用具有阻塞读写功能的ALSA音频编程体系实现对语音帧的准确可靠采集、播放。MELP语音帧逐帧压缩,每87帧封装成一个语音数据帧经由SPI协议传送给DSP完成LDPC信道编码和OFDM调制并进行D/A发送,保证发送端数据流的流水线传输发送。接收端一旦检测到DDS粗同步信号,DSP就启动A/D接收,继而完成OFDM解调和LDPC信道纠错译码,译码后还原的语音数据帧经由SPI协议传送至ARM并进行逐帧解压播放。整个过程不断地循环流水工作。系统按语音数据帧方式传输,以保证收、发两端数据流连续有序地传送。收发ARM、DSP的程序流程如图4~图7所示。
3 水池实验结果
本系统于2012年7月9日在厦门大学水声通信教育部重点实验室水池进行试验。水池布设:长=4.3 m,宽=2.9 m,高=2.0 m;采用柱形换能器完成信号的发射和接收,收发换能器相距3.6 m,其在水池中呈等深度吊放,离水面1.0 m。
图8上部分所示为发送信号波形,下部分为经过信道传输后的接收信号在低信噪比下恢复的语音信号时域波形图。从图上可以看出,接收信号具有较低的信噪比,受水池四壁反射的影响,信道多径干扰严重。对比收发信号可知,接收信号呈现频率选择性衰落,有用信号基本上淹没在噪声中,经过信道纠错译码后可实现无误码传输。通过实时通话试听测试结果表明,该系统有良好的实时性和语音恢复性能,并且能分辨出不同说话人的声音。
设计并实现了基于OFDM的水下实时数字语音通信系统,系统的数据传输速率可达2.4 kb/s。通过水池试验,测试了该系统语音通信的实时性和语音可懂度性能,实时语音通信效果理想,达到了预期的目标。今后将通过海试进一步测试验证该系统的性能。