mirror of
https://github.com/YosysHQ/yosys
synced 2025-04-13 04:28:18 +00:00
Signedness
This commit is contained in:
parent
3f677fb0db
commit
c501aa5ee8
|
@ -386,15 +386,15 @@ module DSP48E1 (
|
||||||
output [3:0] CARRYOUT,
|
output [3:0] CARRYOUT,
|
||||||
output MULTSIGNOUT,
|
output MULTSIGNOUT,
|
||||||
output OVERFLOW,
|
output OVERFLOW,
|
||||||
output reg [47:0] P,
|
output reg signed [47:0] P,
|
||||||
output PATTERNBDETECT,
|
output PATTERNBDETECT,
|
||||||
output PATTERNDETECT,
|
output PATTERNDETECT,
|
||||||
output [47:0] PCOUT,
|
output [47:0] PCOUT,
|
||||||
output UNDERFLOW,
|
output UNDERFLOW,
|
||||||
input [29:0] A,
|
input signed [29:0] A,
|
||||||
input [29:0] ACIN,
|
input [29:0] ACIN,
|
||||||
input [3:0] ALUMODE,
|
input [3:0] ALUMODE,
|
||||||
input [17:0] B,
|
input signed [17:0] B,
|
||||||
input [17:0] BCIN,
|
input [17:0] BCIN,
|
||||||
input [47:0] C,
|
input [47:0] C,
|
||||||
input CARRYCASCIN,
|
input CARRYCASCIN,
|
||||||
|
@ -494,9 +494,9 @@ module DSP48E1 (
|
||||||
`endif
|
`endif
|
||||||
end
|
end
|
||||||
|
|
||||||
reg [29:0] Ar;
|
reg signed [29:0] Ar;
|
||||||
reg [17:0] Br;
|
reg signed [17:0] Br;
|
||||||
reg [47:0] Pr;
|
reg signed [47:0] Pr;
|
||||||
generate
|
generate
|
||||||
if (AREG == 1) begin always @(posedge CLK) if (CEA2) Ar <= A; end
|
if (AREG == 1) begin always @(posedge CLK) if (CEA2) Ar <= A; end
|
||||||
else always @* Ar <= A;
|
else always @* Ar <= A;
|
||||||
|
@ -516,7 +516,7 @@ module DSP48E1 (
|
||||||
if (PCIN != 48'b0) $fatal(1, "Unsupported PCIN value");
|
if (PCIN != 48'b0) $fatal(1, "Unsupported PCIN value");
|
||||||
if (CARRYIN != 1'b0) $fatal(1, "Unsupported CARRYIN value");
|
if (CARRYIN != 1'b0) $fatal(1, "Unsupported CARRYIN value");
|
||||||
`endif
|
`endif
|
||||||
Pr[42:0] <= $signed(Ar[24:0]) * $signed(Br);
|
Pr[42:0] <= $signed(Ar[24:0]) * Br;
|
||||||
end
|
end
|
||||||
|
|
||||||
generate
|
generate
|
||||||
|
|
|
@ -20,7 +20,7 @@ module \$__MUL25X18 (input [24:0] A, input [17:0] B, output [42:0] Y);
|
||||||
.PREG(0)
|
.PREG(0)
|
||||||
) _TECHMAP_REPLACE_ (
|
) _TECHMAP_REPLACE_ (
|
||||||
//Data path
|
//Data path
|
||||||
.A({5'b0, A}),
|
.A({{5{A[24]}}, A}),
|
||||||
.B(B),
|
.B(B),
|
||||||
.C(48'b0),
|
.C(48'b0),
|
||||||
.D(24'b0),
|
.D(24'b0),
|
||||||
|
|
Loading…
Reference in a new issue