版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于fpga的信号发生器设计摘要作为一种新的频率合成技术,数字频率合成技术(dds技术)能够应用到基于fpga的信号源设计中。由于微电子技术的快速发展以及数字电路的集成化越来越高,基于fpga的dds技术的优越性越来越突出。直接数字频率合成器(dds技术),它是一种频率合成器,实现方法全数字化,它的组成由相位累加器、存储波形的rom、d/a(数模转换器)和低通滤波器。dds技术有着较高的频率分辨率,并且可以快速切换频率、能够时刻保持相位连续等很多优点。m提供定制实物仿真服务.本文首先介绍了dds技术的发展以及dds技术在信号源中的应用,其次介绍了fpga以及quartus和v
2、hdl等方面的相关知识,再其次介绍fpga和dds技术设计信号源的思路以及硬件设计图,最后对基于fpga和dds技术的信号源设计做出仿真和验证,并且验证本设计的合理性并对本设计的方案提出改进。关键词:fpga,vhdl,dds,信号源 design of signal generator based on fpgaabstractas a new technology of frequency synthesis, digital frequency synthesis technology (dds technology) can be applied to the design of si
3、gnal source based on fpga. due to the rapid development of microelectronics and integrated more and more digital circuit, based on the advantage of fpga dds technology is more and more prominent. direct digital frequency synthesizer (dds), it is a kind of frequency synthesizer, realization of full d
4、igital, it consists of the phase accumulator, stored waveform rom, da (dac) and low pass filter. the dds technique has a high frequency resolution, fast switching frequency, continuous phase and many advantages to keep time. this paper firstly introduces the application of the development of dds tec
5、hnology and dds technology in the signal source, then introduces the related knowledge of fpga and quartus and vhdl etc., then followed by the introduction of ideas as well as the hardware design of fpga and dds technology to design the signal source, the design of signal source based on fpga and dd
6、s technology to make the simulation and verification and validation, the rationality of design and the design scheme is proposed to improve. key words: fpga, vhdl, dds, signal source目 录abstract2第一章 绪论41.1引言41.2 基于fpga的dds的信号源41.3 本论文研究目的和主要内容5第二章 fpga设计相关知识简介62.1 fpga简介62.1.1 fpga的概述62.1.2 fpga结构介绍6
7、2.2 quartus ii开发系统82.3 硬件描述语言简介10第三章 fpga设计dds原理介绍143.1 系统设计及原理图143.2 dds工作模块15第四章 fpga主程序的实现184.1 fpga控制dds的信号源软件程序设计184.2 fpga内部模块194.3 fpga控制dds波形输出模块254.4 fpga控制dds整体模块设计和仿真波形344.5 fpga控制dds的信号源结论36第五章 实验结论与研究展望385.1 研究展望385.2 结束语38第六章 全文总结40附录42 第一章 绪论m提供定制实物仿真服务1.1引言信号源是一种为测试信号提供信号的仪器
8、,对于很多测试系统,信号源有极其重要的作用,很多现代电子设备和系统的功能都依赖于所用频率源的性能,而当今高性能的频率源都是通过频率合成技术来实现。传统的频率合成器有直接频率合成器和锁相环两种,直接数字频率合成技术是一种新型的频率合成技术,它是一种采用数字化技术,通过控制相位的变化速度,直接产生各种不同频率信号的频率合成方法。随着直接数字频率合成(dds)技术的发展,很多公司开发出了功能各异的dds专用集成芯片,同d/a转换器和低通滤波器(lpf)一起可以组成任意波形信号的发生器,但因其控制方式相对固定,所以无法满足各种需要。近年来现场可编程门阵列(field programmable gate
9、 array简称:fpga)技术得到了迅速发展和广泛应用,其工作频率、资源容量以及集成度都有了极大提高,这使得利用fpga实现某些专用数字集成电路的方法引起了大家的关注。基于fpga实现的直接数字频率合成器充分发挥了fpga可编程的优点,与专用芯片构成的dds系统相比具有以下优点:灵活的接口和控制方式、转换时间短、带宽大、相位连续变化和频率分辨率高等,这为设计者实现高性能的dds系统提供了一种灵活且实用的方法。1.2 基于fpga的dds的信号源基于fpga设计的dds信号源,它是一种全数字技术,是一种基于相位产生所需波形的技术,它在1971年被提出,由于当时科学技术水平低,器件发展水平不高,
10、和当时的技术相比,dds的性能远远跟不上要求,以至于人们当时不重视dds技术。随着科学技术的发展,dds技术有了突飞猛进的发展。它的很多性能是其他频率合成的方法所无法比拟的,很快成为领先者。最初dds是dds芯片,但是随着fpga技术的发展,由于fpga有很多逻辑资源,可以通过fpga去模拟dds信号源,而且由于作为主控制芯片,可以节省dds芯片,从而更加节省资源,经济实用型以及便捷可设计性更好。基于fpga的dds的信号源,它需要设计波形存储器存储所需要产生的波形,比如正弦波,三角波,方波,锯齿波,等波形,还可以产生任意波形,只需要改变波形存储器中存储的波形即可,因此具有良好的可设计性以及可
11、移植性,同时根据需求可以设计出所需要性能的dds信号源,结合fpga以及da芯片设计dds信号源,可以达到很多设计要求的精度,输出的模拟波形相位连续,相位噪声低。1.3 本论文研究目的和主要内容随着科学的发展,人们在信号源的研究与发展上取得了很大的突破,尤其是对基于dds的信号源的研究有了突飞猛进的研究,同时人们对信号源的性能的要求越来越高,比如信号源的分辨率,相位噪声等。而信号源的精度等性能对工业,农业以及国防,教育,电子等事业测量的准确性都有着很大的影响,由于在通信,电子,教学,等行业,对信号的要求很多,输入测试信号的好坏直接影响整个实验结果,因此设计高精度的信号源则显得愈发重要,但是由于
12、传统的信号源体积庞大,而且很多教学等领域对信号精度要求没有工业那么高,那么基于fpga设计的dds信号源的产生具有重大意义,既可以满足精度相对高,相位噪声低等特点,同时也可以满足体积小,便携性能好,能够很好的设计等优点,所以基于fpga设计的dds信号源的研究与设计具有重大的意义。首先根据基于fpga设计的dds信号与的需求以及意义,我们将本论文分为六部分:第一章 主要介绍基于fpga设计的dds信号源的的背景,意义以及应用范围;第二章 简要介绍了fpga和仿真软件及其语言vhdl;第三章 介绍基于fpga设计的dds信号源的的硬件设计,并验证硬件设计的正确性第四章 介绍基于fpga设计的dd
13、s信号源的的软件设计,并进行仿真与讨论第五章 对结论进行分析并分析该设计的缺点以及需要改进的地方,并总结了研究展望第二章 fpga设计相关知识简介2.1 fpga简介2.1.1 fpga的概述fpga(fieldprogrammable gate array),也叫现场可编程门阵列。早在1980年代中期,在各种pld器件的基础上,fpga就出现在世人的眼中。它是在pal、gal、cpld等可编程器件的基础上进一步发展的产物。也是一种应用在专用集成电路(asic)领域中的半定制电路,既解决了定制电路的开发周期长等不足,又克服了过去的可编程器件门电路数目有限的缺点。目前fpga的硬件描述主要由硬件
14、描述语言(verilog 或 vhdl)来完成,写好的用来描述硬件的程序通过简单的综合、布局,快速烧录到 fpga 芯片上进行测试,这也是当今主流的ic 设计验证的技术方法。这些可编辑器件可以实现一些基本的数字逻辑门电路(比如and、or、xor、not)或是更为复杂的功能例如编码器、解码器6。市面上的大多数的fpga中都包含了记忆元件,例如触发器(flipflop)等。一般而言,fpga比asic(专用集成芯片)的速度要慢,很难完成复杂的设计,而且相对来说,会消耗更多的电能。但是它们的研发周期短、可维护性、低造价等优点让它们得到了快速的发展。 fpga的基本特点主要有:采用fpga设计asi
15、c电路,用户不需要投片生产,就能得到合用的芯片。fpga可做其它全定制或半定制asic电路的中试样片。fpga内部有丰富的触发器和io引脚。fpga是asic电路中设计周期最短、开发费用最低、风险最小的器件之一。fpga采用高速chmos工艺,功耗低,可以与cmos、ttl电平兼容。可以说,fpga芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。 fpga是由存放在片内ram中的程序来设置其工作状态的,因此,工作时需要对片内的ram进行编程。用户可以根据不同的配置模式,采用不同的编程方式。 加电时,fpga芯片将eprom中数据读入片内编程ram中,配置完成后,fpga进入工作状态。掉电
16、后,fpga恢复成白片,内部逻辑关系消失,因此,fpga能够反复使用。fpga的编程无须专用的fpga编程器,只须用通用的eprom、prom编程器即可。当需要修改fpga功能时,只需换一片eprom即可。这样,同一片fpga,不同的编程数据,可以产生不同的电路功能。因此,fpga的使用非常灵活。2.1.2 fpga结构介绍fpga具有掩膜可编程门阵列的通用结构,它由逻辑功能块排成阵列,并由可编程的互连资源连接这些逻辑功能块来实现不同的设计。fpga一般由3种可编程电路和一个用于存放编程数据的静态存储器sram组成。这3种可编程电路是:可编程逻辑模块(clb-configurable logi
17、c block)、输入/输出模块(iob-i/o block)和互连资源(irinterconnect resource)。可编程逻辑模块clb是实现逻辑功能的基本单元,它们通常规则的排列成一个阵列,散布于整个芯片;可编程输入/输出模块(iob)主要完成芯片上的逻辑与外部封装脚的接口,它通常排列在芯片的四周;可编程互连资源包括各种长度的连接线段和一些可编程连接开关,它们将各个clb之间或clb、iob之间以及iob之间连接起来,构成特定功能的电路。 clb是fpga的主要组成部分。图2-1是clb基本结构框图,它主要由逻辑函数发生器、触发器、数据选择器等电路组成。clb中3个逻辑函数发生器分别
18、是g、f和h,相应的输出是g 、f和h。g有4个输入变量g1、g2、g3和g4;f也有4个输入变量f1、f2、f3和f4。这两个函数发生器是完全独立的,均可以实现4输入变量的任意组合逻辑函数。逻辑函数发生器h有3个输入信号;前两个是函数发生器的输出g和f,而另一个输入信号是来自信号变换电路的输出h1。这个函数发生器能实现3输入变量的各种组合函数。这3个函数发生器结合起来,可实现多达9变量的逻辑函数。clb中有许多不同规格的数据选择器(四选一、二选一等),通过对clb内部数据选择器的编程,逻辑函数发生器g、f和h的输出可以连接到clb输出端x或y,并用来选择触发器的激励输入信号、时钟有效边沿、时
19、钟使能信号以及输出信号。这些数据选择器的地址控制信号均由编程信息提供,从而实现所需的电路结构。clb中的逻辑函数发生器f和g均为查找表结构,其工作原理类似于rom。f和g的输入等效于rom的地址码,通过查找rom中的地址表可以得到相应的组合逻辑函数输出。另一方面,逻辑函数发生器f和g还可以作为器件内高速ram或小的可读写存储器使用,它由信号变换电路控制。 输入/输出模块iob。iob提供了器件引脚和内部逻辑阵列之间的连接。它主要由输入触发器、输入缓冲器和输出触发/锁存器、输出缓冲器组成。每个iob控制一个引脚,它们可被配置为输入、输出或双向i/o功能。当iob控制的引脚被定义为输入时,通过该引
20、脚的输入信号先送入输入缓冲器。缓冲器的输出分成两路:一路可以直接送到mux,另一路经延时几纳秒(或者不延时)送到clbclbclbclbclbbclbclbclbclbclbclbclbclbbclbclbclb可编程开关矩输入输出模块互连资源图2-1 clb基本结构输入通路d触发器,再送到数据选择器。通过编程给数据选择器不同的控制信息,确定送至clb阵列的i1和i2是来自输入缓冲器,还是来自触发器。当iob控制的引脚被定义为输出时,clb阵列的输出信号out也可以有两条传输途径:一条是直接经mux送至输出缓冲器,另一条是先存入输出通路d触发器,再送至输出缓冲器。iob输出端配有两只mos管,
21、它们的栅极均可编程,使mos管导通或截止,分别经上拉电阻接通vcc、地线或者不接通,用以改善输出波形和负载能力。可编程互连资源ir。可编程互连资源ir可以将fpga内部的clb和clb之间、clb和iob之间连接起来,构成各种具有复杂功能的系统。ir主要由许多金属线段构成,这些金属线段带有可编程开关,通过自动布线实现各种电路的连接。2.2 quartus ii开发系统quartus ii 是altera公司提供的开发软件,包括原理图设计、vhdl设计、veriloghdl以及ahdl设计(altera hardware description language)等多很多方式,它内部有自己的的综
22、合器,并有自己的仿真器,从而实现pld的输入到配置硬件的整个设计。 quartus ii支持linux,xp以及unix等多种系统。既可以通过写tcl脚本实现设计,也可以通过界面设计。具有很快的速度,界面统一,功能集中等特点。 quartus ii支持altera的ip核,包括lpm,以及megafunction,用户通过已有的模块,使设计更加简单、速度更加快快速。同时,它也支持其他第三方eda仿真工具,方便用户用户通过第三方工具进行设计。 此外,quartus ii 还能结合dsp builder工具与matlab/simulink,各种dsp系统的应用也可以在quartus ii上实现;a
23、ltera的片上可进行编程的系统(sopc)也可以在quartus ii上实现,设计系统级、开发嵌入式软件、都可以在quartus ii上完成。 maxplus ii 作为altera的上一代pld设计软件,由于其出色的易用性而得到了广泛的应用。目前altera已经停止了对maxplus ii 的更新支持,quartus ii 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。altera在quartus ii 中包含了许多诸如signaltap ii、chip editor和rtl viewer的设计辅助工具,集成了sopc和hardcopy设计流程,并且继承了maxplus ii 友好的
24、图形界面及简便的使用方法。 altera quartus ii 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。quartus ii提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性,包括: 可利用原理图、结构框图、verilog hdl、ahdl和vhdl完成电路描述,并将其保存为设计实体文件; 芯片(电路)平面布局连线编辑; logiclock增量设计方法,用户可建立并优化系统,然后添加对原始系统的性能影响较小或无影响的后续模块; 功能强大的逻辑综合工具; 完备的电路功能仿真与时序逻辑仿真工具; 定时/时序分析与关键
25、路径延时分析; 可使用signaltap ii逻辑分析工具进行嵌入式的逻辑分析; 支持软件源文件的添加和创建,并将它们链接起来生成编程文件; 使用组合编译方式可一次完成整体设计流程; altera的quartus ii可编程逻辑软件属于第四代pld开发平台。该平台支持一个工作组环境下的设计要求,其中包括支持基于internet的协作设计。quartus平台与cadence、exemplarlogic、 mentorgraphics、synopsys和synplicity等eda供应商的开发工具相兼容。改进了软件的logiclock模块设计功能,增添了fastfit编译选项,推进了网络编辑性能,
26、而且提升了调试能力。支持max7000/max3000等乘积项器件。2.3 硬件描述语言简介目前fpga编程语言主要有vhdl和verilog两种硬件描述语言,是目前世界上最流行的两种硬件描述语言(hardware description language,hdl),都是ieee在20世纪80年代中期提出的标准,verilog hdl由gateway design automation(gda)公司开发,vhdl由美国军方研发。verilog hdl和vhdl都是用于逻辑设计的硬件描述语言。verilog hdl和vhdl的相同点在于:都能形式化地抽象表示电路的行为和结构;支持逻辑设计中层次与
27、范围的描述;可以简化电路行为的描述;具有电路仿真和验证机制;支持电路描述由高层到底层的综合转换;与实现工艺无关;偏于管理方面和设计重用。但verilog hdl和vhdl又有各自的特点,由于vhdl推出较早,因而拥有更广泛的客户群体、更丰富的资源。verilog hdl还有一个优点就是容易掌握,如果具有c语言学习的基础,很快就能够掌握。而vhdl需要ada编程语言基础,一般需要半年以上的专业培训才能够掌握。传统观点认为verilog hdl在系统抽象方面较弱,不太适合特大型的系统,但经过vhdl 2001标准的补充之后,系统级表述性能和可综合性能有了大幅度提高。总之,它们都是一种用形式化方法来
28、描述数字电路和系统的语言,可以从上层到下层来逐层描述自己的设计思想,用一系列分层次的模块来表示复杂的数字系统,并逐层进行验证仿真,再把具体的模块组合由综合工具转化成门级网标。接下来再利用布局布线工具把网表转化为具体电路结构的实现。在基于可编程逻辑器件的项目研发中,可以用来描述逻辑电路图、逻辑表达式、数字系统硬件结构和行为,也可以表示数字逻辑系统所完成的逻辑功能。本论文主要使用 vhdl语言,故接下来对其进行简单介绍。自从1983年vhdl语言被gda公司的philip moorby首次提出,经过多年的发展与完善,现在在可编程数字系统中的应用越来越广泛。verilog hdl既是一种行为描述语言
29、,也是一种结构描述语言。如果按照一定的规则和风格编写代码,可以将功能行为模块通过工具自动转化为门级互联的结构模块。这意味着可以用verilog hdl语言构造一个个结构清晰的模块来描述复杂的大型设计,而且还可以对所作出的设计作出严格的仿真。另外,verilog hdl语言的语法和c语言类似,上手比较快。因此在企业中得到了广泛的应用,表2-1给出了verilog hdl语言描述硬件的能力。描述级别抽象级别功能描述物理模型行为级系统级根据语言提供的结构,可以完成模块外部性能的模型电路板,芯片以及根据物理进行划分的子模块算法级根据语言提供的功能能够实现算法运行的模型物理连接器件,电路板rtl级描述数
30、据在寄存器之间流动处理方式、滨队数据流动的模型进行控制。芯片、宏单元逻辑级门级描述逻辑gate好逻辑gate连接的模型标准单元布图电路级开关级描述器件中三极,以及存储节点和它们之间连接的模型晶体管布图表2-1 vhdl语言的表述能力用vhdl 硬件描述语言描述的电路设计一般被叫做该电路的vhdl模型,也就是我们常说的模块。模块是vhdl的基本描述单元。模块一般用来描述某个设计的逻辑功能与结构,一般都定义了与其他模块通信的外部接口。而且模块是并行运行的,通常在更高层模块中,我们可以调用低层次模块的实例,从而对一个封闭的系统进行,封闭系统由测试的数据以及硬件描述组成。说明部分用来定义的项,比如的寄
31、存器、参数,说明部分可以分散于模块的任何地方,但是变量、寄存器、线网和参数等的说明必须在使用前出现。语句用于定义设计的功能和结构。vhdl语言的基本要素包括模块端口、数据类型、标识符、常量集合及运算符和表达式等。vhdl可以对实际电路进行不同抽象级别的建模。具体来说,有三种描不同述形式:结构描述形式、数据流描述形式、行为级描述形式。结构描述形式是从电路结构的角度来描述电路模块;数据流描述形式是对线型变量进行操作;行为级描述形式是从功能和行为的角度来描述一个实际电路。电路具有5种不同模型,其中,系统级、算法级、rtl级属于行为描述;门级属于结构描述;开关级属于模拟电路范畴,在数字电路讨论中一般不
32、做考虑。vhdl(very high speed integrated circuit hardware description language,超高速集成电路硬件描述语言)诞生于1982年,是由美国国防部开发的一种快速设计电路的工具,目前已经成为ieee(the institute of electrical and electronics engineers)的一种工业标准硬件描述语言。相比传统的电路系统的设计方法,vhdl具有多层次描述系统硬件功能的能力,支持自顶向下(top to down)和基于库(librarybased)的设计的特点,因此设计者可以不必了解硬件结构4。从系统设计
33、入手,在顶层进行系统方框图的划分和结构设计,在方框图一级用vhdl对电路的行为进行描述,并进行仿真和纠错,然后在系统一级进行验证,最后再用逻辑综合优化工具生成具体的门级逻辑电路的网表,下载到具体的cpld器件中去,从而实现可编程的专用集成电路(asic)的设计。用vhdl语言进行数字逻辑电路和数字系统的设计,是电子电路设计方法上的一次革命性变革3。vhdl采用基于库(library)的设计方法,可以建立各种可再次利用的模块。这些模块可以预先设计或使用以前设计中的存档模块,将这些模块存放到库中,就可以在以后的设计中进行复用,可以使设计成果在设计人员之间进行交流和共享,减少硬件电路设计。与其他的硬
34、件描述语言相比,vhdl具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。vhdl丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。vhdl语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。对于用vhdl完成的一个确定的设计,可以利用eda工具进行逻辑综合和优化,并自动的把vhdl描述设计转变成门级网表。vhdl
35、对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。与其他硬件描述语言相比,vhdl具有以下特点:(1)功能强大、设计灵活vhdl具有功能强大的语言结构,可以用简洁明确的源代码来描述复杂的逻辑控制。它具有多层次的设计描述功能,层层细化,最后可直接生成电路级描述。vhdl支持同步电路、异步电路和随机电路的设计,这是其他硬件描述语言所不能比拟的。vhdl还支持各种设计方法,既支持自底向上的设计,又支持自顶向下的设计;既支持模块化设计,又支持层次化设计。(2)支持广泛、易于修改由于vhdl已经成为ieee标准所规范的硬件描述语言,目前大多数
36、eda工具几乎都支持vhdl,这为vhdl的进一步推广和广泛应用奠定了基础。在硬件电路设计过程中,主要的设计文件是用vhdl编写的源代码,因为vhdl易读和结构化,所以易于修改设计。(3)强大的系统硬件描述能力vhdl具有多层次的设计描述功能,既可以描述系统级电路,又可以描述门级电路。而描述既可以采用行为描述、寄存器传输描述或结构描述,也可以采用三者混合的混合级描述。另外,vhdl支持惯性延迟和传输延迟,还可以准确地建立硬件电路模型。vhdl支持预定义的和自定义的数据类型,给硬件描述带来较大的自由度,使设计人员能够方便地创建高层次的系统模型。(4)独立于器件的设计、与工艺无关设计人员用vhdl
37、进行设计时,不需要首先考虑选择完成设计的器件,就可以集中精力进行设计的优化。当设计描述完成后,可以用多种不同的器件结构来实现其功能。(5)很强的移植能力vhdl是一种标准化的硬件描述语言,同一个设计描述可以被不同的工具所支持,使得设计描述的移植成为可能。(6)易于共享和复用我们在此以vhdl为设计样例:- vhdl examplelibrary ieee;use ieee.std_logic_1164.all; -库声明entity tone isport(a,b:in std_logic; -实体定义c:out std_logic);end tone;architecture ex of t
38、one is -结构体定义begin c clk, address = addr_fangbo, q = dout_fangbo );种不同波形的输出。不同波形的输出分别如下图所示如图4-3-1所示,当boxing_in为001输出的波形为正弦波图4-3-1如图4-3-2所示,当boxing_in为010输出的波形为三角波图4-3-2如图4-3-3所示,当boxing_in为011输出的波形为锯齿波图4-3-3如图4-3-4所示,当boxing_in为100输出的波形为方波图4-3-4如图4-3-5所示,当boxing_in分别为001,011和010时输出的波形为依次为正弦波,锯齿波和三角波
39、。图4-3-5经过仿真,可以验证本设计可以很好的改变波形,进行波形选择,当用户需要选择不同的波形输出时候,只需要改变boxing_in的状态,则就可以实时的改变波形的输出,从而可以很好的选择波形的输出。4.3.2 频率控制对于fpga控制的dds产生的信号源,它的频率控制是通过频率控制字控制的。dds信号源输出的频率和三个变量有关系,基于fpga的 dds控制的信号源的输出信号的频率,它是输入频率控制字(在本设计中为frequency_in,为26位)、fpga控制的相位累加器的位数(本设计中为26)和fpga的系统时钟频率之间的关系为公式3:(3),由于系统时钟频率 和相位累加器的位数n(本
40、设计为26),都是固定的,因此只需要改变频率控制字也就是frequency_in就可以改变信号的频率,在被设计中,需要将得到频率控制字的十进制转化为26位的二进制输入。改变频率控制字的代码如下:process(clk)variable phaseaddtemp:std_logic_vector(25 downto 0);beginif clkevent and clk=1 then phaseaddtemp:=phaseaddtemp+frequency_in; end if; phaseaddr_cos=phaseaddtemp;end process;在这里需要改变frequency_in
41、就可以改变频率的大小。如下图所示,我们设置boxing_in为001,此时选择的波形为正弦波,即控制正弦波的频率: 如下图4-3-6所示,当选择波形输出为正弦波时候,通过改变频率控制字frequency_in,则可以改变正弦波的频率。在被设计中,我们设计的系统时钟为100mhz,因此根据频率控制字可以得出正弦波的频率,当频率控制字为4194304时候,对用的输出频率为6.25mhz,当频率控制字为2000000时候,对应输出的频率为2.98mhz。根据波形显示效果,和计算结果一致。图4-3-6如下图4-3-7所示,当选择波形输出为三角波时候,通过改变频率控制字frequency_in,则可以改
42、变三角波的频率。图4-3-7如下图4-3-8所示,当选择波形输出为锯齿波时候,通过改变频率控制字frequency_in, 如图4-3-10所示,当输出波形为正弦波的时候,正弦波的幅度是可调的。图4-3-10如图4-3-11所示,当输出波形为三角波的时候,三角波的幅度是可调的。图4-3-11如图4-3-12所示,当输出波形为锯齿波的时候,锯齿波的幅度是可调的。图4-3-12如图4-3-13所示,当输出波形为方波的时候,方波的幅度是可调的。图4-3-13仿真验证,正弦波,三角波,锯齿波和方波的幅度都是可调的,符合设计的要求。只需要改变输出的比例系数,即fudu就可以改变不同的幅度输出,但是由于除
43、法很占用系统资源,在进行二分之一幅度,四分之一等幅度选择的时候最好采用移位的方法,而真正实物操作的信号源的幅度可以通过数字量和da输出后的模拟信号后的增益芯片或者幅度控制芯片联合进行dds信号源的幅度的控制,从而保证幅度精确。4.4 fpga控制dds整体模块设计和仿真波形4.4.1 波形,频率和幅度同时控制的整体框架图设计如下图4-4-1所示,fpga控制的dds产生的波形可以选择,幅度和频率可调的信号源整体框架结果图:图4-4-14.4.2 波形,频率和幅度同时控制为了验证本设计的能够同时选择波形,控制频率和幅度,我们分别输出三种波形,包括正弦波,三角波以及锯齿波,其中正弦波和三角波的频率
44、和幅度均不一致,均为可调的,如下图4-4-2所示,仿真验证,本设计设计的信号源满足波形选择,频率和幅度可调的要求。从而验证本设计基于fpga的dds信号源能够很好的改变的信号的频率,幅度以及进行波形的选择。图4-4-24.5 fpga控制dds的信号源结论经过上述分析,本设计基于fpga控制的dds信号源具有26位的相位累加器,假设系统时钟为100mhz,则由公式(3)(3)可以得出改信号源的频率分辨率可达1.49hz,可以通过改变dds的系统时钟以及相位累加器的位数来改变频率分辨率,当降低dds的系统时候,频率分辨率的值降低,同时dds信号源输出的最大频率也降低。但是可以通过增加相位累加器的位数,使频率分辨率的值降低,从而使频率分辨率提高,但是随着相位累加器位数的提高,占用的系统资源也相应提升。因此为了得到合适的频率分辨率则需要根据实际的需要去选择dds的系统时候总以及相位累加器的位数。本设计并且通过频率控制字frequency_
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年烟台市芝罘区结核病院医护人员招聘考试题库及答案详解
- 2026江西萍乡市人才发展集团第三批见习生招聘3人笔试备考题库及答案详解
- 2026年度乌鲁木齐市消防救援支队招聘政府专职消防员(150人)笔试参考题库及答案详解
- 2026甘肃天水市甘谷县人力资源和社会保障局招聘城镇公益性岗位73人笔试备考试题及答案详解
- 2026河北唐山开滦总医院高校毕业生招聘笔试备考试题及答案详解
- 2026年聊城市第四人民医院医护人员招聘考试参考试题及答案详解
- 2026甘肃政法大学考核招聘急需紧缺专业人才8人(第二批)笔试备考试题及答案详解
- 2026年景洪市中医傣医院医护人员招聘笔试备考题库及答案详解
- 2026黑龙江哈尔滨工程大学后勤集团饮食服务中心招聘11人笔试备考题库及答案详解
- 2025年宜良县人民医院医护人员招聘考试题库及答案详解
- 国开《离散数学》大作业及答案
- 防抢、防盗、防骗培训知识
- JBT 9214-2010 无损检测 A型脉冲反射式超声检测系统工作性能测试方法
- 苏教版四年级数学下册第七单元《三角形平行四边形和梯形》测试卷(含答案)
- 健康生活预防癌症智慧树知到期末考试答案2024年
- 《车险基础知识培训》
- 《外科实习作》课件
- 通用电子嘉宾礼薄
- 珠宝回购协议
- 2023年山东财经大学燕山学院教师招聘考试笔试题库及答案
- 钢轨打磨设备及运用 课件 06 电气系统
评论
0/150
提交评论