精华内容
下载资源
问答
  • 自制DDS原理图及代码

    2017-11-02 10:13:08
    1.将电路在整理一下,去掉转换电压芯片,使用STC89LE58单片机直接控制。 2.将DDS芯片后面的孔打大(大小和DDS芯片自带散热片一样大),在必要的时候加 散热片或者风扇。 3.最好把匹配网络做出来,使信号波形更好。 4...
  • 本设计实现利用两片dds芯片输出可调相位的双路信号源
  • DDS原理

    2019-04-28 13:26:44
    DDS技术是一种全新的频率合成方法,最早由JOSEPH TIERENY等三人提出,其具有输出频率分辨率高、功耗低、频率切换速度快且频率切换时输出信号的相位连续的特点...中,相位累加器是由N位加法器与N位累加寄存器构成,...

    DDS技术是一种全新的频率合成方法,最早由JOSEPH TIERENY等三人提出,其具有输出频率分辨率高、功耗低、频率切换速度快且频率切换时输出信号的相位连续的特点。为此,了解DDS模块对数字信号处理及其硬件实现有着很重要的作用。

    DDS的结构主要由相位累加器、波形存储器、数模(D/A)转换器和低通滤波器等四个大的结构组成。其结构框图如下

    这里写图片描述

    图中,相位累加器是由N位加法器与N位累加寄存器构成,它是DDS模块中一个极其重要的部分。在参考频率时钟的驱动下,DDS模块开始工作;当每来一个参考时钟时,累加器就把频率控制字FW与寄存器输出的值进行累加,将相加后的结果再输入到寄存器中,而累加寄存器就将在上一个参考时钟作用时产生的数据通过反馈的方式输送到累加器中。这样,在时钟的作用下,就可以不停的对频率控制字进行累加。此时,用相位累加器输出的数据作为地址在波形存储器中通过查找地址所对应的幅值表,就可以完成其从相位到幅值之间的转化。

    在DDS模块中,输出频率的公式为
    这里写图片描述
    输出信号的频率分辨率为
    这里写图片描述
    从上两式可以看出,在参考信号与加法器或寄存器的位数给定时,信号最终的输出频率主要由频率控制字决定。故当频率控制字变化时,输出频率也跟着变化,从而可以实现调频的基本功能。

    展开全文
  • DDS原理简介

    2012-08-06 23:04:06
    讲解清楚的PPT,有有真相 由上面的推导可以看出,只要对相位的量化值进行简单的累加运算,就可以得到正弦信号的当前相位值;...直接数字合成器DDS就是根据上述原理而设计的数字控制频率合成器
  • DDS原理与实现

    2021-02-09 11:28:02
    一、DDS基本原理 DDS(Direct Digital Synthesizer)即数字合成器,是一种新型的频率合成技术,具有相对带宽大,频率转换时间短、分辨率高和相位连续性好等优点。较容易实现频率、相位以及幅度的数控调制,广泛应用于...

    一、DDS基本原理

    DDS(Direct Digital Synthesizer)即数字合成器,是一种新型的频率合成技术,具有相对带宽大,频率转换时间短、分辨率高和相位连续性好等优点。较容易实现频率、相位以及幅度的数控调制,广泛应用于通信领域。
    DDS 的基本结构图如图所示:
    DDS基本结构图
    由图可以看出,DDS主要由相位累加器相位调制器波形数据表以及 D/A 转换器构成。
    其中相位累加器由 N 位加法器与 N 位寄存器构成。每个时钟周期的时钟上升沿,加法器就将频率控制字累加寄存器输出的相位数据相加,相加的结果又反馈至累加寄存器的数据输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加。即在每一个时钟脉冲输入时,相位累加器便把频率控制字累加一次。
    相位累加器输出的数据就是合成信号的相位。相位累加器的溢出频率,就是DDS输出的信号频率。相位累加器输出的数据,作为波形存储器的相位采样地址,这样就可以把存储在波形存储器里的波形采样值经查表找出,完成相位到幅度的转换。波形存储器的输出数据送到D/A转换器,由D/A转换器将数字信号转换成模拟信号输出。

    DDS 信号流程示意图如图所示:
    DDS 信号流程示意图
    这里相位累加器位数为N位(N的取值范围实际应用中一般为24~32),相当于把正弦信号在相位上的精度定义为N位,所以其分辨率为1/2N
    若DDS的时钟频率为Fclk,频率控制字fword为1,则输出频率为Fout=Fclk/2N,这个频率相当于“基频”。若fword为B,则输出频率为Fout= B×Fclk/2N
    从上式分析可得,当系统输入时钟频率Fclk不变时,输出信号频率由频率控制字B所决定,由上式可得:B=2N×Fout/Fclk。其中B为频率字且只能取整数。为了合理控制ROM的容量,此处选取ROM查询的地址时,可以采用截断式,即只取32位累加器的高M位。这里相位寄存器输出的位数一般取10~16 位。

    一个完整周期的正弦信号的波形总共有 33 个采样点,其中第 1 点和第
    33 点的值相同,第 33 点为下一个周期的起始点,因此,实际一个周期为 32 个采样点在这里插入图片描述
    若DAC芯片每1ms完成一次转换,则输出一个完整的正弦波形需要32ms,输出信号的频率为1000/32Hz。
    如果需要其16ms输出一个完整的波形,则每次输出的需要舍弃一半的点。我们可以选择输出(1、3、5、7……29、31)这些点,因为采用这些点,我们还是能够组成一个完整的周期的正弦信号,而输出时间缩短为一半,即频率提高了一倍,变为1000/16Hz。
    如果需要其64ms输出一个完整的波形,则只需要以此组数据为基础,每2ms 输出一个数据即可,例如第1ms和第2ms输出第一个点,第3ms和第4ms输出第二个点,以此类推,第63ms和第64ms输出第32个点,即可实现周期加倍,即频率减半的效果。使用该组波形数据输出频率为1000/64Hz的信号。

    对于相位的调整,只需要在每个取样点的序号上加上一个偏移量,便可实现相位的控制。例如,上面默认的是第1ms时输出第一个点的数据,假如我们现在在第1ms时从第9个点开始输出,则将相位左移了90°,这就是控制相位的原理。

    二、DDS仿真与调试

    1.制作波形数据存储器

    打开IP Catalog并编辑单口ROM
    在这里插入图片描述
    在这里插入图片描述
    选中包含有正弦信号信息的.mif文件。
    在这里插入图片描述

    2.编写DDS

    module DDS(
    	input Clk,			//系统时钟
    	input Rst_n,		//系统复位
    	input EN,			//DDS模块使能
    	input [31:0]Fword,	//频率控制字
    	input [11:0]Pword,	//相位控制字
    
    	output DA_Clk,		//DA数据输出时钟
    	output [9:0]DA_Data	//D输出输出A
    );
    	
    	reg [31:0]Fre_acc;	
    	reg [11:0]Rom_Addr;
    
    /*---------------相位累加器------------------*/	
    	always @(posedge Clk or negedge Rst_n)
    	if(!Rst_n)
    		Fre_acc <= 32'd0;
    	else if(!EN)
    		Fre_acc <= 32'd0;	
    	else 
    		Fre_acc <= Fre_acc + Fword;
    
    /*----------生成查找表地址---------------------*/		
    	always @(posedge Clk or negedge Rst_n)
    	if(!Rst_n)
    		Rom_Addr <= 12'd0;
    	else if(!EN)
    		Rom_Addr <= 12'd0;
    	else
    		Rom_Addr <= Fre_acc[31:20] + Pword;	
    
    /*----------例化查找表ROM-------*/		
    	ddsrom ddsrom(
    		.address(Rom_Addr),
    		.clock(Clk),
    		.q(DA_Data)
    	);
    
    /*----------输出DA时钟----------*/	
    	assign DA_Clk = (EN)?Clk:1'b1;
    
    endmodule
    

    3.编写testbench文件

    `timescale 1ns/1ps
    
    module DDS_tb;
    	reg 			Clk;		//系统时钟
    	reg 			Rst_n;	//系统复位
    	reg 			EN;		//DDS模块使能
    	reg [31:0]	Fword;	//频率控制字
    	reg [11:0]	Pword;	//相位控制字
    
    	wire 			DA_Clk;	//DA数据输出时钟
    	wire [9:0]	DA_Data;	//D输出输出A
    	
    	DDS DDS_module(
    		.Clk(Clk),			//系统时钟
    		.Rst_n(Rst_n),		//系统复位
    		.EN(EN),				//DDS模块使能
    		.Fword(Fword),		//频率控制字
    		.Pword(Pword),		//相位控制字
    
    		.DA_Clk(DA_Clk),	//DA数据输出时钟
    		.DA_Data(DA_Data)	//D输出输出A
    	);
    	
    	`define clk_period 20
    
    	initial	Clk <= 1'b1;
    	always #(`clk_period/2) Clk <= ~Clk;
    
    	initial begin
    		Rst_n = 1'b0;
    		EN = 1'b0;
    		Fword = 32'd0;
    		Pword = 12'd0;
    		
    		#(`clk_period*20)
    		Rst_n = 1'b1;
    		#(`clk_period*20)
    		EN = 1'b1;
    		Fword = 32'd5000;
    		#(`clk_period*2000000)
    		$stop;
    	end
    	
    endmodule
    

    4.仿真结果

    在这里插入图片描述
    这样一个DDS模块即设计完成,这里可以自行修改Pword的值进行观察波形相位是否发生相应变化。

    展开全文
  • DDS原理的通俗解释

    2020-09-20 11:51:46
    DDS原理的通俗解释 DDS DDS是直接数字式频率合成器(Direct Digital Synthesizer)的英文缩写,是一项关键的数字化技术。与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用...

    DDS原理的通俗解释

    1. DDS
      DDS是直接数字式频率合成器(Direct Digital Synthesizer)的英文缩写,是一项关键的数字化技术。与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用在电信与电子仪器领域,是实现设备全数字化的一个关键技术。

    2. DDS原理
      2.1. 解释一
      随着数字技术在仪器仪表和通信系统中的广泛使用,可从参考频率源产生多个频率的数字控制方法诞生了,即直接数字频率合成(DDS)。其基本架构如图1所示。该简化模型采用一个稳定时钟来驱动存储正弦波(或其它任意波形)一个或多个整数周期的可编程只读存储器(PROM)。随着地址计数器逐步执行每个存储器位置,每个位置相应的信号数字幅度会驱动DAC,进而产生模拟输出信号。最终模拟输出信号的频谱纯度主要取决于DAC.相位噪声主要来自参考时钟。
      在这里插入图片描述

                                        图1 DDS原理图
      

      相位控制字可以控制初相。频率控制字控制每次相位的步进,进而控制产生信号的频率。
      系统的核心是相位累加器,其内容会在每个时钟周期更新。相位累加器每次更新时,存储在相位寄存器中的数字字M就会累加至相位寄存器中的数字。假设相位寄存器中的数字为00…01,相位累加器中的初始内容为00…00.相位累加器每个时钟周期都会按00…01更新。如果累加器为32位宽,则在相位累加器返回至00…00前需要232(超过40亿)个时钟周期,周期会不断重复。
      相位累加器的截断输出用作正弦(或余弦)查找表的地址。查找表中的每个地址均对应正弦波的从0°到360°的一个相位点。查找表包括一个完整正弦波周期的相应数字幅度信息。(实际上,只需要90°的数据,因为两个MSB(最高有效位,most significant bit,MSB)中包含了正交数据)。因此,查找表可将相位累加器的相位信息映射至数字幅度字,进而驱动DAC,图 2用图形化的“相位轮”显示了这一情况。
      考虑n = 32,M = 1的情况。相位累加器会逐步执行232个可能的输出中的每一个,直至溢出并重新开始。相应的输出正弦波频率等于输入时钟频率232分频。若M=2,相位累加器寄存器就会以两倍的速度“滚动”计算,输出频率也会增加一倍。以上内容可总结如下:
      在这里插入图片描述

                                     图 2数字相位轮
      

      n位相位累加器(大多数DDS系统中,n的范围通常为24至32)存在2n个可能的相位点。相位寄存器中的数字字M代表相位累加器每个时钟周期增加的数量。如果时钟频率为fc,则输出正弦波频率计算公式为:
      f 0 = M*fc/2^n
      该公式称为DDS“调谐公式”。注意,系统的频率分辨率等于fc/2n。n = 32时,分辨率超过40亿分之一!在实际DDS系统中,溢出相位寄存器的位不会进入查找表,而是会被截断,只留下前13至15个MSB。这样可以减小查找表的大小,而且不会影响频率分辨率。相位截断只会给最终输出增加少量可接受的相位噪声。(参见图 3)。
      在这里插入图片描述

      图 3计算得出的输出频谱显示15位相位截断时90 dB SFDR
      DAC的分辨率通常比查找表的宽度少2至4位。即便是完美的N位DAC,也会增加输出的量化噪声。图4显示的是32位相位累加器15位相位截断时计算得出的输出频谱。选择M值后,输出频率会从0.25倍时钟频率开始稍有偏移。注意,相位截断和有限DAC分辨率产生的杂散都至少比满量程输出低90 dB。这一性能远远超出了任何商用12位DAC,足以满足大多数应用的需求。
      显然,相位累加器的位宽 n 越大,频率分辨率就越高。为了完成相位到幅度的转换,转换器(ROM)是必不可少的。随着n 的增大,ROM 的大小是指数增加的,这将会耗用大量资源,有时甚至是不能实现的。在实际的 DDS 中,往往截断相位累加器的输出,取其高 p 位作为 ROM 的输入,则相位截断 B=n -p 。
      在这里插入图片描述

                                 图 4相位截断的DDS模型
      

      上述基本DDS系统极为灵活,且具有高分辨率。只需改变M寄存器的内容,频率就可以立即改变,不会出现相位不连续。但是,实际DDS系统首先需要执行串行或字节加载序列,以将新的频率字载入内部缓冲寄存器,然后再载入M寄存器。这样就可以尽可能减少封装引脚数。新的频率字载入缓冲寄存器后,并行输出相位寄存器就会同步操作,从而同时改变所有位。加载相位缓冲寄存器所需的时钟周期数决定了输出频率的最大改变速率。
      2.2. 解释二
      若对一正弦波形进行采样,每周期为 m 个采样点,分别记为 1~m。 对应每次参考时钟 f c , 输出一个采样点,输出图中所示的一个周期的正弦,需要 m 个时钟周期,则输出的波形频率为 f a =f c/m。对于这种情况, 每次时钟到来时,相位累加器加 1 ,则就会在第 i 个时钟周期输出 第 i 个采样点( i = 1~m) ,第 m + 1 个时钟输出第 1 个采样点,以此循坏,这时的相位累加器实际上是步进为 1 的模 m 计数器。 如果每次时钟到来时, 总是间隔一个采样点输出,即相位累加器的步进为2 ,这时在第 i 个周期输出第 2i 个采样点,输出波形如图 4波形 b,显然波 形 b 的频率是 a 的 2 倍,即 f b = 2 f a 。
      综上所述,如果相位累加器的步进为 B,则输出波形的频率为 B×f a ,f a 是最小的输出频率称为频率分辨率或步进间隔,B 为频率控制字。给定不同的频率控制字即可输出不同的频率。频率输出公式为: f 0 = fc/m* B。
      在这里插入图片描述

                                                     图 5输出波形
      

      在实际设计中,如果累加器长度为N ,则可以有2N 个存储单元存储采样数据,如果我们 对一个周期的波形进行2N 个点的采样,即m = 2N , 此时输出频率f o 和系统时钟频率f c,相位累加器长度N 以及频率控制字B的关系为:f0 = fc*B/2N 。为了使波形输出不失真,根据奈奎斯特定理,B最高为2 N - 1 。另外要提高DDS 的精度,就需要分母越大越好,即采样点的个数越多,越接近实际波形。但实际上不可能提供如此之多的存储空间,这就需要对采样点进行量化。如图 4(c)所示,如果量化单位为K,则前K 个点的值总是相同的,为采样值1 ,第二组K 个采样点的值为采样值2 ,以此类推,第i 组K 个采样点的值为采样值i ,共需要m/K个存储单元 来存储m/K个采样点。

    参考:
    [1]. http://m.elecfans.com/article/574959.html
    [2]. http://www.elecfans.com/news/dianzi/20171103574751.html
    [3]. https://www.sohu.com/a/204979496_467791
    [4]. https://www.bilibili.com/video/av99507362/
    [5]. 王顺岭. 基于FPGA的低杂散直接数字频率合成技术研究[D]. 电子科技大学.

    展开全文
  • DDS AD9952 STC15 程序 和 原理图
  • AD9952 设计 资料 代码 原理图 DDS 扫频 定频
  • DDS芯片AD9851原理图

    2009-08-20 23:20:32
    AD9851的原理图包含了π型CRC滤波电路
  • 资料是DDS正弦信号发生器全套解决方案,照着做就是你自己的模块了,是博主上大学时做的,当时电赛获奖的...基于AD9832实现,包含了原理图、PCB、驱动程序,相关资料,驱动根据自己的MCU稍微匹配下即可,需要的拿走。
  • DDS技术原理

    2014-05-28 17:30:57
    DDS原理以及相关示意. 直接数字合成(Direct Digital Synthesis、DDS)是一种新的频率合成技术和信号产生的方法。直接数字频率合成器(DDS)具有超高速的频率转换时间,极高的频率分辨率和较低的相位噪声,在频率...
  • DDS架构基本原理  随着数字技术在仪器仪表和通信系统中的广泛使用,可从参考频率源产生多个频率的数字控制方法诞生了,即直接数字频率合成(DDS)。其基本架构如1所示。该简化模型采用一个稳定时钟来驱动存储正弦...
  • DDS工作原理

    千次阅读 2018-09-16 16:57:23
    DDS工作原理  DDS技术是一种全新的频率合成方法,最早由JOSEPH TIERENY等三人提出,其具有输出频率分辨率高、功耗低、频率切换速度快且频率切换时输出信号的相位连续的特点。为此,了解DDS模块对数字信号处理及其...

    DDS工作原理 
    DDS技术是一种全新的频率合成方法,最早由JOSEPH TIERENY等三人提出,其具有输出频率分辨率高、功耗低、频率切换速度快且频率切换时输出信号的相位连续的特点。为此,了解DDS模块对数字信号处理及其硬件实现有着很重要的作用。 
    DDS的结构主要由相位累加器、波形存储器、数模(D/A)转换器和低通滤波器等四个大的结构组成。其结构框图如下 
    这里写图片描述

    图中,相位累加器是由N位加法器与N位累加寄存器构成,它是DDS模块中一个极其重要的部分。在参考频率时钟的驱动下,DDS模块开始工作;当每来一个参考时钟时,累加器就把频率控制字FW与寄存器输出的值进行累加,将相加后的结果再输入到寄存器中,而累加寄存器就将在上一个参考时钟作用时产生的数据通过反馈的方式输送到累加器中。这样,在时钟的作用下,就可以不停的对频率控制字进行累加。此时,用相位累加器输出的数据作为地址在波形存储器中通过查找地址所对应的幅值表,就可以完成其从相位到幅值之间的转化。

    在DDS模块中,输出频率的公式为 
    这里写图片描述 
    输出信号的频率分辨率为 
    这里写图片描述 
    从上两式可以看出,在参考信号与加法器或寄存器的位数给定时,信号最终的输出频率主要由频率控制字决定。故当频率控制字变化时,输出频率也跟着变化,从而可以实现调频的基本功能。

    展开全文
  • DDS基本原理研究

    2020-12-15 11:02:01
    转载:DDS基本原理研究 1 主题    本文基于主流DDS(Data Distribution Service–数据分发服务)软件,汇总参考文献对DDS的研究,概要说明发布/订阅过程、数据分发服务设计、实现关键技术等方面,对DDS基本原理...
  • DDS信号发生器设计与实现,包括原理图、PCB、源程序(亲测通过)、测试结果图及相关资料文档,绝对实用
  • DDS架构基本原理  随着数字技术在仪器仪表和通信系统中的广泛使用,可从参考频率源产生多个频率的数字控制方法诞生了,即直接数字频率合成(DDS)。其基本架构如1所示。该简化模型采用一个稳定时钟来驱动存储正弦...
  • 暑假电子竞赛时做的题目 dds正弦信号发生器,还不错 有难度啊。。
  • AD9850_DDS信号发生器介绍: 模块能够输出正弦波和方波,2个正弦波和2个方波输出。...AD9850/AD9850模块dds信号发生器电路原理图PDF档; AD9850/AD9850模块说明; AD9850/AD9850模块测试代码; DDS资料;
  • 这是用于简单DDS生成器的PCB,该电路基于作者昵称Integrator的开发。数字部分在以16MHz频率运行的Atmega8-16AU微控制器和电阻R2R DAC上实现。信号从DAC输出到达缓冲放大器。然后,它通过一个四阶有源低通巴特沃斯...
  • 基于DAC0832的简单DDS信号发生器报告+原理图+PCB图+程序代码+proteus的isis的仿真等文件
  • 基于AD9851的DDS制作(PCB+原理图

    热门讨论 2011-09-15 20:05:37
    这是暑假做全国赛是做的DDS模块,用的是AD9851,电路都是可以用的,当然在做电路是确认下有没有相应封装的电阻电容
  • DDS架构基本原理  随着数字技术在仪器仪表和通信系统中的广泛使用,可从参考频率源产生多个频率的数字控制方法诞生了,即直接数字频率合成(DDS)。其基本架构如1所示。该简化模型采用一个稳定时钟来驱动存储...
  • EP4CE6F17C8的AD原理图及PCB以及用户手册 包含一个DDS的verilog设计
  • FPGA 之 DDS简易 原理阐述

    千次阅读 2018-05-29 09:14:59
    DDS(Direct Digital Synthesizer) 即数字合成器 ,可以通过修改...其原理图如下图所示 下面以代码的形式来解释此图的原理 假设Clk 时钟频率为100MHZ 周期为10ns ,假设 data 可以组成32点正弦波信号 always@...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 199
精华内容 79
关键字:

dds原理图