基于Simulink HDL Coder的跳频通信系统设计与实现

2016-10-12 01:17杜广超孙慧慧杨云升杨志飞
无线电通信技术 2016年5期
关键词:信号处理代码波形

杜广超,孙慧慧,杨云升,杨志飞

(中国洛阳电子装备试验中心,河南 洛阳471003)



基于Simulink HDL Coder的跳频通信系统设计与实现

杜广超,孙慧慧,杨云升,杨志飞

(中国洛阳电子装备试验中心,河南 洛阳471003)

针对目前FPGA程序开发中模型开发方式应用较少的现状,基于simulink模型设计了跳频通信系统,利用simulink HDL Coder将跳频通信系统simulink仿真模型转换为HDL代码,在ISE中编译生成bit文件后加载到FPGA芯片之中,在FPGA信号处理板上实现了话音的实时通信。对基于simulink模型实现FPGA算法方法的优缺点进行了分析,对FPGA算法开发实现和simulink HDL Coder的推广应用具有一定的指导意义。

simulink HDL Coder;跳频;FPGA

0 引言

目前在通信或相关系统设计实现中,国内大多数FPGA程序开发人员仍然采用基于规范代码的底层开发方式,对IP核利用较多,对system generator有一定的应用,对Mathworks公司基于模型的开发工具simulink HDL Coder了解不多,应用很少。实际上simulink HDL Coder对FPGA程序开发提供了一整套的开发套件[1],从系统浮点算法设计、浮点算法到定点算法转化、算法模型验证[2]以及项目文档自动生成都有完整的支持[3-4]。同传统设计实现方法相比,采用simulink HDL Coder针对simulink模型的代码自动生成技术可以同步系统设计和实现,大大提高了FPGA程序开发效率,缩短项目开发周期。针对目前FPGA算法开发现状,对利用simulink HDL Coder进行通信算法的开发实现进行了开拓性的研究,给出了simulink HDL Coder的具体应用实例。

1 跳频通信系统设计

按照要求,跳频通信系统的关键技术指标包括:跳速200 hop/s、调制方式FSK、频段范围30~90MHz、信息传输速率10 kbps和信道带宽25 kHz。依据上述指标要求,设计了该跳频通信系统的simulink仿真模型如图1所示[5],整个系统由信息调制模块、跳频频率控制模块、上变频模块、同步模块、下变频模块、解调模块,以及频谱仪、示波器等调试模块构成。为了降低数据处理速率,上下变频和采样率变化相结合,整个系统是多采样率处理系统,需要设计插值和抽取滤波器[6]来抑制带外信号能量[7]。模型仿真所得跳频信号满足设计指标要求,其频谱截图如图2所示,图3为示波器观察到的下变频信号、判决信号、发射比特和接收比特等信号波形,接收波形较发射波形有延迟。仿真启动后,整个系统误码率为0。

图1 跳频通信系统

图2 跳频通信射频信号

图3 关键信号波形

需要注意上述simulink仿真系统必须利用hdllib内模块中的模型,hdllib会创建一个支持HDL代码生成的simulink模型库。在利用simulink HDL Coder转换为HDL代码之前,必须把simulink浮点模型转换为定点模型,可以利用Simulink Fixed Point实现浮点转定点过程的自动化[4]。

2 跳频通信系统实现

利用simulink HDL Coder把跳频通信系统simulink仿真模型生成HDL代码后,依据FPGA芯片类型在ISE中建立工程并添加上述HDL代码,利用modelsim进行仿真[8],modelsim仿真所得一些信号波形如图4所示,图4最下面2个信号分别是发射和接收比特信号,和图3最下面的发射和接收比特信号波形一致。然后根据信号处理板FPGA接口配置在ISE工程中添加接口约束文件,保证从音频编码器输入数据,从音频解码器输出数据,综合映射后生成bit文件下载到FPGA运行,实现了话音的实时通信。利用ChipScope抓取的二级下变频和抽取滤波信号波形如图5所示,满足设计要求[9]。

图4 modelsim仿真信号波形

图5 chipscope抓取下变频和抽取滤波信号波形

3 Simulink HDL Coder在FPGA算法实现上的优缺点

通过上述过程可看出simulink HDL Coder在FPGA算法实现上具有很多优势,集中体现在如下几点:

① 设计和实现同步可以大幅度提高项目开发效率:基于simulink环境可以方便信号处理算法设计,算法设计完毕后转化为HDL代码在FPGA芯片上验证,根据FPGA芯片处理结果对不合理设计进行修改完善,通过这样的反复迭代,可以快速排除设计错误,与基于底层代码的方式相比,项目开发效率得到了极大的提高;

② 方便算法的测试验证:利用simulink环境编写大量测试信号,观察算法在各种边界条件下的运行结果,反复修改算法各个模型的设计参数,可以验证算法的稳健性,保证了在同样时间内实现更加顽健可靠的FPGA信号处理算法。也可以利用simulink建模测试算法在存在干扰和低信噪比下环境下的性能,帮助设计抗干扰高性能的FPGA算法;

③ 对人员硬件描述语言的熟练程度要求极低:设计人员只需了解HDL最基本的语法规范,了解接口约束的实现方法(实际就是几条指令),可以编写简单的modelsim测试代码,就可以通过simulink环境设计实现高效可靠的信号处理算法了;

④ 算法可读性高:simulink模型图形化的设计理念,使得通过模型表示的算法结构清晰,和人类固有知识经验图式相契合,有助于诱导人的创新设计,可读性明显比底层代码高。

不过和基于底层代码的开发方式相比,simulink HDL Coder也有自身的缺点,集中体现在以下几点:

① 对simulink环境的理解和应用要求高。为设计出高效算法,降低算法资源占用度,提高时序设计质量,需要对simulink模型有全面和深入的理解,同时需要对simulink HDL Coder的转换规则有深刻理解;

② 算法实现后,时钟约束关系使得FPGA可运行最高时钟频率低于底层代码开发方式。时钟频率如果太高,就会导致信号波形畸变,进一步算法失效,这就降低了算法的数据处理速度,限制了算法的应用范围;

③ 和熟练的代码实现工程师相比,simulink HDL Coder所需硬件资源较多。

综上所述,可以看出在FPGA芯片资源充裕的条件下,利用simulink HDL Coder可以快捷实现经过大量测试的适应复杂环境的FPGA信号处理算法,对于加快项目开发具有极大的促进意义。

4 结束语

本文完整展现了simulink HDL Coder在通信系统开发和设计中的运用流程,实现了通信算法的simulink模型开发和FPGA实现。和传统方式相比,基于simulink HDL Coder的算法设计和实现可以极大提高开发效率,对加快FPGA通信算法开发具有一定的指导价值。结合simulink Embedded Coder可以实现simulink模型的DSP代码实现,利用simulink可以方便实现整个系统的模型开发,具有极大的应用前景。

[1]张慧娟.HDL Coder和HDL Verifier支持HDL代码生成和验证[J].电子设计技术,2012(5):20-21.

[2]单博.快速FPGA/ASIC原型设计与验证[R].Matlab巡回研讨会,2014:5-14.

[3]陈晓挺.FPGA上实现无线通信接收机[R].Matlab巡回研讨会,2014:6-17.

[4]张灵慧,周尹瑜.使用Simulink Fixed Point来进行定点建模与代码生成[R].Matlab巡回研讨会,2009:4-9.

[5]刘颖,张天辉,袁丁,等.跳频通信系统设计与仿真实现[J].通信技术,2013,46(10):18-21.

[6]宗孔德.多抽样率信号处理[M].北京:清华大学出版社,1996:25-36.

[7]杜勇,路建功,李元洲.数字滤波器的Matlab与FPGA实现[M].北京:电子工业出版社,2012:196-234.

[8]罗庆生,李超,韩宝玲,等.基于Matlab与Modelsim的四足机器人步态算法的协同仿真[J].单片机与嵌入式系统应用,2015:35-38.

[9]连秋华.跳频通信系统FCS技术研究[J].移动通信,2015,39(14):69-72.

Design and Implementation of Frequency Hopping Communication System Based on Simulink HDL Coder

DU Guang-chao,SUN Hui-hui,YANG Yun-sheng,YANG Zhi-fei

(Luoyang Electronic Equipment Test Center,Luoyang He’nan 471003,China)

In the FPGA development,the model-based method is fewer applied.A frequency hopping communication system is designed based on simulink model.The simulink simulation model of frequency hopping communication system is transformed to HDL code by simulink HDL Coder.The bit file,which is built in ISE,is then loaded into FPGA.At last,real-time voice communication is realized on the FPGA signal processing board.The merits and demerits of this method to realize FPGA algorithm based on simulink model are analyzed,which is of a certain guiding value to the FPGA development and the extended application of simulink HDL Coder.

Simulink HDL Coder;Frequency Hopping;FPGA

10.3969/j.issn.1003-3114.2016.05.24

引用格式:杜广超,孙慧慧,杨云升,等.基于Simulink HDL Coder的跳频通信系统设计与实现[J].无线电通信技术,2016,42(5):96-98.

2016-06-03

杜广超(1981—),男,工程师,主要研究方向:特种通信技术。杨云升(1973—),男,高级工程师,主要研究方向:特种通信技术。

TN27

A

1003-3114(2016)05-96-3

猜你喜欢
信号处理代码波形
用于SAR与通信一体化系统的滤波器组多载波波形
创世代码
创世代码
创世代码
创世代码
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会
Pareto最优稀疏频率雷达波形设计