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

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

3天内不再提示

基于FPGA和DDS技术的信号发生器的设计

电子设计 来源:郭婷 作者:电子设计 2019-04-19 07:50 次阅读

1 引言

直接数字频率合成DDS(Direct Digital Synthesizer)是基于奈奎斯特抽样定理理论和现代器件生产技术发展的一种新的频率合成技术。与第二代基于锁相环频率合成技术相比,DDS具有频率切换时间短、频率分辨率高、相位可连续变化和输出波形灵活等优点,因此,广泛应用于教学科研、通信、雷达、自动控制和电子测量等领域。该技术的常用方法是利用性能优良的DDS专用器件,“搭积木”式设计电路,这种“搭积木”式设计电路方法虽然直观,但DDS专用器件价格较贵,输出波形单一,使用受到一定限制,特别不适合于输出波形多样化的应用场合。随着高速可编程逻辑器件FPGA的发展,电子工程师可根据实际需求,在单一FPGA上开发出性能优良的具有任意波形的DDS系统,极大限度地简化设计过程并提高效率。本文在讨论DDS的基础上,介绍利用FPGA设计的基于DDS的信号发生器。

2 DDS技术工作原理

DDS是一种从相位概念出发直接合成所需波形的数字频率合成技术,主要通过查波形表实现。由奈奎斯特抽样定理理论可知,当抽样频率大于被抽样信号的最高频率2倍时,通过抽样得到的数字信号可通过一个低通滤波器还原成原来的信号。DDS信号发生器,主要由相位累加器、相位寄存器、波形存储器、D/A转换器模拟低通滤波器组成如图1所示。fR为参考时钟,K为输入频率控制字,其值与输出频率相对应,因此,控制输入控制字K,就能有效控制输出频率值。通常情况下,K值由控制器写入。

基于FPGA和DDS技术的信号发生器的设计

由图1可知,在参考时钟fR的控制下,频率控制字K与相位寄存器的输出反馈在相位累加器中完成加运算,并把计算结果寄存于相位寄存器,作为下一次加运算的一个输入值。相位累加器输出高位数据作为波形存储器的相位抽样地址值,查找波形存储器中相对应单元的电压幅值,得到波形二进制编码,实现相位到电压幅值的转变。波形二进制编码再通过D/A转换器,把数字信号转换成相应的模拟信号。低通滤波器可进一步滤除模拟信号中的高频成分,平滑模拟信号。在整个过程中,当相位累加器产生一次溢出时,DDS系统就完成一个周期输出任务。频率控制字K与输出波形频率的函数表达关系式为:

f0=(K/2N)fR (1)

式中,K为频率控制字;fR为参考时钟,N为累加器的位宽值。

当K=l时,可得DDS的最小分辨率为:

fmin=fR/2 (2)

为了得到较小分辨率,在实际工程设计中,N一般取得较大值,该系统是N取32位设计的。

3 关键器件选型

本设计所用到的关键器件主要是可编程逻辑器件(FPGA)和D/A转换器。考虑设计成本等因素,FPGA采用Altera公司的低成本Cyclone系列EPlC6Q240C8。该器件采用逻辑阵列模块(LAB)和查找表(LUT)结构,内核采用1.5 V电压供电,是低功耗元件。此外,Cyclone系列EPlC60240C8内部资源丰富,其内部内嵌5 980个逻辑单元(LE),20个4 KB双口存储单元(M 4 KB RAM block)和92 160 bit普通高速RAM等资源,因此,能较好满足该系统设计要求。而D/A转换器则采用National Semiconductor公司的DAC0832。

4 DDS的FPGA实现

4.1 相位累加器与相位寄存器的设计

相位累加器与相位寄存器主要完成累加,实现输出波形频率可调功能。利用Quartus II可编程逻辑器件系统开发工具进行设计。首先,打开Quartus II软件,新建一个工程管理文件,然后在此工程管理文件中新建一个Verilog HDL源程序文件,并用硬件描述语言Verilog HDL编写程序实现其功能。在设计过程中,可在一个模块中描述。一个参考的Verilog HDL程序如下:

基于FPGA和DDS技术的信号发生器的设计

4.2 基于1/4波形的存储器设计

为了提高系统的分辨率和降低FPGA资源的利用率,采用基于1/4波形的存储器设计技术。利用正弦波对称性特点,只要存储[O~π/2]幅值,通过地址和幅值数据变换,即可得到整个周期内的正弦波,其设计原理如图2所示。

基于FPGA和DDS技术的信号发生器的设计

用相位累加器输出高2位,作为波形区间标志位。当最高位与次高位都为“0”时,表示输出正弦波正处在[0~π/2]区间内,这时,地址与输出数据都不需要变换;当最高位为“0”,次高位为“l”时,输出正弦波正处在[π/2“π]区间内,这时,地址变换器对地址进行求补操作,而输出数据不变;当最高位为“l”,次高位为“0”时,输出正弦波正处在[π~3π/2]区间内,这时,地址不变,而输出变换器对输出数据进行求补操作;当最高位与次高位都为“l”时,输出正弦波正处在[3π/2”2π]区间内,这时,地址和输出数据都进行求补操作。

5 D/A转换电路

数据转换器输出的数据是数字形式的电压值,为实现数字电压值与模拟电压值之间的转换,系统还专门设计D/A转换电路,其D/A转换电路原理图如图3所示。

基于FPGA和DDS技术的信号发生器的设计

为降低设计成本,采用8位廉价DAC0832作为转换器。该器件是倒T型电阻网络型D/A转换器,因其内部无运算放大器,输出为电流,所以要外接运算放大器,本文采用LM324型运算放大器。DAC0832可根据实际情况接成双缓冲、单缓冲和直冲3种形式,这里采用第3种连接形式,即引脚1、引脚2、引脚17、引脚18接低电平,引脚19接+5 V。引脚8为参考电压输入端口.接至+1O V的电源,当数字输入端全为高电平时,模拟输出端为+10 V。

6 验证结果

为验证本系统的设计正确性,利用Ouarlus II软件的嵌入式逻辑分析仪分析信号的波形。在工程管理文件中,首先新建一个SignalTap文件,并在SignalTap文件中添加要验证的信号引脚和设置相关的参数,然后保存、编译和下载到EPlC6Q240C8中,再启动嵌入式逻辑分析仪就可实时观察到相应的引脚波形,图4为在硬件环境中应用嵌入式逻辑分析仪观察到的波形。其中,图4a为由DDS硬件合成的正弦波形;图4b为由DDS硬件合成的矩形波形;图4c为由DDS硬件合成的三角波形。观察结果表明,该系统输出的各种波形稳定,与设计要求一致,从而有效验证了该设计的正确性。

基于FPGA和DDS技术的信号发生器的设计

7 结论

直接数字频率合成(DDS)技术属第三代频率合成技术,与第二代基于锁相环频率合成技术相比,利用DDS技术合成的输出波形具有良好的性能指标。本文在DDS技术工作原理的基础上,介绍基于FPGA实现DDS的设计方法,并给出该系统合成的波形,从测试结果可看出,该系统工作稳定、可靠,并具有较好的参考与实用价值。

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

    关注

    1629

    文章

    21738

    浏览量

    603450
  • 转换器
    +关注

    关注

    27

    文章

    8705

    浏览量

    147194
  • DDS
    DDS
    +关注

    关注

    21

    文章

    634

    浏览量

    152667
收藏 人收藏

    评论

    相关推荐

    基于FPGADDS信号发生器

    求一个基于FPGADDS信号发生器设计,最好有DA模块和相位累加模块的代码。
    发表于 03-18 22:09

    怎么设计基于FPGA和虚拟仪器的DDS信号发生器

    )。DDS是开环系统,无反馈环节,输出响应速度快,频率稳定度高。因此直接数字频率合成技术是目前频率合成的主要技术之一。文中的主要内容是采用FPGA结合虚拟仪器
    发表于 09-29 08:08

    如何利用FPGA设计DDS信号发生器

    DDS的工作原理和基本结构基于FPGADDS信号发生器的设计如何建立顶层模块?
    发表于 04-09 06:46

    如何利用FPGADDS技术实现正弦信号发生器的设计

    DDS电路的工作原理是什么如何利用FPGADDS技术实现正弦信号发生器的设计
    发表于 04-28 06:35

    怎么利用FPGA设计基于DDS信号发生器

    本文在讨论DDS的基础上,介绍利用FPGA设计的基于DDS信号发生器
    发表于 05-06 09:54

    怎么实现基于FPGA+DDS的正弦信号发生器的设计?

    介绍了DDS的发展历史及其两种实现方法的特点,论述了DDS的基本原理,并提出一种基于FPGADDS信号
    发表于 05-11 06:58

    基于FPGADDS信号源设计与实现

    基于FPGADDS信号源设计与实现 利用DDSFPGA 技术设计一种
    发表于 02-11 08:48 225次下载

    基于FPGADDS的数字调制信号发生器设计

    为了提高数字调制信号发生器的频率准确度和稳定度,并使其相关技术参数灵活可调,提出了基于FPGADDS
    发表于 04-27 16:50 183次下载
    基于<b class='flag-5'>FPGA</b>和<b class='flag-5'>DDS</b>的数字调制<b class='flag-5'>信号</b><b class='flag-5'>发生器</b>设计

    信号发生器原理_DDS芯片及应用_DDS信号发生器设计

    本专题汇集了四十种DDS信号发生器各部分资料,包括信号发生器原理,DDS芯片及应用,
    发表于 06-23 10:41
    <b class='flag-5'>信号</b><b class='flag-5'>发生器</b>原理_<b class='flag-5'>DDS</b>芯片及应用_<b class='flag-5'>DDS</b><b class='flag-5'>信号</b><b class='flag-5'>发生器</b>设计

    基于DDS信号发生器设计

    基于dds函数信号发生器,用单片机及dds实现正玄波,三角波,矩形波的产生
    发表于 01-11 14:55 21次下载

    基于FPGADDS信号发生器设计方案解析

    将虚拟仪器技术FPGA技术结合,设计了一个频率可控的DDS任意波形信号发生器。在阐述直接数字频
    发表于 12-04 11:40 33次下载
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>DDS</b><b class='flag-5'>信号</b><b class='flag-5'>发生器</b>设计方案解析

    DDS函数信号发生器是什么_DDS函数信号发生器简单介绍

    本文对DDS函数信号发生器的结构原理、优点、主要功能特性、主要技术指标四个方面进行了简单的介绍。
    发表于 01-08 10:41 1.5w次阅读
    <b class='flag-5'>DDS</b>函数<b class='flag-5'>信号</b><b class='flag-5'>发生器</b>是什么_<b class='flag-5'>DDS</b>函数<b class='flag-5'>信号</b><b class='flag-5'>发生器</b>简单介绍

    基于FPGA和DAC设计的dds发生器

    基于FPGA和DAC设计的dds发生器(普德新星电源技术有限公司的LoGo)-该文档为基于FPGA和DAC设计的
    发表于 09-16 12:09 41次下载
    基于<b class='flag-5'>FPGA</b>和DAC设计的<b class='flag-5'>dds</b><b class='flag-5'>发生器</b>

    FPGA常用运算模块-DDS信号发生器

    本文是本系列的第六篇,本文主要介绍FPGA常用运算模块-DDS信号发生器,xilinx提供了相关的IP以便于用户进行开发使用。
    的头像 发表于 05-24 10:37 5447次阅读
    <b class='flag-5'>FPGA</b>常用运算模块-<b class='flag-5'>DDS</b><b class='flag-5'>信号</b><b class='flag-5'>发生器</b>

    基于FPGADDS正弦信号发生器的设计和实现

    电子发烧友网站提供《基于FPGADDS正弦信号发生器的设计和实现.pdf》资料免费下载
    发表于 03-24 09:34 8次下载