用VHDL语言编写下列题目要求的程序。。。
设计一个七人表决电路,参加表决者七人,同意为1,不同意为0,同意者过半表决通过,绿色指示灯灭。表决不通过则红指示灯亮。...
设计一个七人表决电路,参加表决者七人,同意为1,不同意为0,同意者过半表决通过,绿色指示灯灭。表决不通过则红指示灯亮。
展开
2个回答
展开全部
library ieee;
use ieee.std_logic_1164.all;
entity voter is
port(voter_in: in std_logic_vector(7 downto 1);
red,green: out std_logic);
end entity voter;
architecture behave of voter is
begin
process(voter_in)
variable counter:integer;
begin
counter :=0;
for i in voter_in'range loop
if voter_in(i)='1' then
counter := counter + 1;
end if;
end loop;
if counter>3 then
red <='0';
green <= '1';
else
red <='1';
green <= '0';
end if;
end process;
end architecture behave;
use ieee.std_logic_1164.all;
entity voter is
port(voter_in: in std_logic_vector(7 downto 1);
red,green: out std_logic);
end entity voter;
architecture behave of voter is
begin
process(voter_in)
variable counter:integer;
begin
counter :=0;
for i in voter_in'range loop
if voter_in(i)='1' then
counter := counter + 1;
end if;
end loop;
if counter>3 then
red <='0';
green <= '1';
else
red <='1';
green <= '0';
end if;
end process;
end architecture behave;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询