DDS频率发生器设计.docVIP

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DDS频率发生器设计

西南科技大学 FPGA课程设计报告 课程题目: 波形发生器 . 指导老师: 刘桂华 . 学 生: 任健铭 . 二0一二年五月三日 【摘要】本文主要讨论了Verilog语言的基于DDS的波形发生器的设计。从设计要求入手,本文给出了DDS的详细设计过程,包括各个模块的设计思想,电路图,Verilog语言程序代码。其大致思想为通过频率控制字和相位控制字去控制正弦函数的ROM存储表的地址并对应着得到其幅度值,最终达到输出需要波形的目的。 本设计除了完成指定的任务。在此基础上,为了验证实验结果我们通过QuartusII的仿真工具对设计的DDS进行了仿真,并且还进行了理论分析,发现理论和实践结合的非常好。 【关键词】FPGA DDS Verilog 波形发生器 Quartus II 1.设计要求 (1)设计并实现一个可产生正弦波、三角波波形发生器; (2)其工作频率为50MHz,可产生1MHz、2MHz、3MHz、4MHz、5MHz的正弦波、三角波。所产生波形的幅度、相位均可调整,输出数据的字长为12 bit。若波形的频率为n MHz,则相位的最小调幅为2π*n/60; (3)要求进行4级幅度调整,即ROM中存储的数据字长为10 bit,ROM输出的数据分别乘以001、010、011、和100。 2.设计原理及分析 本波形发生器的设计总共包含有频率选择、波形选择、相位选择和幅度选择四个大块。其具体结构见图2-1. 图2-1 整体设计方案 2.1DDS基本原理 DDS的基本原理是利用采样定量,通过查表法产生波形。DDS的结构有很多种,其基本的电路原理可用图2-2来表示。 图2-2 DDS基本电路原理图 其中,相位累加器由N位加法器与N位累加寄存器级联构成如图2-3: 图2-3 相频累加器 每来一个时钟脉冲c f ,加法器将控制字k 与累加寄存器输出的累加相位数据相加,把相加后的结果送到累加寄存器的数据输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位加累加。由此可以看出,相位累加器在每一个时钟输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位,相位累加器的输出频率就是DDS 输出的信号频率。 接着,把相位累加器输出的数据作为波形存储器(ROM)的相位取样地址。这样就可把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出(可以看成是一种映射),完成相位到相应幅值转换。 2.2频率选择 基于DDS的波形发生器,其输出波形的频率由两方面决定。一方面是由频率控制字,即波形输出的步长决定;另一方面是由波形点输出的固有频率决定。 DDS 输出信号的频率与基准时钟频率的关系由下式给定: 其中, c f 为基准时钟频率,2N 为波形存储器的字数,N 为相位累加器的位数, k 为频率控制字。一般的, k 小于N。假设基准时钟频率为131kHz,累加器为8 位,k=4,则f out= 2048 Hz。 2.3波形选择 本设计要实现三角波和正弦波这两种波形的输出。所以,在整个模块设定了一个输入控制端。通过查询这个输入控制端的电平的高低来确定输出正弦波还是输出三角波。其实质还是利用了rom表完成了对相同相位的不同幅度的输出。 2.4初相位选择 本设计中,对于产生的波形的初相的控制我们同样设定了一个输入控制端。通过控制端的不同状态给波形添加不同的初相。其原理是对相频累加器的初次输出加上一个特定的值。在本设计中无法实现初相的任意值设定。本设计只是设定了几个特定的初相供选择已验证理论的正确性。 2.5幅度选择 按照设计要求,波形的最终输出幅度值是可调节的。设计要求中规定幅度值是能够按照1到4倍的大小调节的。故在本设计中,在最后输出前,我们增加了一个幅度按调节的部分。将相位幅度转换成功后的值再乘上一个要求的调幅系数为最终的波形输出。 3.各模块代码及电路原理图 3.1.频率控制字 module f_ctr(sel,f_out,en,reset); input[2:0] sel; input en,reset; output[8:0] f_out; reg[8:0] f_out; always @ (sel) begin if(!reset) f_out = 9b000000000; els

文档评论(0)

youshen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档