EDA课程设计

发布 2022-09-30 20:14:28 阅读 4320

——四路抢答器。

学院:物理电气信息学院。

班级:10级。

姓名:学号:

指导老师:杨泽林。

一方案设计。

将该任务分成七个模块进行设计,分别为:抢答器鉴别模块、抢答器计时模块、抢答器记分模块、分频模块、译码模块、数选模块、报警模块,最后是顶层文件。

1. 抢答器鉴别模块:

在这个模块中主要实现抢答过程中的抢答功能,并能对超前抢答进行警告,还能记录无论是正常抢答还是朝前抢答者的台号,并且能实现当有一路抢答按键按下时,该路抢答信号将其余个绿抢答封锁的功能。其中有四个抢答信号s0、s1、s2、s3;抢答使能信号s;抢答状态显示信号states;抢答与警报时钟信号clk2;系统复位信号rst;警报信号tmp。

2. 抢答器计时模块:

在这个模块中主要实现抢答过程中的计时功能,在有抢答开始后进行30秒的倒计时,并且在30秒倒计时后无人抢答显示超时并报警。其中有抢答时钟信号clk2;系统复位信号rst;抢答使能信号s;抢答状态显示信号states;无人抢答警报信号warn;计时中止信号stop;计时十位和个位信号tb,ta。

3. 数据选择模块:

在这个模块中主要实现抢答过程中的数据输入功能,输入信号a[3..0]、b[3..0]、c[3..

0];计数输出信号s;数据输出信号y;计数脉冲clk2,实现a、b、c按脉冲轮流选通,在数码管上显示。

4. 报警模块:

在这个模块中主要实现抢答过程中的报警功能,当主持人按下控制键,有限时间内人抢答或是计数到时蜂鸣器开始报警,有效电平输入信号i;状态输出信号q;计数脉冲clk2。

5. 译码模块:

在这个模块中主要实现抢答过程中将bcd码转换成7段的功能。

6. 分频模块:

在这个模块中主要实现抢答过程中实现输出双脉冲的功能。

7. 顶层文件:

在这个模块中是对前七个模块的综合编写的顶层文件。

二单元电路设计。

一)抢答模块。

源程序。library ieee;--抢答鉴别模块。

use use

entity qdjb is

port(rst,clk2:in std_logic;

s0,s1,s2,s3:in std_logic;

states:buffer std_logic_vector(3 downto 0);

tmp:out std_logic);

end qdjb;

architecture one of qdjb is

signal st:std_logic_vector(3 downto 0);

beginp1:process(s0,rst,s1,s2,s3,clk2)

beginif rst='0' then

tmp<='0';st<="0000";

elsif clk2'event and clk2='1' then

if (s0='1' or st(0)='1')and not( st(1)='1' or st(2)='1' or st(3)='1' )then st(0)<=1';

end if ;

if (s1='1' or st(1)='1')and not( st(0)='1' or st(2)='1' or st(3)='1' )then st(1)<=1';

end if ;

if (s2='1' or st(2)='1')and not( st(0)='1' or st(1)='1' or st(3)='1' )then st(2)<=1';

end if ;

if (s3='1' or st(3)='1')and not( st(0)='1' or st(1)='1' or st(2)='1' )then st(3)<=1';

end if ;

tmp<=s0 or s1 or s2 or s3;

end if ;

end process p1;

p2:process(states(0),states(1),states(2),states(3))

beginif (st="0000") then states<="0000";

elsif (st<="0001") then states<="0001";

elsif (st<="0010") then states<="0010";

elsif (st<="0100") then states<="0011";

elsif (st<="1000") then states<="0100";

end if;

end process p2;

end one;

2.**图:

3.抢答鉴别模块符号图。

在这个模块中主要实现抢答过程中的抢答功能,并能对超前抢答进行警告,还能记录无论是正常抢答还是朝前抢答者的台号,并且能实现当有一路抢答按键按下时,该路抢答信号将其余个绿抢答封锁的功能。其中有四个抢答信号s0、s1、s2、s3;抢答使能信号s;抢答状态显示信号states;抢答与警报时钟信号clk2;系统复位信号rst;警报信号tmp。

二)计时模块。

源程序。library ieee;

use use

entity js is

port(clk,rst,s,stop:in std_logic;

warn:out std_logic;

ta,tb:buffer std_logic_vector(3 downto 0));

end js;

architecture one of js is

signal co:std_logic;

beginp1:process(clk,rst,s,stop,ta)

beginif rst='0' or stop='1' then

ta<="0000";

elsif clk'event and clk='1' then

co<='0';

if s='1' then

if ta="0000" then

ta<="1001";co<='1';

else ta<=ta-1;

end if;

end if;

end if;

end process p1;

p2:process(co,rst,s,stop,tb)

beginif rst='0' or stop='1' then

tb<="0010";

elsif co'event and co='1' then

if s='1' then

if tb="0000" then tb<="0011";

else tb<=tb-1;

end if;

end if;

end if;

end process p2;

end one;

2.**图。

3.计时模块符号图。

在这个模块中主要实现抢答过程中的计时功能,在有抢答开始后进行30秒的倒计时,并且在30秒倒计时后无人抢答显示超时并报警。其中有抢答时钟信号clk2;系统复位信号rst;抢答使能信号s;抢答状态显示信号states;无人抢答警报信号warn;计时中止信号stop;计时十位和个位信号tb,ta。

三)数据选择模块。

源程序。library ieee;

use use

use entity sjxz is

port (a,b,c: in std_logic_vector(3 downto 0);

clk2,rst: in std_logic;

s: out std_logic_vector(1 downto 0);

y: out std_logic_vector(3 downto 0) )

end sjxz;

architecture body_chooser of sjxz is

signal count: std_logic_vector (1 downto 0);

begins<=count;

process(clk2,rst)

beginif(rst='0')then count<="00";

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

if(count>="10")then

count<="00";

else count<=count+1;

end if;

end if;

case count is

when "00"=>y<=a;

when "01"=>y<=b;

when "10"=>y<=c;

when others=>null;

end case;

end process;

end body_chooser;

2.**图。

3.数据选择模块符号图。

在这个模块中主要实现抢答过程中的数据输入功能,输入信号a[3..0]、b[3..0]、c[3..

0];计数输出信号s;数据输出信号y;计数脉冲clk2,实现a、b、c按脉冲轮流选通,在数码管上显示。

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计时...