• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

基于FPGA的DDS IP核设计Verilog代码VIVADO仿真

08/04 08:18
264
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-2406131J305594.doc

共1个文件

名称:基于FPGA的DDS IP核设计Verilog代码VIVADO仿真

软件:VIVADO

语言:Verilog

代码功能:基于DDS的IP核,设计产生2路正弦波,并将2路正弦波叠加,输出叠加后波形

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. Testbench

6. 仿真图

部分代码展示:

`timescale?1ns?/?1ps
//正弦波叠加
module?DDS_top(
input?clk_in,//100M输入
output?[10:0]?wave//波形输出
????);
//DDS输出频率=clk*N/2^16
wire?[31?:?0]?tdata1;//IP核输出
wire?[9:0]?tdata_sine1;//sin波形
//调用DDS?IP核1
dds_IP?i1_dds_IP?(
??.aclk(clk_in),//时钟
??.s_axis_config_tvalid(1'b1),??//?频率控制字输入使能
??.s_axis_config_tdata(16'd655),????//频率控制字(可自行修改),16位,频率控制字655计算出的频率为1MHz
??.m_axis_data_tvalid(),????//?//IP核输出使能
??.m_axis_data_tdata(tdata1)??????//?//IP核输出
);
assign?tdata_sine1????=?tdata1[25:16];//sin波形
wire?[31?:?0]?tdata2;//IP核输出
wire?[9:0]?tdata_sine2;//sin波形
//调用DDS?IP核2
dds_IP?i2_dds_IP?(
??.aclk(clk_in),//时钟
??.s_axis_config_tvalid(1'b1),??//?频率控制字输入使能
??.s_axis_config_tdata(16'd300),????//频率控制字(可自行修改),16位,频率控制字300计算出的频率为457.7KHz
??.m_axis_data_tvalid(),????//?//IP核输出使能
??.m_axis_data_tdata(tdata2)??????//?//IP核输出
);
assign?tdata_sine2????=?tdata2[25:16];//sin波形
assign?wave=$signed(tdata_sine1)+$signed(tdata_sine2)

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=859

  • 2-2406131J305594.doc
    下载

相关推荐