mirror of
https://github.com/YosysHQ/yosys
synced 2025-08-21 18:50:38 +00:00
xilinx: Support multiplier mapping for all families.
This supports several older families that are not yet supported for actual logic synthesis — the intention is to add them soon.
This commit is contained in:
parent
a3a7bb9bf7
commit
7b350cacd4
9 changed files with 269 additions and 9 deletions
34
techlibs/xilinx/xc3sda_dsp_map.v
Normal file
34
techlibs/xilinx/xc3sda_dsp_map.v
Normal file
|
@ -0,0 +1,34 @@
|
|||
module \$__MUL18X18 (input [17:0] A, input [17:0] B, output [35:0] Y);
|
||||
parameter A_SIGNED = 0;
|
||||
parameter B_SIGNED = 0;
|
||||
parameter A_WIDTH = 0;
|
||||
parameter B_WIDTH = 0;
|
||||
parameter Y_WIDTH = 0;
|
||||
|
||||
wire [47:0] P_48;
|
||||
DSP48A #(
|
||||
// Disable all registers
|
||||
.A0REG(0),
|
||||
.A1REG(0),
|
||||
.B0REG(0),
|
||||
.B1REG(0),
|
||||
.CARRYINREG(0),
|
||||
.CARRYINSEL("OPMODE5"),
|
||||
.CREG(0),
|
||||
.DREG(0),
|
||||
.MREG(0),
|
||||
.OPMODEREG(0),
|
||||
.PREG(0)
|
||||
) _TECHMAP_REPLACE_ (
|
||||
//Data path
|
||||
.A(A),
|
||||
.B(B),
|
||||
.C(48'b0),
|
||||
.D(18'b0),
|
||||
.P(P_48),
|
||||
|
||||
.OPMODE(8'b0000010)
|
||||
);
|
||||
assign Y = P_48;
|
||||
endmodule
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue