summaryrefslogtreecommitdiff
path: root/rtl/core/control/control.sv
diff options
context:
space:
mode:
Diffstat (limited to 'rtl/core/control/control.sv')
-rw-r--r--rtl/core/control/control.sv3
1 files changed, 2 insertions, 1 deletions
diff --git a/rtl/core/control/control.sv b/rtl/core/control/control.sv
index 653d896..1c20535 100644
--- a/rtl/core/control/control.sv
+++ b/rtl/core/control/control.sv
@@ -5,6 +5,7 @@ module core_control
input logic clk,
dec_execute,
dec_conditional,
+ dec_uses_rn,
dec_branch,
dec_writeback,
dec_update_flags,
@@ -76,7 +77,7 @@ module core_control
assign next_bubble =
((dec_update_flags || dec_conditional) && (final_update_flags || update_flags))
- || (final_writeback && (final_rd == dec_data.rn || final_rd == dec_snd.r));
+ || (final_writeback && ((dec_uses_rn && final_rd == dec_data.rn) || final_rd == dec_snd.r));
core_control_ldst_pop ldst_pop
(