- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于EDA技术的智能函数发生器的设计 应用电子09-1 汪科宇 指导教师:张仕海 该毕业设计的内容 设计一个函数发生器,该函数发生器能够产生递增斜波、递减斜波、方波、三角波、正弦波、及阶梯波,并且可以通过选择开关选择相应的波形输出;系统具有复位的功能;通过按键确定输出的波形及确定是否输出波形。FPGA是整个系统的核心,构成系统控制器,波形数据生成器,加法器,运算/译码等功能。 该设计的设计思路 利用在系统编程技术和FPGA芯片。用VHDL语言编写程序,调试成功后下载至实验装置的芯片上,再利用外接D/A转换电路实现以上设计功能。此种方案完全可以生成设计要求的6种波形,而且通过软件仿真可以直观的观测的输出的波形参数,方便调试和更改波形参数,外围电路简单,减少器件损耗,精度高。 波形函数输出控制方式选择 此种方案可以利用VHDL语言写出数据选择器,然后每种函数发生器的输出和数据选择器输入相连接,通过控制开关选择对应的波形输出。方案二完全可以得到方案一的设计要求,而且只需一个D/A转换器就可以。电路不需要外部搭建,节约成本且控制简单方便。 系统细化框图 系统的整体原理框图 递增斜波模块 其中clk是输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为八位二进制输出端口。 递减斜波模块 其中clk是输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为八位二进制输出端口。 三角波模块 其中clk是输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为八位二进制输出端口。三角波波形是对称的,每边呈线形变化,所以可以根据数据做简单运算,就可以得到三角波。 阶梯波模块 其中clk是输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为八位二进制输出端口。 正弦波模块 正弦波sin的VHDL程序如附录所示,其中clk是输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为八位二进制输出端口。 方波模块 其中clk为输入时钟端口,sel0、sel1、sel2为选择波形按键值,reset为输入复位端口,q为整数输出端口。 输出波形选择模块 波形选择模块是一个设计位6选1的数据选择器,其中sel为波形数据选择端口,d0~d5为8位二进制输入端口,q为8位二进制输出端口。该模块可以根据外部开关的状态选择相应的波形输出。其选择VHDL程序如下: CASE sel IS WHEN000=q=d0;--递增波形输出,十进制0 WHEN001=q=d1;--递减波形输出,十进制1 WHEN010=q=d2;--三角波形输出,十进制2 WHEN011=q=d3;--阶梯波形输出,十进制3 WHEN100=q=d4;--正弦波形输出,十进制4 WHEN101=q=d5;--方波输出,十进制5 WHEN OTHERS=NULL; 系统的编译与调试 通过以上各个模块的细化和分析,最终在Max+plusⅡ中完成了整个系统的联合调试,并通过示波器读输出信号的波形符合设计的要求。调试整个系统了原理图如下图所示: 总结 应用EDA技术完成波形发生器的设计,设计简单。 可以看到利用EDA技术完成一个电子设计,可以节省我们开发时间,从而提高大大地了我们的效率。采用新技术就是为了提高效率,快速完成设计任务。我们做一个项目时,所在追求的也是快且高效率。不断地去快速掌握并能快速地应用新技术是我们做技术的人的基本素质。我们要注重自己在这方面的能力。当然我们不能废弃我们基本的东西—--学科基础,全面发展自己,这需要我不断去追求。 谢谢大家! * 递增斜波模块仿真图 递减斜波模块仿真图 阶梯波设计的是数据的递增是以一定的 阶梯常数向上增加,所以输出的波形呈现 是成阶梯状的,而不是完全呈现是直线增长。 *
文档评论(0)