当前位置:文档之家› EDA课程设计,数字秒表的设计

EDA课程设计,数字秒表的设计

EDA课程设计,数字秒表的设计
EDA课程设计,数字秒表的设计

《EDA技术及应用课程设计》

课程设计报告

题目:数字秒表的设计

院(系):

专业班级:

学生姓名:

学号:

指导教师:

20 13 年 6 月 24 日至20 13 年 7 月 3 日

华中科技大学武昌分校制

数字秒表的设计课程设计任务书

目录

目录 (1)

摘要 (2)

1.设计目的 (3)

2.设计要求 (3)

3.设计过程 (3)

3.1设计规划 (3)

3.2建立工程 (4)

3.3建立各个功能模块程序并进行仿真调试 (5)

3.3.1 50MHz分频为1000Hz分频器的源程序 (5)

3.3.2 50MHz分频为100Hz分频器的源程序 (5)

3.3.3 改变分频系数 (6)

3.3.4 十进制计数器的源程序 (7)

3.3.5 六进制计数器的源程序 (8)

3.3.6 数字秒表的源程序 (10)

3.3.7 数码管显示的源程序 (12)

3.4建立逻辑图 (13)

3.5系统与外设端口的连接 (15)

3.6启动程序观察结果 (15)

4.设计总结 (16)

5.参考资料 (17)

附录 (18)

摘要

随着人们生活水平的日益提高,社会体系的日益完善,人们对于各种应用器件的要求也越来越高。秒表作为日常生活中,特别是体育运动中应用的特别广泛,所以精确且方便使用的秒表就被越来越多的人所选择。本秒表计时器用于体育竞赛及各种要求有较精确时的各领域,往常利用中小规模集成电路实现,但一般体积大,使用携带不方便。利用VHDL在FPGA或CPLD上实现1/100秒计时控制器,能充分发挥VHDL与可编程逻辑器件灵活、高效、集成度高的特点。

利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。该秒表能对0秒~59分59.59秒范围进行计时,显示最长时间是59分59秒。计时精度达到10ms。设计了复位开关和启停开关。复位开关可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备。

关键词:EDA技术 VHDL语言计时器数码管

1.设计目的

本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,进一步了解EDA技术,同时也对计算机系统中时钟控制系统进行了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的,以及怎样变频的。在掌握所学课程理论知识时。通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析、解决计算机技术实际问题的能力。通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。并让我们从中认识到自己的不足,以便以后加以改正,弥补自己的不足,以达到实验效果。

2. 设计要求

1.计时精度应大于1/100S,计时器能显示1/100S的时间,误差小于0.5秒。

2.计时器的最大计时时间为1小时,为此需要6位的显示器,显示的最长时间为59分 59.99秒。

3.设置有复位和起/停开关,复位开关用来使计数器清零,做好计时准备。起停开关的使用方法与传统的机械式计数器相同,即按一下,启动计时器开始计时,再按一下计时终止。

3. 设计过程

3.1 设计规划

根据数字秒表的设计要求可以采用自顶向下的设计方案,系统的整体组装设计原理图如图1所示,它主要由控制模块、时基分频模块,计时模块和显示模块四部分组成。各模块分别完成计时过程的控制功能、计时功能与显示功能。

图1 系统组成框图

3.2 建立工程名

打开QuartusII4.1,先执行File下的New命令,新建源程序,新建文件类型的选择界面如图2所示。再执行File下的New Project Wizard命令,如图3所示,打开新建工程向导,根据提示进行有关设置或选择,创建一个新的工程,并要求工程名与顶层文件名一致。对于已经建立的文件或工程,需要使用时打开即可。

图2 新建文件类型的选择界面

图3 新建工程向导操作

3.3 建立各个功能模块程序并进行仿真调试

3.3.1 50MHz分频为1000Hz分频器的源程序library ieee;

use ieee.std_logic_1164.all;

entity clkgen1 is

port(clk:in std_logic;

newclk:out std_logic);

end entity clkgen1;

architecture art of clkgen1 is

signal cnt:integer range 0 to 10#49999#;

begin

process(clk)is

begin

if clk'event and clk='1' then

if cnt=10#49999#then cnt<=0;

else cnt<=cnt+1;

end if;

end if;

end process;

process(cnt)is

begin

if cnt=10#49999#then newclk<='1';

else newclk<='0';

end if;

end process;

end architecture art;

3.3.2 50MHz分频为100Hz分频器的源程序library ieee;

use ieee.std_logic_1164.all;

entity clkgen is

port(clk:in std_logic;

newclk:out std_logic);

end entity clkgen;

architecture art of clkgen is

signal cnt:integer range 0 to 10#499999#;

begin

process(clk)is

begin

if clk'event and clk='1' then

if cnt=10#499999#then cnt<=0;

else cnt<=cnt+1;

end if;

end if;

end process;

process(cnt)is

begin

if cnt=10#499999#then newclk<='1';

else newclk<='0';

end if;

end process;

end architecture art;

3.3.3 改变分频系数

在本次设计中因为分频常数为500000比较大,其输出需要计数500000次才发生一次变化,在我们设定的时间间隔内,根本看不到输出的变化,也无法判断该程序的真确与否,故我们将分频系数改为30其仿真程序如下:

library ieee;

use ieee.std_logic_1164.all;

entity clkgen is

port(clk:in std_logic;

newclk:out std_logic);

end entity clkgen;

architecture art of clkgen is

--signal cnt:integer range 0 to 10#499999#;

signal cnt:integer range 0 to 10#29#;

begin

process(clk)is

begin

if clk'event and clk='1' then

--if cnt=10#499999#then cnt<=0;

if cnt=10#29#then cnt<=0;

else cnt<=cnt+1;

end if;

end if;

end process;

process(cnt)is

begin

--if cnt=10#499999#then newclk<='1';

if cnt=10#29#then newclk<='1';

else newclk<='0';

end if;

end process;

end architecture art;

仿真结果如下图4所示:

图4 CLKGEN的时序仿真结果

3.3.4 十进制计数器的源程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity cnt10 is

port(clk:in std_logic;

clr:in std_logic;

ena:in std_logic;

cq:out std_logic_vector(3 downto 0);

co:out std_logic);

end entity cnt10;

architecture art of cnt10 is

signal cqi:std_logic_vector(3 downto 0);

begin

process(clk,clr,ena)is

begin

if clr='1' then cqi<="0000";

elsif clk'event and clk='1' then

if ena='1' then

if cqi="1001" then cqi<="0000";

else cqi<=cqi+'1';end if;

end if;

end if;

end process;

process(cqi)is

begin

if cqi="0000" then co<='1';

else co<='0';end if;

end process;

cq<=cqi;

end architecture art;

其仿真结果如下图5所示:

图5 十进制计数器的时序仿真结果

3.3.5 六进制计数器的源程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity cnt6 is

port(clk:in std_logic;

clr:in std_logic;

ena:in std_logic;

cq:out std_logic_vector(3 downto 0);

co:out std_logic);

end entity cnt6;

architecture art of cnt6 is

signal cqi:std_logic_vector(3 downto 0);

begin

process(clk,clr,ena)is

begin

if clr='1' then cqi<="0000";

elsif clk'event and clk='1' then

if ena='1' then

if cqi="0101" then cqi<="0000";

else cqi<=cqi+'1';end if;

end if;

end if;

end process;

process(cqi)is

begin

if cqi="0000" then co<='1';

else co<='0';end if;

end process;

cq<=cqi;

end architecture art;

其仿真结果如下图6所示:

图6 六进制计数器的时序仿真结果

六进制计数器无进位和清零信号和使能信号的源程序:

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity cnt6666 is

port(clk:in std_logic;

cq:out std_logic_vector(2 downto 0));

end entity cnt6666;

architecture art of cnt6666 is

signal cqi:std_logic_vector(2 downto 0);

begin

process(clk)is

begin

if clk'event and clk='1' then

if cqi="101" then cqi<="000";

else cqi<=cqi+'1';end if;

end if;

end process;

cq<=cqi;

end architecture art;

其仿真结果如下图7所示:

图7 六进制(无清零信号和使能信号)的时序仿真结果

3.3.6 数字秒表的源程序

library ieee;

use ieee.std_logic_1164.all;

entity times is

port(clr:in std_logic;

clk:in std_logic;

ena:in std_logic;

dout:out std_logic_vector(23 downto 0));

end entity times;

architecture art of times is

component clkgen is

port(clk:in std_logic;

newclk:out std_logic);

end component clkgen;

component cnt10 is

port(clk,clr,ena:in std_logic;

cq:out std_logic_vector(3downto 0);

co:out std_logic);

end component cnt10;

component cnt6 is

port(clk,clr,ena:in std_logic;

cq:out std_logic_vector(3downto 0);

co:out std_logic);

end component cnt6;

signal s0:std_logic;

signal s1,s2,s3,s4,s5:std_logic;

begin

u0:clkgen port map(clk=>clk,newclk=>s0);

u1:cnt10 port map(s0,clr,ena,dout(3 downto 0),s1); u2:cnt10 port map(s1,clr,ena,dout(7 downto 4),s2); u3:cnt10 port map(s2,clr,ena,dout(11 downto 8),s3); u4:cnt6 port map(s3,clr,ena,dout(15 downto 12),s4); u5:cnt10 port map(s4,clr,ena,dout(19 downto 16),s5); u6:cnt6 port map(s5,clr,ena,dout(23 downto 20));

end architecture art;

其仿真结果如下图8所示:

图8 数字秒表的时序仿真结果3.3.7 数码管显示的源程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity led is

port(din: in std_logic_vector(3 downto 0);

dout: out std_logic_vector(6 downto 0));

end led;

architecture behv of led is

begin

process(din)

begin

case din is

when "0000" => dout<="0111111";

when "0001" => dout<="0000110";

when "0010" => dout<="1011011";

when "0011" => dout<="1001111";

when "0100" => dout<="1100110";

when "0101" => dout<="1101101";

when "0110" => dout<="1111101";

when "0111" => dout<="0000111";

when "1000" => dout<="1111111";

when "1001" => dout<="1101111";

when "1010" => dout<="1110111";

when "1011" => dout<="1111100";

when "1100" => dout<="0111001";

when "1101" => dout<="1011110";

when "1110" => dout<="1111001";

when "1111" => dout<="1110001";

when others => dout<="0000000";

end case;

end process;

end behv;

3.4 建立逻辑图

逻辑总图如下图9:

图9逻辑总图

其中times逻辑图如下图10:

图10 times逻辑图

LED的显示模块原理:LED有段码和位码之分,所谓段码就是让LED显示出8.的八位数据,一般情况下要通过一个译码电路,将输入的4位2进制数转换为与LED显示对应的8位段码。位码也就是LED的显示使能端,对于共阴级的LED而言,低电平使能(在本实验箱中所有的LED均位共阴级的),在本实验中设计了一个3位的循环计数器,将计数结果输入到3-8译码器74ls138,译码结果输出即可依次使能每个LED。

Display逻辑图如下图11:

图11 Display逻辑图

3.5 系统与外设端口的连接

系统与外设端口的连接如下图12:

图12 系统与外设端口的连接

3.6 启动程序观察结果

系统与外设端口连接完毕就可以开始下载、选择、启动,观察结果如下图13:

图13 观察结果图

4. 设计总结

在本次设计过程中,我查阅了大量的书籍,不但巩固和加深了所学的专业基础课知识,还将所学的知识融会贯通,并且将课本与实际相结合,真正实现了学有所用。

通过这次课程设计之后,一定把以前所学过的知识重新温故。我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。在课程设计过程中遇到各种问题是常有的,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题的。课程设计结束了,但是从中学到的知识会让我受益终身。发现、提出、分析、解决问题和实践能力的提高都会受益于我在以后的学习、工作和生活中。设计过程,好比是我们人类成长的历程,常有一些不如意,但毕竟这是第一次做,难免会遇到各种各样的问题。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。我们通过查阅大量有关资料,并在小组中互相讨论,交流经验和自学,若遇到实在搞不明白的问题就会及时请教老师,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。

我在做设计时总是会犯一些错误,只有经过不停的改错不停的编译得到正确的程序说明了作为软件编程人员是不能粗心大意的,一个程序的质量的高低与你细心与否有着一定的联系。在编程时,我充分使用了结构化的思想,这样程序检查起来也比较方便,调试时也给了我很大方便,只要一个模块一个模块的进行调就可以了,充分体现了结构化编程的优势。在设计中要求我要有耐心和毅力,还要细心,稍有不慎,一个小小的错误就会导致结果的不正确,而对错误的检查要求我要有足够的耐心,通过这次设计和设计中遇到的问题,也积累了一定的经验,对以后从事集成电路设计工作会有一定的帮助。

在应用VHDL的过程中让我真正领会到了其并行运行与其他软件顺序执行的差别及其在电路设计上的优越性。用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法在数字系统设计中发挥越来越重要的作用。

通过本次实验我对EDA软件更加了解,同时将所学的理论知识加以运用,以加深对理论知识的理解,也锻炼了自己的动手能力,在此次实验中我充分认识到自己的不足,并努力加以改正。

5. 参考资料

[1] 谭会生,张昌凡.EDA技术及应用.第2版.西安:西安电子科技大学出版社.

[2] 潘松,黄继业.EDA技术与VHDL.第3版.北京:清华大学出版社,2003.

[3] 李兰英.NiosII嵌入式软核SOPC设计原理及应用.北京:北京航空航天大学出版社,2006.

附录:

EDA课程设计—秒表

EDA 课程设计 姓名:王亮 学号:2012118064 班级:1211自动化

一、课程设计目的 1、熟练利用Verilog HDL语言进行数字系统设计。 2、掌握数字系统的设计方法——自顶向下的设计思想。 3、掌握计数器的设计与使用。 4、根据秒表的功能要求设计一个秒表。 5、熟练掌握用Quartus II软件进行系统原理图设计、文本设计以及进行波形仿真。 二、课程设计所需器材 装有Quartus II软件的电脑一台、FPGA教学实验系统一台、下载电缆一根。 三、课程设计要求 1、有秒、分计数,数码扫描显示输出。 2、有清零端和暂停端。 3、下载,检查结果是否正确。 四、课程设计原理 1、功能描述 秒表是一种计时的工具,有着很广泛的用途。本实验中的秒表要求有两个功能按钮:一个是计数和停止计数按钮,当第一次按下此按钮时,秒表开始计数,再一次按下时,秒表停止计数,并显示所计的数字;另一个是清零按钮,当按下此按钮时,秒表清零。在数码管上采用动态扫描显示输出。 2、基本原理: 本设计中用到的主要元件有计数器、分频器、数据选择器、译码器、位选信号发生器等。秒、分都是60进制计数,所以必须采用两个60进制的计数器,而百分秒择采用的是100进制;分频器主要将1KHZ的时钟信号经过10分频后,产生100HZ的单位时钟周期;数据选择器主要功能是将即将显示的数据送给译码器;译码器将BCD码转换为七段译码进行显示;位选信号发生器根据人眼暂留效应和显示的数码的个数,产生一段循环码。 3、自顶向下的设计方法 自顶向下的设计方法是数字系统设计中最常用的设计方法,也是基于芯片的系统设计的主要方法。 自顶向下的设计方法利用功能分割手段将设计由上到下进行层次话和模块化,及分层次、分模块进行设计和仿真。功能分割时,将系统功能分解为功能块,功能块再分解为逻辑块,逻辑块再分解为更少的逻辑块和电路。如此分割,逐步的将系统细化,将功能逐步的具体化,模块化。高层次设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细描述在下一设计层次说明,最底层的设计才涉及具体寄存器和逻辑门电路等实现方式的描述。 五、课程设计步骤 1、采用自顶向下的设计方法,首先将系统分块。 2、设计元件,及逻辑块。

EDA课程设计——多功能数字钟

哈尔滨工业大学(威海) 电子学课程设计报告带有整点报时的数字钟设计与制作 姓名: 蒋栋栋 班级: 0802503 学号: 080250331 指导教师: 井岩

目录 一、课程设计的性质、目的和任务 (3) 二、课程设计基本要求 (3) 三、设计课题要求 (3) 四、课程设计所需要仪器 (4) 五、设计步骤 (4) 1、整体设计框图 (4) 2、各个模块的设计与仿真 (4) 2.1分频模块 (4) 2.2计数器模块 (6) 2.3控制模块 (10) 2.4数码管分配 (13) 2.5显示模块 (14) 2.6报时模块 (16) 六、调试中遇到的问题及解决的方法 (18) 七、心得体会 (18)

一、课程设计的性质、目的和任务 创新精神和实践能力二者之中,实践能力是基础和根本。这是由于创新基于实践、源于实践,实践出真知,实践检验真理。实践活动是创新的源泉,也是人才成长的必由之路。 通过课程设计的锻炼,要求学生掌握电路的一般设计方法,具备初步的独立设计能力,提高综合运用所学的理论知识独立分析和解决问题的能力,培养学生的创新精神。 二、课程设计基本要求 掌握现代大规模集成数字逻辑电路的应用设计方法,进一步掌握电子仪器的正确使用方法,以及掌握利用计算机进行电子设计自动化(EDA)的基本方法。 三、设计课题要求 (1)构造一个24小时制的数字钟。要求能显示时、分、秒。 (2)要求时、分、秒能各自独立的进行调整。 (3)能利用喇叭作整点报时。从59分50秒时开始报时,每隔一秒报时一秒,到达00分00秒时,整点报时。整点报时声的频率应与其它的报时声频有明显区别。 #设计提示(仅供参考): (1)对频率输入的考虑 数字钟内所需的时钟频率有:基准时钟应为周期一秒的标准信号。报时频率可选用1KHz和2KHz左右(两种频率相差八度音,即频率相差一倍)。另外,为防止按键反跳、抖动,微动开关输入应采用寄存器输入形式,其时钟应为几十赫兹。 (2)计时部分计数器设计的考虑 分、秒计数器均为模60计数器。 小时计数为模24计数器,同理可建一个24进制计数器的模块。 (3)校时设计的考虑 数字钟校准有3个控制键:时校准、分校准和秒校准。 微动开关不工作,计数器正常工作。按下微动开关后,计数器以8Hz频率连续计数(若只按一下,则计数器增加一位),可调用元件库中的逻辑门建一个控制按键的模块,即建立开关去抖动电路(见书70页)。 (4)报时设计的考虑

数字秒表设计EDA课设报告

北华航天工业学院 《EDA技术综合设计》 课程设计报告 报告题目:数字秒表设计 作者所在系部:电子工程系 作者所在专业:自动化 作者所在班级: B08221 作者姓名:赵天娇 指导教师姓名:崔瑞雪 完成时间: 2010年12月1日

内容摘要 EDA技术是电子设计技术和电子制造技术的核心,目前,电子系统的EDA 技术正从主要着眼于数字逻辑向模拟电路和数模混合电路的方向发展。 本设计主要内容是数字逻辑电路——数字秒表,数字秒表在日常生活中有广泛的用途,秒表的逻辑结构较简单,它主要由显示译码器、十进制计数器、六进制计数器和报警器组成。四个10进制计数器:用来分别对百分之一秒、十分之一秒、秒和分进行计数;两个6进制计数器:用来分别对十秒和十分进行计数;显示译码器:完成对显示的控制。根据电路持点,用层次设计概念将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口,然后再将各模块合起来联试。 通过MAX+plusⅡ软件,对上述模块设计,仿真无误后,设计顶层文件,仿真无误后,下载到主芯片EPF10K10LC84-4中,按适配划分后的管脚定位,同相关功能块硬件电路接口连线,进行硬件实验。 EPF10K10LC84-4是Altera公司生产的FLEX10K系列可编程逻辑器件。主要采用了嵌入式阵列,容量高达百万门,为可重复配置的CMOS SRAM工艺,系统工作过程中可随时改变配置,有利于现场编程,完成秒表设计的修改于完善。 关键词 EDA、可编程逻辑器件、计数器、显示器

目录(字体?) 一、概述 (1) 二、实验目的 (1) 三、单元模块设计 (1) 1十进制计数器 (1) 2.六进制计数器 (2) 3.时间数据分时扫描模块 (3) 4.显示译码模块 (4) 5.报警电路模块 (6) 四、顶层文件原理图 (7) 五、硬件要求 (8) 六、实验连线 (8) 七、实验总结 (8) 八、心得体会 (9) 九、参考文献 (10)

EDA课程设计

课程设计说明书 课程:EDA技术基础 题目:数字钟的设计 闹钟与整点报时模块 学生姓名:XXX 学号201265110204 班级 :1203班 专业:电子信息与科学 指导教师:XXX 2014年12月20日 长沙理工大学课程设计任务书 物理与电子科学学院电子信息与科学专业1203班姓名王玲课程名称EDA技术基础 题目数字钟的设计

长沙理工大学课程设计成绩评定表

目录 1数字钟设计闹钟模块基本任务要求4 2设计思想4 3简述闹钟模块的输入与输出5 4分进程描述6 5仿真结果与分析7 6简述数字钟的设计总成果10 7总结11 参考文献13 代码附件13

基本任务要求:运用QuartusⅡ13.1软件平台,用VHDL语言描述并设计的闹钟模块满足可调闹钟时间,当时钟时间到达闹钟时间后会响闹铃,(由于实验室权限问题会以FPGA开发板上12个LED灯交替发光来表现);整点报时过程表现为整点的前十秒内响铃,(以FPGA开发板上一个LED灯交替发光来实现)。 设计思想:闹钟模块要以分频模块、计数器模块和译码显示模块为基础,将闹钟模块分为三个进程,一个进程用来实现调闹钟,一个进程来实现闹响闹钟(即实现LED灯交替发光),另一个进程来是实现整点报时。 (上面截图为数字钟整体编译后的RTL电路的闹钟模块) 简述闹钟模块图的输入与输出:上图中的输入粗黑实线为计数器模块输出的小时、分钟的高低位和秒钟的高位(都用四位的二进制表示);输出的粗黑实线为定的闹钟时间(包括小时和分钟),将送到译码显示模块显示闹钟时间,闹钟时间与时钟都在FPGA上的数码管显示,用二选一实现交替显示。clk和clk1都是经过分频器分出的不同频率的信号分别用于整点报时的闪灯脉冲与闹钟调时、闹响的闪灯脉冲。

EDA数字秒表设计

《EDA技术与应用》 课程设计报告 报告题目:数字秒表设计作者所在系部:电子工程系作者所在专业:电子信息工程作者所在班级: 作者姓名: 指导教师: 完成时间:2017-6-10

容摘要 在科技高度发展的今天,集成电路和计算机应用得到了高速发展。尤其是计算机应用的发展。它在人们日常生活已逐渐崭露头角。大多数电子产品多是由计算机电路组成,如:手机、mp3等。而且将来的不久他们的身影将会更频繁的出现在我们身边。各种家用电器多会实现微电脑技术。电脑各部分在工作时多是一时间为基准的。本报告就是基于计算机电路的时钟脉冲信号、状态控制等原理,运用EDA技术及VHDL语言设计出的数字秒表。秒表在很多领域充当一个重要的角色。在各种比赛中对秒表的精确度要求很高,尤其是一些科学实验,他们对时间精确度达到了几纳秒级别。 利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。该数字秒表能对0秒~59分59.99秒围进行计时,显示最长时间是59分59秒,超过该时间能够进行报警。计时精度达到10ms。设计了复位开关和启停开关。复位开关可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备。 关键词:EDA技术、VHDL语言、分频器、计数器、数码管、蜂鸣器

目录 一概述 (1) 二方案设计与论证 (1) 三单元电路设计 (2) ⒊1分频器的设计 (2) ⒊2计时控制模块的设计 (3) ⒊3计时模块的设计 (4) ⒊⒊1十进制计数器的设计 (4) ⒊⒊2六进制计数器的设计 (5) ⒊⒊3计数器的设计 (6) ⒊4显示模块的设计 (8) ⒊⒋1选择器的设计 (8) ⒊⒋2七段译码器的设计 (9) ⒊5报警模块设计 (10) ⒊6顶层文件的设计 (11) 四器件编程与下载 (11) 五性能测试与分析 (12) ⒌1分频器模块的仿真 (12) ⒌2计时控制模块的仿真 (12)

EDA课程设计完整版---数字秒表(设计报告+仿真文件+硬件实现)

附: EDA课程设计完整版---数字秒表(设计报告+仿真文件+硬件实现) 仿真文件下载地址: https://www.doczj.com/doc/8a15955303.html,/detail/zhj8861991/4061198(友情提示:关于页数,下载后请删除此页即可)

《可编程器件及应用课程设计报告》 题目数字秒表 学院信电工程学院 专业电子信息科学与技术 班级 姓名 学号 指导教师

目录 课程设计任务书 (3) 一、系统组成模块连图 (4) 二、模块器件及其程序 (4) 1、分频器 (4) 2、十进制计数器 (5) 3、六进制计数器 (6) 4、动态扫描 (7) 5、译码显示管 (8) 三、系统仿真 (9) 1、六进制计数器 (9) 2、十进制计数器 (9) 3、动态扫描 (9) 4、译码显示管 (10) 5、分频器 (10) 6、系统仿真 (11) 7、硬件实现 (11) 四、心得体会 (12)

课题名称数字秒表设计完成时间12.30 指导教师学生姓名班级 总体设计要求和技术要点 总体设计要求: 通过本课程的学习使学生掌握可编程器件、EDA开发系统软件、硬件描述语言和电子线路设计与技能训练等各方面知识;提高工程实践能力;学会应用EDA技术解决一些简单的电子设计问题。 技术要点: 1.利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。该秒表计时范围为0秒~59分59.99秒,显示的最长时间为59分59秒,计时精度为10毫秒,并且具有复位功能。复位开关一旦打开所有位都为0。 2.秒表有共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便与同显示译码器的连接。 工作内容及时间进度安排 工作内容: 在软件上编辑、编译程序,并在电脑上仿真, 最后在实验室下载到器件上实现硬件要求。 进度安排: 第十八周一周时间; 课程设计成果

EDA数字秒表课程设计报告

数字秒表设计 专业:自动化 班级学号:509 姓名: 2011年 6 月14日

目录 数字秒表设计实验任务书 (2) 一、设计实验目的: (2) 二、设计实验说明及要求: (2) 三、数字秒表组成及功能: (2) 四、系统硬件要求: (2) 五、设计内容及步骤: (3) 六、硬件实现 (3) 实验报告 (3) 一、数字秒表顶层设计 (3) 二、数字秒表内部设计 (4) 1、分频器 (4) 2、十进制计数器 (5) 3、六进制计数器 (6) 4、二十四进制计数器 (8) 5、数据选择和数码管选择模块 (9) 6、数码管驱动模块: (10) 三、数字秒表仿真波形 (12) 四、硬件验证 (12) 五、实验总结 (12)

数字秒表设计实验任务书 一、设计实验目的: 在MAX+plusII软件平台上,熟练运用VHDL语言,完成数字时钟设计的软件编程、编译、综合、仿真,使用EDA实验箱,实现数字秒表的硬件功能。 二、设计实验说明及要求: 1、数字秒表主要由:分频器、扫描显示译码器、一百进制计数器、六十进制计数器(或十进制计数器与6进制计数器)、十二进制计数器(或二十四进制计数器)电路组成。在整个秒表中最关键的是如何获得一个精确的100H Z 计时脉冲,除此之外,数字秒表需有清零控制端,以及启动控制端、保持保持,以便数字时钟能随意停止及启动。 2、数字秒表显示由时(12或24进制任选)、分(60进制)、秒(60进制)、百分之一秒(一百进制)组成,利用扫描显示译码电路在八个数码管显示。 3、能够完成清零、启动、保持(可以使用键盘或拨码开关置数)功能。 4、时、分、秒、百分之一秒显示准确。 三、数字秒表组成及功能: 1、分频率器:用来产生100H Z计时脉冲; 2、二十四进制计数器:对时进行计数; 3、六进制计数器:分别对秒十位和分十位进行计数; 4、十进制计数器:分别对秒个位和分个位进行计数; 5、扫描显示译码器:完成对7字段数码管显示的控制; 四、系统硬件要求: 1、时钟信号为10MHz; 2、FPGA芯片型号EPM7128LC84—15、EP1K30TC144—3或EP1K100QC208—3(根据实验箱上FPGA芯片具体选择); 3、8个7段扫描共阴级数码显示管; 4、按键开关(清零、启动、保持);

verilogEDA数字秒表设计quartus

课程考查报告 课程名称 EDA技术 题目名称数字电子钟 学生学院信息工程学院 专业班级通信工程09(1)班 学号 310900xx 学生姓名陈 XX 任课教师李学易 2013 年12月27日

电子钟 设计目的: 根据实验板的资源和利用Quartus II软件编译、仿真可以实现电子钟的数字系统设计。 设计内容: 数字电子钟的功能: 1、时钟显示功能(显示时、分、秒) 2、时钟调整功能(小时、分钟的校准) 3、闹钟设置功能 设计方案: 根据程序设计需要,信号的定义如下: Clk:标准时钟信号,频率为4Hz Clk_1k:产生闹铃声、报时声的时钟信号,频率为1024Hz Mode:功能控制信号,为0:计时功能;1:闹钟功能;2:手动校时功能 Turn:接按键,在手动校时功能时,选择的是校准小时,还是分钟; 若长时间按该键,可使秒信号清零 Change:接按键,在手动校时时,每按一次,计数器加一 若长按,则连续快速加一 Hour,min,sec:此三信号分别输出并显示时、分、秒信号 Alert:输出到扬声器的信号,产生闹钟音和报时音; 闹钟音为持续20秒的“嘀嘀嘀”音,若按住change键,

则可屏蔽该音; 报时音为“嘀嘀嘀嘀嘟”四短一长音。 Ld_alert:接发光二极管,指示是否设置了闹钟功能 Ld_hour:接发光二极管,指示当前调整的是小时信号Ld_min:接发光二极管,指示当前调整的是分钟信号 实验结果: 时序仿真图: RTL图:

D ENA Q PRE CLR D Q PRE ENA CLR D Q PRE ENA CLR D Q PRE ENA CLR D Q PRE ENA CLR D Q PRE ENA CLR D Q PRE ENA CLR D Q PRE ENA CLR D Q PRE ENA CLR D Q PRE ENA CLR D ENA Q PRE CLR D ENA Q PRE CLR D Q PRE ENA CLR D ENA Q PRE CLR SEL DATAA DATAB OUT0 MUX21 < A[7..0]B[7..0] LESS_THAN SEL[1..0]DATA[3..0] OUT MUX SEL[1..0] DATA[3..0] OUT MUX SEL[1..0] DATA[3..0] OUT MUX SEL[1..0] DATA[3..0] OUT MUX SEL DATAA DATAB OUT0 MUX21 SEL[1..0] DATA[3..0] OUT MUX = A[3..0] B[3..0] EQUAL + A[3..0] B[3..0] ADDER + A[3..0] B[3..0] ADDER SEL[1..0] DATA[3..0] OUT MUX SEL[1..0] DATA[3..0] OUT MUX SEL[1..0] DATA[3..0] OUT MUX < A[7..0] B[7..0] LESS_THAN D Q PRE ENA CLR 01 01 01 D Q PRE ENA CLR D ENA PRE CLR Q SEL[1..0] DATA[3..0] OUT MUX IO_BUF (TRI) D ENA PR E CLR Q loop1~_OUT0 loop1_OUT0 loop2~_OUT0 loop2_OUT0 loop3~_OUT0 loop3_OUT0 loop4~_OUT0 loop4_OUT0 num1~0_OUT0 num1_OUT0num2~0_OUT0 num2_OUT0num3~0_OUT0 num3_OUT0num4~0_OUT0 num4_OUT0 sound~_OUT0 sound_OUT0 Equal0_OUT ct1~0_OUT0 ct2~0_OUT0 cta~0_OUT0 ctb~0_OUT0 minclk~1_OUT0minclk_OUT0 always9~0_OUT0 Mux6_OUT Mux7_OUT Mux8_OUT Mux0_OUT WideNor5_OUT0 Mux2_OUT Mux3_OUT Mux4_OUT LessThan0_OUT min1~_OUT0 ct1_OUT0 min1_OUT0 Equal18_OUT alert1_OUT0m~_OUT0 m_OUT0Mux25_OUT sec[7]~7_OUT0sec[6]~6_OUT0sec[5]~5_OUT0sec[3]~0_OUT0sec[2]~1_OUT0sec[1]~2_OUT0sec[0]~3_OUT0 Mux1_OUT sec[2]_557_OUT0clk_2Hz clk loop1[1..0] loop2[1..0] loop3[1..0] loop4[1..0] num1[1..0] 1' h0 --num2[1..0] 1' h0 --num3[1..0] 1' h0 --num4[1..0] 1' h0 --sound[1..0] ear ct1~0 ct2~0 cta~0 ctb~0 alert~0 clk_1k alert2~0alert2~1 clk_1Hz sec1[7..0] minclk sec1~[15..8] 8' h00 --WideNor7 LessThan1 8' h54 -- Mux5 3' h0 -- Mux6 3' h0 --Mux7 3' h0 --Mux8 3' h0 --sec1~[7..0] 4' h0 --Mux0 3' h0 --WideNor5 Equal8 4' h9 -- Add6 4' h1 -- Add7 4' h1 -- Mux2 3' h0 --Mux3 3' h0 --Mux4 3' h0 --LessThan0 8' h20 --min1[7..0] always16~9 always16~0 alert2 alert2~2 alert~2 alert alert~1 m[1..0] mode sec[4]$latch Mux25 4' h7 --sec[4]~4 sec[7..0] sec[2]_557

EDA课程设计数字秒表

课程设计 题院目 系 数字秒表设计 信息工程学院 班级姓名指导教师

目录 第1章:系统设计要求 (3) 第2章:实验目的 (3) 第3章:实验原理 (3) 第4章:系统设计方案 (3) 第5章:主要VHDL源程序 (4) 1) 十进制计数器的VHDL 源程序. (4) 2) 六进制计数器的VHDL 源程序 (5) 3)蜂鸣器的VHDL源程序. (5) 4)译码器的VHDL源程序. (6) 5)控制选择器的VHDL源程序 (7) 6)元原件例化的VHDL源程序 (8) 第六章:系统仿真. (10) 第七章:系统扩展思路. (11) 第八章:设计心得总结. (11)

数字秒表的设计 1、系统设计要求 1.秒表共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、 分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便于和显示译码器的连接。当计时达60分钟后,蜂鸣器鸣响10声。 2.整个秒表还需有一个启动信号和一个归零信号,以便秒表能随意停止及 启动。 3.秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器、 六进制计数器和报警器组成。在整个秒表中最关键的是如何获得一个精确的 100HZ计时脉冲。 2、实验目的 通过本次课设,加深对EDA技术设计的理解,学会用QuartusⅡ工具软件 设计基本电路,熟练掌握VHDL语言,为以后工作使用打下坚实的基础。 3、实验原理 秒表由于其计时精确,分辨率高(0.01秒),在各种竞技场所得到了广泛的应用。秒表的工作原理与数字时基本相同,唯一不同的是秒表的计时时钟信号,由 于其分辨率为0.01秒,所以整个秒表的工作时钟是在100Hz的时钟信号下完成。 当秒表的计时小于1个小时时,显示的格式是mm-ss-xx(mm 表示分钟:0~59;ss表示秒:0~59;xx表示百分之一秒:0~99),当秒表的计时大于或等于一个 小时时,显示的和多功能时钟是一样的,就是hh-mm-ss(hh表示小时:0~99),由于秒表的功能和钟表有所不同,所以秒表的hh 表示的范围不是0~23,而是 0~99,这也是和多功能时钟不一样的地方。在设计秒表的时候,时钟的选择为100Hz。变量的选择:因为xx(0.01 秒)和hh(小时)表示的范围都是0~99, 所以用两个4位二进制码(BCD码)表示;而ss(秒钟)和mm(分钟)表示的 范围是0~59,所以用一个3位的二进制码和一个4位的二进制码(BCD)码表示。显示的时候要注意的问题就是小时的判断,如果小时是00,则显示格式为 mm-ss-xx,如果小时不为00,则显示hh-mm-ss。 4、系统设计方案 秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器、 六进制计数器和报警器组成。 四个10进制计数器:用来分别对百分之一秒、十分之一秒、秒和分进行计数;两个6进制计数器:用来分别对十秒和十分进行计数;分频器:用来产生100HZ计时脉冲;显示译码器:完成对显示的控制。

EDA数字秒表课程设计

EDA课程设计实验报告 数字秒表 班级:电1104 姓名:高倩 学号:20112669

设计数字秒表 一、实验要求: 1.要求设置启/停开关。当按下启/停开关,将启动秒表开始计时,当再按一下启 /停开关时,将终止计时操作。 2.数字秒表的计时范围是0秒~59分59.99…… 3.要求计时精度为0.01s。 4.复位开关可以在任何情况下使用,即便在计时过程中,只要按一下复位开关, 计时器就清零,并做好下次计时的准备。 二、实验分模块源程序及仿真结果: (一)时积分频模块的VHDL源程序(CB10.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CB10 IS PORT(CLK:IN STD_LOGIC; CO:OUT STD_LOGIC); END CB10; ARCHITECTURE ART OF CB10 IS SIGNAL COUNT:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS(CLK) BEGIN IF RISING_EDGE(CLK) THEN IF COUNT="1001"THEN COUNT<="0000"; CO<='1'; ELSE COUNT<=COUNT+1; CO<='0'; END IF; END IF; END PROCESS; END ART; CB10仿真波形 (二)控制模块的VHDL源程序(CTRL.VHD) LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;

EDA课程设计心得体会

EDA课程设计心得体会 这次EDA课程设计历时两个星期,在整整两个星期的日子里,可以说是苦多于甜,但是可以学的到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次设计,进一步加深了对EDA 的了解,让我对它有了更加浓厚的兴趣。特别是当每一个子模块编写调试成功时,心里特别的开心。但是在编写顶层文件的程序时,遇到了不少问题,特别是各元件之间的连接,以及信号的定义,总是有错误,在细心的检查下,终于找出了错误和警告,排除困难后,程序编译就通过了,心里终于舒了一口气。在波形仿真时,也遇到了一点困难,想要的结果不能在波形上得到正确的显示:在设定输入的时钟信号后,数字秒表开始计数,但是始终看不到秒和小时的循环计数。后来,在数十次的调试之后,才发现是因为输入的时钟信号对于器件的延迟时间来说太短了。经过屡次调试,终于找到了比较合适的输入数值:时钟周期设置在15秒左右比较合适。另外,Endtime的值需要设置的长一点:500us左右,这样就可以观察到完整的仿真结果。 其次,在连接各个模块的时候一定要注意各个输入、输出引脚的线宽,因为每个线宽是不一样的,只要让各个线宽互相匹配,才能得出正确的结果,否则,出现任何一点小的误差就会导致整个文件系统的编译出现错误提示,在器件的选择上也有一定的技巧,只有选择了合适当前电路所适合的器件,编译才能得到完满成功。 通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。 总的来说,这次设计的数字秒表还是比较成功的,在设计中遇到了很多问题,最后在老师的辛勤的指导下,终于游逆而解,有点小小的成就感,终于觉得平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有了更加清楚的认识,同时,对未来有了更多的信心。最后,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢! PLC实训心得 和学别的学科一样,在学完PLC理论课程后我们做了课程设计,此次设计以分组的方式进行,每组有一个题目。我们做的是一个由三个部分组成的浇灌系统。由于平时大家都是学理论,没有过实际开发设计的经验,拿到的时候都不知道怎么做。但通过各方面的查资料并学习。我们基本学会了PLC设计的步聚和基本方法。分组工作的方式给了我与同学合作的机会,提高了与人合作的意识与能力。 通过这次设计实践。我学会了PLC的基本编程方法,对PLC的工作原理和使用方法也有了更深刻的理解。在对理论的运用中,提高了我们的工程素质,在没有做实践设计以前,我们对知道的撑握都是思想上的,对一些细节不加重视,当我们把自己想出来的程序与到PLC中的时候,问题出现了,不是不能运行,就是运行

EDA数字秒表课程设计

目录 1 引言 (1) 1.1 课程设计的目的 (1) 1.2 课程设计的内容 (1) 2 EDA、VHDL简介 (1) 2.1 EDA技术 (1) 2.2 硬件描述语言——VHDL (2) 3设计过程 (4) 3.1 设计规划 (4) 3.2 各模块的原理及其程序 (4) 3.2.1控制模块 (5) 3.2.2时基分频模块 (5) 3.2.3计时模块 (6) 3.2.4显示模块 (7) 4系统仿真 (9) 结束语 (13) 致谢 (14) 参考文献 (15) 附录 (16)

1 引言 在科技高度发展的今天,集成电路和计算机应用得到了高速发展。尤其是计算机应用的发展。它在人们日常生活已逐渐崭露头角。大多数电子产品多是由计算机电路组成,如:手机、mp3等。而且将来的不久他们的身影将会更频繁的出现在我们身边。各种家用电器多会实现微电脑技术。电脑各部分在工作时多是一时间为基准的。本文就是基于计算机电路的时钟脉冲信号、状态控制等原理设计出的数字秒表。秒表在很多领域充当一个重要的角色。在各种比赛中对秒表的精确度要求很高,尤其是一些科学实验。他们对时间精确度达到了几纳秒级别。 1.1 课程设计的目的 本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。在掌握所学的计算机组成与结构课程理论知识时。通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析、解决计算机技术实际问题的能力。通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。 1.2 课程设计的内容 利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。该数字秒表能对0秒~59分59.99秒范围进行计时,显示最长时间是59分59秒。计时精度达到10ms。设计了复位开关和启停开关。复位开关可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备。 2 EDA、VHDL简介 2.1 EDA技术 EDA是指以计算机为工作平台,融合了应用电子技术、计算机技术、智能化技术的最新成果而开发出的电子CAD通用软件包,它根据硬件描述语言HDL完成的设计文件,自动完成逻辑编译、化简、分割、综合、优化、布局布线及仿真,直至完成对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。目前EDA主要辅助进行三个方面的设

EDA课程设计--带有整点报时的数字钟设计与制作

电子学课程设计报告带有整点报时的数字钟设计与制作

目录 一、课程设计的性质、目的和任务 (3) 二、课程设计基本要求 (3) 三、设计课题要求 (3) 四、课程设计所需要仪器 (4) 五、设计步骤 (4) 1、整体设计框图 (4) 2、各个模块的设计与仿真 (4) 2.1分频模块 (4) 2.2计数器模块 (6) 2.3控制模块 (10) 2.4数码管分配 (13) 2.5显示模块 (14) 2.6报时模块 (16) 六、调试中遇到的问题及解决的方法 (18) 七、心得体会 (18)

一、课程设计的性质、目的和任务 创新精神和实践能力二者之中,实践能力是基础和根本。这是由于创新基于实践、源于实践,实践出真知,实践检验真理。实践活动是创新的源泉,也是人才成长的必由之路。 通过课程设计的锻炼,要求学生掌握电路的一般设计方法,具备初步的独立设计能力,提高综合运用所学的理论知识独立分析和解决问题的能力,培养学生的创新精神。 二、课程设计基本要求 掌握现代大规模集成数字逻辑电路的应用设计方法,进一步掌握电子仪器的正确使用方法,以及掌握利用计算机进行电子设计自动化(EDA)的基本方法。 三、设计课题要求 (1)构造一个24小时制的数字钟。要求能显示时、分、秒。 (2)要求时、分、秒能各自独立的进行调整。 (3)能利用喇叭作整点报时。从59分50秒时开始报时,每隔一秒报时一秒,到达00分00秒时,整点报时。整点报时声的频率应与其它的报时声频有明显区别。 #设计提示(仅供参考): (1)对频率输入的考虑 数字钟内所需的时钟频率有:基准时钟应为周期一秒的标准信号。报时频率可选用1KHz和2KHz左右(两种频率相差八度音,即频率相差一倍)。另外,为防止按键反跳、抖动,微动开关输入应采用寄存器输入形式,其时钟应为几十赫兹。 (2)计时部分计数器设计的考虑 分、秒计数器均为模60计数器。 小时计数为模24计数器,同理可建一个24进制计数器的模块。 (3)校时设计的考虑 数字钟校准有3个控制键:时校准、分校准和秒校准。 微动开关不工作,计数器正常工作。按下微动开关后,计数器以8Hz频率连续计数(若只按一下,则计数器增加一位),可调用元件库中的逻辑门建一个控制按键的模块,即建立开关去抖动电路(见书70页)。 (4)报时设计的考虑

毕业课程设计报告数字秒表的设计

(此文档为word格式,下载后您可任意编辑修改!) 目录 1 引言 (1) 1.1 课程设计的目的 (1) 1.2 课程设计的内容 (1) 2 EDA、VHDL简介 (1) 2.1 EDA技术 (1) 2.2 硬件描述语言——VHDL (2) 3设计过程 (4) 3.1 设计规划 (4) 3.2 各模块的原理及其程序 (4) 3.2.1控制模块 (5) 3.2.2时基分频模块 (5) 3.2.3计时模块 (6) 3.2.4显示模块 (7) 4系统仿真 (9) 结束语 (13) 致谢 (14) 参考文献 (15) 附录 (16)

1 引言 在科技高度发展的今天,集成电路和计算机应用得到了高速发展。尤其是计算机应用的发展。它在人们日常生活已逐渐崭露头角。大多数电子产品多是由计算机电路组成,如:手机、mp3等。而且将来的不久他们的身影将会更频繁的出现在我们身边。各种家用电器多会实现微电脑技术。电脑各部分在工作时多是一时间为基准的。本文就是基于计算机电路的时钟脉冲信号、状态控制等原理设计出的数字秒表。秒表在很多领域充当一个重要的角色。在各种比赛中对秒表的精确度要求很高,尤其是一些科学实验。他们对时间精确度达到了几纳秒级别。 1.1 课程设计的目的 本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。在掌握所学的计算机组成与结构课程理论知识时。通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析、解决计算机技术实际问题的能力。通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。 1.2 课程设计的内容 利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。该数字秒表能对0秒~59分59.99秒范围进行计时,显示最长时间是59分59秒。计时精度达到10ms。设计了复位开关和启停开关。复位开关可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备。 2 EDA、VHDL简介 2.1 EDA技术 EDA是指以计算机为工作平台,融合了应用电子技术、计算机技术、智能化技术的最新成果而开发出的电子CAD通用软件包,它根据硬件描述语言HDL完成的设计文件,自动完成逻辑编译、化简、分割、综合、优化、布局布线及仿真,直至完成对于特定目

EDA课程设计数字时钟

在系统编程技术EDA 课程设计报告 课程名称 E D A技术 日期2011年6月3日 目录 目录 0 一、设计目标和功能 (1) 二、设计方案 (1) 1、设计原理 (2) a. 晶体振荡器 (2) b.分频器电路 (3) 2、电路的工作原理 (4) 3、时、分、秒计数器电路 (5)

a.工作原理 (5) b.秒计数器模块程序与仿真 (5) c.秒表计数器电路仿真图 (6) d.分计数器模块程序与仿真 (7) e.分计数器电路仿真图 (8) f.小时计数器模块程序与仿真 (8) g.小时计数器电路仿真图 (9) h.时、分、秒电路顶层设计 (9) 三、仿真 (11) 四、心得体会 (11) 参考文献 (12) 一、设计目标和功能 利用VHDL设计数字钟显示电路的各个模块,并使用EDA工具对各模块进行仿真验证。数字钟显示电路的设计分为下面几个模块:秒计数模块、分计数模块、小时计数模块.。完成以后把各个模块整合后,显示相应的输出状态。最后以实现一个以时、分、秒计时的数字时钟。 二、设计方案

1、设计原理 数字钟是一个将“时”,“分”,“秒”显示于人的视觉器官的计时装置。它的计时周期为24小时,显示满刻度为23时59分59秒。因此,一个基本的数字钟电路主要由译码显示器、“时”,“分”,“秒”计数器、校时电路、报时电路和振荡器组成。干电路系统由秒信号发生器、“时、分、秒”计数器、译码器及显示器、校时电路组成。秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现。将标准秒信号送入“秒计数器”,“秒计数器”采用60进制计数器,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。“分计数器”也采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。“时计数器”采用24进制计时器,可实现对一天24小时的累计。原理图如图1: 图1 数字时钟原理图 a. 晶体振荡器 晶体振荡电路是构成数字式时钟的核心,它保证了时钟走时准确及稳定。晶体振荡器它的作用是产生时间标准信号。数字钟的精度主要取决于时间标准信号的频率及其稳定度。因此,一般采用石英晶体振荡器经过分频得到这一信号。晶体振荡器电路给数字钟提供一个频率稳定准确的32768Hz的方波信号,可保证数字钟的走时准确及稳定。不管是指针式的电子钟还是数字显示的电子钟都使用了

EDA数字秒表设计课程设计

EDA数字秒表设计 专业:自动化 班级学号:5090431 姓名: 2011年 6 月15 日

数字秒表设计实验任务书 一、设计实验目的: 在MAX+plusII软件平台上,熟练运用VHDL语言,完成数字时钟设计的软件编程、编译、综合、仿真,使用EDA实验箱,实现数字秒表的硬件功能。 二、设计实验说明及要求: 1、数字秒表主要由:分频器、扫描显示译码器、一百进制计数器、六十进制计数器(或十进制计数器与6进制计数器)、十二进制计数器(或二十四进制计数器)电路组成。在整个秒表中最关键的是如何获得一个精确的100H Z计时脉冲,除此之外,数字秒表需有清零控制端,以及启动控制端、保持保持,以便数字时钟能随意停止及启动。 2、数字秒表显示由时(12或24进制任选)、分(60进制)、秒(60进制)、百分之一秒(一百进制)组成,利用扫描显示译码电路在八个数码管显示。 3、能够完成清零、启动、保持(可以使用键盘或拨码开关置数)功能。 4、时、分、秒、百分之一秒显示准确。 三、数字时钟组成及功能: 1、分频率器:用来产生100H Z计时脉冲; 2、十二或二十四进制计数器:对时进行计数 3、六十进制计数器:对分和秒进行计数; 4、六进制计数器:分别对秒十位和分十位进行计数; 5、十进制计数器:分别对秒个位和分个位进行计数; 6、扫描显示译码器:完成对7字段数码管显示的控制; 四、系统硬件要求: 1、时钟信号为10MHz; 2、FPGA芯片型号EPM7128LC84—15、EP1K30TC144—3或EP1K100QC208—3(根据实验箱上FPGA芯片具体选择); 3、8个7段扫描共阴级数码显示管; 4、按键开关(清零、启动、保持); 五、设计内容及步骤: 1、根据电路持点,用层次设计概念。将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口,同时加深层次化设计概念; 2、软件的元件管理深层含义,以及模块元件之间的连接概念,对于不同目录下的同一设计,如何熔合; 3、适配划分前后的仿真内容有何不同概念,仿真信号对象有何不同,有更深一步了解。熟悉了CPLD/FPGA设计的调试过程中手段的多样化; 4、按适配划分后的管脚定位,同相关功能块硬件电路接口连线; 5、所有模块尽量采用VHDL语言设计。 六、硬件实现 将时序仿真正确的文件下载到实验箱中的EPM7128LC84—15、EP1K30TC144—3或EP1K100QC208—3中,通过合适的管脚分配,将相应的管脚连接起来,验证设计是否完成设计要求;

EDA课程设计报告(数字电子时钟)

EDA课程设计报告 设计题目:数字时钟的设计 班级:电气工程及其自动化 姓名: 学号: 日期:2014年6月15日

目录 摘要 一、课程设计任务及要求 (3) 1.1实验目的 (3) 1.2功能设计 (4) 二、整体设计思想 (4) 2.1性能指标及功能设计 (4) 2.2总体方框图 (4) 三、详细设计........................................................................................................ 错误!未定义书签。 3.1数字时钟的结构:............................................................ 错误!未定义书签。 3.2控制模块的结构 (5) 3.3.1按键处理模块 (6) 3.3.2定时时钟模块 (6) 3.3.3扫描时钟模块 (6) 3.3.4定时计数模块 (6) 3.3.5显示控制模块 (7) 四、主程序 (7) 五、实验步骤 (14) 5.1工程建立及存盘14 5.2时序仿真14 5.3引脚锁定14 5.4硬件测试15 5.5实验结果15 结束语15参考文献16

EDA技术实现的数字电子时钟设计 作者:指导老师: 摘要 EDA技术在硬件实现方面融合了大规模集成电路制造技术,IC版图设计技术、ASIC测试与封装技术、FPGA /CPLD编程下载技术、自动检测技术等;EDA技术为现代电子理论和设计的表达与实现提供了可能性。在现代技术的所有领域中,纵观许多得以飞速发展的科学技术,多为计算机辅助设计,而非自动化设计。显然,最早进入设计自动化的技术领域之一是电子技术,这就是为什么电子技术始终处于所有科学技术发展最前列的原因之一。不难理解,EDA技术已不是某一学科的分支,或某种新的技能技术,应该是一门综合性学科。它融合多学科于一体,打破了软件和硬件间的壁垒,是计算机的软件技术与硬件实现、设计效率和产品性能合二为一,它代表了电子设计技术合应用激活速的发展方向。 电子时钟以成为人们常生活中数字电子钟一般由振荡器,分频器,译码器,显示器等部分组成。电子时钟的应用非常广泛,应用于人家庭或车站、剧场、办公室等公共场所,给人们的生活,学习,工作,娱乐带来极大的便利,尽管目前市场上以有现成电子时钟集成电路芯片,价格便宜这些都是数字电路中最基本的,应用最广的电路。数字电子钟的基本逻辑功能框图如下:它是一个将“时”,“分”,“秒”显示于人的视觉器官的计时装置。他的计时装置的周期为24小时,显示满刻度为23时 59分59秒,另外应有校时功能。 关键字:EDA;VHDL语言;电子时钟 一、课程设计任务及要求 1.1实验内容 选用合适的可编程逻辑器件及外围电子元器件。设计一个数字电子钟,利用EDA 软件(QUARTUSⅡ)进行编译及仿真,设计输入可采取VHDL硬件描述语言输入法和原理图输入法,并下载到EDA实验开发系统,连接外围电路,完成实际测试。

相关主题
文本预览
相关文档 最新文档