名称:调用DDS IP核输出正弦波Verilog代码vivado仿真
软件:vivado
语言:Verilog
代码功能:调用DDS IP核输出正弦波
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. Testbench
6. 仿真图
部分代码展示:
`timescale?1ns?/?1ps ////////////////////////////////////////////////////////////////////////////////// //?Company:? //?Engineer:? //? //?Create?Date:?2020/07/19?18:03:39 //?Design?Name:? //?Module?Name:?DDS_top //?Project?Name:? //?Target?Devices:? //?Tool?Versions:? //?Description:? //? //?Dependencies:? //? //?Revision: //?Revision?0.01?-?File?Created //?Additional?Comments: //? ////////////////////////////////////////////////////////////////////////////////// //DDS,1MHz?dds?正弦波 module?DDS_top( input?clk_in,//100M输入 output?[9:0]?wave//波形输出 ????); wire?m_axis_data_tvalid;//IP核输出使能 wire?[31?:?0]?m_axis_data_tdata;//IP核输出 wire?[9:0]?m_axis_data_tdata_cosine;//cos波形 wire?[9:0]?m_axis_data_tdata_sine;//sin波形 assign?m_axis_data_tdata_cosine??=?m_axis_data_tdata[9:0];//cos波形 assign?m_axis_data_tdata_sine????=?m_axis_data_tdata[25:16];//sin波形 //DDS输出频率=clk*N/2^16 //调用DDS?IP核 dds_IP?i_dds_IP?( ??.aclk(clk_in),//时钟 ??.s_axis_config_tvalid(1'b1),??//?频率控制字输入使能 ??.s_axis_config_tdata(16'd655),????//频率控制字,16位,频率控制字655计算出的频率为1MHz ??.m_axis_data_tvalid(m_axis_data_tvalid),????//?//IP核输出使能 ??.m_axis_data_tdata(m_axis_data_tdata)??????//?//IP核输出 ); assign?wave=m_axis_data_tdata_sine;//输出波形 endmodule
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=476
阅读全文
987