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

EDA数字秒表课程设计

EDA数字秒表课程设计
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;

ENTITY CTRL IS

PORT(CLR,CLK,SP:IN STD_LOGIC;

EN:OUT STD_LOGIC);

END;

ARCHITECTURE BEHA VE OF CTRL IS

TYPE STATES IS ARRAY(1 DOWNTO 0) OF STD_LOGIC; CONSTANT S0: STATES:="00";

CONSTANT S1: STATES:="01";

CONSTANT S2: STATES:="11";

CONSTANT S3: STATES:="10";

SIGNAL CURRENT_STATE,NEXT_STATE:STATES; BEGIN

COM:PROCESS(SP,CURRENT_STATE,NEXT_STATE) BEGIN

CASE CURRENT_STATE IS

WHEN S0=>EN<='0';

IF SP='1' THEN

NEXT_STATE<=S1;

ELSE

NEXT_STATE<=S0;

END IF;

WHEN S1=>EN<='1';

IF SP='1' THEN

NEXT_STATE<=S1;

ELSE

NEXT_STATE<=S2;

END IF;

WHEN S2=>EN<='1';

IF SP='1' THEN

NEXT_STATE<=S3;

ELSE

NEXT_STATE<=S2;

END IF;

WHEN S3=>EN<='0';

IF SP='1' THEN

NEXT_STATE<=S3;

ELSE

NEXT_STATE<=S0;

END IF;

END CASE;

END PROCESS;

SYNCH:PROCESS(CLR,CLK,SP)

BEGIN

IF CLR='1' THEN

CURRENT_STATE<=S0;

ELSIF CLK'EVENT AND CLK='1' THEN

CURRENT_STATE<=NEXT_STATE;

END IF;

END PROCESS;

END;

CTRL仿真波形

(三)计时模块的VHDL源程序

(1)十进制计数器的VHDL 源程序(CDU10.VDH)

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CDU10 IS

PORT(CLK:IN STD_LOGIC;

CLR:IN STD_LOGIC;

EN:IN STD_LOGIC;

CN:OUT STD_LOGIC;

COUNT10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END CDU10;

ARCHITECTURE ART OF CDU10 IS

SIGNAL SCOUNT10:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN

COUNT10<=SCOUNT10;

PROCESS(CLK,CLR,EN)

BEGIN

IF(CLR='1') THEN

SCOUNT10<="0000";CN<='0';

ELSIF RISING_EDGE(CLK) THEN

IF(EN='1') THEN

IF SCOUNT10="1001" THEN

CN<='1';

SCOUNT10<="0000";

ELSE

CN<='0';

SCOUNT10<=SCOUNT10+1;

END IF;

END IF;

END IF;

END PROCESS;

END ART;

CDU10仿真波形

(2)六进制计数器的VHDL 源程序(CDU6.VDH)

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CDU6 IS

PORT(CLK,CLR,EN:IN STD_LOGIC;

CN:OUT STD_LOGIC;

COUNT6:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END CDU6;

ARCHITECTURE ART OF CDU6 IS

SIGNAL SCOUNT6:STD_LOGIC_VECTOR(3 DOWNTO 0);

BEGIN

COUNT6<=SCOUNT6;

PROCESS(CLR,EN,CLK)

BEGIN

IF (CLR='1') THEN

SCOUNT6<="0000";CN<='0';

ELSIF RISING_EDGE(CLK) THEN

IF (EN='1') THEN

IF SCOUNT6="0101" THEN

SCOUNT6<="0000";CN<='1';

ELSE

SCOUNT6<=SCOUNT6+1;CN<='0';

END IF;

END IF;

END IF;

END PROCESS;

END ART;

CDU6仿真波形

(3)计时器的VHDL源程序(COUNT.VHD)

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY COUNT IS

PORT(CLK,CLR,EN:IN STD_LOGIC;

S_1MS:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

S_10MS:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

S_100MS:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

S_1S:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

S_10S:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

M_1MIN:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

M_10MIN:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

HOUR:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END COUNT;

ARCHITECTURE ART OF COUNT IS

COMPONENT CDU10

PORT(CLK,CLR,EN:IN STD_LOGIC;

CN:OUT STD_LOGIC;

COUNT10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END COMPONENT CDU10;

COMPONENT CDU6

PORT(CLK,CLR,EN:IN STD_LOGIC;

CN:OUT STD_LOGIC;

COUNT6:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END COMPONENT CDU6;

SIGNAL A,B,C,D,E,F,G,H:STD_LOGIC;

BEGIN

UL:CDU10 PORT MAP(CLK,CLR,EN,A,S_1MS);

U2:CDU10 PORT MAP(A,CLR,EN,B,S_10MS);

U3:CDU10 PORT MAP(B,CLR,EN,C,S_100MS);

U4:CDU6 PORT MAP(C,CLR,EN,D,S_1S);

U5:CDU10 PORT MAP(D,CLR,EN,E,S_10S);

U6:CDU6 PORT MAP(E,CLR,EN,F,M_1MIN);

U7:CDU10 PORT MAP(F,CLR,EN,G,M_10MIN);

U8:CDU6 PORT MAP(G,CLR,EN,H,HOUR);

END ART;

COUNT仿真波形

(四)显示模块的VHDL源程序

数据选择器的VHDL源程序(MULX.VHD)

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY MULX IS

PORT(CLK1,CLR,EN:IN STD_LOGIC;

S_1MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

S_10MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

S_100MS:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

S_1S:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

S_10S:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

M_1MIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

M_10MIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

HOUR:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

OUTBCD:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

SEG:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END MULX;

ARCHITECTURE ART OF MULX IS

SIGNAL COUNT: STD_LOGIC_VECTOR(3 DOWNTO 0);

BEGIN

PROCESS(CLR,CLK1)

BEGIN

IF CLR='1' THEN

COUNT<="1111";

ELSIF RISING_EDGE(CLK1)THEN

IF EN='1' THEN

IF COUNT="1001" THEN

COUNT<="0000";

ELSE

COUNT<=COUNT+'1';

END IF;

END IF;

END IF;

END PROCESS;

PROCESS(CLK1)

BEGIN

IF CLK1'EVENT AND CLK1='1' THEN

CASE COUNT IS

WHEN"0000"=>OUTBCD<=S_1MS; SEG<="00000001";

WHEN"0001"=>OUTBCD<=S_10MS; SEG<="00000010";

WHEN"0010"=>OUTBCD<=S_100MS; SEG<="00000100";

WHEN"0011"=>OUTBCD<=S_1S; SEG<="00001000";

WHEN"0100"=>OUTBCD<=S_10S; SEG<="00010000";

WHEN"0101"=>OUTBCD<=M_1MIN; SEG<="00100000";

WHEN"0110"=>OUTBCD<=M_10MIN; SEG<="01000000";

WHEN"0111"=>OUTBCD<=HOUR; SEG<="10000000";

WHEN"1000"=>OUTBCD<=S_1MS; SEG<="00000001";

WHEN"1001"=>OUTBCD<=S_10MS; SEG<="00000010";

WHEN OTHERS=>OUTBCD<="0000"; SEG<="00000000";

END CASE;

END IF;

END PROCESS;

END ART;

MULX仿真波形

(五)BCD七段译码驱动器的VHDL源程序(BCD7.VHD)LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY BCD7 IS

PORT(BCD:IN STD_LOGIC_VECTOR(3 DOWNTO 0);

LED:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));

END BCD7;

ARCHITECTURE ART OF BCD7 IS

BEGIN

LED<="1111110"WHEN BCD="0000" ELSE

"0110000"WHEN BCD="0001" ELSE

"1101101"WHEN BCD="0010" ELSE

"1111001"WHEN BCD="0011" ELSE

"0110011"WHEN BCD="0100" ELSE

"1011011"WHEN BCD="0101" ELSE

"1011111"WHEN BCD="0110" ELSE

"1110000"WHEN BCD="0111" ELSE

"1111111"WHEN BCD="1000" ELSE

"1111011"WHEN BCD="1001" ELSE

"0000000";

END ART;

BCD7仿真波形

(六)分频模块的VHDL源程序(fenpin.VHD)library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity fenpin is

port(clk:in std_logic;

second:BUFFER std_logic:='0');

end;

architecture beha of fenpin is

signal s1:integer range 0 to 3000;

begin

process(clk)

begin

if (clk'event and clk='0') then

if(s1=2500) then

second<=not second;

s1<=0;

else s1<=s1+1;

end if;

end if;

end process;

end;

分频模块的仿真波形

(七)顶层设计的原理图

三、整体电路图原理说明:

在电路图中,CLK是计时脉冲,由于硬件试验箱中没有合适的频率脉冲来准确计时,因此需要通过一个分频器将5000HZ的脉冲分频成毫秒计时,将已分频的脉冲输入进位元件,进位元件中包括十进制与六进制的进位功能,其中1毫秒、10毫秒、100毫秒、1秒、1分钟都为十进制进位,10秒、10分钟为六进制。CLK1为扫描脉冲,硬件的连接是靠动态扫描的,因此需要一个扫描脉冲信号来扫描八位数码管,可以通过改变CLK1的频率改变数码管显示的快慢程度。CLR是清零信号7,SP是计时开关信号8,他们与动态扫描脉冲共同构成控制元件,当清零信号为高电平的脉冲信号时,计时显示清零,计数器从零开始计数;SP开关信号控制计时过程中的停止与开始,计时开始后,按下SP,计时停止,再按一下SP计数器继续原来的显示开始计时。计时脉冲、输出的使能信号和清零信号共同组成计数元件,完成毫秒、秒、分、时之间的顺利进位功能。动态扫描信号、清零信号、使能信号和计数元件输出的计数结果信号共同组成数据选择器元件的功能,通过动态扫描不停地扫描八位数码管,从而显示出计时结果。再将数据选择器的输出信号输入七段译码器,将扫描结果与内容显示在数码管上。从而完成整个数字秒表的计数功能,且计数精度为1毫秒,可实现计数的开始与停止,符合实验要求。

四、硬件连接:

采用数码管的动态扫描模式,只需将数码管的片选引脚与七段显示数码管的引脚锁存即可;然后,再将清零信号、SP控制信号、动态扫描信号均锁存时钟脉冲信号,以便控制数字秒表的控制。

管脚锁存具体情况:

五、系统设计方案:

根据系统的设计要求,系统的组成框图如下图:

模块、时基分频模块、计时模块和显示模块四部分组成。

(1)控制模块

计时控制模块的作用是对计时过程进行控制,计时控制模块可用两个按钮开关来完成秒表的启动、停止和复位。

(2)计时模块

计时模块执行计时功能,计时的方法是对标准时钟脉冲计数。由于计数范围是0秒~59分59.99秒,所以计数器可以由四个十进制计数器和两个六进制计数器构成,其中毫秒位、十毫秒位、秒毫秒位和分位采用十进制计数器,十秒位和十分位采用六进制计数器。

(3)显示模块

计时显示电路的作用是将计时值在LED七段数码管上显示出来。计时电路产生的计时值经过BCD七段译码后,驱动LED数码管。计时显示电路的实现方案采用扫描显示,即每次只驱动一位数码管,各位数据轮流驱动对应的数码管进行显示。

六、实验显示结果:

将顶层文件下载到硬件试验箱,下载完毕后,八个七段数码管同时点亮,计数从最低位,即1毫秒开始,接着向10毫秒进位,然后依次为向100毫秒、1秒、10秒、1分钟、10分钟进位。清零信号的脉冲控制信号,高电平的时候有效,即高电平的到来时,计数器清零,八个数码管显示均为零,再从头开始计数。SP 控制信号,是由状态机控制的,因此可以通过给SP高电平来实现计数器的开始计时、停止计时,再开始计时,从而循环往复。其中,清零信号的优先级优于SP信号,数字秒表能精确到1毫秒,最高计数可达到59.99分。总体来说,整个数字秒表可以实现实验要求的功能。

七、心得体会:

通过这次课程设计,我又将EDA的知识重新学习了一遍,从源代码的编写到硬件的连接,是我充分掌握了EDA的整体内容。

刚开始接触的时候还有一些生疏,通过浏览了一遍课本以及查阅相关资料,了解了需要设计的数字秒表的整体设计过程。先分模块编写源程序,调试好相关程序建立正确的仿真波形,将每个模块的功能实现。每个模块都建立一个独立的工程,且都生成元件为最后的顶层文件的整体电路图做准备。在最后的原理图中,将各元件分布排列好,输出输入为单个数据的,用比较细的线就行,若输入输出为数组形势的就必须用比较粗的线连接。在连线的时候注意不要将不需要连接的线连在一起,以免报错。

选择数码管模式的时候要注意结合所设计的方案与期望的效果,数字秒表应用动态扫描模式,每次只亮一个数码管,但是人眼所见的是八个数码管同时点亮,这样,比静态模式节省能源,而且在锁管脚的时候是比较简单的,只需要锁存八个片选端、七段数码管显示端即可。再通过查看附录中的时钟脉冲信号的管脚以及其他需要的信号管脚,将实验中所涉及到的信号都锁存好就没有太大的问题了。

在调试硬件试验箱的时候,将CLK所存的时钟脉冲信号置成5000Hz,以实现正常秒表的频率,再调试CLK1扫描信号的频率,使其不要太快也不要太慢,能进行正常扫描。试验箱中的信号有时反应不太灵敏,在硬件仿真的时候得不到很好的效果,可以改变锁存的管脚,再进行调试,知道获得满意的效果。

第一次调试的时候,由于没有加上分频的模块,就直接在试验箱上选择的计

时脉冲的频率,结果没有合适的频率可供使用,不是太快就是太慢,在老师和同学的帮助下,通过编写和调整分频模块的源程序,将试验箱上5000Hz的频率分频成能产生1ms的频率,是数字秒表更接近实际生活中的秒表。

通过这次课程设计,提高了我的EDA编程水平,学会了查找自己所需要的资料,通过向老师和同学请教,提高了我的实践能力,使我学会了理论联系实际,将课本上的知识真正地运用到了实际中。在实验中,不仅锻炼了我们软件编程的能力,还让我们学会了软硬件相结合,这更具有实用意义。

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/367166154.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实验开发系统,连接外围电路,完成实际测试。

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