基于FPGA的采样状态机的设计与仿真本科毕业论文(23页).doc
《基于FPGA的采样状态机的设计与仿真本科毕业论文(23页).doc》由会员分享,可在线阅读,更多相关《基于FPGA的采样状态机的设计与仿真本科毕业论文(23页).doc(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于FPGA的采样状态机的设计与仿真本科毕业论文-第 19 页 南京林业大学本科毕业设计(论文)题 目:基于FPGA的采样状态机的设计与仿真学 院:机械电子工程学院专 业: 测控技术与仪器学 号: 070307114学生姓名: 万海洋指导教师: 黄石红职 称: 副教授二O一一年 5月24日 摘要采样是数字系统设计中的重要环节,而传统的A/D器件采样多是用CPU或单片机完成的。这些方法编程简单,但控制周期长,速度慢。而有限状态机(Finite State Machine,FSM)在数字系统设计中应用十分广泛,随着电子技术日新月异的发展。大规模系统与电路的出现,传统的手工设计状态机已经不可能,而
2、基于FPGA的VHDL语言描述状态机是大势所趋。基于FPGA语言描述的硬件设计,能够充分利用A/D采样的速度快的高性能,有效提高工作效率与精度。关键词:EDA VHDL FPGA 采样状态机 数码管显示Abstract Digital sampling is an important part of system design, and traditional A / D sampling device with a CPU or microcontroller mostly completed. These methods are simple to program, but the con
3、trol cycle is long and slow. The FSM (Finite State Machine, FSM) in the design of digital systems is widely used, with the rapid development of electronic technology. The emergence of large-scale systems and circuits, the traditional manual design state machines have been impossible, and FPGA-based
4、VHDL language to describe the state machine is a general trend. FPGA-based hardware description language designed to take full advantage of A / D sampling speed, high-performance, higher efficiency and accuracy.Key words: EDA VHDL FPGA state machine digital display 第一章:绪论11.1研究目的及意义:11.2国内外同类研究概况:11
5、.3研究内容:2第二章:EDA技术及其开发工具简介32.1 EDA技术简介32.2 Quartus 简介32.3 设计的基本逻辑门例子42.4 本章小结6第三章:VHDL语言基础73.1 VHDL语言简介73.2 VHDL语言设计例子73.3 本章小结8第四章:FPGA基础94.1 CPLD分类94.2 FPGA简介94.3 本章小结11第四章:有限状态机的基本概念125.1有限状态机设计硬件的优势125.2 有限状态机的设计的一个代码例子125.3状态机的时序逻辑进程135.4本章小结14第五章:基于FPGA的采样状态机156.1 设计总体思路156.2 采样模块的设计156.2.1 AD0
6、809的整体功能说明156.2.2 0809的引脚功能说明166.2.3 AD0809的VHDL语言说明176.3 分频模块196.4 显示模块196.5 程序及仿真206.5.1 程序206.5.2 仿真及原理图276.6 本章小结28总结29致谢30参考文献31第一章:绪论1.1研究目的及意义:从小型电子系统到大规模电路系统设计中,状态机是最典型、应用最广泛的时序电路模块,如何设计一个稳定可靠的状态机是我们必须面对的问题. 传统的状态机设计方法复杂,首先要进行繁琐的状态化简,状态分配,状态编码,然后求输出与激励函数,最后画时序图或波形图。而利用VHDL硬件设计描述语言设计状态机,只需利用状
7、态转移图进行状态机的描述即可。且由于状态机能构成性能良好的同步时序逻辑模块,能够做到结构相对简单,设计方案相对固定。而基于FPGA的FSM设计使用同步时序方式设计,提高设计的稳定性,消除毛刺。通过VHDL语言的描述,不仅仅便于阅读,理解,维护,更重要的是利于综合器优化代码,利于用户添加合适的时序约束条件,利于布局布线器实现设计。1.2国内外同类研究概况: 在国外,目前利用EDA技术设计电路已成为主流,其中, Verilog公司开发的Verilog HDL作为当今国际主流的HDL语言,在芯片的前端设计中有着广泛的应用。而最具代表性的是美国国防部开发的VHDL语言。国内外利用VHDL语言设计状态机
8、例子有很多,因为大部分数字系统都可以分为控制单元和数据单元两个部分,控制单元的主体是一个状态机,它接收外部信号以及数据单元产生的状态信息,产生控制信号,因而状态机性能的好坏对系统性能有很大的影响。故国内外电路方向的同行都把状态机作为电路设计的核心,目前有很多出色的VHLD/FPGA程序的状态机描述。如现在十字路口的自动交通控制系统就是用基于FPGA的状态机来控制红黄绿三灯的有序亮灭,来保证车辆行人的安全出行。再如加州技术大学的电脑科学博士后Eric Klavic 研究的状态机在机器人中的应用,这种即时环境能够管理机器人在现实世界中获取感知和做出行动所要执行的多重任务,也能作为API共编程人员方
9、便的进行编码和整合新的行为及它其组件。东华理工学院机械与电子学院的翟燕磊等人研究的VHDL描述的状态机在内存控制器中应用就很好的说明了有些芯片完全能够用VHDL语言在FPGA或CPLD上实现。1.3研究内容: 熟悉数字电路与系统的EDA的设计流程,深入学习VHDL语句的硬件含义,理解状态机在电路中的关键作用。写出正确高效的VHDL语言,达到仿真运行的目的。第二章:EDA技术及其开发工具简介2.1 EDA技术简介 随着电子电路的复杂化,设计人员将硬件的设计交给计算机去完成,于是电子设计自动化技术产生了。这就是EDA(Electronic Design Automatic)技术1。对于EDA技术,
10、可以理解于以大规模可编程器件为载体,以硬件描述语言(HDL,Hardware Description Language)为系统逻辑描述的主要方式,借助计算机和可编程逻辑器件的软,硬开发系统等工具,通过相关的软件开发,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译,逻辑简化,逻辑分割,逻辑总合计优化,逻辑布局布线,逻辑仿真,直至对特定目标芯片的适配编译,逻辑映射,编程下载等工作,最终形成集成电子系统或专用集成芯片ASICA的一门技术2。目前,EDA已将逐渐成为电子电路系统的设计重要设计手段,目前广泛用于模拟与数字电路系统等许多领域。而从广义上来看,EDA研究的对象是电子设计的全过程,从某一
11、角度看,电子设计可分为三个层次:即系统级,电路级和物理实现级。2.2 Quartus 简介本毕业设计采用的EDA工具是Alter公司的Quartus ii9.0开发软件。Quartus ii是Altera公司在21世纪初推出的CPLD/FPGA集成开发环境,它是该公司前一代CPLD/FPGA集成开发环境MAX+PLUS II的更新换代产品3。图1 QUARTUS II 9.0的界面截图2.3 设计的基本逻辑门例子 如用Quartus II原理图输入设计方式设计一个组合逻辑电路过程。该程序实现的是与门,或门,非门,与非门,异或门,同或门。图2 程序截图如下图3 时序仿真图图4 生成的RTL电路图
12、图四中a,b代表输入端口,f5表示与非门,f4表示异或门,f3表示非门,f2表示或门。f1表示与门。2.4 本章小结 本章熟悉了EDA技术的基本概念与FPGA设计的软件QUARTUS的使用的简单介绍。并且通过举一个简单的例子了解怎样去设计FPGA电路。第三章:VHDL语言基础 3.1 VHDL语言简介VHDL语言即very high Speed integrated cricuit hardware description language(超高速集成电路硬件描述语言),是电子设计的新技术,它符合美国电气和电子工程师协会标准(IEEE标准1076),利用一种和数字电路基本知识结合比较密切的语言
13、来描述数字电路和设计数字电路系统4。利用VHDL进行分块单元电路设计和整个系统设计,并结合一些先进的EDA工具软件(如Quartus II),通过计算机下载到硬件芯片上,实现电路功能,可以节省大量的设计周期。VHDL语言不一定按顺序一条一条执行每一条语句,而是并行执行的语句同时也有按顺序执行的语句,来描述在同一时刻中可能发生的事件,这要求数字电路设计人员摆脱一维的思维模式,以多维并发的思路来完成VHDL语言的程序设计。3.2 VHDL语言设计例子 以上章的基本门电路为例,用VHDL语言描述的程序代码如下: Library ieee; Use iee.std_logic_164.all - -库
14、说明Entity fadder is Port(a,b,ci:IN Std_ogic;- -实体说明 s,co:OUT Std_ogic);END Fadder;Architecture struc of fadder is Component or2gate - -结构体说明Port(a,b:In Std_ogic; f:OUT Std_ogic);End component;Componet hadder - -元件例化语句Port(a,b:In Std_ogic; s,co:Out Std_ogic);End component;Signal:tepms,tempcol2:Std_log
15、ic;Begin U0:hadder Port MAP(a,b,temps,tempco1);U1:hadder Port MAP(ci,tmps,s,tempco2);U2:or2gate Port map(ci,tempco2,co);End struc;从该程序可以看出,一个完整的VHDL从描述层次上可以包括库说明,实体说明,结构体说明三个部分5。例外,VHDL语言和其他软件一样,也有严格的标识符、数据对象,数据类型定义。准确、熟练掌握基本的数据定义,对于初学者是非常必要的。3.3 本章小结 本章介绍了VHDL语言的概念进行了综述,然后对其结构进行了详细的说明。通过这些内容,对FPGA设
16、计的硬件描述语言VHDL有了大致了解第四章:FPGA基础4.1 CPLD分类复杂的可编程逻辑器件CPLD(Complex Programmable Logic Device)是由PAL或GAL发展而来的,基本上是扩充原始的可编程逻辑器件,它通常是由可编程逻辑的功能块围绕一个位于中心和延时固定的可编程互联矩阵构成。为了增加电路密度而不使性能或功耗受到损失,复杂的可编程逻辑器件CPLD在结构上引入了各种特性。从目前的趋势来看,CPLD又延伸出二大分支:即可擦除可编程的逻辑器件EPLD(Erasable programmable logic device)和现场可编程门阵列器件FPGA(Field
17、programmable gate qrrery)6.总的来说,CPLD与FPGA的定义有所不同,根据结构特点和工作原理,CPLD与FPGA的分类方法是:以乘积项结构方式构成逻辑行为的器件称为CPLD,以查表法结构方式构成逻辑行为的器件称为FPGA.4.2 FPGA简介FPGA是由掩膜可编程门阵列和可编程逻辑器件演变而来的,将它们的特性结合在一起,使得FPGA具有门阵列的高逻辑密度和通用性,又有可编程逻辑器件的用户可编程特性。而且,FPGA可以分成二大类:即细粒度(Fine-grain)和粗粒度(coarce-grain)。细粒度逻辑块是与半定制门阵列的基本单元相同,它由可以用可编程互连来连接
18、的少数晶体管组成,规模都较小,主要优点是可用的功能块可以完全被利用;缺点是采用它通常需要大量的连线和可编程开光,使相对速度变慢。而基于FPGA设计的硬件系统具有以下特点:(1)无需投片生产,即可得到芯片(2)可做ASIC的中试样片 (3)有丰富的触发器和IO引脚 (4)设计周期最短、开发费用最低、风险最小 (5)采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容 (1).设计规范(4).逻辑综合(2).设计输入(7)系统测试(3).仿真功能(5)布局布线(6)时序分析输入工具辅助分析工具管脚约束优化设计手动工具分析工具优化工具仿真工具图5 FPGA设计流程7FPGA的设计与传统的通
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 采样 状态机 设计 仿真 本科毕业 论文 23
限制150内