用vhdl实现数字时钟的设计[1]new

用vhdl实现数字时钟的设计[1]new

ID:34407692

大小:462.40 KB

页数:3页

时间:2019-03-05

用vhdl实现数字时钟的设计[1]new_第1页
用vhdl实现数字时钟的设计[1]new_第2页
用vhdl实现数字时钟的设计[1]new_第3页
资源描述:

《用vhdl实现数字时钟的设计[1]new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、山西电子技术应用实践2008年第1期用VHDL实现数字时钟的设计刘竹林李晶骅(十堰职业技术学院电子工程系,湖北十堰442000)摘要:以一款数字钟设计为例,较详细的介绍了如何用VHDL语言设计数字电路,并给出了部分程序、仿真波形图,并在MAX+plusII中进行编译、仿真、下载。由此说明利用VHDL开发数字电路的优点。关键词:VHDL;设计;数字钟;应用电路中图分类号:TN953文献标识码:A0引言示时、分、秒6个数字的数字钟,则需要6个七段显示器。若同时点亮这6个七段显示器,则电路中会产生一个比较大的VHDL硬件描述语言在电子设

2、计自动化(EDA)中扮演电流,很容易造成电路烧坏,我们通过扫描电路来解决这一着重要的角色,它的出现极大的改变了传统的设计方法、设问题,通过产生一个扫描信号CS(0)-CS(5)来控制6个七计过程乃至设计观念。由于采用了“自顶向下”(Top2Down)段显示器,依次点亮6个七段显示器,也就是每次只点亮一的全新设计方法,使设计师们摆脱了大量的辅助设计工作,个七段显示器。只要扫描信号CS(0)-CS(5)的频率超过人而把精力集中于创造性的方案与概念构思上,用新的思路来的眼睛视觉暂留频率24Hz以上,就可以达到尽管每次点亮发掘硬件设备的潜

3、力,从而极大地提高了设计效率,缩短了单个七段显示器,却能具有6个同时显示的视觉效果,而且产品的研制周期。显示也不致闪烁抖动。这种设计方法首先从系统设计入手,在顶层进行功能方其中6位扫描信号一方面控制七段显示器依次点亮,一框图的划分和结构设计。在方框图一级进行仿真、纠错,并方面控制6选1选择器输出相应显示数字。用硬件描述语言对高层次的系统行为进行描述,在系统一级2模块设计进行验证。然后用综合优化工具生成具体门电路的网表,其对应的物理实现级可以是印刷电路板或专用集成电路。由2.1VHDL语言的基本结构于设计的主要仿真和调试过程是在高层

4、次上完成的,这不仅一个独立的设计实体通常包括:实体(ENTITY)、结构有利于早期发现结构设计上的错误,避免设计工作的浪费,而体(ARCHITECTURE)、配置(CONFIGURATION)、包集合且也减少了逻辑功能仿真的工作量,提高了设计的一次成功率。(PACKGE)、和库(LIBRARY)5个部分。其中实体用于描述1用VHDL设计一款数字钟所设计的系统的外部接口信号;构造体用于描述系统内部的结构和行为;建立输入和输出之间的关系;配置语句安装具我们设计的数字时钟原理框图如图1。其基本功能划体元件到实体—结构体对,可以被看作是设

5、计的零件清单;分为:计数模块(包括秒、分、时)、译码模块、扫描显示控制模包集合存放各个设计模块共享的数据类型、常数和子程序块。计数模块由两个60进制计数器和一个24进制计数器组等;库是专门存放预编译程序包的地方。VHDL程序设计基成,分别对秒、分、小时进行计数,当计数到23点59分59秒本结构如图2。的时候,即一天结束,计数器清零,新的一天重新开始计数。图2VHDL程序设计基本结构2.2各模块的实现2.2.1计数模块(建立VHDL语言的工程文件)计数模块由两个60进制计数器和一个24进制计数器组成,分别对秒、分、小时进行计数。其V

6、HDL源程序相差图1数字时钟原理框图不大由于篇幅有限,这里我们以秒模块的实现为例。程序如秒计数器的计数时钟信号为1Hz的标准信号,可以由系下:22统板上提供的4MHz信号通过2分频得到。秒计数器的进libraryieee;位输出信号作为分钟计数器的计数信号,分钟计数器的进位useieee.std-logic-1164.all;输出信号又作为小时计数器的计数信号。设计一个同时显entitycounter-60-bcdis收稿日期:2007-06-04第一作者刘竹林男27岁助教48山西电子技术2008年port(cen,clk,set

7、time:instd-logic;s-ten:=s-ten+1;q-one:outintegerrange0to9;elseq-ten:outintegerrange0to9;s-ten:=0;co:outstd-logic);endif;endcounter-60-bcd;endif;architecturertlofcounter-60-bcdisendif;signalcoo:std-logic;endif;signalclkI:std-logic;q-one<=s-one;componentdffisq-ten<=s-te

8、n;port(clk,d:instd-logic;ifs-ten=5ands-one=9thenq:outstd-logic);co<=’1’;endcomponent;elsebeginco<=’0’;process(clk)endif;vari

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

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

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