diff --git a/wally-pipelined/src/mmu/pmachecker.sv b/wally-pipelined/src/mmu/pmachecker.sv index 0aaa8b97..703bb81b 100644 --- a/wally-pipelined/src/mmu/pmachecker.sv +++ b/wally-pipelined/src/mmu/pmachecker.sv @@ -70,9 +70,9 @@ module pmachecker ( assign AtomicAllowed = HSELRegions[4]; // Detect access faults - assign PMAAccessFault = ~|HSELRegions; + assign PMAAccessFault = (~|HSELRegions) && AccessRWX; assign PMAInstrAccessFaultF = ExecuteAccessF && PMAAccessFault; assign PMALoadAccessFaultM = ReadAccessM && PMAAccessFault; assign PMAStoreAccessFaultM = WriteAccessM && PMAAccessFault; - assign PMASquashBusAccess = PMAAccessFault && AccessRWX; + assign PMASquashBusAccess = PMAAccessFault; endmodule