0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

DDS直接数字式频率合成器基本原理及性能特点

FPGA之家 来源:FPGA之家 作者:FPGA之家 2022-11-28 09:27 次阅读

1. 什么叫DDS

直接数字式频率合成器DDS(Direct Digital Synthesizer),实际上是一种分频器:通过编程频率控制字来分频系统时钟(SYSTEM CLOCK)以产生所需要的频率。

DDS 有两个突出的特点,一方面,DDS工作在数字域,一旦更新频率控制字,输出的频率就相应改变,其跳频速率高;另一方面,由于频率控制字的宽度宽(48bit 或者更高),频率分辨率高。

2. DDS工作原理

图1 是DDS 的内部结构图,它主要分成3 部分:相位累加器,相位幅度转换,数模转换器DAC)。

图 1,DDS的结构

(1)相位累加器

一个正弦波,虽然它的幅度不是线性的,但是它的相位却是线性增加的。DDS 正是利用了这一特点来产生正弦信号。如图 2,根据DDS 的频率控制字的位数N,把360° 平均分成了2的N次等份。

图2,相位累加器原理

假设系统时钟为Fc,输出频率为Fout。每次转动一个角度360°/2N, 则可以产生一个频率为Fc/2N 的正弦波的相位递增量。那么只要选择恰当的频率控制字M,使得 Fout / Fc= M / 2N,就可以得到所需要的输出频率Fout,Fout = Fc*M / 2N。

(2)相位幅度转换

通过相位累加器,我们已经得到了合成Fout 频率所对应的相位信息,然后相位幅度转换器把0°~360°的相位转换成相应相位的幅度值。比如当DDS 选择为2V p-p 的输出时,45°对应的幅度值为0.707V,这个数值以二进制的形式被送入DAC。这个相位到幅度的转换是通过查表完成的。

(3)DAC

输出代表幅度的二进制数字信号被送入DAC 中,并转换成为模拟信号输出。注意DAC 的位数并不影响输出频率的分辨率。输出频率的分辨率是由频率控制字的位数决定的。直接数字式频率合成技术(DDS)是一种先进的全数字频率合成技术,它具有多种数字式调制能力(如相位调制、频率调制、幅度调制以及I/Q正交调制等),在通信、导航、雷达、电子战等领域获得了广泛的应用。在项目中光栅传感系统高频并行解调算法FPGA实现我们的光纤通信模块用到DDS。我们通过FPGA实现了DDS的功能。

1971年,美国学者J.Tierney等人撰写的《A Digital Frequency Synthesizer》一文首次提出了以全数字技术,从相位概念出发直接合成所需波形的一种新的频率合成原理。限于当时的技术和器件水平,它的性能指标尚不能与已有的技术相比,故未受到重视。近10年间,随着微电子技术的迅速发展,直接数字频率合成器

(Direct Digital Frequency Synthesis简称DDS或DDFS)得到了飞速的发展,它以有别于其它频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。具体体现在相对带宽宽、频率转换时间短、频率分辨率高、输出相位连续、可产生宽带正交信号及其他多种调制信号、可编程和全数字化、控制灵活方便等方面,并具有极高的性价比。

DDS基本原理及性能特点

DDS的基本原理是利用采样定理,通过查表法产生波形。DDS的结构有很多种,其基本的电路原理如图所示。

相位累加器由N位加法器与N位累加寄存器级联构成。每来一个时钟脉冲fs,加法器将频率控制字k与累加寄存器输出的累加相位数据相加,把相加后的结果送至累加寄存器的数据输入端。累加寄存器将加法器在上一个时钟脉冲作用后所产生的新相位数据反馈到加法器的输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字k相加。这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加。由此可以看出,相位累加器在每一个时钟脉冲输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位,相位累加器的溢出频率就是DDS输出的信号频率。

用相位累加器输出的数据作为波形存储器(ROM)的相位取样地址,这样就可把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出,完成相位到幅值转换。波形存储器的输出送到D/A转换器,D/A转换器将数字量形式的波形幅值转换成所要求合成频率的模拟量形式信号。低通滤波器用于滤除不需要的取样分量,以便输出频谱纯净的正弦波信号。

DDS在相对带宽、频率转换时间、高分辨力、相位连续性、正交输出以及集成化等一系列性能指标方面远远超过了传统频率合成技术所能达到的水平,为系统提供了优于模拟信号源的性能。

如何用FPGA实现

相位累加寄存器是DDS的核心,在我的设计中相位寄存器的字长为23位,之所以选择23位是因为项目要求频率步进可以达到1Hz,我们BASYS板上有25MHz的晶振,我们将其三分频为8.333MHz,我们相位寄存器字长23位则频率步进最小值为F/2N =8.333*106 /223≈1Hz( 当然根据项目实际需要我们今后会通过外接晶振及DCM配合使其=1 Hz。相位步进量字长为18位,最高输出频率为fmax =8.333*106 /223 *218 =260416 Hz。

波形存储器用SPATAN3E内部RAM实现,通过core generator 生成ROM,我们的设计中用ROM存取256个点,这样到频率达到200kHz时每个周期输出可达到21个采样点,若是存512个点那么就能达到42个点,具体存多少个点根据后续要求,及芯片本身的内部资源决定。用PC机的VC编写“正弦信号查找表”,将其写入ROM的初始化文件。当然可以把其他任意周期性波形数据写入ROM,道理想同。

生成“正弦信号查找表”有以下步骤:首先,确定每周期采样点数,这里256个点,计算各采样点的数值。归一化,由于我们后续须将数字量通过DAC输出,所以计算所得数值的值域转化为[0,1],以方便转化为DAC对应的数值,由于8位的DAC的输出值最高为255,所以须将得到的数值乘以255。

这里设计的相位累加寄存器,可根据实际需要产生无限周期个波形或1024以内个周期波形(periodn为10位)增加了设计的功能。

程序说明

dds_rom是储存波形的储存器;

phaseregister是相位累加寄存器;

fredevider3是三分频电路;

sch_top是dds芯片顶层文件;

工程dds_version1是该设计的工程文件;

文件夹sin_test是生成正弦信号查找表的源文件。

测试

在这个DDS 的设计过程中我们在BASYS板上跑了程序,程序与这个在I/O 端口方面有少许差别,需将源程序I/O口作了一下修改Clk为BASYS板上的50MHz,Dout为LD0到LD7,在实际应用中将其引致I/O口外接D/A即可产生变化的电压值(波形),这里通过LED是为了看结果直观。Reset为sw7,reset为’1’时DDS停止工作,并把相应寄存器置零,具体见代码。Sw6,sw5用于输出波形周期选择,为’00’时一直输出波形,为’01’,’10’,’11’时分别输出1,2,3个周期波形。Sw4到sw0为相位步进量(频率控制字),对应于1hz到31hz。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 频率合成器
    +关注

    关注

    5

    文章

    199

    浏览量

    32148
  • dac
    dac
    +关注

    关注

    43

    文章

    1971

    浏览量

    189427
  • DDS
    DDS
    +关注

    关注

    21

    文章

    614

    浏览量

    151700

原文标题:DDS(Direct Digital Synthesizer)直接数字式频率合成器

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Verilog实现DDS正弦波发生器

    DDS 同 DSP(数字信号处理)一样,是一项关键的数字化技术。DDS直接数字式
    的头像 发表于 12-22 09:48 393次阅读
    Verilog实现<b class='flag-5'>DDS</b>正弦波发生器

    频率合成器的作用解读

    频率合成器是一种电路或设备,用于产生特定频率的信号。它的作用包括但不限于以下几个方面
    的头像 发表于 11-25 09:17 476次阅读

    基于FPGA 程序的DDS IP配置和调试

    DDS 同 DSP(数字信号处理)一样,是一项关键的数字化技术。DDS直接数字式
    发表于 10-31 11:14 359次阅读
    基于FPGA 程序的<b class='flag-5'>DDS</b> IP配置和调试

    关于相位锁定环(PLL)频率合成器的设计和分析

    本篇文章是关于相位锁定环(PLL)频率合成器的设计和分析,重点讨论了相位噪声和频率噪声的测量、建模和仿真方法。文章以设计一个假想的PLL频率合成器
    的头像 发表于 10-26 15:30 557次阅读
    关于相位锁定环(PLL)<b class='flag-5'>频率</b><b class='flag-5'>合成器</b>的设计和分析

    一种用DDS激励PLL的X波段频率合成器的设计方案

    电子发烧友网站提供《一种用DDS激励PLL的X波段频率合成器的设计方案.pdf》资料免费下载
    发表于 10-24 09:10 4次下载
    一种用<b class='flag-5'>DDS</b>激励PLL的X波段<b class='flag-5'>频率</b><b class='flag-5'>合成器</b>的设计方案

    AD9912:1个GSPSS直接数字合成器,带有14-Bit发援会数据表 ADI

    电子发烧友网为你提供ADI(ADI)AD9912:1个GSPSS直接数字合成器,带有14-Bit发援会数据表相关产品参数、数据手册,更有AD9912:1个GSPSS直接
    发表于 10-08 16:25
    AD9912:1个GSPSS<b class='flag-5'>直接</b><b class='flag-5'>数字</b><b class='flag-5'>合成器</b>,带有14-Bit发援会数据表 ADI

    锁相环频率合成器的优缺点

    锁相环频率合成器的优缺点  锁相环频率合成器,又称为PLL(Phase Locked Loop),是一种广泛应用的电路,能够将输入信号的频率
    的头像 发表于 09-02 14:59 1370次阅读

    直接数字合成技术(DDS)是什么?DDS又是如何工作的?

    直接数字合成技术(DDS)是一种频率合成技术,用于产生周期性波形。
    的头像 发表于 08-24 11:47 2320次阅读
    <b class='flag-5'>直接</b><b class='flag-5'>数字</b><b class='flag-5'>合成</b>技术(<b class='flag-5'>DDS</b>)是什么?<b class='flag-5'>DDS</b>又是如何工作的?

    LogiCORE DDS IP v1.0用户手册

    DDS直接数字合成器) 是一款逻辑 IP 核,它可以提供适用于多种场景的正弦/余弦波形。DDS 主要由相位发生器和正弦/余弦查找表组成。
    发表于 08-09 06:11

    AD9854数字频率合成器手机及原理图

    AD9854 数字频率合成器是一款高度集成的器件,采用先进的 DDS 技术,内置 两个高速、高性能正交 DAC,共同构成一个数字可编程 I
    发表于 07-24 14:16 0次下载

    Xilinx Vivado DDS IP使用方法

    DDS(Direct Digital Frequency Synthesizer) 直接数字频率合成器,本文主要介绍如何调用Xilinx的DDS
    的头像 发表于 07-24 11:23 2049次阅读
    Xilinx Vivado <b class='flag-5'>DDS</b> IP使用方法

    系统的频域性能指标有哪些 频率合成器是如果影响系统指标的呢?

    我们常说频率合成器常被比作电子系统的“心脏”,那频率合成器是如果影响系统指标的呢?
    的头像 发表于 07-14 10:04 1272次阅读
    系统的频域<b class='flag-5'>性能</b>指标有哪些 <b class='flag-5'>频率</b><b class='flag-5'>合成器</b>是如果影响系统指标的呢?

    常用的数模混合PLL的两种经典结构

    频率合成器一般分为直接合成模拟式频率合成器、锁相环频率合成器
    的头像 发表于 07-06 14:46 2537次阅读
    常用的数模混合PLL的两种经典结构

    AD9914数字频率合成器规格书

    AD9914BCPZ是一款直接数字频率合成器(DDS),内置一个12位数模转换器,目标工作速率最高达3.5 GSPS。该器件采用先进的DDS
    发表于 07-05 15:10 0次下载

    数字频率合成器的作用

    数字频率合成器(Digital Frequency Synthesizer)是一种电子设备,用于生成精确的、可编程的高稳定度的频率信号。它的主要作用是在各种应用中提供精确的频率
    的头像 发表于 06-30 09:15 585次阅读