EDA实验作业

发布 2022-09-02 20:51:28 阅读 4238

eda技术。

期末大作业设计报告。

专业: 测控10

学生姓名: 张晓敏。

学号: 2010043113

完成 2024年 6月 15 日。

目录。一概述1

二方案设计与论证1

三单元电路设计2

3.1. 抢答鉴别模块的设计2

3.2 计时模块的设计3

3.3 数据选择模块的设计6

3.4 报警模块的设计7

3.5 译码器模块的设计8

3.6 主电路连线图10

3.7 芯片引脚图11

四器件编程与**11

五性能测试与分析11

六实验设备11

七心得体会12

八参考文献12

一、概述 二、方案设计与论证。

1、 抢答锁存模块;

在这个模块中主要实现抢答过程中的抢答功能,当抢答开始后,当有一路抢答按键首先按下时,将其余个路抢答封锁的功能。其中有四个抢答信号s[3..0];时钟信号clk;复位rst;警报信号t;输出信号xuanshou。

2、 抢答器计时模块:

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

3、 数据选择模块:

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

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

4、 报警模块:

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

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

三、单元电路设计。

一)抢答锁存模块。

1、vhdl源程序。

library ieee;

use entity jbsc is

port( clk,rst: in std_logic;

s: in std_logic_vector(3 downto 0);

t: out std_logic;

n: buffer std_logic;

xuanshou: out std_logic_vector(3 downto 0) )

end jbsc;

architecture one of jbsc is

signal so: std_logic_vector(3 downto 0);

beginprocess(clk,s,so)

beginif rst='0' then

so<="0000";

elsif clk'event and clk='1' then

if so="0000" then

if s/="0000" then

so<=s;

end if;

end if;

end if;

t<=so(0)or so(1) or so(2) or so(3);

n<=s(0)or s(1) or s(2) or s(3);

case so is

when "0001"=>xuanshou<="0001";

when "0010"=>xuanshou<="0010";

when "0100"=>xuanshou<="0011";

when "1000"=>xuanshou<="0100";

when others=>xuanshou<="0000";

end case;

end process;

end one;

2、**图。

二)计时模块。

1、vhdl源程序。

library ieee;

use use

entity js is

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

warn:buffer std_logic;

sw,gw:buffer std_logic_vector(3 downto 0));

end js;

architecture one of js is

signal co,tt:std_logic;

beginp1:process(co,rst,stop,sw,s)

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

sw<="0010";

elsif co'event and co='1' then

if s='0' then

if sw="0000" then sw<="0000";

else sw<=sw-1;

end if;

end if;

end if;

end process p1;

p2:process(clk,rst,stop,co,gw,sw,s)

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

gw<="0000";

tt<='0';

elsif clk'event and clk='1' then

if s='0' then

co<='0';

if gw="0000"and sw="0000" then

gw<="0000";

elsif gw="0000"and not(sw="0000") then

gw<="1001";co<='1';tt<='1';

else gw<=gw-1;

end if;

end if;

end if;

end process p2;

p3:process(rst,gw,sw)

beginif rst='0' then

warn<='0';

elsif gw="0000" and sw="0000" and tt='1' then

warn<='1';

elsewarn<='0';

end if;

end process p3;

end one;

2、**图。

三)数据选择模块。

1、vhdl源程序。

library ieee;

use use

entity shujufenpei is

port(x,swei,gwei:in std_logic_vector(3 downto 0);

clk:in std_logic;

y: out std_logic_vector(3 downto 0);

shu: out std_logic_vector(1 downto 0));

end shujufenpei;

architecture one of shujufenpei is

signal count : std_logic_vector(1 downto 0);

beginprocess(clk)

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

if (count="10") then count<="00";

else count<=count+1;

end if;

end if;

shu<=count;

case count is

when "00"=>y<=x;

when "01"=>y<=gwei;

when "10"=>y<=swei;

when others=>null;

end case;

end process;

end one;

2、**图。

四)报警模块。

1、vhdl源程序。

library ieee;

use use

entity alarm is

port(clk,i:in std_logic;

q:out std_logic);

end alarm;

architecture beh**e of alarm is

signal warn:std_logic;

EDA实验

实验四 简易彩灯控制器。1.实验目的。1 学会用状态机结构设计循环彩灯控制器。2 进一步掌握状态机的vhdl描述方法。2.实验原理。设有红 绿 黄三只发光二极管,工作时要求红发光管亮2秒。绿发光管亮3s,黄发光管亮1s,三只发光管同时点亮 另设一个控制端,能使三个发光管均不亮。试设计一个控制器完成该...

EDA实验

贵州大学 2011 2012 学年第二学期考试试卷。eda电子设计自动化 学院 机械工程学院 专业 机械设计制造及其自动化 班级 机自 094 学号 0908030332 学生姓名 赵正杨。2012年06月15日。eda电子设计自动化 试题。1 一个电动机过载保护原理电路如图1所示,该电路将采集来的...

EDA实验

实验四阶梯波发生器设计。一 实验要求。1 设计一个能产生周期性阶梯波的电路,要求生成的阶梯波周期14ms,输出电压范围 9v,0v 阶梯个数6个。2 对电路进行分段测试和调节,直至输出合适的阶梯波。3 改变电路元器件参数,观察输出波形的变化,确定影响阶梯波电压范围和周期的元器件。二 实验原理。为了设...