基于fpga数字跑表实验报告

基于fpga数字跑表实验报告

ID:26597293

大小:1.07 MB

页数:12页

时间:2018-11-27

基于fpga数字跑表实验报告_第1页
基于fpga数字跑表实验报告_第2页
基于fpga数字跑表实验报告_第3页
基于fpga数字跑表实验报告_第4页
基于fpga数字跑表实验报告_第5页
资源描述:

《基于fpga数字跑表实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、[基于FPGA数字跑表]专业:电子信息工程班级:电子xxx班学生学号:xxxx学生姓名:xxxx指导教师:xxxx完成时间:2021年7月18日FPGA设计实践报告LogoSina:@Jennifer-tth数字跑表设计一、设计概述FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。VerilogHDL语言是在C

2、语言的基础上发展而来的。从语法结构上看,VerilogHDL继承和借鉴了C语言的很多语法,两者有许多的相似之处,但VerilogHDL作为一种硬件描述语言,还是有本质的区别。即可适用于综合的电路设计,也可胜任电路和系统的仿真;能在多层次上对所设计的系统加以描述,从开关级、门级,寄存器传输级到行为级等都可以担任,而且没规模限制;灵活多变的电路描述风格,可进行行为描述,也可进行结构描述等,应用十分的广泛。QuartusⅡ软件是Atlera的CPLD/FPGA集成开发软件,具有完善的可视化设计环境,并具有标准的EDA工具接口,基于QuartusⅡ进

3、行EDA设计开发需要以下步骤:设计输入、编译、仿真、编程与验证等。本次通过VerilogHDL语言编写一个具有“百分秒、秒、分”计时功能的数字跑表,可以实现一个小时内精确至百分之一秒的计时器。数字跑表的显示可以通过编写数码管显示模块程序来实现,设计实现计数及进位的功能,通过几个always模块的设计实现一个特定用途的电子产品------数字跑表。二、设计功能数字跑表是生活中常见的一种电子产品,特别应用与体育比赛中。本数字跑表是通过按键来控制计时的开始和结束,一个是复位控制按键,用于设计跑表为初始零状态;另一个则是开始/停止控制按键,在复位控制

4、无效的情况下,按一下开始/停止键则计时器开始计时,再按一下则暂停计时,再按一下则继续计时。下面是其功能图:具体性能如下:(1)跑表的计时范围为0.01s~59min59.99s,计时精度为10ms;(2)具有异步复位清零、启动、计时和暂停功能;(1)输入时钟频率为100Hz;(2)要求数字跑表的输出能够直接驱动共阴极7段数码管显示.实现要求:(1)分析功能要求,划分功能模块;(2)编写各模块的VerilogHDL语言的设计程序;(3)在QuartusⅡ软件上完成设计和仿真;(4)根据实验室FPGA芯片,将设计生成配置文件,然后将配置文件下载到

5、实验装置上运行,操作实验装置上设定的功能按键,验证设计功能。三、设计方案本次设计的跑表首先要从最低位的百分秒计数器开始,按照系统时钟进行计数。百分位计数到100后向秒计数器进位,秒计数器以百分秒计数器的进位位为时钟进行计数。秒计数到60后向分计数器进位,分计数器以秒计数器的进位位为时钟进行计数。数字跑表巧妙地运用进位位作为时钟来减少了计数的位数。数字跑表提供了清零位CLR和暂停/开始位PAUSE,百分秒的时钟信号可以通过系统时钟分频提供。分频至100Hz,即可实现时间计数。具体程序设计分为两个大模块。主要模块说明功能的分配、内部功能块和对外接

6、口关系,功能模块具体控制实际的逻辑功能和具体的实现。(一)主模块在主程序模块中包括两部分,第一部分是VerilogHDL程序的逻辑结构。用if...else以及进位来实现百分秒计满到99进位到秒,当秒满59时进位到分,分满59以后归0.第二部分是LDE显示部分。(二)时钟模块第二大模块是时钟分频模块,本实验利用开发板上50MHz的时钟频率,通过分频程序将其分成所要求的100Hz。通过计算得到需要利用500000分之一的分频,但是分频后快半秒,时钟是翻转后的一个高电平和一个低电平所以,最后分频是250000分之一分频。这样就刚好是正常的时间跳变

7、速度。四、程序分析下面是程序的主要流程图:分高位分低位秒高位秒低位百分秒高位百分秒低位MHMLSHSLMSHMSL/*信号定义CLK:时钟信号;CLR:异步复位信号;PAUSE:暂停/启动信号;*/moduleh(clk,clr,pause,msh,msl,sh,sl,mh,ml,led1,led2,led3,led4,led5,led6);inputclk,clr;inputpause;output[6:0]led1;output[6:0]led2;output[6:0]led3;output[6:0]led4;output[6:0]led

8、5;output[6:0]led6;output[3:0]msh,msl,sh,sl,mh,ml;reg[6:0]led1;reg[6:0]led2;reg[6:0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。