Opdracht 5: Processor

Voor deze opdracht is het de bedoeling om zelf de processor te maken. Je kan eerder gebruikte code (voor ALU, program counter, …) hergebruiken.

    component processor is
        generic(
            G_DATAWIDTH : natural := 32;
            G_REGCOUNT_LOG2 : natural := 5
        );
        port(
            clock : in STD_LOGIC;
            reset : in STD_LOGIC;
            ce : in STD_LOGIC;
            pc : out std_logic_vector(G_DATAWIDTH-1 downto 0);
            inst : in STD_LOGIC_VECTOR(G_DATAWIDTH-1 downto 0);
            data_out : out STD_LOGIC_VECTOR(G_DATAWIDTH-1 downto 0);
            data_out_we : out STD_LOGIC
        );
    end component processor;

Om te testen of de processor correct werkt, gebruiken we deze in een microcontroller. De code hiervan krijgen jullie gegeven.

entity microcontroller is
    port(
        clock : in STD_LOGIC;
        resetn : in STD_LOGIC;

        GPIO_LEDS : out STD_LOGIC_VECTOR(15 downto 0)
    );
end entity microcontroller;