latch if slow_clock = '1' and slow_clock'event then if pm = '0' then if latched then case month is when Jan => latched <=false; "executions here" when Feb => latched <=false; "executions here" and so on end case; end if; -- { if latched } else latched <= true; end if; -- if pm = '0' end if; -- if clock this effectively execute the statements in the states only once.