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

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

3天内不再提示

VHDL语言与DDS技术结合产生的的BPSK信号

电子设计 作者:电子设计 2018-10-07 11:00 次阅读

引言

直接数字式频率合成器(Direct Digitalfrequency Synthesizer,DDS)是从相位概念出发,直接合成所需波形的频率合成技术。VHDL是IEEE的工业标准硬件描述语言,可描述硬件电路的功能、信号连接关系及定时关系,在电子工程领域用来描述、验证和设计电子线路,得到了广泛应用。故将VHDL语言与DDS技术结合,设计生成BPSK信号。

1 DDS的基本原理

DDS把一系列数字量形式的信号通过数模转换器(DAC)转换成模拟量形式的信号,其基本结构如图1。

VHDL语言与DDS技术结合产生的的BPSK信号

DDS由相位累加器、加法器、波形存储器(ROM)、数字乘法器、D/A转换器和低通滤波器(LPF)组成。DDS的核心是相位累加器,由一个加法器和一个相位寄存器(REG)级联构成。在参考时钟fc的控制下,相位累加器对频率控制字K进行线性累加,输出的和再与相位控制字P相加后作为地址,对ROM寻址。ROM中存放经过采样、量化处理后的周期性连续信号一个周期波形的幅度值,即与一个周期的相位采样相对应的函数波形查找表,不同相位地址对应周期信号的不同幅度值编码。ROM输出的幅度值编码通过数字乘法器被幅度控制字A加权,加权后的幅度值编码经D/A转换器变成阶梯波,再经低通滤波器平滑后就可得所合成信号的模拟波形。合成的信号波形取决于ROM中存放的幅度值数据,故用DDS可产生任意波形。

设相位累加器的字长为N,则DDS的输出频率f0和频率分辨率(即最小输出频率)△fmin分别为:

VHDL语言与DDS技术结合产生的的BPSK信号

只要N足够大,DDS可以得到很小的频率分辨率。要改变DDS的输出频率,只要改变频率控制字K即可。

根据Nyquist采样定理,在对连续信号进行采样的一个周期内,采样频率不能改变,故利用DDS进行信号合成时,在信号合成的一个周期内,频率控制字K不能发生变化,也就是K在每次改变之前至少应该持续2N/K个DDS时钟周期,即2N/K/fc。

通过改变相位控制字P,可以控制输出信号的相位参数。设相位加法器的字长为M,当相位控制字由0变到P(P≠0)时,ROM的输入为相位累加器的输出与相位控制字P之和,因此,其输出的幅度值相位会增加2πP/2M,从而使最后输出的模拟信号产生相移。

DDS输出信号的幅度可以通过在ROM之后加入一个数字乘法器来实现。幅度控制字A起到对ROM所输出的幅度值编码进行加权的作用。

可见,当DDS的相位累加器字长和相位加法器字长确定后,通过改变K、P、A就可以有效地控制DDS输出的模拟信号的频率、相位和幅度,这就是DDS技术的调制特性。

2 采用VHDL语言实现DDS

为简单起见,以下所描述的DDS仅设置了频率控制字K,相位控制字P和幅度控制字A都未予以考虑,其处理可类推。DDS的输出为正弦波信号。

由于正弦波关于π奇对称,关于π/2与3π/2偶对称,因此波形存储器(ROM)中只需存储其1/4个周期的幅度值编码。具体地,ROM中存储正弦波0~π/2相位范围内的256个采样点的幅度值,采用8位编码。而DDS的输出为9位,最高位作为符号位,用以区分幅度值的正负,“0”表示正,“1”表示负。ROM为8位地址寻址,而相位累加器的字长采用10位。最高位用以区分正弦波的前、后半周期,“0”为前半周期,幅度值为正,“1”为后半周期,幅度值为负。次高位用以区分正弦波前、后半周期的前、后1/4周期,“0”为前1/4周期,寻址地址为相位累加器的低8位,“1”为后1/4周期,寻址地址为相位累加器低8位的取反。

用VHDL实现DDS的源程序的核心部分如下:

VHDL语言与DDS技术结合产生的的BPSK信号

在Xilinx ISE 8.2i开发环境中对其进行仿真的结果如图2。

3 BPSK信号的产生

BPSK信号中,载波的相位随调制信号“1”或“0”而改变,通常用相位0和π来表示“1”或“0”。

结合BPSK和DDS的基本原理分析可得:利用DDS技术的调制特性生成BPSK信号,只需控制DDS的相位控制字P,让其随调制信号进行变化即可。当调制信号为“0”时,载波相位为0,即相位控制字P为0;当调制信号为“1”时,载波相位为π,即相位控制字P为512。这样,通过相位累加器的输出与受控相位控制字P相加,就可得到DDS中ROM的寻址地址,从而进一步生成BPSK信号。

利用一组随机数的二进制编码的最高位作为控制,生成BPSK信号的二进制码元。其中,采用的产生随机数算法为:定义a、b、s三个变量,将任意2个不等于0的数赋给a和b,a、b进行模2加后的结果赋给s,然后再将a的值赋给b,s的值赋给a,a和b再进行模2加,结果再赋给s,如此循环……变量s中所存储的一系列数值即可看作一组随机数,如图3。

VHDL语言与DDS技术结合产生的的BPSK信号

VHDL源程序的主要部分如下:

在Xilinx ISE 8.2i开发环境中对其进行仿真的结果如图4。

VHDL语言与DDS技术结合产生的的BPSK信号

4 结束语

该方法可操作性很强,使用简单方便,具有直观快捷、容易实现的特点,将得到广泛的应用。

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

    关注

    21

    文章

    634

    浏览量

    152664
  • vhdl
    +关注

    关注

    30

    文章

    817

    浏览量

    128138
  • BPSK
    +关注

    关注

    0

    文章

    34

    浏览量

    22940
收藏 人收藏

    评论

    相关推荐

    想要产生一个BPSK的调制信号,载波900MHz,基带用FPGA产生,建议用什么DDS芯片呢?

    想要产生一个BPSK的调制信号,载波900MHz,基带用FPGA产生,建议用什么DDS芯片呢?有没有好的推荐电路呢?
    发表于 11-09 09:15

    请问想要产生一个BPSK的调制信号,载波900MHz,建议用什么DDS芯片呢?

    想要产生一个BPSK的调制信号,载波900MHz,基带用FPGA产生,建议用什么DDS芯片呢?
    发表于 11-13 09:19

    请问通过DDS可以实现的最高频率的BPSK是多少MHz?

    通过DDS可以实现的最高频率的BPSK是多少MHz?用AD9910的RAM模式,10MHz的BPSK 波形还正常,上了10MHz波形就乱了。有没有高速BPSK的解决方案?拜托各位高手帮
    发表于 03-11 14:49

    DDS工作原理是?用DDS芯片AD9858宽带雷达信号源要设计最佳?

    高性能直接数字合成DDS(Direct DigitalSynthesis)技术、数字信号处理DSP(Digital Signal Processing)技术及大规模可编程逻辑器件
    发表于 04-06 08:57

    DDS产生调幅信号的分析与解释

    文章目录前言一、DDS简介二、DDS产生调幅信号的分析与解释1.引入库2.读入数据总结前言 DDS(直接数字频率合成)
    发表于 08-18 06:46

    VHDL语言及其应用

    VHDL语言及其应用是在作者历时七年为通信与信息系统、信号与信息处理专业研究生讲授VHDL语言及其应用课程的教学实践基础上编写而成的。全书共
    发表于 07-10 17:21 18次下载

    使用VHDL语言中几个常见问题的探讨

    结合应用MaxplusⅡ软件进行VHDL 语言代码编写的经验,阐述使用VHDL 语言的过程中比较常见的几个问题。
    发表于 09-10 16:19 25次下载

    VHDL 语言程序的元素

    VHDL 语言程序的元素:本章主要内容:􀁺VHDL语言的对象􀁺VHDL
    发表于 09-28 14:32 41次下载

    DDS在罗盘测试信号产生模块中的应用

    本文在对DDS原理和AD9854芯片研究的基础上,介绍了一种罗盘测试信号产生模块的设计方案。通过单片机对DDS芯片的控制,可以产生正弦波
    发表于 07-31 10:45 12次下载

    VHDL语言中信号的不同形式设置

    摘要: 通过一个偶同位产生器逻辑功能的实现过程,介绍了VHDL语言中信号设置的不同方 式及注意事项,并给出了完整的程序代码。 关键词: VHDL;程序 1 概述
    发表于 10-06 08:48 1322次阅读
    <b class='flag-5'>VHDL</b><b class='flag-5'>语言中信号</b>的不同形式设置

    基于FPGA的BPSK调制与解调器设计

    本文设计实现了一种新型的BPSK信号调制解调器,利用m序列的随机性来产生输入基带信号,详细介绍了基于FPGA的BPSK
    发表于 03-31 15:06 71次下载
    基于FPGA的<b class='flag-5'>BPSK</b>调制与解调器设计

    基于vhdlDDS设计简单的波形发生器

    基于vhdlDDS设计 简单的波形发生器 可以产生正弦波,方波,三角波,锯齿波
    发表于 01-12 17:55 31次下载

    基于DDS技术的多路同步信号源的设计

      多路同步数字调相信号源一般采用单片机和多片专用DDS芯片配合实现。该技术同步实现复杂,成本高。给出了一种基于FPGA的多路同步信号源的设计方法,通过
    发表于 05-27 13:47 8258次阅读
    基于<b class='flag-5'>DDS</b><b class='flag-5'>技术</b>的多路同步<b class='flag-5'>信号</b>源的设计

    基于DDS芯片AD9854的信号产生器设计

    基于DDS芯片AD9854的信号产生器设计
    发表于 08-13 09:43 10次下载

    模型机控制信号产生逻辑VHDL

    模型机控制信号产生逻辑VHDL 引言: 随着科技的发展,数字系统的设计越来越重要。在数字系统设计的过程中,模型机控制信号产生逻辑是一个非常
    的头像 发表于 09-19 17:16 668次阅读