From 3a4ab7ad517b483d25652e08b0c532e78084d4ed Mon Sep 17 00:00:00 2001 From: Samuel Lindemer Date: Fri, 28 May 2021 16:17:19 +0200 Subject: [PATCH] Un-pend PMP CSR writes on pipeline flushes --- src/main/scala/vexriscv/plugin/PmpPlugin.scala | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/scala/vexriscv/plugin/PmpPlugin.scala b/src/main/scala/vexriscv/plugin/PmpPlugin.scala index f9d47ee..34d323d 100644 --- a/src/main/scala/vexriscv/plugin/PmpPlugin.scala +++ b/src/main/scala/vexriscv/plugin/PmpPlugin.scala @@ -182,6 +182,10 @@ class PmpPlugin(regions : Int, granularity : Int, ioRange : UInt => Bool) extend } } + when (arbitration.isFlushed) { + pending := False + } + val writer = new Area { when (pending) { arbitration.haltItself := True