diff --git a/builds/Resources/Include_RISCY_Config.mk b/builds/Resources/Include_RISCY_Config.mk index fa3edb1..9646934 100644 --- a/builds/Resources/Include_RISCY_Config.mk +++ b/builds/Resources/Include_RISCY_Config.mk @@ -48,7 +48,7 @@ RENAME_DEBUG ?= false INSTR_PREFETCHER_LOCATION ?= NONE INSTR_PREFETCHER_TYPE ?= SINGLE_WINDOW DATA_PREFETCHER_LOCATION ?= L1 -DATA_PREFETCHER_TYPE ?= STRIDE +DATA_PREFETCHER_TYPE ?= MARKOV_ON_HIT # clk frequency depends on core size ifneq (,$(filter $(CORE_SIZE),TINY SMALL BOOM MEDIUM)) diff --git a/src_Core/RISCY_OOO/coherence/src/Prefetcher.bsv b/src_Core/RISCY_OOO/coherence/src/Prefetcher.bsv index cc1e694..9f2e0c2 100644 --- a/src_Core/RISCY_OOO/coherence/src/Prefetcher.bsv +++ b/src_Core/RISCY_OOO/coherence/src/Prefetcher.bsv @@ -774,14 +774,14 @@ endmodule module mkBRAMMarkovOnHitPrefetcher(Prefetcher) provisos ( - NumAlias#(maxChainLength, 1), + NumAlias#(maxChainLength, 2), NumAlias#(numLastRequests, 32), Alias#(chainLengthT, Bit#(TLog#(TAdd#(maxChainLength,1)))) ); Reg#(LineAddr) lastLastChildRequest <- mkReg(0); Reg#(LineAddr) lastChildRequest <- mkReg(0); Reg#(Vector#(numLastRequests, Bit#(32))) lastAddrRequests <- mkReg(replicate(0)); - TargetTableBRAM#(65536, 4096) targetTable <- mkTargetTableBRAM; + TargetTableBRAM#(2048, 128) targetTable <- mkTargetTableBRAM; FIFOF#(LineAddr) targetTableReadResp <- mkBypassFIFOF; // Stores how many prefetches we can still do in the current chain