官方论坛
官方淘宝
官方博客
微信公众号
点击联系吴工 点击联系周老师
您的当前位置:主页 > FPGA学习资料 >

FPGA学习案例——基于FPGA的DDS信号发生器设计教程

发布时间:2020-06-15   作者:admin 浏览量:

信号发生器是一种能提供各种频率、输出电平的电信号的设备,又称信号源或振荡器。其在各种电信系统的振幅、频率、传输特性等电参数以及元器件的特性与参数的测量中得到了广泛的应用。

直接数字式频率合成器(Direct Digital Synthesizer,DDS)是一项关键的数字化技术,其将先进的数字处理理论与方法引入频率合成技术,通过数/模转换器将一系列数字量形式的信号转换成模拟量形式的信号。


图1  DDS实现原理


DDS的输入是频率控制字,其用来控制相位累加器每次增加的相位值,也相当于一个步进值。上图就是一个典型的DDS工程,DDS工程一般可包括相位累加器、信号转换器和DAC三部分,其具体功能为:

相位累加器:
每来一个时钟脉冲,在原来相位值的基础上会加上步进得到最新的相位值,随后将新的相位值输出给信号转换器。N位的相位累加器由N位加法器和N位累加寄存器组成,其具体工作过程为:每来一个时钟脉冲,N位加法器将频率控制字K与N位累加寄存器输出的累加相位数据相加,并把相加后的结果送至累加寄存器的输入端。累加寄存器一方面将上一时钟周期作用后产生的新相位数据反馈到加法器的输入端,使加法器在下一时钟的作用下继续与频率控制字K相加;另一方面将这个值作为取样地址送入幅度/相位转换电路,幅度/相位转换电路根据这个地址输出相应的波形数据。最后经D/A转换器和 LPF将波形数据转换成所需要的模拟波形。

信号转换器:
一般转换器内部有一片ROM,其事先保存了要产生波形的幅度值。根据输入的相位值可以输出该相位值所对应的信号幅值。例如,可将一个完整周期的正弦波等距离分成128份并保存到转换器的ROM当中,当相位值为0时,则输出相位为0所应对的幅度值,当相位为100时,则输出相位为100所对应的幅度值。


DA转换:

至简设计法教学板上的DAC芯片型号为DA9709,这是一款双通道,位宽8bit的芯片,速率高达125MSPS,能够满足常用信号发生器、滤波信号输出等需求。

实际位置如下所示。


图2  教学板DA接口
该芯片采用48引脚小型LQFP封装,具有高交流、直流性能。


以下是本课程相关视频和资料,欢迎大家下载学习!

教学视频:
https://www.bilibili.com/video/BV1op4y1S7Sm/

工程文件:

 01_mdyCfgDdsProject.zip (192.06 KB, 下载次数: 1)

文档资料:

 MDY-信号发生器设计.pdf (676.9 KB, 下载次数: 6)

明德扬软件系统:
 明德扬软件系统_V2.1.zip (2.46 MB, 下载次数: 1)

百度网盘下载:
链接:https://pan.baidu.com/s/1c-doVqqcCFQKbiluz4eulg
提取码:je5n



更多FPGA知识/案例,请到明德扬论坛www.fpgabbs.cn学习。


  •   
  •   
  •   
  •  
  • FPGA教育领域第一品牌
  • 咨询热线:020-39002701
  • 技术交流Q群:544453837