Unsigned 8 Bit Multiplier Control Unit(Architecture - Output Process)
OUTPUT : PROCESS(present_state)
BEGIN
CASE present_state IS
WHEN idle =>
a_enable <= '0';
a_reset <= '1';
a_mode <= '1';
c_enable <= '0';
m_enable <= '0';
q_enable <= '0';
q_mode <= '1';
WHEN initialize =>
a_enable <= '1';
a_reset <= '0';
a_mode <= '1';
c_enable <= '0';
m_enable <= '1';
q_enable <= '1';
q_mode <= '1';
WHEN test =>
a_enable <= '0';
a_reset <= '1';
a_mode <= '1';
c_enable <= '0';
m_enable <= '0';
q_enable <= '0';
q_mode <= '1';
WHEN add =>
a_enable <= '1';
a_reset <= '1';
a_mode <= '1';
c_enable <= '1';
m_enable <= '0';
q_enable <= '0';
q_mode <= '0';
WHEN shift =>
a_enable <= '1';
a_reset <= '1';
a_mode <= '0';
c_enable <= '0';
m_enable <= '0';
q_enable <= '1';
q_mode <= '0';
WHEN OTHERS =>
a_enable <= '0';
a_reset <= '1';
a_mode <= '1';
c_enable <= '0';
m_enable <= '0';
q_enable <= '0';
q_mode <= '1';
END CASE;
END PROCESS OUTPUT;
END state_machine;
Previous slide
Next slide
Back to first slide
View graphic version
Notes:
This is the output process. Note that the outputs are only dependent on the present_state variable (Moore machine).