摘 要:混合扩频信号源是混合扩频系统的重要组成部分。利用Matlab/Simulink对FH/DS混合信号源进行模块化设计和系统级仿真,通过重新设置参数能够改变信号源频率。和以往完全图形化的设计方法不同,进一步采用Altera公司推出的DSP Builder工具将核心模块(伪码发生和DDS功能模块)自动转换成VHDL文件,由Quartus Ⅱ进行综合、适配、时序分析,最终得到可供芯片下载使用的.sof文件。这一做法大大缩短了从软件仿真到系统硬件实现的周期,仿真结果表明系统功能正确,且具有较高的性价比。
关键词:FH/DS;Simulink;DDS;PN码;DSP Builder
中图分类号:TN914文献标识码:B
文章编号:1004-373X(2008)07-073-03
Simulation Design of Hybrid FH/DS Signal Based on Simulink
DU Pei,JI Ming
(The Fourth Lab,Xi′an Institute of Applied Optics,Xi′an,710065,China)
Abstract:Hybrid spread spectrum signal is an important part of hybrid spread spectrum system.The hybrid DS/FH signal is designed and emulated with Matlab/Simulink,and the frequence of signal can be changed by resetting the parameters.Different from usual method of design,converting the kernel modules(PN generator and DDS module)to VHDL files with DSP builder of Altera automatically,synthesized,fitted and timing analyzed by Quartus Ⅱ,and generating the .sof files used for chip download finally.The methods greatly shorten the time from software simulation to hardware implementation.The simulation results testify the functions correctness of the system which has high ratio of quality to price.
Keywords:FH/DS;Simulink;DDS;PN code;DSP Builder
1 引 言
跳频(FH)和直扩(DS)系统都具有很强的抗干扰能力,是使用最多的两种扩频技术。跳频系统在抗选择性衰落、抗多径等方面的能力不强,直扩技术正好弥补了这一缺点;直扩系统受“远-近”效应影响较大,而这正是跳频技术的优点[1]。这两种方式都具有自己的独到之处,但也存在各自的不足,将两者有机地结合在一起,可以大大改善系统性能。
Matlab/Simulink属于一种通用的科学计算和系统仿真语言,Matlab简单高效的数学语言结合Simulink的图形化设计使得从数学模型到计算机仿真模型的转换非常容易,免除了高级语言编程的繁琐。
本文使用Simulink中的Communications Blockset和Altera DSP Builder工具箱对FH/DS混合扩频信号源进行了仿真设计,采用同一PN码发生器保证了系统的同步性,并借助Altera公司推出的DSP Builder将核心模块自动转化为VHDL文件,可由Quartus Ⅱ软件来进一步完成编译、综合以及FPGA芯片的下载调试。其中,DSP Builder软件的使用大大加速了工程设计从软件仿真到硬件实现的进程。
2 FH/DS混合信号源的原理及组成
2.1 混合信号源的设计原理
直扩采用伪随机码进行扩频,跳频是用码序列构成跳频指令来控制频率合成器输出信号的频率[2]。
本设计采用伪码发生器来作为直扩信号源,并使用同一伪码发生器控制直接数字频率合成器(DDS)来产生跳变的频率,作为跳频信号源。这样可以保证混合信号源的同步性,在接收端也有利于实现解扩同步处理。图1是FH/DS混合信号源的示意图。
图1 FH/DS混合信号源示意图
可见,DDS技术和伪码发生器是混合扩频信号源的关键技术。
2.2 DDS技术原理及组成
DDS是从相位概念出发直接合成所需波形的一种新的频率合成技术,用数字合成技术实现。DDS主要由相位累加器、正弦查询表、D/A转换器和低通滤波器组成,如图2所示。
图2 DDS组成原理图
在参考频率fc的控制下,频率控制字K控制相位累加器得到相应的相位数据,并在正弦查询表中查询相应的幅度信息,将相位信息转化成相应的正弦幅值,经D/A转换器变成模拟信号,再经低通滤波器平滑后得到所需的信号波形。通过改变频率控制字K,可得到不同的输出频率:
fo=K*fc/2N
(1)
市面上现有的高性能芯片虽可完成DDS功能,但在某些性能指标及价格方面并不能很好的满足设计要求。本次设计采用Matlab/Simulink+DSP Builder仿真设计DDS模块,并将模块自动转成VHDL文件,进一步使用Quartus Ⅱ软件来完成FPGA芯片的设计下载。这样可以获得符合自己要求的高性价比的DDS。
2.3 PN码发生器的原理及构成
本次仿真设计中,PN码采用易于产生、拥有优良自相关特性的m序列。m序列是由移位寄存器加反馈后构成的,其序列生成多项式如下:
G(x)=a0+a1x+a2x2+…+anxn+…
=∑∞n=0anxn
(2)
对于r级反馈移位寄存器,可产生周期为2r-1的m序列。本设计中取m=5,产生周期为31的m序列。若有需要,伪码发生器也可采用其他码序列,如GOLD码、m序列、R-S卷积码等。
3 FH/DS混合信号源的Simulink仿真
3.1 系统仿真模型
混合扩频信号源系统的仿真模型主要由三部分组成:PN[CD#*2]Generator,Random[CD#*2]Integer及DDS,如图3所示。
图3 FH/DS混合信号源仿真模型
信号流程:PN[CD#*2]Generator产生周期为31的m序列,经零阶保持器(Hold)后形成码宽为1的伪码序列作为直扩的信号源;m序列进入Random[CD#*2]Integer,由一列二进制码变成一列十六进制码即随机跳变的整数序列,整数幅值在[1,15]之间,经脉冲(Pulse)采样(Sample)后产生频率控制字进入DDS,在DDS中将相位信息转化成相应的正弦幅值,产生了频率随机跳变(具有15个跳频频率点)的正弦波形,作为跳频的信号源。通过示波器(Scope)可以观察输出波形。
3.2 PN[CD#*2]Generator的仿真设计
根据反馈移位寄存器原理,采用Altera DSP Builder工具箱设计的PN[CD#*2]Generator仿真结构如图4所示,该模块采用5级反馈来产生周期为31的m序列。根据需要,可对反馈级数作修改。
图4 PN[CD#*2]Generator仿真结构图
3.3 Random[CD#*2]Integer的仿真设计
该模块采用Communications Blockset工具箱设计完成,其仿真结构如图5所示。参数设置为4,即每4位二进制转化成为1位十六进制,输出幅值在[1,15]之间、码持续时间为1 s的随机整数序列。
图5 Random[CD#*2]Integer仿真结构图
3.4 DDS的仿真设计
按照DDS的组成原理,在Simulink中采用Altera DSP Builder工具箱建立的DDS仿真结构如图6所示。
图6 DDS的Simulink仿真结构图
幅值在[1,15]之间、码持续时间为1 s的随机整数序列进入DDS,控制相位累加器得到相应的相位数据,并在正弦查询表(LUT)中查询相应的幅度信息,将相位信息转化成相应的正弦幅值,从而得到频率跳变的正弦波信号。
由于受存储器容量和成本限制,正弦查询表LUT容量有限,采用10位精度,其参数Matlab Array设置为:255*sin([0:pi/(2^10):2*pi]),即DDS模块可获得fc/210的频率分辨率。
DDS各点的仿真波形如图7所示,示波器的采样时间设置为0.01。
图7 DDS仿真波形图
3.5 系统仿真结果
系统仿真步进设置为Variable Step,最大仿真步长设置为1e-3,仿真时间设置为65 s。图8显示了FH/DS混合信号源的仿真波形,示波器的采样时间设置为0.01。
图8 FH/DS混合信号源仿真波形
可以看到,该仿真模型输出了两路信号:一路是码周期为31、最小码宽为1的直扩信号,另一路是具有15个跳频点的随机跳频信号。
上述内容旨在提出一种完全由Simulink仿真实现的混合扩频信号源,而对于信号的指标没有过高要求。如有需要,通过修改仿真模型中零阶保持器的sample time和Random[CD#*2]Integer的参数,直扩码和跳频源的频率可进一步提高,跳频点数也可进一步增加,通过修改PN[CD#*2]Generator的反馈级数,直扩码周期可加大。通过修改参数以满足不同需要使得本设计具有很大的灵活性。
4 核心模块的FPGA实现
从前面的分析可以看到,伪码发生和DDS是混合扩频信号源的核心模块,因此采用了Altera DSP Builder工具箱对其进行仿真设计。Altera DSP Builder是DSP Builder软件在Simulink生成的工具箱,下面对DSP Builder的设计流程和上述两个模块的FPGA实现加以介绍。
4.1 DSP Builder设计流程
Altera公司推出的DSP Builder是一个系统级(或算法级)设计工具,他架构在多个软件工具之上,并把系统级(算法仿真建模)和RTL级(硬件实现)两个设计领域的设计工具连接起来,最大程度地发挥了两种工具的优势。DSP Builder依赖于MathWorks公司的数学分析工具Matlab/Simulink,以Simulink的Blockset出现。可以在Simulink中进行图形化设计和仿真,同时又通过SignalCompiler把Matlab/Simulink的设计文件(.mdl)转成相应的硬件描述语言VHDL设计文件(.vhd),以及用于控制综合和编译的tcl脚本。而对后者的处理可以由FPGA/CPLD开发工具Quartus Ⅱ来完成。
由于用FPGA设计一个DSP模块的复杂性、设计的性能(如面积、速度、可靠性、设计周期等)对于不同的应用目标有不同的要求,涉及的软件工具也不仅仅是Simulink和Quartus Ⅱ。DSP Builder针对不同情况提供了两套设计流程,即自动流程和手动流程[3]。
自动流程包括以下几个步骤:
(1) Matlab/Simulink建模;
(2) 系统仿真;
(3) DSP Builder完成VHDL转换、综合、适配、下载;
(4) 嵌入式逻辑分析仪实时测试。
手动流程包括以下几个步骤:
(1) Matlab/Simulink建模;
(2) 系统仿真;
(3) DSP Builder完成VHDL转换、综合、适配;
(4) ModelSim对TestBench功能仿真;
(5) Quartus Ⅱ直接完成适配(进行优化设置);
(6) Quartus Ⅱ完成时序仿真;
(7) 引脚锁定;
(8) 下载/配置与嵌入式逻辑分析仪等实时测试;
(9) 对配置器件编程,设计完成。
4.2 PN[CD#*2]Generator和DDS功能模块的FPGA实现
按照图4和图6所示结构在Simulink中完成仿真模块的搭建,参数设置后进行Simulink系统级仿真。仿真成功后双击Signal Complier Block,出现如图9所示窗口。
图9 Signal Complier对话框
对话框中选定Cyclone系列芯片。通过点击1,可把Simulink的模块文件(.mdl)自动转换成硬件描述语言VHDL文件:点击2,可对转换好的VHDL文件进行综合;点击3,Quartus Ⅱ进行编译适配,生成编程文件。也可以点击 “Execute steps 1,2 and 3”让Signal Complier自动完成上述一系列操作,由Quartus Ⅱ自动进行综合、适配、时序分析,最终得到可供芯片下载使用的.sof文件。
打开Quartus Ⅱ,选择Cyclone系列的EP1C6Q240C8芯片,进行重新编译、仿真并下载到芯片,最终可在示波器中验证伪码发生和DDS的功能。
5 结 语
本次仿真设计充分利用了Matlab/Simulink中DSP Builder工具箱的图形化界面建模、系统仿真的功能,既避免了编写繁琐的硬件描述程序,又区别于以往完全图形化的仿真设计方法,设计思路十分灵活。其中,DSP Builder软件的使用大大缩短了工程设计从软件仿真到硬件实现的周期。采用同一伪码发生器,能够同步产生直扩所需的伪码序列和跳频所需的跳变频率源,保证了混合扩频信号源的稳定性,对于接收端的同步解扩也十分有利。采用DDS技术,具有分辨率高、频率变化快、频率可控等优点,很好地实现了跳频功能。和专用芯片相比,对多种功能模块进行Simulink仿真,利用DSP Builder快速转换到FPGA硬件设计,并将多种功能集成在同一FPGA芯片上,这种方法使系统具有较高的性价比。
参 考 文 献
[1]曾兴雯,刘乃安,孙献璞.扩展频谱通信及其多址技术[M].西安:西安电子科技大学出版社,2004.
[2]宋洋,杨于杰.FFH/DS混合扩频体制通信技术研究[J].宇航计测技术,2006,26(1):16-19.
[3]潘松,黄继业.EDA技术与VHDL[M].2版.北京:清华大学出版社,2007.
作者简介 杜 佩 女,1983年出生,陕西西安应用光学研究所2005级硕士。主要从事无线数据传输方面的研究。
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
扩展阅读文章
推荐阅读文章
77范文网 https://www.hanjia777.com
Copyright © 2015-2024 . 77范文网 版权所有
Powered by 77范文网 © All Rights Reserved. 备案号:粤ICP备15071480号-27