数字钟设计Word格式.docx
- 文档编号:18601041
- 上传时间:2022-12-29
- 格式:DOCX
- 页数:25
- 大小:121.18KB
数字钟设计Word格式.docx
《数字钟设计Word格式.docx》由会员分享,可在线阅读,更多相关《数字钟设计Word格式.docx(25页珍藏版)》请在冰豆网上搜索。
(4)数字钟要求具有时、分、秒的计时功能;
(5)能进行24/12小时制计时模式切换;
(6)具有校时设置和清除功能,能够对“分”、“小时”进行调整;
(7)具有整点报时功能,在59分51秒、53秒、55秒、57秒发出低音1024Hz信号,在59分59秒时发出一次高音2048Hz信号,音响持续1秒钟,在1024Hz音响结束时刻为整点。
2EDA与VHDL简介
2.1EDA技术
EDA是电子设计自动化(ElectronicDesignAutomation)的缩写,在20世纪
60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描
述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。
利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程的计算机上自动处理完成。
现在对EDA的概念或范畴用得很宽。
包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。
目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。
例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。
2.2VHDL语言
VHDL全名Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。
1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。
自IEEE-1076(简称87版)之后,各EDA公司相继推出自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。
1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,简称93版。
VHDL和Verilog作为IEEE的工业标准硬件描述语言,得到众多EDA公司支持,在电子工程领域,已成为事实上的通用硬件描述语言。
VHDL主要用于描述数字系统的结构,行为,功能和接口。
除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。
VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。
这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。
3数字钟设计原理
数字钟是一个将“时”、“分”、“秒”显示于人的视觉器官的计时装置,它的计时周期为24小时,显示满刻度为23时59分59秒。
将标准的秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。
“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。
“时计数器”采用24进制计时器,可实现对一天24小时的累计。
3.1计时∕校时模块的设计
计时∕校时模式控制选择模块如图3-1所示。
图3-1计时∕校时模式控制选择模块图
当CHS=‘1’时,计数(CT);
当CHS=‘0’时,校时(AT)。
此模块的VHDL程序代码如下:
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYCHOOSEIS
PORT(CHS:
INSTD_LOGIC;
CT,AT:
OUTSTD_LOGIC);
ENDCHOOSE;
ARCHITECTUREONEOFCHOOSEIS
BEGIN
PROCESS(CHS)
BEGIN
IFCHS='
1'
THENCT<
='
;
AT<
0'
--当CHS=‘1’时,计数
ELSECT<
--当CHS=‘0’时,校时
ENDIF;
ENDPROCESS;
ENDONE;
计时/校时模块仿真波形图如图3-2所示。
图3-2计时/校时模块仿真波形
3.2校时的时/分模块的设计
校时的时/分选择模块如图3-3所示。
图3-3校时的时/分选择模块图
当EN=‘1’且HM=‘1’时,手动校时;
当EN=‘1’且HM=‘0’时,手动较分;
当EN=‘0’时,关闭手动校时/分。
ENTITYAHMIS
PORT(EN,HM:
AH:
OUTSTD_LOGIC;
AM:
ENDAHM;
ARCHITECTUREONEOFAHMIS
PROCESS(EN,HM)
BEGIN
IFEN='
THEN
IFHM='
THENAH<
AM<
ELSEAM<
AH<
ENDIF;
ENDPROCESS;
校时的时/分模块仿真波形图如图3-4所示。
图3-4校时的时/分模块仿真波形
3.324/12进制计数器模块的设计
24/12进制计数模块图如图3-5所示。
图3-524/12进制计数模块图
当MD=‘1’时,为24进制计数;
当MD=‘0’时,为12进制计数。
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYCOUNTER24IS
PORT(CP,EN,CLR,MD:
HOUT:
OUTSTD_LOGIC_VECTOR(4DOWNTO0));
ENDCOUNTER24;
ARCHITECTUREONEOFCOUNTER24IS
BEGIN
PROCESS(CP,EN,CLR)
VARIABLECQI:
STD_LOGIC_VECTOR(4DOWNTO0);
BEGIN
IFCLR='
THENCQI:
=(OTHERS=>
'
);
ELSIFCP'
EVENTANDCP='
THEN
IFMD='
ANDCQI<
23THENCQI:
=CQI+1;
ELSIFMD='
ANDCQI<
11THENCQI:
ELSECQI:
HOUT<
=CQI;
24/12进制计数器仿真波形图如图3-6所示。
图3-624/12进制计数器仿真波形
3.4分计数器模块的设计
分计数器模块图如图3-7所示。
图3-7分计数器模块图
当EN=‘1’时,来一个CP进行一次计数,当MOUT计数到59时产生进位CQ。
ENTITYCOUNTER60IS
PORT(CP,EN,CLR:
CQ:
MOUT:
OUTSTD_LOGIC_VECTOR(5DOWNTO0));
ENDCOUNTER60;
ARCHITECTUREONEOFCOUNTER60IS
STD_LOGIC_VECTOR(5DOWNTO0);
IFCQI<
59THENCQI:
IFCQI=59THENCQ<
ELSECQ<
MOUT<
分计数器模块仿真波形图如图3-8所示。
图3-8分计数器模块仿真波形
3.5秒计数器模块的设计
秒计数器模块图如图3-9所示。
图3-9秒计数器模块图
当EN=‘1’时,来一个CP进行一次计数,当SOUT计数到59时产生进位CQ。
ENTITYCOUNTER60_1IS
CQ:
SOUT:
ENDCOUNTER60_1;
ARCHITECTUREONEOFCOUNTER60_1IS
PROCESS(CP,EN,CLR)
SOUT<
秒计数器模块仿真波形图如图3-10所示。
图3-10秒计数器模块仿真波形
3.6小时译码模块的设计
小时译码模块图如图3-11所示。
图3-11小时译码模块图
LED7S0计数小时的个位,LED7S1计数小时的十位。
ENTITYDECL7SIS
PORT(HOUT:
INSTD_LOGIC_VECTOR(4DOWNTO0);
LED7S0:
OUTSTD_LOGIC_VECTOR(6DOWNTO0);
LED7S1:
OUTSTD_LOGIC_VECTOR(6DOWNTO0));
END;
ARCHITECTUREONEOFDECL7SIS
PROCESS(HOUT)
CASEHOUTIS
WHEN"
00000"
=>
LED7S0<
="
0111111"
LED7S1<
00001"
0000110"
00010"
1011011"
00011"
1001111"
00100"
1100110"
00101"
1101101"
00110"
1111101"
00111"
0000111"
01000"
1111111"
01001"
1101111"
01010"
01011"
01100"
01101"
01110"
01111"
10000"
10001"
10010"
10011"
10100"
10101"
10110"
10111"
11000"
11001"
11010"
11011"
WHEN"
11100"
11101"
11110"
WHENOTHERS=>
NULL;
ENDCASE;
小时译码模块仿真波形图如图3-12所示。
图3-12小时译码模块仿真波形
3.7分钟译码模块的设计
分钟译码模块图如图3-13所示。
图3-13分钟译码模块图
MLED7S0计数分钟的个位,MLED7S1计数分钟的十位。
ENTITYDECL7S_MIS
PORT(MOUT:
INSTD_LOGIC_VECTOR(5DOWNTO0);
MLED7S0:
MLED7S1:
ARCHITECTUREONEOFDECL7S_MIS
PROCESS(MOUT)
CASEMOUTIS
WHEN"
000000"
MLED7S0<
MLED7S1<
--0
000001"
000010"
000011"
000100"
000101"
000110"
000111"
001000"
001001"
001010"
--1
001011"
001100"
001101"
001110"
001111"
010000"
010001"
010010"
010011"
010100"
--2
010101"
010110"
010111"
011000"
011001"
011010"
011011"
011100"
011101"
011110"
--3
011111"
100000"
100001"
100010"
100011"
10010
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 设计