


_0 variants of gates where it's directly the internal output but yeah that's rate and not that useful for general P&R where you'd almost always have an inverter at the output ... except if the cell in question is an inverter or a delay cell .
1
















CTS_APPLY_NDR: "none". It disables non-default rules for CTS.






CLOCK_NET:
- i_chip_core.real_clk_gf180mcu_as_sc_mcu7t3v3__mux2_2_Y/Y
- clk5x_pad/Y

CLOCK_NET:
- i_chip_core.real_clk_gf180mcu_as_sc_mcu7t3v3__mux2_2_Y/Y
- clk5x_pad/Y 


GRT_ALLOW_CONGESTION: true.

GRT_ALLOW_CONGESTION: true. 

PL_TARGET_DENSITY_PCT: 20.

PL_TARGET_DENSITY_PCT: 20. 








module IntegerMultiply(
input clock,
input [31:0] inA,
inB,
output [31:0] out
);
reg [31:0] prod_pipe_r0;
reg [31:0] prod_pipe_r1;
reg [31:0] prod_pipe_r2;
reg [31:0] prod_pipe;
always @(posedge clock) begin
prod_pipe_r0 <= (inA * inB);
prod_pipe_r1 <= prod_pipe_r0;
prod_pipe_r2 <= prod_pipe_r1;
prod_pipe <= prod_pipe_r2;
end
assign out = prod_pipe;
endmodule
This is for an ASIC, using abc (not abc9) (edited)

retime is passed to ABC.
I found this in a search: https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/discussions/1782#discussioncomment-8264228 which suggests ABC only sees combinational logic. Which is possibly why you always see the error ABC: Error: The network is combinational.
But clearly yosys can do retiming because it works on some FPGA flows - I guess if you wanted to investigate further you could compare the synth scripts for an FPGA and librelane


retime is passed to ABC.
I found this in a search: https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/discussions/1782#discussioncomment-8264228 which suggests ABC only sees combinational logic. Which is possibly why you always see the error ABC: Error: The network is combinational.
But clearly yosys can do retiming because it works on some FPGA flows - I guess if you wanted to investigate further you could compare the synth scripts for an FPGA and librelane