项目简述
本次项目我们主要是为了讲解DDS,所以我们使用了混频这个小项目来讲解。DDS自己手写是比较简单且灵活,但是Xilinx给我们提供了相应的IP核,那么这次我们将直接讲解使用IP来产生不同频率的正弦波。这篇博客我们也首次引入了Xilinx中block design的设计方法,由于AXI4总线的出现,我们使用block design的设计概念特别简单。本次的项目主要是:利用两个DDS产生两个不同频率的正弦波,然后进行***相乘***混频,利用Modelsim进行仿真验证我们实验的正确性。本次实验所用到的软硬件环境为:
1、VIVADO 2019.1软件环境
2、Modelsim仿真环境
DDS IP的定制及讲解
1、我们选择波形与相位同时存在的情况。
2、选择DDS IP输入的系统时钟频率,这里我们选择100MHz。
3、DDS通道的数目,我们这里选择一个。
4、整个IP配置的模式,我们这里选择标准模式即可。
5、参数选择的模式,我们这里选择系统参数,这个选择主要影响IP的定制界面所涉及到的参数。
6、频率的动态范围,主要和DDS内部RAM的数据位宽有关,计算方法是20log2n,其中n为RAM的位宽。
7、选择DDS的最小的频率分辨率。
1、相位增量我们选择固定
2、相位偏执我们也选择成固定,这两个参数可以动态控制输出的频率。
3、我们这里产生正弦波
4、因为我们只考虑正弦波的频率,座椅这里不再输出相位信息
1、输入我们需要DDS输出的频率,这里我们输入5MHz。
其余选项,我们选择默认即可。这样,我们便定制了一个完整的DDS IP核,接下来的博客我们会自己手写相应的DDS的功能,感兴趣的同学可以保持关注。
Block Design涉及
我们这边博客首次引入了block design的设计方法,但是这个设计方法特别重要,希望同学们可以好好学习。进行block design的连线图如下:
然后验证设计的有效性,产生输出工程,生成相应的top文件,供我们接下来的设计使用。
测试文件代码
这里我们为了验证我们实验的正确性,给出相应的测试模块。
`timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 2020/04/03 22:39:17 // Design Name: // Module Name: tb // Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Revision: // Revision 0.01 - File Created // Additional Comments: // // module tb; wire [15:0] P ; reg aclk ; initial begin aclk = 1‘b0; end always #5 aclk = ~aclk; system_wrapper system_wrapper_inst( .P (P ), .aclk (aclk ) ); endmodule
仿真结果
我们进行Modelsim仿真测试的结果如下:
从上面的仿真波形可以验证我们实验的准确性。
编辑:lyn
-
Xilinx
+关注
关注
71文章
2172浏览量
122346 -
IP
+关注
关注
5文章
1724浏览量
150094 -
DDS
+关注
关注
21文章
636浏览量
153023
发布评论请先 登录
相关推荐
如何理解芯片设计中的IP
DDS通信中间件——DCPS规范(下)
![<b class='flag-5'>DDS</b>通信中间件——DCPS规范(下)](https://file.elecfans.com/web2/M00/52/D4/pYYBAGLNkrKAeFJaAAAjXRuImx0496.png)
Vivado中DDRX控制器(mig)ip核配置中关于命令序号选择和地址映射说明
![Vivado<b class='flag-5'>中</b>DDRX控制器(mig)<b class='flag-5'>ip</b>核配置<b class='flag-5'>中</b><b class='flag-5'>关于</b>命令序号选择和地址映射说明](https://file1.elecfans.com/web3/M00/00/13/wKgZPGdGdsqANeiHAAAabIIjepo671.png)
Xilinx DDS IP核的使用和参数配置
![<b class='flag-5'>Xilinx</b> <b class='flag-5'>DDS</b> <b class='flag-5'>IP</b>核的使用和参数配置](https://file1.elecfans.com/web1/M00/F3/B4/wKgZoWcbXXCATrZhAAAai_rONMA247.png)
DDS通信中间件——DCPS规范(上)
![<b class='flag-5'>DDS</b>通信中间件——DCPS规范(上)](https://file.elecfans.com/web2/M00/52/D4/pYYBAGLNkrKAeFJaAAAjXRuImx0496.png)
![](https://file1.elecfans.com/web2/M00/06/E2/wKgaombg2-aAQrFdAAJvPJ56fs0759.jpg)
关于IP地址的那些事儿
TCP IP协议属性设置中的IP配置
如何在ModelSim中添加Xilinx仿真库
![](https://file1.elecfans.com/web2/M00/EA/56/wKgZomZX5nOARv2BAADmGAAN95c730.jpg)
![](https://file1.elecfans.com/web2/M00/E7/44/wKgZomZLI0aASA1LAAEi4broCFk538.png)
FPGA开发如何降低成本,比如利用免费的IP内核
关于MOS管电路工作原理的讲解
![<b class='flag-5'>关于</b>MOS管电路工作原理的<b class='flag-5'>讲解</b>](https://file1.elecfans.com/web2/M00/D5/7C/wKgaomYl51yAUPtbAAAW0vC6Erk606.jpg)
DDS协议测试实践及问题分析
![<b class='flag-5'>DDS</b>协议测试实践及问题分析](https://file.elecfans.com/web2/M00/52/D4/pYYBAGLNkrKAeFJaAAAjXRuImx0496.png)
评论