Splitting halt_wb to fix timing issues when waking from SLEEP
Created by: silabs-oysteink
Split ctrl_fsm_o.halt_wb in two, with ctrl_fsm_o.halt_wb acting as normal for all cases except during sleep. During sleep, ctrl_fsm_o.halt_limited_wb will be used to make sure the WB stage does not retire any instructions.
Assertions were added to make sure no CSR instruction can be in WB while halt_limited_wb is set.
SEC clean. Fixes timing issues.
Signed-off-by: Oystein Knauserud Oystein.Knauserud@silabs.com