Complete the code to start the process block with the correct sensitivity list.
process([1])
begin
-- process body
end process;The process sensitivity list should include both clk and reset signals to react to changes in either.
Complete the code to write a case statement that checks the value of the signal state.
case [1] is
when IDLE =>
-- actions
when RUN =>
-- actions
when others =>
-- default actions
end case;clk or reset instead of state in the case statement.The case statement should evaluate the state signal to decide which branch to execute.
Fix the error in the case statement to correctly assign output_signal when state is RUN.
case state is
when IDLE =>
output_signal <= '0';
when RUN =>
output_signal <= [1];
when others =>
output_signal <= '0';
end case;In VHDL, single quotes '1' are used for single bit values. Double quotes are for strings.
Fill both blanks to complete the process with a case statement that handles state and assigns output_signal accordingly.
process(clk, reset) begin if reset = '1' then output_signal <= '0'; elsif rising_edge(clk) then case [1] is when IDLE => output_signal <= '0'; when RUN => output_signal <= [2]; when others => output_signal <= '0'; end case; end if; end process;
The case statement should check the state signal, and when RUN, assign '1' to output_signal.
Fill all three blanks to complete a process with a case statement that resets and updates output_signal based on state.
process([1]) begin if [2] = '1' then output_signal <= '0'; elsif rising_edge(clk) then case state is when IDLE => output_signal <= '0'; when RUN => output_signal <= [3]; when others => output_signal <= '0'; end case; end if; end process;
The process sensitivity list includes clk and reset. The reset condition checks reset signal. When in RUN state, output_signal is set to '1'.
