微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 电源设计 > 基于FPGA和DDS的数控信号源的设计与实现

基于FPGA和DDS的数控信号源的设计与实现

时间:04-23 来源:互联网 点击:

摘要 以FPGA为核心,根据DDS原理设计数控信号源,采用VHDL语言实现各功能模块。该信号源可输出正弦渡、方波和三角波,输出信号的频率以数控方式调节,幅度连续可调。与传统信号源相比,该信号源具有波形质量好、精度高、设计方案简洁、易于实现、便于扩展与维护的特点。
关键词 信号源;DDS技术;FPGA;数控方式

信号源输出信号可作为标准信号和用户自定义信号而成为电气电子各领域,如自动控制、通信电子、电子对抗、航空航天等,以及科研测试中必不可少的电子测量和计量设备。随着科学技术的不断提高,对信号源的频率精度和稳定度、频率范围等要求也越来越高。
传统信号源通常利用石英晶体振荡电路、RC振荡电路或LC振荡电路实现,电路构造复杂、频率范围较窄、精度和稳定度较低、且调节不方便、电路易于损坏、维护困难。目前直接数字频率合成器DDS(Direct Digital Frequency Synthesizer)是一种主流的频率源合成技术。 DDS具有频率分辨率高、频率切换时间短、相位变换连续、可靠性高等优点。现有基于DDS技术的信号源实现方案可分为两大类:(1)以DDS专用芯片为核心,单片机为控制模块。(2)以FPGA为核心完成DDS功能,单片机作为控制部分。由于DDS专用芯片并不具备LFM功能,而且只能以固定的方式工作,因此第一种方案缺乏灵活性。第二种方案涉及两种编程语言一一汇编语言和硬件编程语言,显然增加了方案的难度和复杂度,同时硬件系统也较复杂,不利于扩展与维护。
文中根据DDS原理,以FPGA为核心,辅以简单的外围电路完成数控信号源的方案设计,各功能模块利用VHDL语言设计,在FPGA中实现。设计方案既简单方便、易于实现且灵活。

1 设计方案及工作原理
1.1 设计方案
设计方案如图1所示,包括DDS、DAC、LPF、放大、幅度控制、频率设置、波形选择和显示等模块。其中,DDS模块是核心部分,用于产生各种波形数据。DAC及LPF模块将DDS输出的波形数字值转换成模拟值,并通过低通滤波得到平滑的波形信号。幅度控制模块则控制输出波形的幅度。频率设置模块控制输出波形的频率,可采用数控方式调节。显示模块可显示输出波形频率和波形种类。

图1中的DDS模块、频率设置、波形选择、显示控制模块均在FPGA上实现,用VHDL语言完成设计,只有DAC、LPF、放大、显示器件和输入器件需要外接电路实现,因此硬件系统较为简洁。
1.2 工作原理
设计的基本原理是DDS技术。DDS是基于查找表思想,事先把波形数据存储于ROM表中,然后相位累加器输出作为地址信号,读出波形数据。但为避免因累加器溢出后下次累加舍掉余值而产生的频率误差,以及累加器高位不同步引起的竞争冒险问题,文中根据李晓芳等人提出的DDS算法优化思路来设计DDS结构。设计的DDS结构如图2所示。相位累加器在系统时钟fclk的作用下,以频率控制字Fword在为步长不断累积,其溢出信号pvo作为地址信号发生器的时钟。地址信号发生器实际是以pvo为触发脉冲的计数器,其输出信号作为ROM表的地址信号。图2中同步寄存器的作用是保证频率字改变时不会影响累加器的正常工作。



2 电路设计与实现
系统中循环相位累加器、ROM表和地址信号发生器是关键部分,它们直接决定系统性能。
2.1 相位累加器结构设计
为得到足够高的分辨率,文中循环相位累加器字长取32位。但是,若直接采用32位串行加法器作为累加器,则引入的延迟较大,从而大大降低系统的工作速度。为此,文中采用超前进位原理和流水线技术设计32位循环累加器,其原理框图如图3所示。每4位超前进位加法器作为一个基本单元,4个4位超前进位加法器组成16超前进位加法器,并且将入流水技术加入16位超前进位加法器中。最后再将两个16位加法器组成32位加法器,如图3所示。

2.2 ROM查找表设计
理论上,一个周期内样点数越多,输出的波形精度越高。但样点数越多,需要的存储空间也越多。为了得到一定精度的波形,又不希望大幅度地增加存储容量,人们提出如下方法:(1)利用CORDIC及其改进算法来设计DDS。(2)根据抽样定理,存储最少的样点数,每个周期采用固定的样点数。(3)利用波形的对称性来减少ROM,如正弦波只需存储前1/4周期的波形数据。
ROM查找表设计的标目是减少ROM的容量,同时不能过多增加系统的复杂度。根据采样定理,每个波形周期只需采样45°,135°,225°,315°相位点对应的4个样值,就可以无失真地重构模拟波形信号。为保证波形质量,文中每个周期固定采样32个点,则3种波形有96个样点,每个样点用8为二进制数表示,则共需要768 bit。因此,地址信号发生器可设计为32进制的计数器。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top