This only affects the state trace tool. The code to log the current thread state for the tool looks like this:
always_comb
begin
if (!instruction_latched)
thread_state[thread_idx] = TS_WAIT_ICACHE;
else if (thread_blocked[thread_idx])
thread_state[thread_idx] = TS_WAIT_DCACHE;
else if (!can_issue_thread[thread_idx])
thread_state[thread_idx] = TS_WAIT_RAW;
else if (writeback_conflict)
thread_state[thread_idx] = TS_WAIT_WRITEBACK_CONFLICT;
else
thread_state[thread_idx] = TS_READY;
end
Because writeback_conflict will cause can_issue_thread to be false, that clause can never be hit;
This only affects the state trace tool. The code to log the current thread state for the tool looks like this:
Because writeback_conflict will cause can_issue_thread to be false, that clause can never be hit;
Should explicitly check for scoreboard_conflict in the thread_state logging code.