实验4 组合逻辑电路实验
1.设计一个完整的组合逻辑电路,并用MAXPLUS进行仿真,将结果下载到实验箱中,测试电路的正确性。
要求:设计一个6输入的表决电路,其中1路输入为主裁,优先级最高,其余5路的估先级相同,用LED显示各路输入的状态(同意的亮灯,反对的灭灯),同时用数码管显示同意的人数。
2.应包含VHDL源程序,详细的设计报告,对程序,仿真结果,实验箱运行结果(图片贴到报告中)进行详尽的分析
一、实验分析:6输入表决电路,需要六个输入,并且设置一个主裁位,优先级最高,当他同意,为高电平时,其他五个人,有三个以上同意才通过,否则不通过。
二、程序如下:
library IEEE;
use IEEE.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity a6_1is
port (
a: in STD_LOGIC_VECTOR (6 downto 0);
c: out STD_LOGIC
);
end a6_1;
architecture dsf_arch of a6_1is
signal tmp1: integer ;
begin
process (a)
variable tmp: integer ;
begin
tmp := 0;
for i in 0 to 6 loop
if a(i) ='1' then tmp := tmp +1 ;
end if;
end loop;
tmp1<=tmp;
end process;
c<='1' when tmp1=3 and a(0)='1' else
'1' when tmp1=4and a(0)='1' else
'1' when tmp1=5 and a(0)='1' else
'1' when tmp1=6 and a(0)='1' else
'0' ;
end dsf_arch;
由下图可以看出,六个输入,1个输出,当主裁为高电平时,有三人以上同意,输出则为高电平
引脚分配图。