From: Luke Kenneth Casson Leighton Date: Sun, 14 Apr 2019 06:25:41 +0000 (+0100) Subject: experimental conversion of ptw.sv X-Git-Tag: div_pipeline~2260 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3f7557dc25318e08e3260940fd35782be529c475;p=soc.git experimental conversion of ptw.sv --- diff --git a/TLB/src/ariane/ptw.py b/TLB/src/ariane/ptw.py index 8faea2ed..4ddfa76c 100644 --- a/TLB/src/ariane/ptw.py +++ b/TLB/src/ariane/ptw.py @@ -354,19 +354,14 @@ class PTW: # we've got a data WAIT_GRANT so tell the cache that the tag is valid # Propagate error to MMU/LSU - PROPAGATE_ERROR: begin - state_d = IDLE; - ptw_error_o = 1'b1; - end + with m.State("PROPAGATE_ERROR"): + m.next = "IDLE" + m.d.comb += ptw_error_o.eq(1) + # wait for the rvalid before going back to IDLE - WAIT_RVALID: begin - if (data_rvalid_q) - state_d = IDLE; - end - default: begin - state_d = IDLE; - end - endcase + with m.State("WAIT_RVALID"): + m.If (data_rvalid_q): + m.next = "IDLE" # ------- # Flush