From 65e9747752eeeaa6c709b37eb6aa5c28185ccc99 Mon Sep 17 00:00:00 2001 From: Shreya Sanghai Date: Wed, 31 Mar 2021 21:56:14 -0400 Subject: [PATCH] fixed bugs in global history to read latest GHRE --- wally-pipelined/config/rv64BP/wally-config.vh | 2 +- wally-pipelined/src/ifu/globalHistoryPredictor.sv | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/wally-pipelined/config/rv64BP/wally-config.vh b/wally-pipelined/config/rv64BP/wally-config.vh index bd053750c..f39c6cee3 100644 --- a/wally-pipelined/config/rv64BP/wally-config.vh +++ b/wally-pipelined/config/rv64BP/wally-config.vh @@ -97,5 +97,5 @@ `define TWO_BIT_PRELOAD "../config/rv64icfd/twoBitPredictor.txt" `define BTB_PRELOAD "../config/rv64icfd/BTBPredictor.txt" -`define BPTYPE "BPGSHARE" // BPGLOBAL or BPTWOBIT or BPGSHARE +`define BPTYPE "BPGLOBAL" // BPGLOBAL or BPTWOBIT or BPGSHARE `define TESTSBP 1 diff --git a/wally-pipelined/src/ifu/globalHistoryPredictor.sv b/wally-pipelined/src/ifu/globalHistoryPredictor.sv index b9addb381..babafb525 100644 --- a/wally-pipelined/src/ifu/globalHistoryPredictor.sv +++ b/wally-pipelined/src/ifu/globalHistoryPredictor.sv @@ -41,12 +41,13 @@ module globalHistoryPredictor input logic [1:0] UpdatePrediction ); - logic [k-1:0] GHRF, GHRD, GHRE; + logic [k-1:0] GHRF, GHRD, GHRE, GHRENext; + assign GHRENext = {PCSrcE, GHRE[k-1:1]}; flopenr #(k) GlobalHistoryRegister(.clk(clk), .reset(reset), .en(UpdateEN), - .d({PCSrcE, GHRF[k-1:1] }), + .d(GHRENext), .q(GHRF)); @@ -66,8 +67,8 @@ module globalHistoryPredictor .reset(reset), .RA1(GHRF), .RD1(PredictionMemory), - .REN1(1'b1), - .WA1(GHRE), + .REN1(~StallF), + .WA1(GHRENext), .WD1(UpdatePrediction), .WEN1(UpdateEN), .BitWEN1(2'b11));