基于fpga的直接数字合成器(dds)设计报告

基于fpga的直接数字合成器(dds)设计报告

ID:8496967

大小:619.00 KB

页数:4页

时间:2018-03-29

基于fpga的直接数字合成器(dds)设计报告_第1页
基于fpga的直接数字合成器(dds)设计报告_第2页
基于fpga的直接数字合成器(dds)设计报告_第3页
基于fpga的直接数字合成器(dds)设计报告_第4页
资源描述:

《基于fpga的直接数字合成器(dds)设计报告》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于FPGA的直接数字合成器(DDS)设计报告一、实验内容及要求1、利用FLEX10的片内RAM资源,根据DDS原理,设计产生正弦信号的各功能模块和顶层原理图;2、利用实验板上的TLC7259转换器,将1中得到的正弦信号,通过D/A转换,通过ME5534滤波后在示波器上观察;3、输出波形要求:在输入时钟频率为16KHz时,输出正弦波分辨率达到1Hz;在输入时钟频率为4MHz时,输出正弦波分辨率达到256Hz;4、通过RS232C通信,实现FPGA和PC机之间串行通信,从而实现用PC机改变频率控制字,实现对输出正弦波频率的控制。二、DDS电路的原理直

2、接数字频率合成(DirectDigitalSynthesizerDDS)技术是从相位概念出发直接合成所需波形的一种新的频率合成技术,这种方法不仅可以产生不同频率的正弦波,而且可以控制波形的初始相位。还可以用DDS方法产生任意波形(AWG).DDS电路的工作原理如图1所示:其工作过程为:1.将存于数表中的数字波形,经数模转换器D/A,形成模拟量波形。2.两种方法可以改变输出信号的频率:(1)、改变查表寻址的时钟CLOCK的频率,可以改变输出波形的频率。(2)、改变寻址的步长来改变输出信号的频率,DDS即为对数字波形查表的相位增量,由累加器对相位增量进

3、行累加,累加器的值作为查表地址。3、D/A输出的阶梯形波形,经低通(或带通)滤波,成为质量符合需要的模拟波形。该DDS系统的核心是相位累加器,它由一个加法器和一个位相位寄存器组成,每来一个时钟,相位寄存器以步长M增加,相位寄存器的输出于相位控制字相加,然后输入到正弦查询表地址上。正弦查询表包含一个周期正弦波的数字幅度信息,每个地址对应正弦波中0度到360度范围的一个相位点。查询表把输入的地址相位信息映射成正弦波幅度的数字量信号,驱动DAC,输出模拟量。相位寄存器每经过2N/M个fc时钟后回到初始状态,相应的正弦波频率位为:频率控制字与输出信号频率和

4、参考时钟频率之间的关系为:其中N是相位累加器的字长。频率控制字与输出信号频率成正比,可见控制M就能得到任意频率的信号。通常用频率增量来表示频率合成器的分辨率,DDS的最小分辨率为:这个增量也就是最低的合成频率。由取样定理,所产生的信号频率不能超过时钟频率的一半,因此最高的合成频率为:在实际运用中,为了保证信号的输出质量,输出频率不要高于时钟频率的1/4,以避免混叠或谐波落入有用输出频带内。正弦ROM查询表完成输出信号相位到幅度的转换,它的输入是相位寄存器和相位控制字之和,其实也就是ROM的地址值(宽度为P位);ROM查找输出的数据(也为P位)送往D

5、/A转换成模拟信号。在实际应用中,P不能太大,如果P太大,回导致ROM容量的成倍上升,而输出受D/A精度的限制未有很大改善。图2为相位累加器工作示意图,从图中可以看出,虽然相位累加器的位数为N为,但是只取高P位进行ROM查表。一、设计部分和程序1.系统的顶层原理图:2.AD14这个模块的VHDL语言源文件:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYad14ISPORT(CLK:INSTD_LOGIC;m:instd_logic_vector

6、(11downto0);co:OUTSTD_LOGIC_vector(7downto0));ENDad14;ARCHITECTUREBEHAVEOFad14ISsignalte:std_logic_vector(13downto0);signalre:std_logic_vector(13downto0);BEGINPROCESS(CLK)BEGINIF(CLK'EVENTANDCLK='1')THENte<=re+m+1;re<=te;endif;co<=re(13downto6);ENDPROCESS;ENDBEHAVE;其中re共有14位,其

7、高八位是用来进行ROM查表的(既co),其低六位可用来改变输入频率且当m大于127(既是m+1=128为2的7次,所以每加一次co都会增加一)时一个周期内对ROM表内的数的查询少于256个点(这里建立的表中一个周期内有256个点),所以随着m值的再增加,会使一个周期内的采样点数越来越少,从而出现波形失真现象。1.正弦ROM查询表WIDTH=8;DEPTH=256;ADDRESS_RADIX=DEC;DATA_RADIX=DEC;CONTENTBEGIN0:64;1:65;2:67;3:68;4:70;5:71;6:73;7:74;8:76;9:78

8、;10:79;11:81;12:82;13:84;14:85;15:87;16:88;17:89;18:91;19:92;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。