西安建筑科技大学课程设计(**)任务书。
专业班级: 学生姓名: 指导教师(签名。
目录。一、数字时钟设计的背景 2
二、数字时钟设计的目的 2
三、数字时钟的功能 3
四、数字时钟的设计 3
1.设计思路 3
1.1数字时钟控制器的输入输出总体框图 3
1.2数字时钟控制器的总体设计框图 3
2. 方案论证 4
2.1 数字钟设计方案论证 4
3. 单元模块设计部分 4
3.1 时钟分频模块 4
3.2 时分秒计时控制电路模块 6
3.3译码显示模块 15
4. 系统** 16
4.1数字钟**图 16
4.2 数字钟原理图 17
五、课程设计总结 19
本学期我们完成了《eda技术基础》课程的学习,相应的已经学习了有关的硬件语言:vhdl语言,通过课程学习过程中理论与实践的结合,已经对应用vhdl语言和eda技术来设计电路有一些了解。
1.掌握多级计数器级联的原理和其设计方法;
2.掌握多个数码管显示的原理与方法;
3.掌握用fpga技术的层次化设计方法;
4.进一步掌握用vhdl硬件描述语言的设计思想,熟练的用原理图方式或vhdl语言设计各种进制的数字计数器(6进制、10进制、12进制);
5.了解有关数字系统的设计。
1.能显示1/10秒、秒、分、时,能以12h循环计数。
2.精度是0.1秒。
3.具有系统清零、暂停系统并使系统重新工作的功能。
4可以进行调时调分调秒的功能扩展。
基于vhdl语言,用top_down的思想进行设计。
clk 时钟输入。
clrn(清零端) 七段数码管的输入。
开始/停止信号)
start/stop
clrn(清零端)
置“1”start/stop
clk 十进制计数器、六进制计数器、二进制计数器以及由此级联成的六十进制计数器、十二进制计数器构成数字时钟的计数部分;输入25mhz的时钟经分频器产生100hz的时钟进入计数器电路;
对于停止/开始的控制部分功能的实现有两种方案:方案一有普通门电路连接计数器的clrn、ldn和en,使其分别为“1”、“1”和“0”,则有各计数器真值表可知输出q值不变,从而实现该功能。方案二输入一个由t触发器构成的控制时钟,来实现该功能。
本设计采用的是方案二。
单元设计模块分为三大部分:时钟分频模块,时分秒计时控制电路模块和译码显示模块。
如图3.1所示:
图 3.1程序如下:
library ieee;
use entity div is
port(clr,clk: in bit;q: buffer bit);
end div;
architecture a of div is
signal counter:integer range 0 to 12499;
beginprocess(clr,clk)
beginif (clk='1' and clk'event) then
if clr='1' then
counter<=0;
elsif counter=12499 then
counter<=0;
q<= not q;
elsecounter<=counter+1;
end if;
end if;
end process;
end a;
其**波形如下:
3.2.1时分秒计时控制电路模块门控时钟电路。
门控时钟采用t触发器来实现,采用作为时钟信号并将其输入置1,当每发生一次上沿跳变,其状态就改变一次。与门另一输入为分频器的输出q。
3.2.1.1 原理如图 3.2.1.1 所示:
置“1”start/stop 门控时钟。
q图 3.2.1.1
3.2.1.2 门控电路t触发器设计。
如图3.2.1.2所示:
图 3.2.1.2
程序如下:library ieee;
use use
entity tttt is
port (
clock : in std_logic ;-clock
reset : in std_logic ;-reset
t_in : in std_logic ;-data in
t_out : out std_logic --data out
end tttt;
architecture a of tttt is
signal reg_t_out : std_logic ; internal signals
begin
process (clock,reset) begin
if (reset = 1') then --asynchronous reset
reg_t_out <=0';
elsif (clock'event and clock = 1') then
if t_in ='1' then
reg_t_out<= not reg_t_out;
end if;
end if;
end process;
t_out <=reg_t_out ;
end a;
其**波形如下:
3.2.2 时分秒计时控制电路模块十分之一秒计数电路。
如图3.2.2所示:
图3.2.2
程序如下:library ieee;
use use
entity cout10v is
port(clrn,ldn,en,clk :in std_logic;
da :in std_logic_vector(3 downto 0);
qa :out std_logic_vector(3 downto 0);
rco :out std_logic
end cout10v ;
architecture a of cout10v is
beginprocess(clk)
variable tmpa :std_logic_vector(3 downto 0);
beginif clrn='0' then tmpa:="0000";
else if(clk'event and clk='1') then
if ldn='0' then tmpa:=da;
elsif en='1' then
if tmpa="1001" then
tmpa:="0000";
elsif tmpa="1101" then
tmpa:="0000";
elsetmpa:=tmpa+1;
end if;
end if;
end if;
end if;
qa<=tmpa;
rco<= tmpa(0) and tmpa(3) and en;
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计时...