DDS各项参数的计算

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

研究了几天基于DDS技术的函数信号发生器,断断续续获得了一些收获。DDS--DirectDigitalFrequencySynthesis(直接数字频率合成技术)至于利用DDS制作函数信号发生器的优点我就不说了,百度一下,一切皆了然。这里介绍一下利用Verilog语言编写DDS的思想。当然网上也有很多参考资料,都介绍得不错,也有用单片机做的,不过我觉得利用单片机来做对于低频来说完全没问题,但是对于高频来说就完全没有效果了。首先介绍一下DDS的整体思想:整个DDS的模拟框图如下:其核心就是频率控制,相位控制和相位累加。主要参数有:频率步进精度、相位步进精度、DAC的位数以及滤波器的设计。那么怎么去确定这些参数呢,我个人理解如下:1.频率步进精度就决定了程序中相位累加器的位数(一般介绍都是取24-32位,但是具体怎么取没有明确给出),同时也要取决于FPGA的时钟(这里以50MHz为例)也就是说采用30位的相位累加器可以达到0.046Hz。根据不同的位数和系统的时钟就可以确定频率的精度了。2.相位步进:相位步进主要是调解输出波形的相位。这里就还涉及到采样深度(也就是对正弦波的采样点数,这里以4096为例)根据不同的相位精度,求出X即得到相位控制字。如:相位步进5度,那么计算出来X=56.88888。3.DAC的选取:根据要求的输出幅度的精度和输出频率。如:选择8位的DAC,其电压精度为,而选择电流型DA和选择电压型DA则得根据输出频率要求而定。电流型DAC转换速度不如电流型DAC。4.滤波器的设计:滤波器在整个设计过程中起到非常重要的作用。前面DAC转换后会携带很多噪声和杂波,通过频率响应较好的滤波器则可以充分的将杂波和噪声滤除掉,从而得到较好的波形。5.涉及的主要计算公式:1).即M为频率控制字,改变M的值即可改变输出频率。N为相位累加器的位数,Fc为系统的时钟频率。例:Fc=50MHz,N=30;Fout=1KHz,则相位累加器每次累加的数(频率控制字)M=21474.83648(取21475)注意:1.由取样定理,所产生的信号频率不能超过时钟频率的一半,在实际运用中,为了保证信号的输出质量,输出频率不要高于时钟频率的33%,以避免混叠或谐波落入有用输出频带内。2.相位累加器输出位并不全部加到查询表,而要截断。相位截断减小了查询表长度,但并不影响频率分辨率,对最终输出仅增加一个很小的相位噪声。DAC分辨率一般比查询表长度小2~4位。2).相位控制字:X为rom表的采样点数,p为相位,a为相位控制字。即按照要求输出的相位,计算出a的值,将a累加给相位累加器,即可输出该相位上的的波形。

1 / 2
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功