0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅析Vivado的IP核DDS使用方式及注意事项

Hx 来源:CSDN威廉希尔官方网站 社区 作者:雷凌峻毅 2021-04-27 15:52 次阅读

vivado提供了DDS IP核可以输出正余弦波形,配置方法如下

打开VIVADO,选择IP Catalog

100062957-125934-01.jpg

输入DDS,找到DDS IP核,双击打开

100062957-125935-02.jpg

打开IP核配置,parameter Selection选择System Parameters

设置System Parameters参数

Spurious Free Dynamic Range的设置,这个参数与输出数据的宽度相关。

100062957-125936-03.jpg

我需要位宽为10位的输出,因此Spurious Free Dynamic Range设置为10*6=60

Frequency Resolution的设置,这个参数与输出相位数据的宽度相关,如果想要得到16bit的宽度,channels为1,系统输入时钟为100MHz

Frequency Resolution = 100000000/2^16 = 1525.8789025

设置如图:

100062957-125937-04.jpg

设置Phase Increment Programmability和Phase offset programmability为固定模式,输出为正弦波

100062957-125938-05.jpg

设置输出频率10M

100062957-125939-06.jpg

查看配置好的DDS参数

100062957-125940-07.jpg

编写代码和TESTBENCH,进行仿真

顶层程序

`timescale 1ns / 1ps module top( input clk_100m, input rst_n, ///DAC0/ output [9:0]DAC0_D, output DAC0_CLK, output DAC0_PD ); wire [15:0]dac_data; wire phase_tvalid; wire [15:0]phase_data; wire dds_valid; dac dac_ini( .clk_100m(clk_100m), .dac_data(dac_data), .DAC0_D(DAC0_D), .DAC0_CLK(DAC0_CLK), .DAC0_PD(DAC0_PD) ); dds_compiler_0 dds_compiler_0_ini( .aclk(clk_100m), .m_axis_data_tvalid(dds_valid), .m_axis_phase_tvalid(phase_tvalid), .m_axis_phase_tdata(phase_tdata), .m_axis_data_tdata(dac_data) ); endmodule

testbench

`timescale 1ns / 1ps module top_tb( ); reg clk_100m; reg rst_n; wire [9:0]DAC0_D; wire DAC0_CLK; wire DAC0_PD; initial begin clk_100m = 1‘b0; rst_n = 1’b1; #10 rst_n = 1‘b0; #500 rst_n = 1’b1; end always #5 clk_100m = ~clk_100m; top top_ini( .clk_100m(clk_100m), .rst_n(rst_n), .DAC0_D(DAC0_D), .DAC0_CLK(DAC0_CLK), .DAC0_PD(DAC0_PD) ); endmodule

testbench

`timescale 1ns / 1ps module top_tb( ); reg clk_100m; reg rst_n; wire [9:0]DAC0_D; wire DAC0_CLK; wire DAC0_PD; initial begin clk_100m = 1‘b0; rst_n = 1’b1; #10 rst_n = 1‘b0; #500 rst_n = 1’b1; end always #5 clk_100m = ~clk_100m; top top_ini( .clk_100m(clk_100m), .rst_n(rst_n), .DAC0_D(DAC0_D), .DAC0_CLK(DAC0_CLK), .DAC0_PD(DAC0_PD) ); endmodule

仿真时注意DDSIP核输出的是有符号数,因此需要将DDS输出的数据设置成有符号数,即将仿真数据radix为signed decimal

100062957-125941-08.jpg

注意:因为DDSIP核输出的是有符号数,因此虽然我们设置的是10位的位宽,但输出数据共有16位,因为需要高位来作补码。在使用时只用低10位即可。
编辑:lyn

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • DDS
    DDS
    +关注

    关注

    21

    文章

    633

    浏览量

    152638
  • IP核
    +关注

    关注

    4

    文章

    327

    浏览量

    49485
  • Vivado
    +关注

    关注

    19

    文章

    812

    浏览量

    66482
收藏 人收藏

    评论

    相关推荐

    多层板埋孔设计注意事项

    多层板埋孔设计注意事项
    的头像 发表于 12-20 16:06 102次阅读

    PCBA生产注意事项

       PCBA生产注意事项。 长按识别二维码关注[现代电子装联工艺威廉希尔官方网站 ]订阅号,开启我们共同的学习之旅 end
    的头像 发表于 11-15 17:04 368次阅读
    PCBA生产<b class='flag-5'>注意事项</b>

    Vivado中FFT IP的使用教程

    本文介绍了Vidado中FFT IP的使用,具体内容为:调用IP>>配置界面介绍>>IP
    的头像 发表于 11-06 09:51 755次阅读
    <b class='flag-5'>Vivado</b>中FFT <b class='flag-5'>IP</b><b class='flag-5'>核</b>的使用教程

    Xilinx DDS IP的使用和参数配置

    用RAM实现一个DDS,从原理上来说很简单,在实际使用的时候,可能没有直接使用官方提供的IP来的方便。这个博客就记录一下,最近使用到的这个DDS
    的头像 发表于 10-25 16:54 801次阅读
    Xilinx <b class='flag-5'>DDS</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>的使用和参数配置

    如何为住宅配置静态IP:步骤与注意事项

    为住宅配置静态IP地址,通常涉及以下步骤和注意事项
    的头像 发表于 10-24 08:02 226次阅读

    绕线电感定制的注意事项

    电子发烧友网站提供《绕线电感定制的注意事项.docx》资料免费下载
    发表于 09-20 11:24 0次下载

    共模电感定制的注意事项

    电子发烧友网站提供《共模电感定制的注意事项.docx》资料免费下载
    发表于 09-04 11:47 0次下载

    LiFePO4设计注意事项

    电子发烧友网站提供《LiFePO4设计注意事项.pdf》资料免费下载
    发表于 09-03 09:24 0次下载
    LiFePO4设计<b class='flag-5'>注意事项</b>

    FMD LINK 使用注意事项

    电子发烧友网站提供《FMD LINK 使用注意事项.pdf》资料免费下载
    发表于 05-06 10:11 0次下载

    EMI / Safety观念简介及注意事项

    电子发烧友网站提供《EMI / Safety观念简介及注意事项.ppt》资料免费下载
    发表于 02-28 09:45 1次下载

    浪涌抑制器的应用及注意事项

    浪涌抑制器的应用及注意事项?|深圳比创达电子
    的头像 发表于 01-19 09:55 730次阅读
    浪涌抑制器的应用及<b class='flag-5'>注意事项</b>?

    STM32ADC中断的使用注意事项和优化建议

    使用中断是提高系统性能和精确度的关键。本文将详细介绍STM32ADC中断的使用注意事项和优化建议。 注意事项: 1. 合理选择中断触发方式:STM32ADC可以通过软件触发(软件启动转换模式)和硬件触发(定时器、外部事件等)两种
    的头像 发表于 01-12 15:17 3379次阅读

    测速电机: 常见6大注意事项

    测速电机: 常见6大注意事项!测速电机是一种用于测量物体运动速度的设备,广泛应用于工业生产和科学研究中。测速电机常见的6大注意事项以确保安全和准确性。
    的头像 发表于 01-11 10:53 481次阅读
    测速电机: 常见6大<b class='flag-5'>注意事项</b>

    光缆安装的主要注意事项

    光缆安装的主要注意事项  光缆安装是建设光纤网络的关键步骤之一,其正确安装对于网络质量和稳定性至关重要。下面将为大家详细介绍光缆安装的主要注意事项。 首先,光缆安装前要进行规划和设计。在实施光缆安装
    的头像 发表于 12-27 15:02 816次阅读

    DC电源模块有哪些注意事项和使用技巧?

    DC电源模块有哪些注意事项和使用技巧?
    的头像 发表于 12-25 13:59 605次阅读
    DC电源模块有哪些<b class='flag-5'>注意事项</b>和使用技巧?