vhdl 8选1数据选择器

来源:百度知道 编辑:UC知道 时间:2024/04/29 12:15:26
要求用VHDL语言编写一个8选1数据选择器

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY EIGHT_XUAN_1 IS
PORT( ST: IN STD_LOGIC;
A: IN STD_LOGIC_VECTOR(2 DOWNTO 0);
D: IN STD_LOGIC_VECTOR(7 DOWNTO 0);
Q: OUT STD_LOGIC);
END;
ARCHITECTURE HBV OF EIGHT_XUAN_1 IS
SIGNAL Q1: STD_LOGIC;
BEGIN
PROCESS(A)
BEGIN
IF ST='1' THEN Q1<='0';
ELSE
CASE A IS
WHEN "000"=> Q1 <= D(0);
WHEN "001"=> Q1 <= D(1);
WHEN "010"=> Q1 <= D(2);
WHEN "011"=> Q1 <= D(3);
WHEN "100"=> Q1 <= D(4);
WHEN "101"=> Q1 <= D(5);
WHEN "110"=> Q1 <= D(6);
WHEN "111"=> Q1 <= D(7);
WHEN OTHERS => NULL;
END CASE;
END IF;
END PROCESS;
Q<= Q1;
END HBV;

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IE