Skip to content

Fix XIF ID increment logic (#393)

Eclipse Webmaster requested to merge github/fork/michael-platzer/fix_xif_id into master

Created by: michael-platzer

This is a patch for issue #393 (closed).

The IF stage increments XIF instruction IDs when the issue_valid signal of the XIF issue interface is asserted. However, if the ID stage is stalled but the instruction currently held in it has been offloaded and already accepted by the coprocessor, then issue_valid signal is no longer asserted and thus the same instruction ID is reused for the next offloaded instruction.

This patch fixes the problem by introducing a new signal that indicates whether the instruction currently held in the ID stage is being offloaded, with that signal remaining asserted if the coprocessor has already accepted an instruction. The new signal informs the IF stage whether the instruction currently in ID is being offloaded, in which case the instruction ID is incremented.

Merge request reports

Loading