基于FPGA的数字钟设计(各模块综合调试通过,VHDL语言).pdfVIP

基于FPGA的数字钟设计(各模块综合调试通过,VHDL语言).pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

基于FPGA的VHDL语言数字钟(含秒表)设计

用FPGA芯片完成除时钟源、按键、扬声器和显示器(数码管)之外的所有数

字电路功能。所有数字逻辑功能都在FPGA器件上用VHDL语言实现。这样设计具有

体积小、设计周期短(设计过程中即可实现时序仿真)、调试方便、故障率低、修

改升级容易等特点。

本设计采用自顶向下、混合输入方式(原理图输入—顶层文件连接和VHDL语

言输入—各模块程序设计)实现数字钟的设计、下载和调试。

功能考虑

已完成功能

1.完成秒/分/时的依次显示并正确计数;

2.秒/分/时各段个位满10正确进位,秒/分能做到满60向前进位;

3.定时闹钟:实现整点报时,又扬声器发出报时声音;

4.时间设置,也就是手动调时功能:当认为时钟不准确时,可以分别对分/

时钟进行调整;

5.利用多余两位数码管完成秒表显示:A、精度达10ms;B、可以清零;C、

完成暂停

可以随时记时、暂停后记录数据。

待改进功能:

1.闹钟只是整点报时,不能手动设置报时时间,遗憾之一;

2.秒表不能向秒进位,也就是最多只能记时100ms;

3.秒表暂停记录数据后不能在原有基础上继续计时,而是复位重新开始。

【注意】秒表为后来添加功能,所以有很多功能不成熟!

设计方案

1.数字钟顶层设计

外部输入要求:输入信号有1kHz/1Hz时钟信号、低电平有效的秒/微秒清

零信号CLR、低电平有效的调分信号SETmin、低电平有效的调时信号SEThour;

外部输出要求:整点报时信号SOUND(59分51/3/5/7秒时未500Hz低频

声,59分59秒时为1kHz高频声)、时十位显示信号h1(a,b,c,d,e,f,g)、时个

位显示信号h0(a,b,c,d,e,f,g)、分十位显示信号m1及分个位m0、秒十位s1

及秒个位s0、微秒十位ms1及微秒个位ms0;数码管显示位选信号SEL0/1/2等

三个信号。

2.内部功能模块主要有:

Fenp分频模块:主要是整点报时用的1kH与500Hz的脉冲信号,这里的输入

信号是1KHz信号,所以只要一个二分频即可;时间基准采用1Hz输入信号直接提

供(当然也可以分频取得,这里先用的是分频取得的信号,后考虑到精度问题而采

用硬件频率信号。

实现带有100进制进位和清零功能,暂定等功能的微秒模块MINSECONDB输入

为1Hz脉冲和低电平的清零信号CLR与暂定信号STOP,输出微秒个位、十位及进

位信号CO(虽然没有实现进位功能,但还是编写了这个端口,只是在连线时悬

空)。

实现60进制带有进位和清零功能的秒计数模块SECOND,输入为1Hz脉冲和

低电平有效的清零信号CLR,输出秒个位、时位及进位信号CO。

实现60进制带有进位和置数功能的分计数模块MINUTE,输入为1Hz脉冲和

高电平有效的使能信号EN,输出分个位、时位及进位信号CO。

实现24进制的时计数模块HOUR,输入为1Hz脉冲和高电平有效的使能信号

EN,输出分个位、时位。

实现分时复用功能模块SELTIME,输入为秒(含个/十位)、分、时、扫描

时钟CLK1K,输出为D和显示控制信号SEL。

实现整点报时功能模块ALERT,输入为分/秒信号,输出为高频声控Q1K和

Q500。

实现译码显示功能模块DISPLAY,输入为D,输出为Q

设计框图

子功能模块实现及说明

分频模块

采用原理图输入方式实现2分频与1000分频,但这里并没有用到1000分

频,因为后来考虑到精度问题,将千分频用直接输入了。程序如图:利用三个

7490进行硬

件分频

微秒模块

采用VHDL语言输入方式,以时钟clk,清零信号clr以及暂停信号STOP为

进程敏感变量,程序如下:

libraryieee;

useieee.std_logic_1164.all;

us

文档评论(0)

151****6399 + 关注
实名认证
文档贡献者

大专毕业生

1亿VIP精品文档

相关文档