diff options
author | Clifford Wolf <clifford@clifford.at> | 2016-09-06 01:02:12 +0200 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2016-09-06 01:02:12 +0200 |
commit | 7f946d0f843f03fc1a0384465245b6164f27f18c (patch) | |
tree | 6e9982ad8c12a1fc90326f9415cd721ff1c66e4f /picorv32.v | |
parent | 5fdee952c92c62409ca58e8d18d951dfafed3c92 (diff) | |
download | picorv32-7f946d0f843f03fc1a0384465245b6164f27f18c.tar.gz picorv32-7f946d0f843f03fc1a0384465245b6164f27f18c.zip |
Added misisng MUL_CLKGATE stage
Diffstat (limited to 'picorv32.v')
-rw-r--r-- | picorv32.v | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -1968,16 +1968,15 @@ module picorv32_pcpi_fast_mul #( rs1_q <= rs1; rs2_q <= rs2; end + if (!MUL_CLKGATE || active[1]) begin + rd <= $signed(EXTRA_MUL_FFS ? rs1_q : rs1) * $signed(EXTRA_MUL_FFS ? rs2_q : rs2); + end if (!MUL_CLKGATE || active[2]) begin rd_q <= rd; end end always @(posedge clk) begin - rd <= $signed(EXTRA_MUL_FFS ? rs1_q : rs1) * $signed(EXTRA_MUL_FFS ? rs2_q : rs2); - end - - always @(posedge clk) begin if (instr_any_mul && !(EXTRA_MUL_FFS ? active[3:0] : active[1:0])) begin if (instr_rs1_signed) rs1 <= $signed(pcpi_rs1); |