diff --git a/wally-pipelined/config/rv32g/wally-config.vh b/wally-pipelined/config/rv32g/wally-config.vh index 00eb563c8..c4ce6f628 100644 --- a/wally-pipelined/config/rv32g/wally-config.vh +++ b/wally-pipelined/config/rv32g/wally-config.vh @@ -30,6 +30,7 @@ `define QEMU 0 `define BUILDROOT 0 `define BUSYBEAR 0 +`define DESIGN_COMPILER 0 // RV32 or RV64: XLEN = 32 or 64 `define XLEN 32 diff --git a/wally-pipelined/config/rv32ic/wally-config.vh b/wally-pipelined/config/rv32ic/wally-config.vh index 78c9383b9..f86204306 100644 --- a/wally-pipelined/config/rv32ic/wally-config.vh +++ b/wally-pipelined/config/rv32ic/wally-config.vh @@ -30,6 +30,7 @@ `define QEMU 0 `define BUILDROOT 0 `define BUSYBEAR 0 +`define DESIGN_COMPILER 0 // RV32 or RV64: XLEN = 32 or 64 `define XLEN 32 diff --git a/wally-pipelined/config/rv64BP/wally-config.vh b/wally-pipelined/config/rv64BP/wally-config.vh index 162192495..f79eba7eb 100644 --- a/wally-pipelined/config/rv64BP/wally-config.vh +++ b/wally-pipelined/config/rv64BP/wally-config.vh @@ -31,6 +31,7 @@ `define QEMU 0 `define BUILDROOT 0 `define BUSYBEAR 0 +`define DESIGN_COMPILER 0 // RV32 or RV64: XLEN = 32 or 64 `define XLEN 64 diff --git a/wally-pipelined/config/rv64g/wally-config.vh b/wally-pipelined/config/rv64g/wally-config.vh index 8f32e2d1f..605c2535e 100644 --- a/wally-pipelined/config/rv64g/wally-config.vh +++ b/wally-pipelined/config/rv64g/wally-config.vh @@ -30,6 +30,7 @@ `define QEMU 0 `define BUILDROOT 0 `define BUSYBEAR 0 +`define DESIGN_COMPILER 0 // RV32 or RV64: XLEN = 32 or 64 `define XLEN 64 diff --git a/wally-pipelined/config/rv64ic/wally-config.vh b/wally-pipelined/config/rv64ic/wally-config.vh index cd587c084..c0e0860cb 100644 --- a/wally-pipelined/config/rv64ic/wally-config.vh +++ b/wally-pipelined/config/rv64ic/wally-config.vh @@ -30,6 +30,7 @@ `define QEMU 0 `define BUILDROOT 0 `define BUSYBEAR 0 +`define DESIGN_COMPILER 0 // RV32 or RV64: XLEN = 32 or 64 `define XLEN 64 diff --git a/wally-pipelined/src/muldiv/redundantmul.sv b/wally-pipelined/src/muldiv/redundantmul.sv index e3556972b..6cbe936dd 100644 --- a/wally-pipelined/src/muldiv/redundantmul.sv +++ b/wally-pipelined/src/muldiv/redundantmul.sv @@ -25,16 +25,19 @@ `include "wally-config.vh" -/* verilator lint_off UNOPTFLAT */ - module redundantmul #(parameter WIDTH =8)( input logic [WIDTH-1:0] a,b, output logic [2*WIDTH-1:0] out0, out1); - assign out0 = 0; - assign out1 = a*b; - // DW02_multp #(`XLEN, `XLEN, 2*`XLEN) bigmul(.a(Aprime), .b(Bprime), .tc(1'b0), .out0(PP0E), .out1(PP1E)); + generate + if (`DESIGN_COMPILER == 1) + DW02_multp #(WIDTH, WIDTH, 2*WIDTH) bigmul(.a, .b, .tc(1'b0), .out0, .out1); + else begin + assign out0 = 0; + assign out1 = a*b; + end + endgenerate endmodule -/* verilator lint_on UNOPTFLAT */ +