ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:119.25KB ,
资源ID:8668974      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8668974.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(EDA课程设计数字时钟.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

EDA课程设计数字时钟.docx

1、EDA课程设计数字时钟泰山学院 2011级电子信息科学与技术本科班EDA课程设计数字时钟姓名:胡乃宽学号:2011080032学院:物电学院班级:2011级电本任课老师:王春玲设计时间:2013-11-21摘要:以现场可编程逻辑器件(FPGA)为设计载体,以硬件描述语言(VHDL)为主要表达方式,以Q开发软件和EDA试验箱为设计工具,阐述了数字时钟的工作原理和软件实现方法。并通过对所设计的数字时钟进行了时序仿真,使我们小组成员掌握综合性电路的设计、仿真、下载、调试方法,并能写出简单的EDA实验程序。作为学习电子的本科生,我们必须不断接受先进的电子知识,这就要求我们努力学好EDA这门课程,并熟练

2、掌握相关软件及硬件的操作。除此之外,我们在课下还要不断练习,争取掌握一定的EDA编程方法,并且利用现有的条件不断实践。这样一来,我们可以学好EDA这门课程。此次课程设计不是我们EDA课程的结束,而是一个继续学习EDA相关课程的开始。关键词:Q开发软件;数字时钟;EDAAbstract: Field programmable logic device (FPGA) design support , hardware description language (VHDL) as the main expression to Q chamber for the development of soft

3、ware and EDA design tools , digital clock describes the working principle and software implementation . As e- learning undergraduate , we must continue to accept advanced electronic knowledge , which requires us to strive to learn EDA this course , proficiency in relevant software and hardware opera

4、tions. In addition, we also continue to practice in class, fight master certain EDA programming methods , and the use of the existing conditions of continuous practice . In this way , we can learn EDA this course .The course design is not the end of our EDA programs , but a continuing study began ED

5、A related courses . Keywords : Q software development ; digital clock ; EDA一 课程设计任务及要求1.1实验目的(1)掌握VHDL语言的简单运用(2)掌握VHDL编程设计方法及会简单编程(3)掌握QII的简单操作并会使用EDA实验箱(4)掌握一个基本EDA课程设计的操作(5)掌握综合性电路的设计、仿真、下载、调试方法(6)学会使用试验箱1.2功能设计(1)有时、分、秒计数显示功能,小时为24进制,分钟和秒为60进制以24小时循环计时(2)部分显示功能(3)具有整点报时功能1.3实验仪器(1)PC机1台(2)QII软件1套

6、二 设计思想1.1功能设计概述(1)时、分、秒计时器 时、分、秒计时器分别有三个程序驱动,其中时计时器为一个24进制计数器,分、秒计时器均为60进制计数器。当秒计时器接受到一个秒脉冲时,秒计数器开始从1计数到60,每当秒计数器数到00时,就会产生一个脉冲输出送至分计时器,此时分计数器数值在原有基础上加1;每当分计数器数到00时,就会产生一个脉冲输出送至时计时器,此时时计数器数值在原有基础上加1。即当数字钟运行到23点59分59秒时,当秒计时器在接受一个秒脉冲,数字钟将自动恢复到00点00分00秒。(2)部分显示功能显示功能用一个子程序驱动,在这里我们只做了时间显示功能。我们用的WHEN,CAS

7、E语句对两个LED灯管进行赋值(WHEN,ELSE无法实现)。1.2可实现的原理图(1)简单的数字时钟原理图 图一 简单的数字时钟原理图(2)具有显示功能的数字时钟原理图 图二 具有显示功能的数字时钟原理图 (3)具有报警功能和显示功能的数字时钟原理图_ 图三 具有报警功能和显示功能的数字时钟原理图三 实验步骤概述1打开 Q,单击“File”菜单,选择 FileNew Project Wizard;分别输入项目的工作路径、项目名和实体名,单击Finish。2.单击“File”菜单,选择New,弹出小对话框,双击“VHDL File,即选中了文本编辑方式。在出现的“Vhdl1.vhd”文本编辑窗

8、中键入VHDL程序,输入完毕后,选择FileSave As,即出现“Save As”对话框。选择自己建立好的存放本文件的目录,然后在文件名框中键入文件名,按“Save”按钮。3. 建立工程项目,在保存VHDL文件时会弹出是否建立项目的小窗口,点击“Yes”确定。即出现建立工程项目的导航窗口,点击“Next”,最后在出现的屏幕中分别键入新项目的工作路径、项目名和实体名。注意,原理图输入设计方法中,存盘的原理图文件名可以是任意的,但VHDL程序文本存盘的文件名必须与文件的实体名一致,输入后,单击“Finish”按钮。4.单击工具条上的编译符号开始编译5. 开始进行时序仿真。建立波形文件:选择 Fi

9、leNew,在New窗中选中“Other File”标签。在出现的屏幕中选择“Vector Waveform File”项出现一新的屏幕。在出现的新屏幕中,双击“Name”下方的空白处,弹出“Insert Nod or Bus”对话框,单击该对话框的“Node Finder”。在屏幕中的 Filter 中选择 Pins,单击“List”。而后,单击“”,所有输入/输出都被拷贝到右边的一侧,这些正是我们希望的各个引脚,也可以只选其中的的一部分,根据实际情况决定。然后单击屏幕右上脚的 “OK”。在出现的小屏幕上单击“OK”。 6.设定仿真时间宽度。选择 Edit End time选项,在End t

10、ime选择窗中选择适当的仿真时间域,以便有足够长的观察时间。7.波形文件存盘。选择FileSave as 选项,直接存盘即可。8.运行仿真器。在菜单中选择项,直到出现,仿真结束。四 实验步骤1.1单元模块设计(1)秒计数模块试验程序(根据参考程序修改而成)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY second ISPORT( clk1,reset1:STD_LOGIC; enmin:OUT STD_LOGIC; daout1:OUT STD_LOGIC_VECTOR(6 DOW

11、NTO 0);END ENTITY second;ARCHITECTURE fun OF second ISSIGNAL count:STD_LOGIC_VECTOR(6 DOWNTO 0); BEGIN daout1=count; PROCESS(clk1,reset1) BEGIN IF(reset1=0)THEN count=0000000; ELSIF(clk1event and clk1=1)then IF(count16#3C#)then IF(count=0111011)then enmin=1; count=0000000; ELSE count=count+1; enmin=

12、0; END IF; END IF; END IF; END PROCESS;END fun;仿真结果: 图四 秒计数模块仿真结果(2)分计数模块试验程序(根据参考程序修改而成)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY minute IS PORT(clk2,reset2:IN STD_LOGIC; enhour:OUT STD_LOGIC; daout2:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END ENTITY minute ;ARCHITECT

13、URE fun OF minute IS SIGNAL count :STD_LOGIC_VECTOR (6 DOWNTO 0); BEGIN -enmin_2由clk调制后的手动调时脉冲信号串 daout2=count; PROCESS(clk2,reset2) BEGIN IF(reset2=0) THEN -若reset为0,则异步清零 count=0000000; ELSIF(clk2event and clk2=1)THEN -否则,若clk上升沿到 IF(count 16#3C#) THEN -又若count小于16#60#,即60 IF(count=0111011) THEN-又

14、若已到59D enhour=1; -则置进位为1 count=0000000; -count复0 ELSE count=count+1; -若count未到59D,则加7,即作加6校正 enhour=0; END IF; -使前面的16#60#的个位转变为8421BCD的容量 END IF; -END IF(reset=0) END IF; END process;END fun;仿真结果: 图五 分计数模块仿真结果(3)时计数模块试验程序(根据参考程序修改而成)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGN

15、ED.ALL;ENTITY hour IS PORT(clk3,reset3:IN STD_LOGIC; daout3:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END ENTITY hour ;ARCHITECTURE fun OF hour IS SIGNAL count :STD_LOGIC_VECTOR (6 DOWNTO 0); BEGIN daout3=count; PROCESS(clk3,reset3) BEGIN IF(reset3=0) THEN -若reset为0,则异步清零 count=0000000; ELSIF(clk3event and c

16、lk3=1)THEN -否则,若clk上升沿到 IF(count 16#18#) THEN -又若count小于16#60#,即24 IF(count=0010111) THEN-又若已到23 count=0000000; -count复0 ELSE count=count+1; END IF; -使前面的16#60#的个位转变为8421BCD的容量 END IF; END IF; END process;END fun;仿真结果: 图六 时计数模块仿真结果(4)显示模块程序试验程序(根据参考程序修改而成)library ieee;use ieee.std_logic_1164.all;use

17、 ieee.std_logic_unsigned.all;entity xianshi is port(hour1:in std_logic_vector(6 downto 0); led1:out std_logic_vector(6 downto 0); led2:out std_logic_vector(6 downto 0);end xianshi;architecture art of xianshi is signal aaa:std_logic_vector(6 downto 0); begin aaa led2=1111110;led1 led2=1111110;led1 le

18、d2=1111110;led1 led2=1111110;led1 led2=1111110;led1 led2=1111110;led1 led2=1111110;led1 led2=1111110;led1 led2=1111110;led1 led2=1111110;led1 led2=0110000;led1 led2=0110000;led1 led2=0110000;led1 led2=0110000;led1 led2=0110000;led1 led2=0110000;led1 led2=0110000;led1 led2=0110000;led1 led2=0110000;l

19、ed1 led2=0110000;led1 led2=1101101;led1 led2=1101101;led1 led2=1101101;led1 led2=1101101;led1null; end case; end process; end art;仿真结果: 图七 显示模块仿真结果(5)报时模块试验程序(根据参考程序修改而成)library ieee;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY shizhong1 ISPORT(in1,in2,in3 : in STD_LOGIC_vector

20、(6 downto 0); clk4:in std_logic; alert:out std_logic; out1:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); END ENTITY shizhong1;architecture fun OF shizhong1 IS begin process (in1,in2,in3) begin IF(clk4event and clk4=1)then out1=in3; if(in1=0000000 and in2=0000000)then alert=1; else alertclk,reset1=reset,daout1=o

21、ut1,enmin=a);u2 : minute port map(clk2=a,reset2=reset,daout2=out2,enhour=b);u3 : hour port map(clk3=b,reset3=reset,daout3=out3);end ARCHITECTURE fun;仿真波形: 图九 顶层仿真结果一(2)带有显示功能的数字时钟试验程序(根据参考程序修改而成)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY shizhong ISPORT( clk,rese

22、t:STD_LOGIC; out1,out2,out3,out4:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END ENTITY shizhong;ARCHITECTURE fun OF shizhong IS -SIGNAL count:STD_LOGIC_VECTOR(6 DOWNTO 0);component second port(clk1,reset1:in std_logic; enmin:out std_logic; daout1:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);end component;component minute

23、 port(clk2,reset2:in std_logic; enhour:out std_logic; daout2:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);end component;component hour port(clk3,reset3:in std_logic; daout3:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);end component;component xianshi port(hour1:in STD_LOGIC_VECTOR(6 DOWNTO 0); led2,led1:OUT STD_LOGIC_VECTOR

24、(6 DOWNTO 0);end component;signal a,b:std_logic;signal c: std_logic_VECTOR(6 downto 0); beginu1 : second port map(clk1=clk,reset1=reset,daout1=out1,enmin=a);u2 : minute port map(clk2=a,reset2=reset,daout2=out2,enhour=b);u3 : hour port map(clk3=b,reset3=reset,daout3=c);u4 : xianshi port map(hour1=c,l

25、ed1=out3,led2=out4);end ARCHITECTURE fun;仿真结果 图十 仿真结果二(3)具有报警功能和显示功能的数字时试验程序(根据参考程序修改而成)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY shizhong ISPORT( clk,reset:in STD_LOGIC; out2:out std_logic; out3,out4:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END ENTITY shizhong;ARCHITECTURE fun OF shizhong IS -SIGNAL count:STD_LOGIC_VECTOR(6 DOWNTO 0);component second port(clk1

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1