Fill in the architecture to build a simple ALU. The operands are 4 bits each.
The operation should be performed according to the following table:

S1S0Operation
00Bitwise AND
01Bitwise OR
10Add
11Subtract (A-B)


library IEEE; use IEEE.std_logic_1164.all; use IEEE.numeric_std.all; entity alu is port( a : in unsigned(3 downto 0); b : in unsigned(3 downto 0); s : in std_logic_vector(1 downto 0); y : out unsigned(3 downto 0) ); end alu; architecture synth of alu is begin -- You've got this! end;

Are you confident about this change? (select one to recompile)

Compiler/test output: