基于vhdl数字时钟设计说明书

基于vhdl数字时钟设计说明书

ID:29472274

大小:733.58 KB

页数:36页

时间:2018-12-20

基于vhdl数字时钟设计说明书_第1页
基于vhdl数字时钟设计说明书_第2页
基于vhdl数字时钟设计说明书_第3页
基于vhdl数字时钟设计说明书_第4页
基于vhdl数字时钟设计说明书_第5页
资源描述:

《基于vhdl数字时钟设计说明书》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、数字时钟设计姓名唐浩月学号2903101013日期2011/7/3地点科A30416【摘要】本实验旨在用数字型号设计出时钟,并使用Modelsim进行仿真。【正文】1.实验任务与原理1.1任务指标对于时钟信号,最基本的要求是具有相关的时,分,秒计数功能。每分钟有60秒,每小时有60分钟,每天4小时,并以此为周期,循环往复。此外,本设计中加入了整点自动报时功能,手动校准等功能,并且在外部输出采用了较为高效的动态扫描显示。1.2功能需求(1)能进行对时分秒的计数,并显示出正确的十进制数字。(2)能在与标准时间不同时候进行手动校正。(3)采用动态扫描作为外部显示1.3原理阐述(1)数字时钟实现原理

2、本设计中的数字时钟的核心部件为计数器,D触发器和分频器,外部显示由数码管实现。由振荡器产生的固定频率的秒脉冲经由秒计数前进行计数,秒计数器没计数60次调整一次电平,作为分计数器的输入。同理,分计数器每记数60次所改变一次电平的输出为时计时器的输入。在校准信号的设计时,对于某一计数器的校准可以只使得该16计数器的使能端接高电平,其余分析同上。设计的整体框图如下:2.设计思路,方法及方案2.1系统功能需求分析分频电路用于产生计数电路秒脉冲所需的周期信号,三个计数器分别针对时分秒进行计数,译码显示控制电路用于外部输出十进制数字,此处采用动态扫描。校准电路是针对分和时的时间不准确时,进行校准的功能模

3、块。本系统主要包含分频,分(秒)计数,小时计数,校准,动态显示这几个模块,最后通过图形设计输入的方式将设计好的各模块调入,形成顶层原理图,并进行仿真。4.FPGA模块程序设计4.1提交模块VHDL程序由于程序较长,见附录。(由于动态扫描在自由设计之2中已经详细进行了论述,故此处不再重复程序)5.结束语5.1故障分析处理在同一坐标轴上,同时对秒时分计数,可以清楚的看到。但是16如果用同种方法对日期,月份计数,则需要更高的精确度,并且需要更快更准的进行校正。所以本次试验设计中并未加入对日期,月份,年份的计数。在今后的改进方案中会有所增加。5.2收获及改进意见(1)对VHDL和modesim有了进

4、一步的认识。(2)对波形的调试仿真有了一定的经验。(3)了解了VHDL语言,接触了初级的的硬件描述性语言。6.附录-----------------------------------分频模块---------------------------------------------------------------------------------------------------------------------------Company:--Engineer:----CreateDate:15:32:1007/03/2011--DesignName:--ModuleName:fe

5、npin-Behavioral--ProjectName:--TargetDevices:--Toolversions:--Description:----Dependencies:----Revision:--Revision0.01-FileCreated--AdditionalComments:------------------------------------------------------------------------------------libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_ARITH.A

6、LL;useIEEE.STD_LOGIC_UNSIGNED.ALL;----Uncommentthefollowinglibrarydeclarationifinstantiating----anyXilinxprimitivesinthiscode.--libraryUNISIM;16--useUNISIM.VComponents.all;entityfenpinisPort(clk:inSTD_LOGIC;clr:inSTD_LOGIC;cnt:bufferSTD_LOGIC);endfenpin;architectureBehavioraloffenpinisbeginprocess(

7、clr,clk)beginif(clr='0')thencnt<='0';elsif(clk'eventandclk='0')thenif(cnt='1')thencnt<='0';elsecnt<='1';endif;endif;endprocess;endBehavioral;----------------------------------分秒计数模块-------------------------

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

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

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