预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于FPGA的DDS信号发生器设计时间:2009-09-1809:40:06来源:HYPERLINK"http://"\t"_blank"现代电子技术作者:高士友胡学深杜兴莉刘桥0引言信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器的实现方法通常是采用分立元件或单片专用集成芯片,但其频率不高,稳定性较差,且不易调试,开发和使用上都受到较大限制。随着可编程逻辑器件(FPGA)的不断发展,直接频率合成(DDS)技术应用的愈加成熟,利用DDS原理在FPGA平台上开发高性能的多种波形信号发生器与基于DDS芯片的信号发生器相比,成本更低,操作更加灵活,而且还能根据要求在线更新配置,系统开发趋于软件化、自定义化。本文研究了基于FPGA的DDS信号发生器设计,实现了满足预定指标的多波形输出。1DDS基本原理DDS建立在采样定理基础上,首先对需要产生的波形进行采样,将采样值数字化后存入存储器作为查找表,然后通过查表读取数据,再经D/A转换器转换为模拟量,将保存的波形重新合成出来。DDS基本原理框图如图1所示。除了滤波器(LPF)之外,DDS系统都是通过数字集成电路实现的,易于集成和小型化。系统的参考时钟源通常是一个具有高稳定性的晶体振荡器,为各组成部分提供同步时钟。频率控制字(FSW)实际上是相位增量值(二进制编码)作为相位累加器的累加值。相位累加器在每一个参考时钟脉冲输入时,累加一次频率字,其输出相应增加一个步长的相位增量。由于相位累加器的输出连接在波形存储器(ROM)的地址线上,因此其输出的改变就相当于查表。这样就可以通过查表把存储在波形存储器内的波形抽样值(二进制编码)查找出来。ROM的输出送到D/A转换器,经D/A转换器转换成模拟量输出。2系统总体方案设计该设计以FPGA开发平台为核心,将各波形的幅值/相位量化数据存储在ROM内,按照设定频率,以相应频率控制字k为步进,对相位进行累加,以累加相位值作为地址码读取存放在存储器内的波形数据,经D/A转换和幅度控制、滤波即可得到所需波形。波形发生器采取全数字化结构,用硬件描述语言Verilog设计实现其频率可调可显示。经开发平台的D/A转化和外加滤波整形处理波形数据,理论上能够实现任意频率的各种波形。系统总体设计方框图如图2所示。系统按工作原理和控制对象的先后分为三个功能单元:波形数据产生单元、D/A转化单元和滤波整形处理单元。波形数据产生单元除具有波形数据输出功能外,还有频率设置和输出显示功能。波形信号频率可设置范围为0~99999999Hz,系统时钟采用外接晶体振荡器40MHz时钟脉冲,频率稳定度优于10-4输出采用8位LED数码循环动态显示。D/A转换单元负责对从ROM表里读取的波形数据进行D/A转换,对D/A转换器件的选用从建立时间、位数、转化误差和转换时间等四个方面考虑。滤波整形处理单元完成对D/A转换的模拟波进行平滑,滤除杂波和高频干扰,补偿频带损耗和幅度损失,最终输出低误差、高质量、满足题设要求的波形。3系统功能单元实现3.1波形数据产生单元波形数据产生单元是信号发生器设计的主体。在此,采用DDS原理设计的信号发生器能完成三种波形(正弦、三角和方波)数据的产生,而且根据控制信号还可完成选定波形指定频率的输出。波形数据产生单元按功能实现上的相互联系可划分为频率控制字生成模块、相位累加器模块和波形数据ROM表模块,如图3所示。其中,频率控制字生成模块可根据输入产生指定频率字,同时显示输入频率数字。相位累加器模块负责对所选波形的相位寻址,以频率控制字作为步长反复进行累加运算。波形数据ROM表模块存放三种波形的幅值/相位量化值,通过地址选择相应波形的数据。系统输入控制使用4×4键盘.键盘主要按键功能介绍如下:“0~9”:数字键,设定信号频率;“确定”:用于对波形信号设置的确认,波形信号的设置必须“确定”后才有效;“←”:删除已输入信号频率数字的最后一位,用于修改设置的频率;“清零”:将频率数字快速全部清零;“↑”:步进增大控制;“↓”:步进减小控制。设定频率输出范围为1kHz~10MHz,频率步进为50Hz。系统输出采用8个LED数码管,以扫描方式显示(单位为Hz)频率数字。根据DDS原理,以步进值50Hz作为频率控制字1,那么最大值10MHz对应的频率控制字为200000,用18位二进制数值就可以表示(218>200000)。从抽样值恢复出原波形数据,理论上每