您现在的位置:首页 >> 技术文章 >> FPGA技术 >> 内容

MATLAB代做|FPGA代做|python代做-DDS(Direct Digital freque

时间:2021-3-16 19:57:05 点击:

  核心提示:MATLAB代做|FPGA代做|python代做-DDS(Direct Digital freque...
随着科学技术的日新月异的发展,各种各样的电子产品也正在逐步向着高精尖技术方向发展。电子技术广泛的应用于工业、农业、交通运输、航空航天、国防建设等国民经济的诸多领域中,数字电子技术已经渗透到了人们生活的各个层面,信号发生器是一种常用的信号源,广泛应用于电子电路、自动控制和科学试验等领域。它是一种为电子测量和计量工作提供符合严格技术要求的电信号设备。因此,信号发生器和示波器、电压表、频率计等仪器一样是最普通、最基本的,也是应用最广泛的电子仪器之一,几乎所有的电参量的测量都需要用到信号发生器。

从宏观上测量仪器可分为两大类,即激励和检测。其中各类信号源属于激励仪器一类。信号源能够产生不同频率、不同幅度的规则或不规则波形的信号,广泛应用于电子测量、电力工程、工业控制、故障诊断和教学科研等多方面,是电子工程师们进行研究开发和生产产品过程中的必备仪器之一。

信号源从用途上可分为通用信号源和专用信号源两大类。专用信号源仅适用于某些特殊测量需要,如电视信号源、编码脉冲信号源。通用信号源包括:正弦信号源,脉冲信号源,函数信号源,高频信号源,噪声信号源。

信号源常有三方面的用途:(1)激励源,作为某些电器设备的激励信号,如激励扬声器发出声音。(2)信号仿真,当要研究一个电气设备在某种实际环境下所受的影响时,需要施加具有与实际环境相同特性的信号,加高频干扰信号,这时就需要对干扰信号进行仿真。(3)校准源,用于对一般信号源进行校准或比对,有时称为标准源。

上世纪四十年代,惠普为海军研究试验室开发了第一台信号发生器,从而使得人们便可以使用可控的信号发生器对设备进行比较全面和准确地测量,信号发生器也在测试测量方面发挥出日益重要的作用。电子技术和计算机技术的发展推动着信号源的不断发展,信号源经历了从模拟式信号源到数字式信号源的发展过程。上世纪七十年代以前,信号源的设计采用的是模拟电子技术,产生正弦波、方波和三角波等几种简单的波形,较大的缺点,使得输出波形的幅度稳定性较差。电路结构复杂,仅能产生由于模拟电路存在漂移较大的缺点,使得输出波形的幅度稳定性较差。同时模拟电路存在着尺寸大,成本高和功耗大等缺点,而且要产生复杂的波形信号时电路会更复杂。七十年代以后,数字电路在信号源的设计中得到广泛的应用,信号源采用的是数字电子技术。随着微处理器的出现,信号源也开始从完全地由分立元器件搭建发展为以微处理器为核心的集成系统。信号源产生的波形种类也丰富起来,频带大大增加,通用性也得到了提高。

伴随着信号源的发展,作为其重要功能之一的移相技术也得到了改进和发展,所谓移相是指两路同频的信号,以其中一路为参考,另一路相对于该参考信号作超前或滞后的移动,即称为是相位的移动。两路信号的相位不同,便存在相位差,即相差。若将一个信号周期看作是360°,则相差的范围就在0—360°。

要实现移相,通常有两个实现途径:一是直接对模拟信号进行移相,如RC移相、LC移相、变压器移相等,采用这种方式的移相技术有许多不足之处,如:输出波形受输入波形的影响,移相操作不方便,移相角度随所接负载和时间等因素的影响而产生漂移等。另一个是随着电子技术和计算机技术的发展而兴起的数字移相技术,是目前移相技术的潮流,数字移相技术的核心是,先将模拟信号或移相角数字化,形成一张数据表,将数据地址的偏移量映射为信号间的相位值,通过D/A 转换芯片连续循环地读出该数据表的数据并还原成模拟信号。本文所采用的直接数字频率合成技术(DDS-Direct Digital frequency Synthesis)中移相的实现正是属于数字移相技术。

1.1信号发生器的发展

信号发生器是一种历史最为悠久的测量仪器。早在二十年代,当电子设备刚开始出现时,它就出现了。随着通信和雷达技术的发展,四十年代出现了主要用于测试各种接收机的标准信号发生器,使信号发生器从定性分析的测试仪器成为定量分析的测量仪器。同时还出现了可用来测试脉冲电路或用作脉冲调制器的脉冲信号发生器。由于早期的信号发生器机械结构比较复杂,功率比较大,电路比较简单(与数字仪器、示波器等相比),因此发展速度较慢。直到1964年才出现了第一台全晶体管的信号发生器。

自六十年代以来,信号发生器有了迅速的发展,出现了函数发生器、扫频信号发生器、合成信号发生器、程控信号发生器,等新种类。各类信号发生器的主要性能指标也都有了大幅度的提高,同时在简化机械结构、小型化、多功能等各方面也有了显著的进展。

1.2 信号发生器分类

信号发生器的应用非常广泛,种类也相当繁多。首先,信号发生器可以分为通用和专用两大类。专用信号发生器主要是为了某种特殊的测量目的而研制的。如电视信号发生器、编码脉冲信号发生器等。这种发生器的特性是受测量对象的要求所制约的。其次,信号发生器按输出波形又可分为正弦波形发生器、脉冲信号发生器、函数发生器和任意波形发生器等。再次,按其产生频率的方法又可分为谐振法和合成法两种。一般传统的信号发生器都采用谐振法,即用具有频率选择性的回路来产生正弦振荡,获得所需频率。但也可以通过频率合成技术来获得所需的频率利用频率合成技术制成的信号发生器。

    所谓频率合成技术就是指从一个高稳定和准确的参考频率源,经过技术处理,生成大量离散的频率输出。技术处理方法可以是传统的用硬件实现频率的加、减、乘、除基本运算,可以是锁相环技术,也可以是各种数字技术和计算技术。参考频率可由高稳定的参考振荡器(一般为晶体振荡器)产生,所生成的一系列离散频率输出与参考振荡器频率有严格的比例关系,并且具有同样的准确度和稳定度。基于频率合成原理制成的信号发生器,由于可以获得很高的频率稳定度和精确度,因此发展非常迅速。尤其是最近随着现代电子技术的发展,其应用更是有了质的飞跃。

1.3 频率合成技术

频率合成技术在本世纪30年代开始提出,它的发展己经有70年的历史。在这70年的历史中,大致可以分成三个发展阶段:直接式频率合成技术,锁相环频率合成技术以及直接数字频率合成技术。

所谓直接频率合成技术就是用倍频、分频和混频电路对一个或几个基准频率进行加、减、乘和除的运算,从而产生所需要的频率信号,并通过窄带滤波器选出。这是最先出现的一种合成器类型的频率信号源。这种频率合成器原理简单,易于实现。其合成方法大致可分为两种基本类型:一种是所谓非相关合成方法,另一种是所谓相关合成方法。这两种合成方法的主要区别在于所使用的参考频率源的数目不同。

非相关合成方法使用多个晶体参考频率源,所需的各种频率分别由这些参考源提供。它的缺点在于制作具有相同频率稳定性和精度的多个晶体参考频率源既复杂又困难,而且成本很高。相关合成方法只使用一个晶体参考频率源,所需的各种频率都由它经过分频、混频和倍频后得到的,因而合成器输出频率的稳定性和精度与参考源一样,现在绝大多数直接频率合成技术都使用这种合成方法。

直接频率合成器的频率范围宽,频率转换较快,可以达到微秒级,频率间隔较小( Hz),工作稳定可靠;但是寄生输出大,需要大量的模拟元件,结构复杂,体积大,成本高。直接频率合成技术所固有的缺点,在锁相环(Phase-LockedLooPs)频率合成技术中得到了很大的改善。锁相环频率合成技术(简称PLL)是在40年代初根据控制理论的线性伺服环路发展起来的,最早用于电视机的扫描同步电路,以减少噪声对同步的影响,从而使电视的同步性能得到重大改进。同时,它的低噪声跟踪特性也得到人们的高度重视,发展越来越快,以致于今天被广泛的应用于无线电技术领域的各个方面。锁相频率环合成技术也叫间接式频率合成,这种合成方法所使用的电路较直接式频率合成简单。它主要是将含有噪声的振荡器放在锁相环路内,它的相位锁定在希望的信号上,从而使振荡器本身的噪声被抑制,使它的输出频谱大大提纯。

1.4 DDS技术

直接数字频率合成技术 (Direct Digital Synthesis)完全不同于我们己经熟悉的直接频率合成技术和锁相环频率合成技术。直接数字频率合成技术(简称DDS)的理论早在七十年代就被提出。它的基本原理就是利用采样定理,通过查表法产生波形,由于硬件技术的限制,DDS技术当时没能得到广泛应用。随着大规模集成电路技术的飞速发展,DDS技术的优越性己逐步显现出来。不少学者认为,DDS是产生信号和频率的一种理想方法,发展前景十分广阔。与其他频率合成方法相比较,直接数字频率合成技术的主要优点是易于程控,相位连续,输出频率稳定度高,分辨率高。其频率分辨率可以达到10-3。而且频率转换速度快,可小于100ns,特别适宜用在跳频无线通信系统。其相位噪声主要决定于参考时钟振荡器。

 

 

DDS(Direct Digital frequency Synthesis)即直接数字频率合成器,是一种新型的频率合成技术,具有较高的频率分辨率,快速的频率切换,稳定性好,可灵活产生多种信号的优点。因此,在现代电子系统及设备的频率源设计中,尤其在通信领域,直接数字频率合成器的应用越来越广泛。在数字化的调制解调模块中。DDS取代了VCO(模拟的压控振荡器),被大量应用。这种合成技术是一种利用数字技术来控制信号的相位增量的技术,它采用插值取样的方式,将要合成的正弦波波形用若干个采样点的取值来代替,然后依次等时间间隔输出这些取值,每个采样点的值由预先存储的数字值经D/A转换后得到。

DDS工作原理框图如图4-1所示。其基本结构包括:相位累加器PA、波形查询表ROM、数模转换器DAC及低通滤波器。



图4-1 DDS工作原理框图

DDS的工作过程为:在参考时钟fc的作用下,相位累加器对频率控制字FCW(Frequency Control Word)进行线性累加,将其高W位作为地址码通过波形查值表ROM变换,产生D位对应信号波形的数字序列,再由数模转换器DAC将其转化为阶梯模拟电压波形后由具有内插作用的低通滤波器LPF将其平滑为连续的正弦波形作为输出。

 

信号发生器系统的FPGA设计

5.2.1 时钟模块

 一般在高速系统中,时钟的生产一般采用PLL锁相环法。

时钟可以比喻成数字逻辑中的血液,几乎所有的信号都需要依靠时钟来向前传递。因此,时钟管理的重要性不言而喻。没有稳定、纯净的时钟作保障,再强大的数字芯片也无法完全发挥其功能。在FPGA的逻辑设计中,对于时钟域的设计是至关重要的。每个独立时钟域中时钟的走线排布、复位使能控制、时序约束以及多个时钟域之间的隔离处理,都将直接决定设计的功能及性能指标。下面将简单介绍一下在FPGA时钟设计中的几个重要概念。

时钟偏移(Skew):

是指FPGA内部时钟在时钟分配系统中到达各个时钟末端(比如触发器的时钟端CP)的时钟相位不一致。简单的说,就是由于从时钟源到达各个时钟接收端所经过的延时不等,从而使得各个接收端收到的时钟相位不一致。造成这种延时不等通常是因为2种原因,一是走线延时(又称为传输延时),这是必然存在的;另一个是组合逻辑延时(又称为惯性延时)。

时钟抖动(Jitter):

是指时钟边沿的输出位置和理想情况存在一定误差(提前或滞后产生跳变沿)。抖动又分为确定性抖动和随机抖动,确定性抖动一般比较大,而且可以追踪到特定的来源,如信号噪声,串扰等;随机抖动一般是由环境因素造成的。

全局时钟网络(Global):

可以理解成一个时钟分配树,在这棵时钟树上,为了保证信号到芯片的各个角落的延时尽量相等,时钟树首先走到芯片中间,再向芯片的四周均匀分布,这样一来,虽然总体上延时是增加了,但是走在全局时钟树上的信号到达其各个目的端的延时基本可以保证相等,对于时钟来说,这样就有效控制了因为走线延时而带来的时钟偏移。同时在芯片设计的时候对该网络进行了保护,尽量防止芯片内部的信号对全局时钟网络上的信号产生影响,有效避免了串扰,这样可以保证走在全局时钟网络上的信号抖动非常小。而且,全局时钟网络具有很强的驱动能力,对于一些扇出很大的信号,比如时钟信号,全局的异步复位信号和一些控制信号,往往扇出都是成百上千的,这个时候就应当尽量把这种信号走到全局时钟网络上去,以保证其驱动能力。

PLL工作的原理:压控振荡器VCO通过自振输出一个时钟,同时反馈给输入端的频率相位检测器PFD,PFD根据比较输入时钟和反馈时钟的相位来判断VCO输出的快慢,同时输出Pump-up和Pump-down信号给环路低通滤波器LPF,LPF把这些信号转换成电压信号,再通过控制VCO的输出频率,当PFD检测到输入时钟和反馈时钟边沿对齐时,PLL就锁定了。



图5-2 PLL模块

其主要设置如所示:



图5-3 PLL参数设置界面

 

 

 

5.2.2 查找表设计

    本系统我们采用Verilog自行设计一个rom,然后通过寻址来参数正弦信号,其代码如下所示:

module rom0(ad,q);

input [9:0] ad;

output [9:0] q;

reg[9:0] q;

always @(ad)

begin 

case(ad)

0:q=10'h200;1:q=10'h203;2:q=10'h206;3:q=10'h209;4:q=10'h20c; 5:q=10'h20f;

6:q=10'h212;7:q=10'h215;8:q=10'h219;9:q=10'h21c;10:q=10'h21f;11:q=10'h222;

12:q=10'h225;13:q=10'h228;14:q=10'h22b;15:q=10'h22f;16:q=10'h232;17:q=10'h235;

18:q=10'h238;19:q=10'h23b;20:q=10'h23e;21:q=10'h241;22:q=10'h244;23:q=10'h247;

24:q=10'h24b;25:q=10'h24e;26:q=10'h251;27:q=10'h254;28:q=10'h257;29:q=10'h25a;

…………………………………………………………

1008:q=10'h1cc;1009:q=10'h1cf;1010:q=10'h1d2;1011:q=10'h1d5;1012:q=10'h1d8;1013:q=10'h1db;1014:q=10'h1de;1015:q=10'h1e2;1016:q=10'h1e5;1017:q=10'h1e8;1018:q=10'h1eb;1019:q=10'h1ee;1020:q=10'h1f1;1021:q=10'h1f4;1022:q=10'h1f8;1023:q=10'h1fb;

default:q=10'h200;

endcase

end

endmodule

 

 

 

 

 

 

 

5.2.3 频率控制累加器模块设计

    本系统要求生产的正弦信号的频率变化的步进值为1~2khz,那么我们设计的频率控制的二进制位宽为

begin

    if(~reset_n)

add<=20'd0;

else

    add<=add+freqword;

end

这里我们是通过频率控制字的累加来生成频率的。

联系:highspeedlogic

QQ :1224848052

微信:HuangL1121

邮箱:1224848052@qq.com

网站:http://www.mat7lab.com/

网站:http://www.hslogic.com/

微信扫一扫:

Tags:DDS 
作者:DDS 来源:DDS
  • 您是如何找到本站的?
  • 百度搜索
  • Google搜索
  • 查阅资料过程中
  • 论坛发现
  • 百度贴吧发现
  • 朋友介绍
本站最新成功开发工程项目案例
相关文章
相关评论
发表我的评论
  • 大名:
  • 内容:
  • matlab代做|matlab专业代做|matlab淘宝代做|python人工智能代做|FPGA项目合作|C代做|C++代做(www.hslogic.com) © 2021 版权所有 All Rights Reserved.
  • Email:highspeed_logic@163.com 站长QQ: 1224848052

    专业代做/代写/承接、MATLAB、SIMULINK、FPGA项目、博士/硕士/本科毕业设计、课题设计、论文,毕业论文,Coursework、Eassy、Assignment