




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2008级学生EDA课程设计 EDA课程设计报告书课题名称 多功能数字钟的设计姓 名王兴俊学 号 081220138院 系物理与电信工程系专 业电子信息工程指导教师周来秀讲师2011年 6月13日 一、 设计任务及要求:设计任务:利用Quartus II软件设计一个多功能数字钟设计要求:所设计数字钟是基于现实基础上的多功能数字钟,基本上能实现一般多功能数字钟的功能,包括翻页显示时间和日期,调整时间及日期等等,利用Quartus II强大的编程功能以及完整的仿真系统进行仿真设计,通过仿真设计校正达到设计要求 指导教师签名: 年 月 日 二、指导教师评语:指导教师签名: 年 月 日 三、成绩验收盖
2、章 年 月 日 多功能数字钟的设计王兴俊(湖南城市学院物理与电信工程系电子信息工程专业,湖南益阳,41300)1设计目的 EDA是电子设计自动化的缩写,在20世纪如年代初从计算机辅助设计、计算机辅助制造、计算机辅助测试和计算机辅助工程的概念发展而来的。传统意义上或者狭义上的EDA技术是指可编程技术,是以计算机为工具,融合了应用电子技术、计算机技术、智能化技术的最新成果而开发出的电子EDA通用软件包,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。利用
3、EDA技术进行电子系统的设计,具有以下几个特征:用软件的方式设计硬件;用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;设计过程中可用有关软件进行各种仿真;系统可现场编程,在线升级;整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。因此,EDA技术是现代电子设计的发展趋。利用EDA设计电子产品已经是势在必得了。2设计的主要内容和要求 a.数字钟能够显示年、月、天、小时、分钟、秒。在数字钟正常工作时可以 对数字钟进行快速校正,即拨动开关可对其进行校正,在数字钟正常工作 情况下,可以对其进行不断电复位,以使时、分、秒显示回零。 b.对数字钟采用层次化的方法进行设计,要求设计层次
4、清晰、合理,构成整个 设计的功能模块既可采用原理图输入法实现,也可采用文本输入法实现。 c.对设计电路进行功能仿真。 d.将仿真通过的逻辑电路下载到EDA实验系统,对其功能进行验证。3 整体设计方案基本设计方案:多功能数字钟具有时间显示和日历显示的功能,而时间模块和日历模块有很多相似的地方,如果再进行细分,则他们都着类似的模块。所以采用模块设计将大大简化多功能数字钟的程序设计。 图3.1数字钟整体设计方框图4 硬件电路的设计4.1分频器模块的设计 图4.1 分频器模块 因为试验箱上晶振为20MHz,对于秒表的计时和进行数码管的动态扫描来说,频率都太大了,因此要将20MHz进行分频处理,本次设计
5、将分成1KHz和1Hz两个频率。4.2计数器模块的设计 图4.2 计数器模块 在数字钟的设计中,计数器模块是最常见和最为通用的,在本次设计中用到了模为24,60,99,12和31五个计数器。因为他们都是大同小异的,所以这里只列出了模为24的计数器(即小时计数器)4.3动态扫描模块的设计 图 4.3 动态显示模块 因为本次课程设计有多组数据要显示,显示方式为数码管动态显示。比之于静态显示,动态显示有着不可替代的优点:占用数据线少,功耗小等特点。4.4开关选择模块的设计 图4.4开关选择模块 因为本次课程设计要实现两个功能:时间显示和日历显示,通过开关KEY来切换。4.5译码器模块的设计 图4.5
6、 译码器模块 要想将时间或日历在数码管上显示出来,译码器模块必不可少,本次课程设计使用的事共阴数码管。5 软件设计 5.1分频器模块的设计的源程序LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY FREQ IS PORT( CLK : IN STD_LOGIC; -时钟输入CLK1KHZ,CLK1HZ : BUFFER STD_LOGIC); END FREQ; ARCHITECTURE BEHAVE OF FREQ I
7、S SIGNAL CLK1MHZ : STD_LOGIC; -中转量 SIGNAL Q:STD_LOGIC_VECTOR(4 DOWNTO 0);SIGNAL Q1:STD_LOGIC_VECTOR(9 DOWNTO 0); SIGNAL Q2:STD_LOGIC_VECTOR(9 DOWNTO 0);SIGNAL DIR_FLAG : STD_LOGIC; -方向标志 BEGIN PROCESS(CLK) -把20MHZ的频率变为1MHZBEGIN IF(CLKEVENT AND CLK=1)THEN IF(Q=10011)THEN Q=00000; CLK1MHZ=1; ELSE Q=Q+
8、1; CLK1MHZ=0; END IF; END IF; END PROCESS;PROCESS(CLK1MHZ) IS -把1MHZ的频率变为1KHZBEGIN IF(CLK1MHZEVENT AND CLK1MHZ=1)THEN IF(Q1=1111111111)THEN Q1=0000000000; CLK1KHZ=1;ELSE Q1=Q1+1; CLK1KHZ=0; END IF; END IF; END PROCESS; PROCESS(CLK1KHZ) IS -把1KHZ的频率变为1HZBEGIN IF(CLK1KHZEVENT AND CLK1KHZ=1)THEN IF(Q2=
9、1111111111)THEN Q2=0000000000; CLK1HZ=1; ELSE Q2=Q2+1; CLK1HZ=0; END IF; END IF; END PROCESS; END BEHAVE;5.2计数器模块设计程序 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY HOUR IS -实体,定义输入和输出PORT(CLK,EN:IN STD_LOGIC; -输入时钟/高电平有效的使能信号CO :OUT STD_LOGIC; H1,H0:OUT STD_LOGIC_
10、VECTOR(3 DOWNTO 0); -时高位/低位END HOUR;ARCHITECTURE HOUR_ARC OF HOUR IS -结构体BEGINPROCESS(CLK)VARIABLE CNT1,CNT0:STD_LOGIC_VECTOR(3 DOWNTO 0); -记数BEGINIF CLKEVENT AND CLK=1 THEN -上升沿触发IF EN=1 THEN -同时“使能”为1IF CNT1=0010 AND CNT0=0011 THENCNT1:=0000; -高位/低位同时为0时CNT0:=0000;CO=1;ELSIF CNT01001 THEN -低位小于9时,
11、低位记数累加CNT0:=CNT0+1;CO =0;ELSECO =0;CNT0:=0000;CNT1:=CNT1+1; -高位记数累加END IF;END IF;END IF;H1=CNT1;H0=CNT0;END PROCESS;END HOUR_ARC;5.3动态扫描模块设计程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY SELTIME IS PORT( CLK:IN STD_LOGIC; SEC1,SEC0,MIN1
12、,MIN0,H1,H0:IN STD_LOGIC_VECTOR(3 DOWNTO 0); DAOUT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); SEL:OUT STD_LOGIC_VECTOR(2 DOWNTO 0); END SELTIME;ARCHITECTURE FUN OF SELTIME IS SIGNAL COUNT:STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN SEL=111) THEN COUNT=000; ELSE COUNTDAOUTDAOUTDAOUTDAOUTDAOUTDAOUTDAOUTDAOUT=SEC0; END
13、 CASE; END PROCESS;END FUN;5.4开关选择模块的设计程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SWITCH IS -实体,定义输入和输出 PORT(SECOND,DAY:IN STD_LOGIC_VECTOR(3 DOWNTO 0);DOUT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);SELS,SELD:IN STD_LOGIC_VECTOR(2 DOWNTO 0);SELOUT:OUT STD_LOGIC_VECTOR(2
14、 DOWNTO 0);KEY: IN STD_LOGIC);END SWITCH;ARCHITECTURE BEHAVE OF SWITCH IS -结构体BEGINPROCESS(KEY)BEGINIF (KEY =1)THEN DOUT= SECOND;SELOUT = SELS;ELSEDOUT= DAY;SELOUT QQQQQQQQQQQ”“”“”“”完成节点选择,点击OK完成节点添加。选择仿真时间:视电路实际要求确定仿真时间长短。在当前主菜单“Edit”的下拉菜单中选中“End Time”,弹出结束时间对话框,在提示窗“Time”中输入仿真结束时间,即可修改仿真时间。本次设计仿真时
15、间设置为1ms,用同样的方法设置网格的大小,本次设计仿真设置为200ns。对有关的初值进行设置,设置完成后保存文件后进行波形仿真直到本实验电路的仿真结果报告中无错误、无警告。最后仿真效果如图6.2所示,图6.1为电路原理图。 图6.1多功能数字钟电路原理图 图6.2数字钟仿真结果7 使用说明 本人设计的数字钟电路主要由译码显示器、“年”,“月”,“日”,“时”,“分“秒”计数器等组成,其中clk为晶振(频率为20M)输入端,clrsecond为秒清零开关,setmimute为分钟调节开关,sethour为小时调节开关,setday为日调节开关,setmonth为月调节开关,setyear为年调
16、节开关,key为日历显示和时间显示切换开关。dout6.0为数码管段选输出端,selout2.0为数码位选输出端。8 设计总结对于此次多功能数字钟的设计,我感慨颇多。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,我学到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。在实验中,通过查阅数字逻辑设计实验与EDA技术、VHDL程序实例等相关资料,不仅对这种语言更加了解,也提高了自己的实际动手能力和独立思考的能力。在设计的过程中遇到了很多问题,同时在设计的过程中发现了自己的不足之处,对所学过的知识理解得不够深刻,掌握得不够牢固,对程序中出现的错误如何修改,怎样生成元件还不是很熟为了这次课程设计,相当于把以前所学过的知识重新温习了一遍。在这两个星期的学习中,通过自己的学习和与同学的讨论,学会了如何来设计一个电路和元件有了深刻的理解,并巩固了对Quartus软件的应用,也终于觉得平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有了更加清楚的认识,同时,对未来有了更多的信心,也感谢
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南省天壹名校联盟2025届高三5月适应性考试(英语)
- 企业业务合同标准文本使用
- 从可持续发展角度谈EPS再生料在医疗包装中的重要性
- 2024年家政保洁项目资金需求报告代可行性研究报告
- 个人投资项目合同范例
- 医疗行业的新机遇基于大数据的健康管理与疾病预测研究报告
- 公司加盟协议合同范例
- 亚马逊仓库转让合同范例
- 医疗设备供应链的效率与质量控制
- 初中化学燃烧及其利用寒假知识点总结模版
- 2025-2030中国核电用钢行业市场发展分析及发展前景与投资战略研究报告
- 护理核心制度培训与质量提升
- 退行性腰椎滑脱症诊疗指南(2025年版)课件
- 车间冲压模具管理制度
- 2025年春初中语文七年级下册教案设计 15 青春之光
- 2021碳纤维复合芯导线配套金具技术条件 第2部分:接续管
- 语言学概论知到课后答案智慧树章节测试答案2025年春湖州师范学院
- 2025-2030中国印刷电路板(PCB)行业市场现状供需分析及投资评估规划分析研究报告
- 天津东疆综合保税区管理委员会招聘笔试真题2024
- 2025年离婚协议书模板模板
- 学校环境对儿童成长的影响研究
评论
0/150
提交评论