什么是DDS正弦发生器信号发生器

 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
基于DDS正弦信号的信号发生器
下载积分:1200
内容提示:基于DDS正弦信号的信号发生器
文档格式:PDF|
浏览次数:0|
上传日期: 02:31:09|
文档星级:
该用户还上传了这些文档
基于DDS正弦信号的信号发生器
官方公共微信豆丁精品文档: dds信号发生器 dds函数信号发生器 dds信号发生器设计 dds信号源 d..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
DDS信号发生器原理
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口虽然临近考试,还是偷着时间把DDS的初级操作给搞定了,O(∩_∩)O哈哈哈。从搞清理论原理,到下载调试出波形,还真费了点功夫。
这也算从VHDL转战verilog的第一仗吧,把模块化设计小过了把瘾,嘿嘿……
不管这能不能算个项目,但我还是在短时间内弄出来了,至于细节问题还有功能加强,考试之后再说喽!
& 首先还是要理清DDS中的理论计算关系,好的设计总是靠些理论的,呵呵。以输出信号为正弦信号为例好啦,主要关系和公式如下。
我们都知道,输出的正弦信号的相位是:,三角函数而已啦!
为把t数字化(量化),选取基准时钟(系统时钟)和基准相位(把2分成2N等份),从而使得每个相位都有一个量化值,基准相位就是相位量化的精度。
在基准时钟的一个周期内,输出信号相位增量为:
& 这样就可以把相位增量量化为:,由于是整数,会产生量化误差。
所以,就可以变换得到输出频率:,可知,和是线性关系,所起到的作用就是对基准时钟进行分频得到输出时钟,且有:
DDS的频率分辨率为: ,即此时=1,输出时钟频率最小。
& DDS的基本工作流程就是通过相位的累加,得到当前的相位值,然后用当前的相位值(转换为ROM地址)进行查表,得到相应的幅值,然后输出。 相位累加器的输入,也称频率字,就是相位增量的量化值。
其实最终有用的公式就是求频率字的这一个:
DDS主要由相位累加器、相位调制器、ROM查找表和DAC。其中,相位调制器用于信号的相位调制,设计波形发生器时可以不用。
由于没有示波器,所以DAC部分也不设计,采用SignalTap II 观察。(示波器?YY下吧!)
DDS的基本原理框图如下;
ROM中的数据量由DAC位数决定,假设精度为10位,则ROM中需要存放一个周期的1024个点的数据,而每个点的数据大小由此点的幅度值确定。 对ROM的读取时钟频率就是。当然ROM的数据要由C或MATLAB得到啦,手动输入的话早就吐血了。
& 这次实验,采用的基准时钟是50MHZ,所取输出时钟是1KHZ。SignalTapII所得波形如下,这波形还算过得去啊:
程序部分倒是没有遇到什么问题,可是一开始居然挂在mif文件上,幸好在群里头遇到高人,用MATLAB重新弄了个,终于得到正确结果!
离场悲剧对DDS工作原理的解释可谓一针见血:
阅读(...) 评论() 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
基于fpga的正弦信号发生器
下载积分:1000
内容提示:基于fpga的正弦信号发生器
文档格式:DOC|
浏览次数:45|
上传日期: 14:50:01|
文档星级:
该用户还上传了这些文档
基于fpga的正弦信号发生器
官方公共微信}

我要回帖

更多关于 正弦发生器 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信