mirror of https://github.com/YosysHQ/yosys.git
gowin: Add remaining block RAM blackboxes.
This commit is contained in:
parent
1772a1e98e
commit
3a62fa0c97
|
@ -920,87 +920,263 @@ end
|
||||||
endmodule
|
endmodule
|
||||||
|
|
||||||
|
|
||||||
|
(* blackbox *)
|
||||||
|
module SP (DO, DI, BLKSEL, AD, WRE, CLK, CE, OCE, RESET);
|
||||||
|
|
||||||
|
// 1 Enables output pipeline registers.
|
||||||
|
parameter READ_MODE = 1'b0;
|
||||||
|
// 0: no read on write, 1: transparent, 2: read-before-write
|
||||||
|
parameter WRITE_MODE = 2'b00;
|
||||||
|
parameter BIT_WIDTH = 32; // 1, 2, 4, 8, 16, 32
|
||||||
|
parameter BLK_SEL = 3'b000;
|
||||||
|
parameter RESET_MODE = "SYNC";
|
||||||
|
parameter INIT_RAM_00 = 256'h0;
|
||||||
|
parameter INIT_RAM_01 = 256'h0;
|
||||||
|
parameter INIT_RAM_02 = 256'h0;
|
||||||
|
parameter INIT_RAM_03 = 256'h0;
|
||||||
|
parameter INIT_RAM_04 = 256'h0;
|
||||||
|
parameter INIT_RAM_05 = 256'h0;
|
||||||
|
parameter INIT_RAM_06 = 256'h0;
|
||||||
|
parameter INIT_RAM_07 = 256'h0;
|
||||||
|
parameter INIT_RAM_08 = 256'h0;
|
||||||
|
parameter INIT_RAM_09 = 256'h0;
|
||||||
|
parameter INIT_RAM_0A = 256'h0;
|
||||||
|
parameter INIT_RAM_0B = 256'h0;
|
||||||
|
parameter INIT_RAM_0C = 256'h0;
|
||||||
|
parameter INIT_RAM_0D = 256'h0;
|
||||||
|
parameter INIT_RAM_0E = 256'h0;
|
||||||
|
parameter INIT_RAM_0F = 256'h0;
|
||||||
|
parameter INIT_RAM_10 = 256'h0;
|
||||||
|
parameter INIT_RAM_11 = 256'h0;
|
||||||
|
parameter INIT_RAM_12 = 256'h0;
|
||||||
|
parameter INIT_RAM_13 = 256'h0;
|
||||||
|
parameter INIT_RAM_14 = 256'h0;
|
||||||
|
parameter INIT_RAM_15 = 256'h0;
|
||||||
|
parameter INIT_RAM_16 = 256'h0;
|
||||||
|
parameter INIT_RAM_17 = 256'h0;
|
||||||
|
parameter INIT_RAM_18 = 256'h0;
|
||||||
|
parameter INIT_RAM_19 = 256'h0;
|
||||||
|
parameter INIT_RAM_1A = 256'h0;
|
||||||
|
parameter INIT_RAM_1B = 256'h0;
|
||||||
|
parameter INIT_RAM_1C = 256'h0;
|
||||||
|
parameter INIT_RAM_1D = 256'h0;
|
||||||
|
parameter INIT_RAM_1E = 256'h0;
|
||||||
|
parameter INIT_RAM_1F = 256'h0;
|
||||||
|
parameter INIT_RAM_20 = 256'h0;
|
||||||
|
parameter INIT_RAM_21 = 256'h0;
|
||||||
|
parameter INIT_RAM_22 = 256'h0;
|
||||||
|
parameter INIT_RAM_23 = 256'h0;
|
||||||
|
parameter INIT_RAM_24 = 256'h0;
|
||||||
|
parameter INIT_RAM_25 = 256'h0;
|
||||||
|
parameter INIT_RAM_26 = 256'h0;
|
||||||
|
parameter INIT_RAM_27 = 256'h0;
|
||||||
|
parameter INIT_RAM_28 = 256'h0;
|
||||||
|
parameter INIT_RAM_29 = 256'h0;
|
||||||
|
parameter INIT_RAM_2A = 256'h0;
|
||||||
|
parameter INIT_RAM_2B = 256'h0;
|
||||||
|
parameter INIT_RAM_2C = 256'h0;
|
||||||
|
parameter INIT_RAM_2D = 256'h0;
|
||||||
|
parameter INIT_RAM_2E = 256'h0;
|
||||||
|
parameter INIT_RAM_2F = 256'h0;
|
||||||
|
parameter INIT_RAM_30 = 256'h0;
|
||||||
|
parameter INIT_RAM_31 = 256'h0;
|
||||||
|
parameter INIT_RAM_32 = 256'h0;
|
||||||
|
parameter INIT_RAM_33 = 256'h0;
|
||||||
|
parameter INIT_RAM_34 = 256'h0;
|
||||||
|
parameter INIT_RAM_35 = 256'h0;
|
||||||
|
parameter INIT_RAM_36 = 256'h0;
|
||||||
|
parameter INIT_RAM_37 = 256'h0;
|
||||||
|
parameter INIT_RAM_38 = 256'h0;
|
||||||
|
parameter INIT_RAM_39 = 256'h0;
|
||||||
|
parameter INIT_RAM_3A = 256'h0;
|
||||||
|
parameter INIT_RAM_3B = 256'h0;
|
||||||
|
parameter INIT_RAM_3C = 256'h0;
|
||||||
|
parameter INIT_RAM_3D = 256'h0;
|
||||||
|
parameter INIT_RAM_3E = 256'h0;
|
||||||
|
parameter INIT_RAM_3F = 256'h0;
|
||||||
|
|
||||||
|
output [31:0] DO;
|
||||||
|
input [31:0] DI;
|
||||||
|
input [2:0] BLKSEL;
|
||||||
|
input [13:0] AD;
|
||||||
|
input WRE;
|
||||||
|
input CLK;
|
||||||
|
input CE;
|
||||||
|
input OCE;
|
||||||
|
input RESET;
|
||||||
|
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
(* blackbox *)
|
||||||
|
module SPX9 (DO, DI, BLKSEL, AD, WRE, CLK, CE, OCE, RESET);
|
||||||
|
|
||||||
|
// 1 Enables output pipeline registers.
|
||||||
|
parameter READ_MODE = 1'b0;
|
||||||
|
// 0: no read on write, 1: transparent, 2: read-before-write
|
||||||
|
parameter WRITE_MODE = 2'b00;
|
||||||
|
parameter BIT_WIDTH = 36; // 9, 18, 36
|
||||||
|
parameter BLK_SEL = 3'b000;
|
||||||
|
parameter RESET_MODE = "SYNC";
|
||||||
|
parameter INIT_RAM_00 = 288'h0;
|
||||||
|
parameter INIT_RAM_01 = 288'h0;
|
||||||
|
parameter INIT_RAM_02 = 288'h0;
|
||||||
|
parameter INIT_RAM_03 = 288'h0;
|
||||||
|
parameter INIT_RAM_04 = 288'h0;
|
||||||
|
parameter INIT_RAM_05 = 288'h0;
|
||||||
|
parameter INIT_RAM_06 = 288'h0;
|
||||||
|
parameter INIT_RAM_07 = 288'h0;
|
||||||
|
parameter INIT_RAM_08 = 288'h0;
|
||||||
|
parameter INIT_RAM_09 = 288'h0;
|
||||||
|
parameter INIT_RAM_0A = 288'h0;
|
||||||
|
parameter INIT_RAM_0B = 288'h0;
|
||||||
|
parameter INIT_RAM_0C = 288'h0;
|
||||||
|
parameter INIT_RAM_0D = 288'h0;
|
||||||
|
parameter INIT_RAM_0E = 288'h0;
|
||||||
|
parameter INIT_RAM_0F = 288'h0;
|
||||||
|
parameter INIT_RAM_10 = 288'h0;
|
||||||
|
parameter INIT_RAM_11 = 288'h0;
|
||||||
|
parameter INIT_RAM_12 = 288'h0;
|
||||||
|
parameter INIT_RAM_13 = 288'h0;
|
||||||
|
parameter INIT_RAM_14 = 288'h0;
|
||||||
|
parameter INIT_RAM_15 = 288'h0;
|
||||||
|
parameter INIT_RAM_16 = 288'h0;
|
||||||
|
parameter INIT_RAM_17 = 288'h0;
|
||||||
|
parameter INIT_RAM_18 = 288'h0;
|
||||||
|
parameter INIT_RAM_19 = 288'h0;
|
||||||
|
parameter INIT_RAM_1A = 288'h0;
|
||||||
|
parameter INIT_RAM_1B = 288'h0;
|
||||||
|
parameter INIT_RAM_1C = 288'h0;
|
||||||
|
parameter INIT_RAM_1D = 288'h0;
|
||||||
|
parameter INIT_RAM_1E = 288'h0;
|
||||||
|
parameter INIT_RAM_1F = 288'h0;
|
||||||
|
parameter INIT_RAM_20 = 288'h0;
|
||||||
|
parameter INIT_RAM_21 = 288'h0;
|
||||||
|
parameter INIT_RAM_22 = 288'h0;
|
||||||
|
parameter INIT_RAM_23 = 288'h0;
|
||||||
|
parameter INIT_RAM_24 = 288'h0;
|
||||||
|
parameter INIT_RAM_25 = 288'h0;
|
||||||
|
parameter INIT_RAM_26 = 288'h0;
|
||||||
|
parameter INIT_RAM_27 = 288'h0;
|
||||||
|
parameter INIT_RAM_28 = 288'h0;
|
||||||
|
parameter INIT_RAM_29 = 288'h0;
|
||||||
|
parameter INIT_RAM_2A = 288'h0;
|
||||||
|
parameter INIT_RAM_2B = 288'h0;
|
||||||
|
parameter INIT_RAM_2C = 288'h0;
|
||||||
|
parameter INIT_RAM_2D = 288'h0;
|
||||||
|
parameter INIT_RAM_2E = 288'h0;
|
||||||
|
parameter INIT_RAM_2F = 288'h0;
|
||||||
|
parameter INIT_RAM_30 = 288'h0;
|
||||||
|
parameter INIT_RAM_31 = 288'h0;
|
||||||
|
parameter INIT_RAM_32 = 288'h0;
|
||||||
|
parameter INIT_RAM_33 = 288'h0;
|
||||||
|
parameter INIT_RAM_34 = 288'h0;
|
||||||
|
parameter INIT_RAM_35 = 288'h0;
|
||||||
|
parameter INIT_RAM_36 = 288'h0;
|
||||||
|
parameter INIT_RAM_37 = 288'h0;
|
||||||
|
parameter INIT_RAM_38 = 288'h0;
|
||||||
|
parameter INIT_RAM_39 = 288'h0;
|
||||||
|
parameter INIT_RAM_3A = 288'h0;
|
||||||
|
parameter INIT_RAM_3B = 288'h0;
|
||||||
|
parameter INIT_RAM_3C = 288'h0;
|
||||||
|
parameter INIT_RAM_3D = 288'h0;
|
||||||
|
parameter INIT_RAM_3E = 288'h0;
|
||||||
|
parameter INIT_RAM_3F = 288'h0;
|
||||||
|
|
||||||
|
output [35:0] DO;
|
||||||
|
input [35:0] DI;
|
||||||
|
input [2:0] BLKSEL;
|
||||||
|
input [13:0] AD;
|
||||||
|
input WRE;
|
||||||
|
input CLK;
|
||||||
|
input CE;
|
||||||
|
input OCE;
|
||||||
|
input RESET;
|
||||||
|
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
|
||||||
(* blackbox *)
|
(* blackbox *)
|
||||||
module SDP (DO, DI, BLKSEL, ADA, ADB, WREA, WREB, CLKA, CLKB, CEA, CEB, OCE, RESETA, RESETB);
|
module SDP (DO, DI, BLKSEL, ADA, ADB, WREA, WREB, CLKA, CLKB, CEA, CEB, OCE, RESETA, RESETB);
|
||||||
//1'b0: Bypass mode; 1'b1 Pipeline mode
|
|
||||||
parameter READ_MODE = 1'b0;
|
parameter READ_MODE = 1'b0;
|
||||||
parameter BIT_WIDTH_0 = 32; // 1, 2, 4, 8, 16, 32
|
parameter BIT_WIDTH_0 = 32; // 1, 2, 4, 8, 16, 32
|
||||||
parameter BIT_WIDTH_1 = 32; // 1, 2, 4, 8, 16, 32
|
parameter BIT_WIDTH_1 = 32; // 1, 2, 4, 8, 16, 32
|
||||||
parameter BLK_SEL = 3'b000;
|
parameter BLK_SEL = 3'b000;
|
||||||
parameter RESET_MODE = "SYNC";
|
parameter RESET_MODE = "SYNC";
|
||||||
parameter INIT_RAM_00 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_00 = 256'h0;
|
||||||
parameter INIT_RAM_01 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_01 = 256'h0;
|
||||||
parameter INIT_RAM_02 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_02 = 256'h0;
|
||||||
parameter INIT_RAM_03 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_03 = 256'h0;
|
||||||
parameter INIT_RAM_04 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_04 = 256'h0;
|
||||||
parameter INIT_RAM_05 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_05 = 256'h0;
|
||||||
parameter INIT_RAM_06 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_06 = 256'h0;
|
||||||
parameter INIT_RAM_07 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_07 = 256'h0;
|
||||||
parameter INIT_RAM_08 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_08 = 256'h0;
|
||||||
parameter INIT_RAM_09 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_09 = 256'h0;
|
||||||
parameter INIT_RAM_0A = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_0A = 256'h0;
|
||||||
parameter INIT_RAM_0B = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_0B = 256'h0;
|
||||||
parameter INIT_RAM_0C = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_0C = 256'h0;
|
||||||
parameter INIT_RAM_0D = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_0D = 256'h0;
|
||||||
parameter INIT_RAM_0E = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_0E = 256'h0;
|
||||||
parameter INIT_RAM_0F = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_0F = 256'h0;
|
||||||
parameter INIT_RAM_10 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_10 = 256'h0;
|
||||||
parameter INIT_RAM_11 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_11 = 256'h0;
|
||||||
parameter INIT_RAM_12 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_12 = 256'h0;
|
||||||
parameter INIT_RAM_13 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_13 = 256'h0;
|
||||||
parameter INIT_RAM_14 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_14 = 256'h0;
|
||||||
parameter INIT_RAM_15 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_15 = 256'h0;
|
||||||
parameter INIT_RAM_16 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_16 = 256'h0;
|
||||||
parameter INIT_RAM_17 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_17 = 256'h0;
|
||||||
parameter INIT_RAM_18 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_18 = 256'h0;
|
||||||
parameter INIT_RAM_19 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_19 = 256'h0;
|
||||||
parameter INIT_RAM_1A = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_1A = 256'h0;
|
||||||
parameter INIT_RAM_1B = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_1B = 256'h0;
|
||||||
parameter INIT_RAM_1C = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_1C = 256'h0;
|
||||||
parameter INIT_RAM_1D = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_1D = 256'h0;
|
||||||
parameter INIT_RAM_1E = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_1E = 256'h0;
|
||||||
parameter INIT_RAM_1F = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_1F = 256'h0;
|
||||||
parameter INIT_RAM_20 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_20 = 256'h0;
|
||||||
parameter INIT_RAM_21 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_21 = 256'h0;
|
||||||
parameter INIT_RAM_22 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_22 = 256'h0;
|
||||||
parameter INIT_RAM_23 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_23 = 256'h0;
|
||||||
parameter INIT_RAM_24 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_24 = 256'h0;
|
||||||
parameter INIT_RAM_25 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_25 = 256'h0;
|
||||||
parameter INIT_RAM_26 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_26 = 256'h0;
|
||||||
parameter INIT_RAM_27 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_27 = 256'h0;
|
||||||
parameter INIT_RAM_28 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_28 = 256'h0;
|
||||||
parameter INIT_RAM_29 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_29 = 256'h0;
|
||||||
parameter INIT_RAM_2A = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_2A = 256'h0;
|
||||||
parameter INIT_RAM_2B = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_2B = 256'h0;
|
||||||
parameter INIT_RAM_2C = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_2C = 256'h0;
|
||||||
parameter INIT_RAM_2D = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_2D = 256'h0;
|
||||||
parameter INIT_RAM_2E = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_2E = 256'h0;
|
||||||
parameter INIT_RAM_2F = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_2F = 256'h0;
|
||||||
parameter INIT_RAM_30 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_30 = 256'h0;
|
||||||
parameter INIT_RAM_31 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_31 = 256'h0;
|
||||||
parameter INIT_RAM_32 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_32 = 256'h0;
|
||||||
parameter INIT_RAM_33 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_33 = 256'h0;
|
||||||
parameter INIT_RAM_34 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_34 = 256'h0;
|
||||||
parameter INIT_RAM_35 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_35 = 256'h0;
|
||||||
parameter INIT_RAM_36 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_36 = 256'h0;
|
||||||
parameter INIT_RAM_37 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_37 = 256'h0;
|
||||||
parameter INIT_RAM_38 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_38 = 256'h0;
|
||||||
parameter INIT_RAM_39 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_39 = 256'h0;
|
||||||
parameter INIT_RAM_3A = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_3A = 256'h0;
|
||||||
parameter INIT_RAM_3B = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_3B = 256'h0;
|
||||||
parameter INIT_RAM_3C = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_3C = 256'h0;
|
||||||
parameter INIT_RAM_3D = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_3D = 256'h0;
|
||||||
parameter INIT_RAM_3E = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_3E = 256'h0;
|
||||||
parameter INIT_RAM_3F = 256'h0000000000000000000000000000000000000000000000000000000000000000;
|
parameter INIT_RAM_3F = 256'h0;
|
||||||
|
|
||||||
input CLKA, CEA, CLKB, CEB;
|
output [31:0] DO;
|
||||||
input OCE; // clock enable of memory output register
|
|
||||||
input RESETA, RESETB; // resets output registers, not memory contents
|
|
||||||
input WREA, WREB; // 1'b0: read enabled; 1'b1: write enabled
|
|
||||||
input [13:0] ADA, ADB;
|
|
||||||
input [31:0] DI;
|
input [31:0] DI;
|
||||||
input [2:0] BLKSEL;
|
input [2:0] BLKSEL;
|
||||||
output [31:0] DO;
|
input [13:0] ADA, ADB;
|
||||||
|
input WREA, WREB;
|
||||||
|
input CLKA, CLKB;
|
||||||
|
input CEA, CEB;
|
||||||
|
input OCE;
|
||||||
|
input RESETA, RESETB;
|
||||||
|
|
||||||
specify
|
specify
|
||||||
(posedge CLKB => (DO : DI)) = (419, 493);
|
(posedge CLKB => (DO : DI)) = (419, 493);
|
||||||
|
@ -1020,6 +1196,285 @@ endspecify
|
||||||
|
|
||||||
endmodule
|
endmodule
|
||||||
|
|
||||||
|
(* blackbox *)
|
||||||
|
module SDPX9 (DO, DI, BLKSEL, ADA, ADB, WREA, WREB, CLKA, CLKB, CEA, CEB, OCE, RESETA, RESETB);
|
||||||
|
|
||||||
|
parameter READ_MODE = 1'b0;
|
||||||
|
parameter BIT_WIDTH_0 = 36; // 9, 18, 36
|
||||||
|
parameter BIT_WIDTH_1 = 36; // 9, 18, 36
|
||||||
|
parameter BLK_SEL = 3'b000;
|
||||||
|
parameter RESET_MODE = "SYNC";
|
||||||
|
parameter INIT_RAM_00 = 288'h0;
|
||||||
|
parameter INIT_RAM_01 = 288'h0;
|
||||||
|
parameter INIT_RAM_02 = 288'h0;
|
||||||
|
parameter INIT_RAM_03 = 288'h0;
|
||||||
|
parameter INIT_RAM_04 = 288'h0;
|
||||||
|
parameter INIT_RAM_05 = 288'h0;
|
||||||
|
parameter INIT_RAM_06 = 288'h0;
|
||||||
|
parameter INIT_RAM_07 = 288'h0;
|
||||||
|
parameter INIT_RAM_08 = 288'h0;
|
||||||
|
parameter INIT_RAM_09 = 288'h0;
|
||||||
|
parameter INIT_RAM_0A = 288'h0;
|
||||||
|
parameter INIT_RAM_0B = 288'h0;
|
||||||
|
parameter INIT_RAM_0C = 288'h0;
|
||||||
|
parameter INIT_RAM_0D = 288'h0;
|
||||||
|
parameter INIT_RAM_0E = 288'h0;
|
||||||
|
parameter INIT_RAM_0F = 288'h0;
|
||||||
|
parameter INIT_RAM_10 = 288'h0;
|
||||||
|
parameter INIT_RAM_11 = 288'h0;
|
||||||
|
parameter INIT_RAM_12 = 288'h0;
|
||||||
|
parameter INIT_RAM_13 = 288'h0;
|
||||||
|
parameter INIT_RAM_14 = 288'h0;
|
||||||
|
parameter INIT_RAM_15 = 288'h0;
|
||||||
|
parameter INIT_RAM_16 = 288'h0;
|
||||||
|
parameter INIT_RAM_17 = 288'h0;
|
||||||
|
parameter INIT_RAM_18 = 288'h0;
|
||||||
|
parameter INIT_RAM_19 = 288'h0;
|
||||||
|
parameter INIT_RAM_1A = 288'h0;
|
||||||
|
parameter INIT_RAM_1B = 288'h0;
|
||||||
|
parameter INIT_RAM_1C = 288'h0;
|
||||||
|
parameter INIT_RAM_1D = 288'h0;
|
||||||
|
parameter INIT_RAM_1E = 288'h0;
|
||||||
|
parameter INIT_RAM_1F = 288'h0;
|
||||||
|
parameter INIT_RAM_20 = 288'h0;
|
||||||
|
parameter INIT_RAM_21 = 288'h0;
|
||||||
|
parameter INIT_RAM_22 = 288'h0;
|
||||||
|
parameter INIT_RAM_23 = 288'h0;
|
||||||
|
parameter INIT_RAM_24 = 288'h0;
|
||||||
|
parameter INIT_RAM_25 = 288'h0;
|
||||||
|
parameter INIT_RAM_26 = 288'h0;
|
||||||
|
parameter INIT_RAM_27 = 288'h0;
|
||||||
|
parameter INIT_RAM_28 = 288'h0;
|
||||||
|
parameter INIT_RAM_29 = 288'h0;
|
||||||
|
parameter INIT_RAM_2A = 288'h0;
|
||||||
|
parameter INIT_RAM_2B = 288'h0;
|
||||||
|
parameter INIT_RAM_2C = 288'h0;
|
||||||
|
parameter INIT_RAM_2D = 288'h0;
|
||||||
|
parameter INIT_RAM_2E = 288'h0;
|
||||||
|
parameter INIT_RAM_2F = 288'h0;
|
||||||
|
parameter INIT_RAM_30 = 288'h0;
|
||||||
|
parameter INIT_RAM_31 = 288'h0;
|
||||||
|
parameter INIT_RAM_32 = 288'h0;
|
||||||
|
parameter INIT_RAM_33 = 288'h0;
|
||||||
|
parameter INIT_RAM_34 = 288'h0;
|
||||||
|
parameter INIT_RAM_35 = 288'h0;
|
||||||
|
parameter INIT_RAM_36 = 288'h0;
|
||||||
|
parameter INIT_RAM_37 = 288'h0;
|
||||||
|
parameter INIT_RAM_38 = 288'h0;
|
||||||
|
parameter INIT_RAM_39 = 288'h0;
|
||||||
|
parameter INIT_RAM_3A = 288'h0;
|
||||||
|
parameter INIT_RAM_3B = 288'h0;
|
||||||
|
parameter INIT_RAM_3C = 288'h0;
|
||||||
|
parameter INIT_RAM_3D = 288'h0;
|
||||||
|
parameter INIT_RAM_3E = 288'h0;
|
||||||
|
parameter INIT_RAM_3F = 288'h0;
|
||||||
|
|
||||||
|
output [35:0] DO;
|
||||||
|
input [35:0] DI;
|
||||||
|
input [2:0] BLKSEL;
|
||||||
|
input [13:0] ADA, ADB;
|
||||||
|
input WREA, WREB;
|
||||||
|
input CLKA, CLKB;
|
||||||
|
input CEA, CEB;
|
||||||
|
input OCE;
|
||||||
|
input RESETA, RESETB;
|
||||||
|
|
||||||
|
specify
|
||||||
|
(posedge CLKB => (DO : DI)) = (419, 493);
|
||||||
|
$setup(RESETA, posedge CLKA, 62);
|
||||||
|
$setup(RESETB, posedge CLKB, 62);
|
||||||
|
$setup(OCE, posedge CLKB, 62);
|
||||||
|
$setup(CEA, posedge CLKA, 62);
|
||||||
|
$setup(CEB, posedge CLKB, 62);
|
||||||
|
$setup(OCE, posedge CLKB, 62);
|
||||||
|
$setup(WREA, posedge CLKA, 62);
|
||||||
|
$setup(WREB, posedge CLKB, 62);
|
||||||
|
$setup(DI, posedge CLKA, 62);
|
||||||
|
$setup(ADA, posedge CLKA, 62);
|
||||||
|
$setup(ADB, posedge CLKB, 62);
|
||||||
|
$setup(BLKSEL, posedge CLKA, 62);
|
||||||
|
endspecify
|
||||||
|
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
|
||||||
|
(* blackbox *)
|
||||||
|
module DP (DOA, DOB, DIA, DIB, BLKSEL, ADA, ADB, WREA, WREB, CLKA, CLKB, CEA, CEB, OCEA, OCEB, RESETA, RESETB);
|
||||||
|
|
||||||
|
parameter READ_MODE0 = 1'b0;
|
||||||
|
parameter READ_MODE1 = 1'b0;
|
||||||
|
parameter WRITE_MODE0 = 2'b00;
|
||||||
|
parameter WRITE_MODE1 = 2'b00;
|
||||||
|
parameter BIT_WIDTH_0 = 16; // 1, 2, 4, 8, 16
|
||||||
|
parameter BIT_WIDTH_1 = 16; // 1, 2, 4, 8, 16
|
||||||
|
parameter BLK_SEL = 3'b000;
|
||||||
|
parameter RESET_MODE = "SYNC";
|
||||||
|
parameter INIT_RAM_00 = 256'h0;
|
||||||
|
parameter INIT_RAM_01 = 256'h0;
|
||||||
|
parameter INIT_RAM_02 = 256'h0;
|
||||||
|
parameter INIT_RAM_03 = 256'h0;
|
||||||
|
parameter INIT_RAM_04 = 256'h0;
|
||||||
|
parameter INIT_RAM_05 = 256'h0;
|
||||||
|
parameter INIT_RAM_06 = 256'h0;
|
||||||
|
parameter INIT_RAM_07 = 256'h0;
|
||||||
|
parameter INIT_RAM_08 = 256'h0;
|
||||||
|
parameter INIT_RAM_09 = 256'h0;
|
||||||
|
parameter INIT_RAM_0A = 256'h0;
|
||||||
|
parameter INIT_RAM_0B = 256'h0;
|
||||||
|
parameter INIT_RAM_0C = 256'h0;
|
||||||
|
parameter INIT_RAM_0D = 256'h0;
|
||||||
|
parameter INIT_RAM_0E = 256'h0;
|
||||||
|
parameter INIT_RAM_0F = 256'h0;
|
||||||
|
parameter INIT_RAM_10 = 256'h0;
|
||||||
|
parameter INIT_RAM_11 = 256'h0;
|
||||||
|
parameter INIT_RAM_12 = 256'h0;
|
||||||
|
parameter INIT_RAM_13 = 256'h0;
|
||||||
|
parameter INIT_RAM_14 = 256'h0;
|
||||||
|
parameter INIT_RAM_15 = 256'h0;
|
||||||
|
parameter INIT_RAM_16 = 256'h0;
|
||||||
|
parameter INIT_RAM_17 = 256'h0;
|
||||||
|
parameter INIT_RAM_18 = 256'h0;
|
||||||
|
parameter INIT_RAM_19 = 256'h0;
|
||||||
|
parameter INIT_RAM_1A = 256'h0;
|
||||||
|
parameter INIT_RAM_1B = 256'h0;
|
||||||
|
parameter INIT_RAM_1C = 256'h0;
|
||||||
|
parameter INIT_RAM_1D = 256'h0;
|
||||||
|
parameter INIT_RAM_1E = 256'h0;
|
||||||
|
parameter INIT_RAM_1F = 256'h0;
|
||||||
|
parameter INIT_RAM_20 = 256'h0;
|
||||||
|
parameter INIT_RAM_21 = 256'h0;
|
||||||
|
parameter INIT_RAM_22 = 256'h0;
|
||||||
|
parameter INIT_RAM_23 = 256'h0;
|
||||||
|
parameter INIT_RAM_24 = 256'h0;
|
||||||
|
parameter INIT_RAM_25 = 256'h0;
|
||||||
|
parameter INIT_RAM_26 = 256'h0;
|
||||||
|
parameter INIT_RAM_27 = 256'h0;
|
||||||
|
parameter INIT_RAM_28 = 256'h0;
|
||||||
|
parameter INIT_RAM_29 = 256'h0;
|
||||||
|
parameter INIT_RAM_2A = 256'h0;
|
||||||
|
parameter INIT_RAM_2B = 256'h0;
|
||||||
|
parameter INIT_RAM_2C = 256'h0;
|
||||||
|
parameter INIT_RAM_2D = 256'h0;
|
||||||
|
parameter INIT_RAM_2E = 256'h0;
|
||||||
|
parameter INIT_RAM_2F = 256'h0;
|
||||||
|
parameter INIT_RAM_30 = 256'h0;
|
||||||
|
parameter INIT_RAM_31 = 256'h0;
|
||||||
|
parameter INIT_RAM_32 = 256'h0;
|
||||||
|
parameter INIT_RAM_33 = 256'h0;
|
||||||
|
parameter INIT_RAM_34 = 256'h0;
|
||||||
|
parameter INIT_RAM_35 = 256'h0;
|
||||||
|
parameter INIT_RAM_36 = 256'h0;
|
||||||
|
parameter INIT_RAM_37 = 256'h0;
|
||||||
|
parameter INIT_RAM_38 = 256'h0;
|
||||||
|
parameter INIT_RAM_39 = 256'h0;
|
||||||
|
parameter INIT_RAM_3A = 256'h0;
|
||||||
|
parameter INIT_RAM_3B = 256'h0;
|
||||||
|
parameter INIT_RAM_3C = 256'h0;
|
||||||
|
parameter INIT_RAM_3D = 256'h0;
|
||||||
|
parameter INIT_RAM_3E = 256'h0;
|
||||||
|
parameter INIT_RAM_3F = 256'h0;
|
||||||
|
|
||||||
|
output [15:0] DOA, DOB;
|
||||||
|
input [15:0] DIA, DIB;
|
||||||
|
input [2:0] BLKSEL;
|
||||||
|
input [13:0] ADA, ADB;
|
||||||
|
input WREA, WREB;
|
||||||
|
input CLKA, CLKB;
|
||||||
|
input CEA, CEB;
|
||||||
|
input OCEA, OCEB;
|
||||||
|
input RESETA, RESETB;
|
||||||
|
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
(* blackbox *)
|
||||||
|
module DPX9 (DOA, DOB, DIA, DIB, BLKSEL, ADA, ADB, WREA, WREB, CLKA, CLKB, CEA, CEB, OCEA, OCEB, RESETA, RESETB);
|
||||||
|
|
||||||
|
parameter READ_MODE0 = 1'b0;
|
||||||
|
parameter READ_MODE1 = 1'b0;
|
||||||
|
parameter WRITE_MODE0 = 2'b00;
|
||||||
|
parameter WRITE_MODE1 = 2'b00;
|
||||||
|
parameter BIT_WIDTH_0 = 18; // 9, 18
|
||||||
|
parameter BIT_WIDTH_1 = 18; // 9, 18
|
||||||
|
parameter BLK_SEL = 3'b000;
|
||||||
|
parameter RESET_MODE = "SYNC";
|
||||||
|
parameter INIT_RAM_00 = 288'h0;
|
||||||
|
parameter INIT_RAM_01 = 288'h0;
|
||||||
|
parameter INIT_RAM_02 = 288'h0;
|
||||||
|
parameter INIT_RAM_03 = 288'h0;
|
||||||
|
parameter INIT_RAM_04 = 288'h0;
|
||||||
|
parameter INIT_RAM_05 = 288'h0;
|
||||||
|
parameter INIT_RAM_06 = 288'h0;
|
||||||
|
parameter INIT_RAM_07 = 288'h0;
|
||||||
|
parameter INIT_RAM_08 = 288'h0;
|
||||||
|
parameter INIT_RAM_09 = 288'h0;
|
||||||
|
parameter INIT_RAM_0A = 288'h0;
|
||||||
|
parameter INIT_RAM_0B = 288'h0;
|
||||||
|
parameter INIT_RAM_0C = 288'h0;
|
||||||
|
parameter INIT_RAM_0D = 288'h0;
|
||||||
|
parameter INIT_RAM_0E = 288'h0;
|
||||||
|
parameter INIT_RAM_0F = 288'h0;
|
||||||
|
parameter INIT_RAM_10 = 288'h0;
|
||||||
|
parameter INIT_RAM_11 = 288'h0;
|
||||||
|
parameter INIT_RAM_12 = 288'h0;
|
||||||
|
parameter INIT_RAM_13 = 288'h0;
|
||||||
|
parameter INIT_RAM_14 = 288'h0;
|
||||||
|
parameter INIT_RAM_15 = 288'h0;
|
||||||
|
parameter INIT_RAM_16 = 288'h0;
|
||||||
|
parameter INIT_RAM_17 = 288'h0;
|
||||||
|
parameter INIT_RAM_18 = 288'h0;
|
||||||
|
parameter INIT_RAM_19 = 288'h0;
|
||||||
|
parameter INIT_RAM_1A = 288'h0;
|
||||||
|
parameter INIT_RAM_1B = 288'h0;
|
||||||
|
parameter INIT_RAM_1C = 288'h0;
|
||||||
|
parameter INIT_RAM_1D = 288'h0;
|
||||||
|
parameter INIT_RAM_1E = 288'h0;
|
||||||
|
parameter INIT_RAM_1F = 288'h0;
|
||||||
|
parameter INIT_RAM_20 = 288'h0;
|
||||||
|
parameter INIT_RAM_21 = 288'h0;
|
||||||
|
parameter INIT_RAM_22 = 288'h0;
|
||||||
|
parameter INIT_RAM_23 = 288'h0;
|
||||||
|
parameter INIT_RAM_24 = 288'h0;
|
||||||
|
parameter INIT_RAM_25 = 288'h0;
|
||||||
|
parameter INIT_RAM_26 = 288'h0;
|
||||||
|
parameter INIT_RAM_27 = 288'h0;
|
||||||
|
parameter INIT_RAM_28 = 288'h0;
|
||||||
|
parameter INIT_RAM_29 = 288'h0;
|
||||||
|
parameter INIT_RAM_2A = 288'h0;
|
||||||
|
parameter INIT_RAM_2B = 288'h0;
|
||||||
|
parameter INIT_RAM_2C = 288'h0;
|
||||||
|
parameter INIT_RAM_2D = 288'h0;
|
||||||
|
parameter INIT_RAM_2E = 288'h0;
|
||||||
|
parameter INIT_RAM_2F = 288'h0;
|
||||||
|
parameter INIT_RAM_30 = 288'h0;
|
||||||
|
parameter INIT_RAM_31 = 288'h0;
|
||||||
|
parameter INIT_RAM_32 = 288'h0;
|
||||||
|
parameter INIT_RAM_33 = 288'h0;
|
||||||
|
parameter INIT_RAM_34 = 288'h0;
|
||||||
|
parameter INIT_RAM_35 = 288'h0;
|
||||||
|
parameter INIT_RAM_36 = 288'h0;
|
||||||
|
parameter INIT_RAM_37 = 288'h0;
|
||||||
|
parameter INIT_RAM_38 = 288'h0;
|
||||||
|
parameter INIT_RAM_39 = 288'h0;
|
||||||
|
parameter INIT_RAM_3A = 288'h0;
|
||||||
|
parameter INIT_RAM_3B = 288'h0;
|
||||||
|
parameter INIT_RAM_3C = 288'h0;
|
||||||
|
parameter INIT_RAM_3D = 288'h0;
|
||||||
|
parameter INIT_RAM_3E = 288'h0;
|
||||||
|
parameter INIT_RAM_3F = 288'h0;
|
||||||
|
|
||||||
|
output [17:0] DOA, DOB;
|
||||||
|
input [17:0] DIA, DIB;
|
||||||
|
input [2:0] BLKSEL;
|
||||||
|
input [13:0] ADA, ADB;
|
||||||
|
input WREA, WREB;
|
||||||
|
input CLKA, CLKB;
|
||||||
|
input CEA, CEB;
|
||||||
|
input OCEA, OCEB;
|
||||||
|
input RESETA, RESETB;
|
||||||
|
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
|
||||||
(* blackbox *)
|
(* blackbox *)
|
||||||
module rPLL (CLKOUT, CLKOUTP, CLKOUTD, CLKOUTD3, LOCK, CLKIN, CLKFB, FBDSEL, IDSEL, ODSEL, DUTYDA, PSDA, FDLY, RESET, RESET_P);
|
module rPLL (CLKOUT, CLKOUTP, CLKOUTD, CLKOUTD3, LOCK, CLKIN, CLKFB, FBDSEL, IDSEL, ODSEL, DUTYDA, PSDA, FDLY, RESET, RESET_P);
|
||||||
input CLKIN;
|
input CLKIN;
|
||||||
|
|
Loading…
Reference in New Issue