EDA课程设计

发布 2022-09-30 20:03:28 阅读 3541

《eda技术综合设计》

课程设计报告。

报告题目数字秒表设计

作者所在系部: 电子工程系

作者所在专业: 自动化。

作者所在班级。

作者姓名。指导教师姓名。

完成时间2024年11月30号

本次设计的目的就是在掌握eda实验开发系统的初步使用基础上,了解eda技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。在掌握所学的计算机组成与结构课程理论知识时。通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析、解决计算机技术实际问题的能力。

通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。

利用vhdl语言设计基于计算机电路中时钟脉冲原理的数字秒表。该数字秒表能对0秒~59分59.99秒范围进行计时,显示最长时间是59分59秒,到了一小时后,报警器开始报警,计时精度达到10ms。

设计了复位开关和启停开关。复位开关可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备。

字体、格式、图号不对、重新修改。

一、设计要求:

1.秒表共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为bcd码输出,这样便于和显示译码器的连接。当计时达60分钟后,蜂鸣器鸣响10声。

2.整个秒表还需有一个启动信号和一个归零信号,以便秒表能随意停止及启动。

3.秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器、六进制计数器和报警器组成。在整个秒表中最关键的是如何获得一个精确的100hz计时脉冲。

二、实验目的:

通过本次课设,加深对eda技术设计的理解,学会用maxplusⅱ工具软件设计基本电路,熟练掌握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。

四、源程序(*.vhd)和原理图(*gdf):

1.计时模块:计时模块执行计时功能,计时方法和计算机一样是对标准时钟脉冲计数。

他是由四个十进制计数器和俩个六进制计数器构成,其中毫秒位、十毫秒位、秒位和分位采用十进制计数器,十秒位和十分位采用六进制计数器。源程序:

1)十进制计数器(count_10)

library ieee;

use use

entity count10 is

port (clk,start,clr : in std_logic;

cout : out std_logic;

daout : out std_logic_vector(3 downto 0));

end count10;

architecture one of count10 is

signal q0 : std_logic_vector(3 downto 0);

signal q1 : std_logic;

beginprocess(clk,clr)

beginif clr='1' then q0<="0000";

elsif clk'event and clk='1' then

if start='1' then

if q0="1001" then

q0<="0000";

q1<='1';

else q0<=q0+1;

q1<='0';

end if;

end if;

end if;

end process;

daout<=q0;

cout<=q1;

end one;

2)六进制计数器(count_6)

library ieee;

use use

entity count6 is

port (clk,start,clr : in std_logic;

cout : out std_logic;

daout: out std_logic_vector(3 downto 0));

end count6;

architecture two of count6 is

signal q0 : std_logic_vector(3 downto 0);

signal q1 : std_logic;

beginprocess(clk,clr)

beginif clr='1' then q0<="0000";

elsif clk'event and clk='1' then

if start='1' then

if q0="0101" then

q0<="0000";

q1<='1';

else q0<=q0+1;

q1<='0';

end if;

2.报警器(alarm_3)

当计数到一小时的时候,回来一个高电平,然后报警器会出现10个高电平和10个低电平。程序如下:

library ieee;

use use

entity alarm_3 is

port (clk,clr,i : in std_logic;

qer:buffer std_logic_vector(4 downto 0);

q : out std_logic);

end alarm_3;

architecture four of alarm_3 is

beginprocess(clk,clr,i)

beginif clr='1' then qer<="00000";

elsif(clk'event and clk='1') then

if(i='1')then

if(qer="10100")then null;

else qer<=qer+1;

end if;

end if;

end if;

end process;

q<=qer(0);

EDA课程设计

题目一 数字钟设计 学号1 15 一 实验目的。学习并掌握数字钟的原理 设计方法。二 实验内容。计数始终由模60秒计数器 模60分计数器 模24小时计数器 报时模块 分 时设定模块及输出显示模块构成。可以采用同步计数器或异步计数器设计方法。三 实验要求。计时范围为0小时0分0秒至23小时59分59秒...

eda课程设计

哈尔滨工业大学 威海 信电学院电子信息工程。一 软硬件介绍。1软件部分介绍。1.1 quartus ii 是altera公司的综合性pld fpga开发软件,支持原理图 vhdl veriloghdl以及ahdl altera hardware description language 等多种设计输...

eda课程设计

目录。1 引言 2 1.1 课程设计的目的与任务 2 1.2 课程设计的内容 2 1.3课程设计仪器设备 2 1.4 课程设计的题目 2 1.5 方案的选择 2 2设计方案 3 2.1 设计原理 3 2.2各功能模块的原理及其源程序 3 2.2.1控制模块 3 2.2.2分频模块 4 2.2.3计时...