开篇:润墨网以专业的文秘视角,为您筛选了一篇Chirp信号发生器的设计与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
[摘要]:本文利用DDS技术在FPGA平台上设计实现了一种chirp信号发生器,该信号发生器能产生标准的Chirp波形和正余弦波形,通过PC机软件可调整波形的类型、频率和相位。该信号发生器输出频率范围为0.01Hz~25MHz,频率分辨率为0.01Hz,具有控制灵活,输出稳定的优点。
[关键词]:数字频率合成 线性调频 FPGA
0. 引 言
线性调频(Chirp)信号是无线电引信系统中常用的一种脉冲压缩信号,是指信号瞬时频率为时间的线性函数。它通过非线性相位调制可以获得大的时宽带宽积,以信号频率在信号持续期间连续变化和近似白噪声的频率扫描特点而得名。其产生方法有模拟法和数字法,现在常用方法的是直接数字频率合成(DDS)方法,DDS是七十年代出现的第三代频率合成技术,具有较高的频率分辨率,较快的变频速度,相位连续,噪声较低等优点。FPGA具有集成度高、可靠性高和现场可编程的优点,近年来得到了迅速发展和广泛应用,本文基于FPGA实现DDS,具有灵活的接口和控制方式。
1. 基本原理
1.1 DDS基本原理
DDS技术最早由J.Tierncy和C.M.Rade于1971年提出,随着数字集成电路和微电子技术的发展,DDS技术日益显露出它的优越性,现已广泛应用于通讯、导航、雷达等领域[3]。DDS从相位概念出发直接合成波形,利用数字方式累加相位,再以相位做为地址查询函数表得到离散数字序列,最后经D/A转换后输出模拟波形。其结构由相位累加器、波形存储器、D/A转换器、参考时钟等几部分组成,如图1所示。
相位累加器是DDS的核心模块,由加法器和寄存器组成。每来一个参考时钟脉冲,加法器将频率字和寄存器中的累加相位相加,并将相加结果返回到相位累加器的输入端。波形存储器中存有一整周期的正弦波数据,当用相位累加器的输出数据寻址时,就实现了相位到幅度的转换。D/A转换器把数字量变为模拟量,并通过低通滤波器对近似正弦波进行平滑处理,得到由频率字决定的正弦波。
经DDS输出的正弦信号可表示为:
(2-1)
为了便于使用数字逻辑描述该表达式,需进行离散化处理,其离散表达式如下:
(2-2)
为系统时钟频率, 为输出波形频率, 表示频率字。设相位累加器的长度是 位,则地址数为 个,不同的地址对应不同的相位。对比式(2-2)可以得到输出频率与频率字的关系为:
(2-3)
由式(2-3)可得到DDS的分辨率等于 ,这个增量也就是最低的合成频率。最高的合成频率为 ( )。
1.2 Chirp基本原理
线性调频信号的表达式如下[2]:
(2-4)
其中瞬时频率 为时间的线性函数,即 ,这里称 为初始频率, 为多普勒频率。当 为0时,线性调频信号就变为正余弦信号。下面根据DDS原理推导初始频率字和多普勒频率字。线性调频信号的离散表达式如下:
(2-5)
瞬时相位为:
(2-6)
令 ,可得到:
(2-7)
(2-8)
可得到:
(2-9)
(2-10)
令 的初始状态为 , 的初始状态为0,可推导出:
(2-11)
(2-12)
即是初始相位,带入式(2-12)中, 为初始相位控制字。
(2-13)
比较式(2-13)与式(2-5)的对应系数可得输入、输出频率、多普勒频率和频率字之间的关系,其中 , 分别为初始频率字和多普勒频率字。
(2-14)
(2-15)
Chirp信号发生器的原理图如图2所示。在DDS基本结构的基础上在增加一个累加器,用于控制频率的变化率。
2. 系统设计
本文设计实现一个基于FPGA的Chirp信号发生器,可以产生标准的线性调频波形和正余弦波形。波形的频率和相位均可调节,输出频率范围为0.01Hz~25MHz,频率分辨率为0.01Hz。系统由三部分组成:PC端软件、FPGA、D/A 转换,系统框图如图3所示。
PC端是用户操作软件,由Matlab GUI编程实现[4],用于波形的频率控制、相位控制、与FPGA通讯等功能。FPGA部分由Altera公司的CycloneⅡ2C35芯片实现,完成系统控制、DDS信号模块和与PC机通讯的功能;D/A转换部分完成将FPGA数字输出转换为模拟输出、放大、滤波和幅度控制的功能。
2.1 FPGA设计
本设计中FPGA平台使用的是友晶公司的DE2平台[5],FPGA芯片为EP2C35F672。内部主要有三大部分:时钟模块、DDS模块、UART模块。结构图如图4所示。
时钟模块用于给其他模块提供基准时钟,由DE2平台上的50M晶振得到。串口模块接收来自PC机的控制指令和数据,解析后将频率控制字、相位控制字输入到DDS模块,串口设置为:波特率9600,数据位8位,停止位1位,无奇偶校验位。
DDS模块是系统核心模块,用于完成波形数据的输出,频率和相位的调整功能。该模块由VHDL硬件语言编程实现[1],内部结构参照图2,输入端是时钟、初始频率字、多普勒频率字和初始相位字,输出端是10bit的波形数据。其图形符号如图5所示。
已知系统时钟频率为50MHz,本模块中相位累加器的位数为32位,当多普勒频率字为0时,输出波形为正余弦信号,通过式(2-3)可得到频率分辨率为0.01Hz,最大输出频率为25MHz。当多普勒频率字不为0时,输出为Chirp信号,通过式(2-15)可得到,多普勒频率最小为2.91Mhz。
2.2 D/A电路设计
D/A转换电路主要由D/A转换、滤波、幅值调节组成。本设计使用DE2平台上VIDEO DAC芯片ADV7123完成,其内置三个高速、10位、带互补输出的模数转换器[5]。电路原理图如图6所示。
需要在FPGA中将VGA_CLOCK接系统时钟,VGA_BLACK信号置高,VGA_SYNC信号置低,D/A即可工作。
2.3 GUI界面设计
本设计通过串行通信来实现PC机与FPGA之间的数据传输,为了保证准确传输数据,该端串口属性设置与FPGA端保持一致。当串口对象和设备连接成功,就可以读写数据[4]。用户界面友好,采用按钮、滑条等输入方式,用户使用简单方便,用户软件的界面如图7所示。
在波形选择区按下正余弦按钮时,多普勒频率框显示为灰色,不可输入。初始频率框和初始相位框可用,可设置输出波形的频率,范围为0.01hz到25Mhz。拖动滑条可调整初始相位,范围是0-360 rad。当按下波形选择区的线性调频按钮时,三个设置均可用。所有设置通过串口发送到FPGA中,进过解析,转化为控制字控制DDS模块输出相应的波形。
3. 实验结果
本文首先使用QuartusⅡ中集成的嵌入式逻辑分析仪(Signal TapⅡ)对信号进行仿真。不同于功能仿真,Signal TapⅡ运行于FPGA硬件中,并且不需要连接D/A等模拟电路,方便系统调试。图8 和图9 所示分别为产生正弦信号和Chirp信号时的仿真结果。
下图实验结果由安捷伦公司DSO3062A数字存储示波器采样所得。图10为100KHz正弦波,图11为初始频率为100KHz的Chirp波形。
可以看到,本系统产生的正弦波、线性调频波频率误差小,且具有很高的频率调制精度,实验结果符合各项设计指标。
4. 结 论
本文使用DDS 技术,通过FPGA实现了Chirp信号发生器的设计。采用FPGA设计方案,充分发挥了FPGA系统可编程的优点,用户可以根据需要自由定制模块,给设计带来很多方便。比如本设计可以很容易地实现任意波形发生器,只要将波形存储器模块由ROM改为RAM,用户可以根据设计需要定义RAM中数据,DDS就可以产生所需波形,因而具有相当大的灵活性。
参考文献
[1] 潘松,黄继业. EDA技术与VHDL(第3版)[M].清华大学出版社.2009
[2] 贝耶尔.数字信号处理的FPGA实现(第3版)[M].清华大学出版社. 2011
[3] 郭黎利.扩频通信系统的FPGA设计[M].国防工业出版社.2013
[4] 罗花飞.MATLAB GUI设计学习手记(第2版)[M].北京航空大学出版社.2011
[5] DE2 Development and Education Board User Manual. ALTERA公司.2005