找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3827|回复: 1
收起左侧

基于FPGA的DDS频率合成器设计视频教程与源码下载

[复制链接]
ID:329736 发表于 2018-5-14 22:43 | 显示全部楼层 |阅读模式
FPGA dds的全套设计资料分享给51hei的朋友们,有需要可以下载学习。

下面是DDS频率合成器视频教程内容截图(代码讲解):
0.jpg
QQ图片20180514224054.png
部分源程序如下:
  1. `timescale 1ns / 1ps
  2. /*==============================================================================
  3. Engineer            : Xjtao
  4. Module Hierarchy    : top function module
  5. Design Name         : dds_module.v
  6. Module Name         : dds_module
  7. Project Name        : test_project_top.qsf
  8. Target Devices      : Altera
  9. Tool versions       : QUARTUSII11.0/Windows XP
  10. Description         : DDS模块实现将cos及sin数据产生,输出频率:(Fs*i_nco/500)MHz
  11. Dependencies        :                       
  12. Revision            : 0.01 - File Created
  13. Additional Comments : ROM存储数据的个数,fs/fmin=25/0.05=500
  14. ==============================================================================*/
  15. module dds_module(
  16.   input          i_fpga_clk          ,//25MHz
  17.   input          i_rst_n                  ,
  18.   input   [8:0]  i_nco                    ,//频率控制字

  19.   output  [7:0]  o_cos                    ,//余弦波
  20.   output  [7:0]  o_sin                     //正弦波
  21. );
  22. //================================================================================
  23. // 0、        频率控制字累加,相位累加
  24. //================================================================================
  25.     wire [8:0]  w_rom_addr  ;
  26. dds_phase_acc #(
  27.         .NCO_WIDTH         (9           ),  //nco配置位宽                     
  28.         .ADDR_WIDTH (9           )  //输出地址位宽
  29. )u0_dds_phase_acc (
  30.     .i_fpga_clk (i_fpga_clk ) ,
  31.     .i_rst_n    (i_rst_n    ) ,
  32.     .i_frq_nco  (i_nco      ) ,

  33.     .o_rom_addr (w_rom_addr )
  34.    );
  35.    
  36. //================================================================================
  37. // 1、        根据累加相位查找cos及sin的ROM,产生正余弦信号
  38. //================================================================================
  39.         wire [7:0] w_cos ;
  40.         wire [7:0] w_sin ;
  41. dds_cos_rom u1_dds_cos_rom(
  42.   .i_fpga_clk        (i_fpga_clk) ,
  43.   .i_rst_n    (i_rst_n   ) ,
  44.   .i_rd_addr  (w_rom_addr) ,
  45.   .o_cos      (w_cos     )
  46.   );

  47. dds_sin_rom u2_dds_sin_rom(
  48.   .i_fpga_clk        (i_fpga_clk) ,
  49.   .i_rst_n           (i_rst_n   ) ,
  50.   .i_rd_addr         (w_rom_addr) ,
  51.   .o_sin             (w_sin     )
  52.   );
  53.         
  54. //================================================================================
  55. // 2、        output                                                                  
  56. //================================================================================
  57.         assign o_cos = w_cos        ;
  58.         assign o_sin = w_sin        ;
  59.         
  60. //================================================================================
  61. endmodule
复制代码

所有资料51hei提供下载:
Advanced_Lab01_DDS design.rar (13.78 MB, 下载次数: 72)

评分

参与人数 2黑币 +55 收起 理由
jiangquancai + 5 很给力!
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:502774 发表于 2020-5-30 09:12 | 显示全部楼层
资料还不错哟
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表