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

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

软件:VIVADO

语言:Verilog

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


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


演示视频:

设计文档:

设计文档.doc

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)

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 基于FPGA的DDS IP核设计Verilog代码VIVADO仿真

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员