diff options
Diffstat (limited to 'src/rtl/modexpa7_systolic_multiplier_array.v')
-rw-r--r-- | src/rtl/modexpa7_systolic_multiplier_array.v | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/rtl/modexpa7_systolic_multiplier_array.v b/src/rtl/modexpa7_systolic_multiplier_array.v index 3280010..9b2cd94 100644 --- a/src/rtl/modexpa7_systolic_multiplier_array.v +++ b/src/rtl/modexpa7_systolic_multiplier_array.v @@ -443,7 +443,7 @@ module modexpa7_systolic_multiplier_array # always @(posedge clk) // if ((fsm_state == FSM_STATE_MULT_CRUNCH) && shreg_done_latency_dly) - p_data_in <= pe_p[0]; + p_data_in <= crt ? pe_a_wide[31:0] : pe_p[0]; /*
* Block Memory Address Control
@@ -457,7 +457,8 @@ module modexpa7_systolic_multiplier_array # //
case (fsm_next_state) FSM_STATE_MULT_START: a_addr <= bram_addr_zero; - FSM_STATE_MULT_RELOAD: crt ? //a_addr <= !a_addr_done ? a_addr_next : a_addr; + FSM_STATE_MULT_RELOAD: if (crt) a_addr <= !a_addr_done_crt ? a_addr_next : a_addr;
+ else a_addr <= !a_addr_done ? a_addr_next : a_addr; endcase // end |