欢迎来到天天文库
浏览记录
ID:35625710
大小:1.08 MB
页数:17页
时间:2019-04-03
《《EDA技术应用》课程设计报告-基于FPGA的数字钟设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、《EDA技术应用》课程设计报告基于FPGA的数字钟设计专业:通信工程班级:10311姓名:指导教师:2012.1.6目录161.设计任务及要求11.1设计任务11.2设计要求12.设计方案以及流程22.1设计原理图22.2工程流程图23.程序设计33.1秒钟模块33.2分钟模块43.3时钟模块63.4分频模块73.5数码管控制模块93.6七段译码显示模块113.7顶层模块124.硬件测试144.1管脚的分配144.2调试154.3实验现象165.总结166.老师点评16参考书目1716基于FPGA的数字钟的设计1
2、.设计任务及要求1.1设计任务设计并实现具有一定功能的数字钟。包括清零、置数、计数、报时等功能。(1)具有时、分、秒计数显示功能,且以24小时循环计时。(2)具有清零的功能,且能够对计时系统的小时、分钟进行调整。(3)具有整点报时功能。1.2设计要求(1)采用VHDL语言编写程序,并在QuartusII工具平台中进行开发,下载到EDA实验箱进行验证。(2)编写设计报告,要求包括方案选择、程序清单、调试过程、测试结果及心得体会。2.设计方案以及流程本设计由振荡器、分频器、计数器、译码器显示器和校时电路组成。振荡器提
3、供稳定的6M脉冲信号,作为数字钟的时钟,然后经过分频器分频后输出标准1HZ脉冲。中间变量计数十次后,生成秒信号,秒计数器满60后向分计数器进位,分计数器满60后向时钟进位,时计数器满24后全部清零。此次设计的多功能数字钟主要有四部分组成:(1)分频器部分:主要产生6MHZ的CLK的输入脉冲信号。(2)开关控制部分:主要实现数字钟的复位。(3)EPM7064芯片部分:是整个数字钟的核心部分。是程序写入以及对输入脉冲的接收与转换控制。(4)数码管显示部分:6位数码管动态(2000HZ)显示时、分、秒。2.1设计原理图
4、:图1.数字钟原理图2.2工程流程图16开始新建VHDL源程序创建工程↓编译程序↓生成模块符号文件↓↓设置顶层实体下载到硬件电路↓↓执行程序命令执行↓结束图2工程流程图创建步骤3.程序设计3.1秒钟模块此模块主要由输入端口clk=1HZ的频率源作为计数器的时钟,当计数到59归零并且时产生进位carry=1作为分钟的时钟源。miao_60的源代码:16libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_l
5、ogic_arith.all;entitymiao_60isport(clk:instd_logic;--输入1HZ的频率rst:instd_logic;--rst复位shi:outstd_logic_vector(3downto0);--秒的十位、个位ge:outstd_logic_vector(3downto0);carry:outstd_logic);--满59s进位给分钟作频率endentitymiao_60;architectureart1ofmiao_60issignaltem1:std_logic_
6、vector(3downto0);--定义与端口等宽的信号signaltem2:std_logic_vector(3downto0);--位矢量beginprocess(clk,rst)beginif(rst='0')thentem1<="0000";--复位时十、个位归零tem2<="0000";elsifclk'eventandclk='1'theniftem1="1001"then--个位计到9时归零tem1<="0000";iftem2="0101"then--十位到5时归零tem2<="0000";ca
7、rry<='1';--给分钟进位作为分钟的时钟频率elsetem2<=tem2+1;carry<='0';endif;elsetem1<=tem1+1;endif;endif;shi<=tem2;ge<=tem1;endprocess;endart1;miao_60的时序仿真波形如图所示:图3miao_60的时序仿真波形图3.2分钟模块16此模块主要由输入端口clk=carry的频率源作为计数器的时钟,当计数到59归零并且时产生进位carry=1作为时钟的时钟源。fen_60的源代码:libraryieee;us
8、eieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;entityfen_60isport(clk:instd_logic;--miao_60的进位carry作为时钟源rst:instd_logic;----rst复位shi:outstd_logic_vect
此文档下载收益归作者所有