电子系统设计实践课件.ppt

电子系统设计实践课件.ppt

ID:56931140

大小:698.00 KB

页数:24页

时间:2020-07-21

电子系统设计实践课件.ppt_第1页
电子系统设计实践课件.ppt_第2页
电子系统设计实践课件.ppt_第3页
电子系统设计实践课件.ppt_第4页
电子系统设计实践课件.ppt_第5页
资源描述:

《电子系统设计实践课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第9章电子系统设计实践9.1直接数字合成器(DDS)设计正弦信号发生器,它的输出可以用下式来描述:9-1用基准时钟clk进行抽样,令正弦信号的相位:9-2在一个clk周期Tclk,相位的变化量为:9-39.1直接数字合成器(DDS)设计为了对进行数字量化,把切割成2N份,由此每个clk周期的相位增量用量化值来表述:且为整数与10-3式联立,可得:9-49.1直接数字合成器(DDS)设计信号发生器的输出可描述为:9-5其中指前一个clk周期的相位值,同样得出9-69.1直接数字合成器(DDS)设计图9-1基本DDS结构【例9

2、-1】--DDSC:DDS主模块libraryIEEE;useIEEE.STD_LOGIC_1164.all;useIEEE.STD_LOGIC_UNSIGNED.all;useieee.std_logic_arith.all;librarylpm;--AlteraLPMuselpm.lpm_components.all;entityddscis--DDS主模块generic(freq_width:integer:=32;--输入频率字位宽phase_width:integer:=12;--输入相位字位宽adder_wid

3、th:integer:=32;--累加器位宽romad_width:integer:=10;--正弦ROM表地址位宽rom_d_width:integer:=10);--正弦ROM表数据位宽port(clk:instd_logic;--DDS合成时钟freqin:instd_logic_vector(freq_width-1downto0);--频率字输入phasein:instd_logic_vector(phase_width-1downto0);--相位字输入ddsout:outstd_logic_vector(ro

4、m_d_width-1downto0));--DDS输出endentityddsc;接下页architecturebehaveofddscissignalacc:std_logic_vector(adder_width-1downto0);signalphaseadd:std_logic_vector(phase_width-1downto0);signalromaddr:std_logic_vector(romad_width-1downto0);signalfreqw:std_logic_vector(freq_wid

5、th-1downto0);signalphasew:std_logic_vector(phase_width-1downto0);beginprocess(clk)beginif(clk'eventandclk='1')thenfreqw<=freqin;--频率字输入同步phasew<=phasein;--相位字输入同步acc<=acc+freqw;--相位累加器endif;endprocess;phaseadd<=acc(adder_width-1downtoadder_width-phase_width)+phase

6、w;romaddr<=phaseadd(phase_width-1downtophase_width-romad_width);--sinromi_rom:lpm_rom--LPM_rom调用接下页GENERICMAP(LPM_WIDTH=>rom_d_width,LPM_WIDTHAD=>romad_width,LPM_ADDRESS_CONTROL=>"UNREGISTERED",LPM_OUTDATA=>"REGISTERED",LPM_FILE=>"sin_rom.mif")--指向rom文件PORTMAP(out

7、clock=>clk,address=>romaddr,q=>ddsout);endarchitecturebehave;下面是产生SINROM数据值的C程序:#include#include"math.h"main(){inti;floats;for(i=0;i<1024;i++){s=sin(atan(1)*8*i/1024);printf("%d:%d;",i,(int)((s+1)*1023/2));}}把上述C程序编译成程序后,在DOS命令行下执行:romgen>sin_rom.mif;图9

8、-2DDS主模块RTL综合结果基本DDS结构的常用参量计算(1)DDS的输出频率fout。9-7(2)DDS的频率分辨率。9-8(3)DDS的频率输入字计算。注意要取整,有时会有误差。【例9-2】--简易频率合成器--DDS(32bit频率字,1024points10bitout)--ForGW48-C

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

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

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