1、 - I -通 信 工 程 专 业 课 程 设 计 任 务 书院(系) 电 信 工 程 系 专业班级 通 信 工 程 专 业 071 班 学生姓名 王飞 一、课程设计题目 数 字 钟 的 设 计 二、课程设计工作自 2010 年 3 月 1 日 起至 2010 年 3 月 19 日止三、课程设计进行地点: 电 信 工 程 系 实 验 室 四、课程设计的内容要求:设计一个数字时钟,要求显示时(2 位),分( 2 位),秒(2 位),具体要求是:具有时分秒计数显示功能,以 24 小时循环计时;数码管动态显 示时,分,秒;具有清零,调节小时,分钟,以及整点报时 指 导 教 师 系 (教 研 室 )
2、通 信 工 程 教 研 室 接 受 任 务 开 始 执 行 日 期 2010 年 3 月 1 日 学 生 签 名 - II -基于 VHDL 的数字钟的设计与分析魏丽娟(陕西理工学院电信工程系通信 071 班,陕西 汉中 723003)指导教师:魏瑞摘 要随着基于 CPLD 的 EDA 技术的发展和应用领域的扩大与深入,技术在电子信息,通信,自动控制用计算机等领域的重要性日益突出。作为一个学习通信工程专业的学生,我们必须不断的了解更多的新产品信息,这就更加要求我们对 EDA 有个全面认识。本程序设计的是基于 VHDL 的数字时钟,采用 EDA 作为开发工具,VHDL 语言为硬件描述语言,QUA
3、RTUSII 作为程序的运行平台,所开发的程序经过调试运行,波形仿真验证,初步实现了设计目标。本程序使用的硬件描述语言VHDL,可以大大降低了硬件数字系统设计的入门级别,让人感觉就是 C 语言的亲近。通过本次的课程设计,不但使同学们进一步了解 EDA 技术在实际中的应用,也使同学们对 EDA 的综合应用有了更深一步的应用,这次的课程设计给同学们以后的学习与工作中有了一个全面的指导作用. 关 键 词 技术,语言,数字 时钟, 报警器,译码显示,时间调节中图分类号 TN702 文献标志码 A- III -Design of cymometer displayed by LCDWei lijuan(
4、Grade07,Class1,Major of Communication Engineering,Dept. of E.I.of Shaanxi University of Technology, Hanzhong 723003,China)Tutor:WeiRuiAbstract With the CPLD-based EDA technology and expansion of application fields and in-depth, EDA technology in electronic information, communication, automatic contr
5、ol areas such as the importance of computer is increasingly prominent. As a learning communications engineering students, we must continually learn more about new product information, it is even more requires us to have a full understanding of the EDA. The program design is based on VHDL digital clo
6、ck, using EDA as a development tool, VHDL language for hardware description language, QUARTUSII as a program running platform, developed by the program to run through the debugging, waveform simulation, preliminary design goals achieved. This program uses the hardware description language VHDL, can
7、greatly reduce the hardware of the entry-level digital system design, people feel that is closer to C language. Through this curriculum design, not only the students a better understanding of EDA technology in practical application, but also so that students have a comprehensive application of EDA d
8、eeper applications, this course designed for students to study and work after China has a comprehensive guide.Key words EDA Technology VHDL language Digital Clock Alarm Decode displayTime DebuggingCLC TN702 - 4 -目 录I摘要III IIAstract.IV1.绪论.21.1 课题背景31.2 系统总体设计42.单元模块的设计.72.1 秒计数器的模块.72.2 分计数器的模块.82.3
9、 时计数器的模块.102.4 整点报时器模块.122.5 调时调分模块.152.6LED 显示译码器模块.173.顶层模块设计.194.结论27参考文献.26附录.30- 5 -1 绪 论- 6 -2 数字钟是一种用数字电路实现时,分,秒计时的装置,与机械性时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。数字中从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。因此,我们此次设计与制作数字钟就是为了了解数字钟的原理,从而学会制作数字钟,而且通过数字钟的制作进一步了解各种在制作中用到的中小规模集成电路的作用及实现方法。且由于数字钟包括组合逻
10、辑电路和时序电路,通过它们可以进一步学习与掌握各种组合逻辑电路和时序电路的原理与使用方法。1.1 课题背景EDA 技术的初级培训主要帮助同学们尽快掌握语言的开发流程和设计方法,以工程实践为例,循序渐进的学习的集成开发环境,开发流程,以及硬件电路设计等知识。每次课程都匹配有相关实践训练,每个实践题目都可以通过编程实现编译仿真,再下载到以为主芯片的实验箱上进行验证,学生们可以更好的理解并消化课堂知识,工程实践水平会得到迅速提高。下面我们来具体介绍一下 EDA 技术的有关内容.是电子设计自动化(lcctronic Design Automation)的缩写,是 90 年代初从 CAD(计算机辅助设备
11、) ,CAM(计算机辅助制造),CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。EDA 技术是以计算机为工具,根据硬件描述语言 HDL 完成的设计文件,自动的完成逻辑编译,化简,分割,综合及优化,布局布线,仿真以及对特定目标芯片的适配编译和编程下载等工作,典型的 EDA 工具中必须包含两个特殊的软件包,即综合器和适配器,综合器的功能就是将设计者在 EDA 平台上完成的针对某个系统项目的 HDL 原理图或状态图形描述,针对给定的硬件系统组件,进行编译,优化,转换和综合,最终获得我们欲将实现的功能的描述文件。综合器在工作前,必须给定要实现的硬件结构参数,它的功能就是将软件描述与
12、给定的硬件结构用一定的方式联系起来,也就是说综合器是软件描述与硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换成低级的,可与目标器件 CPLD 相映射的网表文件。适配器的功能是将由综合器产生的网表文件配置与指定的目标器件中,产生最终的下载文件。适配器所选的目标器件(CPLD 芯片)必须包含于在综合器中已指定的目标器件系列。硬件描述语言 HDL 是相对于一般的计算机软件语言,如:C,PASCAL 而言的HDL 语言使用与设计硬件电子系统的计算机语言,它能描述电子系统的逻辑功能,电力结构和连接方式,设计者可利用 HDL 程序来描述所希望的电子系统,规定器件结构特征和电路的行为方式;然后利用
13、综合器和适配器将此程序编程能控制和 CPLD 内部结构,并实现相应功能的门级或更底层的结构网表文件或下- 7 -载文件。硬件描述语言 VHDL 的英文全名是 Very-High-Speed Integrated Circuit Hardware Description Language。它主要用于描述数字系统的结构,行为,功能和接口。除了还有很多硬件特征的语句外,VHDL 的语言形式和描述风格与句法是十分类似与一般的高级计算机语言。VHDL 的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分) ,既涉及实
14、体的内部功能和算法完成部分。在对一个设实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体内外部分的概念是 VHDL 系统设计的基本点。应用VHDL 进行工程设计的优点是多方面的。其优点是:与其它硬件描述语言相比,VHDL 具有更强的行为描述能力,从而解决了他成为系统设计领域最佳的硬件描述语言,强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证;VHDL 丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能和可行性,及时可对设计进行仿真模拟;VHDL 语句的行为描述能力和程序结构决定了它具有支持大规
15、模设计的分解和已有设计的再利用功能,符合市场需求的大规模系统高效,高速的完成必须有甚至多个代发组共同并行工作才能实现;对于 VHDL 完成的一个确定的设计,可以利用 EDA 工具进行逻辑综合和优化,并自动的把 VHDL 描述设计转变成门级网表;VHDL 对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。.系统总体设计如下图所示为 EPM7000S芯片内的系统方块图 . 该系统框图由八个模块组成,分别为:秒、分、时计数模块,分隔符显示模块,整点、整天报时模块,LED 动态显示扫描模块,LED 显示译码器模块组成。其工作原理是 :基准脉
16、冲输入信号同时加到秒、分、时、分隔符的脉冲输入端,采用并行计数的方式,秒的进位接到分的使能端上,秒的使能借到分隔符的使能上,分得接到时的使能端上,完成秒、分、时和分隔符的循环计数。整点报时是根据分的 A、B 输出同时为 0 时,整点报时模块输出高电平控制报时。整天报时是根据时、分得输出都为 0 时而输出高电平控制整天报时的。LED 显示扫描模块根据输入的扫描信号 CKDSP 轮流选通秒、分、时、分隔符的 8 位八段数码管,LED 显示译码器完成计数器输出的 BCD 的译码。- 8 -系统设计方案方案一:数字钟实际上是一个对标准频率(1HZ)进行计数的计数电路。由于计数的起始时间不可能与标准时间
17、(如北京时间)一致,故需要在电路上加一个校时电路,同时标准的 1HZ 时间信号必须做到准确稳定。通常使用石英晶体振荡器电路构成数字钟。总体方案设计如下图所示。- 9 -方案二:鉴于我们通信班级已经学习了几种工具语言,我们也可以通过软件编程(例如通过语言或者 EDA 编程语句)来实现本次要的数字时钟。方案比较:对比方案一与方案二,我们组决定用第二种方案来实现本次的数字时钟,原因有:1,EDA 语言我们去年实验经常使用,比较熟悉,通过编程语言实现对数字钟的控制相对硬件来说比较容易,更何况其连线简单易于校验。2,硬件实现起来所用的芯片比较多,连线过于麻烦,而且出现错误后不易检查。- 10 -2 单元
18、模块的设计2.1.秒计数器模块LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY second ISPORT(clk,reset,setmin:IN STD_LOGIC;enmin:OUT STD_LOGIC;daout:out std_logic_vector(6 downto 0);END entity second;ARCHITECTURE fun OF second ISSIGNAL count:STD_LOGIC_VECTOR(6 downto 0);SIGNAL enmin_
19、1,enmin_2:STD_LOGIC;BEGINdaout=“10“)thencount1=“101“)thencountdaoutdaout(3)daoutdaout(3)daoutdaout(3 downto 2)reset,clk=clk,setmin=setmin,enmin=enmin_re,daout=second_daout);u2:minute port map(clk=enmin_re,clk1=clk,reset=reset,sethour=sethour,enhour=enhour_re,daout=minute_daout);u3:hour port map(clk=
20、enhour_re,reset=reset,daout=hour_daout);u4:alert port map(clk=clk,- 23 -dain=minute_daout,speak=speaker,lamp=lamp);u5:seltime port map(clk1=clkdsp,reset=reset,sec=second_daout,min=minute_daout,hour=hour_daout,daout=seltime_daout,dp=dpout,sel=sel);u6:deled port map(num =seltime_daout,led=ledout);end
21、a;编译过程:仿真图如下:- 24 - 25 -4 结论本次试验我们组做出的数字时钟能够正确的报警,显示时间,但是对于调时调分功能不能正确显示经过努力,简易电子时钟的设计基本上算是完成了,在整个设计中,我最大的体会就是:难!我们在本次的课程设计中,发现了很多问题,同时做起来也很难不顺手,看着简单的电路,要动手把它设计出来实非易事,主要原因是我们没有经常动手设计电路,这就要求我们在以后的学习中,应该注意到这一点,更重要的是我们要学会把从书本上学到的知识和实际电路联系起来,这不论对我们以后的学习还是就业,都会起到很大的促进和帮助,我相信,通过这次的课程设计,在下一阶段的学习中我们会更加努力,力争把
22、这门课学好学精。同时通过本次课程设计,巩固了我们以前学过的专业知识,通过这次的程序设计,使我们对数字系统结构也有了更进一步的了解与认识,同时对数据库软件技术,语言等系列知识都有了一定的了解与认识。使用技术开发页面的能力也有了提高,也使我们把理论与实践从正真意义上结合了起来,考研了我们的动手能力,查阅相关资料的能力,还有组织材料的能力。通过此次实践,我们从中可以找出自己知识的不足与欠缺,以便我们在日后的学习中得以改进与提高。经过本次设计使我们对大学四年期间所学习到的知识得以进一步实践,这将对我们走出校园走向社会走向工作岗位奠定坚实的基础。- 26 -致 谢本次课程设计软件是在侯宝生老师和魏瑞老师
23、的共同指导下完成的,在此我们对他们表示非常的感谢。硬件连接上,我们班同学表现了非常好的团队合作精神,在此,我们对帮助过我们的同学表示感谢,同时也感谢陕西理工学院给我们通信班级的学生提供这次实训的机会,感谢他们为我们提供环境良好设备齐全的实验室,使得这次数字钟的设计能够顺利的完成,在此我们表示隆重的感谢。- 27 -参考文献1潘松,黄继业.VHDL 设计初步 J.EDA 技术实用教材,2009,5-29:70-82.2华成英,童诗白.集成运算放大电路J.模拟电子基础,2006,5-4:185-187.3阎石.时序逻辑电路 M.北京:高等教育出版社,2008.4李建东,郭梯云,邬国扬.移动通信.第
24、四版.M.西安:西安电子科技大学出版社,2006.- 28 -附 录1.系统设计方案2. 秒计数器仿真图3.分计数器仿真图4.是计数器仿真图- 29 -5.整点报时仿真图6.调时调分仿真图7.LED 显示译码仿真图- 30 -8.顶层模块仿真图9.硬件实现管脚如下所示:Clk chip :input pin =83En chip ;input pin =12Del7s00 chip :output pin =15Del7s01chip :output pin =16Del7s02chip :output pin =17Del7s03chip :output pin =18Del7s04chip
25、 :output pin =19Del7s05chip :output pin =20Del7s06chip :output pin =22Del7s10chip :output pin =24Del7s11chip :output pin =25Del7s12chip :output pin =27Del7s13chip :output pin =28Del7s14chip :output pin =29Del7s15chip :output pin =30Del7s16chip :output pin =31Del7s20chip :output pin =33Del7s21chip :output pin =34Del7s22chip :output pin =35Del7s23chip :output pin =36Del7s24chip :output pin =37Del7s25chip :output pin =39