Beruflich Dokumente
Kultur Dokumente
-- Company:
-- Engineer:
--
-- Create Date: 11:14:48 04/03/2017
-- Design Name:
-- Module Name: EX_ENCODER_4_2_USING_IF - Behavioral
-- Project Name:
-- Target Devices:
-- Tool versions:
-- Description:
--
-- Dependencies:
--
-- Revision:
-- Revision 0.01 - File Created
-- Additional Comments:
--
----------------------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
end EX_ENCODER_4_2_USING_IF;
begin
PROCESS (R)
BEGIN
IF R(3) = '1' THEN
CODE <= "11" ;
ELSIF R(2) ='1' THEN
CODE <= "10" ;
ELSIF R(1) = '1' THEN
CODE <= "01" ;
ELSE
CODE <= "00";
END IF;
END PROCESS;
ACTIVE <=R(3) OR R(2) OR R(1) OR R(0);
end Behavioral;
----------------------------------------------------------------------------------
-- Company:
-- Engineer:
--
-- Create Date: 12:54:10 03/30/2017
-- Design Name:
-- Module Name: ALU_32_BITS - Behavioral
-- Project Name:
-- Target Devices:
-- Tool versions:
-- Description:
--
-- Dependencies:
--
-- Revision:
-- Revision 0.01 - File Created
-- Additional Comments:
--
----------------------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity ALU_32_BITS is
Port ( SRC0, SRC1 : in STD_LOGIC_VECTOR (31 downto 0);
CTRL : in STD_LOGIC_VECTOR (1 downto 0);
E, S : in STD_LOGIC;
RESULT : out STD_LOGIC_VECTOR (31 downto 0));
end ALU_32_BITS;
----------------------------------------------------------------------------------
-- Company:
-- Engineer:
--
-- Create Date: 12:54:10 03/30/2017
-- Design Name:
-- Module Name: ALU_32_BITS - Behavioral
-- Project Name:
-- Target Devices:
-- Tool versions:
-- Description:
--
-- Dependencies:
--
-- Revision:
-- Revision 0.01 - File Created
-- Additional Comments:
--
----------------------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity ALU_32_BITS is
Port ( SRC0, SRC1 : in STD_LOGIC_VECTOR (31 downto 0);
CTRL : in STD_LOGIC_VECTOR (1 downto 0);
E, S : in STD_LOGIC;
RESULT : out STD_LOGIC_VECTOR (31 downto 0));
end ALU_32_BITS;
----------------------------------------------------------------------------------
-- Company:
-- Engineer:
--
-- Create Date: 14:41:57 03/30/2017
-- Design Name:
-- Module Name: MUX_4_TO_1 - Behavioral
-- Project Name:
-- Target Devices:
-- Tool versions:
-- Description:
--
-- Dependencies:
--
-- Revision:
-- Revision 0.01 - File Created
-- Additional Comments:
--
----------------------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity MUX_4_TO_1 is
Port ( A, B, C, D : in STD_LOGIC;
S : in STD_LOGIC_VECTOR(1 DOWNTO 0);
Y : out STD_LOGIC);
end MUX_4_TO_1;
begin
PROCESS(A, B, C, D, S)
BEGIN
IF S = "00" THEN
Y <= A;
ELSIF S = "01" THEN
Y <= B;
ELSIF S = "10" THEN
Y <= C;
ELSE
Y <= D;
END IF;
END PROCESS;
end Behavioral;
----------------------------------------------------------------------------------
-- Company:
-- Engineer:
--
-- Create Date: 16:15:28 03/27/2017
-- Design Name:
-- Module Name: ENCODER_4_TO_2 - Behavioral
-- Project Name:
-- Target Devices:
-- Tool versions:
-- Description:
--
-- Dependencies:
--
-- Revision:
-- Revision 0.01 - File Created
-- Additional Comments:
--
----------------------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity ENCODER_4_TO_2 is
Port ( I : in STD_LOGIC_VECTOR (3 downto 0);
CODE : out STD_LOGIC_VECTOR (1 downto 0);
ACTIVE : out STD_LOGIC);
end ENCODER_4_TO_2;
begin
PROCESS(I)
BEGIN
IF I(3) = '1' THEN
CODE <= "11";
ELSIF I(2) = '1' THEN
CODE <= "10";
ELSIF I(1) = '1' THEN
CODE <= "01";
ELSIF I(0) = '1' THEN
CODE <= "00";
ELSE
CODE <= "00";
END IF;
ACTIVE <= I(3) OR I(2) OR I(1) OR I(0);
END PROCESS;
end Behavioral;