module $__NX_RFB_U_DPREG_ ( input PORT_W_CLK, input [6-1:0] PORT_W_ADDR, input [6-1:0] PORT_R_ADDR, input [36-1:0] PORT_W_WR_DATA, input PORT_W_WR_EN, output [36-1:0] PORT_R_RD_DATA ); parameter INIT = 1152'bx; parameter PORT_W_CLK_POL = 1'b1; parameter OPTION_MODE = 0; parameter WIDTH = 18; parameter BITS_USED = 0; localparam BLOCK_NUM = OPTION_MODE == 2 ? 64 : 32; localparam BLOCK_SIZE = OPTION_MODE == 3 ? 36 : 18; `include "rf_init.vh" // mode 0 - DPREG // mode 2 - NX_XRFB_64x18 // mode 3 - NX_XRFB_32x36 NX_RFB_U #( .mode(OPTION_MODE), .mem_ctxt($sformatf("%s",rf_init_to_string(INIT, BLOCK_NUM, BLOCK_SIZE))), .wck_edge(PORT_W_CLK_POL == 1 ? 1'b0 : 1'b1) ) _TECHMAP_REPLACE_ ( .WCK(PORT_W_CLK), .I1(PORT_W_WR_DATA[0]), .I2(PORT_W_WR_DATA[1]), .I3(PORT_W_WR_DATA[2]), .I4(PORT_W_WR_DATA[3]), .I5(PORT_W_WR_DATA[4]), .I6(PORT_W_WR_DATA[5]), .I7(PORT_W_WR_DATA[6]), .I8(PORT_W_WR_DATA[7]), .I9(PORT_W_WR_DATA[8]), .I10(PORT_W_WR_DATA[9]), .I11(PORT_W_WR_DATA[10]), .I12(PORT_W_WR_DATA[11]), .I13(PORT_W_WR_DATA[12]), .I14(PORT_W_WR_DATA[13]), .I15(PORT_W_WR_DATA[14]), .I16(PORT_W_WR_DATA[15]), .I17(PORT_W_WR_DATA[16]), .I18(PORT_W_WR_DATA[17]), .I19(PORT_W_WR_DATA[18]), .I20(PORT_W_WR_DATA[19]), .I21(PORT_W_WR_DATA[20]), .I22(PORT_W_WR_DATA[21]), .I23(PORT_W_WR_DATA[22]), .I24(PORT_W_WR_DATA[23]), .I25(PORT_W_WR_DATA[24]), .I26(PORT_W_WR_DATA[25]), .I27(PORT_W_WR_DATA[26]), .I28(PORT_W_WR_DATA[27]), .I29(PORT_W_WR_DATA[28]), .I30(PORT_W_WR_DATA[29]), .I31(PORT_W_WR_DATA[30]), .I32(PORT_W_WR_DATA[31]), .I33(PORT_W_WR_DATA[32]), .I34(PORT_W_WR_DATA[33]), .I35(PORT_W_WR_DATA[34]), .I36(PORT_W_WR_DATA[35]), .O1(PORT_R_RD_DATA[0]), .O2(PORT_R_RD_DATA[1]), .O3(PORT_R_RD_DATA[2]), .O4(PORT_R_RD_DATA[3]), .O5(PORT_R_RD_DATA[4]), .O6(PORT_R_RD_DATA[5]), .O7(PORT_R_RD_DATA[6]), .O8(PORT_R_RD_DATA[7]), .O9(PORT_R_RD_DATA[8]), .O10(PORT_R_RD_DATA[9]), .O11(PORT_R_RD_DATA[10]), .O12(PORT_R_RD_DATA[11]), .O13(PORT_R_RD_DATA[12]), .O14(PORT_R_RD_DATA[13]), .O15(PORT_R_RD_DATA[14]), .O16(PORT_R_RD_DATA[15]), .O17(PORT_R_RD_DATA[16]), .O18(PORT_R_RD_DATA[17]), .O19(PORT_R_RD_DATA[18]), .O20(PORT_R_RD_DATA[19]), .O21(PORT_R_RD_DATA[20]), .O22(PORT_R_RD_DATA[21]), .O23(PORT_R_RD_DATA[22]), .O24(PORT_R_RD_DATA[23]), .O25(PORT_R_RD_DATA[24]), .O26(PORT_R_RD_DATA[25]), .O27(PORT_R_RD_DATA[26]), .O28(PORT_R_RD_DATA[27]), .O29(PORT_R_RD_DATA[28]), .O30(PORT_R_RD_DATA[29]), .O31(PORT_R_RD_DATA[30]), .O32(PORT_R_RD_DATA[31]), .O33(PORT_R_RD_DATA[32]), .O34(PORT_R_RD_DATA[33]), .O35(PORT_R_RD_DATA[34]), .O36(PORT_R_RD_DATA[35]), .RA1(PORT_R_ADDR[0]), .RA2(PORT_R_ADDR[1]), .RA3(PORT_R_ADDR[2]), .RA4(PORT_R_ADDR[3]), .RA5(PORT_R_ADDR[4]), .RA6(PORT_R_ADDR[5]), .RA7(), .RA8(), .RA9(), .RA10(), .WA1(PORT_W_ADDR[0]), .WA2(PORT_W_ADDR[1]), .WA3(PORT_W_ADDR[2]), .WA4(PORT_W_ADDR[3]), .WA5(PORT_W_ADDR[4]), .WA6(PORT_W_ADDR[5]), .WE(PORT_W_WR_EN), .WEA(1'b0) ); endmodule module $__NX_RFB_U_SPREG_ ( input PORT_RW_CLK, input [4:0] PORT_RW_ADDR, input [17:0] PORT_RW_WR_DATA, input PORT_RW_WR_EN, output [17:0] PORT_RW_RD_DATA ); parameter INIT = 576'bx; parameter PORT_RW_CLK_POL = 1'b1; parameter BITS_USED = 0; `include "rf_init.vh" NX_RFB_U #( .mode(1), .mem_ctxt($sformatf("%s",rf_init_to_string(INIT, 32, 18))), .wck_edge(PORT_RW_CLK_POL == 1 ? 1'b0 : 1'b1) ) _TECHMAP_REPLACE_ ( .WCK(PORT_RW_CLK), .I1(PORT_RW_WR_DATA[0]), .I2(PORT_RW_WR_DATA[1]), .I3(PORT_RW_WR_DATA[2]), .I4(PORT_RW_WR_DATA[3]), .I5(PORT_RW_WR_DATA[4]), .I6(PORT_RW_WR_DATA[5]), .I7(PORT_RW_WR_DATA[6]), .I8(PORT_RW_WR_DATA[7]), .I9(PORT_RW_WR_DATA[8]), .I10(PORT_RW_WR_DATA[9]), .I11(PORT_RW_WR_DATA[10]), .I12(PORT_RW_WR_DATA[11]), .I13(PORT_RW_WR_DATA[12]), .I14(PORT_RW_WR_DATA[13]), .I15(PORT_RW_WR_DATA[14]), .I16(PORT_RW_WR_DATA[15]), .I17(PORT_RW_WR_DATA[16]), .I18(PORT_RW_WR_DATA[17]), .I19(), .I20(), .I21(), .I22(), .I23(), .I24(), .I25(), .I26(), .I27(), .I28(), .I29(), .I30(), .I31(), .I32(), .I33(), .I34(), .I35(), .I36(), .O1(PORT_RW_RD_DATA[0]), .O2(PORT_RW_RD_DATA[1]), .O3(PORT_RW_RD_DATA[2]), .O4(PORT_RW_RD_DATA[3]), .O5(PORT_RW_RD_DATA[4]), .O6(PORT_RW_RD_DATA[5]), .O7(PORT_RW_RD_DATA[6]), .O8(PORT_RW_RD_DATA[7]), .O9(PORT_RW_RD_DATA[8]), .O10(PORT_RW_RD_DATA[9]), .O11(PORT_RW_RD_DATA[10]), .O12(PORT_RW_RD_DATA[11]), .O13(PORT_RW_RD_DATA[12]), .O14(PORT_RW_RD_DATA[13]), .O15(PORT_RW_RD_DATA[14]), .O16(PORT_RW_RD_DATA[15]), .O17(PORT_RW_RD_DATA[16]), .O18(PORT_RW_RD_DATA[17]), .O19(), .O20(), .O21(), .O22(), .O23(), .O24(), .O25(), .O26(), .O27(), .O28(), .O29(), .O30(), .O31(), .O32(), .O33(), .O34(), .O35(), .O36(), .RA1(), .RA2(), .RA3(), .RA4(), .RA5(), .RA6(), .RA7(), .RA8(), .RA9(), .RA10(), .WA1(PORT_RW_ADDR[0]), .WA2(PORT_RW_ADDR[1]), .WA3(PORT_RW_ADDR[2]), .WA4(PORT_RW_ADDR[3]), .WA5(PORT_RW_ADDR[4]), .WA6(), .WE(PORT_RW_WR_EN), .WEA(1'b0) ); endmodule module $__NX_XRFB_2R_1W_ ( input PORT_W_CLK, input [4:0] PORT_W_ADDR, input [4:0] PORT_A_ADDR, input [4:0] PORT_B_ADDR, input [17:0] PORT_W_WR_DATA, input PORT_W_WR_EN, output [17:0] PORT_A_RD_DATA, output [17:0] PORT_B_RD_DATA ); parameter INIT = 576'bx; parameter PORT_W_CLK_POL = 1'b1; parameter BITS_USED = 0; `include "rf_init.vh" NX_RFB_U #( .mode(4), .mem_ctxt($sformatf("%s",rf_init_to_string(INIT, 32, 18))), .wck_edge(PORT_W_CLK_POL == 1 ? 1'b0 : 1'b1) ) _TECHMAP_REPLACE_ ( .WCK(PORT_W_CLK), .I1(PORT_W_WR_DATA[0]), .I2(PORT_W_WR_DATA[1]), .I3(PORT_W_WR_DATA[2]), .I4(PORT_W_WR_DATA[3]), .I5(PORT_W_WR_DATA[4]), .I6(PORT_W_WR_DATA[5]), .I7(PORT_W_WR_DATA[6]), .I8(PORT_W_WR_DATA[7]), .I9(PORT_W_WR_DATA[8]), .I10(PORT_W_WR_DATA[9]), .I11(PORT_W_WR_DATA[10]), .I12(PORT_W_WR_DATA[11]), .I13(PORT_W_WR_DATA[12]), .I14(PORT_W_WR_DATA[13]), .I15(PORT_W_WR_DATA[14]), .I16(PORT_W_WR_DATA[15]), .I17(PORT_W_WR_DATA[16]), .I18(PORT_W_WR_DATA[17]), .I19(), .I20(), .I21(), .I22(), .I23(), .I24(), .I25(), .I26(), .I27(), .I28(), .I29(), .I30(), .I31(), .I32(), .I33(), .I34(), .I35(), .I36(), .O1(PORT_A_RD_DATA[0]), .O2(PORT_A_RD_DATA[1]), .O3(PORT_A_RD_DATA[2]), .O4(PORT_A_RD_DATA[3]), .O5(PORT_A_RD_DATA[4]), .O6(PORT_A_RD_DATA[5]), .O7(PORT_A_RD_DATA[6]), .O8(PORT_A_RD_DATA[7]), .O9(PORT_A_RD_DATA[8]), .O10(PORT_A_RD_DATA[9]), .O11(PORT_A_RD_DATA[10]), .O12(PORT_A_RD_DATA[11]), .O13(PORT_A_RD_DATA[12]), .O14(PORT_A_RD_DATA[13]), .O15(PORT_A_RD_DATA[14]), .O16(PORT_A_RD_DATA[15]), .O17(PORT_A_RD_DATA[16]), .O18(PORT_A_RD_DATA[17]), .O19(PORT_B_RD_DATA[0]), .O20(PORT_B_RD_DATA[1]), .O21(PORT_B_RD_DATA[2]), .O22(PORT_B_RD_DATA[3]), .O23(PORT_B_RD_DATA[4]), .O24(PORT_B_RD_DATA[5]), .O25(PORT_B_RD_DATA[6]), .O26(PORT_B_RD_DATA[7]), .O27(PORT_B_RD_DATA[8]), .O28(PORT_B_RD_DATA[9]), .O29(PORT_B_RD_DATA[10]), .O30(PORT_B_RD_DATA[11]), .O31(PORT_B_RD_DATA[12]), .O32(PORT_B_RD_DATA[13]), .O33(PORT_B_RD_DATA[14]), .O34(PORT_B_RD_DATA[15]), .O35(PORT_B_RD_DATA[16]), .O36(PORT_B_RD_DATA[17]), .RA1(PORT_A_ADDR[0]), .RA2(PORT_A_ADDR[1]), .RA3(PORT_A_ADDR[2]), .RA4(PORT_A_ADDR[3]), .RA5(PORT_A_ADDR[4]), .RA6(PORT_B_ADDR[0]), .RA7(PORT_B_ADDR[1]), .RA8(PORT_B_ADDR[2]), .RA9(PORT_B_ADDR[3]), .RA10(PORT_B_ADDR[4]), .WA1(PORT_W_ADDR[0]), .WA2(PORT_W_ADDR[1]), .WA3(PORT_W_ADDR[2]), .WA4(PORT_W_ADDR[3]), .WA5(PORT_W_ADDR[4]), .WA6(), .WE(PORT_W_WR_EN), .WEA(1'b0) ); endmodule