Aggregated all BRAM parameters into a single MODE_BITS parameter.

Signed-off-by: Maciej Kurc <mkurc@antmicro.com>
diff --git a/ql-qlf-plugin/qlf_k6n10f/brams_map.v b/ql-qlf-plugin/qlf_k6n10f/brams_map.v
index 4df5ec2..798ebbe 100644
--- a/ql-qlf-plugin/qlf_k6n10f/brams_map.v
+++ b/ql-qlf-plugin/qlf_k6n10f/brams_map.v
@@ -93,91 +93,63 @@
 		1: begin
 			assign PORT_A_ADDR = A1EN ? A1ADDR_TOTAL : (B1EN ? B1ADDR_TOTAL : 15'd0);
 			assign PORT_B_ADDR = C1EN ? C1ADDR_TOTAL : (D1EN ? D1ADDR_TOTAL : 15'd0);
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_1;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_1, `MODE_1, `MODE_1, `MODE_1, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_1, `MODE_1, `MODE_1, `MODE_1, 1'd0
+            };
 		end
 
 		2: begin
 			assign PORT_A_ADDR = A1EN ? (A1ADDR_TOTAL << 1) : (B1EN ? (B1ADDR_TOTAL << 1) : 15'd0);
 			assign PORT_B_ADDR = C1EN ? (C1ADDR_TOTAL << 1) : (D1EN ? (D1ADDR_TOTAL << 1) : 15'd0);
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_2;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_2, `MODE_2, `MODE_2, `MODE_2, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_2, `MODE_2, `MODE_2, `MODE_2, 1'd0
+            };
 		end
 
 		4: begin
 			assign PORT_A_ADDR = A1EN ? (A1ADDR_TOTAL << 2) : (B1EN ? (B1ADDR_TOTAL << 2) : 15'd0);
 			assign PORT_B_ADDR = C1EN ? (C1ADDR_TOTAL << 2) : (D1EN ? (D1ADDR_TOTAL << 2) : 15'd0);
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_4;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_4, `MODE_4, `MODE_4, `MODE_4, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_4, `MODE_4, `MODE_4, `MODE_4, 1'd0
+            };
 		end
 
 		8, 9: begin
 			assign PORT_A_ADDR = A1EN ? (A1ADDR_TOTAL << 3) : (B1EN ? (B1ADDR_TOTAL << 3) : 15'd0);
 			assign PORT_B_ADDR = C1EN ? (C1ADDR_TOTAL << 3) : (D1EN ? (D1ADDR_TOTAL << 3) : 15'd0);
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_9;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_9, `MODE_9, `MODE_9, `MODE_9, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_9, `MODE_9, `MODE_9, `MODE_9, 1'd0
+            };
 		end
 
 		16, 18: begin
 			assign PORT_A_ADDR = A1EN ? (A1ADDR_TOTAL << 4) : (B1EN ? (B1ADDR_TOTAL << 4) : 15'd0);
 			assign PORT_B_ADDR = C1EN ? (C1ADDR_TOTAL << 4) : (D1EN ? (D1ADDR_TOTAL << 4) : 15'd0);
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_18;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_18, `MODE_18, `MODE_18, `MODE_18, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_18, `MODE_18, `MODE_18, `MODE_18, 1'd0
+            };
 		end
 
 		32, 36: begin
 			assign PORT_A_ADDR = A1EN ? (A1ADDR_TOTAL << 5) : (B1EN ? (B1ADDR_TOTAL << 5) : 15'd0);
 			assign PORT_B_ADDR = C1EN ? (C1ADDR_TOTAL << 5) : (D1EN ? (D1ADDR_TOTAL << 5) : 15'd0);
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_36;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_36, `MODE_36, `MODE_36, `MODE_36, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_36, `MODE_36, `MODE_36, `MODE_36, 1'd0
+            };
 		end
 		default: begin
 			assign PORT_A_ADDR = A1EN ? A1ADDR_TOTAL : (B1EN ? B1ADDR_TOTAL : 15'd0);
 			assign PORT_B_ADDR = C1EN ? C1ADDR_TOTAL : (D1EN ? D1ADDR_TOTAL : 15'd0);
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_36;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_36, `MODE_36, `MODE_36, `MODE_36, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_36, `MODE_36, `MODE_36, `MODE_36, 1'd0
+            };
 		end
 	endcase
 
@@ -195,23 +167,7 @@
 	assign PL_ADDR_i = 24'b0;
 	assign PL_DATA_i = 36'b0;
 
-	TDP_BRAM36 #(
-		.UPAE1_i(12'd10),
-		.UPAF1_i(12'd10),
-		.UPAE2_i(12'd10),
-		.UPAF2_i(12'd10),
-		.SYNC_FIFO1_i(1'b0),
-		.SYNC_FIFO2_i(1'b0),
-		.FMODE1_i(1'b0),
-		.FMODE2_i(1'b0),
-		.POWERDN1_i(1'b0),
-		.POWERDN2_i(1'b0),
-		.SLEEP1_i(1'b0),
-		.SLEEP2_i(1'b0),
-		.PROTECT1_i(1'b0),
-		.PROTECT2_i(1'b0),
-		.SPLIT_i(1'b0)
-	) _TECHMAP_REPLACE_ (
+	TDP_BRAM36 _TECHMAP_REPLACE_ (
 		.WDATA_A1_i(B1DATA[17:0]),
 		.WDATA_A2_i(B1DATA[35:18]),
 		.RDATA_A1_o(A1DATA_TOTAL[17:0]),
@@ -444,9 +400,6 @@
 	reg [23:0] PL_ADDR_o;
 	wire [35:0] PL_DATA_o;
 
-	wire [2:0] WMODE;
-	wire [2:0] RMODE;
-
 	assign A1ADDR_CMPL = {15-CFG_ABITS{1'b0}};
 	assign B1ADDR_CMPL = {15-CFG_ABITS{1'b0}};
 
@@ -460,89 +413,61 @@
 		1: begin
 			assign A1ADDR_15 = A1ADDR_TOTAL;
 			assign B1ADDR_15 = B1ADDR_TOTAL;
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_1;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_1;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_1, `MODE_1, `MODE_1, `MODE_1, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_1, `MODE_1, `MODE_1, `MODE_1, 1'd0
+            };
 		end
 
 		2: begin
 			assign A1ADDR_15 = A1ADDR_TOTAL << 1;
 			assign B1ADDR_15 = B1ADDR_TOTAL << 1;
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_2;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_2;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_2, `MODE_2, `MODE_2, `MODE_2, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_2, `MODE_2, `MODE_2, `MODE_2, 1'd0
+            };
 		end
 
 		4: begin
 			assign A1ADDR_15 = A1ADDR_TOTAL << 2;
 			assign B1ADDR_15 = B1ADDR_TOTAL << 2;
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_4;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_4;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_4, `MODE_4, `MODE_4, `MODE_4, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_4, `MODE_4, `MODE_4, `MODE_4, 1'd0
+            };
 		end
 		8, 9: begin
 			assign A1ADDR_15 = A1ADDR_TOTAL << 3;
 			assign B1ADDR_15 = B1ADDR_TOTAL << 3;
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_9;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_9;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_9, `MODE_9, `MODE_9, `MODE_9, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_9, `MODE_9, `MODE_9, `MODE_9, 1'd0
+            };
 		end
 
 		16, 18: begin
 			assign A1ADDR_15 = A1ADDR_TOTAL << 4;
 			assign B1ADDR_15 = B1ADDR_TOTAL << 4;
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_18;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_18;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_18, `MODE_18, `MODE_18, `MODE_18, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_18, `MODE_18, `MODE_18, `MODE_18, 1'd0
+            };
 		end
 		32, 36: begin
 			assign A1ADDR_15 = A1ADDR_TOTAL << 5;
 			assign B1ADDR_15 = B1ADDR_TOTAL << 5;
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_36;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_36, `MODE_36, `MODE_36, `MODE_36, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_36, `MODE_36, `MODE_36, `MODE_36, 1'd0
+            };
 		end
 		default: begin
 			assign A1ADDR_15 = A1ADDR_TOTAL;
 			assign B1ADDR_15 = B1ADDR_TOTAL;
-			defparam _TECHMAP_REPLACE_.WMODE_A1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_A2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_A1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_A2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_B1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.WMODE_B2_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_B1_i = `MODE_36;
-			defparam _TECHMAP_REPLACE_.RMODE_B2_i = `MODE_36;
+            defparam _TECHMAP_REPLACE_.MODE_BITS = { 1'b0,
+                11'd10, 11'd10, 4'd0, `MODE_36, `MODE_36, `MODE_36, `MODE_36, 1'd0,
+                12'd10, 12'd10, 4'd0, `MODE_36, `MODE_36, `MODE_36, `MODE_36, 1'd0
+            };
 		end
 	endcase
 
@@ -558,23 +483,7 @@
 	assign PL_ADDR_i = 24'b0;
 	assign PL_DATA_i = 36'b0;
 
-	TDP_BRAM36 #(
-		.UPAE1_i(12'd10),
-		.UPAF1_i(12'd10),
-		.UPAE2_i(12'd10),
-		.UPAF2_i(12'd10),
-		.SYNC_FIFO1_i(1'b0),
-		.SYNC_FIFO2_i(1'b0),
-		.FMODE1_i(1'b0),
-		.FMODE2_i(1'b0),
-		.POWERDN1_i(1'b0),
-		.POWERDN2_i(1'b0),
-		.SLEEP1_i(1'b0),
-		.SLEEP2_i(1'b0),
-		.PROTECT1_i(1'b0),
-		.PROTECT2_i(1'b0),
-		.SPLIT_i(1'b0)
-	) _TECHMAP_REPLACE_ (
+	TDP_BRAM36 _TECHMAP_REPLACE_ (
 		.WDATA_A1_i(18'h3FFFF),
 		.WDATA_A2_i(18'h3FFFF),
 		.RDATA_A1_o(A1DATA_TOTAL[17:0]),
diff --git a/ql-qlf-plugin/qlf_k6n10f/cells_sim.v b/ql-qlf-plugin/qlf_k6n10f/cells_sim.v
index c669166..6c85937 100644
--- a/ql-qlf-plugin/qlf_k6n10f/cells_sim.v
+++ b/ql-qlf-plugin/qlf_k6n10f/cells_sim.v
@@ -542,31 +542,36 @@
     PL_ADDR_o,
     PL_DATA_o
 );
-    parameter SYNC_FIFO1_i = 1'b0;
-    parameter RMODE_A1_i = 3'b0;
-    parameter RMODE_B1_i = 3'b0;
-    parameter WMODE_A1_i = 3'b0;
-    parameter WMODE_B1_i = 3'b0;
-    parameter FMODE1_i = 1'b0;
-    parameter POWERDN1_i = 1'b0;
-    parameter SLEEP1_i = 1'b0;
-    parameter PROTECT1_i = 1'b0;
-    parameter UPAE1_i = 12'b0;
-    parameter UPAF1_i = 12'b0;
+    parameter [80:0] MODE_BITS = 81'd0;
 
-    parameter SYNC_FIFO2_i = 1'b0;
-    parameter RMODE_A2_i = 3'b0;
-    parameter RMODE_B2_i = 3'b0;
-    parameter WMODE_A2_i = 3'b0;
-    parameter WMODE_B2_i = 3'b0;
-    parameter FMODE2_i = 1'b0;
-    parameter POWERDN2_i = 1'b0;
-    parameter SLEEP2_i = 1'b0;
-    parameter PROTECT2_i = 1'b0;
-    parameter UPAE2_i = 12'b0;
-    parameter UPAF2_i = 12'b0;
+    // First 18K RAMFIFO (41 bits)
+    localparam [ 0:0] SYNC_FIFO1_i  = MODE_BITS[0];
+    localparam [ 2:0] RMODE_A1_i    = MODE_BITS[3 : 1];
+    localparam [ 2:0] RMODE_B1_i    = MODE_BITS[6 : 4];
+    localparam [ 2:0] WMODE_A1_i    = MODE_BITS[9 : 7];
+    localparam [ 2:0] WMODE_B1_i    = MODE_BITS[12:10];
+    localparam [ 0:0] FMODE1_i      = MODE_BITS[13];
+    localparam [ 0:0] POWERDN1_i    = MODE_BITS[14];
+    localparam [ 0:0] SLEEP1_i      = MODE_BITS[15];
+    localparam [ 0:0] PROTECT1_i    = MODE_BITS[16];
+    localparam [11:0] UPAE1_i       = MODE_BITS[28:17];
+    localparam [11:0] UPAF1_i       = MODE_BITS[40:29];
 
-    parameter SPLIT_i = 1'b0;
+    // Second 18K RAMFIFO (39 bits)
+    localparam [ 0:0] SYNC_FIFO2_i  = MODE_BITS[41];
+    localparam [ 0:0] RMODE_A2_i    = MODE_BITS[44:42];
+    localparam [ 0:0] RMODE_B2_i    = MODE_BITS[47:45];
+    localparam [ 0:0] WMODE_A2_i    = MODE_BITS[50:48];
+    localparam [ 0:0] WMODE_B2_i    = MODE_BITS[53:51];
+    localparam [ 0:0] FMODE2_i      = MODE_BITS[54];
+    localparam [ 0:0] POWERDN2_i    = MODE_BITS[55];
+    localparam [ 0:0] SLEEP2_i      = MODE_BITS[56];
+    localparam [ 0:0] PROTECT2_i    = MODE_BITS[57];
+    localparam [10:0] UPAE2_i       = MODE_BITS[68:58];
+    localparam [10:0] UPAF2_i       = MODE_BITS[79:69];
+
+    // Split (1 bit)
+    localparam [ 0:0] SPLIT_i       = MODE_BITS[80];
 
     parameter INITP_00 = 256'h0000000000000000000000000000000000000000000000000000000000000000;
     parameter INITP_01 = 256'h0000000000000000000000000000000000000000000000000000000000000000;