fpga报告终极版_第1页
fpga报告终极版_第2页
fpga报告终极版_第3页
fpga报告终极版_第4页
fpga报告终极版_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

东北大学秦皇岛分校计算机与通信工程学院FPGA原理及应用结课论文题目数字闹钟专业名称通信工程班级学号学生姓名提交时间设计题目数字闹钟一、设计实验条件QUARTUSII开发环境二、设计目标1熟练利用VHDL硬件描述语言进行数字系统设计;2掌握数字系统的设计方法自顶向下的设计思想;3掌握QUARTUSII开发软件的使用方法;4掌握FPGA/CPLD芯片的工作原理;5根据数字闹钟的功能要求设计一个数字闹钟;6掌握闹钟系统的原理。三、设计报告的内容1前言(绪论)设计的目的、意义等2设计主体(原理、步骤、程序或原理图、结果等)3对仿真结果进行分析4参考资料一、绪论电子钟是一种用数字电子技术实现时、分、秒自然计时的装置,与机械式时钟相比具有更高的准确性和直观性,而且使用寿命较长。现行的基于小规模数字逻辑芯片加计数器设计方案或以单片机为核心的设计方案,存在系统实现相对复杂、在系统编程不易、误差偏大等问题。20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能更进一步,产品更新换代的节奏也越来越快。随着现场可编程门阵列FPGA的出现,电子系统向集成化、大规模和高速度等方向发展的趋势更加明显,作为可编程的集成度较高的ASIC,可在芯片级实现任意数字逻辑电路,从而可以简化硬件电路,提高系统工作速度,缩短产品研发周期。故利用FPGA这一新的技术手段来研究电子钟有重要的现实意义。设计采用FPGA现场可编程技术,运用自顶向下的设计思想设计电子钟。避免了硬件电路的焊接与调试,而且由于FPGA的I/O端口丰富,内部逻辑可随意更改,使得数字电子钟的实现较为方便。本课题选用了ALTERA公司的FPGA产品并以其专门开发软件为平台,运用VHDL硬件描述语言设计一个电子时钟。该系统通过VHDL语言和原理图混合应用的方式来实现电子时钟的设计,并下载到硬件之中进行验证。本次设计主要让我们掌握CPLD/FPGA的研发过程,掌握VHDL语言的编程思想及过程,以及电子时钟基本功能和实现的基本原理。二、设计主体1、数字闹钟介绍数字钟是一计时的工具,有着广泛的用途。本实验的数字钟要求有三个功能按钮一个是清零按钮RESET,当按下此按钮时,数字钟显示有位都清零二是调分钟的按钮SETMIN,当按下此按钮时分钟会以1HZ的频率速度进行调时,而且在调分钟时秒钟会暂停不动;三是调小时的按钮SETHOUR,当按下此按钮时时钟会以1HZ的频率速度进行调时,在调小时时分钟会暂停不动,但秒钟是正常记时的。另外还有一个闹钟模块,在闹钟模块中,先按下闹钟开启键,按下调时或调分键时,数码显示管显示所调闹钟的时间,并进行调时或调分。当两个键都未按下时,数码管显示数字钟的时间。当设定的闹钟时间和数字钟的时间一致时,铃声响起。在铃声响起时,按下PASS键,铃声停止响起,三分钟后闹钟再次响起,如此循环5次;按下STOP键时,铃声停止工作;什么都不按,铃声响起一分钟后停止,隔天再响,直到按下闹钟开/关键。其余时间喇叭不叫。2、实现功能设计一个简单的数字闹钟,它的具体功能为计时功能这是本计时器设计的基本功能,可进行时、分、秒计时,并显示。清零功能按下此键后计数器清零,数码管显示“0”;松开此键数码管开始显“000000”,并且以此开始重新计时;调时调分功能当需要校时,可通过实验箱上的按键控制;闹钟开/关功能为避免闹钟天天响,设计了闹钟开启/关闭功能;闹钟功能开启闹钟功能后,通过闹钟键设置好铃响时间,时间到铃声响起,如果此时按下停止键,闹钟马上停止;如果按下忽略键,闹钟停止,并会在3分钟后重新响起,循环5次;什么都不按,闹钟响一分钟后停止,隔天再响,直到按下开启键关闭闹钟。3、设计原理及原理图在本实验中用到的主要元件有计数器,分频器,报时器,选择器和译码器等。控制逻辑主要是用来实现计数和清零。数字闹钟原理框图如图1所示数字闹钟原理电路图如图2所示CLKSEC60选择输出模块MIN60HOUR50分频模块SECOND模块RESETMINUTE模块RESETHOUR模块RESET闹钟模块SP2CLK译码输出模块闹钟功能模块SP2RESETCLK图1数字闹钟原理框图图2数字闹钟原理电路图4、模块介绍41分频模块功能介绍此模块定义一个全局时钟,用频率为6MHZ的信号源经分频从CLK进入模块,经分频后由CLK6输出,得到一个1HZ的时钟脉冲,用于驱动数字钟工作。分频模块图如图3所示波形仿真图如图4所示图3分频模块图4功能仿真整体图分频原理输入6M晶振频率,振1次需16667NS,1S振动3000000次,分频模块在计数器计数到2999999的时候再输入一个高电平,计数器加1,输出口CLK6翻转,由低电平翻转成高电平。由图可以看出,500MS的一瞬间CLK6的高低电平是发生变化的,从而可以说明程序正确,但由于原因存在一定误差42计数器模块功能介绍此模块包括秒计数器、分计数器、时计数器以及功能按键的设计。1由分频模块产生1HZ的时钟信号,输入计数60的秒计数器模块电路,等计数至60的瞬间,进位至计数60的分计数器模块电路加1,同时秒计数器模块电路也清除为0再重新计秒。2分计数器模块电路和时计数器模块电路功能基本相似。时计数器模块电路计数为24,在计数至23的时,再输入一个高电平,计数器模块全部清0,再重新计数。3三组计数电路中的计分和计时数据传给闹钟模块,通过闹钟模块再和计秒数据一起传给位选模块,位选模块产生一组输出信号,而控制这个输出的信号为SEL20。4由于取得的信号不论是时、分、秒,都将以十进制表示,所以先将这个十进制表示的时、分、秒转换成两个数位的BCD码。计数流程图如图5所示图5计数流程图1秒计数模块功能介绍CLK是时钟型号输入端;RESET是清零键,低电平有效;SETMIN是分钟调时按键,高电平有效;ENMIN是进位输出端;DAOUT60是显示输出端,连接位选模块,再经显示模块译码后输出显示在七段码上。秒计数模块如图6所示秒计数模块波形仿真如图7所示图6秒计数模块图7秒计数模块波形仿真图从功能仿真图上可以看出,当按下RESET键时,计数器清零,重新计数;按下SETMIN键时,DAOUT60是显示输出端输出的信号不变,同时ENMIN进位输出端输出与时钟信号周期相同的脉冲信号,进入分钟计数模块,驱动分钟模块工作;当计数器计数到59时,再输入一个脉冲模块清零,并且重新计数。由此可以判定,该模块能实现全部预想功能,程序编写正确。2分计数模块功能介绍CLK是时钟信号输入端;CLK1是秒进位信号输入端,秒钟算到60时发出一个进位脉冲,驱动分钟计数模块加1;RESET是清零键,与秒钟计数模块的清零键是同一个键。SETHOUR是时钟调时按键,高电平有效;ENHOUR是进位输出端,功能与秒钟计数模块的相同;DAOUT60是显示输出端,连接闹钟模块,再连接位选模块,经显示模块译码后输出显示在七段码上。分计数模块如图8所示分计数模块波形仿真如图9所示。图8分计数模块图9分计数模块波形仿真图从功能仿真可以看出,CLK1输入秒钟模块的进位信号,DAOUT60输出端输出分钟计数信号。当按下RESET时DAOUT60输出端清零,再次重新计数。按下SETHOUR时,ENHOUR输出频率与时钟信号相同的脉冲,用于使时计数模块计数增加,达到调时的目的。当分计数器计到60时,ENHOUR输出一个高电平,分计数器重新计时,同时时计数器加1。由此可以判定,该模块能实现全部预想功能,程序编写正确。3时计数模块功能介绍CLK是进位信号,有分钟模块输出;RESETS是清零键;DAOUT50是显示输出端,连接闹钟模块,再连接位选模块,经显示模块译码后输出显示在七段码上。时计数模块如图10所示时计数模块波形仿真如图11所示图10时计数模块图11时计数模块波形仿真图从功能仿真图上可以看出,当按下RESETS清零键时,DAOUT50是显示输出端清零并且重新计数。此可以判定,该模块能实现全部预想功能,程序编写正确。43选择器模块功能介绍CLK电源信号输入端,输入的是分频前得频率为6MHZ的信号,选择模块工作频率为6MHZ;RESET是清零键;低电平有效;SEC60、MIN60、HOUR50是分别从秒钟计数模块、分钟计数模块、时钟计数模块引入的待显示的信号SEL50011111时输出SEC30;SEL50101111时输出0和SEC64;SEL50110111时输出MIN30SEL50111011时输出0和MIN64;SEL50111101时输出HOUR30SEL50111110时输出00和HOUR54;SEL50为其他数字,则显示符号“”。选择器模块如图12所示选择器模块波形仿真如图13所示。图12选择器模块图13选择器模块波形仿真图从功能仿真图上可以看出,当SEL50011111时,DAOUT30输出为0011,与SEC30输出的相同。此可以判定,该模块能实现全部预想功能,程序编写正确。44闹钟模块功能介绍CLK输入1HZ的时钟信号,SETMIN1和SETHOUR1是调分和调时键,低电平有效;DAIN和DAINL是分钟信号和时钟信号输入;SP2是闹钟信号输出;DOAUT和DOAUTL是分钟信号和时钟信号输出。闹钟功能模块如图14所示闹钟功能模块波形仿真如图15、图16所示图14闹钟模块图15功能仿真结果中SETMIN1和SETHOUR1图16功能仿真到达设定的时间后SP2变为高电平从功能仿真图上可以看出,按下SETMIN1和SETHOUR1设置好闹铃时间后,到特定时间,SP2输出高电平。此可以判定,该模块能实现全部预想功能,程序编写正确。45闹钟功能模块功能介绍CLK是时钟信号,工作频率6MHZ;SP2是从闹钟模块输出的用于驱动闹钟功能模块的信号。开启闹钟(ENABLE1),当SP2输入为高电平,SP输出也为高电平。当按下STOP时,铃响停止;当按下PASS时,铃响停止,并且再3分钟后会再次响起,如此循环5次后铃声不会再响起。如果什么都不按,闹钟响一分钟后停止,隔天再响,直到按下ENABLE。闹钟功能模块如图17所示闹钟功能模块波形仿真如图18、图19所示图17闹钟功能模块图18功能仿真按下STOP图19功能仿真按下PASS从功能仿真图上可以看出,按下STOP或PASS后,SP由高电平变为低电平。此可以判定,该模块能实现全部预想功能,程序编写正确。46显示模块功能介绍从选择模块出来的信号NUM30经显示模块翻译成BCD码后才能显示在七段码上。显示模块如图20所示显示模块波形仿真如图21所示图20显示模块图21显示模块波形仿真图从功能仿真图上可以看到,当NUM300111时,LED600000111,七段码显示数字7。此可以判定,该模块能实现全部预想功能,程序编写正确。分频模块具体程序LIBRARYIEEEUSEIEEESTD_LOGIC_1164ALLUSEIEEESTD_LOGIC_UNSIGNEDALLENTITYFENPISPORTCLKINSTD_LOGICCLK6OUTSTD_LOGICENDFENPARCHITECTUREONEOFFENPISSIGNALCNTSTD_LOGIC_VECTOR21DOWNTO0SIGNALCLK_TEMPSTD_LOGICCONSTANTCINTEGER2999999BEGINPROCESSCLKBEGINIFCLKEVENTANDCLK1THENIFCNTCTHENCLK_TEMPDAOUTDAOUTDAOUTDAOUTDAOUTDAOUTDAOUT0SIGNALPASS_CNTUNSIGNED9DOWNTO0OTHERS0BEGINPROCESSCLK,SP2,PASS,STOPBEGINIFRISING_EDGECLKTHENSPIFSP21THENIFSTOP1THENCTRL_STATE0PASS_CNT0WHENS_PASSIFA5THENCTRL_STATE0SPIFSP20THENCTRL_STATECTRL_STATELEDLEDLEDLEDLEDLEDLEDLEDLEDLEDLEDCLK,CLK6S1U2SECONDPORTMAPCLKS1,RESETRESET,SETMINSETMIN,ENMINS4,DAOUTS6U3MINUTEPORTMAPCLKS1,CLK1S4,RESETRESET,SETHOURSETHOUR,ENHOURS5,DAOUTS7U4HOURPORTMAPCLKS5,RESETRESET,DAOUTS8U5SELTIMEPORTMAPCLK1CLK,RESETRESET,SECS6,MINS2,HOURS3,DAOUTS9,SELSELU6DELEDPORTMAPNUMS9,LEDLEDU7NAOZHONGPORTMAPCLKS1,SETMIN1SETMIN1,SETHOUR1SETHOUR1,DAINS7,DAINLS8,DAOUTS2,DAOUTLS3,SP2S11U8LANRENPORTMAPCLKS1,SP2S11,PASSPASS,STOPSTOP,SPSPENDARCHITECTURE设计报告格式及要求1版面格式版面A4纸,单面打印,左侧装订。页边距上25厘米、下25厘米、左35厘米、右25厘米。2报告封面及设计任务格式(见给出的示例)学校及系名称行楷、一号字、居中;课程设计名称宋体、一号字、居中;设计题目宋体、二号字、居中;专业名称、班级学号、学生姓名、指导教师、设计时间黑体、小三号字。3设计报告内

温馨提示

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

评论

0/150

提交评论