EDA技术之_秒表的设计.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA技术之_秒表的设计

实验三 秒表的设计 一、实验目的: 1、 熟练利用VHDL语言进行数字系统设计; 2、 掌握数字系统的设计方法——自顶向下的设计思想; 3、 掌握计数器的设计与使用; 4、 根据秒表的功能要求设计一个秒表; 二、实验设备: PC机一台、EDA教学实验系统一台、下载电缆一根(已接好)、导线若干 三、实验要求: 1、 有秒、分计数,数码扫描显示输出; 2、 有清零端和计数使能端; 3、 在功能允许的情况下,可自由发挥; 四、实验原理: 1、 功能描述: 秒表是一种计时的工具,有着很广泛的用途。本实验中的秒表要求有两个功能按钮:一个是计数和停止计数按钮,当第一次按下此按钮时,秒表开始计数,再一次按下时,秒表停止计数,并显示所计的数字;另一个是清零按钮,当按下此按钮时,秒表清零。在数码管上采用扫描显示输出。 2、 基本原理: 本实验中用到的主要元件有计数器、控制逻辑、数据选择器和译码器等。秒、分都是60 进制计数,所以必须采用两个60 进制的计数器(或6 进制计数器与10 进制计数器的组合);控制逻辑主要是用来实现计数和清零。基本方框图如下: 注意:计数器必须有进位输出、计数使能端和清零端。 3、 自顶向下的设计方法: 自顶向下的设计方法是数字系统设计中最常用的设计方法,也是基于芯片的系统 设计的主要方法。它的基本原理框图如下: 自顶向下的设计方法利用功能分割手段将设计由上到下进行层次化和模块化,即分层次、分模块进行设计和仿真。功能分割时,将系统功能分解为功能块,功能块再分解为逻辑块,逻辑块再分解为更少的逻辑块和电路。如此分割,逐步的将系统细化,将功能逐步具体化,模块化。高层次设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细描述在下一设计层次说明,最底层的设计才涉及具体寄存器和逻辑门电路等实现方式的描述。(注意:这里所说的模块可能是芯片或电路板。) 五、实验步骤: 1、 采用自顶向下的设计方法,首先将系统分块; 2、 设计元件,即逻辑块; 3、 一级一级向上进行元件例化(本实验只需例化一次即可),设计顶层文件。 六、实验报告 1,写出实验源程序: library IEEE; use IEEE.std_logic_1164.all; use IEEE.std_logic_arith.all; use IEEE.std_logic_unsigned.all; entity myclock is PORT(CLK: IN bit; second: out std_logic_vector (0 to 5); minute: out std_logic_vector (0 to 5)); END myclock; architecture rtl of myclock is BEGIN PROCESS(CLK)IS variable count: std_logic_vector(0 to 5); variable c: std_logic_vector(0 to 5); BEGIN IF(CLKEVENT AND CLK=1)THEN count:=count+1; IF count=111011then count:=000000; c:=c+1; if c=111011then c:=000000; end IF; end if; end if; second=count; minute=c; END PROCESS; END architecture rtl; 2,仿真图如下:

您可能关注的文档

文档评论(0)

aicencen + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档