diff --git a/src/main/scala/vexriscv/plugin/DBusCachedPlugin.scala b/src/main/scala/vexriscv/plugin/DBusCachedPlugin.scala index 10e4550..978dd5d 100644 --- a/src/main/scala/vexriscv/plugin/DBusCachedPlugin.scala +++ b/src/main/scala/vexriscv/plugin/DBusCachedPlugin.scala @@ -223,7 +223,10 @@ class DBusCachedPlugin(val config : DataCacheConfig, arbitration.haltItself := True } - if(relaxedMemoryTranslationRegister) insert(MEMORY_VIRTUAL_ADDRESS) := cache.io.cpu.execute.address + if(relaxedMemoryTranslationRegister) { + insert(MEMORY_VIRTUAL_ADDRESS) := cache.io.cpu.execute.address + addPrePopTask( () => KeepAttribute(memory.input(MEMORY_VIRTUAL_ADDRESS).getDrivingReg)) + } } memory plug new Area{