Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
751 Views

Error 10500

Library IEEE;

USE IEEE.NUMERIC_STD.ALL;

USE IEEE.STD_LOGIC_1164.ALL;

 

ENTITY mux4 IS

PORT(

mux_in_a:IN UNSIGNED(3 downto 0);

mux_in_b :IN UNSIGNED(3 downto 0);

mux_sel :IN STD_LOGIC;

mux_out :OUT UNSIGNED(3 downto 0);

);

END mux4;

ARCHITECTURE behavior OF mux4 IS

begin

if mux_sel='0' then mux_out <= mux_in_a

elsif mux_sel='1' then mux_out <= mux_in_b

end if;

 

end architecture behavior;

 

when i run this code i get the error

Error (10500): VHDL syntax error at mux4.vhd(12) near text ")"; expecting an identifier, or "constant", or "file", or "signal", or "variable"

 

0 Kudos
2 Replies
Highlighted
Moderator
46 Views

You have a semicolon (;) at the end of the mux_out port that should be removed.

0 Kudos
Highlighted
46 Views

Library IEEE;

USE IEEE.NUMERIC_STD.ALL;

USE IEEE.STD_LOGIC_1164.ALL;

 

ENTITY mux4 IS

 

PORT(

 

mux_in_a:IN UNSIGNED(3 downto 0);

 

mux_in_b :IN UNSIGNED(3 downto 0);

 

mux_sel :IN STD_LOGIC;

 

mux_out :OUT UNSIGNED(3 downto 0)

 

);

 

END mux4;

 

ARCHITECTURE behavior OF mux4 IS

begin

 

process(mux_in_a, mux_in_b, mux_sel) begin

if mux_sel='0' then mux_out <= mux_in_a;

elsif mux_sel='1' then mux_out <= mux_in_b;

 

end if;

end process ;

 

end behavior;

0 Kudos