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

EDA数字秒表课程设计

EDA数字秒表课程设计
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主要辅助进行三个方面的设

计工作:IC设计、电子电路设计和PCB设计。没有EDA技术的支持,想要完成超大规模集成电路的设计制造是不可想象的;反过来,生产制造技术的不断进步又必将对EDA技术提出新的要求。

2.2 硬件描述语言——VHDL

★ VHDL的简介

VHDL语言是一种用于电路设计的高级语言。它在80年代的后期出现。最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。但是,由于它在一定程度上满足了当时的设计需求,于是他在1987年成为A I/IEEE的标准(IEEE STD 1076-1987)。1993年更进一步修订,变得更加完备,成为A I/IEEE的A I/IEEE STD 1076-1993标准。目前,大多数的CAD厂商出品的EDA软件都兼容了这种标准。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL 的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL 于Verilog语言将承担起大部分的数字系统设计任务。

★ VHDL语言的特点

VHDL的程序结构特点是将一项工程设计,关于用VHDL和原理图输入进行CPLD/FPGA 设计的粗略比较:在设计中,如果采用原理图输入的设计方式是比较直观的。你要设计的是什么,你就直接从库中调出来用就行了。这样比较符合人们的习惯。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。应用VHDL进行工程设计的优点是多方面的。

(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。

(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。

(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。

(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。

(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。

★ VHDL的设计流程

它主要包括以下几个步骤:

1.文本编辑:

用任何文本编辑器都可以进行,也可以用专用的HDL编辑环境。通常VHDL文件保存为.vhd文件,Verilog文件保存为.v文件

2.功能仿真:

将文件调入HDL仿真软件进行功能仿真,检查逻辑功能是否正确(也叫前仿真,对简单的设计可以跳过这一步,只在布线完成以后,进行时序仿真)

3.逻辑综合:

将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式。逻辑综合软件会生成.edf或.edif 的EDA工业标准文件。

4.布局布线:

将.edf文件调入PLD厂家提供的软件中进行布线,即把设计好的逻辑安放PLD/FPGA 内。

5.时序仿真:

需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序。(也叫后仿真)通常以上过程可以都在PLD/FPGA厂家提供的开发工具。

6.器件编程

3设计过程

3.1 设计规划

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

图3-1 系统组成框图

3.2各模块的原理及其程序

本系统设计由控制模块、时基分频模块,计时模块和显示模块四部分组成。各模块实现秒表不同的功能。图3-2就是整个系统原理图。

3.2.1控制模块

计时模块的作用是针对计时过程进行控制。计时控制模块可用俩个按钮来完成秒表

的启动、停止和复位。部分源程序如下:

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);

……………………

………………………

COM:PROCESS(SP,CURRENT_STATE)

BEGIN

END IF;

END PROCESS;

END BEHA VE;

3.2.2时基分频模块

时基分频模块的作用把输入时钟信号变为分频输出信号。源程序:

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;

3.2.3计时模块

计时模块执行计时功能,计时方法和计算机一样是对标准时钟脉冲计数。他是由四个十进制计数器和俩个六进制计数器构成,其中毫秒位、十毫秒位、秒位和分位采用十进制计数器,十秒位和十分位采用六进制计数器。源程序:

①.十进制计数器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CDU10 IS

PORT( CLK:IN STD_LOGIC;

CLR,EN:IN STD_LOGIC;

CN :OUT STD_LOGIC;

COUNT10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));

END CDU10;

……………………………………

……………………………………

END IF;

END IF;

END PROCESS;

END ART;

②六进制计数器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CDU6 IS

…………………………………

…………………………………

END IF;

END IF;

END PROCESS;

END ART;

③计数器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY COUNT IS

………………………………

………………………………

END ART;

3.2.4显示模块

计时显示电路的作用是将计时值在LED数码管上显示出来。计时电路产生的值经过BCD七段译码后,驱动LED数码管。计时显示电路的实现方案采用扫描显示。部分源程序:

①数据选择器

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY MULX IS

PORT( CLK,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);

………………………………

………………………………

END CASE;

END IF;

END PROCESS;

END ART;

②BCD七段译码器

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;

4系统仿真

(1)时基分频模块的仿真(如图 4-1所示)

分析:CLK

(2)控制模块的仿真(如图 4-2所示)

分析:CLK、CLR和SP为输入信号,EN为输出信号。(3)计时电路模块的仿真(如图 4-3~图4-5所示)

① 十进制计数器的仿真(如图4-3所示)

② 六进制计数器的仿真(如图4-4所示)

③ 计数器的仿真(如图4-5所示)

分析:clk 为时钟脉冲脉冲,s_1ms 是毫秒计数值,s_10ms 是十毫秒计数器,s_100ms 是百毫秒计数器,s_1s 是秒计数器,s_10s 是十秒计数器,m_1min 是分计数器,s_10min 是十分计数器,hour 是小时计数器。它们均为输入信号。每来两个时钟脉冲,s_1ms

1,当s_1ms 满十时,s_10ms 加1,依次类推,s_10ms 满十的时候,s_100ms 加1等等作为输出。

(4) 显示电路模块的仿真(如图 4-6~图4-7所示) ① 数据选择器的仿真(如图 4-6所示)

② BCD 七段译码器驱动器的仿真(如图 4-7所示)

分析:bcd 为时钟脉冲输入信号,led 是输出信号,如图所示:当输出为“1111110”时候,输入为“0000”;当输出为“0110000”时输入“0001”,当输入为“0010”时输出为“1101101”,当输入为“0011”时输出为“1111001”等等来实现七段译码功能。

(5) 数字秒表整个系统的仿真(如图4-8所示)

分析:秒表开始从零开始计数,每次增加10ms。工作很正常的进行。

结束语

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

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

致谢

经过快两个星期的紧张工作,我终于完成了我的设计任务——设计数字秒表。在这次课程设计中特别感谢肖晓丽老师对我的指导,正是由于她的督促和耐心指导,我才可以顺利完成这次的设计。锻炼了动手能力,给以后的学习指出了一个方向。

参考文献

[1] 谢华生.VHDL数字控制系统设计范例.北京:电子工业出版社,2006

[2] 万高明.EDA技术实验与课程设计.长沙:湖南大学出版社,2004

[3] 黄仁欣.EDA技术实用教程.北京:清华大学出版社,2006

附录

1.时基分频模块的源程序(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;

2.控制模块的源程序(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

CONSTANT S0: STD_LOGIC_VECTOR (1 DOWNTO 0):="00"; CONSTANT S1: STD_LOGIC_VECTOR (1 DOWNTO 0):="01"; CONSTANT S2: STD_LOGIC_VECTOR (1 DOWNTO 0):="11"; CONSTANT S3: STD_LOGIC_VECTOR (1 DOWNTO 0):="10"; TYPE STATES IS (S0,S1,S2,S3);

SIGNAL CURRENT_STATE,NEXT_STATE:STATES;

BEGIN

COM:PROCESS(SP,CURRENT_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(clk)

BEGIN

IF CLR='1'THEN

CURRENT_STATE <=S0;

ELSIF CLK'EVENT AND CLK='1'THEN

CURRENT_STATE<=NEXT_STA TE;

END IF;

END PROCESS;

END BEHA VE;

3.计时模块的源程序

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

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CDU10 IS

PORT( CLK:IN STD_LOGIC;

CLR,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;

(2)六进制计数器的源程序(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 (CLK,CLR,EN)

BEGIN

IF(CLR='1')THEN

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

ELSIF RISING_EDGE(CLK) THEN

IF(EN='1')THEN

IF SCOUNT6="0101"THEN

CN<='1';

SCOUNT6<="0000";

ELSE

CN<='0';

SCOUNT6<=SCOUNT6+'1';

END IF;

END IF;

END IF;

END PROCESS;

END ART;

(3)计数器的源程序(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);

S_1MIN:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

S_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:CDU10 PORT MAP (C,CLR,EN,D,S_1S);

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

U6:CDU10 PORT MAP (E,CLR,EN,F,S_1MIN);

U7:CDU6 PORT MAP (F,CLR,EN,G,S_10MIN);

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

END ART;

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

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