From: Luke Kenneth Casson Leighton Date: Sun, 12 Dec 2021 15:44:50 +0000 (+0000) Subject: set fetch_failed into PowerDecoder2 combinatorially X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=962032ffd7f319a9a24b9170b0afd5ca101b4858;p=soc.git set fetch_failed into PowerDecoder2 combinatorially --- diff --git a/src/soc/simple/issuer.py b/src/soc/simple/issuer.py index 9c40e45d..16646338 100644 --- a/src/soc/simple/issuer.py +++ b/src/soc/simple/issuer.py @@ -702,8 +702,9 @@ class TestIssuerInternal(Elaboratable): fetch_failed = core.icache.i_out.fetch_failed else: fetch_failed = Const(0, 1) - # set to zero initially - sync += pdecode2.instr_fault.eq(0) + # set to fault in decoder + # update (highest priority) instruction fault + comb += pdecode2.instr_fault.eq(fetch_failed) with m.FSM(name="issue_fsm"): @@ -859,9 +860,6 @@ class TestIssuerInternal(Elaboratable): # allowing it to be set again during the next execution sync += pdecode2.ldst_exc.eq(0) - # update (highest priority) instruction fault - sync += pdecode2.instr_fault.eq(fetch_failed) - m.next = "INSN_EXECUTE" # move to "execute" # handshake with execution FSM, move to "wait" once acknowledged