3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-08-31 07:14:55 +00:00

more DSP wrappers

This commit is contained in:
Miodrag Milanovic 2024-03-12 15:11:11 +01:00
parent ce635abc21
commit 200e1a7bfe
4 changed files with 2156 additions and 248 deletions

View file

@ -853,254 +853,6 @@ module NX_DFR(I, CK, L, R, O);
parameter ring = 0;
endmodule
(* blackbox *)
module NX_DSP_L_SPLIT(CK, R, RZ, WE, CI, CCI, CO, CO36, CO56, OVF, CCO, A, B, C, D, Z, CAI, CBI, CZI, CAO, CBO
, CZO);
input [23:0] A;
input [17:0] B;
input [35:0] C;
input [23:0] CAI;
output [23:0] CAO;
input [17:0] CBI;
output [17:0] CBO;
input CCI;
output CCO;
input CI;
input CK;
output CO;
output CO36;
output CO56;
input [55:0] CZI;
output [55:0] CZO;
input [17:0] D;
output OVF;
input R;
input RZ;
input WE;
output [55:0] Z;
parameter ALU_DYNAMIC_OP = 1'b0;
parameter ALU_MUX = 1'b0;
parameter ALU_OP = 6'b000000;
parameter CO_SEL = 1'b0;
parameter ENABLE_PR_ALU_RST = 1'b0;
parameter ENABLE_PR_A_RST = 1'b0;
parameter ENABLE_PR_B_RST = 1'b0;
parameter ENABLE_PR_CI_RST = 1'b0;
parameter ENABLE_PR_CO_RST = 1'b0;
parameter ENABLE_PR_C_RST = 1'b0;
parameter ENABLE_PR_D_RST = 1'b0;
parameter ENABLE_PR_MULT_RST = 1'b0;
parameter ENABLE_PR_OV_RST = 1'b0;
parameter ENABLE_PR_P_RST = 1'b0;
parameter ENABLE_PR_X_RST = 1'b0;
parameter ENABLE_PR_Y_RST = 1'b0;
parameter ENABLE_PR_Z_RST = 1'b0;
parameter ENABLE_SATURATION = 1'b0;
parameter MUX_A = 1'b0;
parameter MUX_B = 1'b0;
parameter MUX_CI = 1'b0;
parameter MUX_P = 1'b0;
parameter MUX_X = 2'b00;
parameter MUX_Y = 1'b0;
parameter MUX_Z = 1'b0;
parameter PRE_ADDER_OP = 1'b0;
parameter PR_ALU_MUX = 1'b0;
parameter PR_A_CASCADE_MUX = 2'b00;
parameter PR_A_MUX = 2'b00;
parameter PR_B_CASCADE_MUX = 2'b00;
parameter PR_B_MUX = 2'b00;
parameter PR_CI_MUX = 1'b0;
parameter PR_CO_MUX = 1'b0;
parameter PR_C_MUX = 1'b0;
parameter PR_D_MUX = 1'b0;
parameter PR_MULT_MUX = 1'b0;
parameter PR_OV_MUX = 1'b0;
parameter PR_P_MUX = 1'b0;
parameter PR_X_MUX = 1'b0;
parameter PR_Y_MUX = 1'b0;
parameter PR_Z_MUX = 1'b0;
parameter SATURATION_RANK = 6'b000000;
parameter SIGNED_MODE = 1'b0;
parameter Z_FEEDBACK_SHL12 = 1'b0;
endmodule
(* blackbox *)
module NX_DSP_L_WRAP(CCI, CCO, CI, CK, CO, CO37, CO57, OVF, R, RZ, WE, A, B, C, D, Z, CAI, CBI, CZI, CAO, CBO
, CZO);
input [23:0] A;
input [17:0] B;
input [35:0] C;
input [23:0] CAI;
output [23:0] CAO;
input [17:0] CBI;
output [17:0] CBO;
input CCI;
output CCO;
input CI;
input CK;
output CO;
output CO37;
output CO57;
input [55:0] CZI;
output [55:0] CZO;
input [17:0] D;
output OVF;
input R;
input RZ;
input WE;
output [55:0] Z;
parameter raw_config0 = 20'b00000000000000000000;
parameter raw_config1 = 19'b0000000000000000000;
parameter raw_config2 = 13'b0000000000000;
parameter raw_config3 = 7'b0000000;
parameter std_mode = "";
endmodule
(* blackbox *)
module NX_DSP_U_SPLIT(CK, R, RZ, WE, WEZ, CI, CCI, CO42, CO56, OVF, CCO, A, B, C, D, Z, CAI, CBI, CZI, CAO, CBO
, CZO);
input [23:0] A;
input [17:0] B;
input [35:0] C;
input [23:0] CAI;
output [23:0] CAO;
input [17:0] CBI;
output [17:0] CBO;
input CCI;
output CCO;
input CI;
input CK;
output CO42;
output CO56;
input [55:0] CZI;
output [55:0] CZO;
input [17:0] D;
output OVF;
input R;
input RZ;
input WE;
input WEZ;
output [55:0] Z;
parameter ALU_DYNAMIC_OP = 2'b00;
parameter ALU_OP = 3'b000;
parameter ENABLE_PR_A_RST = 1'b0;
parameter ENABLE_PR_B_RST = 1'b0;
parameter ENABLE_PR_CCO_RST = 1'b0;
parameter ENABLE_PR_CI_RST = 1'b0;
parameter ENABLE_PR_CO_RST = 1'b0;
parameter ENABLE_PR_CZ_RST = 1'b0;
parameter ENABLE_PR_C_RST = 1'b0;
parameter ENABLE_PR_D_RST = 1'b0;
parameter ENABLE_PR_MULT_RST = 1'b0;
parameter ENABLE_PR_OV_RST = 1'b0;
parameter ENABLE_PR_P_RST = 1'b0;
parameter ENABLE_PR_X_RST = 1'b0;
parameter ENABLE_PR_Y_RST = 1'b0;
parameter ENABLE_PR_Z_RST = 1'b0;
parameter ENABLE_SATURATION = 1'b0;
parameter INV_RST = 1'b0;
parameter INV_RSTZ = 1'b0;
parameter INV_WE = 1'b0;
parameter INV_WEZ = 1'b0;
parameter MUX_A = 1'b0;
parameter MUX_B = 1'b0;
parameter MUX_CCI = 1'b0;
parameter MUX_CCO = 1'b0;
parameter MUX_CI = 1'b0;
parameter MUX_CZ = 1'b0;
parameter MUX_P = 1'b0;
parameter MUX_X = 3'b000;
parameter MUX_Y = 1'b0;
parameter MUX_Z = 1'b0;
parameter PRE_ADDER_OP = 1'b0;
parameter PR_A_CASCADE_MUX = 2'b00;
parameter PR_A_MUX = 2'b00;
parameter PR_B_CASCADE_MUX = 2'b00;
parameter PR_B_MUX = 2'b00;
parameter PR_CCO_MUX = 1'b0;
parameter PR_CI_MUX = 1'b0;
parameter PR_CO_MUX = 1'b0;
parameter PR_CZ_MUX = 1'b0;
parameter PR_C_MUX = 1'b0;
parameter PR_D_MUX = 1'b0;
parameter PR_MULT_MUX = 1'b0;
parameter PR_OV_MUX = 1'b0;
parameter PR_P_MUX = 1'b0;
parameter PR_RSTZ_MUX = 1'b0;
parameter PR_RST_MUX = 1'b0;
parameter PR_WEZ_MUX = 1'b0;
parameter PR_WE_MUX = 1'b0;
parameter PR_X_MUX = 1'b0;
parameter PR_Y_MUX = 1'b0;
parameter PR_Z_MUX = 1'b0;
parameter SATURATION_RANK = 6'b000000;
parameter SIGNED_MODE = 1'b0;
endmodule
(* blackbox *)
module NX_DSP_U_WRAP(CCI, CCO, CI, CK, CO43, CO57, OVF, R, RZ, WE, WEZ, A, B, C, D, Z, CAI, CBI, CZI, CAO, CBO
, CZO);
input [23:0] A;
input [17:0] B;
input [35:0] C;
input [23:0] CAI;
output [23:0] CAO;
input [17:0] CBI;
output [17:0] CBO;
input CCI;
output CCO;
input CI;
input CK;
output CO43;
output CO57;
input [55:0] CZI;
output [55:0] CZO;
input [17:0] D;
output OVF;
input R;
input RZ;
input WE;
input WEZ;
output [55:0] Z;
parameter raw_config0 = 27'b000000000000000000000000000;
parameter raw_config1 = 24'b000000000000000000000000;
parameter raw_config2 = 14'b00000000000000;
parameter raw_config3 = 3'b000;
parameter std_mode = "";
endmodule
(* blackbox *)
module NX_DSP_WRAP(CCI, CCO, CI, CK, CO, CO37, CO49, OVF, R, RZ, WE, A, B, C, D, Z, CAI, CBI, CZI, CAO, CBO
, CZO);
input [23:0] A;
input [17:0] B;
input [35:0] C;
input [17:0] CAI;
output [17:0] CAO;
input [17:0] CBI;
output [17:0] CBO;
input CCI;
output CCO;
input CI;
input CK;
output CO;
output CO37;
output CO49;
input [55:0] CZI;
output [55:0] CZO;
input [17:0] D;
output OVF;
input R;
input RZ;
input WE;
output [55:0] Z;
parameter raw_config0 = 20'b00000000000000000000;
parameter raw_config1 = 19'b0000000000000000000;
parameter raw_config2 = 13'b0000000000000;
parameter raw_config3 = 7'b0000000;
parameter std_mode = "";
endmodule
(* blackbox *)
module NX_ECC(CKD, CHK, COR, ERR);
input CHK;