3.DDS设计(有错误)

这篇博客详细介绍了DDS(直接数字频率合成)的工作原理和设计过程。通过Quartus生成的电路RTL图展示了相位累加器的不同状态,当频率控制字分别为10、20和60时,输出频率分别为500KHz、1MHz和3MHz。博主分享了Verilog代码、Matlab代码以及正弦波信号的频谱分析,强调了MATLAB基础的重要性。
摘要由CSDN通过智能技术生成

1.人工绘制的 电路结构RTL设计图

这里写图片描述
DDS 具体工作过程如下:每来一个时钟脉冲CLK,N位全加器将频率控制字FQWD与累加寄存器输出的累加相位数据N相加,把相加后的结果送至累加寄存器的输入端。累加寄存器一方面将上一时钟周期作用后所产生的新的数据反馈到加法器的输入端,以使加法器在下一时钟的作用下继续与频率控制数字相加;另一方面将这个值作为取样地址值送入幅度/相位转换电路,此电路根据取样地址输出相应的波形数据。最后经D/A 转换器和低通滤波器将波形数据转换成所需要的模拟波形。
DDS的工作原理:在本次实验中一共用了4个拨码开关SW[3..0],其中拨码开关SW[3]用于频率控制时能,SW[2..0]用于产生不同的频率控制字,根据输出频率公式: f=(Mfc2N) f = ( M ∗ f c 2 N ) ,已知相位累加器的位数N=10,故要输出某一确定频率即调整频率控制字M的大小即可。

2.Quartus扫描生成的电路RTL图

这里写图片描述
(1)generate_freq_word模块的RTL结构图:
这里写图片描述
(2)phase_accumulator模块的RTL结构图:
这里写图片描述
(3)DDS_CORE_ROM模块的RTL结构图:
这里写图片描述

3.相位累加器的输出,SignalTap截图

(1)当频率控制字:FQWD=10

此时一个完整的正弦波周期采样102个点,在50MHZ的晶振脉冲下,采样一个点的时间为0.02s,故当频率控制字为10时,输出正弦波的频率约为: f=(

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值