欢迎来到天天文库
浏览记录
ID:61486502
大小:169.00 KB
页数:10页
时间:2021-02-05
《基于VHDL语言的数字秒表的实现.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、1设计方案1.1?系统功能要求(1)具有时钟秒表系统功能要求显示功能,用6个数码管分别显示时、分、秒;计时范围为:00:00:00~23:59:59。(2)计时精度是1s;(3)具有启/停开关,复位开关,可以在任何情况下使用。1.2?总体框图根据系统设计要求,系统的底层设计主要由六十进制计数器模块、二十四进制计数器模块、分频模块、LED显示模块组成。系统顶层设计图如图所示:图中左边为三个输入信号en,clk,reset;分为启/停开关,时钟信号和复位开关。中间是从上倒下时count24,count60,count60,fenpinqi;右边是clock1和
2、输出信号wei[3..0],led[6.0]。2?模块功能设计由六十进制计数器模块、二十四进制计数器模块、分频模块执行计时功能,输入信号是256Hz,通过分频后为1hz,时钟信号是1Hz作为秒表的秒输入,秒为60进制计数器,分也为60进制计数器,小时采用二十四进制计数器,各级进位作为高位的使能控制。2.1六十进制计数器模块该模块部分VHDL源程序如下:LIBRARYieee;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;ENTITYcount60ISPORT(en,Reset,clk:i
3、nSTD_LOGIC;qa:outSTD_LOGIC_VECTOR(3DOWNTO0);qb:outSTD_LOGIC_VECTOR(3DOWNTO0);rco:OUTSTD_LOGIC);ENDcount60;ARCHITECTUREaOFcount60ISBEGINprocess(clk)variabletma:STD_LOGIC_VECTOR(3DOWNTO0);variabletmb:STD_LOGIC_VECTOR(3DOWNTO0);beginIfReset='0'thentma:="0000";tmb:="0000";elsifclk'eve
4、ntandclk='1'thenifen='1'thenrco<=tmb(2)andtmb(0)andtma(3)andtma(0);iftma="1001"thentma:="0000";iftmb="0101"thentmb:="0000";elsetmb:=tmb+1;endif;elsetma:=tma+1;endif;endif;endif;qa<=tma;qb<=tmb;endprocess;ENDa;2.2二十四进制计数器模块该模块部分VHDL源程序如下:LIBRARYieee;USEieee.std_logic_1164.ALL;USEie
5、ee.std_logic_unsigned.ALL;ENTITYcount24ISPORT(en,Reset,clk:inSTD_LOGIC;qa:outSTD_LOGIC_VECTOR(3DOWNTO0);qb:outSTD_LOGIC_VECTOR(3DOWNTO0));ENDcount24;ARCHITECTUREa1OFcount24ISBEGINprocess(clk)variabletma:STD_LOGIC_VECTOR(3DOWNTO0);variabletmb:STD_LOGIC_VECTOR(3DOWNTO0);beginIfReset
6、='0'thentma:="0000";tmb:="0000";elseifclk'eventandclk='1'thenifen='1'theniftma="1001"thentma:="0000";tmb:=tmb+1;elsiftmb="0010"andtma="0011"thentma:="0000";tmb:="0000";elsetma:=tma+1;endif;endif;endif;endif;qa<=tma;qb<=tmb;endprocess;ENDa1;2.3分频器模块该模块部分VHDL源程序如下:LIBRARYIEEE;USEIEE
7、E.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYfenpinqiISPORT(CLK,RST:instd_logic;CLK_OUT:outstd_logic);ENDfenpinqi;ARCHITECTUREbehavOFfenpinqiISsignalclk_data:std_logic;SIGNALCNT6:INTEGER:=0;BEGINPROCESS(CLK)BEGINIFRST='0'THENCNT6<=0;ELSIFCLK'EVENTANDCLK='1'THENIFCNT6=
8、2THENclk_data<=NOTclk_data;CNT6<=
此文档下载收益归作者所有