




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于FPGA和锁相环的信号发生器设计目 录摘 要1ABSTRACT2第一章 绪论31.1课题的背景和意义31.2国内外研究现状31.3论文主要工作内容4第二章 开发环境和相关技术52.1 FPGA52.2 VHDL语言52.3 Quartus设计平台6第三章 总体方案设计63.1任意波形发生器简介63.2设计方案分析73.2系统总体设计7第四章 基于FPGA和锁相环的任意波形发生器的设计84.1 FPGA的开发流程84.2 锁相环模块设计94.2.1锁相环的基本原理94.2.2 锁相环设计94.3 数字分频器模块104.3.1分频器简介104.3.2 分频器设计104.3.1仿真结果114.4 相位计数器模块114.4.1计数器简介114.4.2相位计数器设计124.4.3仿真结果124.5 波形发生模块124.5.1 波形发生器工作原理124.5.2设计步骤124.6波形选择模块144.6.1数据选择器简介144.6.2波形选择模块设计144.6.3仿真结果154.7顶层图及仿真154.8 D/A转换模块174.8.1DAC芯片简介174.8.2DAC芯片与FPGA的连接18第5章 硬件配置185.1 FPGA的配置185.2 JTAG配置18第6章 总结及展望196.1 总结196.2 工作展望19参考文献1附 录2致 谢5摘 要 信号发生器是广泛应用于电子测量和科学研究实验中的通用信号源,随着现代测量和现代通信技术的发展,越来越需要有高稳定度、高纯度的信号源。而锁相频率合成器技术的提出和大规模可编程逻辑器件的发展为新一代函数信号发生器的设计与实现提供了理论依据和技术支持。本文主要讲述了如何通过锁相环与FPGA来设计频率及幅度都可调的信号发生器。通过对实现这种技术的方案进行比较,本文选择以Altera公司的Cyclone系列芯片EP3C40F48417为核心,以硬件描述语言VHDL为开发语言,设计了一款可以产生正弦波、三角波、锯齿波和方波的函数信号发生器,四种信号之间可以随意切换,并且输出波形的频率和幅度都可以调节。论文详细阐述了在Quartus环境中利用VHDL语言设计函数发生器的过程,并给出了相应的仿真结果和测试结果。实验表明,采用锁相环与FPGA设计函数信号发生器的设计方案是切实可行的,并且所设计的函数信号发生器具有频率稳定性高、体积小、成本功耗低等优点,是函数信号发生器未来的发展方向。关键词 信号发生器 锁相环 FPGA VHDLABSTRACTSignal generator is widely used in electronic measurement and scientific research experiments of general source. With modern measurement and modern communications technology development, More and more needs a high degree of stability and high purity source. But phase-locked frequency synthesizer technology was proposed and large-scale programmable logic devices for the new generation of the development of function signal generator provides the design and implementation of the theory and technology support. This paper mainly introduces how to pass and phase lock loop and FPGA to design frequency and amplitude are adjustable signal generator. Based on the scheme to realizing this technology comparison, This article chooses to Cyclone series of Altera company EP3C40F48417 as core chip, Hardware description language VHDL language for development, Design a new can produce sine wave, triangle wave, the sawtooth wave and square-wave function signal generator, Four kinds of signal switching between can freely. Paper detailed presents using VHDL language design function generator process in Quartus environment .and given the corresponding simulation results and test results. Experiments show that, Using phase locked loop and the FPGA design function signal generator design scheme is feasible, And the design of the function signal generator has high frequency stability, small volume, low power dissipation cost advantages, Is function signal generator future development direction.Key words: Function generator; Phase-locked loop; FPGA; VHDL第一章 绪论1.1 课题的背景和意义 函数信号发生器是广泛应用于系统检测调试、自动测量控制和教学实验等领域的多波形信号源,它可以产生正弦波、三角波、锯齿波、方波等多种波形,由于其输出的波形均可用数学函数描述,故命名为函数信号发生器。函数信号发生器在工业生产、产品开发、科学研究等实验测试中起着十分重要的作用,除供通信、仪表和自动控制系统测试用外,还广泛用于生物医学等各个领域的测试. 随着电子技术的不断发展与进步,现代的电子测量、通信系统越来越需要有高精度和灵活的信号发生器进行测量和调试。原有的信号发生器的性能己经难以满足现在的要求,现在不仅要求能产生标准的波形,而且要求函数发生器的输出波形质量好,输出频率范围宽,频率转换速度快并且频率转换时波形的相位需要连续。为了适应现代电子技术的发展和市场要求,研究制作高性能的函数信号发生器则具有重大的意义。虽然现在各大芯片制造商都推出了采用先进CMOS工艺生产的高性能专用直接数字频率合成 (DDS)芯片,为电路设计者提供了多种选择,但专用的DDS芯片的局限性在于其价格昂贵,不易扩展。目前,大规模可编程逻辑器件(PLD)得到越来越广泛的应用,其强大的功能也逐步从各种器件中显露出来。如今的可编程器件在其自身功能愈加强大的同时,更使系统趋于小型化,高集成度和高可靠性。与此同时,器件所具有的静态可重复编程和动态在系统重构的特性,使得系统设计周期大大缩短,降低了设计费用和设计风险,极大的提高了电子系统设计的灵活性和通用性。其中现场可编程门阵列(FPGA)编程灵活、应用范围广,而且逻辑功能较复杂的小型系统可以在一片FPGA中实现。由于FPGA实现DDS技术在一些方面存在着DDS芯片不能取代的优势,并且可以实现多个DDS芯片的功能,除了能满足用户对特殊功能的要求外,还可以在器件选择上有更大的选择余地,所以本文提出基于FPGA实现采用直接数字频率合成技术实现可编程函数信号发生器的实现方案,并给出了详细的设计方法。本课题的意义在于将FPGA可编程的特性与锁相环技术精确和快速的特性有机地结合起来,既实现了函数信号发生器的灵活配置,减小体积,有效地降低开发的成本,又可以实现函数信号发生器的输出频率、相位和幅度在数字处理器的控制下精确而快速地变换。在我国,高精度的标准信号源产品较少并且产品落后,可靠性较差,并且研究起步较晚,与国外发达国家比较水平差距比较大,所以现在研究基于直接数字频率合成技术与FPGA相结合的函数发生器并且研制出相关的产品将对我国国防、科研、教育起到深远的意义。1.2国内外研究现状函数信号发生器按工作原理可分为:调谐信号发生器、锁相信号发生器和合成信号发生器。早期的调谐信号发生器采用的是模拟电子技术,由调谐振荡器和调幅放大器加上一些指示电路构成,仅能产生正弦波、三角波、方波等几种简单的波形,其电路结构复杂、尺寸大且功耗大,并且频率不高,由于模拟电路温漂大而使得其波形稳定性差,且难以产生精准的频率信号,不易调试。锁相信号发生器是由调谐振荡器通过锁相的方法获得输出信号频率的信号发生器。这种信号发生器频率精度和稳定度高,但快速切换频率比较困难,同时输出信号的频率分辨率较差。合成信号发生器常用三种方法进行频率的合成。第一种为直接频率合成,是利用单个或多个不同频率的晶体管振荡器作为基准信号源,经过倍频、分频、混频等途径直接产生许多离散频率的输出信号。第二种是锁相频率合成器,是基于锁相环的.同步原理,由数字鉴相器、分频器加模拟环路滤波和压控振荡器间接产生所需频率输出的一种技术。第三种为直接数字频率合成技术,是一种基于全数字技术,从相位概念出发直接合成所需波形的一种频率合成技术,不仅可以产生不同频率的正弦波,而且可以控制波形的初始相位,并能以此方法产生任意波形。随着数字集成电路和微电子技术的发展,现代的函数发生器尽可能多的采用直接数字频率合成(DDS)的方法产生所需要的波形。直接数字频率合成是由J.Tierney和C.M.Rader于1971年提出的技术,其主要优点是它的输出频率、相位和幅度能够在数字处理器的控制下精确而快速地变换,并且相位变化连续,易于集成和调整。采用DDS技术的函数信号发生器由于灵活而成为软件无线电理想的信号发生器,而且用来处理信号的数字电路不会因为热飘移、老化和元件的变化而受影响,支持快速频率切换,是函数信号发生器发展的方向。基于DDS的函数发生器现在不仅可以执行函数发生器的功能,还可以执行任意函数发生器的功能,这将给传统测试方案带来一次革命。在当前数字领域中,大多数新型函数发生器正采用DDS这一种新技术,如美国的Agilent、Tektronix、Keithley,还有台湾的固纬等都在积极采用这一技术制造新式的函数信号发生器。例如Agilent的33220A,它能产生17种波形,最高频率可达到20MHZ,分辨率为1HZ,并且能够通过USB、LAN和GPIB进行配置,波形形成的操作性很好。目前我国研制的函数信号发生器取得了一定的成果,但总的来说,我国函数信号发生器还没有形成真正的产业,并且研制的函数信号发生器的性能和国外器件相比较而言性能差距还比较大。就目前国内的成熟产品来看很少,并且我国目前在函数信号发生器的种类和性能都与国外同类产品存在较大的差距,因此加紧对这类产品的研制是十分必要的。1.3论文主要工作内容本论文的主要内容是设计一个基于FPGA的可编程函数信号发生器,在广泛收集相关资料的基础上,对锁相频率合成器技术进行了深入研究,利用可编程逻辑器件完成了本次设计。整个系统以Altera公司的Cyclonen系列FP以芯片EP3C40F48417为核心,采用硬件描述语言(VHDL)进行开发,配置了相应的输入、信号处理及显示电路,并进行了仿真及验证。第二章 开发环境和相关技术2.1 FPGA 现场可编程门阵列(Field- programmable Gate Array,FPGA)是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 现场可编程门阵列(FPGA)是可编程器件。与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构,FPGA利用小型查找表(161RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了即可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及个模块之间或模块与I/O间的连接方式,并最终决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能, FPGA允许无限次的编程.2.2 VHDL语言 VHDL 的英文全名是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于 1982 年。1987 年底,VHDL被 IEEE 和美国国防部确认为标准硬件描述语言。VHDL主要用于描述数字系统的结构、行为、功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。VHDL 语言能够成为标准化的硬件描述语言并获得广泛应用 , 它自身必然具有很多其他硬件描述语言所不具备的优点。归纳起来,VHDL 语言主要具有以下优点: (1) VHDL 语言功能强大,设计方式多样; (2) VHDL 语言具有强大的硬件描述能力; (3) VHDL 语言具有很强的移植能力; (4) VHDL 语言的设计描述与器件无关; (5) VHDL 语言程序易于共享和复用;2.3 Quartus设计平台 Quartus II 是Altera公司的综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。 Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。目前Altera已经停止了对Maxplus II 的更新支持,Quartus II 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。Altera在Quartus II 中包含了许多诸如SignalTap II、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承了Maxplus II 友好的图形界面及简便的使用方法。Altera Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。第三章 总体方案设计本章主要对系统硬件电路总体设计方案进行阐述,分析了系统设计方案的实现过程,并对系统的各功能模块进行划分,根据信号调制的需要设计一个数字分频器来控制时钟信号的频率,同时对本系统的软硬件开发平台进行说明.3.1任意波形发生器简介任意波形发生器作为一种现代电子测量领域的重要仪器,它除了具有一般仪器的基本测试功能以外,还具有一些现代测量仪器的优良特性,它可以为用户提供良好的人机交互界面,使仪器的使用更加简单方便,用户可以通过更加直观的方式获取相关测试数据,减小了因为人为数据读取而造成的测量误差。互联网的飞速发展,为人们的生产生活带来了极大的便利,同样,在测试仪器领域也具有同样的发展趋势,通过程控接口等通信接口的设计,使信号发生器之间可以进行相互的级联,完成某些复杂环境的测试,信号发生器也可以通过网络接口连入因特网,通过相关应用软件的开发,用户可以通过网络远程的控制使用该仪器,具有相当的灵活性和经济性。总的来说,任意波形发生器主要由下面几个部分组成,分别为外部键控模块,锁相环模块,数字分频器模块,计数器模块,存储数据的ROM模块,数据选择模块,D/A转化模块,硬件模块和示波器。 3.2 设计方案分析在频率合成技术自上世纪三十年代提出以来的近八十年中,频率合成技术历经了直接频率合成、锁相环频率合成之后,进入了新一代的直接数字频率合成(DDS)阶段。与传统的基于模拟技术的频率合成技术相比,采用DDS技术来合成波形不仅简单可靠、控制方便、而且可以方便的实现可编程和全数字化。目前基于DDs技术实现信号发生器的方法主要由以下两种:(1)采用DDS高性能芯片实现设计;(2).自行设计基于FPGA逻辑电路的解决方案。随着各大IC公司对DDS技术不断的研究与相关产品的开发,目前市场上已经可以提供很多性能优良的专用DDS芯片,主要有ADQualco、Sciteg和Stanford等公司的单芯片电路,其中最具代表性的如AD公司的AD9850、AD9858等系列的芯片,这些专用的DDS芯片不仅具有比较高的工作频率,内部集成了高精度的D/A转换器,并且还具备一定的调制功能z0。但是DDS专用芯片中多采用只读存储器ROM作为波形存储器,在芯片出厂之前事先将波形数据固化到ROM中,无法根据用户的需求而更改波形存储器中的波形数据以生成任意波形。相比之下,采用FPGA来自行设计所需的DDS电路比用专用DDS芯片更具灵活性。因为只要通过改变FPGA内部波形存储器中的波形数据,就可以实现任意波形的输出,这使得用FPGA来实现DDS电路具有很大的灵活性。因为DDS电路是通过FPGA内部的逻辑单元设计完成的,所以实现的功能完全取决于设计的需求,同时FPGA芯片还支持在系统升级,使得即GA内的DDS电路可以根据需要而进一步的得到优化,虽然在精度和速度上相比专用DDS芯片略有不足,但是其基本上可以满足大多数系统测试的要求。并且将DDS电路嵌入到FPGA内部构成的系统中,其系统成本并不会增加很多,而专用DDS芯片的价格一般比FPGA高。因此采用FPGA来设计DDS电路系统不但具有很大的灵活性,也具有较高的性价比。使用FPGA设计数字电路系统不但设计比较方便,而且还可以大大缩减系统的研制周期,缩小数字电路系统的整体体积和所使用芯片的种类。近年来即GA技术得到了迅速发展和广泛应用,其资源容量、工作频率以及集成度都得到了极大地提高,加上它的灵活性,可编程以及强大的EDA软件的支持,为实现DDS的数字电路部分提供了良好的技术手段。在本文中即是通过在FPGA内设计DDS电路结构,实现任意波形发生器的硬件系统设计。3.2 系统总体设计在硬件设计中所遵循的原则是:在电路功能实现的前提下,应尽量使电路简化和模块化。因为硬件复杂了,不但增加体积和成本,而且也使系统的可靠性和性价比下降。 本设计遵循这一原则,在功能实现的前提下,尽量简化硬件电路设计,并将设计比较清晰地分成多个模块。本文设计的任意波形发生器硬件总体结构如图3-1所示。整个结构框图主要包括七个部分,当外部时钟加到锁相环时,锁相环开始工作,锁相环输出稳定的时钟信号,作为分频器的输入,然后分频器开始按照预置的数值分频,输出一个频率确定的时钟信号,这个信号分别作为计数器,存储数据的ROM和D/A模块的时钟信号,来确保他们同步工作,接到这个时钟后,计数器开始计数,并把数值输出作为ROM的输入,与时钟信号同步读取ROM中的数据,读取的数据输出之后作为波形选择器的输入,波形选择器通过外部控制键来控制输出哪种波形,确定波形后,输入到D/A模块,进行数模转换,然后接到示波器进行波形显示。正弦波数据波形数据选择器三角波数据D/A转换 波形数据锁相环分频器计数器锯齿波数据外部时钟 方波数据示波器 图3-1任意波形发生器系统硬件总体结构框图第四章 基于FPGA和锁相环的任意波形发生器的设计4.1 FPGA的开发流程FPGA的开发流程一般如图4-1所示,包括电路设计、功能仿真、综合优化、综合后仿真、实现与布局布线、时序仿真与验证、板级仿真与验证,以及芯片编程与调试等主要步骤。设计验证设计输入综合行为仿真 设计实现功能方针静态时序仿真反注解时序仿真器件编程电路验证 图4-1 电路的设计往往由模块多层次的引用和组合构成。层次化、结构化的设计过程,能使复杂的系统容易控制和调试。本实验采用自顶向下的设计方法,在Altera公司的Quartus软件环境下用verilog编程语言编写完成的。采用Altera公司的FPGA芯片EP3C40F48417。4.2 锁相环模块设计4.2.1锁相环的基本原理锁相环的原理框图如4-2所示。锁相环由鉴相器、环路滤波器和压控振荡器组成。鉴相器用来鉴别输入信号Ui与输出信号Uo之间的相位差 ,并输出误差电压Ud 。Ud 中的噪声和干扰成分被低通性质的环路滤波器滤除,形成压控振荡器(VCO)的控制电压Uc。Uc作用于压控振荡器的结果是把它的输出振荡频率fo拉向环路输入信号频率fi ,当二者相等时,环路被锁定 ,称为入锁。维持锁定的直流控制电压由鉴相器提供,因此鉴相器的两个输入信号间留有一定的相位差。压控振荡器 VOC环路滤波器LF鉴相器PD参考频率源 程序分频器/M锁相环原理图 4-24.2.2 锁相环设计 锁相环在本设计中有稳频的做用,主要是给分频器与相位计数器提供一个稳定的时钟信号,由于在选择参数时设置的分频比为1:1,它的分频功能在本设计中没有用到。它的模块如4-3所示。在Quartus 中有自带的锁相环模块,可以直接调用,不需要再自己编写程序,在元器件库中选择PLL模块,然后设置参数,把输入的最高频率设置成25MHZ,分频比为1:1,占空比50%,参数设置成功后点结束,所需要的锁相环模块就生成了。从图中可以看出分频比为1:1 占空比为50%。所以c0的输出的最高频率是25MHZ,并且C0频率与输入的CLK频率是一样的。时序仿真图4-4所示。从仿真图中可以看出,锁相环的功能得到实现,输出与输入频率相同,也是稳定的。锁相环模块 图4-3锁相环仿真图4-44.3 数字分频器模块4.3.1分频器简介分频器本质上是由电容器和电感线圈构成的LC滤波网络,高音通道是高通滤波器,它只让高频信号通过而阻此低频信号;低音通道正好想反,它只让低音通过而阻此高频信号;中音通道则是一个带通滤波器,除了一低一高两个分频点之间的频率可以通过,高频成份和低频成份都将被阻止。在实际的分频器中,有时为了平衡高、低音单元之间的灵敏度差异,还要加入衰减电阻;另外,有些分频器中还加入了由电阻、电容构成的阻抗补偿网络,其目的是使音箱的阻抗曲线心理平坦一些,以便于功放驱动。由于现在的音箱几乎都采用多单元分频段重放的设计方式,所以必须有一种装置,能够将功放送来的全频带音乐信号按需要划分为高音、低音输出或者高音、中音、低音输出,才能跟相应的喇叭单元连接,分频器就是这样的装置。如果把全频带信号不加分配地直接送入高、中、低音单元中去,在单元频响范围之外的那部分 “多余信号”会对正常频带内的信号还原产生不利影响,甚至可能使高音、中音单元损坏。4.3.2 分频器设计设计要求能够改变输出波形的频率,其中一个比较简单的方法就是控制读取ROM中数据的速率,即控制ROM的输入时钟的频率,所以要把锁相环输出的稳定频率来进行分频,分频值是可以改变的,在此设计中采用的是20255的整数分频。本模块采用VHDL语言设计,程序清单见附录。该功能模块如图4-5。从图中可以看出,分频器有两个输入,一个输出。其功能实现的主要过程是:BUTT与CLK分别控制两个加法器,BUTT是一个外部控制键,而CLK是锁相环输出的稳定时钟,通过控制BUTT来控制第一个加法器工作,对第一个加法器预制一个数作为第二个加法器的参量,如果第二个计数器的值小于第一个加法器的值,分频器没有输出,只有当第二个计数器的值等于第一个加法器,计数器输出一个高电平,这样就能达到手动控制分频器的分频值的目的。时序仿真如4-6:分频器模块 图4-54.3.1仿真结果控制键没有变化时,是20分频。当控制键有变化时,仿真结果过如图4-7,开始的时候控制键输入了四个上升沿,所以模块就成了24分频。通过4-6与4-7图的比较,可以发现分频器的功能实现了。分频器仿真图4-6分频器仿真 图4-74.4 相位计数器模块4.4.1计数器简介计数是一种最简单基本的运算,计数器就是实现这种运算的逻辑电路,计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能,计数器是由基本的计数单元和一些控制门所组成,计数单元则由一系列具有存储信息功能的各类触发器构成,这些触发器有RS触发器、T触发器、D触发器及JK触发器等。计数器在数字系统中应用广泛,如在电子计算机的控制器中对指令地址进行计数,以便顺序取出下一条指令,在运算器中作乘法、除法运算时记下加法、减法次数,又如在数字仪器中对脉冲的计数等等。计数器可以用来显示产品的工作状态,一般来说主要是用来表示产品已经完成了多少份的折页配页工作。它主要的指标在于计数器的位数,常见的有3位和4位的。很显然,3位数的计数器最大可以显示到999,4位数的最大可以显示到9999。4.4.2相位计数器设计相位计数器的作用是与时钟同步读取ROM中的数据,ROM中存取的数据是一组坐标,只有确定一组数据,才能读取成功。ROM中的数据是8*256的,所以计数器应该为256计数器。程序清单见附录。功能模块如图4-8。相位计数器有两个端口,一个端口接分频器输出的稳定时钟信号,一个口作为输出,给存储数据的ROM作为读取相位的输入信号,每当CLK的上升沿来到时,G都会自加1,当G的值到达255后,又从0开始计数,能达到循环计数的功能。 相位计数器模块 图4-8 4.4.3仿真结果时序仿真如下图4-9。可以看出当计数器的输出值达到255时,又从0开始从新计数,表明计数器的功能能够实现。图 4-94.5 波形发生模块4.5.1 波形发生器工作原理 波形发生器中存储着波形数据,当输入时钟信号和相位信号,并且两种信号是同步的,波形发生开始输出发生器中存储的数据。4.5.2设计步骤由于需要产生四种波形,所以波形发生模块包括四种波形模块,四个模块的生成过程都是一样的,此处以正弦波为例概述下波形数据存储模块的生成过程。此模块用到元件库中的ROM模块,在ROM中添加正弦波的数据MIF文件,MIF文件是用Guagle_wave软件直接生成的。ROM模块生成过程如图4-10。先在元件库中调用一个ROM元件,然后设置它的位宽与位数,这两个参数都是与MIF文件中的数据相关的,选择之后点击下一步就会出现添加MIF文件的窗口,如图4-11.把已经生成的MIF文件添加进去就行了。MIF文件数据如图4-12。图4-10图 4-11MIF文件 图 4-12生成后的模块如图4-13。ROM模块有三个端口,clock与address的时钟是同步的,这样才能达到同步读取相位的目的。波形数据存储ROM模块 图 4-134.6波形选择模块4.6.1数据选择器简介基本定义:多路数据传送过程中,能够根据需要将其中任意一路选出来的电路,叫做数据选择器,也称多路选择器或多路开关。逻辑功能:数据选择器(MUX)的逻辑功能是在地址选择信号的控制下,从多路数据中选择一路数据作为输出信号。4.6.2波形选择模块设计波形选择模块是用来选择输出的波形,即控制波形之间的切换,由于本设计是四种波形,所以用四选一数据选择器控制波形的变换。数据选择器的程序见附录。功能模块如图4-14。波形选择器有六个输入端口,一个输出端口,其中A.、B、C、D四个端口作为波形的输入端口,S1 S2 是外部的键控接口,通过改变S1 S2的输入电平来控制输出端口Z的输出是A.、B、C、D那个端口输入的波形,当S1=0 S2=0 时输出A口的波形,当S1=0 S2=1时输出B口的波形,当S1=1 S2=0时输出C口的波形,当S1=1 S2=1 时 输出D口输入的波形。波形选择器图4-14 4.6.3仿真结果通过仿真图可以看出波形选择器的功能能够实现。当S1=0 S2=0 时输出A口的波形,当S1=0 S2=1时输出B口的波形,当S1=1 S2=0时输出C口的波形,当S1=1 S2=1 时 输出D口输入的波形。图4-154.7顶层图及仿真将所有模块按照各自的功能连接之后,就能够实现此次设计的基本功能,其顶层原理图如图4-16所示。当系统接入一个时钟时,时钟信号的频率是低于25MHZ,锁相环开始工作,对输入时钟进行处理,然后输出一个稳定的时钟信号。锁相环的输出作为数字分频器的输入,通过数字分频器对此时钟进行分频,通过BUTT可以调节分频器的分频比,分频之后输出确定频率的时钟信号,然后把分频器输出的时钟分别作为相位计数器与存储波形的ROM的输入时钟,相位计数器与ROM同步工作,具有同步的时钟,所以读取的数都是MIF文件中的坐标。读取数据之后ROM开始输出数据,四个ROM输出四个数据,为了能达到四种波形之间切换的目的,在ROM后接入一个四选一数据选择器, S1 S2 是外部的按键,通过改变S1 S2 的电平来控制输出的是哪种波形。 图4-16 顶层图的仿真如图4-17,4-18,4-19,4-20。图4-17 S1=0 s2=0 正弦波图4-18 S1=0 s2=1 三角波图4-19 S1=1 s2=0 锯齿波图4-20 S1=1 s2=1 方波 4.8 D/A转换模块 设计要求能够控制输出信号的幅度,软件控制比较麻烦,所以可以才去控制D/A模块的参考电压,即给D/A模块连接一个电位器,这样就能方便控制信号幅度。4.8.1DAC芯片简介 本系统的DAC转换芯片采用Brown公司的DAC904E芯片它是一款14位分辨率的高速数/模转换器,在20MHz输出时具有64dB。的无杂散动态范围,转换速率最高可达165MSPS。该芯片采用单片+SV或+3V供电,DAC904E的功耗很低,在+5V供电时功率为170mw,在功率下降模式下,待机功率只有45mw。其参考电压允许用片内参考或者片外参考,输出为高阻抗(200千欧)电流输出,范围为0mA2OmA。DACGO4E的引脚图和内部框图如图4-21所示。图4-21各引脚的功能说明如下表4-1所示: D/A模块功能引脚表 4-1引脚功能BitlBitl4DA并行输入的14位数字信号 ,其中Bitl为最高有效位,Bitl4为最低有效位clk时钟输入+V、+V数字供电和模拟供电DGND、AGND数字地模拟地BW宽带信号减小引脚BYP旁路引脚 ,差分电流输出引脚FSA满量程调整引脚参考输入引脚INT/EXT参考选择引脚,为0时选择内部参考,为1时选择外部参考PD功率下降模式控制引脚 4.8.2DAC芯片与FPGA的连接DAC904E由FPGA直接控制,其硬件连接如图4-22所示。 图 4-22由图中可以看出,DAC904E的14位数据线与FPGA的1/0引脚直接连接,时钟由FPGA提供。其数字电源和模拟电源都采用+5v的供电电压,并与BW引脚并接一个 0.1UF的旁路电容去除微弱信号频带宽度,并起到控制放大器的输出阻抗作用,减小反馈到DAC904E的内部电流源阵列的噪声,起转换器的性能。第5章 硬件配置5.1 FPGA的配置 系统测试时要将设计好的方案经过编译后产生的配置数据文件下载到FPGA芯片中才能进行测试其功能的正确性,所以必须了解FPGA的配置方式。由于Cyclone FPGA使用SRAM单元来存储配置数据,而FPGA中的SRAM是易失性的,所以每次上电之前配置数据必须重新下载到FPGA中。FPGA的配置方式主要有三种:主动串行配置(AS)、被动配置(Ps)和JTAG配置。下面介绍JTAG配置模式的工作原理及过程。5.2 JTAG配置通过JTAG接口,利用Quartus软件可以直接对FPGA进行单独的硬件重新配置,这种配置方式适合于调试阶段,可以在不掉电的情况下进行实时修改。并且JTAG配置模式具有最高的优先级,因此可以随时进行而不用等待其它配置模式的完成。第6章 总结及展望6.1 总结本文在广泛查找国内外文献资料的基础上,通过对锁相环频率合成技术和FPGA技术进行深入研究,从理论和实际两个方面入手,以Cyclone系列芯片为核心,设计了一个可以产生正弦波、三角波、锯齿波和方波的高性能函数信号发生器。本文的创新点在于将所有的数字部分电路的都由FPGA芯片实现,这大大降低了电路的复杂性及成本,缩小了产品的体积,并且有效地降低了功耗,可以作为以后开发小型低成本低功耗函数信号发生器的有效参考。在整个论文期间,既掌握了基于FPGA的硬件电路设计与仿真方法,也掌握了常用外围电路的设计,对基于FPGA的开发有了更深层次的了解,为以后的科研和工作奠定了坚实的基础。本文采用模块化的思想进行设计,将整个系统分为频率合成模块和外围电路模块两个方面进行描述,并采用自顶向下和自底向上两种开发模式相结合的方法,将所有的模块都用VHDL语言编程实现。论文的主要成果:1.分析了锁相环频率合成技术的原理和结构,并详细阐述了锁相环和FPGA设计信号发生器的方法。2.完成了频率合成模块的详细设计,并在Quartus软件中进行了仿真,验证了设计的正确性。3.对D/A模块进行了阐述及配置。6.2工作展望由于时间和作者水平有限,本次设计的函数信号发生器还有进一步改进和完善的地方。1分频器是个整数分频,不能实现任意频率。2利用FPGA开发GPIB(通用接口总线)控制核,使之成为通用的测量仪器。参考文献1李翠华. 信号发生器的设计J. 科技广场, 2009, 1: 2112132申彦春, 王欢, 梁延贵. 基于FPGA的信号发生器的设计J. 唐山学院学报, 2008, 3: 1251893刘皖, 何道军, 谭明. FPGA设计与应用M. 北京清华大学出版社, 2006: 28694赵雅兴. FPGA原理设计与应用M. 天津大学出版社, 1999: 2683215余勇, 郑小林. 基于FPGA的DDS正弦信号发生器的设计与实现J. 电子器件, 2005, 9: 5965996田耘,徐文波. Xilinx FPGA开发实用教程M. 北京: 清华大学出版社, 2008, 3: 2533247刘和平等. DSP原理及电机控制应用M. 北京: 北京航空航天大学出版社, 2006. 128张献伟, 任志良, 陈光, 王华. 基于Xilinx FPGA TP CORE的可调正弦信号发生器设计J.电子测量技术, 2009, 5: 149 Xilinx. The Programmable Logic Data Book M, 1994 Second edition:101410 PREP Benchmarks for Programmable Logic DevicesM, Altera Corp, 1993:122125附 录数字分频器程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DIGF IS PORT (BUTT ,CLK :IN STD_LOGIC;Q: OUT STD_LOGIC);END ENTITY DIGF;ARCHITECTURE ART OF DIGF IS SIGNAL YUFEN: INTEGER RANGE 20 TO 10#254#;BEGIN - YUFEN=20;PROCESS (BUTT) IS BEGIN IF BUTTEVENT AND BUTT=1 THEN IF YUFEN=254 THEN YUFEN=20;ELSE YUFEN=YUFEN+1;END IF ;END IF ;END PROCESS ;PROCESS (CLK) IS VARIABLE FENP :INTEGER RANGE 0 TO 255;BEGIN IF CLKEVENT AND CLK=1 THEN IF FENP=(YUFEN-1) THEN Q=1;FENP:=0;ELSE FENP:=FENP+1; Q=0;END IF ;END IF ;END PROCESS ;END ARCHITECTURE ART ;相位计数器模块:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY JSQ IS PORT(CLK: IN STD_LOGIC; G: OUT STD_LOGIC_VECTOR (7 DOWNTO 0);END ENTITY JSQ;ARCHITECTURE ART OF JSQ ISBEGIN PROCESS(CLK) IS VARIABLE COUT: STD_LOGIC_VECTOR (7 DOWNTO 0) ; BEGIN IF CLKEVENT AND CLK=1 THEN COUT:=COUT+1; END IF; G=COUT;END PROCESS ;END ARCHITECTURE ART; 四选一波形选择器模块: LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUX41 IS PORT (S1,S2: IN ST
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025瓷砖产品进出口贸易代理合同
- 2025年度特色订餐服务合同范本
- 2025版高标准预制砌块施工合同
- 2025年多媒体短信息服务合同五
- 2025产品陈列与售后服务合作协议
- 2025年度三七药材种植户贷款担保与购销合同
- 2025常用合同系列之动漫游戏行业劳动合同范本
- 诸城市2024-2025学年中考试题猜想数学试卷含解析
- 养老机构医养结合模式下的养老产品创新与研发报告
- 海洋风力发电市场前景:2025年海上风能资源评估与发展研究报告
- 化工机械法兰连接课件
- (新教材)2025年秋期人教版二年级上册数学核心素养教案(第2单元)(教学反思有内容+二次备课版)
- (高清版)DB34∕T 5154-2025 基于云制造的工业互联网架构要求
- 党校中青班入学考试试题及答案
- 三支一扶培训
- 2025年中国儿童游乐设施产业深度调研与投资机遇研究报告
- 新生儿42天体检要点解析
- 煤矿联网课题题目及答案
- 2025内蒙古巴彦淖尔市能源(集团)有限公司招聘48人笔试参考题库附带答案详解析集合
- T/CASTEM 1007-2022技术经理人能力评价规范
- 初中七年级数学备课组科研合作计划
评论
0/150
提交评论