当前位置:文档之家› 基于FPGA的水下传感节点QPSK调制解调模块设计与实现

基于FPGA的水下传感节点QPSK调制解调模块设计与实现

1

引言(Introduction)

水下无线传感器网络(UWSN )在海洋数据采集、水环境监测、海洋勘探、灾难预测、导航等方面将得到广泛的应用[1,2]. 水下无线传感器网络是无线传感器网络在水下的应用,由于水下环境与陆地环境的差异,使得适用于陆地环境的无线传感器网络的应用不一定就可以应用于水下环境。

在水下环境,电磁波传播衰减的很快,通信距离短。虽然频率在30~300Hz 的长波可以传播较远距离,但要将这一频段电磁波的发射出去需要极高的发射能量和庞大的发射天线,使得电磁波在水下的应用方面大受限制。在水下环境,能实现长距离通信的只有声波。低频率声波(200Hz 以下)在海水中都能传输几百公里,即使20KHz 的声波在水中传输衰减也只有2~3dB/Km,所以,声波为水下传输数据提供了较好的解决方案[3]。

现代的数字水声通信系统多使用频移键控(FSK )或相移键控(PSK )调制方式。频移键控是利用数字基带信号控制不同频率的单频载波来实现信息传递,在接收端用窄带滤波器对各个单频信号进行能量检

*此项工作得到国家自然科学基金资助, 项目批准号:60635010, 60725309.

测并判决。这种非相关检测方法对水声信道的时间和频率扩展有很强的适应能力,因此,FSK 系统在水声通信中得到了广泛的应用。从90年代至今,带宽利用率较高的相位相干系统日趋成熟,这就使得相移键控调制方式逐渐在水声通信中占了主导地位。相位相干调制能够提供高数据率通信,而且带宽利用率高[4]。在密集型水下传感器网络应用中,在保证传感器节点性能要求的同时还要考虑到节点的制作成本。为了提高通信速率,降低传感器节点成本,并结合水声通信的特点,本文设计了一种基于FPGA 的水下QPSK 调制解调模块。

本文结构如下:第2部分主要介绍了所设计的调制解调模块的整体结构;第3部分为调制子模块的设计;第4部分为解调子模块的设计;第5部分给出了整个调制解调模块的具体实现;最后给出了本文的结论。

2

水声通讯模块整体结构(The Overall Structure of Underwater Acoustic Communication Mod ule)

水下QPSK 调制解调模块整体结构如图1所示,串行接口提供了调制解调模块与外部CPU (单片机)的连接协议;FPGA 部分实现QPSK 调制解调功能;剩余部

基于FPGA 的水下传感节点QPSK 调制解调模块设计与实现*

刘旺锋,王硕

中国科学院自动化研究所复杂系统与智能科学实验室, 北京 100190

E-mail: wangfeng.liu@https://www.doczj.com/doc/83967527.html, shuo.wang@https://www.doczj.com/doc/83967527.html,

摘 要: 低成本、高性能的水下传感节点对于密集型水下无线传感器网络的研究具有重要意义。而低成本的水声通讯模块则是水下传感节点的重要组成部分。本文提出了一种利用窗口掩码实现QPSK 解调的方法,并设计了一种基于FPGA 的QPSK 调制解调水声通讯模块。水声通讯模块采用了基于ALTERA 公司的QUARTUS II 开发系统,并在Cyclone II 系列芯片上实现。仿真及实验表明所提设计解调方法是可行的,开发的通讯模块可完成信号的调制和解调。 关键词: QPSK ,FPGA ,调制,解调,水下无线传感器网络

Design and Realization of a QPSK Modem Module Based on FPGA for

Underwater Sensor Node *

LIU Wangfeng, WANG Shuo

Lab. Of Complex Systems and Intelligence Sciences, Institute of Automation, Chinese Academy of Sciences, Beijing 100190, P.R.China

E-mail: wangfeng.liu@https://www.doczj.com/doc/83967527.html, shuo.wang@https://www.doczj.com/doc/83967527.html,

Abstract: Low-cost and high-performance underwater sensor nodes are important to the dense underwater wireless sensor networks. And the low-cost acoustic communication module is a necessary part for the underwater wireless sensor node. In this paper, a QPSK demodulation method by window mask is proposed. And an underwater acoustic module based on FPGA and QPSK is designed. The acoustic communication module is designed on the software platform QUARTUS II released by ALTERA Corporation. Then the acoustic communication module is realized on Cyclone II chip. Simulations and experiments show that the proposed demodulation method is valid. The developed communication module can process the signal ’s modulation and demodulation.

Key Words: QPSK, FPGA, Modulation, Demodulation, Underwater Wireless Sensor Networks

Proceedings of the 29th Chinese Control Conference July 29-31, 2010, Beijing, China

分为模拟电路部分,实现水声模拟信号的收发、放大等处理;水声换能器是发射和接收水下声信号的装置。

微控制器1运行嵌入式多任务操作系统,完成数据的发送和接收控制。

发射寄存器2、调制模块3和数模转换器4完成原始数据的QPSK调制,调制信号经过功率放大器5后驱动水声换能器6;通过设置调制模块3中的频率参数可以改变QPSK调制的载波频率,通过调节功率放大器5的电路参数可以改变QPSK调制信号的输出功率,这样就可以适用于不同特性的水声换能器6。水声换能器6能实现声信号与电信号的相互转换。发送模式下,水声换能器6将电信号转换成声信号在水中传播;接收模式下,水声换能器6将水中接收到的声信号转换成电信号。接收放大模块7、比较器8和解调模块9负责将水声换能器6接收到声信号后的输出电信号经过放大、数字化后进行QPSK解调。接收寄存器10用于存储解调后的数据以供微控制器1读取。时钟模块11用于提供各组成模块工作时所需的始终信号。串行接口12提供了微控制器1与发射寄存器2和接收寄存器10之间的接口协议,用于规范它们之间的连接。

串行接口由串口发送和串口接收两部分组成,具体时序如图2所示,串口写的时候,写使能线置高,在每个写时钟的上升沿把一位数据写入FPGA的串口发射寄存器;当解调模块向接收寄存器写入新数据后,会产生一短脉冲信号newdata,用于表明通讯模块接收到了新数据;串口读的时候,在每个读时钟的上升沿,FPGA的串口接收寄存器输出一位数据到串口输出线上;串口写时钟和读时钟均为外部CPU提供,发送的数据位长度由发射寄存器长度控制。

水声通讯模块采用的是QPSK调制解调方式进行通信,QPSK具有4种不同相位的波形,解调的时候需要进行位同步处理,因此,发送的数据格式要按如下顺序发送:同步位,数据开始位,数据位,具体格式如图3所示。同步位用于载波恢复以达到位同步的目的,这个功能由解调模块中的数字锁相环实现,同步位的长度大小要保证数字锁相环能及时捕捉并锁定输入信号。待发送的有效数据紧跟在数据开始位后,解调模块识别到数据开始位后,后面接收到的数据都认为是有效数据。有效数据的长度大小受限于接收寄存器的大小,这个可以根据实际需要来设定。

FPGA使用的主时钟信号由外部晶振经FPGA内置的PLL锁相后产生,其它时钟信号由该主时钟信号分频后产生,这些时钟信号主要用于调制与解调模块工作使用以及数摸转换芯片使用。良好的时钟信号是保证各模块时序运行正确的保证,设计的时候要仔细考虑时钟信号的时序约束。

3调制模块的实现(Realization of Modulation Module)

3.1QPSK调制模块结构(The Structure of QPSK

Modulation Module)

QPSK调制模块的主要功能是将串口输入的数据经过串并转换(SPC)、选相、数控振荡器(NCO)后,输出数字化的QPSK调制波形,供数摸转换芯片生成模拟信号。串并转换将待发送的数据分成I、Q两路信号用于选定初始相位,以控制NCO输出波形的变化。调制系统数字部分的主要结构如图4虚线框内所示

图 4 QPSK调制模块结构

图1 水声通讯模块整体结构

图 2 串行接口时序示意图

图 3 数据发送格式

3.2 串并转换(Deserialize)

串并转换模块主要功能是实现将一路串行数据转换成I 、Q 两路并行数据并提供选相所需的控制信号。

3.3 选相(Phase Selection)

QPSK 是四相位调制的PSK ,载波有四种不同的相位状态,初始相位是由I 、Q 两路数据决定的[5][6]。本文设计的水声通讯模块使用的相位模式为图5中的B 型星座图。选相模块给数控振荡器(NCO )提供了相位字及控制信号,不同的相位字对应不同的相位,因此,通过控制相位字就能实现输出信号的相位变化。

3.4 数控振荡器(NCO)

数控振荡器(NCO )的主要目标是产生QPSK 数字波形以供DAC 生成QPSK 模拟波形,本文中采用查表法

来实现NCO ,待生成的正弦波数字样本存储在ROM 表

中,ROM 表以相位角度作为地址存储该相位的正弦值

数据[7][8]

。通过相位字与频率字的不同组合可以产生不同频率不同相位的正弦信号。数控振荡器是调制模块的核心,其结构如图7所示。

3.5 DAC 及功率放大(DAC and Power Amplifier) 数模转换器将数字化QPSK 波形转换成模拟QPSK 波形,功率放大部分用来提高DAC 输出信号的电压及功率。大的发射功率可以增加水声信号有效通信距离、提高信噪比、改善水声通信质量,有利于提高整个系统的性能。

4

解调模块的实现(Realization of Demodulation Module)

4.1 QPSK 解调模块结构(The Structure of QPSK

Demodulation Module)

QPSK 解调模块的主要功能是将接收到的QPSK 模拟信号还原为基带数字信号,主要功能模块包括数字锁相环(DPLL )、解码(窗口掩码和四二映射)、并串转换、选码。数字锁相环从接收到的数据中恢复载波信号,实现数据位同步,并提供解码所需的“窗口”信号;解码模块由窗口掩码和四二映射两部分构成,用于实现信号的QPSK 解调;并串转换是串并转换的逆过程;选码的主要作用是将数据位从整个数据中分离出来。解调模块结构如图8所示。 4.2 数字锁相环(DPLL)

数字锁相环(DPLL )[9]是解调模块中的核心,用于实现接收信号的位同步并提供解码所需的“窗口”信号,位同步的好坏直接影响到解调系统解码的正确性。本系统中DPLL 由数字鉴相器(DPD )和数控振荡器(DCO )两部分构成,DPD 通过比较输入和输出信号的相位关系,产生相应的调整信号:加信号(add )及减信号(dec )来控制DCO 的输出,以达到相位同步的目的。DPLL 的结构如图9所示。

图5 QPSK

星座图

图6

相位表

图7 数控振荡

器组成结构

图8 QPSK 解调模块结构

系统启动后,数字锁相环不断在捕捉状态(catch)和锁定状态(lock)中转换。在捕捉状态,DPD检测输入信号与输出信号的相位关系,更新dec、add信号来调整DCO的输出,使得输出信号与输入信号同相,当输入与输出达到同相时,DPD产生锁定信号并将其置高,锁定信号会屏蔽掉add、dec对DCO的作用,这样,DPLL就进入了锁定状态,此时输出的是周期性的方波信号。当一次数据接收完毕,DPLL将从锁定状态返回捕捉状态,这一功能由选码模块实现,此时锁定信号将被置低。

数字鉴相器(DPD)由状态机实现,其状态转换图如图10所示,输入信号为DPLL输出及数字化后接收信号,输出为DCO控制信号。数控振荡器(DCO)的本质是一计数器,该计数器受add、dec信号的影响,通过add、dec信号来调整输出波形,使得DPLL输出与输入同相。当add信号有效时,计数器进行增2计数;当dec信号有效时,计数器保持现有计数值不变。

4.3解码(Decoding)

解码是实现QPSK解调最关键的部分,包括窗口掩码及四二映射。解码过程中,窗口掩码模块将锁定后的DPLL输出信号作为“窗口”信号来框定解调输入信号(比较器输出信号),DPLL输出为高电平时表示“窗口”开启,当DPLL输出为低电平时表示“窗口”关闭。当“窗口”开启时,对解调输入信号进行8倍载频采样,采样输出结果为四位并行数据;四二映射将窗口掩码输出的四位并行数据与I、Q信号进行一一对应,并进行数据率调整。窗口掩码输出信号的频率为载波频率(38KHz),I、Q信号的频率为2倍系统数据率(约2KHz),因此,四二映射要对输入信号进行2倍系统数据率采样,最终输出的I、Q信号频率为2倍系统数据率。解码的整个流程如图11所示。水声换能器将接收到的声信号转换为电信号,经过放大处理后送入比较器。图11中最左边信号为比较器输入信号,经过比较器后形成二值化数字波形,相当于一位模数转换。待琐相环锁定输入信号后(靠同步位实现),DPLL输出信号作为窗口信号对二值化数字波形进行掩码操作。本设计中采用8倍DPLL时钟信号对二值化数字波形进行采样,由窗口信号选定前半周期的4位采样数据送入四二映射模块实现I、Q信号还原。四二映射模块对特定的4位输入数据进行对应映射,而对于图11中四种格式之外的输入均映射到00作为输出,具体实现时还可以按照概率运算进行纠码操作来提高系统的可靠性。

4.4并串转换(Serialize)

并串转换是串并转换的逆过程,并串转换将解码输出的I、Q两路信号合并成一路串行数据信号。

4.5选码(Code Selection)

选码模块主要实现两个功能:一为判定数据起始位,因为每个调制信号都是由同步位、起始位及数据位构成,选码模块实现判断数据位的起始位置,舍弃同步位及起始位,标定数据位的起始与结束;另一个功能是当接收完毕一组数据后,产生lock信号置低脉冲clr,使得DPLL重新进入捕捉状态,准备好接收其它数据。

图9 数字琐相环结构

图10 DPD状态转换图

图11 解码过程示意图

5水声通讯模块的实现(Realization of Underwater Acoustic Communication Module)

本文设计的水声通讯模块所使用的FPGA为ALTER 公司的CYCLONE II系列芯片EP2C20Q240C8N,编程语言采用VHDL,软件开发平台为QUARTUS II [10-12];主控CPU为ATMEGA128单片机,软件开发平台为AVR STUDIO。数模转换芯片为TLC7524,系统载波频率设为38KHz,串口发射寄存器发送数据比特率约为1Kbps,串口读写时钟由主控CPU设定。本文对所设计的水声通讯模块进行了时序功能仿真验证,仿真采用QUARTUS II软件波形仿真功能,图12所示为调制模块的部分仿真结果,图中的QPSK_out为调制后的数字化QPSK信号,作为TLC7524的输入信号产生模拟QPSK信号。图13所示为解调模块的部分仿真结果,dm_in信号是解调输入信号,是经过二值化处理后的QPSK信号,PSC_out_temp信号为解调输出结果。经过软件仿真可以看出,所设计的水声通讯模块能够完成QPSK信号的调制解调。

除了进行软件仿真外,还开发了相应的通讯模块电路板进行实验验证。图14为用示波器观察到的水声换能器输入输出波形,图中上半部分为功率放大器传送给水声换能器的输出波形,下半部分为经过水声换能器接收后的输入波形,从左向右三幅图中示波器的时间轴间隔由大到小。

6总结(Conclusions)

本文提出了一种基于FPGA的水下传感节点QPSK 调制解调模块的设计及实现,详细介绍了该模块各个子模块的功能及结构,从软件仿真和实验两方面验证所提设计调制解调方法是可行的,开发的通讯模块可完成水声信号的QPSK调制与解调。在信号的调制解调中,设计了一种通过窗口掩码方式实现QPSK解调的方法,此方法适用于水声通信环境。在水下无线传感器网络应用中,水声通讯的载波频率相对较低,采用普通的电路元器件就能达到实现相应功能的要求,这就使得低成本的水下传感器节点的实现成为可能。当然,水声换能器的性能与价格是影响和制约水声通讯模块整体性能与成本很重要的一个因素,在这里不进行详细的讨论。基于FPGA的系统设计方案可以使通讯模块的升级与修改更加方便,只要对FPGA的软件程序进行改动就可以满足不同应用场合的需求。

参考文献(References)

[1] Ian F.Akyidiz, Dario Pompili, Tommaso Melodia, Underwater

acoustic sensor networks: research challenges, Ad Hoc Netwotk 3(2005) 257-279.

[2] Ethem M.Sozer, Milica, Stojanovic, John G.Proakis, Underwater

Acoustic Networks, IEEE JOURNAL OF OCEANIC ENGINEERING, VOL.25, NO.1, JANUARY 2000.

[3] 李淑秋,李启虎,张春华.水下声学传感器网络的发展和

应用,物理,2006,11(35):945-952.

[4] 马雪利.高速水下声通信技术研究,哈尔滨工业大学硕士

学位论文,2004.

[5] 曹志刚、钱亚生.现代通信原理,北京:清华大学出版社,

1992.

[6] Bernard Sklar著.数字通信——基础与应用(第二版),

北京,电子工业出版社,2002.

[7] Dan Morelli.Modulating Direct Digital Synthesizer in

a QuickLogic FPGA, Telxon Corporation.

[8] 窦衡.DDS信号源的设计与实现实验指导书,电子科技大

学.

[9] Dean Banerjee. PLL Performance Simulation and Design

(Fourth Edition), Dog Ear Publishing, 2006.

[10] 黄智伟主编.FPGA系统设计与实践,北京,电子工业出版

社,2005.

[11] https://www.doczj.com/doc/83967527.html,.

[12] 吴继华,王诚编著.Altera FPGA/CPLD设计,北京,人民

邮电出版社,2005.

图12 调制模块时序功能仿真图图14 水声换能器输入输出波形

基于FPGA的水下传感节点QPSK调制解调模块设计与实现

作者:刘旺锋, 王硕

作者单位:中国科学院自动化研究所复杂系统与智能科学实验室,北京100190

本文读者也读过(10条)

1.李雅卓.金小萍基于FPGA的QPSK调制解调的实验设计[会议论文]-2007

2.美国国家仪器有限公司NI发布业界首款PCI Express数据采集设备,继续引领数据采集行业的革新!NI将最新的插入式PC总线带入NI M系列数据采集技术[期刊论文]-现代科学仪器2005(4)

3.杨波.YANG Bo中频采样QPSK解调的FPGA设计与实现[期刊论文]-无线电工程2006,36(12)

4.廖龙.李悦基于TMS320C6711的软件无线电调制解调技术的研究与实现[期刊论文]-中国高新技术企业2010(2)

5.朱琳.李署坚

6.5一种基于FPGA的QPSK解调误码测试系统[会议论文]-2007

6.黄文准.王文艺.周德锁.Huang Wenzhun.Wang Wenyi.Zhou Desuo基于TMS320C6x实现多载波QPSK信号全数字化整体解调[期刊论文]-电子工程师2005,31(8)

7.凌华科技(中国)有限公司.Adlink Technolagy Inc凌华科技新晶领先发布[期刊论文]-航空制造技术2009(6)

8.王志刚.钟洪声32DAPSK调制解调的一种简化算法[会议论文]-2006

9.刘琼.王平连.安叶高速QPSK解调载波恢复锁相环路设计[会议论文]-2007

10.刘鹏.Liu Peng基于FPGA的自适应QPSK解调器的设计实现[期刊论文]-军民两用技术与产品2005(4)

本文链接:https://www.doczj.com/doc/83967527.html,/Conference_7316625.aspx

相关主题
文本预览
相关文档 最新文档