ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:140.22KB ,
资源ID:19970409      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19970409.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(智能函数发生器论文Word格式文档下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

智能函数发生器论文Word格式文档下载.docx

1、 3.3 系统细化框图4 3.4系统的整体原理框图54各模块程序设计及仿真5 4.1三角波模块5 4.2梯形波模块7 4.2正弦波模块8 4.4方波模块8 4.5输出波形选择模块10 4.6 系统联调测试分析10结论11致谢12参考文献13附录14引言EDA(electronic design automation,电子设计自动化)技术是现代电子工程领域的一门新技术。它提供了基于计算机和信息技术的电路系统设计方法。EDA技术的发展和推广应用极大地推动了电子工业的发展,随着EDA技术的发展,硬件电子电路的设计几乎全部可以依靠计算机来完成。这样就大大缩短了硬件电子电路设计的周期从而使制造商可以快速

2、开发出品种多批量小的产品,以满足市的众多需求。EDA技术的推广是当今世界的一个技术热点。EDA技术是现代电子工业中不可缺少的一项技术。传统设计应用分立元件或通用数字电路芯片,设计周期长,花费大,而且往往局部功能优化,而整体功能较差。EDA 以计算机为平台,根据硬件描述语言,如VHDL自动地完成逻辑编译、化简分割、综合及优化,布局布线,仿真直至对特定目标芯片的适配编译,逻辑映射和编程下载等工作。以自顶向下的设计方法,使硬件设计软件化,摆脱了传统手工设计的众多缺点。其方法简单,频率稳定度高,易于程控。随着EDA技术的深入发展,基于硬件描述语言的方法将有取代传统手工设计方法的趋势。尝试用VHDL设计

3、来产生正弦波,其频率切换非常便捷,调试、修改也非常节省时间。FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Int

4、erconnect)三个部分。它与分立元件相比,具有速度快、容量大、功耗小和可靠性高等优点。由于集成度高,设计方法先进、现场可编程,可以设计各种数字电路,因此,在通信、数据处理、网络、仪器、工业控制、军事和航空航天等众多领域内得到了广泛应用。不久的将来将全部取代分立数字元件,目前一些数字集成电路生产厂商已经停止了分立数字集成电路的生产。此外,FPGA还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改。因此,FPGA技术的应用前景非常广阔。VHDL(Very High Speed Integrated Circuit Hardware Description

5、Language,超高速集成电路硬件描述语言)诞生于1982年,是由美国国防部开发的一种快速设计电路的工具,目前已经成为IEEE(The Institute of Electrical and Electronics Engineers)的一种工业标准硬件描述语言。相比传统的电路系统的设计方法,VHDL具有多层次描述系统硬件功能的能力,支持自顶向下(Top to Down)和基于库(LibraryBased)的设计的特点,因此设计者可以不必了解硬件结构。从系统设计入手,在顶层进行系统方框图的划分和结构设计,在方框图一级用VHDL对电路的行为进行描述,并进行仿真和纠错,然后在系统一级进行验证,最

6、后再用逻辑综合优化工具生成具体的门级逻辑电路的网表,下载到具体的FPGA器件中去,从而实现可编程的专用集成电路(ASIC)的设计。波形发生器在生产实践和科技领域中有着广泛的应用。例如在通信、广播、电视系统中,都需要射频(高频)发射,这里的射频波就是载波,把音频(低频)、视频信号或脉冲信号运载出去,就需要能够产生高频的振荡器。在工业、农业、生物医学等领域内,如高频感应加热、熔炼、淬火、超声诊断、核磁共振成像等,都需要功率或大或小、频率或高或低的振荡器。1EDA技术的简介EDA(Electronic design automation)即电子设计自动化,它是近几年来迅速发展起来的将计算机软件、硬件

7、、微电子技术交叉运用的现代电子学科,是20世纪90年代从CAD、CAM、CAT和CAE的概念发展而来的。EDA技术就是以计算机为工作平台,以EDA软件工具为开发环境,以硬件描述语言为设计语言,以ASIC为实现载体的电子产品自动化设计过程。在EDA软件平台上,根据原理图或硬件描述语言HDL完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化,布局布线、仿真、目标芯片的适配编译,逻辑映射和编程下载等工作。设计者的工作只限于软件的方式来完成对就的硬件功能的描述了,要EDA工具的帮助下,就应用相应的FPGA器件就可以得到最后的设计结果。尽管目标系统是硬件,但整个设计和修改过程如同完成软件设计一样

8、方便和高效。当然我们这说的是EDA是狭义的EDA,主要是指数字系统的自动化设计。2设计要求要求设计一个函数发生器,该函数发生器能够产生方波、三角波、正弦波、及梯形波,并且可以通过选择开关选择相应的波形输出;系统具有复位的功能;通过按键确定输出的波形及确定是否输出波形。FPGA是整个系统的核心,构成系统控制器,波形数据生成器,加法器,运算/译码等功能。通过以上分析设计要求完成的功能,确定函数发生器可由三角波产生模块、梯形波产生模块、正弦波产生模块、方波产生模块和输出波形选择模块组成,以及按键复位控制和时钟输入。由此可确定系统的总体原理框图为:时钟clk波形输出选择模块波形发生模块 波复位rese

9、t形3设计思路3.1 波形函数发生方案对比选择波形函数发生是本设计的最重要的部分,实现函数发生的途径也有很多,因此必须选择一种易于实现且精度高的方案,以此来提高本设计的实用性。方案一:通过单片机控制D/A,输出三种波形。此方案输出的波形不够稳定,抗干扰能力弱,不易调节,而且达不到题目要求的六种波形。方案二:使用传统的锁相频率合成方法。通过芯片IC145152,压控振荡器搭接的锁相环电路输出稳定性极好的正弦波,再利用过零比较器转换成方波,积分电路转换成三角波。此方案,电路复杂,干扰因素多,不易实现。方案三:利用MAX038芯片组成的电路输出波形。MAX038是精密高频波形产生电路,能够产生准确的

10、三角波、方波和正弦波三种周期性波形,但无法实现梯形波和递增递减斜波的产生。方案四:利用在系统编程技术和FPGA芯片产生。用VHDL语言编写程序,调试成功后下载至实验装置的芯片上,再利用外接D/A转换电路实现以上设计功能。此种方案完全可以生成设计要求的6种波形,而且通过软件仿真可以直观的观测的输出的波形参数,方便调试和更改波形参数,外围电路简单,减少器件损耗,精度高。基于方案四的外围电路简单容易实现、波形产生精度高、易于仿真观测调试的优点,因此本设计的函数发生器选择方案四完成波形发生的全部功能。3.2 波形函数输出控制方式选择控制多路D/A开关输出方式此种方案为每一路输出的波形函数使用一路D/A

11、转换后输出,通过控制开关控制每一路D/A是否工作,决定输出的波形。此种方案可以同时输出多路波形,但是需要路D/A转化器,外围电路复杂,制作成本较高而且控制复杂。采用数据选择器方式此种方案可以利用VHDL语言写出数据选择器,然后每种函数发生器的输出和数据选择器输入相连接,通过控制开关选择对应的波形输出。方案二完全可以得到方案一的设计要求,而且只需一个D/A转换器就可以。电路不需要外部搭建,节约成本且控制简单方便。采用数据分配器方式此种方案利用数据分配器的功能,通过控制开关选择相应的函数发生器模块,使之产生相应的波形输出,并通过数据分配器的使能复位控制决定是否输出波形,此种方案和方案二很相似,也能

12、够实现设计的功能也具有方案二的优点。基于方案二的设计简便、节约制作元件和成本、控制简便等优点,选择方案二作为波形函数输出控制方式。3.3系统细化框图通过以上各个模块的分析最终确定函数信号发生器的自顶向下的细化框图为:3.4 系统的整体原理框图:系统时钟输入后,通过复位开关选择是否产生波形,当各个模块产生相应的信号波形后,通过波形选择模块波形选择开关选泽输出不同的波形,再通过D/A转换器转换,就可以把数字信号(由FPGA输出)变成了相应模拟的信号波形。整个系统设计的核心就是FPGA部分。4各模块程序设计及仿真根据自上而下的思路进行项目设计。明确每个模块的功能以后,开始编写各个模块的程序。4.1

13、三角波模块三角波delat的VHDL程序如附录所示,其中clk是输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为八位二进制输出端口。三角波波形是对称的,每边呈线形变化,所以可以根据数据做简单运算,就可以得到三角波。图3 三角波模块仿真图程序设计的是reset复位信号为0时输出为0,无对应的波形产生。当复位信号为1时,当每当检测到时钟上升沿时,当计数的数据不是最大值时,数值做递增运算,当增大到最大时,然后再做递减运算,因此输出的波形便呈现出三角波的形状。从仿真波形图也能看出这种变化规律。VHDL描述如下:IF reset=0 THEN tmp:=0000

14、0000;-复位信号为0,置最小值 ELSIF clkEVENT AND clk=1 THEN-检测时钟上升沿 IF a= IF tmp=11111110tmp:11111111 -置最大值a:= ELSE -不是最大值时递增=tmp+1;-递增运算 END IF; ELSE IF tmp =00000001 -置最小值 ELSE -a为1时,执行递减运算=tmp-1;-递减运算4.2梯形波模块梯形波ladder的VHDL程序如附录所示,其中clk是输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为八位二进制输出端口。图4 梯形波模块仿真图梯形波设计的是

15、数据的递增是以一定的梯形常数向上增加,所以输出的波形呈现是成梯形状的,而不是,完全呈现是直线增长。ELSIF clk THEN-判断a数值,计数。 -计数到最大清零=tmp+16;-梯形常数为16,可修改-循环计数标志END IF;q=tmp;END PROCESS;END behave;4.3正弦波模块正弦波sin的VHDL程序如附录所示,其中clk是输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为八位二进制输出端口。图5 正弦波模块仿真图正弦波产生原理:通过循环不断地从波形数据ROM文件中依次读取正弦波一个周期在时域上64个采样点的波形数据送入波形

16、DAC,从而产生正弦波。4.4方波模块方波模块的square的VHDL程序描述如下:其中clk为输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为整数输出端口。图6 方波模块仿真图方波模块的设计是当内部计数cnt达到64时,根据输出标志a的数值输出对应的数值,当a=0输出0,也即是方波周期中的低电平,当a=1,输出255,也即是方波周期中的高电平。连续的输出便成了观测到的方波波形。其VHDL描述如下:IF clr= a THEN -检测时钟上升沿IF cnt63 THEN -计数64个点cnt:=cnt+1;-计数=0; -当计数的值大于64时,清零。a

17、=d2;-三角波形输出010=d3;-梯形波形输出011=d4;-正弦波形输出100=d5;-方波输出WHEN OTHERS=NULL;4.6系统联调测试分析通过以上各个模块的细化和分析,最终完成了整个系统的联合调试,并通过示波器读输出信号的波形符合设计的要求。调试整个系统了原理图如下图所示:结论应用EDA技术用FPGA完成波形发生器,通过选择波形的按钮,实现6种波形的互相转换。利用示波器可以验证波形发生器与原定的设计的理论是相一致。用FPGA完成波形发生器的方法与传统的方法相比较,硬件结构是相当简单的。大大减小了它的体积和重量。可以节去传统的烦琐的硬件设计和硬件组合。易于使用,按下选择波形的

18、选择按钮,即可选出你所需的波形。PFGA里面有的是有待连接的逻辑门、D触发器等器件,它的外围还要有EEPROM、SDRAM、FLASH与之相配合才可以正常工作,这一点可能会广泛应用FPGA来比较麻烦。随着技术的发展,如果把EEPROM、SDRAM、FLASH都集成要在FPGA中去,组成它的最小系统,这样的话将会,节去芯片外的线路设计,会得到更加广泛地的应用。 应用EDA技术完成波形发生器的设计,设计简单。 可以看到利用EDA技术完成一个电子设计,可以节省我们开发时间,从而提高大大地了我们的效率。采用新技术就是为了提高效率,快速完成设计任务。我们做一个项目时,所在追求的也是快且高效率。不断地去快

19、速掌握并能快速地应用新技术是我们做技术的人的基本素质。我们要注重自己在这方面的能力。当然我们不能废弃我们基本的东西学科基础,全面发展自己,这需要我不断去追求。致 谢非常感谢我系韦艳霞老师在完成本设计期间不厌其烦地指导,并提出了许多相当有意义的建议和见解,他乐于帮助学生和工作上兢兢业业精神促使我更快地完成此项设计。在此,对韦艳霞老师和许多在我遇到困难时给予指引和帮助的老师和朋友一并表示深深的敬意和感谢。参考文献潘松,黄继业.EDA技术实用教程(第二版).科学出版社,2007.9【2】 刘艳惠,李娜,孔旭梅.EDA技术教程.西北师范大学知行学院计算机与电子信息科学系【3】 潭会生,张昌凡.EDA技

20、术及应用.西安电子科技大学出版社,2001.9【4】 李洋. EDA技术使用教程.机械工业出版社,2002.3附录1、三角波形源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY sanjiaobo IS PORT(clk,reset:IN STD_LOGIC; q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);end sanjiaobo;ARCHITECTURE behave OF sanjiaobo IS PROCESS(clk,reset) VARIABLE tmp:STD_LOGIC_VECTOR(7 DOWNTO 0); VARIABLE a:STD_LOGIC;2、梯形波形程序源程序ENTITY tixingbo ISPORT(clk,reset:END tixingbo;ARCHITECTURE behave OF tixingbo ISPROCESS(clk,reset)VARIABLE tmp: STD_LOGIC_VECTOR(7 DOWNTO 0); -定义内部变量VARIABLE a: STD_LOGIC;-循环计数 EN

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1