基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx

上传人:b****2 文档编号:601019 上传时间:2023-04-29 格式:DOCX 页数:41 大小:589KB
下载 相关 举报
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第1页
第1页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第2页
第2页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第3页
第3页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第4页
第4页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第5页
第5页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第6页
第6页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第7页
第7页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第8页
第8页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第9页
第9页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第10页
第10页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第11页
第11页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第12页
第12页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第13页
第13页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第14页
第14页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第15页
第15页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第16页
第16页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第17页
第17页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第18页
第18页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第19页
第19页 / 共41页
基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx_第20页
第20页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx

《基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx(41页珍藏版)》请在冰点文库上搜索。

基于FPGA的采样状态机的设计与仿真本科毕业设计论文.docx

基于FPGA的采样状态机的设计与仿真本科毕业设计论文

 

本科毕业设计(论文)

 

题目:

基于FPGA的采样状态机的设计与仿真

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:

所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:

     日 期:

     

指导教师签名:

     日  期:

     

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:

按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:

     日 期:

     

学位论文原创性声明

本人郑重声明:

所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

作者签名:

日期:

年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权    大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:

日期:

年月日

导师签名:

日期:

年月日

注意事项

1.设计(论文)的内容包括:

1)封面(按教务处制定的标准封面格式制作)

2)原创性声明

3)中文摘要(300字左右)、关键词

4)外文摘要、关键词

5)目次页(附件不统一编入)

6)论文主体部分:

引言(或绪论)、正文、结论

7)参考文献

8)致谢

9)附录(对论文支持必要时)

2.论文字数要求:

理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:

任务书、开题报告、外文译文、译文原文(复印件)。

4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写

2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。

图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画

3)毕业论文须用A4单面打印,论文50页以上的双面打印

4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档

5.装订顺序

1)设计(论文)

2)附件:

按照任务书、开题报告、外文译文、译文原文(复印件)次序装订

指导教师评阅书

指导教师评价:

一、撰写(设计)过程

1、学生在论文(设计)过程中的治学态度、工作精神

□优□良□中□及格□不及格

2、学生掌握专业知识、技能的扎实程度

□优□良□中□及格□不及格

3、学生综合运用所学知识和专业技能分析和解决问题的能力

□优□良□中□及格□不及格

4、研究方法的科学性;技术线路的可行性;设计方案的合理性

□优□良□中□及格□不及格

5、完成毕业论文(设计)期间的出勤情况

□优□良□中□及格□不及格

二、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

三、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

建议成绩:

□优□良□中□及格□不及格

(在所选等级前的□内画“√”)

指导教师:

(签名)单位:

(盖章)

年月日

评阅教师评阅书

评阅教师评价:

一、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

二、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

建议成绩:

□优□良□中□及格□不及格

(在所选等级前的□内画“√”)

评阅教师:

(签名)单位:

(盖章)

年月日

教研室(或答辩小组)及教学系意见

教研室(或答辩小组)评价:

一、答辩过程

1、毕业论文(设计)的基本要点和见解的叙述情况

□优□良□中□及格□不及格

2、对答辩问题的反应、理解、表达情况

□优□良□中□及格□不及格

3、学生答辩过程中的精神状态

□优□良□中□及格□不及格

二、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

三、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

评定成绩:

□优□良□中□及格□不及格

教研室主任(或答辩小组组长):

(签名)

年月日

教学系意见:

系主任:

(签名)

年月日

摘要

采样是数字系统设计中的重要环节,而传统的A/D器件采样多是用CPU或单片机完成的。

这些方法编程简单,但控制周期长,速度慢。

而有限状态机(FiniteStateMachine,FSM)在数字系统设计中应用十分广泛,随着电子技术日新月异的发展。

大规模系统与电路的出现,传统的手工设计状态机已经不可能,而基于FPGA的VHDL语言描述状态机是大势所趋。

基于FPGA语言描述的硬件设计,能够充分利用A/D采样的速度快的高性能,有效提高工作效率与精度。

关键词:

EDAVHDLFPGA采样状态机数码管显示

Abstract

Digitalsamplingisanimportantpartofsystemdesign,andtraditionalA/DsamplingdevicewithaCPUormicrocontrollermostlycompleted.Thesemethodsaresimpletoprogram,butthecontrolcycleislongandslow.TheFSM(FiniteStateMachine,FSM)inthedesignofdigitalsystemsiswidelyused,withtherapiddevelopmentofelectronictechnology.Theemergenceoflarge-scalesystemsandcircuits,thetraditionalmanualdesignstatemachineshavebeenimpossible,andFPGA-basedVHDLlanguagetodescribethestatemachineisageneraltrend.FPGA-basedhardwaredescriptionlanguagedesignedtotakefulladvantageofA/Dsamplingspeed,high-performance,higherefficiencyandaccuracy.

Keywords:

EDAVHDLFPGAstatemachinedigitaldisplay

 

第一章:

绪论

1.1研究目的及意义:

从小型电子系统到大规模电路系统设计中,状态机是最典型、应用最广泛的时序电路模块,如何设计一个稳定可靠的状态机是我们必须面对的问题.传统的状态机设计方法复杂,首先要进行繁琐的状态化简,状态分配,状态编码,然后求输出与激励函数,最后画时序图或波形图。

而利用VHDL硬件设计描述语言设计状态机,只需利用状态转移图进行状态机的描述即可。

且由于状态机能构成性能良好的同步时序逻辑模块,能够做到结构相对简单,设计方案相对固定。

而基于FPGA的FSM设计使用同步时序方式设计,提高设计的稳定性,消除毛刺。

通过VHDL语言的描述,不仅仅便于阅读,理解,维护,更重要的是利于综合器优化代码,利于用户添加合适的时序约束条件,利于布局布线器实现设计。

1.2国内外同类研究概况:

在国外,目前利用EDA技术设计电路已成为主流,其中,Verilog公司开发的VerilogHDL作为当今国际主流的HDL语言,在芯片的前端设计中有着广泛的应用。

而最具代表性的是美国国防部开发的VHDL语言。

国内外利用VHDL语言设计状态机例子有很多,因为大部分数字系统都可以分为控制单元和数据单元两个部分,控制单元的主体是一个状态机,它接收外部信号以及数据单元产生的状态信息,产生控制信号,因而状态机性能的好坏对系统性能有很大的影响。

故国内外电路方向的同行都把状态机作为电路设计的核心,目前有很多出色的VHLD/FPGA程序的状态机描述。

如现在十字路口的自动交通控制系统就是用基于FPGA的状态机来控制红黄绿三灯的有序亮灭,来保证车辆行人的安全出行。

再如加州技术大学的电脑科学博士后EricKlavic研究的状态机在机器人中的应用,这种即时环境能够管理机器人在现实世界中获取感知和做出行动所要执行的多重任务,也能作为API共编程人员方便的进行编码和整合新的行为及它其组件。

东华理工学院机械与电子学院的翟燕磊等人研究的VHDL描述的状态机在内存控制器中应用就很好的说明了有些芯片完全能够用VHDL语言在FPGA或CPLD上实现。

1.3研究内容:

熟悉数字电路与系统的EDA的设计流程,深入学习VHDL语句的硬件含义,理解状态机在电路中的关键作用。

写出正确高效的VHDL语言,达到仿真运行的目的。

 

第二章:

EDA技术及其开发工具简介

2.1EDA技术简介

随着电子电路的复杂化,设计人员将硬件的设计交给计算机去完成,于是电子设计自动化技术产生了。

这就是EDA(ElectronicDesignAutomatic)技术[1]。

对于EDA技术,可以理解于以大规模可编程器件为载体,以硬件描述语言(HDL,HardwareDescriptionLanguage)为系统逻辑描述的主要方式,借助计算机和可编程逻辑器件的软,硬开发系统等工具,通过相关的软件开发,自动完成用软件方式设计的电子系统到硬件系统的逻辑编译,逻辑简化,逻辑分割,逻辑总合计优化,逻辑布局布线,逻辑仿真,直至对特定目标芯片的适配编译,逻辑映射,编程下载等工作,最终形成集成电子系统或专用集成芯片ASICA的一门技术[2]。

目前,EDA已将逐渐成为电子电路系统的设计重要设计手段,目前广泛用于模拟与数字电路系统等许多领域。

而从广义上来看,EDA研究的对象是电子设计的全过程,从某一角度看,电子设计可分为三个层次:

即系统级,电路级和物理实现级。

2.2Quartus简介

本毕业设计采用的EDA工具是Alter公司的Quartusii9.0开发软件。

Quartusii是Altera公司在21世纪初推出的CPLD/FPGA集成开发环境,它是该公司前一代CPLD/FPGA集成开发环境MAX+PLUSII的更新换代产品[3]。

图1QUARTUSII9.0的界面截图

2.3设计的基本逻辑门例子

如用QuartusII原理图输入设计方式设计一个组合逻辑电路过程。

该程序实现的是与门,或门,非门,与非门,异或门,同或门。

图2程序截图如下

图3时序仿真图

 

图4生成的RTL电路图

图四中a,b代表输入端口,f5表示与非门,f4表示异或门,f3表示非门,f2表示或门。

f1表示与门。

2.4本章小结

本章熟悉了EDA技术的基本概念与FPGA设计的软件QUARTUS的使用的简单介绍。

并且通过举一个简单的例子了解怎样去设计FPGA电路。

 

第三章:

VHDL语言基础

3.1VHDL语言简介

VHDL语言即veryhighSpeedintegratedcricuithardwaredescriptionlanguage(超高速集成电路硬件描述语言),是电子设计的新技术,它符合美国电气和电子工程师协会标准(IEEE标准1076),利用一种和数字电路基本知识结合比较密切的语言来描述数字电路和设计数字电路系统[4]。

利用VHDL进行分块单元电路设计和整个系统设计,并结合一些先进的EDA工具软件(如QuartusII),通过计算机下载到硬件芯片上,实现电路功能,可以节省大量的设计周期。

VHDL语言不一定按顺序一条一条执行每一条语句,而是并行执行的语句同时也有按顺序执行的语句,来描述在同一时刻中可能发生的事件,这要求数字电路设计人员摆脱一维的思维模式,以多维并发的思路来完成VHDL语言的程序设计。

3.2VHDL语言设计例子

以上章的基本门电路为例,用VHDL语言描述的程序代码如下:

Libraryieee;

Useiee.std_logic_164.all--库说明

Entityfadderis

Port(a,b,ci:

INStd_ogic;--实体说明

s,co:

OUTStd_ogic);

ENDFadder;

Architecturestrucoffadderis

Componentor2gate--结构体说明

Port(a,b:

InStd_ogic;

f:

OUTStd_ogic);

Endcomponent;

Componethadder--元件例化语句

Port(a,b:

InStd_ogic;

s,co:

OutStd_ogic);

Endcomponent;

Signal:

tepms,tempcol2:

Std_logic;

Begin

U0:

hadderPortMAP(a,b,temps,tempco1);

U1:

hadderPortMAP(ci,tmps,s,tempco2);

U2:

or2gatePortmap(ci,tempco2,co);

Endstruc;

从该程序可以看出,一个完整的VHDL从描述层次上可以包括库说明,实体说明,结构体说明三个部分[5]。

例外,VHDL语言和其他软件一样,也有严格的标识符、数据对象,数据类型定义。

准确、熟练掌握基本的数据定义,对于初学者是非常必要的。

3.3本章小结

本章介绍了VHDL语言的概念进行了综述,然后对其结构进行了详细的说明。

通过这些内容,对FPGA设计的硬件描述语言VHDL有了大致了解‘

 

第四章:

FPGA基础

4.1CPLD分类

复杂的可编程逻辑器件CPLD(ComplexProgrammableLogicDevice)是由PAL或GAL发展而来的,基本上是扩充原始的可编程逻辑器件,它通常是由可编程逻辑的功能块围绕一个位于中心和延时固定的可编程互联矩阵构成。

为了增加电路密度而不使性能或功耗受到损失,复杂的可编程逻辑器件CPLD在结构上引入了各种特性。

从目前的趋势来看,CPLD又延伸出二大分支:

即可擦除可编程的逻辑器件EPLD(Erasableprogrammablelogicdevice)和现场可编程门阵列器件FPGA(Fieldprogrammablegateqrrery)[6].

总的来说,CPLD与FPGA的定义有所不同,根据结构特点和工作原理,CPLD与FPGA的分类方法是:

以乘积项结构方式构成逻辑行为的器件称为CPLD,以查表法结构方式构成逻辑行为的器件称为FPGA.

4.2FPGA简介

FPGA是由掩膜可编程门阵列和可编程逻辑器件演变而来的,将它们的特性结合在一起,使得FPGA具有门阵列的高逻辑密度和通用性,又有可编程逻辑器件的用户可编程特性。

而且,FPGA可以分成二大类:

即细粒度(Fine-grain)和粗粒度(coarce-grain)。

细粒度逻辑块是与半定制门阵列的基本单元相同,它由可以用可编程互连来连接的少数晶体管组成,规模都较小,主要优点是可用的功能块可以完全被利用;缺点是采用它通常需要大量的连线和可编程开光,使相对速度变慢。

而基于FPGA设计的硬件系统具有以下特点:

(1)无需投片生产,即可得到芯片

(2)可做ASIC的中试样片

(3)有丰富的触发器和I/O引脚

(4)设计周期最短、开发费用最低、风险最小

(5)采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容

图5FPGA设计流程[7]

FPGA的设计与传统的通用IC设计在许多方面有区别,可以归纳表格如下:

 

项目方法

通用IC设计

CPLD/FPGA设计

设计方向

从片子到系统

从系统到片子

成本限制

元件数量

工作量及芯片价格

性能限制

功能单元设计

设计及开发工具性能

设计方案选择

主要元件

FPGA芯片

可测试要求

可连接到PCB板上

只需要功能测试(注)

验证

制作印刷电路板

模拟

样机制作

通常在实验室内完成

可在实验室内完成

后期更改计划

不方便

方便

设计方法

不灵活

有很大的灵活性

工具

可以不依赖与CAE

强烈依赖于CAE

图6FPGA设计与传统IC设计区别

4.3本章小结

本章介绍了CPLD与FPGA的分类方法,详细做表介绍了一般FPGA的设计流程,并且比较了FPGA与传统IC设计的区别。

通过比较很容易得出FPGA设计比其它设计更有优势的结论。

从而在大型电路设计会考虑FPGA设计来提高效率。

 

第四章:

有限状态机的基本概念

5.1有限状态机设计硬件的优势

当前以硬件描述语言为工具,逻辑器件为载体的系统设计越来越广泛。

在设计中,状态机是最典型、应用最广泛的电路模块,其运行速度的高效、执行时间的确定性和高可靠性方面都显示出强大的优势。

有限状态机是一种时序逻辑电路,常用于数字电路中的控制单元。

有限状态机中的每一个状态对应控制单元中的一个控制步骤,有限状态机的次态对应控制单元中与每一个控制步骤有关的转移条件。

只要遵循这二条对应关系,就很容易利用有限状态机来描述数字电路系统中的控制单元了。

有限状态机的输出信号仅与当前状态有关时,称为Moore型有限状态机。

其输出不仅与当前状态有关,而且与所有的输入信号有关时。

这样的状态机称为Mealy型有限状态机[8]

有限状态机可应用于各种系统控制,如:

微处理机中的总线总裁、微处理机与外设之间的控制、工业控制、数据的加密与解密,数字信号与处理中的时序控制等。

5.2有限状态机的设计的一个代码例子

组合逻辑进程中有关状态机的代码:

PROCESS(input,current_state)

BEGIN

CASEcurrent_stateIS

WHENstateis

IF(input=......)THEN

Output<=;

Next_state<=stae1;

ELSE.......

ENDIF;

WHENSTATE1=>

IF(input=.....)THEN

Output<=;

Next_state<=state2;

ELSE......

ENDIF;

WHENstate2=>

IF(input=......)THEN

Ouput<=;

Next_state<=state3;

ELSE......

ENDIF;

.......

ENDCASE;

ENDPROCESS;

这段代码做了二件事:

对输出端口赋值和确定状态机的下一状态。

同样可以看出,它采用顺序代码设计组合逻辑电路的基本要求,即所有输入信号必须出现在PROCESS的敏感信号中,并且所有输入/输出信号的组合都必须完整列出。

在整个代码中,由于没有任何信号的赋值是通过其他某个信号的跳变来触发的,所以不会生成寄存器。

5.3状态机的时序逻辑进程

时序逻辑进程主要用于实现状态机的状态转化。

一般状态机是随外部时钟信号clock.以同步时序方式工作的。

该进程就是保证状态机的跳变与时钟信号同步,保证在时钟发生有效跳变时,状态机的状态发生变化。

时序逻辑进程的代码如下:

PROCESS(reset,clock)

BEGIN

IF(reset=‘1’)THEN

current_state<=state0;

ELSE(CLOCK’eventandclock=’1’)THEN

Current_state<=next_state;

ENDIF;

ENDPROCESS;

5.4本章小结

本章纤细的介绍了状态机的基本内容,包括状态机包括moore型与mealy型的区别,并且举了一个状态机的例子。

由于状态机的启动必须要有启动的时序逻辑进程,故本章还对逻辑启动进程的程序作了些讲解。

 

第五章:

基于FPGA的采样状态机

6.1设计总体思路

图7设计思路框图

本次课题研究的是由温度传感器得到数据后,怎样由AD采样,其中AD采样使用AD0809。

图8ADC0809的元器件内部结构图

6.2采样模块的设计

6.2.1AD0809的整体功能说明

本次设计采用ADC0809。

ADC0809是28引脚双列直插式,它是8通道a/d转换器,ADC0809是带8位a/d转换器,8路多路开关以及微处理机兼容的控制逻辑的cmos组件。

它是逐次逼近式A/D转换器,adc0809由一个8路模拟开关,一个地址锁存与译码组,一个ad转换器和一个三态三态锁存器组成。

多路开关可选通8个模拟通道,允许8路模拟分量

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2