版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘 要任意波形发生器已成为现代测试领域应用最为广泛的通用仪器之一,代表了信号源的发展方向。直接数字频率合成(dds)是二十世纪七十年代初提出的一种全数字的频率合成技术,其查表合成波形的方法可以满足产生任意波形的要求。由于现场可编程门阵列(fpga)具有高集成度、高速度、可实现大容量存储器功能的特性,能有效地实现dds技术,极大的提高函数发生器的性能,降低生产成本。本文首先介绍了函数波形发生器的研究背景和dds的理论。然后详尽地叙述了用fpga完成dds模块的设计过程,接着分析了整个设计中应处理的问题,根据设计原理就功能上进行了划分,将整个仪器功能划分为控制模块、外围硬件、fpga器件三个部分来
2、实现。最后就这三个部分分别详细地进行了阐述。在实现过程中,本设计选用了altera公司的ep2c35f672c6 i笛片作为产生波形数据的主芯片,充分利用了该芯片的超大集成性和快速性。在控制芯片上选用了三星公司的上$3c2440作为控制芯片。本设计中,fpga芯片的设计和与控制芯片的接口设计是一个难点,本文利用a1tera的设计工具quartus ii并结合verilog-hdl语言,采用硬件编程的方法很好地解决了这一问题。论文最后给出了系统的测量结果,并对误差进行了一定分析,结果表明,可输出步进为001hz,频率范围001hz'-20mhz的正弦波、三角波、锯齿波、方波,或001hz
3、'-'20khz的任意波。通过实验结果表明,本设计达到了预定的要求,并证明了采用软硬件结合,利用fpga技术实现任意波形发生器的方法是可行的。关键词:函数发生器,直接数字频率合成,现场可编程门阵列江苏大学硕士学位论文abstractarbitrary waveform generator(awg)is one of the most popular instruments in modem testing domains,which represents the developing direction of signal sourcesdirect digital frequ
4、ency synthesis(dds)advanced early in 1 970s is a full digital technology for frequency synthesis,its lut method for synthesizing waveform adapts to generate arbitrary waveformfield programmable gate array(fpga)has the features of large scale integration,high working frequency and can realize large m
5、emory,so fpga can effectively realize ddsthe ep2c35f672c6 of corporation altera is chosen to do the main digital processing work,which is based on its large scale and high speedthe$3c2440 mcu is chosen as a control chipin this design,how to design the fpga chip and the interface between the fpga and
6、 the control chip is the problemwith the method of software and hardware programming,the design used the software quartus ii and language veriloghdl solves it successfullyin this paper,the principle of dds and basis of eda technology is introduced firstlythe problems met in the design areanalyzed an
7、d the whole function is partitioned into three parts:master chip,fpga device and peripheral hardwarethe three parts are described in detail independentlythe disadvantage and things need to advance are also listedat the end of the dissertation,the measurement result of the system is given and its err
8、or is analyzedit is shown the awg can output a sine wave,a triangle wave,a sawteeth wave,or a square wave within the frequency range from 00 1 hz to 20mhz with the step of 1 0mhz,or output an arbitrary waveform within the range from 001 hz to 20khzthrough an experiment,it is testified that the desig
9、n meets the requirement planed and the way to use software and hardware programming method and dds technology to realize functional waveform generator is availablekeywords:dds;fpga;functional waveform generator第一章绪论11背景与意义波形发生器uo即通常所说的信号发生器是一种常用的信号源,广泛应用于通信,雷达34l,测控5|,电子对抗67以及现代化仪器仪表8等领域,是一种为电子测量工作提
10、供符合严格技术要求的电信号设备,和示波器、电压表、频率计等仪器一样是最普通、最基本也是应用最广泛的电子仪器之一,几乎所有电参量的测量都要用到波形发生器。随着现代电子技术的飞速发展,现代电子测量工作对波形发生器的性能提出了更高的要求,不仅要求能产生正弦波、方波等标准波形,还能根据需要产生任意波形,且操作方便,输出波形质量好,输出频率范围宽,输出频率稳定度、准确度及分辨率高,频率转换速度快且频率转换时输出波形相位连续等。可见,为适应现代电子技术的不断发展和市场需求,研究制作高性能的任意波形发生器(arbitrary waveform generator,简称awg)十分有必要,而且意义重大。一般传
11、统的信号发生器都采用谐振法,即用具有频率选择性的回路来产生正弦振荡,获得所需频率。这种信号发生器虽然具有输出信号频率范围宽,结构简单等优点,但输出波形单一,不能产生任意波形,且频率稳定度和准确度较差,频率稳定度一般劣于10。分,频率准确度一般在05以下,对于作为精密测量用的信号发生器,其频率稳定度一般要求达到10一一10。因此传统的信号发生器已经越来越不能满足现代电子测量的需要,正逐步退出历史舞台16。而基于频率合成技术制成的信号发生器,由于可以获得很高的频率稳定度和精确度,因此发展非常迅速,尤其是最近随着现代电子技术的不断发展,其应用更是有了质的飞跃。12国内外动态121波形发生器的发展状况
12、波形发生器是能够产生大量的标准信号和用户定义信号,并保证高精度、高江苏大学硕士学位论文稳定性、可重复性和易操作性的电子仪器。函数波形发生器具有连续的相位变换、和频率稳定性等优点,不仅可以模拟各种复杂信号,还可对频率、幅值、相移、波形进行动态、及时的控制,并能够与其它仪器进行通讯,组成自动测试系统,因此被广泛用于自动控制系统、振动激励、通讯和仪器仪表领域¨引。在70年代前,信号发生器主要有两类:正弦波和脉冲波,而函数发生器介于两类之间,能够提供正弦波、余弦波、方波、三角波、上弦波等几种常用标准波形,产生其它波形时,需要采用较复杂的电路和机电结合的方法。这个时期的波形发生器多采用模拟电子
13、技术,而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点,并且要产生较为复杂的信号波形,则电路结构非常复杂。同时,主要表现为两个突出问题,一是通过电位器的凋节来实现输出频率的调节,因此很难将频率调到某一固定值;二是脉冲的占空比不可调节。在70年代后,微处理器的出现,可以利用处理器、ad和da,硬件和软件使波形发生器的功能扩大,产生更加复杂的波形瞄4|。这时期的波形发生器多以软件为主,实质是采用微处理器对dac的程序控制,就可以得到各种简单的波形。90年代木,出现几种真正高性能、高价格的函数发生器心、但是hp公司推出了型号为hp770s的信号模拟装置系统,它由hp8770a任意波形数字化和
14、hpl776a波形发生软件组成。hp8770a实际上也只能产生8中波形,而且价格昂贵。不久以后,analogic公司推出了型号为data2020的多波形合成器,lecroy公司生产的型号为9100的任意波形发生器等。到了二十一世纪,随着集成电路技术的高速发展,出现了多种工作频率可过ghz的dds-心h-"片3839l,同时也推动了函数波形发生器的发展,2003年,agilent的产品33220a能够产生17种波形,最高频率可达到20m,2005年的产品n6030a能够产生高达500mhz的频率,采样的频率可达125ghz。由上面的产品可以看出,函数波形发生器发展很快近几年来,国际上波
15、形发生器技术发展主要体现在以下几个方面:1过去由于频率很低应用的范围比较狭小,输出波形频率的提高,使得波形发生器能应用于越来越广的领域。波形发生器软件的开发正使波形数据的输入变得更加方便和容易。波形发生器通常允许用一系列的点、直线和固定的函数段把波形数据存入存储器。同时可以利用一种强有力的数学方程输入方式,复杂的波形可以由几个比较简单的公式复合成v:f(t)形式的波形方程的数学表达式产生。从而促进了函数波形发生器向任意波形发生器的发展,各种计算机语言的飞速发展也对任意波形发生器软件技术起到了推动作用。目前可以利用可视化编程语言 (如visual basic,visual c等等)编写任意波形发
16、生器的软面板,这样允许从计算机显示屏上输入任意波形,来实现波形的输入。2与vxi资源结合。目前,波形发生器由独立的台式仪器和适用于个人计算机的插卡以及新近开发的vxi模块。由于vxi总线的逐渐成熟和对测量仪器的高要求,在很多领域需要使用vxi系统测量产生复杂的波形,vxi的系统资源提供了明显的优越性,但由于开发vxi模块的周期长,而且需要专门的vxi机箱的配套使用,使得波形发生器vxi模块仅限于航空、军事及国防等大型领域。在民用方面,vxi模块远远不如台式仪器更为方便瞄圳。3随着信息技术蓬勃发展,台式仪器在走了一段下坡路之后,又重新繁荣起来。不过现在新的台式仪器的形态,和几年前的己有很大的不同
17、。这些新一代台式仪器具有多种特性,可以执行多种功能。而且外形尺寸与价格,都比过去的类似产品减少了一半。122国外波形发生器产品介绍早在1978年,由美国wavetek公司和日本东亚电波工业公司公布了最高取样频率为5mhz,可以形成256点(存储长度)波形数据,垂直分辨率为8bit,主要用于振动、医疗、材料等领域的第一代高性能信号源,经过将近30年的发展,伴随着电子元器件、电路、及生产设备的高速化、高集成化,波形发生器的性能有了飞速的提高。变得操作越来越简单而输出波形的能力越来越强。波形操作方法的好坏,是由波形发生器控制软件质量保证的,编辑功能增加的越多,波形形成的操作性越好31。以下给出了几种
18、波形发生器的性能指标,从中可以看出当今世界上重要电子仪器生产商在波形发生器上的研制水平。袁1-1波形发生器产品比较公司 tektronix tektronix 横河电机 肋yetek型号 ag320 awg710 ag5100 295最高采用频率 16mss 4gmss lgmss 50mss通道数 2 2 2 4垂直分辨率 12bit 8bit 8bit 12bit存储容量 64k 8m lm 64k输出电压 10v 25v 2v 15v13函数波形发生器的几种实现方式任意波形发生器得实现方案主要有程序控制输出、dma输出、可变时钟计数器寻址和直接数字频率合成等多种方式。131程序控制输出方
19、式计算机根据波形的函数表达式,计算出一系列波形数据瞬时值,并定时地逐个传送给da转换器,合成出所需要的波形。这种方式具有电路简单、实现方便等特点。但数据输出定时不准确,会影响信号的频率和相位;波形数据输出依靠指令的执行来完成,当需要同时输出多个信号时,相邻信号通道的输出存在时间差;受计算机运行速度的限制,输出信号的频率较低。132 dna输出方式dma(direct memo巧access)方式输出不依赖于程序的执行,由dma控制器申请总线控制权,通过地址总线给出存储器的地址信号,同时选通存储器和da转换器,在两者之间建立直接的数据通道,使存储器相应单元中的波形数据传送给da转换器转换后输出信
20、号。dma方式输出信号,可以大大提高信号的数据输出速率。但也存在一些问题,如波形输出期间,微处理器因为失去了总线控制权,无法进行其他操作;在一个dma操作中,只能在一个da转换器和存储器之间传送数据,无法实现多通道的信号输出。133可变时钟计数器寻址方式采用可变时钟计数器寻址波形存储器表,该方法是一种传统型任意波形发生器。原理框图如图11所示。图卜1可变时钟计数器寻址的任意波形发生图中的计数器实际上是一个地址发生器,计数器的触发时钟脉冲由一个频率可以控制的频率发生器产生,通过改变频率发生器的频率设置值,实现调整计数器产生的地址变化速率,从而改变输出的任意波形的频率。计数器产生的地址码提供读出存
21、储器中波形数据所需要的地址信号,波形数据依次读出后送至高速da转换器,将之转变为模拟量,经低通滤波器后输出所需的波形。可见传统的任意波形发生器采用可变时钟和计数器寻址波形存储器表,此方法的优点是产生的地址连续,输出波形质量高。但其取样时频率较高,对硬件的要求也较高,而且常需多级分频或采用高性能的锁相环,其中分频式的任意波形发生器频率分辨率低,锁相式的任意波形发生器频率切换速度慢。134直接数字频率合成方式dds(direct digital synthesizer)9是在一组存储器单元中按照信号波形数据点的输出次序存储了将要输出波形的数据,在控制电路的协调控制下,以一定的速率,周而复始地将波形
22、数据依次发送给da转换器转换成相应的模拟信号。由于用硬件电路取代了计算机的控制,信号输出稳定度高。如需更新输出信号,不必改动任何线路和元器件,只需改写存储器中的波形数据即可。更主要的是,可以将微处理器从信号输出的负担中解脱出来。如图12为其工作流程图。图卜2直接数字频率合成方式的任意波形发生器14本设计的主要工作本课题主要包括波形发生器硬件电路设计与实现和任意波形数据产生,本人主要完成工作如下:1基于fpga的dds模块电路的实现采用a1tera公司的ep2c35f672c6芯片作为产生波形数据的主芯片,通过硬件编程语言实现dds模块电路,这部分工作需要熟悉dds原理,fpga的开发流程,ve
23、rilog语言编程和quartusii的开发环境。2arm控制模块的设计arm控制芯片与键盘和显示电路的设计,这部分工作需要熟悉嵌入式系统,理解arm接口电路的原理和功能,protel工具的使用。3系统软件设计系统软件设计主要包括嵌入式linux操作系统的移植,相关驱动程序的移植,应用程序主要包括:键盘处理程序的编写,频率及相位控制程序的编写,液晶显示控制程序的设计,波形数据更新控制程序的设计,这部分工作需要深入理解单片机的硬件环境和指令系统,熟练使用arm与linux环境下的c语言及仿真器,了解qt的开发环境。第二章直接数字频率合成器的原理及性能21频率合成器简介211频率合成技术概述频率合
24、成器是现代电子系统的重要组成部分,它作为电子系统的“心脏”,在通信、雷达、电子对抗、导航、仪器仪表等许多领域中得到广泛的应用。频率合成理论早在30年代就丌始提出,迄今为止已有70年的发展历史。所谓的频率合成就是将一个高精度和高稳定度的标准参考频率,经过混频、倍频与分频等对它进行加、减、乘、除的四则运算,最终产生大量的具有同样精确度和稳定度的频率源。频率合成大致经历了三个主要阶段:直接频率合成;采用锁相技术的间接频率合成;直接数字频率合成。早期的频率合成方法称为直接频率合成。它利用混频器、倍频器、分频器与带通滤波器来完成四则运算。直接频率合成能实现快速频率变换、几乎任意高的频率分辨力、低相位噪声
25、及很高的输出频率。缺点是直接合成由于使用了大量硬设备如混频器、倍频器、分频器、带通滤波器等,因而体积大、造价高。此外寄生输出大这是由于带通滤波器无法将混频器产生的无用频率分量滤尽。而且频率范围越宽,寄生分量也就越多。而这些足以抵消其所有优点。直接频率合成技术的固有缺点在间接频率合成技术中得到了很到的改善。间接频率合成又称锁相频率合成,采用锁相环路(pll)技术对频率进行四则运算,产生所需频率。锁相环路(pll)是一个能够跟踪输入信号相位的闭环自动控住系统。早在1932年debellescize提出的同步检波理论中首次公布发表了对锁相环路的描述。但是由于其复杂的技术原理直到1947年锁相环路才第
26、一次用于电视接收机水平和垂直的同步扫描。它的跟踪性能及低噪声性能得到人们的重视得到迅速发展。它在无线电技术的各个领域得到了很广泛的应用。但是锁相频率合成器也存在一些问题,以致难于满足合成器多方面的性能要求。主要表现在高频率分辨率与快速转换频率之间的矛盾。直接数字频率合成即dds,它是目前最新的产生频率源的频率合成技术。这种技术是用数字计算机和数模变换器来产生信号。完成直接数字频率合成的办法,或者是用计算机求解一个数字递推关系式。或者是查阅表格上所存储的波形值。目前用的最多的是查表法。这种合成技术具有相对带宽很宽,频率切换时问短(ns级),分辨率高(uhz),相位变化连续,低相位噪声和低漂移,数
27、字调制功能,可编程及数字化易于集成,易于调整等一系列性能指标远远超过了传统频率合成技术所能达到的水平,为各种电子系统提供了优于模拟信号源性能的高质量的频率源。目前它正朝着系统化,小型化、模块化和工程化的方向发展,性能越来越好,使用越来越方便,是目前应用最广泛的频率合成器之一。212频率合成器主要指标信号源的一个重要指标就足能输出频率准确町调的所需信号。一般传统的信号发生器采用谐振法,即用具有频率选择性的正反馈州路来产生正弦振荡,获得所需频率信号,但难以产生大量的具有同一稳定度和准确度的不同频率。利用频率合成技术制成的信号发生器,通常被称为频率合成器。频率合成器既要产生所需要的频率,又要获得纯净
28、的信号。频率合成器的主要指标1011如下:1输出频率范围(fminfm舣):指的是输出的最小频率和最大频率之问的变化范围。2频率稳定度:指的是输出频率在一定时间间隔内和标准频率偏差的数值,它分长期、短期和瞬时稳定度三种。3频率分辨率:指的是输出频率的最小间隔。4频率转换时问:指的是输出由一种频率转换成另一频率的时间。5频谱纯度:频谱纯度以杂散分量和相位噪声柬衡量,杂散分量为谐波分量和非谐波分量两种,主要由频率合成过程中的非线性失真产生,相位噪声是衡量输出信号相位抖动大小的参数。6调制性能:指的是频率合成器是否具有调幅(am)、调频(fm)、调相(pm)等功能。22 dds原理dds是一种全数字
29、的频率合成方法,其基本结构主要由相位累加器、波形rom、da转换器和低通滤波器四个部分构成,如图21所示。图2-1 dds结构原理图图2-1中相位累加11器结构如图2-2所示。列图2-2相位累加器结构图相位累加器由一个n位的加法器和一个n位的寄存器构成,通过把上一个时钟的累加结果反馈回加法器的输入端而实现累加功能。从而使输出结果每一个时钟周期递增k。这里n为相位累加器的字长,k称为频率控制字。波形rom示意图如图23所示。相位量化序列 地址 数据 波形幅度量化序列波形rom图2-3波形rom示意图其中相位累加器字长为n,dds控制时钟频率为,频率控制字为k。dds直接从“相位”的概念出发进行频
30、率合成。相位累加器由加法器与累加寄存器级联构成。每来一个时钟脉冲,加法器将频率控制字k与累加寄存器输出的累加相位数据相加,把相加后的结果送至累加寄存器的数据输入端。累加寄存器将加法器在上一个时钟脉冲作用后所产生的新相位数据反馈到加法器的输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加器在每一个时钟脉冲输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位,相位累加器的溢出频率就是dds输出的信号频率。dds的核心就是相位累加器,利用它来产生信号递增的相位信息,整个dds系统在统一的参考时钟下工作,每个时钟周期相位累加器作加法运算一次。加法运算的步进越
31、大,相应合成的相位值变化越快,输出信号的频率也就越高。对于幅值归一化的jf弦波信号的瞬时幅值完全由瞬时相位来决定,因为缈=do(t)at,所以相位变化越快,信号的频率越高。rom表完成将累加器相位信息转换为幅值信息的功能。再由da完成数字抽样信号到迮续时域信号的转换,da输出的台阶信号再经低通滤波器平滑可以得到精确的连续正弦信号波形。相位累加器利用nbit二进制加法器的模溢出特性来模拟理想jf弦波的2相位周期。相位累加器输出和rom输出可分别理解为理想正弦波相位信号和时域波形的时钟抽样。用相位累加器输出的数据作为波形存储器的相位取样地址,这样就可以把存储在波形存储器内的波形抽样值(二进制编码)
32、经查找表查出,完成相位到幅值转换。波形存储器的输出送到da转换器,da转换器将数字量形式的波形幅值转换成所要求合成频率的模拟量形式信号。低通滤波器用于滤除不需要的取样分量,以便输出频谱纯净的j下弦波信号。假设,相位累加器字长为n,dds控制时钟频率为fc,时钟周期为tc-1,频率控制字为k。系统工作时,累加器的单个时钟周期的增量值为atp=kx2n2n,相应角频率为m=agat=agt。=29xkx2nxf。,所以dds的输出频率为fods=o2n=kxf,j2n,dds输出频率步进间隔为fdds=fd2n。因dds输出信号是对正弦波的抽样合成的,所以应满足niqust定理要求,即fodsfd
33、2,也就是要求k<2n1,根据频谱性能要求,一般取fodso4fc。当dds相位累加器采用32位字长,时钟频率为30mhz时,它的输出频率间隔可达到afods=re2n=30x 1 062321 0mhz。可见,dds基于累加器相位控制方式给它带来了微步进的优势。dds频率合成器具有以下优点:(1)频率分辨率高,输出频点多,可达2n个频点(假设dds相位累加器的字长是n);(2)频率切换速度快,可达us量级;(3)频率切换时相位连续;(4)可以输出宽带正交信号;(5)输出相位噪声低,对参考频率源的相位噪声有改善作用;(6)可以产生任意波形;(7)全数字化实现,偏于集成,体积小,重量轻。但
34、dds也有比较明显的缺点:(1)输出信号的杂散比较大;(2)输出信号的带宽受到限制。dds输出杂散比较大,这是由于信号合成过程中的相位截断误差、da转换器的截断误差和da转换器的非线性造成的。当然随着技术的发展,这些问题正在逐步得到解决。如通过增长波形rom的长度也减小相位截断误差;通过增加波形rom的字长和da转换器的精度以减小da量化误差等。在比较新的dds芯片中普遍都采用了12bit的da转换器。当然一味靠增加波形rom的深度和字长的方法来减小杂散对性能的提高总是有限的。已有研究在对dds输出的频谱做了大量的分析后,总结出了误差的领域分布规律建立了误差模型,在分析dds频谱特性的基础上又
35、提出了一些降低杂散功率的方法;可以通过采样的方法降低带内误差功率,可以通过随机抖动法提高无杂散动态范围,在da转换器的低位上加扰打破dds输出的周期性,从而把周期性的杂散分量打散使之均匀化。第三章基于fpga的dds模块的实现31现场可编程门阵列(fpga)简介fpga是英文field programmable gatearray的缩写,即现场可编程门阵列,它是在pal、gal、epld等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(asjc)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有町编程器件门电路数有限的缺点。fpga采用了逻辑单元数组lca(logi
36、c cell array)这样一个新概念,内部包括可配置逻辑模块clb(configurable logic block)、输出输入模块lob (inputoutput block)和内部联机(interconnect)三个部分。fpga的基本特点主要有:(1)采用fpga设计asic电路,用户不需要投片生产,就能得到合用的芯片。(2)fpga可做其他全定制或半定制asic电路的中试样片。(3)fpga内部有丰富的触发器和io引脚。(4)fpga是asic电路中设计周期最短、开发费用最低、风险最小的器件之一。(5)fpga采用高速chmos工艺,功耗低,可以与cmos、ttl电平兼容。因此,f
37、pga芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。fpga具有静态可重复编程和动态在系统重构的特性,使得硬件功能可以像软件一样通过编程来修改。在fpga实际应用中,设计的保密和设计的可升级是十分重要的,用单片机束配置fpga可以很好的解决上述问题。用单片机配置fpga器件时,关键在于产生合适的时序。单片机可选用常用的如mcs51系列、mcs96系列、avr系列等均可。cyclone1l12系列fpga主要山输入输出单元ioe、掩埋数组eab、逻辑数组lab及内部联机组成。eab是在输入和输出埠加有寄存器的ram块,其容量可灵活变化。所以,eab不仅可以用于内存,还可以事先写入查表值来
38、用它构成如乘法器、纠错逻辑等电路。当用于ram时,eab可配制成多种形式的字宽和容量。altera公司fpga器件cycloneii系列的组成主要包括:(1)逻辑数组,由多个逻辑数组块(logic array blocks,labs)排列而成,用于实现大部分逻辑功能;(2)在芯片四周分布着可编程的输入输出单元(inputoutputelements,ioes),提供封装引脚与内部逻辑之间的连接接口;(3)丰富的多层互连结构的可编程联机;(4)片上的随机1竽取块状ram;(5)锁相环(pll),用于时钟的锁定与同步、能够实现时钟的倍频和分频;(6)高速的硬件乘法器,有助于实现高性能的dsp功能。
39、fpga是由存放在片内ram中的程序来设置其工作状态的,因此,工作时需要对片内的ram进行编程。用户可以根据不同的配置模式,采用不同的编程方式。加电时,fpga芯片将eprom中数据读入片内编程ram中,配置完成以后,fpga进入工作状态。掉电后,fpga恢复成白片,内部逻辑关系消失,因此,fpga能够反复使用。fpga的编程无须争用的fpga编程器,只须用通用的eprom、prom编程器即可。当需要修改fpga功能时,只需换一片eprom即可。这样,同一片fpga,不同的编程数据,可以产生不同的的电路功能。因此,fpga的使用灵活。fpga的编程技术。目前有三种基本的fpga编程技术:sra
40、m、反熔丝、flash。其中,sram是迄今为止应用范围最广的架构,主要因为它速度快且具有可重编程能力,而反熔丝fpga只具有一次可编程(one time programmable,otp)能力。基于flash的fpga是fpga领域比较新的技术,也能提供可重编程功能。基于sram的fpga器件经常带来一些其他的成本,包括:启动proms支持安全和保密应用的备用电池等等。基于flash和反熔丝的fpga没有这些隐含成本,因此可保证较低的总系统成本13。32 ouartus ii 50开发基本步骤altera公司上一代的pld丌发软件使用者众多1 2|。目前altera已经停止开发maxplus
41、 ii,而转向quartus ii软件平台。而altera公司新一代pld丌发软件quartus 11 web edition更是适合大规模fpga的丌发。ouartus ii开发流程基本分成4个步骤: 1设计输入ouartus ii软件的设计文件可以来自ouartus ii设计输入工具或各种工业标准的eda设计输入工具quartus ii强大的集成功能允许信息在各种应用程序间自由交流,设计者可在一个工程内直接从某个设计文件转换到其他任何设计文件,而不必理会设计文件是图形格式、文本格式,还是波形格式。quartus ii具有如下的多种设计输入方法:原理图输入与符号编辑、硬件描述语言、波形设计输
42、入、平面图编辑以及层次设计输入。如此众多的设计方法帮助设计者轻松地完成设计输入。2项目处理ouartus ii处理一个设计时,软件编译器读取设计文件信息,产生用于器件编程、仿真、定时分析的输出文件。消息处理器可以自动定位编译过程中发现的错误,编译器还可以优化设计文件。项目处理包括以下基本步骤:(1)消息处理器自动定位错误;(2)逻辑综合与试配;(3)定时驱动编译;(4)设计规则检查;(5)多器件划分;本设计主要采用verilog_hdl语言描述方法。硬件描述语言hdl(hardware description language)是一种用形式化方法来描述数字电路和设计数字逻辑系统的语言。它可以使
43、数字逻辑电路设计者利用这种语言来描述自己的设计思想,然后利用电子设计自动化(eda)工具进行仿真,自动综合到门级电路,再利用asic或fpga实现其具体功能。在硬件描述语言出现之前,已经有很多成功的软件设计语言,比如:fortran、pascal和c等,为什么不用这些语言描述硬件?因为这些软件设计语言较合适描述顺序执行的程序,却难以描述硬件的并发行为;软件设计语言中没有时序概念,难以描述信号间的时序关系。硬件描述语言自出现起,发展非常迅速,已经成功应用在数字逻辑设计的各个阶段,包括设计、仿真、验证、综合等,它ffjx,t设计自动化起到了极大的推动14江苏大学硕士学位论文作用。vefilog h
44、dl语言15是硬件描述语言中的一种,它是在1983年由gate waydesign automation公司的phil moorby首创。在1984年一1985年,moorby设计出第一个关于verilog-xl的仿真器,1986年,他对verilog hdl的发展又做出了另一个巨大的贡献,即提出了用于快速门级仿真的xl算法,使仿真速度有了很大提高。随着这种仿真器的流行,verilog hdl语言得到迅速发展。1989年,cadence公司收购了gate way公司,verilog hdl语占成为cadence公司的私有财产。由于verilog私有性,妨碍了使用者之间的交流与共享,为与vhdl
45、语言竞争,1990年,cadence公司决定公开veriiog hdl语言。基于verilog hdl的优越性,ieee于1995年制定了verilog hdl的ieee标准,即verilog hdll3641995。采用verilog语言设计的优点有以下几点:(1)作为一种通用的硬件描述语言,verilog易学易用,因为在语法上它与c语言非常类似,有c语言编程经验的人很容易发现这一点。(2)同一个设计,verilog语言允许设计者在不同层次上进行抽象。verilog语言中提供开关级、门级、rtl级和行为级支持,一个设计可以先用行为级语法描述它的算法,仿真通过后,再用rtl级描述,得到可综合的
46、代码。(3)verilog语言支持广泛,基本上所有流行的综合器、仿真器都支持verilog。(4)所有的后端生产厂商都提供verilog的库支持,这样在制造芯片时,可以有更多的选择。(5)能够描述层次设计,可使用模块实例结构描述任何层次,模块的规模可以是任意的,语言对此没有任何限制。(6)verilog hdl语言的描述能力可以通过使用编程语言接口(pli)机制进一步扩展。pli允许外部函数访问verilog模块内部信息、允许设计者通过软件程序与仿真器进行交互。(7)verilog语言对仿真提供强大的支持,虽然现在出现了专门的用于验证的语言,但用verilog语占直接对设计进行测试任然是大部分
47、工程师的首选。江苏大学硕士学位论文基于verilog的fpga的设计有两种方法:自顶向上(top-down)和自低向上(bottomup)。图31为基于verilog的fpga的设计流程示意图。对于简单的只有逻辑设计的系统,可以不需要虚线所示的步骤;若对于一些很复杂的系统,如视频编解码芯片,则还需在系统设计规范完成后开发行为级模型,并进行仿真,检奄是否能满足系统需求。系统需求i系统设计规范i确定软件,硬件划分i i逻辑总体设计方案 软件总体设计方案l i逻辑详细设计方案 软件详细设计方案l i逻辑编码 软件编码i l功能验证 软件验证软硬件协同验证i综合布局布线时序验证i主板调试图3-1 fp
48、ga设计流程示意图33任意波形发生器的fpga实现早期的dds系统使用分离的数字器件搭接,随着整个电路系统运行频率的升高,采用分离器件构建的dds电路有其自身无法克服的缺点,主要表现在电磁兼容和系统工作频率上。后来出现的专用dds芯片极大的推动了dds技术的发展,但专用dds芯片价格昂贵,且无法实现任意波形输出,近来,cpld及fpga的发展为实现dds提供了更好的技术手段。fpga的应用不仅使得数字电路系统的设计非常方便,并且还大大缩短了系统研制的周期,缩小了数字电路系统的体积和所用芯片的品种。而且它的时钟频率已可达到几百兆赫兹,加上它的灵活性和高可靠性,非常适合用于实现波形发生器的数字电路
49、部分。用fpga设计dds电路比采用专用dds芯片更为灵活。因为,只要改变fpga中的rom数据,dds就可以产生任意波形,因而具有相当大的灵活性。相比之下fpga的功能完全取决于设计需求,可以复杂也可以简单,而且fpga芯片还支持在系统现场升级,虽然在精度和速度上略有不足,但也能基本满足绝大多数系统的使用要求。另外,将dds设计嵌入到fpga芯片所构成的系统中,其系统成本并不会增加多少,而购买专用j吝片的价格则是前者的很多倍。因此,采用fpga来设计dds系统具有很高的性价比。用fpga可以非常方便的实现dds系统的数字电路环节,且可现场编程进行电路的修改。在dds系统中,fpga的主要完成
50、:(1)保存频率字;(2)保存相位字;(3)构成相位累加器,产生波形ram的地址;(4)形成波形ram。17江苏大学硕士学位论文331 fpga设计流程波形选择控制字相位控制字频率控制字外部时钟相位字寄存器波形选择寄存器频率字寄存器i i频率字累加器i 寻址累加器 l波形数据存储pi,l,倍频pll倍频输出图3-2 fpga设计框图fpga的主要功能是:(1)产生与$3c2440的接口电路,使其能够接受arm处理器控制信号;(2)保存频率字,并构成相位累加器,产生与主时钟相同频率的ram寻址字;(3)用内部的存储块构成存放多种波形数据的rom,并通过相应的控制线进行选择;(4)构造出两个多波形
51、选择输出的输出通道,其中的一路通道可具备移相功能;(5)用内部的pll倍频外部低频品振源,并输出与主时钟同频的时钟,驱动片外高速da。该系统可实现常规固定波形输出和任意波形输出。其中相位累加器是一个带有累加功能的32位加法器,它以设定的频率控制字k作为步长来进行加法运算,当其和满时清零,并进行重新运算。相位寄存器是一个8位寄存器,它接受arm处理器发送来的相位控制字数据并进行寄存,当下一个时钟到来时,输入寄存的数据,对输出波形的频率和相位进行控制。波形查找表rom及ram是dds的关键部分,设计时首先需对时域波形进行采样,将采样的波形数据储存到波形查找表rom及ram中,每一位地址对应一个波形
52、点的数值,任意波形数据寄存器接受arm处理器送来的任意波形数据数据。整个系统各模块是在同步时钟信号clk的控制下协调工作的。332 fpga设计模块划分图3-3 fpga设计模块流程图整个设计有一个项层模块,按照功能要求划分成三个功能模块,其中第二个模块足dds核心模块,比较复杂,又划分成6个模块。如图3-3所示:任意波形发生器的fpga的电路设计主要是用fpga设计dds的核心部分最ij)ch位加法器、控制字输入寄存器、流水线累加器,波形查找表、任意波形数据寄存器。333时钟模块图3-4时钟倍频模块根据耐奎斯特采样定理要得到输出频率为20mhz的信号,其所输入的信号时钟频率必须达50mhz以
53、上。采样频率越高,输出波形的平坦度越好,同时波形的的采样点数也越多,那么获得的波形质量也就越好。本设计中的dds模块是一高速模块,所以对系统时钟就有很高的要求,不仅需要有较高的频率,而且还要有非常高的稳定性,如果在fpga的时钟端直接加一高频晶振,不仅时钟不稳定,而且功耗大,费用高,在本设计中,直接调用altera公司的pll核,在fpga时钟端只需加一低频晶振,通过fpga内部pll倍频达到系统时钟要求。图3-4为用mega wizard plugin manager生成的pll的实例图,图中输入端,外接系统时钟,两个输出端,一个是内部dds的系统时钟,另一个为数模转换的控制时钟,两个时钟都
54、足都一个pll产生的,所以,输出的时钟相位偏移在允许范围内。334 48位寄存器设计本设计采用了48位寄存器,用来存储从arm处理器读取的48位控制信号。其中控制信号的低16位用于作波形的选择,相位的偏移。控制信号的高32位当作频率控制字使用,结合fpga的累加器产生32位地址数据。利用这个地址从波形存储器罩将波形调用出来,输出相应的波形。verilog hdl程序:module rsydff(rb,d,clk,q):input rb,clk;input 【47:0】d;output【47:0】q;reg【47:0】q;always(posedge clk or negedge rb)q<
55、;=(!rb)?o:d;endmodule将上述程序利用quartus ii 50仿真出来图形。20江苏大学砸士学位论五圈3 5 48位寄存嚣仿真图从仿a结果ljr以石从外卉|;输入的恼i)已经被存放稿fpga划分“水的寄存器q、j巾。实现r 481l,寄存器的功能。3 3 5地址发生器设计地址发牛器模块包含柏位累加器和帕位控制器,片·|-柑化累jju器足个带打祟加功能的32他加i法器。它接l收arm处理器送来的频率控制+,数据并进行寄存,它以世定的32化频牢控制7 k作为步长米进行加法运饽,当其和满时,畦数器清零爿逊jr晚新运并,¨|dds原则可知,堪过控制频率摔制字k就
56、r以力恒地控制输频毕;,当f卟f时钟到米时,输出寄存的频率和相位数据,对输波彤的频二年和相位进行控制。改漠块输出32位的地址数赫!:,m由j设计的波形数捌存储器椿度为1024点,存储容黾有限,只能取高10位作为波j口ram的地址。按照设¨要求,任意波形发生器的频率分辨率要达刮10mhz,输出最大捌半坚达刮15mhz,叫考虑到fpga本身的特陛(时:多位的累加器,fpga的j作速度足受到限制的),政任意波形发生嚣采州的系统时钟是40mhz,相位累_jj|l器为32bit,这样m矗。=l,2”uj得¨,=9 31 x103llz,ldmhz。小设汁选用的fpga*#件是ep2c
57、35f672c6,通过仿真,当直接聚州32bit累加柞¨候系统时钟最大只能达到约25mtlz。显然是达小到改¨要求的,新以必须改进牛¨似累加器的结构,他之达至】史高的t作迷度。在削j电路世汁中为了提高i。作述2度,流水线结构是一种常用的设计方法。累加器采用流水线结构来实现,简单而言,就是把一个位数很长的加法,拆成n个位数较短的加法,在n个时钟周期内做完,然后输出结果,n就是流水线的级数。采用流水线结构以后,由于加法器的字长变短了,对于fpga来讲,加法器字长变短,对于提高工作频率是十分有帮助的。当然,流水线结构的使用,并不能无限制地提高电路的工作速度,这是因为,流水线结构是一种用电路规模换取工作速度的设计方法,提高工作速度的代价是电路设计的复杂化。流水线结构累加器要比普通的累加器结构复杂得多,由于累加不在一个时钟周期内完成,内部需要大量的寄存器保存中间变量。随着流水级数的提高,电路复杂程度将大大增加,当电路的复杂程度达到一定量级的时候,流水线所带来的性能改进,和电路本身由于结构复杂所带来的性能下降相抵消的时候,流水线结构就不再具有提高电路工作频率的作用了。对于不同的器件米说,采用多少级流水对性
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年黑龙江道路货运驾驶员从业资格证考试题库
- 服装公司总经理聘用合同模板
- 工程监理承包合同
- 农村考古遗址考古旅游开发合同
- 社区服务管理分层管理办法
- 2025劳动合同不续签处理
- 2024年度高品质钛矿出口贸易合同3篇
- 2024年物业管理招标申请文件3篇
- 陶艺馆租赁合同
- 食品文件生产流程
- 【能源化工类】化学化工学院学生就业及去向分析报告
- 工程中间交接证书
- 中学生心理健康教育主题班会课件
- 工会主席候选人的主要表现
- 净化工程质量验收检查表格
- 自主的课堂 完整版课件
- 思想道德与法治课件:第六章 第三节 维护宪法权威
- 高中地理-地形对聚落及交通线路分布的影响2课件-湘教版必修1
- TSG D7005-2018压力管道定期检验规则-工业管道
- 变电站电气设备简介
- 肿瘤抗原的分类、免疫机制和治疗方法(英文版)
评论
0/150
提交评论