EDA技术大作业EDA电子钟论文.doc

上传人:仙人指路1688 文档编号:4144014 上传时间:2023-04-07 格式:DOC 页数:25 大小:157.50KB
返回 下载 相关 举报
EDA技术大作业EDA电子钟论文.doc_第1页
第1页 / 共25页
EDA技术大作业EDA电子钟论文.doc_第2页
第2页 / 共25页
EDA技术大作业EDA电子钟论文.doc_第3页
第3页 / 共25页
EDA技术大作业EDA电子钟论文.doc_第4页
第4页 / 共25页
EDA技术大作业EDA电子钟论文.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《EDA技术大作业EDA电子钟论文.doc》由会员分享,可在线阅读,更多相关《EDA技术大作业EDA电子钟论文.doc(25页珍藏版)》请在三一办公上搜索。

1、EDA技术大作业题 目: 电子钟设计 学 院: 信息科学与工程 学 号: 20111301420 姓 名: 努尔阿米乃姆.艾合麦提 班 级: 电子11-2班 指导老师: 努尔比亚老师 EDA电子钟摘要:随着EDA技术的发展和应用的领域的扩大,EDA技术在电子信息、通信、自动控制及计算机应用等领域等重要性日益突出。本文使用VHDL硬件描述语言设计了一个电子钟系统,该系统在开发软件Quartus 5.0环境中设计完成,并下载到EP1K30TC144-3FPGA的实验箱并成功,本文给出了设计该数字系统的流程。关键词 : EDA电子钟 校时 分频 VHDL语言 一:设计功能要求: 1、用65536HZ

2、的频率作为系统的时钟,对其进行分频产生秒信号,再对秒信号进行计数,产生分、时,并显示小时、分钟和秒的实际值。2、 能预置小时和分钟的功能(即校时、校分)。二、 设计原理:本设计先用一个分频器对试验箱上的65536HZ的信号进行分频,得到1HZ的时钟信号,再用计数器分别计数秒、分、时。秒位达59时进位分位,分位达59时进位到时位,时位到23时则自动清零,用了两个按键对时间的时位和分位进行了预置(即校时校分),一个按键(rest)可清零,且各个计数器的计数都通过数码管显示出来。三、 设计总体RTL图 四、程序设计 本设计采用模块化设计,共六个模块,分为:分频器模块、秒位计数器模块、分位计数器模块、

3、时位计数器模块、校准模块(预置时和分)、顶层文件模块。1、 分频模块 图1-1 分频实体图 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity fenpin is -数控分频器 port(clk:in std_logic; -输入65536HZ fenpinhou_out:out std_logic); -输出1HZ end; architecture four of fenpin is signal D:std_logic; begin process(clk) variable

4、 bianliang:std_logic_vector(15 downto 0); begin i f clkevent and clk=1 then if bianliang=1000000000000000 -65536/2 then bianliang:=0000000000000000; D=not D; -取反 else bianliang:=bianliang+1; end if; end if; end process; fenpinhou_out=D; end four;分频器仿真波形图如图1-2 图1-2 分频器仿真波形图2、秒计数器模块 图2-1 秒计数器实体图librar

5、y ieee; -秒计数器use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity miao is port(clk,rest:in std_logic; -时钟、复位 miao_diwei,miao_gaowei:out std_logic_vector(3 downto 0); miao_out:out std_logic); -秒进位输出end miao;architecture one of miao is signal miao_bian1,miao_bian2:std_logic_vector(3 down

6、to 0); -定义两个信号begin process(clk,rest) begin if rest=0then miao_bian1=0000; -低位 miao_bian2=0000; -高位 elsif clkevent and clk=1 then -上升沿 if miao_bian1=1001then -秒低位到9时清零 miao_bian1=0000; if miao_bian2=0101then -秒高位到5时清零 miao_bian2=0000; else miao_bian2=miao_bian2+1; -秒高位没到5时加1 end if; else miao_bian1=

7、miao_bian1+1; -秒低位没到9时加1 end if; if miao_bian1=1001 and miao_bian2=0101then -秒位到59时进位分低位 miao_out=1; else miao_out=0; end if; end if; end process; miao_diwei=miao_bian1; -秒低位输出 miao_gaowei=miao_bian2; -秒高位输出end one;秒的仿真波形如图2-2 图2-2 秒的仿真波形3、 分计数器模块 图3-1 分计数器实体图library ieee; -原理同秒计数器的一样use ieee.std_lo

8、gic_1164.all;use ieee.std_logic_unsigned.all;entity fen is port(clk,rest:in std_logic; fen_diwei,fen_gaowei:out std_logic_vector(3 downto 0); fen_out:out std_logic);end fen;architecture two of fen is signal fen_bian1,fen_bian2:std_logic_vector(3 downto 0);begin process(clk,rest) begin if rest=0then

9、fen_bian1=0000; fen_bian2=0000; elsif clkevent and clk=1 then if fen_bian1=1001then fen_bian1=0000; if fen_bian2=0101then fen_bian2=0000; else fen_bian2=fen_bian2+1; end if; else fen_bian1=fen_bian1+1; end if; if fen_bian1=1001 and fen_bian2=0101then fen_out=1; else fen_out=0; end if;end if;end proc

10、ess; fen_diwei=fen_bian1; fen_gaowei=fen_bian2;end two;分的仿真波形如图3-2 图3-2 分的仿真波形4、 时计数器模块 图4-1 时计数器实体图library ieee; -时计数器24进制use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity shi is port (clk,rest:in std_logic; shi_diwei,shi_gaowei:out std_logic_vector(3 downto 0); end shi;architectur

11、e three of shi is signal shi_bian1,shi_bian2:std_logic_vector(3 downto 0);beginprocess(clk,rest)begin if rest=0then shi_bian1=0000; shi_bian2=0000; elsif clkevent and clk=1then if shi_bian1=0011 and shi_bian2=0010then - 时位为23时清零 shi_bian1=0000; shi_bian2=0000; else if shi_bian1=0011then -时的低位为3时清零 s

12、hi_bian1=0000; if shi_bian2=0010then -时的高位为2时清零 shi_bian2=0000; else shi_bian2=shi_bian2+1; end if; else shi_bian1=shi_bian1+1; end if; end if; end if;end process; shi_diwei=shi_bian1; -输出时低位 shi_gaowei=shi_bian2; -输出时高位end three; 图4-2 时的仿真波形5、 校准模块 library ieee;use ieee.std_logic_1164.all;entity ji

13、aoshi IS port(lian_miaoout : in std_logic; fenjiaoshi : in std_logic; -校分(预置分)按键jiaoshi : in std_logic; -连分频后的时钟shijiaoshi : in std_logic; -校时(预置时)按键lian_fenout : in std_logic;fen : out std_logic; shi : out std_logic);end jiaoshi;architecture one of jiaoshi is signalabc : std_logic;signalabc1 : std_

14、logic;begin abc = fenjiaoshi AND jiaoshi; abc1 = jiaoshi AND shijiaoshi;fen = abc OR lian_miaoout; -校分(预置分输出)shi clk,fenpinhou_out=clk1);u1:miao port map(rest=rst,clk=clk1,miao_diwei=miaol,miao_gaowei=miaoh,miao_out=c2);u2:jiaoshi port map(lian_miaoout=c2,jiaoshi=clk1,fenjiaoshi=en,shijiaoshi=en1,li

15、an_fenout=c3,fen=c4,shi=c5);u3:fen port map(rest=rst,clk=c4,fen_diwei=fenl,fen_gaowei=fenh,fen_out=c3);u4:shi port map(rest=rst,clk=c5,shi_diwei=shil,shi_gaowei=shih);end five; 顶层文件的仿真总波形图如下图6-2 图6-2 顶层文件的仿真总波形图五、引脚锁定图 采用模式五,实验箱的时钟为65536HZ,键1为预置分,键2为rest,键4为预置时,具体引脚情况如下:六、 实验现象把下载到实验箱后,按下键2,即可以看见秒开始

16、走动,秒到59时分加1,分到59后时加1,如果按下键1,可以预置分,如果按下键4即可以预置小时,再次按下键1或者键4,即可以停止预置数,此实验现象说明电子钟成功。 致谢 谢谢努尔比亚老师平时上课的悉心讲解,让我对课本知识有所了解,更引起了我对它的兴趣,虽然在课程设计的过程艰难短暂,但从中学到很多的东西,得到了很多乐趣,让我知道已经学会了什么,让我更进一步的了解到EDA技术的应用,学到的东西在这次的课题设计中得到了充分应用。姚老师严谨细致、一丝不苟的作风一直是我学习中的榜样,您循循善诱的教导和不拘一格的思路给予我无尽的启迪,在这次课题设计的论文中,知识固然得到了巩固和提高,但我相信在实践中的切身

17、体会将会使我在以后的工作和学习中终身受用,而且还培养了我们自学能力、分析问题、解决问题的能力,更重要的是,培养了克服困难的勇气和信心,再次由衷的谢谢努尔比亚老师。七、参考文献(1) 潘松、黄继业.EDA技术实用教程VHDL版第四版 北京 科学出版社,2010.6(2) 康华光电子技术基础(数字部分第五版 北京 高等教育出版社 2010.11徐晓玲,田亚菲,崔伟.基于EDA仿真的电子时钟系统设计A.北京,兰州大学,2009. 课 程 论 文(2014 -2015学年第一学期) (EDA电子钟)学 号20111301420班 级电子112班姓 名努尔阿米乃姆.专 业电子信息科学与技术课程名称EDA技术任课教师努尔比亚老师教师评语: 成绩评定: 分 任课教师签名: 年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号