李 亮 王永斌 周思同
(1.海军工程大学电子工程学院 武汉 430033)(2.91404部队 秦皇岛 066000)
在水下通信领域,由于物理场的限制,以声波作为载体的水声通信方案是解决水下远距离信息传输的唯一方法[1]。普通换能器声源要达到远距离通信,体积非常庞大,不利于水下通信的机动性。脉冲声源具有瞬间发射功率大、发射脉冲窄、峰值能量大、频带范围宽等优点,可大大提高系统接收信噪比性能,从而实现100km以上的超远程水下通信。脉冲声源的声信号具有幅度、频率和相位无法准确实时调制的特点,传统的调幅、调频、调相等调制方式都不适用于信号的通信调制。目前的研究认为可采用脉冲位置调制(Pulse Position Modulation,PPM)来提高声源的信息携带能力。脉冲位置调制(PPM)是一种正交调制方式,它具有更高功率利用率和频带利用率。本文根据水下通信系统的要求及PPM的基本原理,对脉冲声源PPM调制进行了设计,并用VHDL语言在QuartusⅡ软件上完成了仿真。
根据脉冲形式,脉冲位置调制主要有三种调制形式:单脉冲位置调制(L-PPM)、多脉冲位置调制(M-PPM)、差 分 脉 冲 位 置 调 制 (L-DPPM)[7]。选择单脉冲位置调制作为系统PPM的实现形式。L-PPM是将一个n位的二进制数据组映射为由2n个时隙组成的时间段上的某一个时隙的单个脉冲信号。则一个m位调制信号传输的信息比特为log2m。
PPM系统模型如图1所示,系统主要由调制系统和解调系统两部分组成。在调制系统中,采用查找ROM表的方法生成窄脉冲信号;在解调系统中,主要由整形电路、脉冲位置检测和译码电路组成[2]。
图1 PPM系统模型
设计一个4-PPM调制的系统,设数据为M,时隙位置为l,若M=(00),则l=0;若M=(01),则l=1;若M=(10),则l=2;若M=(11),则l=3。分别对应的时隙位置如图2所示[7]。
图2 4-PPM脉冲位置
PPM调制过程本质上就是一个计数过程[3]。当输入一组数据时,程序计算数据中的数值,在相对应的时隙位置输出一个高脉冲,其他位置保持不变,从而保证了输出脉冲与输入数据相对应。
PPM调制是基于VHDL语言在FPGA上实现的。在FPGA中可通过ROM创建各种查找表,从而简化电路设计,提高电路的处理速度和稳定度。ROM是一个地址对应一个数据。系统设计采用4-PPM调制,将一帧数据周期分成20等份,每份记为x。我们可以把高电平位置编码为“1”,低电平位置编码为“0”,通过数字来表示脉冲的位置关系。如图3所示。
图3 01数据脉冲位置编码
通过脉冲位置数字编码可设计一个ROM查找表[4,8],表中含有20位数据,每一位数据对应一个x。当输入数据时,对应的时隙位置会输出一个高脉冲,则在ROM查找表中对应的数据为“1”,其他位数据为“0”。创建四个代表不同脉冲位置的ROM(如表1所示)。
表1 查找表数据
当给定时钟信号上升沿来临并且时钟为“1”时,输出ROM查找表中第a位地址的数据。由于ROM查找表中的数据与地址一一对,当下一个时钟上升沿来临时,查找表地址加1,相应的输出保存在第a+1位地址的一位数据。当时钟输入设定与帧周期对应是,正好能输出完整的查找表中数据,即输出完整的调制信号。当输入数据不同时,经过比较判决,如果输入“00”,则输出ROM0中数据信息;当输入“01”,则输出ROM1中数据信息;输入“10”,则输出 ROM2中数据信息;输入“11”,则输出ROM3中数据信息,对应相应的时隙脉冲位置调制。具体实现如图4所示。
PPM的解调过程既是调制的逆过程,也是计数过程。输入的数据都是由“0”或“1”组成,当输入数据为连续“1”或连续为“0”时,输出的PPM调制信号的间隔为4个时钟周期,;当输入由“0”变为“1”时,PPM调制信号的间隔即为五个时钟周期;当输入数据有“1”变为“0”时,PPM调制信号的间隔变为1个时钟周期。根据上述特点我们可以根据PPM信号的间距来判断数据信息的变化,并根据这一特点完成对调制信号的解调。具体实现如图5所示。
图4 ROM实现原理图
图5 PPM解调实现原理图
在解调中,整形电路对接收的PPM信号进行整形。脉冲位置检测电路分为最长脉冲位置检测和最短脉冲位置检测两种。最长脉冲位置检测电路主要功能是当计数器的计数值为五时,即数据信号从“0”变为“1”,PPM 间隔为五个时钟周期时,把信号的位置检测出来。最短脉冲位置检测电路主要是将原PPM脉冲序列延迟两个时钟周期,数据由“1”变为“0”的PPM间隔为1个时钟周期,这样延迟后的序列与PPM信号间隔1个周期的第二个脉冲对齐,其它脉冲错位,这样就能将最短脉冲信号即间隔为一个时钟周期的PPM信号的位置检测出来。由于检测出来的只是数据的变化情况,最后将最短脉冲位置与最长脉冲位置相加,经过译码电路后就可得到原始的输入数据。
QuartusⅡ是Altera公司推出的新一代开发软件,支持原理图、VHDL等多种设计输入形式[5,10],整个系统在 QuartusⅡ9.0平台上进行仿真。
图6为用ROM进行PPM调制的时序仿真图。CLK为时钟信号,时钟信号周期设定为0.5 ms,对应查找表中的一位数据信息。仿真时间设定为10ms,与帧周期相同,方便观察PPM调制的时隙位置。datain为数据输入,output为数据输出。以输入数据“01”为例。可以看到,根据设计要求,高电平脉冲由连续的五个“1”表示,并且五个“1”出现在帧周期中第二个时隙位置。
图6 ROM时序仿真图
图7 PPM系统仿真图
PPM调制解调系统的时序仿真如图7所示。在图中可以看到,输入数据DATA_IN与输出数据DATAOUT完全相同,只是存在一定时延。造成时延的一方面由于硬件的原因;另一方面,在PPM调制时,需要在串并转换完成后在读取ROM表,输出PPM信号,而解调是在输出PPM后进行的,所以存在时延,但是在现实系统中是不存在的[6]。“delay”信号就是最短脉冲位置检测的延时信号,可以看到它的脉冲只与PPM信号的第二个短脉冲位置对齐。“Long”信号为最长脉冲位置检测,可以看到当数据由“0”变“1”时,有脉冲产生;“Short”信号为最短脉冲位置检测,当数据由“1”变“0”时,有脉冲产生。“Add”信号为“Long”和“Short”的相加信号。通过仿真分析,调制解调系统设计是正确的。
PPM调制解调设计在QuartusⅡ平台上进行了时序仿真,从仿真的结果中可以看出整个设计达到了预期的效果,能够高效稳定的实现脉冲位置调制解调。但是这对于水下声脉冲通信的实现还只是开始,水声信道复杂多变,存在严重的多途效应和噪声干扰[1],PPM 解调同步[9]问题十分关键,所以今后还要在同步技术和抗干扰方面加以研究。
[1]惠俊英,生雪莉.水下声信道[M].哈尔滨:哈尔滨工程大学出版社,2011:11-13.
[2]段吉海,黄智伟.基于CPLD/FPGA的数字通信系统建模与设计[M].北京:电子工业出版社,2004:184-191.
[3]汪井源,张正线.无线光通信中的PPM调制[J].电讯技术,2000,40(5):81-84.
[4]潘松,黄继业.EDA技术与VHDL[M].北京:清华大学出版社,2009:77-80.
[5]任爱峰,等.基于FPGA的嵌入式系统设计[M].西安:西安电子科技大学出版社,2004:101-109.
[6]何攀,李晓毅,侯倩,等.基于FPGA的PPM调制解调系统设计[J].现代电子技术,2010,320(9):52-54.
[7]魏丽英.空间激光通信系统PPM调制技术的研究[D].长春:长春理工大学硕士论文,2007:23-25.
[8]李素梅.基于FPGA的ROM设计问题[J].信息技术,2010(3):87-89.
[9]LING G,GAGLIARDI R M.Slot synchronization in optical PPM communication[J].IEEE Trans.on Communications,2005,Com-34(12):213-216.
[10]李一兵,雷洪玉,殷潜.基于CPLD的PPM调制与解调系统设计[J].哈尔滨理工大学学报,2008,13(6):94-97.