• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

小梅哥-DDS原理和代码

武飞扬头像
一只准备起飞的小菜鸟
帮助1

一.DDS是什么?

DDS(Direct Digital Synthesis):是一种信号产生器。

二.DDS公式原理及结构图

学新通

2.1频率控制字控制输出频率的原理

DDS主要通过频率控制字(FWORD)和相位控制字(PWORD)来对信号的频率和相位进行改变。输出频率的公式为学新通,其中B是FWORD,Fclk为系统时钟。公式这么写的原理推导如下:学新通

 2.2相位控制字控制输出相位的原理

由DDS结构图可知频率控制字对频率进行改变后,将其和相位控制字进行了相加,然后通过相位控制字的值改变输出波形相位。原理如下:学新通

三.代码部分及其详细解释

  1.  
    module DDS(
  2.  
    clk,
  3.  
    reset,
  4.  
    Fword,
  5.  
    Pword,
  6.  
    data
  7.  
    );
  8.  
    input clk;
  9.  
    input reset;
  10.  
    input [31:0]Fword;//取32位是因为想让频率范围调整范围变大,对应2的32次方。
  11.  
    input [11:0]Pword;//采样点是4096个,所以需要0-4095位,4095就需要12位。
  12.  
    output [13:0]data;//输出是14位,因为数模转换模块是14位的。
  13.  
    reg [31:0]Fword_r;
  14.  
    reg [11:0]Pword_r;
  15.  
    reg [31:0]Freg_acc;
  16.  
    reg [11:0]Rom_addr;
  17.  
    ROM ROM(
  18.  
    .clka(clk),
  19.  
    .addra(Rom_addr),
  20.  
    .douta(data)
  21.  
    );
  22.  
    //频率控制字的寄存器
  23.  
    always@(posedge clk or posedge reset)
  24.  
    if(!reset)
  25.  
    Fword_r<=0;
  26.  
    else
  27.  
    Fword_r<=Fword;
  28.  
    //相位控制字的寄存器
  29.  
    always@(posedge clk or posedge reset)
  30.  
    if(!reset)
  31.  
    Pword_r<=0;
  32.  
    else
  33.  
    Pword_r<=Pword;
  34.  
    //相位累加寄存器
  35.  
    always@(posedge clk or posedge reset)
  36.  
    if(!reset)
  37.  
    Freg_acc<=0;
  38.  
    else
  39.  
    Freg_acc<=Freg_acc Fword_r;
  40.  
    //波形地址获取
  41.  
    always@(posedge clk or posedge reset)
  42.  
    if(!reset)
  43.  
    Rom_addr<=0;
  44.  
    else
  45.  
    Rom_addr<=Freg_acc[31:20] Pword_r;
  46.  
     
  47.  
    endmodule
学新通

代码中的Rom_addr<=Freg_acc[31:20] Pword_r;中Freg_acc[31:20]取前12位的原因如下:学新通

四.疑惑与问题

小梅哥在testbench验证输出频率是否正确时使用的公式是学新通(其中的2^N是指采样点数)小梅哥视频使用的正弦信号采样点是4096(2^12),但是在计算时确把2^N带入2^32次方,这是为什么?

解答:学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgfageh
系列文章
更多 icon
同类精品
更多 icon
继续加载