基于FPGA的DDS信号源.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北师范学院电工电子实验教学省级示范中心电子版实验报告 电工电子中心2009 年5 月绘制 基于FPGA 的DDS 信号源 一、任务解析 DDS (Direct Digital Synthesis 数字频率合成器)信号源就是可以通过按键 可以直接设定信号的输出频率,这时我们就可得到自己想要多少频率的信号, 是一个非常方便的信号源。我们可以利用MAX PLUS II软件提供了非常丰富的参 数化(LPM)模块,在FPGA上实现输出频率可 的信号。 DDS原理 DDS的原理框图如图1所示。图中相位累加器可在每一个时钟周期的上升沿将我 们设定的步进值累加一次,如果计数超过了我们设定的计数值 (N bit),则会 自动溢出,这时我们把高8位的值送去ROM波形中去查表,经过一个DA转换,就 可以得到正弦信号。 图1 DDS原理 M 假设时钟为2 Hz,数据保持寄存器选择N Bit,在时钟驱动下,累加器输 出结果S 被反馈到累加器输入端B,B 和A 的数据被累加到S,下一个时钟脉冲 又将S 反馈到B,再次与A 累加到S,下一个时钟脉冲又将S 反馈到B,如此循 环累加,实现按步进值,按时钟节拍循环累加,使得N Bit 数据被徐循环累加, 产生循环扫描的地址码0~255 (高8 Bit)。完成一次地址循环需要的时间由时 钟和步进值决定,可以由公式计算: 北师范学院 物电学院 0803 班 六月未央制作 第2页,共18页 北师范学院电工电子实验教学省级示范中心电子版实验报告 2N 1 T A 2M 一次地址循环可以输出一个完整的波形,既T 就是输出波形的周期,转换 成频率f x ,得到计算公式: 1 2N 1 2M M , f x N A f x A 2 2 M 当晶振 (2 )和计数器Bit数N确定之 ,f x 既与步进值A成正比,对A的调整可 以完成对f 的设定,当N足够大时,比例常数2(M N ) 可以很小,例如0.01,既f x x 等于A的0.01倍,这样就可以实现对f x 的精细调整。 初步设定S的宽度为24 bit,由于我们现实中不存在晶振的频率刚好是2的多 6 少次方,譬如我们实验箱的晶振是24MHz的。这个时候24 10 1.4305 ,该如 24 2 何设定 使得我们每次把步进值增加1,就可以实现频率也加1呢?对了,把步进 24 值A设为 2 0.6991 ,这样相乘就是1Hz了,事实也是这样实现的。但是 6 24 10 这时又遇到难题了,步进值是不能设为小数,该怎么办呢?那可不可以这样呢, 把步进值A乘以0.6991,这时候步进值A不就是频率f了吗?而MAX PLUSS II中也 存在乘法器,这样难题不就解决了吗?我做的DDS信号源就是这

文档评论(0)

PPT精品 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档