网站大量收购独家精品文档,联系QQ:2885784924

数字秒表的设计..docVIP

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

安阳工学院电子信息与电气工程学院 《EDA技术》课程大作业 题目:数字秒表的设计 班级:电子信息工程16-1 评分标准: 设计和结论正确,分析清晰合理。 40% 大作业报告阐述清晰,格式规范。 30% 陈述清晰,回答问题正确。 30% 大作业成绩 姓名 学号 个人贡献百分比 (学生自评) 教师评分 回答问题 总成绩 题目 1.设计任务 (1)设计一块数字秒表,能够精确反映计时时间,并完成复位、暂停功能。 (2)当复位有效时,秒表清零。在任何情况下,只要按下复位开关,秒表都要无条件地进行复位操作,即使在计时过程中也要无条件地清零。 (3)设置秒表启动/暂停开关。按下该开关,秒表即暂停,并得到计时结果;放开该开关时,计时继续。 2.设计方案 数字秒表的实现主要依赖于两个计数器模块的设计:十进制计数器和六进制计数器。十进制计数器和六进制计数器的模块示意图分别如图1、图2所示。 图1 六进制计数器示意图 图2 十进制计数器示意图 在两个计数器中,除了计数的进制不同以外,其余输入和输出信号均有相同的含义。其中,clk为时钟脉冲信号;clr为复位清零信号,高电平有效;ena为计数使能信号,高电平有效;q[3…0]为计数输出信号,输出计数器当前的值;co为进位输出信号,当计数器满时,产生进位,高电平有效。 采用十进制计数器和六进制计数器级联方式实现的数字秒表原理图如图3所示。其中,单元模块U4,U6为六进制计数器,实现以10秒和1分为单位的计时进位,其余模块均为十进制计数器。 图3 数字秒表原理图 十进制计数器模块、六进制计数器模块及数字秒表顶层模型的VHDL程序在附录1 。 3.方案实施 图4 六进制仿真器仿真波形图 从六进制计数器模块的仿真波形图可以看出,当复位信号clr低电平有效时,计数使能信号ena有效时,计数器允许计数,每一个时钟周期的上升沿到达时,计数器都进行加1操作,当计数器计满6个数时,输出进位信号,同时计数器清零并重新计数。如图4所示的仿真结果正确,六进制计数器模块的设计是正确的。 图5 十进制仿真器仿真波形图 从十进制计数器模块的仿真波形图可以看出,当复位信号clr低电平有效时,计数使能信号ena有效时,计数器允许计数,每一个时钟周期的上升沿到达时,计数器都进行加1操作,当计数器计满10个数时,输出进位信号,同时计数器清零并重新计数。如图5所示的仿真结果正确,十进制计数器模块的设计是正确的。 4.结论 图6 数字秒表波形仿真图 从数字秒表波形仿真图可以看出,当复位信号clr0低电平有效时,计数使能信号en高电平有效时,允许数字秒表进行计时操作时,每一个时钟周期的上升沿到达时,系统输出信号都增加1,实现了计时功能。 图7 数字秒表复位功能 从数字秒表波形仿真图可以看出,当复位信号clr0高电平有效时,计数使能信号en高电平有效时,此时输出被清零。 图8 数字秒表暂停功能 从数字秒表波形仿真图可以看出,当复位信号clr0低电平有效时,计数使能信号en低电平有效时,此时数字秒表将不再允许系统的计数器模块跟随时钟信号改变而增加,其输出状态将维持在计数使能信号en变为低电平前最后一个时钟周期上升沿得到的值。 5.任务分工 三人共同确定了题目。 附录1 十进制计数器模块的VHDL程序: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY cnt10 IS PORT( clk:IN STD_LOGIC; clr:IN STD_LOGIC; ena:IN STD_LOGIC; q :OUT STD_LOGIC_VECTOR(3 DOWNTO 0); co :OUT STD_LOGIC ); END cnt10; ARCHITECTURE rtl OF cnt10 IS SIGNAL tmp:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS(clk,clr,ena) BEGIN IF clr=1THEN tmp=0000; ELSIF clkEVENT AND clk=1THEN IF

您可能关注的文档

文档评论(0)

sa43sad5 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档