毕业论文 DDS的VHDL语言实现及其高纯谱研究.doc

上传人:仙人指路1688 文档编号:4016284 上传时间:2023-04-01 格式:DOC 页数:48 大小:542KB
返回 下载 相关 举报
毕业论文 DDS的VHDL语言实现及其高纯谱研究.doc_第1页
第1页 / 共48页
毕业论文 DDS的VHDL语言实现及其高纯谱研究.doc_第2页
第2页 / 共48页
毕业论文 DDS的VHDL语言实现及其高纯谱研究.doc_第3页
第3页 / 共48页
毕业论文 DDS的VHDL语言实现及其高纯谱研究.doc_第4页
第4页 / 共48页
毕业论文 DDS的VHDL语言实现及其高纯谱研究.doc_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《毕业论文 DDS的VHDL语言实现及其高纯谱研究.doc》由会员分享,可在线阅读,更多相关《毕业论文 DDS的VHDL语言实现及其高纯谱研究.doc(48页珍藏版)》请在三一办公上搜索。

1、基于FPGA的DDS正弦波信号源设计内容摘要:频率合成技术在现代电子技术中具有重要的地位。在通信、雷达和导航等设备中,它可以作为干扰信号发生器;在测试设备中,可作为标准信号源,因此频率合成器被人们称为许多电子系统的“心脏”。直接数字频率合成(DDSDigital Direct Frequency Synthesis)技术是一种全新的频率合成方法,是频率合成技术的一次革命。本文主要分析了DDS的基本原理及其输出频谱特点,并采用VHDL语言在FPGA上实现。对于DDS的输出频谱,一个较大的缺点是:输出杂散较大。针对这一缺点本文使用了两个方法加以解决。首先是压缩ROM查找表,在相同ROM容量的情况下

2、,压缩后相当于把512点查找表扩展为2048点,过采样的引入提高了DDS输出谱的纯度。其次,采用了相位随机抖动技术,引入了M序列作为DDS采样输出的相位随机抖动,这个方法把原来的均匀查表抽样变成为伪随机非均匀抽样,使得DDS输出谱的杂散分量白化,同样使输出频谱纯度得到提高。本文最后用频谱分析仪做了相关实验测试,在实验上验证了设计思想。关键词:DDS FPGA VHDL M序列 频谱The realization of DDS with VHDL and its high pure spectrum research Abstract;The frequency synthesis techno

3、logy has the important status in the modern electronic technology. In equipment such as correspondence, radar and navigation, it may work as the unwanted signal generator; In the test facility, may work as the standard signal source, therefore the frequency synthesizer is called by the people as the

4、 heart of many electronic systems .DDSDigital Direct Frequency Synthesis technology is one brand-new frequency synthetic method, is a frequency synthesis technology revolution. This paper analyzes the basic principle of DDS and its output frequency spectrum characteristic, and realizes it with VHDL

5、language on FPGA. In regard to the output frequency spectrum of DDS, a shortcoming is: The output spurious is bigger. In view of this shortcoming this article uses two methods to solve. First compress the ROM search table, in the same capacity of ROM, it is equal to expand 512 searches tables to 2,0

6、48 after the compression, the introduction of over sampling enhance the spectrum purity of DDS output. Then utilize the phase random dither technology, use the M sequence as the phase random dither of the DDS sampling output .this method causes evenly look up table sampling turn to for pseudo-random

7、 non- even sampling, it make the output spurious component of DDS change to white noise, similarly enhance purity of the output frequency spectrum to This article finally used the spectrum analyzer to do the correlation experiment test, has confirmed the design thought at the experiment.Key words: D

8、igital Direct Frequency Synthesis FPGA VHDL M sequenceSpectrum目 录一、频率合成技术概述及DDS性能特点4(一) 频率合成技术概述4(二) DDS特点5二、DDS基本原理6(一) 波形存储器基本原理6(二) DDS基本原理6(三) DDS设计中的参数选择8(四) 小结8三、DDS的VHDL语言实现9(一) EDA技术与VHDL语言9(二) DDS的FPGA实现方法10(三) 开发平台10(四) 基本DDS的VHDL实现与仿真10四、 提高输出频谱纯度的方法与实验验证14(一) DDS的频谱纯度提高方法简述14(二) 相位随机抖动原理

9、与VHDL实现15(三) 频谱纯度提高的实验验证20五、程序下载及硬件调试20(一) FPGA的配置和下载20(二) 调试与程序固化21六、结束语21七、致谢22参考文献22附录23(一) 各组成模块的VHDL程序23基于FPGA的DDS正弦波信号源设计一、频率合成技术概述及DDS性能特点(一) 频率合成技术概述频率合成是指由一个或多个频率稳定度和精确度很高的参考信号源通过频率域的线形运算,产生具有同样稳定度和精确度的大量离散频率的过程。实现频率合成的电路叫频率合成器,频率合成器是现代电子系统的重要组成部分。它在很多领域都有很广泛的应用。如在通信、雷达、导航、遥控摇测、电子对抗、以及现代化的仪

10、器仪表的领域,都可以看到频率合成器的身影,由于它应用领域的广泛,所以人们对它进行了深入的研究。到现在为止,已经发展到了第三代频率合成技术。随着电子技术的不断发展,对频率合成器的要求越来越高,频率合成器的主要性能指标有:1 输出频率范围频率范围是指频率合成器输出最低频率和输出最高频率之间的变化范围,它包含中心频率和带宽两个方面的含义。2频率稳定度频率稳定度是指在规定时间间隔内,频率合成器输出频率偏离标定值的数值,它分长期,短期和瞬间稳定度三种。3频率间隔频率间隔是指两个输出频率的最小间隔,也称频率分辨率。4频率转换时间频率转化时间是指输出由一个频率转换到另一个频率的时间。5频率纯度频率纯度以杂散

11、分量和相位噪声来衡量。杂散又称寄生信号,分为谐波分量和非谐波分量两种。主要由频率合成过程中的非线形失真产生;相位噪声是衡量输出信号抖动大小的参数。6调制性能调制性能是指频率合成器的输出是否具有调幅、调频、调相等功能。频率合成器的实现方法有三种:直接模拟频率合成、间接频率合成和直接数字频率合成。直接模拟频率合成技术是一种早期的频率合成技术,它用一个或几个参考频率源经谐波发生器变成一系列谐波,再经混频、分频、倍频和滤波等处理产生大量的离散频率。这种方法的优点是频率转换时间短、相位噪声低,但是由于采用大量的混频、分频、倍频和滤波等途径,使频率合成器的体积大,成本高,结构复杂,容易产生杂散分量,且难于

12、抑制。间接频率合成技术又称锁相式频率合成,它是利用锁相技术实现频率的加、减、乘、除。其优点是由于锁相环路相当于一个窄带跟踪滤波器,因此能很好地选择所需频率的信号,抑制杂散分量,且避免了大量使用滤波器,十分有利于集成化和小型化。此外,一个设计良好的压控振荡器具有高的短期频率稳定性,而标准频率源具有高的长期频率稳定度,锁相式频率合成器把这两者结合在一起,使其合成信号的长期频率稳定度和短期频率稳定度都很高。但锁相式频率合成器的频率转换时间较长,单环频率合成器的频率间隔不可能做得很小。直接数字频率合成(DDSDigital Direct Frequency Synthesis)技术是一种全新的频率合成

13、方法,是频率合成技术的一次革命。这种技术首先由美国学者J .Tierny,C.M.Rader和B.Gold三人于1971年首次提出,但限于当时的技术和工艺水平,DDS技术仅仅在理论上进行了一些探讨,而没有应用到实际中去。随着微电子技术的迅速发展,直接数字频率合成(DDSDigital Direct Frequency Synthesis)得到了飞速发展,它以有别于其它频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。具体体现在相对带宽宽、频率转换时间短、频率分辨率高、输出相位连续、可产生宽带正交信号及其他多种调制信号、可编程和全数字化、控制灵活方便等方面,并具有极高的性价比。(二)

14、DDS特点DDS是一种全数字化的频率合成器,由相位累加器、波形ROM、D/A转换器和低通滤波器构成。时钟频率给定后,输出信号的频率取决于频率控制字,频率分辨率取决于累加器位数,相位分辨率取决于ROM的地址线位数,幅度量化噪声取决于ROM的数据位字长和D/A转换器位数。DDS在相对带宽、频率转换时间、相位连续性、正交输出以及集成化等一系列性能指标方面远远超过了传统频率合成技术所能达到的水平,为系统提供了优于模拟信号源的性能。它的一些优点如下:1.输出频率相对带宽较宽输出频率带宽为50%(理论值)。但考虑到低通滤波器的特性和设计难度以及对输出信号杂散的抑制,实际的输出频率带宽仍能达到40%。2.频

15、率转换时间短DDS是一个开环系统,无任何反馈环节,这种结构使得DDS的频率转换时间极短。事实上,在DDS的频率控制字改变之后,需经过一个时钟周期之后按照新的相位增量累加,才能实现频率的转换。因此,频率转换时间等于频率控制字的传输,也就是一个时钟周期的时间。时钟频率越高,转换时间越短。DDS的频率转换时间可达纳秒数量级,比使用其它的频率合成方法都要短数个数量级。3.频率分辨率极高若时钟的频率不变,DDS的频率分辨率就是由相位累加器的位数N决定。只要增加相位累加器的位数N即可获得任意小的频率分辨率。目前,大多数DDS的分辨率在1Hz数量级,许多小于1mHz甚至更小。4.相位变化连续改变DDS输出频

16、率,实际上改变的是每一个时钟周期的相位增量,相位函数的曲线是连续的,只是在改变频率的瞬间其频率发生了突变,因而保持了信号相位的连续性。5.输出波形的灵活性只要在DDS内部加上相应控制如调频控制FM、调相控制PM和调幅控制AM,即可以方便灵活地实现调频、调相和调幅功能,产生FSK、PSK、ASK和MSK等信号。另外,只要在DDS的波形存储器存放不同波形数据,就可以实现各种波形输出,如三角波、锯齿波和矩形波甚至是任意的波形。当DDS的波形存储器分别存放正弦和余弦函数表时,既可得到正交的两路输出。6.其他优点由于DDS中几乎所有部件都属于数字电路,易于集成,功耗低、体积小、重量轻、可靠性高,且易于程

17、控,使用相当灵活,因此性价比极高。DDS也有局限性,主要表现在:1.输出频带范围有限由于DDS内部DAC和波形存储器(ROM)的工作速度限制,使得DDS输出的最高频有限。目前市场上采用CMOS、TTL、ECL工艺制作的DDS芯片,工作频率一般在几十MHz至400MHz左右。采用GaAs工艺的DDS芯片工作频率可达2GHz左右。2.输出杂散大由于DDS采用全数字结构,不可避免地引入了杂散。其来源主要有三个:相位累加器相位舍位误差造成的杂散;幅度量化误差(由存储器有限字长引起)造成的杂散和DAC非理想特性造成的杂散。二、DDS基本原理(一)波形存储器基本原理波形存储器(ROM)地址译码1 0 0

18、0 0 0 0 0 01 1 0 0 0 0 0 1 11 1 1 1 1 1 1 1 10 0 0 0 0 0 0 0 00 0 0 0 0 0 1 1 1可寻址空间 2 在2个单元内存储一个周期的波形图1 ROM内部存取数原理DDS采用的是全数字结构,它将用一定的算法预先把以时钟频率对正弦信号进行抽样得到的值放存储器中。这里以ROM为例。如果ROM有N条地址线,则这个存储器的存储空间为2。存储器中的数据与波形的关系如图1所示。假如在2个存储单元内存放了一个周期的正弦波形数据,则每个单元内的数据就表示正弦值的大小,这种存储器称为波形数据存储器。如果重复地从02-l单元读出波形数据存储器中的数

19、据,在波形数据存储器的输出端就会得到周期的正弦序列。此时得到的数据是抽样量化后的正弦信号。如果将周期的正弦序列输入到D/A转换器,则会在D/A转换器的输出端得到连续的正弦电压或电流。输出序列的周期是由时钟周期来确定的。设时钟周期为T,且ROM的地址长度为2,则输出信号的周期为T=2 T。这说明输出信号的周期与时钟周期成正比,时钟频率越高,读取信号一个周期时间越短,信号频率越高。(二) DDS基本原理对于正弦信号发生器,它的输出可以用下式来描述: S=Asint=Asin(2ft) (1)其中S是指该信号发生器的输出信号波形,f是指输出信号对应的频率。上式的表达对于时间t是连续的,为了用数字逻辑

20、式实现该表达式,必须进行离散化处理,用基准时钟clk进行抽样,令正弦信号的相位:=2ft (2)在一个clk周期T ,相位的变化量为:=2fT= (3)其中 f 是指clk的频率对于2可以理解为“满”相位,为了对进行数字量化,把2切割成2份,由此每个CLK周期的相位增量用量化值B来描述:B2 ,且 B为整数。与式(3)联立。可得 B=2 (4)显然,信号发生器的输出可能为:S=Asin(+)=Asin(B+ B)=Af(B+ B) (5)其中 指前一个clk周期的相位值,同样得出B2 (6)由上面的推导,可以看出,只要对相位的量化增量进行简单的累加运算,就可以得到正弦信号的当前值,而用于累加的

21、相位增量量化值B决定了信号的输出频率f,并呈现简单的线形关系。直接数字合成器DDS就是根据上述原理而设计的数字控制频率合成器。频 率控 制 字相 位累 加 器正弦查表(ROM)D/A参考时钟源图2 基本DDS结构如图2所示的是一个基本的DDS结构,主要由相位累加器、同步寄存器、正弦ROM查找表、D/A构成。相位累加器是整个DDS的核心,在这里完成上文原理推导中的相位累加功能。相位累加器由N位加法器与N位累加寄存器级联构成。相位累加器的输入是相位增量B,又由于B与输出频率f是简单的线形关系:B=2。相位累加器的输入即相位增量又可以称为频率控制字,用K来表示。每来一个时钟脉冲f,加法器将频率字k与

22、累加寄存器输出的累加相位数据相加,把相加后的结果送到累加寄存器的数据输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加。由此可以看出,相位累加器在每一个时钟输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位,相位累加器的输出频率就是DDS输出的信号频率。K的大小控制了地址加法器输出的递增速率。在此设计中,把K设计成可变值,增加了频率控制的灵活性。其中,K的最小为1,最大为511。在时钟频率f不变的情况下,K的大小控制了D8D0从最小到最大变化所用的时间。K大,每次运算的结果较前一次的数据增长就大,因而

23、地址数据循环一周所需时间就短,这意味着D/A转换器输出的波形频率就高。反之则相反。用相位累加器输出的数据作为波形存储器(ROM)的相位取样地址。这样就可把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出,完成相位到幅值转换。波形存储器的输出送到D/A转换器,D/A转换器将数字量形式的波形幅值转换成所要求合成频率的模拟量形式信号。低通滤波器用于滤除不需要的取样分量,以便输出频谱纯净的正弦波信号。(三) DDS设计中的参数选择 一般而论,DDS的组成形式如图2 所示。图中波形数据存储器的全部数据被读出一次的频率为:f=K (7)式中: f:波形数据存储器输出信号的频率; N:地址加法器的数

24、据宽度; K: 频率控制字;f:系统的时钟频率;(四)小结综上所述,DDS由以下两次变换实现:1.从不变量K以时钟f产生量化的相位序列。这个过程一般由一个以f作时钟的N位相位累加器来实现。如图3所示 累 加 器频率控制字N位寄 存 器相位量化序列图 3 产生相位序列的过程2.从离散量化的相位序列产生对应的正弦信号的离散幅度序列。这个过程可由对波形ROM的寻址来完成,如图4所示。相位量化序列波 形 ROM正弦幅度序列图 4 产生正弦幅度序列的过程把量化的数字波形经D/A转换,再经过低通滤波器就得到频率为f的正弦信号。不变量K被称为相位增量,也叫频率控制字。当K=1时,DDS输出最低频率(也即频率

25、分辨率)为,因此,只要N足够大,DDS可以得到很细的频率间隔。要改变DDS输出频率,只要改变K即可。DDS的最大输出频率由Nyquist采样定理决定,即为。三、DDS的VHDL语言实现(一) EDA技术与VHDL语言 1EDA技术现代电子设计的核心是EDA(Electronic Design Automation)技术。它是一种实现电子系统或电子产品自动化设计的技术,它与电子技术、微电子技术的发展密切相关,它吸收了计算机领域的大多数最新研究成果,以高性能的计算机作为工作平台,是20世纪90年代从CAD(Computer Aided Design,计算机辅助设计)、CAM (Computer A

26、ided Manufacture,计算机辅助制造)、CAT (Computer Aided Test,计算机辅助测试)和CAE (Computer Aided Engineering,计算机辅助工程)的概念发展起来的。EDA工具是以计算机的硬件和软件为基本工作平台,集数据库、图形学、图论与拓扑逻辑、计算数学、优化理论等多学科最新成果研制而成的计算机辅助设计通用软件包。它依赖功能强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL(Hardware Description Language)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、逻辑化简、逻辑分割、逻辑综合、结构综合(布局

27、布线),以及逻辑优化和仿真测试,直至实现既定的电子硬件电路系统功能。EDA技术使得设计者的工作仅限于利用软件的方式,即利用硬件描述语言和EDA软件来完成对系统硬件功能的实现。EDA技术和可编程逻辑器件给今天的硬件系统设计者提供了强有力的工具,使得电子系统发生了质的变化。传统的“固定功能集成块+连线”的设计方法正逐步地退出历史舞台,而基于芯片的设计方法正在成为现代电子系统的主流。2VHDL语言硬件描述语言(HDL-Hardware Description Language) 是一种用形式化方法来描述数字电路和设计数字逻辑系统的语言。它可以使数字逻辑电路设计者利用这种语言来描述自己的设计思想,然后

28、利用EDA工具进行仿真,再自动综合到门级电路,再用PLD或ASIC实现其功能。硬件描述语言的发展至今己有20多年的历史,并成功地应用于设计的各阶段:仿真、验证、综合等。到20世纪80年代时,已出现了上百种硬件描述语言,它们对设计自动化起到了极大的促进和推动作用。但是,这些语言一般各自面向特定的设计领域与层次,而且众多的语言使用户无所适从,因此急需一种面向设计的多领域、多层次、并得到普遍认同的标准硬件描述语言。进入80年代后期,硬件描述语言向着标准化的方向发展。最终,VHDL和Verilog HDL语言适应了这种趋势的要求,先后成为IEEE标准。 VHDL诞生于1982年,它的英文全名是VHSI

29、C Hardware Description Language,而VHSIC则是Very High Speed Integerated Circuit.的缩写词,意为甚高速集成电路。1987年,VHDL被IEEE和美国国防部确认为标准硬件描述语言。自IEEE公布了VHDL的标准版本(IEEE-1076 )之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版。 VHDL主要用于描述数字系统的结构、行为、功

30、能和接口。除了含有许多具有硬件特性的语句外,VHDL的语言形式、描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,即端口)和内部(或称不可视部分,即涉及实体内部功能和算法的完成部分)。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。(二) DDS的FPGA实现方法虽然目前市场上有较多功能完备的DDS芯片,但是一般属于高速芯片,价格较高,同时专用型的DDS控制方式相对固定。在低速应

31、用方面利用FPGA设计则可以根据需要方便地实现各种比较复杂的功能,具有良好的灵活性。因此本文采用了FPGA设计DDS芯片,利用软件MaxPlusII就可以设计我们需要的功能模块。本系统硬件设计中,采用的时钟频率是10MHz,使用了EPF10K20TC144-4的FPGA。在该芯片上,通过VHDL硬件描述语言设计完成以下功能的模块及相关控制单元,最后把这些模块连接起来构成一个完整系统就可实现DDS。主要有:可控相位累加累减器;判决控制器;寄存器;M序列发生器;延时器;(三)开发平台DDS技术的实现依赖于高速、高性能的数字器件。可编程逻辑器件以其速度高、规模大、可编程,以及有强大EDA软件支持等特

32、性,十分适合实现DDS技术。在一般的设计开发中,我们常使用由PLD公司提供的集成EDA软件,这些集成的开发软件提供了设计输入编辑器、HDL综合器、FPGA/CPLD适配器、门级仿真器和编程下载器等一整套完整的开发工具,如Lattice的ISP-LEVER和ISP-Design EXPERT, Altera的MaxPlus II和 Quarters II、Xilinx的ISE和Foundation等。Altera是著名的PLD生产厂商,多年来一直占据着行业领先的地位。Altera的PLD具有高性能、高集成度和高性价比的优点,此外它还提供了功能全面的开发工具和丰富的IP核、宏功能库等,因此Alte

33、ra的产品获得了广泛的应用。Altera的产品有多个系列,按照推出的先后顺序依次为Classic系列、MAX(MultipleArrayMatrix)系列、FLEX(FlexibleLogicElementMatrix)系列、APEX(AdvancedLogicElementMatrix)系列、ACEX系列、Stratix系列以及Cyclone等。Maxplus II是Altera提供的FPGA/CPLD开发集成环境。它是一个完整的EDA开发软件,可完成从设备输入、编译、逻辑综合、器件适配、设计仿真、定时分析、器件编程的所有过程。Maxplus II界面友好,使用便捷,被誉为业界最易学的EDA

34、软件。它提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。我们在此设计中就是利用的MaxPlusII这个软件。(四)基本DDS的VHDL实现与仿真在此设计中,利用了正弦信号在不考虑信号的极性的情况下,四分之一周期能够包含一个周期内的所有内容的原理。因此,本文中在ROM中只储存了正弦波四分之一周期的采样值,采用VHDL语言编写出控制语言,并结合硬件,实现了通过D/A转换器就能恢复出正确的正弦值的系统功能。由于仅仅储存了正弦波四分之一周期的采样值,提高了ROM的利用率,从而提高了频率分辨率。在此设计思想上,设计出了以下几个部分实现DDS的功能。1.实现判决控制功能的

35、模块由于选用的FPGA芯片EPF10K20TC144-4 中ROM的最大容量为12.288Kbit,有两个ROM每个ROM宽度为8bit,各为6.144Kbit。在本设计中只需要一个ROM,因此可以把它们合并起来构成16比特储存宽度。由此可得到地址线的长度为2=6144/8=768N9.58 N可取9 以上计算表明可以在ROM中最大存入768个查找点.本文中为了方便,取512个点,这个值刚好是29将大大方便后面的设计。实验表明要达到最大768个点,编译时要出错,该选用的FPGA的EAB单元还不足够。.由于设计思路是在ROM中只存入四分之一周期的数据,这样可以提高采样点数,使输出频率范围更宽。因

36、此,设计了一个实现判决控制功能的模块。在此模块中,实现的功能是对输入的时钟进行计数并通过与除法器输出的数据比较并判决,由判决的结果控制相位累加累减器的加减计数功能同时输出控制信号控制输出信号的符号,因此利用VHDL语言设计出了可实现此功能的模块。仿真结果如图5所示。可以看出,通过频率控制字的控制,输出端输出了控制累加累减的信号“enable”以及控制符号的信号“zhengfu”。所以此模块可以实现记数及判决功能。判决控制模块部分程序:cc: process(clk,cout)beginif clkevent and clk=1then if cout=000 then enable=0; el

37、sif cout=001 then enable=1; elsif cout=010 then enable=0; elsif cout=011 then enable=000 and cout=001 then zhengfu001 and cout=011 then zhengfu=0; else null; end if;end if;end process cc;图 5判决控制模块仿真图2.可控累加累减器在此模块中,受判决器模块输出信号的控制可实现累加或累减的功能。这样就可以实现用四分之一周期表示完整正弦周期的信号特征。如图6、图7、图8及图9所示,当频率控制字“freqin”不同时,

38、累加累减的速度不同;当累加累减信号“enable”不同时,系统的功能也不同,即当“enable”为0时,实现累加功能,当“enable”为1时,实现累减功能。可控累加累减器部分程序:process(clk1)beginif res=1 then acc=000000000;else if clk1event and clk1=0 then freqw=freqin; if enable1 =0then acc=acc+freqw; elsif enable1 =1 then acc=acc-freqw;else acc0); end if;end if;end if;ddsout=acc;en

39、d process;图6 频率控制字为2,enable为0时的累加器以2做累加仿真图图7频率控制字为2,enable为1时的累减器以2做累减仿真图图 8频率控制字为4,enable为0时累加器以4做累加仿真图图 9频率控制字为4,enable为1时的累减器以4做累减仿真图由以上几个仿真图可以知道累加累减器设计是正确的。3.寄存器 在设计中引入了一个寄存器寄存相位累加累减器输出的数据,可以减小误差。寄存器仿真结果如图10所示,表明此模块可以实现寄存的功能。图 10 寄存器仿真图4.ROM查找表的建立及除法模块的设计在DDS中,需要在ROM中预先存入正弦信号的采样点值。所以首先需要建立ROM查找表

40、。利用MATLAB语言可以很简单精确的得到抽样点值。具体程序如下:i=0:1:512;y=round(sin*65535)在MaxPlusII中,有一个参数可设置模块库(LPMLibrary of Parameterized Modules),该库可以以图形或硬件描述语言的方式调用,这使得基于EDA技术的电子设计的效率和可靠性有了很大提高。在此设计中,调用了其中的LPM_ROM函数。根据所设计的系统对LPM_ROM的参数进行设置,同时为ROM配置数据文件。利用MATLAB工具产生512点查表数据,再把该数据映射到ROM配置文件中,就可以实现正确调用LPM_ROM。另外,在设计中还调用了LPM库

41、中的LPM_divide模块,输出的数作为判决控制器的输入,实现判决控制器的功能。 5.数控分频器 数控分频器的功能就是当在输入端给定不同输入数据时,将对输入的时钟信号有不同的分频比。这里采用的方法就是用计数值可并行预置的加法计数器设计完成的,方法是将计数溢出位与预置数加载输入信号相接即可。如图11所示,当控制位D不同时,输出的频率“FOUT”也不同。图12、图13显示了不同控制位时的分频比。图 11 分频器的波形仿真图图12 当为四分频时的波形仿真图图13 十分频时的波形仿真图6.顶层文件一个程序只可以有一个顶层文件,其他文件都是间接或直接进行调用的。在此设计中,为DDS的主体部分设计了一个

42、顶层模块,这样在设计系统模块时方便调用。该顶层模块的仿真结果如图14、图15所示,当频率控制字不同时,输出的“data”改变速度不同,从而实现输出频率不同的正弦波的系统功能。图 14 顶层文件仿真图(频率控制字为2时)图 15 顶层文件仿真图(频率控制字为4时)四、 提高输出频谱纯度的方法与实验验证 (一)DDS的频谱纯度提高方法简述实际系统中常常要考虑DDS的频谱纯度,频谱纯度不高这是DDS的最大缺点之一。这往往限制了DDS在更多场合下的应用。分析原因可知,主要是由于DDS是全数字化结构,它的工作原理使得DDS中不可避免地存在幅度量化误差,相位截断误差等因素,从而引起输出频谱变坏。 对于降低

43、杂散功率的方法,目前研究的已比较多,归纳起来主要有三种。第一种方法是优化设计波形ROM和相位累加器。为了降低相位截断误差,需要增加波形ROM的地址线位数,但地址线位数增加一位,ROM的容量就要增加一倍,因此一味增加地址线位数是不切实际的,可以通过压缩存储数据来等效地增大ROM数据寻址位。压缩ROM方法可以采用插值算法,在采样点之间通过算法实现插入多个点,从而扩大查找表的有效点数。最简单而直接的方法即只保存正弦波0,/2区间的数据,然后利用对称性来恢复其它象限的数值,这样一来可得到4:1的数据压缩比。第二种提高频谱纯度的方法是用随机抖动法提高无杂散动态范围。由于DDS的周期性,输出杂散频谱往往表

44、现为离散谱线,随机抖动技术使离散谱线均匀化,从而提高输出频谱的无杂散动态范围。图16,17所示的是两种常见的随机抖动技术。还有一种方法是以过采样的方法降低带内误差功率,当量化噪声为白噪声时其功率是均匀分布在0 f clk. / 2频带内的 (f clk为采样频率) ,如果提高采样频率,则在原先频带内的噪声功率将降低,通过低通滤波器后,带外噪声被滤除,频谱将得到改善。但是这个方法会降低DDS的工作频率。 通过对三种方法的比较,本文采用了压缩存储数据和随机抖动技术相结合的方法来提高频谱纯度的方法。在第三章已经介绍了压缩存储数据的方法,本章主要讨论随机抖动技术的方法。相 位 累 加 器抖 动 序 列

45、波 形 ROMB=N-AAN图16一种采用相位随机抖动序列提高频谱纯度的方案波 形 ROM 抖 动 序 列D/A转换器 图17 一种采用幅度随机抖动序列提高频谱纯度的方案(二)相位随机抖动原理与VHDL实现 1.相位随机抖动原理分析理论分析表明抖动技术可以有效地提高无杂散动态范围或降低杂散分量。随机抖动可以提高DDS的输出无杂散动态范围,在于它破坏了杂散的相关性,把离散的强度较大的杂散谱白化。抖动的方法有好几种,如抖动频率控制字,抖动波形ROM的地址和抖动正弦波幅度。频率控制字抖动时,每次抖动前应把上一次的抖动减掉,否则抖动将在相位累加器中积累,产生频率调制,因此这种抖动实现起来电路复杂。把伪随机抖动加入在相位累加器输出端(见图16),从而可以达到提高DDS频谱纯度的目的,这个方法的另一个好处是不会降低DDS工作的速度。本文利用的是抖动波形ROM的地址的方法。相位抖动的原理图如图16所示。抖动源可以看成是一个在0,2-1上均匀分布的随机序列r(n),相位累加器输出的相位序列(n)和抖动序列r(n)相加后再进行相位截断。DDS的输出序列S(n)为:S(n)=sin(nK)-e(n)cos(nK) (8)其中e(n)=

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号