周期可调的多波形发生器_第1页
周期可调的多波形发生器_第2页
周期可调的多波形发生器_第3页
周期可调的多波形发生器_第4页
周期可调的多波形发生器_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、周期可调的多波形发生器设计与仿真摘 要:本文提出了采用Max+PlusII开发平台,VHDL编程实现,基于可编程逻辑器件CPLD设计多波形发生器的设计方案。整个系统除晶体振荡器和DA转换外,全部集成在一片EPF10K10LC84-4芯片上。它可输出频率可调的正弦波、三角波、方波和两种或三种波形线性组合的10种波形。任意波形模块可由用户自行编辑所需波形数据,经下载在不改变整个系统硬件连接的情况下,输出用户所需的特殊波形,实现了传统的波形发生器不具有的一些波形的产生。整个设计采用VHDL编程实现,其设计过程简单,极易修改,可移植性强。 关键词:波形发生器;线性组合;硬件描述语言;复杂可编程逻辑器件

2、 The Design and Simulation of Cycle Adjustable Multi-wave Generator Abstract: This paper proposes the design proposal that design the multi-wave generator based on programmable logical component CPLD,the VHDL programming realization and the Max+PlusII development platform.Besides the crystal oscilla

3、tor and the D/A transformation,the entire system completely integrates on the EPF10K10LC84-4 chip which is produced by Altera Corporation of USA.The multi_wave generator may output the sine_wave,the triangle_wave,the square_wave, and two kinds or three kinds of profiles linear combination,totally 10

4、 kinds of profiles which the frequency,the scope can be adjusted.The free profile module may voluntarily be edited by the profile data based on the users needs,then downloaded under the situation which the entire system hardware connects do not change,and finall yout put the special profile which us

5、er needs.The multi_wave generator generates wave which hthe conventional function signal generators cant make.The whole design realizes by the VHDL programme.Its design process has simple feature,easy modification and high transportation. keywords: wavegenerator; linear combination;VHDL;CPLD第1章 绪论1.

6、1 研究波形发生器的目的与意义波形发生器是信号源的一种,主要给被测电路提供所需要的己知信号(各种波形),然后用其它仪表测量感兴趣的参数。可见信号源在各种实验应用和试验测试处理中的应用非常广泛。它不是测量仪器,而是根据使用者的要求,作为激励源,仿真各种测试信号,提供给被测电路,以满足测量或各种实际需要。 目前我国己经开始研制波形发生器,并取得了可喜的成果。但总的来说,我国波形发生器还没有形成真正的产业。就目前国内的成熟产品来看,多为一些 PC仪器插卡,独立的仪器和VXI系统的模块很少,并且我国目前波形发生器的种类和性能都与国外同类产品存在较大的差距,因此加紧对这类产品的研制显得迫在眉睫。1.2

7、波形发生器的发展现状和前景展望1.2.1 波形发生器的发展状况 波形发生器是能够产生大量的标准信号和用户定义信号,并保证高精度、高稳定性、可重复性和易操作性的电子仪器。函数波形发生器具有连续的相位变换、和频率稳定性等优点,不仅可以模拟各种复杂信号,还可对频率、幅值、相移、波形进行动态、及时的控制,并能够与其它仪器进行通讯,组成自动测试系统,因此被广泛用于自动控制系统、震动激励、通讯和仪器仪表领域。在70年代前,信号发生器主要有两类:正弦波和脉冲波,而函数发生器介于两类之间,能够提供正弦波、余弦波、方波、三角波、上弦波等几种常用标准波形,产生其它波形时,需要采用较复杂的电路和机电结合的方法。这个

8、时期的波形发生器多采用模拟电子技术,而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点,并且要产生较为复杂的信号波形,则电路结构非常复杂。同时,主要表现为两个突出问题,一是通过电位器的调节来实现输出频率的调节,因此很难将频率调到某一固定值;二是脉冲的占空比不可调节。在70年代后,微处理器的出现,可以利用处理器、A/D和 D/A,硬件和软件使波形发生器的功能扩大,产生更加复杂的波形。这时期的波形发生器多以软件为主,实质是采用微处理器对DAC的程序控制,就可以得到各种简单的波形。 90 年代末,出现几种真正高性能、高价格的函数发生器、但是HP公司推出了型号为HP770S的信号模拟装置系统,它

9、由HP8770A任意波形数字化和 HP1776A波形发生软件组成。HP8770A实际上也只能产生8 种波形,而且价格昂贵。不久以后,Analogic公司推出了型号为 Data-2020的多波形合成器,Lecroy公司生产的型号为9100的任意波形发生器等。 到了二十一世纪,随着集成电路技术的高速发展,出现了多种工作频率可过 GHz 的DDS 芯片,同时也推动了函数波形发生器的发展。2003年,Agilent的产品33220A能够产生17种波形,最高频率可达到 20M,2005年的产品N6030A 能够产生高达500MHz的频率,采样的频率可达1.25GHz。由上面的产品可以看出,函数波形发生器

10、发展很快。近几年来,国际上波形发生器技术发展主要体现在以下几个方面:(1)过去由于频率很低应用的范围比较狭小,输出波形频率的提高,使得波形发生器能应用于越来越广的领域。波形发生器软件的开发正使波形数据的输入变得更加方便和容易。波形发生器通常允许用一系列的点、直线和固定的函数段把波形数据存入存储器。同时可以利用一种强有力的数学方程输入方式,复杂的波形可以由几个比较简单的公式复合成 v=f(t)形式的波形方程的数学表达式产生。从而促进了函数波形发生器向任意波形发生器的发展,各种计算机语言的飞速发展也对任意波形发生器软件技术起到了推动作用。目前可以利用可视化编程语言(如Visual Basic ,V

11、isual C 等等)编写任意波形发生器的软面板,这样允许从计算机显示屏上输入任意波形,来实现波形的输入。 (2)与 VXI 资源结合。目前,波形发生器由独立的台式仪器和适用于个人计算机的插卡以及新近开发的VXI模块。由于VXI总线的逐渐成熟和对测量仪器的高要求,在很多领域需要使用VXI系统测量产生复杂的波形,VXI的系统资源提供了明显的优越性,但由于开发VXI模块的周期长,而且需要专门的VXI 机箱的配套使用,使得波形发生器VXI模块仅限于航空、军事及国防等大型领域。在民用方面,VXI模块远远不如台式仪器更为方便。 (3)随着信息技术蓬勃发展,台式仪器在走了一段下坡路之后,又重新繁荣起来。不

12、过现在新的台式仪器的形态,和几年前的己有很大的不同。这些新一代台式仪器具有多种特性,可以执行多种功能。而且外形尺寸与价格,都比过去的类似产品减少了一半。 1.2.2 国内外波形发生器产品比较 早在1978 年,由美国Wavetek 公司和日本东亚电波工业公司公布了最高取样频率为5MHz,可以形成256点(存储长度)波形数据,垂直分辨率为8bit,主要用于振动、医疗、材料等领域的第一代高性能信号源,经过将近30年的发展,伴随着电子元器件、电路、及生产设备的高速化、高集成化,波形发生器的性能有了飞速的提高。变得操作越来越简单而输出波形的能力越来越强。波形操作方法的好坏,是由波形发生器控制软件质量保

13、证的,编辑功能增加的越多,波形形成的操作性越好。表1.1几种波形发生器的性能指标,从中可以看出当今世界上重要电子仪器生产商在波形发生器上的研制水平。表1.1波形发生器的性能指标公司TektronixTektronix横河电机Wavetek型号AG320AWG710AG5100295最高采用频率16MS/s4GMS/s1GMS/s50MS/s通道数2224垂直分辨率12bit8bit8bit12bit存储容量64K8M8M64K输出电压10V2.5V2V15V1.3 任意波形发生器 任意波形发生器是在1975年开发成功的,从此,信号发生器增加了一个新品种。在任意波形发生器作为测量用信号激励源进入

14、市场之前,为了产生非正弦波信号,已使用函数发生器提供三角波、斜波、方波和余弦波等几种特殊波形。声音和振动分析需要复杂调制的信号源,以便仿真真实的信号,只有借助任意波形发生器,例如医疗测试往往需要心电波形,任意波形发生器很容易产生各种非标准的振动信号。早期的任意波形发生器主要着重音频频段,现在的波形发生器已扩展到射频频段,它与数字示波器(DSO)密切配合,只要数字示波器捕获的信号,任意波形发生器就能复制出同样的波形。在电路构成上,数字示波器是模拟/数字转换,任意波形发生器是模拟/数字的逆转换,目前任意波形发生器的带宽已达到2GHZ,足够仿真许多移动通信、卫星通信的许多复杂信号。几种任意波形发生器

15、生产数字示波器的仪器公司一般都供应任意波形发生器,如安捷伦、力科、泰克公司,也有只生产任意波形发生器的公司,如雷科、斯坦福公司。仪器有台式、PC机虚拟、VXI总线、PXI总线等多种方式,大部分产品只有1路输出,有的高达16路输出。仪器采样率从最低的100KS/S到4GS/S,相当实时带宽50KHZ到最高的2GHZ。产生任意波形的方法主要有两种:即存储器和直接数字合成(DDS),前者比较简单,分两种形式:相位累加器式与计数器式,但需要较深的存储容量。仪器的垂直分辨率有8位至16位,采样率越高时分辨率越低,主要受数/模转换器和存储器特性的影响。存储器的容量从最小的8K(12位)到16M(8位),通

16、常可根据客户要求扩充容量。任意波形发生器的波形定义主要有面板设定、方程式设定、波形下载、软件设定、数字示波器下载、内置编辑器等多种。软件大部分采用Windows、LabVIEW或VXIpnp,总线主要是GPIB(台式仪器)VXI(模块仪器)、PCI/PXI(PC机仪器)、RS-232(通信)、LAN(网络)等。任意波形发生器的应用非常广泛,在原理上可仿真任意波形,只要数字示波器或其他记录仪捕捉到的波形,任意波形发生器都可复制出,特别有用的是仿真单次偶发的信号,例如地震波形、汽车碰撞波形等等。以下是几种尖端技术中任意波形发生器产生的复杂测量信号:第一、雷达信号仿真雷科公司的任意波形发生器有调幅、

17、调频和脉冲三组输出,组合调制信号输入微波信号发生器产生复杂的雷达信号模式,用于仿真飞行器的雷达信令。由于三种调制信号有严格的同步和低的相位噪声,使这种序列信号既稳定又相位噪声极低,序列内内科插入触发、波形循环、断点而不会失去同步,从而扩展成为复杂的波形产生设备。第二、卫星音调仿真任意波形发生器和微波信号发生器一起可产生通信卫星的音调仿真。用于测试地面接收站特性。任意波形发生器驱动上变频器在适当频率下产生几种音调,在被测通道的测试序列插入空白段,用于播送实况信号。任意波形发生器的数量视音调数目和间隔而定。这种测试方法同样可用来测试在同一通信链路内收发多个数据流的电信系统。 第三、微机电系统的驱动

18、微机电系统有机械、光学、电学的多种信号,需要几台任意波形发生器仿真激励和执行机构的复杂信号,信号之间有严格的定时关系。 第四、磁盘驱动器仿真磁盘驱动器产生的同步数字和模拟信号可由任意波形发生器仿真,用于读写数据的测试,这种混合信号仿真可作为平板LCD、等离子高清晰度电视等的测试信号。 第五、数字通信的仿真第三代移动通信属于多制式多信号的综合,对于这种包括语音、图像和数据的复杂调制信号AWG可发挥积极作用和产生非常逼真的信号。 第六、任意波形发生器复制数字示波器的偶发信号利用两种仪器的互补特点,任意波形发生器可复制出数字示波器的很难捕捉到的毛刺信号。由于任意示波器的仿真功能越来越完善,已成为通信

19、、雷达、导航、超声、自动测量等复杂波形的信号源。几种代表性的硬件平台任意波形发生器最多的供应商是泰克公司,它的AFG300系列(取样率16MS/S,分辨率12位)、AWG400系列(取样率200MS/S,分辨率16位)、AWG500系列(取样率1GS/S,分辨率10位)、AWG600系列(取样率2.6GS/S,分辨率8位)、还有AWG700系列(取样率4GS/S,分辨率8位)、还有AWG2000系列(最高取样率250MS/S,分辨率12位,最大输出10V)是编程更简单,可与该公司的数字示波器直接波形转移的任意波形发生器,泰克公司的数字存储示波器(DSO)和数字荧光示波器(DPO)分别有实时带宽

20、6GHZ(TDS6000系列)和5GHZ(TDS7000系列)的最高指标,位配合DSO和DPO示波器族的测量应用,一直生产上述的各种任意波形发生器系列,从而长期保持领先地位。直到2001年Analogic公司推出DBS2055任意波形发生器(取样率4.8GS/S,分辨率8位)成为业界指标最高的产品。任意波形发生器的发展趋势是更高取样率和更高分辨率和更大存储量。目前实时带宽超过1GS/S的产品比较少,而且分辨率只有8位,不能满足快速发展的移动通信和高速网络的测量要求。与数字存储示波器相比,任意波形发生器的全面指标存在明显差距,前者取样率达到20GS/S和带宽6GHZ,后者的取样率是4.8GS/S

21、和带宽2GHZ,任意波形发生器首先要赶上数字存储示波器,然后再往前发展,因为在电路构成方面,任意波形发生器的核心部件是高速数/模转换器,它的工艺潜力还很大,显然缺少的是市场需求。任意波形发生器的另一重要应用领域是低频,例如心电图、汽车点火、防撞气囊和医疗仪器等,频率范围在声频以下,多组信号输出,16位以上的分辨率。这类任意波形发生器以VXI总线、PXI总线和PC总线模块较多,每年都有新产品推出。1.4 波形发生器的设计方法传统的波形发生器大多采用模拟分立元件实现,产生的波形种类受电路硬件的限制,体积大,灵活性和稳定性相对较差,电路较复杂,设计周长长,调制较繁琐。目前波形合成技术主要有两种常用的

22、方法,一种是使用专用的DDS(直接频率合成)芯片,一种是基于CPLD/FPGA的解决方案。DDS的原理:如图1.1所示,将要产生的波形数据存入波形存储器中,然后在参考脉冲的作用下,对输入的频率数据进行累加,并将累加器输出的一部分作为读取波形存储器的地址,将读出的波形数据经D/A转换为相应的电压信号,D/A转换输出的一系列的阶梯电压信号经低通滤波器滤波后便输出了光滑的合成波形信号。数字电路fclk频率设置phase相位累加器Sin幅度变换器数/模变换器低通滤波器fout输出图1.1 DDS原理框图DDS的输出信号的频率为:fout=phase*fclk/2Nphase=2 fout/fclk弧度

23、其中:fout为信号合成频率;fclk为参考时钟频率;phase为频率设置数据,也称频率控制字;N为相位累加器的位数。DDS的频率分辨率即最低频率为:foutfout /2N所以只要N足够大,DDS可以得到很小的频率间隔。要改变DDS的输出信号的频率,只要改变phase即可。根据奈奎斯特的抽样定理,DDS的最大频率为:fmax1/ fclk方案比较:方案一:采用单片机函数发生器(如8031),8031可同时产生正弦波、脉冲波,方法简单易行。用D/A转换器的输出来改变调节电压,也可以实现数控调整频率,但步长难以满足要求,且频率稳定度不够高。方案二:采用专用芯片实现,利用琐相环,将压控振荡器(VC

24、O)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂,不适于产生低频信号。方案三:采用直接数字频率器(DDS),硬件或软件实现。即用累加器按频率要求相对应的相位增量进行累加,再以累加相位值作为地址码,取存放于ROM中的波形数据,经D/A转换、滤波即得所需波形。方法简单,频率稳定度高,易于控制。虽然有的专用DDS芯片的功能也比较多,但控制方式却是固定的,因此不一定是我们所需要的。而可编程逻辑器件以其速度高、规模大、可编程、以及有强大的EDA软件支持等特性,十分实用于实现DDS技术。利用PLD可以根据需要实现各种复杂的调频、调相和条幅功能,具有良好的实用性。

25、本次设计采用Max+PlusII开发平台,VHDL编程实现,基于可编程逻辑器件FPGA设计多波形发生器。整个系统除晶体振荡器和D/A转换外,全部集成在一片EPF10K10LC84-4芯片上。它可输出频率、幅度可调的正弦波、三角波、方波和两种或三种波形线性组合的10种波形。任意波形模块可由用户自行编辑所需波形数据,经下载在不改变整个系统硬件连接的情况下,输出用户所需的特殊波形,实现了传统的波形发生器不具有的一些波形的产生。整个设计采用VHDL编程实现,其设计过程简单,极易修改,可移植性强。第2章 基本器件的选择2.1 系统原理及硬件框图目前波形发生器大多由振荡器、放大器、衰减器、指示器和调制器组

26、成。这种传统设计方法的特点是硬件和软件截然不同,设计中不可相互替代,而且硬件连线复杂,可靠性较差。基于VHDL语言,以EDA技术作为开发手段,可编程器件CPLD作为控制核心实现的波形发生器,与传统设计相比较,不仅简化了硬件控制,提高了系统的整体性能和工作可靠性,也为进一步提高系统集成创造了条件。该设计的核心器件是可编程逻辑器件,但在设计中都是对数字信号的处理,要想能看到显示的图象,还需要用到D/A转换器。系统原理及硬件框图如图2.1所示:控制电路CPLDD/A转换输出显示图2.1 系统原理及硬件框图2.2 常用的可编程逻辑器件可编程逻辑器件简称PLD(Programble Logic Devi

27、ce),是EDA技术应用的一个重要基础,PLD的发展推动了EDA工具软件的发展,也改变了电子系统的设计方法。PLD的发展过程大概经历了如下几个阶段:(1)20世纪70年代:生产出了最早的可编程逻辑器件PROM和PLA。(2)20世纪70年代末期:AMD公司的PAL器件上市。(3)20世纪80年代初期:LATTICE公司推出世界上第一片电可擦写的GAL器件。(4)20世纪80年代中期:XILINX公司提出现场可编程概念,同时生产了世界上第一片FPGA器件,同一时期ALTERA公司推出了EPLD器件。(5)20世纪90年代初期:LATTICE公司提出了在系统可编程技术,推出了具有在系统可编程能力的

28、CPLD器件。(6)20世纪90年代以后:PLD进入了高速发展时期,无论从集成度、速度还是功能等方面都出现了飞跃性的发展,同时模拟PLD器件也在该时期面世。了解可编程器件的内部结构、工作原理和运行特点更有利于系统设计的优化,特别是在属性控制设置、输入输出出口线的安排、有效的提高芯片资源的利用率和发掘其速度潜力等方面,具有一定的指导作用。大规模可编程逻辑器件CPLD和FPGA的内部基本结构因PLD生产厂家的不同而略有差异。2.3 CPLD芯片的选择由于Altera公司的PLD具有高性能、高密度集成、高性能价格比、开发周期短、对器件优化的IP解决方案和在线可编程能力,而且Altera 公司的Max

29、+plusII 开发平台也被认为是最优秀的开发平台之一,所以在本文的设计中选用Altera公司的产品来进行设计。图2.2说明了一个10万门器件的开发周期。设计思想设计思想设计处理系统测试设计仿真器件编程少于1小时530分钟2小时至少2分钟图 2.2 用Altera器件开发10万逻辑门的一个典型开发周期Altera的PLD器件包括 APEX20K、APEXII、Excalibur、Mercury、Stratix、ACEX1K、FLEX10K、FLEX8000、FLEX6000、MAX9000、MAX7000、MAX3000 和 Classic系列。根据各种器件的比较和实际的应用情况,在本设计中选

30、用 FLEX10K 系列器件。FLEX10K是工业界第一个嵌入式的可编程逻辑器件,采用可重构的CMOS SRAM工艺,把连续的快速通道互连与独特的嵌入式阵列相结合,同时也结合了众多可编程器件的优点来完成普通门阵列的宏功能。由于其具有高密度、低成本、低功率等特点,所以脱颖而出称为当今Altera PLD中应用最好的器件系列。其集成度已达到25万门。它能让设计人员轻松开发出集存储器、数字信号处理器及特殊逻辑包含32位多总线系统等强大功能于一身的芯片。FLEX10K系列器件主要由嵌入式阵列块、逻辑阵列块、快速通道互连和 I/O单元四部分组成。一组LE 构成一个LAB,LAB是排成行和列的,每一行也包

31、含一个EAB。LAB 和EAB是由快速通道连接的。IOE位于快速通道连线的行和列的两端。嵌入式阵列由一系列嵌入式阵列块(EAB)构成。当用来实现有关存储功能时,每个EAB提供 2048位用来构造RAM、ROM、FIFO或双口RAM等功能。当用来实现乘法器、微控制器、状态机以及DSP等复杂逻辑时,每个 EAB 可以贡献100到600个门,EAB 可以单独使用,也可以组合起来使用。逻辑阵列由一系列逻辑阵列块(LAB)构成。每个LAB包含八个LE和一些局部互连。每个LE含有一个四输入查找表(LUT)、一个可编程触发器、进位链和级联链。八个LE可以构成一个中规模的逻辑块,如八位计算器、地址译码器和状态

32、机。多个LAB组合起来可以构成更大的逻辑块。每个LAB代表大约96个可用逻辑门。器件内部信号的互连和器件引脚之间的信号互连由快速通道连线提供,快速通道互连是一系列贯通器件长、宽的快速连续通道。本设计FPGA器件选择Altera公司FLEX10K10系列的EPF10K10LC844芯片。EPF10K10LC844表示所属器件系列是EPF,器件类型是10K10,封装形式为L:Plastic J-lead chip carrier(PLCC),工作温度为C;民用温度(0-70摄氏度),引脚数为84,速度等级为4。该芯片集成有1万个等效逻辑门,含有572个逻辑单元(LEs)、72个逻辑阵列块(LABs

33、)、3个嵌入式阵列块(EAB s),并具有720个片内寄存器,可以在不占用内部资源的条件下实现6144 bit的片内存储器;内部模块间采用高速、延时可预测的快速通道连接;逻辑单元间具有高速、高扇出的级联链和快速进位链;片内还有三态网络和6个全局时钟、4个全局清零信号以及丰富的I/O资源;每个I/O引脚可以选择为三态控制或集电极开路输出,可以通过编程控制每个I/O引脚的速度以及I/O寄存器的使用。2.4 DAC模块我们要选用的芯片是八位DAC,转换时间小于10s 。DAC0832是双列直插式8位D/A转换器。能完成数字量输入到模拟量(电流)输出的转换。图2.3和图2.4分别为DAC0832的引脚

34、图和内部结构图。其主要参数如下:分辨率为8位,转换时间为1s,满量程误差为1LSB,参考电压为(+10-10)V,供电电源为(+5+15)V,逻辑电平输入与TTL兼容。从图2.3中可见,在DAC0832中有两级锁存器,第一级锁存器称为输入寄存器,它的允许锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号/XFER。DAC0832能够达到要求。2.4.1 DAC0832引脚及其功能图2.4中,当ILE为高电平,片选信号 /CS 和写信号 /WR1为低电平时,输入寄存器控制信号为1,这种情况下,输入寄存器的输出随输入而变化。此后,当 /WR1由低电平变高时,控制信号成为

35、低电平,此时,数据被锁存到输入寄存器中,这样输入寄存器的输出端不再随外部数据DB的变化而变化。对第二级锁存来说,传送控制信号 /XFER 和写信号 /WR2同时为低电平时,二级锁存控制信号为高电平,8位的DAC寄存器的输出随输入而变化,此后,当 /WR2由低电平变高时,控制信号变为低电平,于是将输入寄存器的信息锁存到DAC寄存器中。图2.3 DAC0832引脚图图2.3中其余各引脚的功能定义如下:(1)、DI7DI0 :8位的数据输入端,DI7为最高位。(2)、IOUT1 :模拟电流输出端1,当DAC寄存器中数据全为1时,输出电流最大,当 DAC寄存器中数据全为0时,输出电流为0。(3)、IO

36、UT2 :模拟电流输出端2, IOUT2与IOUT1的和为一个常数,即IOUT1IOUT2常数。(4)、RFB :反馈电阻引出端,DAC0832内部已经有反馈电阻,所以 RFB端可以直接接到外部运算放大器的输出端,这样相当于将一个反馈电阻接在运算放大器的输出端和输入端之间。(5)、VREF :参考电压输入端,此端可接一个正电压,也可接一个负电压,它决定0至255的数字量转化出来的模拟量电压值的幅度,VREF范围为(+10-10)V。VREF端与D/A内部T形电阻网络相连。(6)、Vcc :芯片供电电压,范围为(+5 15)V。(7)、AGND :模拟量地,即模拟电路接地端。(8)、DGND :

37、数字量地。图2.4 DAC0832内部结构图2.4.2 DAC0832的工作方式DAC0832可处于三种不同的工作方式:1、 直通方式 :当ILE接高电平,、和都接数字地时,DAC处于直通方式,8位数字量一旦到达DI7DI0输入端,就立即加到8位D/A转换器,被转换成模拟量。例如在构成波形发生器的场合,就要用到这种方式,即把要产生基本波形的数据存在ROM中,连续取出送到DAC去转换成电压信号。2、 单缓冲方式 :只要把两个寄存器中的任何一个接成直通方式,而用另一个锁存器数据,DAC就可处于单缓冲工作方式。一般的做法是将和都接地,使DAC寄存器处于直通方式,另外把ILE接高电平,接端口地址译码信

38、号,接CPU的信号,这样就可以通过一条MOVX指令,选中该端口,使和有效,启动D/A转换。3、 双缓冲方式 :主要在以下两种情况下需要用双缓冲方式的D/A转换。(1)需在程序的控制下,先把转换的数据输入输入缓存器,然后在某个时刻再启动D/A转换。这样,可先选中端口,把数据写入输入寄存器;再选中端口,把输入寄存器内容写入DAC寄存器,实现D/A转换。(2)在需要同步进行D/A转换的多路DAC系统中,采用双缓冲方式,可以在不同的时刻把要转换的数据打入各DAC的输入寄存器,然后由一个转换命令同时启动多个DAC转换。先用3条输出指令选择3个端口,分别将数据写入各DAC的输入寄存器,当数据准备就绪后,再

39、执行一次写操作,使变低同时选通3个D/A的DAC寄存器,实现同步转换。2.4.3 DAC的连接DAC0832输出的是电流,一般要求输出是电压,所以还必须经过一个外接的运算放大器转换成电压。实验线路如图2.5所示。 图2.5 DAC0832的连接图第3章 系统硬件电路编程3.1 EDA技术的基本设计思想(1)EDA技术的电路级设计 电路级设计工作的流程图如图3.1示。设计人员首先确定设计方案,并选择能实现该方案的合适元器件,然后根据元器件设计电路原理图,接着进行第一次仿真,其中包括数字电路的第一次模拟、故障分析等。其作用是在元件模型库的支持下检验设计方案在功能方面的正确性。仿真通过后,根据原理图

40、产生的电器连接网络表进行PCB(printed circuit board)的自动布局布线。在制作PCB之前,还可以进行PCB后分析,并将分析结果反馈回电路图,进行第三次仿真,称之为后仿真。其作用是检验PCB板在实际工作环境中的可行性。综上所述,EDA技术的电路级设计可以使设计人员在实际电子系统产生之前,就“已经”全面了解系统的功能特性和物理特性,从而将开发风险消灭在设计阶段,缩短开发时间,降低开发成本。方案设计系统仿真制造PCB原理图设计PCB后仿真自动布局系统实现元件符号库元件模型库图3.1 EDA技术级流程图(2)EDA技术的系统级设计随着技术的进步,电子产品的更新换代日新月异,产品的复

41、杂程度得到了大幅度增加,以前鉴于电路级设计的EDA技术已不能适应新的形势,必须有一种高层次的设计方法,即“系统级设计”,其设计流程图如图3.2示。基于系统级的EDA设计方法其主要思路使采用“自顶向下”的设计方法,使开发者从一开始就要考虑到产品生产周期的诸多方面,包括质量成本、开发周期等因素。第一步从系统方案设计入手,在顶层进行系统功能划分和结构设计;第二步用VHDL、Verilog-HDL等硬件描述语言对高层次的系统行为进行描述;第三步通过编译器形成标准的VHDL文件,并在系统级验证系统功能的设计正确性;第四步用逻辑综合优化工具生成具体的门级电路的网络表,这是将高层次的描述转化为硬件电路的关键

42、;第五步将利用产品的网络表进行适配前的时序仿真;最后使系统的物理实现级,它可以是CPLD、FPGA或ASIC。方案设计系统规划VHDL代码输入编译器功能仿真综合器编程文件适配器时序仿真CPLD/FPGA/ASIC图3.2 EDA技术的系统级设计流程图3.2 系统的总体设计思想及框图本设计采用了结构化系统设计方案,整个软件自顶向下细化,每个模块完成一项功能,并遵守上层模块调用下层模块,同层模块不能相互调用的原则。以三种基础波形为设计与实现的对象,即正弦波、方波、三角波。三个波形作为同一个任意波形发生器里的三个部分,有着同一个输入与输出,因此在设计上还需要对波形进行选择与控制,通过对时钟脉冲输入的

43、选择,使得三个波形模块只有一个输入为时钟脉冲。其他两个模块的输入时钟为0,输出的波形数字信号,通过D/A芯片转换为模拟信号。分析:产生正弦波,是通过预先计算出正弦波表,然后查表输出实现的(此处一个周期正弦波取64点);产生方波,是通过交替送出全0和全1,给以适当的延时实现的;产生三角波,是通过由全0不断加同一个数,到全1之后再不断减同一个数来实现的;两种波形的线性组合,可以将每一时刻两种波形的数值相加,再除以2得到。三种波形的组合也类似;频率的变化是通过改变波形 产生模块的工作时钟实现;最后输出的是三种波形及其组合。系统总体设计框图如图3.3示。方波产生波形选择分 频三角波产生正弦波产生波形显

44、示D/A转换频率初值产生图3.3 系统总体设计框图3.3 VHDL及其优点VHDL的英文全名是Very-High-Speed Integrated Circuit Hardware Description Language,诞生于1982年。1987年底,VHDL被IEEE(The Institute of Electrical and Electronics Engineers)和美国国防部确认为标准硬件描述语言。自IEEE公布了VHDL的标准版本(IEEE-1076)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了

45、广泛的接受,并逐步取代了原有的非标准硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,及IEEE标准的1076-1993版本。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL和Verilog语言将承担起几乎全部的数字系统设计任务。VHDL主要用于描述数字系统的结构、行为、功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似于一般的计算机高级语言。VHD

46、L的程序结构特点是将一项工程设计或称设计实体(可以是一个元件、一个电路模块和一个电路系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),及设计实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体生成内外部分的概念是VHDL系统设计的基本点。应用VHDL进行工程设计的优点是多方面的,具体如下:(1)与其他的硬件描述语言相比,VHDL具有更强大的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。(2)VHDL具有丰富的仿真语句和库函数,使得在任何大系统的设计早期,就能查验设计系统功能的可行性,

47、随时对系统进行仿真模拟,使设计者对整个工程的结构和功能可行行作出判断。(3)VHDL语句的行为描述能力和程序结构,决定了它具有支持大规模设计的分解和已有设计的再利用功能。(4)有VHDL完成一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动把VHDL描述设计转变成门级网表。(5)VHDL对设计的描述具有相对独立性。(6)由于VHDL具有类属描述语句和子程序调用等功能,对于完成的设计,在不改变源程序的条件下,只需改变类属参量或函数,就能轻易的改变设计的规模和结构。3.4 各个模块及其功能仿真3.4.1 CHUZHI模块模块CHUZHI见图3.4。模块仿真波形如图3.5。该模块提供初值,

48、供下一个模块FANA分频时用,通过不同的初值,在波形产生模块得到不同的工作频率,从而实现调节波形频率的目的。送不同的初值,是由输入a决定的,4位矢量产生的16种组合中的10种对应了10种不同的频率。频率控制见表3.1。表3.1 频率控制输入控制(a)时钟预制数频率(HZ)0001313100001015620000111043000100784000101635000110526000111457001000398001001359001010311000library ieee;use ieee.std_logic_1164.all;entity chuzhi is port(a:in st

49、d_logic_vector(3 downto 0); q:out integer range 0 to 312);end chuzhi;architecture chu_arc of chuzhi isbegin process(a) begin case a is when 0001=qqqqqqqqqqnull; end case; end process;end chu_arc; 图3.4 CHUZHI模块图3.5 CHUZHI模块的仿真波形图3.4.2 FANA分频模块模块FANA见图3.6。该模块的波形图如图3.7。该模块的功能是将前一模块CHUZHI送来的初值对时钟进行分频,得到

50、不同的工作频率,从而调节波形频率。数控分频器:数控分频器的功能是在输入端输入不同的数据时,对输入时钟产生不同的分频比,输出不同频率的时钟信号的频率,本设计中采用并行预置数的减法计数器实现,它的工作原理是:减法计数器在并行预置数的基础上,在时钟的作用下进行减计数,当计数值为0时产生溢出信号,加载预置数据,并且将溢出信号作为分频器的输出信号,实现N分频信号的输出。其分频系数N为:N=D+1D为预置数的值。为了得到占空比为50的矩形时钟信号,将输出再进行二分频,由此,该分频器的总分频系数为2N。本设计中一个波形周期由64个时钟信号组成,则输出信号的频率为:fout=fclk/ 2*64N程序如下所示

51、:library ieee;use ieee.std_logic_1164.all;entity fana is port(a:in integer range 0 to 312; clk:in std_logic; q:out std_logic);end fana;architecture fan_arc of fana isbegin process(clk) variable b,d:std_logic; variable c:integer range 0 to 312; begin if clkevent and clk=1then if b=0then c:=a-1; b:=1; else if c=1 then b:=0; d:=not d; else c:=c-1; end if; end if; end if; q=d; end process;end fan_arc; 图3.6 FANA模块图3.7 FANA分频模块的仿真波形图3.4.3 SQUARE模块模块SQUARE见图3.8。该模块的仿真波形图如图3.9所示。该模块的功能是产生方波,通过送出全0和全1,并给以32个时钟延时,即每32个时钟翻转一次,每64个时钟为一个周期(为了与正弦波相同)。library ieee;use ieee.std_logic_1164

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论