欢迎来到天天文库
浏览记录
ID:32755634
大小:244.99 KB
页数:9页
时间:2019-02-15
《eda课程设计报告格式00》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、EDA课程设计报告题目数字钟的设计所在学院电信学院专业班级电信09301学生姓名陈浩指导教师王碧芳完成日期20门年5月23数字钟的设计一、目的1、熟悉数字电路的设计;2、加深对硬件描述语言VHDL的了解和运用;3、熟悉数字钟的工作方式;4、实现数字钟的一些基本功能,能进行正常的时、分、秒计时功能,能实现整点报时。二、设计实现1、电路2、端口说明:s[5..0]信号对应6个控制键,分别对应秒个位,秒十位,分个位,分十位,小时个位,小时十位。rst信号为复位信号,在系统初始化时使用,elk为系统时钟,c
2、lr信号为清零信号。sound信号连接扬声器,产生鸣叫。seel【6..0】表示秒十位secO[6..0]表示秒个位mini[6..0]表示表示分十位minO【6..0】表示分个位hourl[6..0]表示表示小时十位hourO[6..0]表示小时个位3、各部件及顶层文件全程编译、打包(1)coni模块:实现对按键数的统计,按键按一次,计数器加1,如果大于9,自动回零LIBRARYIEEE;USEIEEE.STD_L0GIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.A
3、LL;ENTITYconiISPORT(s,rst:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(3DOWNTO0));END;ARCHITECTUREoneOFconiISSIGNALql:STD_L0GIC_VECT0R(3DOWNTO0):BEGINPROCESS(s,rst)BEGINIFrst=TTHENql〈="0000";ELSIFs*EVENTANDs二T'THENIFql<"1001"THENql<=ql+l;ELSEql<="0000";ENDIF;ENDI
4、F;ENDprocess;q〈=ql;END;(2)、sst模块:为整点报时提供控制信号,当58min,秒为52、54、56、58时,q500输出“1”;秒为00时,qlk输出为“1”。这两个信号经过逻辑门实现报时功能LIBRARYIEEE;USEIEEE.STD_L0GIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYsstISP0RT(ml,m0,sl,s0:INSTD_L0GIC_VECT0R(3DOWNTO0);elk:INSTD_LOGIC;
5、q500,qlk:OUTSTD丄OGIC);END;ARCHITECTUREoneOFsstISBEGINPROCESS(elk)BEGINIFelk'EVENTANDelk二T'THENIFml二〃0101"ANDmO二"1001"ANDsl="0101"THENIFs0=〃0001"ors0="0011"ors0="0101"orsO二〃0111"THENq500<=T;ELSEq500<=O';ENDIF;ENDIF;IFml=z,0101z,ANDm0=〃1001"ANDsl=〃0101〃A
6、NDs0=〃1001"THENqlk<=T;ELSEqlk<=O';ENDIF;ENDIF;ENDPROCESS:END;(3)、ccc模块:对系统时钟elk输入的4MHz频率信号进行分频,产生频率分别为1000Hz、500Hz和1Hz的时钟信号。LIBRARYIEEE;USEIEEE.STD_L0GIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYcccISPORT(elk:INSTD_LOGIC;q500,qlk,qlsec:OUTSTD_LOGI
7、C);END;ARCHITECTUREoneOFcccISSIGNALx,y,z:STD_LOGIC;BEGINPROCESS(elk)VARIABLEent:INTEGERRANGE0TO1999;BEGINIFelk'EVENTANDclk=VTHENIFcnt<1999THENent:=cnt+l;ELSEent:=0;x<=N0Tx;ENDIF;ENDIF;ENDPROCESS;qlk〈二x;PROCESS(x)BEGINIFx'EVENTANDx=VTHENy<=noty;ENDIF;EN
8、DPROCESS;q500<=y;PROCESS(y)VARIABLEent:INTEGERRANGE0TO499;BEGINIFy*EVENTANDy=TTHENIFcnt<499THENent:=cnt+l;ELSEent:=0;z<=NOTz;ENDIF;ENDIF;ENDPROCESS;qlsec<=z;END;(4)sec和min模块^均为六十进制计数器,计时输出分别为秒和分的数值;huor模块为二十四进制计数器,计时输出为小时的数值。libraryIEEE
此文档下载收益归作者所有