diff --git a/verilog/sd2snes_cx4/cx4.v b/verilog/sd2snes_cx4/cx4.v
index 4eb055b..06d943d 100644
--- a/verilog/sd2snes_cx4/cx4.v
+++ b/verilog/sd2snes_cx4/cx4.v
@@ -42,28 +42,24 @@ parameter BUSY_DMA = 2'b01;
parameter BUSY_CPU = 2'b10;
wire datram_enable = CS & (ADDR[11:0] < 12'hc00);
-wire mmio_enable = CS & (ADDR[12:5] == 8'b11111010) & (ADDR[4:0] <= 8'b11001);
-wire status_enable = CS & (ADDR[12:5] == 8'b11111010) & (ADDR[4:0] > 8'b11001);
+wire mmio_enable = CS & (ADDR[12:5] == 8'b11111010) & (ADDR[4:0] < 5'b10011);
+wire status_enable = CS & (ADDR[12:5] == 8'b11111010) & (ADDR[4:0] >= 5'b10011);
wire vector_enable = CS & (ADDR[12:5] == 8'b11111011);
wire gpr_enable = CS & (&(ADDR[12:7]) && ADDR[5:4] != 2'b11);
wire pgmrom_enable = CS & (ADDR[12:5] == 8'b11110000);
-wire debug_enable = CS & (&(ADDR[12:7]) && &(ADDR[5:4]));
wire [7:0] DATRAM_DO;
-reg [7:0] MMIO_DOr;
+reg [7:0] MMIO_DOr;
wire [7:0] MMIO_DO;
wire [7:0] STATUS_DO;
wire [7:0] VECTOR_DO;
wire [7:0] GPR_DO;
-wire [7:0] DEBUG_DO;
-reg [7:0] DEBUG_DOr;
assign DO = datram_enable ? DATRAM_DO
: mmio_enable ? MMIO_DO
: status_enable ? STATUS_DO
: vector_enable ? VECTOR_DO
: gpr_enable ? GPR_DO
- : debug_enable ? DEBUG_DO
: 8'h00;
/* 0x1f40 - 0x1f52: MMIO
@@ -71,33 +67,37 @@ assign DO = datram_enable ? DATRAM_DO
reg [23:0] cx4_mmio_dmasrc;
reg [15:0] cx4_mmio_dmalen;
reg [23:0] cx4_mmio_dmatgt;
-reg cx4_mmio_cachepage;
+reg cx4_mmio_cachepage;
reg [23:0] cx4_mmio_pgmoff;
-reg [1:0] cx4_mmio_r1f4c;
+reg [1:0] cx4_mmio_savepage;
reg [14:0] cx4_mmio_pgmpage;
-reg [7:0] cx4_mmio_pc;
-reg [7:0] cx4_mmio_r1f50;
-reg cx4_mmio_r1f51;
-reg cx4_mmio_r1f52;
+reg [7:0] cx4_mmio_pc;
+reg [7:0] cx4_mmio_r1f50;
+reg cx4_mmio_r1f51;
+reg cx4_mmio_r1f52;
/* 0x1f53 - 0x1f5f: status register */
assign cx4_active = |cx4_busy;
/* 0x1f60 - 0x1f7f: reset vectors */
-reg [7:0] vector [31:0];
+reg [7:0] vector [31:0];
/* 0x1f80 - 0x1faf (0x1fc0 - 0x1fef): general purpose register file
SNES: 8 bits / CX4: 24 bits */
-reg [7:0] gpr [47:0];
+reg [7:0] gpr [47:0];
wire [47:0] cpu_mul_result;
+reg [14:0] cx4_mmio_pagemem[1:0];
+
reg [23:0] const [15:0];
-reg [15:0] cachetag [1:0]; // 15: valid; 14-0: bank number
+reg [14:0] cachetag [1:0]; // 14-0: bank number
+reg [1:0] cachevalid;
+
reg [14:0] cache_pgmpage;
reg [14:0] cpu_cache_pgmpage;
-reg cache_cachepage;
-reg cpu_cache_cachepage;
-reg cpu_cache_done;
-reg [7:0] cpu_pc_stack [7:0];
-reg [7:0] cpu_page_stack;
+reg cache_cachepage;
+reg cpu_cache_cachepage;
+reg cpu_cache_done;
+reg [7:0] cpu_pc_stack [7:0];
+reg [7:0] cpu_page_stack;
initial begin
cache_pgmpage = 15'b0;
@@ -105,14 +105,16 @@ initial begin
cache_cachepage = 1'b0;
cpu_cache_cachepage = 1'b0;
cpu_cache_done = 1'b0;
- cachetag[0] = 16'h0000;
- cachetag[1] = 16'h0000;
+ cachetag[0] = 14'h0000;
+ cachetag[1] = 14'h0000;
+ cachevalid = 2'b00;
cx4_busy = 3'b000;
cx4_mmio_pgmoff = 24'h000000;
cx4_mmio_pgmpage = 15'h0000;
cx4_mmio_dmasrc = 24'h000000;
cx4_mmio_dmalen = 16'h0000;
cx4_mmio_dmatgt = 24'h000000;
+ cx4_mmio_savepage = 2'b00;
const[0] = 24'h000000;
const[1] = 24'hffffff;
const[2] = 24'h00ff00;
@@ -144,7 +146,6 @@ assign MMIO_DO = MMIO_DOr;
assign VECTOR_DO = vector [ADDR[4:0]];
assign GPR_DO = gpr [ADDR[5:0]];
assign STATUS_DO = {1'b0, cx4_active, 4'b0000, ~cx4_active, 1'b0};
-assign DEBUG_DO = DEBUG_DOr;
reg [7:0] DIr;
always @(posedge CLK) DIr <= DI;
@@ -198,6 +199,11 @@ assign BUS_RRQ = CACHE_BUS_RRQr | DMA_BUS_RRQr | cpu_bus_rq;
reg cpu_page;
reg [14:0] cpu_p;
reg [7:0] cpu_pc;
+reg [23:0] cpu_a;
+reg fl_n;
+reg fl_z;
+reg fl_c;
+
reg cpu_go_en_r;
initial cpu_go_en_r = 1'b0;
@@ -222,69 +228,58 @@ always @(posedge CLK) begin
5'h09: MMIO_DOr <= cx4_mmio_pgmoff[7:0]; // 1f49
5'h0a: MMIO_DOr <= cx4_mmio_pgmoff[15:8]; // 1f4a
5'h0b: MMIO_DOr <= cx4_mmio_pgmoff[23:16]; // 1f4b
- 5'h0c: MMIO_DOr <= {6'b0, cx4_mmio_r1f4c}; // 1f4c
+ 5'h0c: MMIO_DOr <= {6'b0, cx4_mmio_savepage}; // 1f4c
5'h0d: MMIO_DOr <= cx4_mmio_pgmpage[7:0]; // 1f4d
5'h0e: MMIO_DOr <= {1'b0, cx4_mmio_pgmpage[14:8]}; // 1f4e
5'h0f: MMIO_DOr <= cx4_mmio_pc; // 1f4f
5'h10: MMIO_DOr <= cx4_mmio_r1f50; // 1f50
5'h11: MMIO_DOr <= {7'b0, cx4_mmio_r1f51}; // 1f51
- 5'h12: MMIO_DOr <= {7'b0, cx4_mmio_r1f52}; // 1f52
+ 5'h12: MMIO_DOr <= {7'b0, cx4_mmio_r1f52}; // 1f52
default: MMIO_DOr <= 8'hff;
endcase
end
-always @(posedge CLK) begin
- case(ADDR[3:0])
- 4'h0: DEBUG_DOr <= cachetag[0][15:8]; // 1f40
- 4'h1: DEBUG_DOr <= cachetag[0][7:0]; // 1f41
- 4'h2: DEBUG_DOr <= cachetag[1][15:8]; // 1f42
- 4'h3: DEBUG_DOr <= cachetag[1][7:0]; // 1f43
- 4'h4: DEBUG_DOr <= cpu_page;
- 4'h5: DEBUG_DOr <= cpu_p;
- 4'h6: DEBUG_DOr <= cpu_pc;
- 4'h7: DEBUG_DOr <= cx4_busy;
- 4'h8: DEBUG_DOr <= cpu_page_stack[0];
- 4'h9: DEBUG_DOr <= cpu_pc_stack[0];
- 4'ha: DEBUG_DOr <= cpu_page_stack[1];
- 4'hb: DEBUG_DOr <= cpu_pc_stack[1];
- 4'hc: DEBUG_DOr <= cpu_page_stack[2];
- 4'hd: DEBUG_DOr <= cpu_pc_stack[2];
- 4'he: DEBUG_DOr <= cpu_page_stack[3];
- 4'hf: DEBUG_DOr <= cpu_pc_stack[3];
- endcase
-end
-
always @(posedge CLK) begin
if(MMIO_WR_EN) begin
case(ADDR[4:0])
- 5'h00: cx4_mmio_dmasrc[7:0] <= DI; // 1f40
- 5'h01: cx4_mmio_dmasrc[15:8] <= DI; // 1f41
- 5'h02: cx4_mmio_dmasrc[23:16] <= DI; // 1f42
- 5'h03: cx4_mmio_dmalen[7:0] <= DI; // 1f43
- 5'h04: cx4_mmio_dmalen[15:8] <= DI; // 1f44
- 5'h05: cx4_mmio_dmatgt[7:0] <= DI; // 1f45
- 5'h06: cx4_mmio_dmatgt[15:8] <= DI; // 1f46
+ 5'h00: cx4_mmio_dmasrc[7:0] <= DIr; // 1f40
+ 5'h01: cx4_mmio_dmasrc[15:8] <= DIr; // 1f41
+ 5'h02: cx4_mmio_dmasrc[23:16] <= DIr; // 1f42
+ 5'h03: cx4_mmio_dmalen[7:0] <= DIr; // 1f43
+ 5'h04: cx4_mmio_dmalen[15:8] <= DIr; // 1f44
+ 5'h05: cx4_mmio_dmatgt[7:0] <= DIr; // 1f45
+ 5'h06: cx4_mmio_dmatgt[15:8] <= DIr; // 1f46
5'h07: begin
- cx4_mmio_dmatgt[23:16] <= DI; // 1f47
+ cx4_mmio_dmatgt[23:16] <= DIr; // 1f47
DMA_TRIG_ENr <= 1'b1;
end
5'h08: begin
- cx4_mmio_cachepage <= DI[0]; // 1f48
+ cx4_mmio_cachepage <= DIr[0]; // 1f48
CACHE_TRIG_ENr <= 1'b1;
end
- 5'h09: cx4_mmio_pgmoff[7:0] <= DI; // 1f49
- 5'h0a: cx4_mmio_pgmoff[15:8] <= DI; // 1f4a
- 5'h0b: cx4_mmio_pgmoff[23:16] <= DI; // 1f4b
- 5'h0c: cx4_mmio_r1f4c <= DI[1:0]; // 1f4c
- 5'h0d: cx4_mmio_pgmpage[7:0] <= DI; // 1f4d
- 5'h0e: cx4_mmio_pgmpage[14:8] <= DI[6:0]; // 1f4e
+ 5'h09: cx4_mmio_pgmoff[7:0] <= DIr; // 1f49
+ 5'h0a: cx4_mmio_pgmoff[15:8] <= DIr; // 1f4a
+ 5'h0b: cx4_mmio_pgmoff[23:16] <= DIr; // 1f4b
+ 5'h0c: begin
+ cx4_mmio_savepage <= DIr[1:0];
+ if(DIr[0]) cx4_mmio_pagemem[0] <= cx4_mmio_pgmpage;
+ if(DIr[1]) cx4_mmio_pagemem[1] <= cx4_mmio_pgmpage;
+ end
+ 5'h0d: cx4_mmio_pgmpage[7:0] <= DIr; // 1f4d
+ 5'h0e: cx4_mmio_pgmpage[14:8] <= DIr[6:0]; // 1f4e
5'h0f: begin
- cx4_mmio_pc <= DI; // 1f4f
+ cx4_mmio_pc <= DIr; // 1f4f
+ if(cx4_mmio_savepage[0]
+ && cx4_mmio_pagemem[0] == cx4_mmio_pgmpage)
+ cx4_mmio_cachepage <= 1'b0;
+ else if(cx4_mmio_savepage[1]
+ && cx4_mmio_pagemem[1] == cx4_mmio_pgmpage)
+ cx4_mmio_cachepage <= 1'b1;
cpu_go_en_r <= 1'b1;
end
- 5'h10: cx4_mmio_r1f50 <= DI & 8'h77; // 1f50
- 5'h11: cx4_mmio_r1f51 <= DI[0]; // 1f51
- 5'h12: cx4_mmio_r1f52 <= DI[0]; // 1f52
+ 5'h10: cx4_mmio_r1f50 <= DIr & 8'h77; // 1f50
+ 5'h11: cx4_mmio_r1f51 <= DIr[0]; // 1f51
+ 5'h12: cx4_mmio_r1f52 <= DIr[0]; // 1f52
endcase
end else begin
CACHE_TRIG_ENr <= 1'b0;
@@ -294,7 +289,7 @@ always @(posedge CLK) begin
end
always @(posedge CLK) begin
- if(VECTOR_WR_EN) vector[ADDR[4:0]] <= DI;
+ if(VECTOR_WR_EN) vector[ADDR[4:0]] <= DIr;
end
reg [4:0] CACHE_ST;
@@ -333,14 +328,14 @@ always @(posedge CLK) begin
case(CACHE_ST)
ST_CACHE_IDLE: begin
if(CACHE_TRIG_EN
- & (~cachetag[cx4_mmio_cachepage][15]
- | |(cachetag[cx4_mmio_cachepage][14:0] ^ cx4_mmio_pgmpage))) begin
+ & (~cachevalid[cx4_mmio_cachepage]
+ | |(cachetag[cx4_mmio_cachepage] ^ cx4_mmio_pgmpage))) begin
CACHE_ST <= ST_CACHE_START;
cache_pgmpage <= cx4_mmio_pgmpage;
cache_cachepage <= cx4_mmio_cachepage;
end else if(cpu_cache_en
- & (~cachetag[~cpu_page][15]
- | |(cachetag[~cpu_page][14:0] ^ cpu_p))) begin
+ & (~cachevalid[~cpu_page]
+ | |(cachetag[~cpu_page] ^ cpu_p))) begin
CACHE_ST <= ST_CACHE_START;
cache_pgmpage <= cpu_p;
cache_cachepage <= ~cpu_page;
@@ -370,7 +365,8 @@ always @(posedge CLK) begin
cx4_pgmrom_addr <= cx4_pgmrom_addr + 1;
if(cache_count == 9'h1ff) begin
cx4_busy[BUSY_CACHE] <= 1'b0;
- cachetag[cache_cachepage] <= {1'b1,cache_pgmpage};
+ cachetag[cache_cachepage] <= cache_pgmpage;
+ cachevalid[cache_cachepage] <= 1'b1;
CACHE_ST <= ST_CACHE_IDLE;
end else begin
CACHE_BUS_RRQr <= 1'b1;
@@ -439,7 +435,6 @@ reg [2:0] cpu_sp;
initial cpu_sp = 3'b000;
wire [15:0] cpu_op_w;
reg [15:0] cpu_op;
-reg [23:0] cpu_a;
reg [23:0] cpu_busdata;
reg [23:0] cpu_romdata;
reg [23:0] cpu_ramdata;
@@ -455,9 +450,6 @@ reg [23:0] cpu_dummy;
reg [23:0] cpu_tmp;
reg [23:0] cpu_sa; // tmp register for shifted accumulator
-reg fl_n;
-reg fl_z;
-reg fl_c;
wire [9:0] cx4_datrom_addr = cpu_a[9:0];
wire [23:0] cx4_datrom_do;
@@ -499,19 +491,24 @@ reg op_call;
reg op_jump;
reg condtrue;
-/* XXX DEBUG */
-reg [23:0] dbg_cnt;
-initial dbg_cnt = 24'b0;
-always @(posedge CLK) dbg_cnt <= dbg_cnt + 1;
-wire step_enable = 1'b1;
-
always @(posedge CLK) begin
if(cpu_go_en_r) cx4_busy[BUSY_CPU] <= 1'b1;
- else if((op == OP_HLT) && step_enable) cx4_busy[BUSY_CPU] <= 1'b0;
+ else if(op == OP_HLT) cx4_busy[BUSY_CPU] <= 1'b0;
end
always @(posedge CLK) begin
-if(step_enable | cpu_go_en_r) begin
+ case(op_sa)
+ 2'b00: cpu_sa <= cpu_a;
+ 2'b01: cpu_sa <= cpu_a << 1;
+ 2'b10: cpu_sa <= cpu_a << 8;
+ 2'b11: cpu_sa <= cpu_a << 16;
+ endcase
+end
+
+reg jp_docache;
+initial jp_docache = 1'b0;
+
+always @(posedge CLK) begin
case(CPU_STATE)
ST_CPU_IDLE: begin
if(cpu_go_en_r) begin
@@ -537,6 +534,10 @@ if(step_enable | cpu_go_en_r) begin
2'b00: condtrue <= fl_c;
2'b01: condtrue <= fl_n;
endcase
+ if(op_p && !jp_docache) begin
+ jp_docache <= 1'b1;
+ cpu_cache_en <= 1'b1;
+ end
end
OP_SKIP: begin
case(cpu_op[9:8])
@@ -562,14 +563,6 @@ if(step_enable | cpu_go_en_r) begin
gpr[op_param[3:0]*3]};
default: cpu_idb <= 24'b0;
endcase
- if(op==OP_ALU || op==OP_CMP) begin
- case(op_sa)
- 2'b00: cpu_sa <= cpu_a;
- 2'b01: cpu_sa <= cpu_a << 1;
- 2'b10: cpu_sa <= cpu_a << 8;
- 2'b11: cpu_sa <= cpu_a << 16;
- endcase
- end
end
OP_ST: begin
cpu_idb <= cpu_a;
@@ -615,9 +608,12 @@ if(step_enable | cpu_go_en_r) begin
end
ST_CPU_1: begin
CPU_STATE <= ST_CPU_2;
+ condtrue <= 1'b0;
case(op)
OP_JP: begin
- if(!cx4_busy[BUSY_CACHE]) begin
+ cpu_cache_en <= 1'b0;
+ if(!cpu_cache_en && !cx4_busy[BUSY_CACHE]) begin
+ jp_docache <= 1'b0;
if(condtrue) begin
if(op_call) begin
cpu_page_stack[cpu_sp] <= cpu_page;
@@ -659,10 +655,8 @@ if(step_enable | cpu_go_en_r) begin
end
OP_ST, OP_SWP: begin
casex(op_param)
-// 8'h00: cpu_a <= cpu_idb;
8'h01: cpu_acch <= cpu_idb;
8'h02: cpu_accl <= cpu_idb;
-// 8'h03: cpu_busdata <= cpu_idb;
8'h08: cpu_romdata <= cpu_idb;
8'h0c: cpu_ramdata <= cpu_idb;
8'h13: cpu_busaddr <= cpu_idb;
@@ -707,8 +701,8 @@ if(step_enable | cpu_go_en_r) begin
5'b10110: cpu_alu_res <= cpu_sa & cpu_idb;
5'b10111: cpu_alu_res <= cpu_sa | cpu_idb;
5'b11000: cpu_alu_res <= cpu_a >> cpu_idb;
- 5'b11001: cpu_alu_res <= $signed(cpu_a) >>> cpu_idb;
- 5'b11010: {cpu_alu_res[23:0]} <= {cpu_a, cpu_a} >> cpu_idb;
+ 5'b11001: cpu_alu_res <= ($signed(cpu_a)) >>> cpu_idb;
+ 5'b11010: {cpu_dummy, cpu_alu_res[23:0]} <= {cpu_a, cpu_a} >> cpu_idb;
5'b11011: cpu_alu_res <= cpu_a << cpu_idb;
endcase
end
@@ -717,12 +711,6 @@ if(step_enable | cpu_go_en_r) begin
ST_CPU_3: begin
CPU_STATE <= ST_CPU_0;
case(op)
- OP_LD: begin
- casex(cpu_op[11:8])
- 4'b0x11: cpu_cache_en <= 1'b1;
- 4'b1100: cpu_cache_en <= 1'b1;
- endcase
- end
OP_BUS: cpu_busaddr <= cpu_busaddr + 1;
OP_WRRAM: cx4_cpu_datram_we <= 1'b0;
OP_CMP: begin
@@ -803,12 +791,14 @@ if(step_enable | cpu_go_en_r) begin
end
endcase
end
-end
reg[2:0] BUSRD_STATE;
-parameter ST_BUSRD_IDLE = 2'b01;
-parameter ST_BUSRD_WAIT = 2'b10;
+parameter ST_BUSRD_IDLE = 3'b001;
+parameter ST_BUSRD_WAIT = 3'b010;
+parameter ST_BUSRD_END = 3'b100;
initial BUSRD_STATE = ST_BUSRD_IDLE;
+reg cpu_bus_rq2;
+always @(posedge CLK) cpu_bus_rq2 <= cpu_bus_rq;
always @(posedge CLK) begin
if(CPU_STATE == ST_CPU_2
@@ -818,13 +808,15 @@ always @(posedge CLK) begin
else begin
case(BUSRD_STATE)
ST_BUSRD_IDLE: begin
- if(cpu_bus_rq) begin
+ if(cpu_bus_rq2) begin
BUSRD_STATE <= ST_BUSRD_WAIT;
end
end
ST_BUSRD_WAIT: begin
- if(BUS_RDY) BUSRD_STATE <= ST_BUSRD_IDLE;
+ if(BUS_RDY) BUSRD_STATE <= ST_BUSRD_END;
else BUSRD_STATE <= ST_BUSRD_WAIT;
+ end
+ ST_BUSRD_END: begin
if(~cpu_busaddr[22]) cpu_busdata <= BUS_DI;
else cpu_busdata <= 8'h00;
end
@@ -841,7 +833,7 @@ always @(posedge CLK) begin
gpr[op_param[3:0]*3+1] <= cpu_idb[15:8];
gpr[op_param[3:0]*3] <= cpu_idb[7:0];
end
- else if(GPR_WR_EN) gpr[ADDR[5:0]] <= DI;
+ else if(GPR_WR_EN) gpr[ADDR[5:0]] <= DIr;
end
/***************************
@@ -861,7 +853,7 @@ cx4_datram cx4_datram (
.clka(CLK), // input clka
.wea(DATRAM_WR_EN), // input [0 : 0] wea
.addra(ADDR[11:0]), // input [11 : 0] addra
- .dina(DI), // input [7 : 0] dina
+ .dina(DIr), // input [7 : 0] dina
.douta(DATRAM_DO), // output [7 : 0] douta
.clkb(CLK), // input clkb
.web(cx4_datram_we), // input [0 : 0] web
diff --git a/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.v b/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.v
index ebb89bc..da8b924 100644
--- a/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.v
+++ b/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.v
@@ -7,7 +7,7 @@
// \ \ \/ Version: O.61xd
// \ \ Application: netgen
// / / Filename: cx4_mul.v
-// /___/ /\ Timestamp: Tue Oct 25 00:04:23 2011
+// /___/ /\ Timestamp: Fri Oct 28 10:30:51 2011
// \ \ / \
// \___\/\___\
//
@@ -399,54 +399,6 @@ module cx4_mul (
wire sig00000162;
wire sig00000163;
wire sig00000164;
- wire sig00000165;
- wire sig00000166;
- wire sig00000167;
- wire sig00000168;
- wire sig00000169;
- wire sig0000016a;
- wire sig0000016b;
- wire sig0000016c;
- wire sig0000016d;
- wire sig0000016e;
- wire sig0000016f;
- wire sig00000170;
- wire sig00000171;
- wire sig00000172;
- wire sig00000173;
- wire sig00000174;
- wire sig00000175;
- wire sig00000176;
- wire sig00000177;
- wire sig00000178;
- wire sig00000179;
- wire sig0000017a;
- wire sig0000017b;
- wire sig0000017c;
- wire sig0000017d;
- wire sig0000017e;
- wire sig0000017f;
- wire sig00000180;
- wire sig00000181;
- wire sig00000182;
- wire sig00000183;
- wire sig00000184;
- wire sig00000185;
- wire sig00000186;
- wire sig00000187;
- wire sig00000188;
- wire sig00000189;
- wire sig0000018a;
- wire sig0000018b;
- wire sig0000018c;
- wire sig0000018d;
- wire sig0000018e;
- wire sig0000018f;
- wire sig00000190;
- wire sig00000191;
- wire sig00000192;
- wire sig00000193;
- wire sig00000194;
wire \NLW_blk00000003_P<35>_UNCONNECTED ;
wire \NLW_blk00000003_P<34>_UNCONNECTED ;
wire \NLW_blk00000003_P<33>_UNCONNECTED ;
@@ -495,15 +447,15 @@ module cx4_mul (
wire \NLW_blk00000005_P<24>_UNCONNECTED ;
wire \NLW_blk00000006_P<35>_UNCONNECTED ;
GND blk00000001 (
- .G(sig00000012)
+ .G(sig00000001)
);
VCC blk00000002 (
- .P(sig00000013)
+ .P(sig00000002)
);
MULT18X18S blk00000003 (
.C(clk),
- .CE(sig00000013),
- .R(sig00000012),
+ .CE(sig00000002),
+ .R(sig00000001),
.A({a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[22], a[21], a[20], a[19], a[18], a[17]}),
.B({b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[22], b[21], b[20], b[19], b[18], b[17]}),
.P({\NLW_blk00000003_P<35>_UNCONNECTED , \NLW_blk00000003_P<34>_UNCONNECTED , \NLW_blk00000003_P<33>_UNCONNECTED ,
@@ -511,1638 +463,1638 @@ module cx4_mul (
\NLW_blk00000003_P<28>_UNCONNECTED , \NLW_blk00000003_P<27>_UNCONNECTED , \NLW_blk00000003_P<26>_UNCONNECTED , \NLW_blk00000003_P<25>_UNCONNECTED ,
\NLW_blk00000003_P<24>_UNCONNECTED , \NLW_blk00000003_P<23>_UNCONNECTED , \NLW_blk00000003_P<22>_UNCONNECTED , \NLW_blk00000003_P<21>_UNCONNECTED ,
\NLW_blk00000003_P<20>_UNCONNECTED , \NLW_blk00000003_P<19>_UNCONNECTED , \NLW_blk00000003_P<18>_UNCONNECTED , \NLW_blk00000003_P<17>_UNCONNECTED ,
-\NLW_blk00000003_P<16>_UNCONNECTED , \NLW_blk00000003_P<15>_UNCONNECTED , \NLW_blk00000003_P<14>_UNCONNECTED , sig000000f6, sig000000f5, sig000000f4,
-sig000000f3, sig000000ff, sig000000fe, sig000000fd, sig000000fc, sig000000fb, sig000000fa, sig000000f9, sig000000f8, sig000000f7, sig000000f2})
+\NLW_blk00000003_P<16>_UNCONNECTED , \NLW_blk00000003_P<15>_UNCONNECTED , \NLW_blk00000003_P<14>_UNCONNECTED , sig000000e5, sig000000e4, sig000000e3,
+sig000000e2, sig000000ee, sig000000ed, sig000000ec, sig000000eb, sig000000ea, sig000000e9, sig000000e8, sig000000e7, sig000000e6, sig000000e1})
);
MULT18X18S blk00000004 (
.C(clk),
- .CE(sig00000013),
- .R(sig00000012),
+ .CE(sig00000002),
+ .R(sig00000001),
.A({a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[23], a[22], a[21], a[20], a[19], a[18], a[17]}),
- .B({sig00000012, b[16], b[15], b[14], b[13], b[12], b[11], b[10], b[9], b[8], b[7], b[6], b[5], b[4], b[3], b[2], b[1], b[0]}),
+ .B({sig00000001, b[16], b[15], b[14], b[13], b[12], b[11], b[10], b[9], b[8], b[7], b[6], b[5], b[4], b[3], b[2], b[1], b[0]}),
.P({\NLW_blk00000004_P<35>_UNCONNECTED , \NLW_blk00000004_P<34>_UNCONNECTED , \NLW_blk00000004_P<33>_UNCONNECTED ,
\NLW_blk00000004_P<32>_UNCONNECTED , \NLW_blk00000004_P<31>_UNCONNECTED , \NLW_blk00000004_P<30>_UNCONNECTED , \NLW_blk00000004_P<29>_UNCONNECTED ,
\NLW_blk00000004_P<28>_UNCONNECTED , \NLW_blk00000004_P<27>_UNCONNECTED , \NLW_blk00000004_P<26>_UNCONNECTED , \NLW_blk00000004_P<25>_UNCONNECTED ,
-\NLW_blk00000004_P<24>_UNCONNECTED , sig000000e9, sig000000e8, sig000000e7, sig000000e6, sig000000e4, sig000000e3, sig000000e2, sig000000e1,
-sig000000e0, sig000000df, sig000000de, sig000000dd, sig000000dc, sig000000db, sig000000f1, sig000000f0, sig000000ef, sig000000ee, sig000000ed,
-sig000000ec, sig000000eb, sig000000ea, sig000000e5, sig000000da})
+\NLW_blk00000004_P<24>_UNCONNECTED , sig000000d8, sig000000d7, sig000000d6, sig000000d5, sig000000d3, sig000000d2, sig000000d1, sig000000d0,
+sig000000cf, sig000000ce, sig000000cd, sig000000cc, sig000000cb, sig000000ca, sig000000e0, sig000000df, sig000000de, sig000000dd, sig000000dc,
+sig000000db, sig000000da, sig000000d9, sig000000d4, sig000000c9})
);
MULT18X18S blk00000005 (
.C(clk),
- .CE(sig00000013),
- .R(sig00000012),
- .A({sig00000012, a[16], a[15], a[14], a[13], a[12], a[11], a[10], a[9], a[8], a[7], a[6], a[5], a[4], a[3], a[2], a[1], a[0]}),
+ .CE(sig00000002),
+ .R(sig00000001),
+ .A({sig00000001, a[16], a[15], a[14], a[13], a[12], a[11], a[10], a[9], a[8], a[7], a[6], a[5], a[4], a[3], a[2], a[1], a[0]}),
.B({b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[23], b[22], b[21], b[20], b[19], b[18], b[17]}),
.P({\NLW_blk00000005_P<35>_UNCONNECTED , \NLW_blk00000005_P<34>_UNCONNECTED , \NLW_blk00000005_P<33>_UNCONNECTED ,
\NLW_blk00000005_P<32>_UNCONNECTED , \NLW_blk00000005_P<31>_UNCONNECTED , \NLW_blk00000005_P<30>_UNCONNECTED , \NLW_blk00000005_P<29>_UNCONNECTED ,
\NLW_blk00000005_P<28>_UNCONNECTED , \NLW_blk00000005_P<27>_UNCONNECTED , \NLW_blk00000005_P<26>_UNCONNECTED , \NLW_blk00000005_P<25>_UNCONNECTED ,
-\NLW_blk00000005_P<24>_UNCONNECTED , sig000000d1, sig000000d0, sig000000cf, sig000000ce, sig000000cc, sig000000cb, sig000000ca, sig000000c9,
-sig000000c8, sig000000c7, sig000000c6, sig000000c5, sig000000c4, sig000000c3, sig000000d9, sig000000d8, sig000000d7, sig000000d6, sig000000d5,
-sig000000d4, sig000000d3, sig000000d2, sig000000cd, sig000000c2})
+\NLW_blk00000005_P<24>_UNCONNECTED , sig000000c0, sig000000bf, sig000000be, sig000000bd, sig000000bb, sig000000ba, sig000000b9, sig000000b8,
+sig000000b7, sig000000b6, sig000000b5, sig000000b4, sig000000b3, sig000000b2, sig000000c8, sig000000c7, sig000000c6, sig000000c5, sig000000c4,
+sig000000c3, sig000000c2, sig000000c1, sig000000bc, sig000000b1})
);
MULT18X18S blk00000006 (
.C(clk),
- .CE(sig00000013),
- .R(sig00000012),
- .A({sig00000012, a[16], a[15], a[14], a[13], a[12], a[11], a[10], a[9], a[8], a[7], a[6], a[5], a[4], a[3], a[2], a[1], a[0]}),
- .B({sig00000012, b[16], b[15], b[14], b[13], b[12], b[11], b[10], b[9], b[8], b[7], b[6], b[5], b[4], b[3], b[2], b[1], b[0]}),
- .P({\NLW_blk00000006_P<35>_UNCONNECTED , sig000000ba, sig000000b9, sig000000b8, sig000000b7, sig000000b6, sig000000b4, sig000000b3, sig000000b2,
-sig000000b1, sig000000b0, sig000000af, sig000000ae, sig000000ad, sig000000ac, sig000000ab, sig000000a9, sig000000a8, sig000000a7, sig000000a6,
-sig000000a5, sig000000a4, sig000000a3, sig000000a2, sig000000a1, sig000000a0, sig000000c1, sig000000c0, sig000000bf, sig000000be, sig000000bd,
-sig000000bc, sig000000bb, sig000000b5, sig000000aa, sig0000009f})
+ .CE(sig00000002),
+ .R(sig00000001),
+ .A({sig00000001, a[16], a[15], a[14], a[13], a[12], a[11], a[10], a[9], a[8], a[7], a[6], a[5], a[4], a[3], a[2], a[1], a[0]}),
+ .B({sig00000001, b[16], b[15], b[14], b[13], b[12], b[11], b[10], b[9], b[8], b[7], b[6], b[5], b[4], b[3], b[2], b[1], b[0]}),
+ .P({\NLW_blk00000006_P<35>_UNCONNECTED , sig000000a9, sig000000a8, sig000000a7, sig000000a6, sig000000a5, sig000000a3, sig000000a2, sig000000a1,
+sig000000a0, sig0000009f, sig0000009e, sig0000009d, sig0000009c, sig0000009b, sig0000009a, sig00000098, sig00000097, sig00000096, sig00000095,
+sig00000094, sig00000093, sig00000092, sig00000091, sig00000090, sig0000008f, sig000000b0, sig000000af, sig000000ae, sig000000ad, sig000000ac,
+sig000000ab, sig000000aa, sig000000a4, sig00000099, sig0000008e})
);
XORCY blk00000007 (
- .CI(sig00000076),
- .LI(sig00000097),
- .O(sig0000018f)
+ .CI(sig00000065),
+ .LI(sig00000086),
+ .O(p[47])
);
LUT2 #(
.INIT ( 4'h6 ))
blk00000008 (
- .I0(sig0000016c),
- .I1(sig0000015f),
- .O(sig00000097)
- );
- MUXCY blk00000009 (
- .CI(sig00000075),
- .DI(sig0000015f),
- .S(sig00000096),
- .O(sig00000076)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000000a (
- .I0(sig0000016c),
- .I1(sig0000015f),
- .O(sig00000096)
- );
- MUXCY blk0000000b (
- .CI(sig00000073),
- .DI(sig0000015f),
- .S(sig00000095),
- .O(sig00000075)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000000c (
- .I0(sig0000016c),
- .I1(sig0000015f),
- .O(sig00000095)
- );
- XORCY blk0000000d (
- .CI(sig00000072),
- .LI(sig00000093),
- .O(sig0000018b)
- );
- MUXCY blk0000000e (
- .CI(sig00000072),
- .DI(sig0000015f),
- .S(sig00000093),
- .O(sig00000073)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000000f (
- .I0(sig0000016b),
- .I1(sig0000015f),
- .O(sig00000093)
- );
- XORCY blk00000010 (
- .CI(sig00000071),
- .LI(sig00000092),
- .O(sig0000018a)
- );
- MUXCY blk00000011 (
- .CI(sig00000071),
- .DI(sig0000015f),
- .S(sig00000092),
- .O(sig00000072)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000012 (
- .I0(sig0000016a),
- .I1(sig0000015f),
- .O(sig00000092)
- );
- XORCY blk00000013 (
- .CI(sig00000070),
- .LI(sig00000091),
- .O(sig00000189)
- );
- MUXCY blk00000014 (
- .CI(sig00000070),
- .DI(sig0000015f),
- .S(sig00000091),
- .O(sig00000071)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000015 (
- .I0(sig00000169),
- .I1(sig0000015f),
- .O(sig00000091)
- );
- XORCY blk00000016 (
- .CI(sig0000006f),
- .LI(sig00000090),
- .O(sig00000188)
- );
- MUXCY blk00000017 (
- .CI(sig0000006f),
- .DI(sig0000015f),
- .S(sig00000090),
- .O(sig00000070)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000018 (
- .I0(sig00000175),
- .I1(sig0000015f),
- .O(sig00000090)
- );
- XORCY blk00000019 (
- .CI(sig0000006e),
- .LI(sig0000008f),
- .O(sig00000187)
- );
- MUXCY blk0000001a (
- .CI(sig0000006e),
- .DI(sig0000015f),
- .S(sig0000008f),
- .O(sig0000006f)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000001b (
- .I0(sig00000174),
- .I1(sig0000015f),
- .O(sig0000008f)
- );
- XORCY blk0000001c (
- .CI(sig0000006d),
- .LI(sig0000008e),
- .O(sig00000186)
- );
- MUXCY blk0000001d (
- .CI(sig0000006d),
- .DI(sig0000015f),
- .S(sig0000008e),
- .O(sig0000006e)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000001e (
- .I0(sig00000173),
- .I1(sig0000015f),
- .O(sig0000008e)
- );
- XORCY blk0000001f (
- .CI(sig0000006c),
- .LI(sig0000008d),
- .O(sig00000185)
- );
- MUXCY blk00000020 (
- .CI(sig0000006c),
- .DI(sig0000015f),
- .S(sig0000008d),
- .O(sig0000006d)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000021 (
- .I0(sig00000172),
- .I1(sig0000015f),
- .O(sig0000008d)
- );
- XORCY blk00000022 (
- .CI(sig0000006b),
- .LI(sig0000008c),
- .O(sig00000184)
- );
- MUXCY blk00000023 (
- .CI(sig0000006b),
- .DI(sig0000015e),
- .S(sig0000008c),
- .O(sig0000006c)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000024 (
- .I0(sig00000171),
- .I1(sig0000015e),
- .O(sig0000008c)
- );
- XORCY blk00000025 (
- .CI(sig0000006a),
- .LI(sig0000008b),
- .O(sig00000183)
- );
- MUXCY blk00000026 (
- .CI(sig0000006a),
- .DI(sig0000015d),
- .S(sig0000008b),
- .O(sig0000006b)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000027 (
- .I0(sig00000170),
- .I1(sig0000015d),
- .O(sig0000008b)
- );
- XORCY blk00000028 (
- .CI(sig00000068),
- .LI(sig0000008a),
- .O(sig00000182)
- );
- MUXCY blk00000029 (
- .CI(sig00000068),
- .DI(sig0000015c),
- .S(sig0000008a),
- .O(sig0000006a)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000002a (
- .I0(sig0000016f),
- .I1(sig0000015c),
- .O(sig0000008a)
- );
- XORCY blk0000002b (
- .CI(sig00000067),
- .LI(sig00000088),
- .O(sig00000180)
- );
- MUXCY blk0000002c (
- .CI(sig00000067),
- .DI(sig0000015a),
- .S(sig00000088),
- .O(sig00000068)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000002d (
- .I0(sig0000016e),
- .I1(sig0000015a),
- .O(sig00000088)
- );
- XORCY blk0000002e (
- .CI(sig00000066),
- .LI(sig00000087),
- .O(sig0000017f)
- );
- MUXCY blk0000002f (
- .CI(sig00000066),
- .DI(sig00000159),
- .S(sig00000087),
- .O(sig00000067)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000030 (
- .I0(sig0000016d),
- .I1(sig00000159),
- .O(sig00000087)
- );
- XORCY blk00000031 (
- .CI(sig00000065),
- .LI(sig00000086),
- .O(sig0000017e)
- );
- MUXCY blk00000032 (
- .CI(sig00000065),
- .DI(sig00000158),
- .S(sig00000086),
- .O(sig00000066)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000033 (
- .I0(sig00000168),
- .I1(sig00000158),
+ .I0(sig0000014e),
+ .I1(sig0000015b),
.O(sig00000086)
);
- XORCY blk00000034 (
+ MUXCY blk00000009 (
.CI(sig00000064),
- .LI(sig00000085),
- .O(sig0000017d)
- );
- MUXCY blk00000035 (
- .CI(sig00000064),
- .DI(sig00000157),
+ .DI(sig0000014e),
.S(sig00000085),
.O(sig00000065)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000036 (
- .I0(sig00000132),
- .I1(sig00000157),
+ blk0000000a (
+ .I0(sig0000014e),
+ .I1(sig0000015b),
.O(sig00000085)
);
- XORCY blk00000037 (
- .CI(sig00000063),
- .LI(sig00000084),
- .O(sig0000017c)
- );
- MUXCY blk00000038 (
- .CI(sig00000063),
- .DI(sig00000156),
+ MUXCY blk0000000b (
+ .CI(sig00000062),
+ .DI(sig0000014e),
.S(sig00000084),
.O(sig00000064)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000039 (
- .I0(sig00000131),
- .I1(sig00000156),
+ blk0000000c (
+ .I0(sig0000014e),
+ .I1(sig0000015b),
.O(sig00000084)
);
- XORCY blk0000003a (
- .CI(sig00000062),
- .LI(sig00000083),
- .O(sig0000017b)
- );
- MUXCY blk0000003b (
- .CI(sig00000062),
- .DI(sig00000155),
- .S(sig00000083),
- .O(sig00000063)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000003c (
- .I0(sig00000130),
- .I1(sig00000155),
- .O(sig00000083)
- );
- XORCY blk0000003d (
+ XORCY blk0000000d (
.CI(sig00000061),
.LI(sig00000082),
- .O(sig0000017a)
+ .O(p[46])
);
- MUXCY blk0000003e (
+ MUXCY blk0000000e (
.CI(sig00000061),
- .DI(sig00000154),
+ .DI(sig0000014e),
.S(sig00000082),
.O(sig00000062)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk0000003f (
- .I0(sig0000012f),
- .I1(sig00000154),
+ blk0000000f (
+ .I0(sig0000014e),
+ .I1(sig0000015a),
.O(sig00000082)
);
- XORCY blk00000040 (
+ XORCY blk00000010 (
.CI(sig00000060),
.LI(sig00000081),
- .O(sig00000179)
+ .O(p[45])
);
- MUXCY blk00000041 (
+ MUXCY blk00000011 (
.CI(sig00000060),
- .DI(sig00000153),
+ .DI(sig0000014e),
.S(sig00000081),
.O(sig00000061)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000042 (
- .I0(sig0000012e),
- .I1(sig00000153),
+ blk00000012 (
+ .I0(sig0000014e),
+ .I1(sig00000159),
.O(sig00000081)
);
- XORCY blk00000043 (
+ XORCY blk00000013 (
.CI(sig0000005f),
.LI(sig00000080),
- .O(sig00000178)
+ .O(p[44])
);
- MUXCY blk00000044 (
+ MUXCY blk00000014 (
.CI(sig0000005f),
- .DI(sig00000152),
+ .DI(sig0000014e),
.S(sig00000080),
.O(sig00000060)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000045 (
- .I0(sig0000012d),
- .I1(sig00000152),
+ blk00000015 (
+ .I0(sig0000014e),
+ .I1(sig00000158),
.O(sig00000080)
);
- XORCY blk00000046 (
- .CI(sig0000007d),
+ XORCY blk00000016 (
+ .CI(sig0000005e),
.LI(sig0000007f),
- .O(sig00000177)
+ .O(p[43])
);
- MUXCY blk00000047 (
- .CI(sig0000007d),
- .DI(sig00000151),
+ MUXCY blk00000017 (
+ .CI(sig0000005e),
+ .DI(sig0000014e),
.S(sig0000007f),
.O(sig0000005f)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000048 (
- .I0(sig0000012c),
- .I1(sig00000151),
+ blk00000018 (
+ .I0(sig0000014e),
+ .I1(sig00000164),
.O(sig0000007f)
);
- XORCY blk00000049 (
- .CI(sig0000007c),
- .LI(sig0000009e),
- .O(sig00000194)
- );
- MUXCY blk0000004a (
- .CI(sig0000007c),
- .DI(sig00000167),
- .S(sig0000009e),
- .O(sig0000007d)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000004b (
- .I0(sig00000141),
- .I1(sig00000167),
- .O(sig0000009e)
- );
- XORCY blk0000004c (
- .CI(sig0000007b),
- .LI(sig0000009d),
- .O(sig00000193)
- );
- MUXCY blk0000004d (
- .CI(sig0000007b),
- .DI(sig00000166),
- .S(sig0000009d),
- .O(sig0000007c)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000004e (
- .I0(sig00000140),
- .I1(sig00000166),
- .O(sig0000009d)
- );
- XORCY blk0000004f (
- .CI(sig0000007a),
- .LI(sig0000009c),
- .O(sig00000192)
- );
- MUXCY blk00000050 (
- .CI(sig0000007a),
- .DI(sig00000165),
- .S(sig0000009c),
- .O(sig0000007b)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000051 (
- .I0(sig0000013f),
- .I1(sig00000165),
- .O(sig0000009c)
- );
- XORCY blk00000052 (
- .CI(sig00000079),
- .LI(sig0000009b),
- .O(sig00000191)
- );
- MUXCY blk00000053 (
- .CI(sig00000079),
- .DI(sig00000164),
- .S(sig0000009b),
- .O(sig0000007a)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000054 (
- .I0(sig0000013e),
- .I1(sig00000164),
- .O(sig0000009b)
- );
- XORCY blk00000055 (
- .CI(sig00000078),
- .LI(sig0000009a),
- .O(sig00000190)
- );
- MUXCY blk00000056 (
- .CI(sig00000078),
- .DI(sig00000163),
- .S(sig0000009a),
- .O(sig00000079)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000057 (
- .I0(sig0000013d),
- .I1(sig00000163),
- .O(sig0000009a)
- );
- XORCY blk00000058 (
- .CI(sig00000077),
- .LI(sig00000099),
- .O(sig0000018e)
- );
- MUXCY blk00000059 (
- .CI(sig00000077),
- .DI(sig00000162),
- .S(sig00000099),
- .O(sig00000078)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000005a (
- .I0(sig0000013c),
- .I1(sig00000162),
- .O(sig00000099)
- );
- XORCY blk0000005b (
- .CI(sig00000074),
- .LI(sig00000098),
- .O(sig0000018d)
- );
- MUXCY blk0000005c (
- .CI(sig00000074),
- .DI(sig00000161),
- .S(sig00000098),
- .O(sig00000077)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000005d (
- .I0(sig0000013b),
- .I1(sig00000161),
- .O(sig00000098)
- );
- XORCY blk0000005e (
- .CI(sig00000069),
- .LI(sig00000094),
- .O(sig0000018c)
- );
- MUXCY blk0000005f (
- .CI(sig00000069),
- .DI(sig00000160),
- .S(sig00000094),
- .O(sig00000074)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000060 (
- .I0(sig00000136),
- .I1(sig00000160),
- .O(sig00000094)
- );
- XORCY blk00000061 (
- .CI(sig0000005e),
- .LI(sig00000089),
- .O(sig00000181)
- );
- MUXCY blk00000062 (
- .CI(sig0000005e),
- .DI(sig0000015b),
- .S(sig00000089),
- .O(sig00000069)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000063 (
- .I0(sig0000012b),
- .I1(sig0000015b),
- .O(sig00000089)
- );
- XORCY blk00000064 (
- .CI(sig00000012),
+ XORCY blk00000019 (
+ .CI(sig0000005d),
.LI(sig0000007e),
- .O(sig00000176)
+ .O(p[42])
);
- MUXCY blk00000065 (
- .CI(sig00000012),
- .DI(sig00000150),
+ MUXCY blk0000001a (
+ .CI(sig0000005d),
+ .DI(sig0000014e),
.S(sig0000007e),
.O(sig0000005e)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000066 (
- .I0(sig0000012a),
- .I1(sig00000150),
+ blk0000001b (
+ .I0(sig0000014e),
+ .I1(sig00000163),
.O(sig0000007e)
);
- XORCY blk00000067 (
- .CI(sig00000022),
- .LI(sig0000003a),
- .O(sig0000015f)
+ XORCY blk0000001c (
+ .CI(sig0000005c),
+ .LI(sig0000007d),
+ .O(p[41])
+ );
+ MUXCY blk0000001d (
+ .CI(sig0000005c),
+ .DI(sig0000014e),
+ .S(sig0000007d),
+ .O(sig0000005d)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000068 (
- .I0(sig00000111),
- .I1(sig00000122),
- .O(sig0000003a)
+ blk0000001e (
+ .I0(sig0000014e),
+ .I1(sig00000162),
+ .O(sig0000007d)
);
- XORCY blk00000069 (
- .CI(sig00000021),
- .LI(sig00000039),
- .O(sig0000015e)
+ XORCY blk0000001f (
+ .CI(sig0000005b),
+ .LI(sig0000007c),
+ .O(p[40])
);
- MUXCY blk0000006a (
- .CI(sig00000021),
- .DI(sig00000111),
- .S(sig00000039),
- .O(sig00000022)
+ MUXCY blk00000020 (
+ .CI(sig0000005b),
+ .DI(sig0000014e),
+ .S(sig0000007c),
+ .O(sig0000005c)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk0000006b (
- .I0(sig00000121),
- .I1(sig00000111),
- .O(sig00000039)
+ blk00000021 (
+ .I0(sig0000014e),
+ .I1(sig00000161),
+ .O(sig0000007c)
);
- XORCY blk0000006c (
- .CI(sig00000020),
- .LI(sig00000038),
- .O(sig0000015d)
+ XORCY blk00000022 (
+ .CI(sig0000005a),
+ .LI(sig0000007b),
+ .O(p[39])
);
- MUXCY blk0000006d (
- .CI(sig00000020),
- .DI(sig00000111),
- .S(sig00000038),
- .O(sig00000021)
+ MUXCY blk00000023 (
+ .CI(sig0000005a),
+ .DI(sig0000014d),
+ .S(sig0000007b),
+ .O(sig0000005b)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk0000006e (
- .I0(sig00000120),
- .I1(sig00000111),
- .O(sig00000038)
+ blk00000024 (
+ .I0(sig0000014d),
+ .I1(sig00000160),
+ .O(sig0000007b)
);
- XORCY blk0000006f (
- .CI(sig0000001e),
- .LI(sig00000037),
- .O(sig0000015c)
+ XORCY blk00000025 (
+ .CI(sig00000059),
+ .LI(sig0000007a),
+ .O(p[38])
);
- MUXCY blk00000070 (
- .CI(sig0000001e),
- .DI(sig00000111),
- .S(sig00000037),
- .O(sig00000020)
+ MUXCY blk00000026 (
+ .CI(sig00000059),
+ .DI(sig0000014c),
+ .S(sig0000007a),
+ .O(sig0000005a)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000071 (
- .I0(sig0000011f),
- .I1(sig00000111),
- .O(sig00000037)
+ blk00000027 (
+ .I0(sig0000014c),
+ .I1(sig0000015f),
+ .O(sig0000007a)
);
- XORCY blk00000072 (
- .CI(sig0000001d),
- .LI(sig00000035),
- .O(sig0000015a)
+ XORCY blk00000028 (
+ .CI(sig00000057),
+ .LI(sig00000079),
+ .O(p[37])
);
- MUXCY blk00000073 (
- .CI(sig0000001d),
- .DI(sig00000111),
- .S(sig00000035),
- .O(sig0000001e)
+ MUXCY blk00000029 (
+ .CI(sig00000057),
+ .DI(sig0000014b),
+ .S(sig00000079),
+ .O(sig00000059)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000074 (
- .I0(sig0000011d),
- .I1(sig00000111),
- .O(sig00000035)
+ blk0000002a (
+ .I0(sig0000014b),
+ .I1(sig0000015e),
+ .O(sig00000079)
);
- XORCY blk00000075 (
- .CI(sig0000001c),
- .LI(sig00000034),
- .O(sig00000159)
+ XORCY blk0000002b (
+ .CI(sig00000056),
+ .LI(sig00000077),
+ .O(p[36])
);
- MUXCY blk00000076 (
- .CI(sig0000001c),
- .DI(sig00000111),
- .S(sig00000034),
- .O(sig0000001d)
+ MUXCY blk0000002c (
+ .CI(sig00000056),
+ .DI(sig00000149),
+ .S(sig00000077),
+ .O(sig00000057)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk00000077 (
- .I0(sig0000011c),
- .I1(sig00000111),
- .O(sig00000034)
+ blk0000002d (
+ .I0(sig00000149),
+ .I1(sig0000015d),
+ .O(sig00000077)
);
- XORCY blk00000078 (
- .CI(sig0000001b),
- .LI(sig00000033),
- .O(sig00000158)
+ XORCY blk0000002e (
+ .CI(sig00000055),
+ .LI(sig00000076),
+ .O(p[35])
);
- MUXCY blk00000079 (
- .CI(sig0000001b),
- .DI(sig00000111),
- .S(sig00000033),
- .O(sig0000001c)
+ MUXCY blk0000002f (
+ .CI(sig00000055),
+ .DI(sig00000148),
+ .S(sig00000076),
+ .O(sig00000056)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk0000007a (
- .I0(sig0000011b),
- .I1(sig00000111),
- .O(sig00000033)
+ blk00000030 (
+ .I0(sig00000148),
+ .I1(sig0000015c),
+ .O(sig00000076)
);
- XORCY blk0000007b (
- .CI(sig0000001a),
- .LI(sig00000032),
- .O(sig00000157)
+ XORCY blk00000031 (
+ .CI(sig00000054),
+ .LI(sig00000075),
+ .O(p[34])
);
- MUXCY blk0000007c (
- .CI(sig0000001a),
- .DI(sig00000110),
- .S(sig00000032),
- .O(sig0000001b)
+ MUXCY blk00000032 (
+ .CI(sig00000054),
+ .DI(sig00000147),
+ .S(sig00000075),
+ .O(sig00000055)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk0000007d (
- .I0(sig00000110),
- .I1(sig0000011a),
- .O(sig00000032)
+ blk00000033 (
+ .I0(sig00000147),
+ .I1(sig00000157),
+ .O(sig00000075)
);
- XORCY blk0000007e (
- .CI(sig00000019),
- .LI(sig00000031),
- .O(sig00000156)
+ XORCY blk00000034 (
+ .CI(sig00000053),
+ .LI(sig00000074),
+ .O(p[33])
);
- MUXCY blk0000007f (
- .CI(sig00000019),
- .DI(sig0000010f),
- .S(sig00000031),
- .O(sig0000001a)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000080 (
- .I0(sig0000010f),
- .I1(sig00000119),
- .O(sig00000031)
- );
- XORCY blk00000081 (
- .CI(sig00000018),
- .LI(sig00000030),
- .O(sig00000155)
- );
- MUXCY blk00000082 (
- .CI(sig00000018),
- .DI(sig0000010e),
- .S(sig00000030),
- .O(sig00000019)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000083 (
- .I0(sig0000010e),
- .I1(sig00000118),
- .O(sig00000030)
- );
- XORCY blk00000084 (
- .CI(sig00000017),
- .LI(sig0000002f),
- .O(sig00000154)
- );
- MUXCY blk00000085 (
- .CI(sig00000017),
- .DI(sig0000010d),
- .S(sig0000002f),
- .O(sig00000018)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000086 (
- .I0(sig0000010d),
- .I1(sig00000117),
- .O(sig0000002f)
- );
- XORCY blk00000087 (
- .CI(sig00000016),
- .LI(sig0000002e),
- .O(sig00000153)
- );
- MUXCY blk00000088 (
- .CI(sig00000016),
- .DI(sig0000010c),
- .S(sig0000002e),
- .O(sig00000017)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000089 (
- .I0(sig0000010c),
- .I1(sig00000116),
- .O(sig0000002e)
- );
- XORCY blk0000008a (
- .CI(sig00000015),
- .LI(sig0000002d),
- .O(sig00000152)
- );
- MUXCY blk0000008b (
- .CI(sig00000015),
- .DI(sig0000010b),
- .S(sig0000002d),
- .O(sig00000016)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000008c (
- .I0(sig0000010b),
- .I1(sig00000115),
- .O(sig0000002d)
- );
- XORCY blk0000008d (
- .CI(sig0000002a),
- .LI(sig0000002c),
- .O(sig00000151)
- );
- MUXCY blk0000008e (
- .CI(sig0000002a),
- .DI(sig0000010a),
- .S(sig0000002c),
- .O(sig00000015)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000008f (
- .I0(sig0000010a),
- .I1(sig00000114),
- .O(sig0000002c)
- );
- XORCY blk00000090 (
- .CI(sig00000029),
- .LI(sig00000042),
- .O(sig00000167)
- );
- MUXCY blk00000091 (
- .CI(sig00000029),
- .DI(sig00000109),
- .S(sig00000042),
- .O(sig0000002a)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000092 (
- .I0(sig00000109),
- .I1(sig00000129),
- .O(sig00000042)
- );
- XORCY blk00000093 (
- .CI(sig00000028),
- .LI(sig00000041),
- .O(sig00000166)
- );
- MUXCY blk00000094 (
- .CI(sig00000028),
- .DI(sig00000108),
- .S(sig00000041),
- .O(sig00000029)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000095 (
- .I0(sig00000108),
- .I1(sig00000128),
- .O(sig00000041)
- );
- XORCY blk00000096 (
- .CI(sig00000027),
- .LI(sig00000040),
- .O(sig00000165)
- );
- MUXCY blk00000097 (
- .CI(sig00000027),
- .DI(sig00000107),
- .S(sig00000040),
- .O(sig00000028)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk00000098 (
- .I0(sig00000107),
- .I1(sig00000127),
- .O(sig00000040)
- );
- XORCY blk00000099 (
- .CI(sig00000026),
- .LI(sig0000003f),
- .O(sig00000164)
- );
- MUXCY blk0000009a (
- .CI(sig00000026),
- .DI(sig00000106),
- .S(sig0000003f),
- .O(sig00000027)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000009b (
- .I0(sig00000106),
- .I1(sig00000126),
- .O(sig0000003f)
- );
- XORCY blk0000009c (
- .CI(sig00000025),
- .LI(sig0000003e),
- .O(sig00000163)
- );
- MUXCY blk0000009d (
- .CI(sig00000025),
- .DI(sig00000105),
- .S(sig0000003e),
- .O(sig00000026)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk0000009e (
- .I0(sig00000105),
- .I1(sig00000125),
- .O(sig0000003e)
- );
- XORCY blk0000009f (
- .CI(sig00000024),
- .LI(sig0000003d),
- .O(sig00000162)
- );
- MUXCY blk000000a0 (
- .CI(sig00000024),
- .DI(sig00000104),
- .S(sig0000003d),
- .O(sig00000025)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk000000a1 (
- .I0(sig00000104),
- .I1(sig00000124),
- .O(sig0000003d)
- );
- XORCY blk000000a2 (
- .CI(sig00000023),
- .LI(sig0000003c),
- .O(sig00000161)
- );
- MUXCY blk000000a3 (
- .CI(sig00000023),
- .DI(sig00000103),
- .S(sig0000003c),
- .O(sig00000024)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk000000a4 (
- .I0(sig00000103),
- .I1(sig00000123),
- .O(sig0000003c)
- );
- XORCY blk000000a5 (
- .CI(sig0000001f),
- .LI(sig0000003b),
- .O(sig00000160)
- );
- MUXCY blk000000a6 (
- .CI(sig0000001f),
- .DI(sig00000102),
- .S(sig0000003b),
- .O(sig00000023)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk000000a7 (
- .I0(sig00000102),
- .I1(sig0000011e),
- .O(sig0000003b)
- );
- XORCY blk000000a8 (
- .CI(sig00000014),
- .LI(sig00000036),
- .O(sig0000015b)
- );
- MUXCY blk000000a9 (
- .CI(sig00000014),
- .DI(sig00000101),
- .S(sig00000036),
- .O(sig0000001f)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk000000aa (
- .I0(sig00000101),
- .I1(sig00000113),
- .O(sig00000036)
- );
- XORCY blk000000ab (
- .CI(sig00000012),
- .LI(sig0000002b),
- .O(sig00000150)
- );
- MUXCY blk000000ac (
- .CI(sig00000012),
- .DI(sig00000100),
- .S(sig0000002b),
- .O(sig00000014)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk000000ad (
- .I0(sig00000100),
- .I1(sig00000112),
- .O(sig0000002b)
- );
- XORCY blk000000ae (
- .CI(sig00000046),
- .LI(sig00000054),
- .O(sig0000016c)
- );
- LUT2 #(
- .INIT ( 4'h6 ))
- blk000000af (
- .I0(sig0000013a),
- .I1(sig00000147),
+ MUXCY blk00000035 (
+ .CI(sig00000053),
+ .DI(sig00000146),
+ .S(sig00000074),
.O(sig00000054)
);
- XORCY blk000000b0 (
- .CI(sig00000045),
- .LI(sig00000053),
- .O(sig0000016b)
- );
- MUXCY blk000000b1 (
- .CI(sig00000045),
- .DI(sig0000013a),
- .S(sig00000053),
- .O(sig00000046)
- );
LUT2 #(
.INIT ( 4'h6 ))
- blk000000b2 (
+ blk00000036 (
.I0(sig00000146),
- .I1(sig0000013a),
+ .I1(sig00000121),
+ .O(sig00000074)
+ );
+ XORCY blk00000037 (
+ .CI(sig00000052),
+ .LI(sig00000073),
+ .O(p[32])
+ );
+ MUXCY blk00000038 (
+ .CI(sig00000052),
+ .DI(sig00000145),
+ .S(sig00000073),
.O(sig00000053)
);
- XORCY blk000000b3 (
- .CI(sig00000044),
- .LI(sig00000052),
- .O(sig0000016a)
- );
- MUXCY blk000000b4 (
- .CI(sig00000044),
- .DI(sig0000013a),
- .S(sig00000052),
- .O(sig00000045)
- );
LUT2 #(
.INIT ( 4'h6 ))
- blk000000b5 (
+ blk00000039 (
.I0(sig00000145),
- .I1(sig0000013a),
+ .I1(sig00000120),
+ .O(sig00000073)
+ );
+ XORCY blk0000003a (
+ .CI(sig00000051),
+ .LI(sig00000072),
+ .O(p[31])
+ );
+ MUXCY blk0000003b (
+ .CI(sig00000051),
+ .DI(sig00000144),
+ .S(sig00000072),
.O(sig00000052)
);
- XORCY blk000000b6 (
- .CI(sig0000004f),
- .LI(sig00000051),
- .O(sig00000169)
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000003c (
+ .I0(sig00000144),
+ .I1(sig0000011f),
+ .O(sig00000072)
);
- MUXCY blk000000b7 (
- .CI(sig0000004f),
- .DI(sig0000013a),
- .S(sig00000051),
- .O(sig00000044)
+ XORCY blk0000003d (
+ .CI(sig00000050),
+ .LI(sig00000071),
+ .O(p[30])
+ );
+ MUXCY blk0000003e (
+ .CI(sig00000050),
+ .DI(sig00000143),
+ .S(sig00000071),
+ .O(sig00000051)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk000000b8 (
- .I0(sig00000144),
- .I1(sig0000013a),
- .O(sig00000051)
+ blk0000003f (
+ .I0(sig00000143),
+ .I1(sig0000011e),
+ .O(sig00000071)
);
- XORCY blk000000b9 (
- .CI(sig0000004e),
- .LI(sig0000005d),
- .O(sig00000175)
+ XORCY blk00000040 (
+ .CI(sig0000004f),
+ .LI(sig00000070),
+ .O(p[29])
);
- MUXCY blk000000ba (
+ MUXCY blk00000041 (
+ .CI(sig0000004f),
+ .DI(sig00000142),
+ .S(sig00000070),
+ .O(sig00000050)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000042 (
+ .I0(sig00000142),
+ .I1(sig0000011d),
+ .O(sig00000070)
+ );
+ XORCY blk00000043 (
.CI(sig0000004e),
- .DI(sig0000013a),
- .S(sig0000005d),
+ .LI(sig0000006f),
+ .O(p[28])
+ );
+ MUXCY blk00000044 (
+ .CI(sig0000004e),
+ .DI(sig00000141),
+ .S(sig0000006f),
.O(sig0000004f)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk000000bb (
- .I0(sig0000014f),
- .I1(sig0000013a),
- .O(sig0000005d)
+ blk00000045 (
+ .I0(sig00000141),
+ .I1(sig0000011c),
+ .O(sig0000006f)
);
- XORCY blk000000bc (
- .CI(sig0000004d),
- .LI(sig0000005c),
- .O(sig00000174)
+ XORCY blk00000046 (
+ .CI(sig0000006c),
+ .LI(sig0000006e),
+ .O(p[27])
);
- MUXCY blk000000bd (
- .CI(sig0000004d),
- .DI(sig0000013a),
- .S(sig0000005c),
+ MUXCY blk00000047 (
+ .CI(sig0000006c),
+ .DI(sig00000140),
+ .S(sig0000006e),
.O(sig0000004e)
);
LUT2 #(
.INIT ( 4'h6 ))
- blk000000be (
- .I0(sig0000014e),
- .I1(sig0000013a),
- .O(sig0000005c)
+ blk00000048 (
+ .I0(sig00000140),
+ .I1(sig0000011b),
+ .O(sig0000006e)
);
- XORCY blk000000bf (
- .CI(sig0000004c),
- .LI(sig0000005b),
- .O(sig00000173)
+ XORCY blk00000049 (
+ .CI(sig0000006b),
+ .LI(sig0000008d),
+ .O(p[26])
);
- MUXCY blk000000c0 (
- .CI(sig0000004c),
- .DI(sig0000013a),
- .S(sig0000005b),
+ MUXCY blk0000004a (
+ .CI(sig0000006b),
+ .DI(sig00000156),
+ .S(sig0000008d),
+ .O(sig0000006c)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000004b (
+ .I0(sig00000156),
+ .I1(sig00000130),
+ .O(sig0000008d)
+ );
+ XORCY blk0000004c (
+ .CI(sig0000006a),
+ .LI(sig0000008c),
+ .O(p[25])
+ );
+ MUXCY blk0000004d (
+ .CI(sig0000006a),
+ .DI(sig00000155),
+ .S(sig0000008c),
+ .O(sig0000006b)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000004e (
+ .I0(sig00000155),
+ .I1(sig0000012f),
+ .O(sig0000008c)
+ );
+ XORCY blk0000004f (
+ .CI(sig00000069),
+ .LI(sig0000008b),
+ .O(p[24])
+ );
+ MUXCY blk00000050 (
+ .CI(sig00000069),
+ .DI(sig00000154),
+ .S(sig0000008b),
+ .O(sig0000006a)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000051 (
+ .I0(sig00000154),
+ .I1(sig0000012e),
+ .O(sig0000008b)
+ );
+ XORCY blk00000052 (
+ .CI(sig00000068),
+ .LI(sig0000008a),
+ .O(p[23])
+ );
+ MUXCY blk00000053 (
+ .CI(sig00000068),
+ .DI(sig00000153),
+ .S(sig0000008a),
+ .O(sig00000069)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000054 (
+ .I0(sig00000153),
+ .I1(sig0000012d),
+ .O(sig0000008a)
+ );
+ XORCY blk00000055 (
+ .CI(sig00000067),
+ .LI(sig00000089),
+ .O(p[22])
+ );
+ MUXCY blk00000056 (
+ .CI(sig00000067),
+ .DI(sig00000152),
+ .S(sig00000089),
+ .O(sig00000068)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000057 (
+ .I0(sig00000152),
+ .I1(sig0000012c),
+ .O(sig00000089)
+ );
+ XORCY blk00000058 (
+ .CI(sig00000066),
+ .LI(sig00000088),
+ .O(p[21])
+ );
+ MUXCY blk00000059 (
+ .CI(sig00000066),
+ .DI(sig00000151),
+ .S(sig00000088),
+ .O(sig00000067)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000005a (
+ .I0(sig00000151),
+ .I1(sig0000012b),
+ .O(sig00000088)
+ );
+ XORCY blk0000005b (
+ .CI(sig00000063),
+ .LI(sig00000087),
+ .O(p[20])
+ );
+ MUXCY blk0000005c (
+ .CI(sig00000063),
+ .DI(sig00000150),
+ .S(sig00000087),
+ .O(sig00000066)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000005d (
+ .I0(sig00000150),
+ .I1(sig0000012a),
+ .O(sig00000087)
+ );
+ XORCY blk0000005e (
+ .CI(sig00000058),
+ .LI(sig00000083),
+ .O(p[19])
+ );
+ MUXCY blk0000005f (
+ .CI(sig00000058),
+ .DI(sig0000014f),
+ .S(sig00000083),
+ .O(sig00000063)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000060 (
+ .I0(sig0000014f),
+ .I1(sig00000125),
+ .O(sig00000083)
+ );
+ XORCY blk00000061 (
+ .CI(sig0000004d),
+ .LI(sig00000078),
+ .O(p[18])
+ );
+ MUXCY blk00000062 (
+ .CI(sig0000004d),
+ .DI(sig0000014a),
+ .S(sig00000078),
+ .O(sig00000058)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000063 (
+ .I0(sig0000014a),
+ .I1(sig0000011a),
+ .O(sig00000078)
+ );
+ XORCY blk00000064 (
+ .CI(sig00000001),
+ .LI(sig0000006d),
+ .O(p[17])
+ );
+ MUXCY blk00000065 (
+ .CI(sig00000001),
+ .DI(sig0000013f),
+ .S(sig0000006d),
.O(sig0000004d)
);
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000066 (
+ .I0(sig0000013f),
+ .I1(sig00000119),
+ .O(sig0000006d)
+ );
+ XORCY blk00000067 (
+ .CI(sig00000011),
+ .LI(sig00000029),
+ .O(sig0000014e)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000068 (
+ .I0(sig00000100),
+ .I1(sig00000111),
+ .O(sig00000029)
+ );
+ XORCY blk00000069 (
+ .CI(sig00000010),
+ .LI(sig00000028),
+ .O(sig0000014d)
+ );
+ MUXCY blk0000006a (
+ .CI(sig00000010),
+ .DI(sig00000100),
+ .S(sig00000028),
+ .O(sig00000011)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000006b (
+ .I0(sig00000100),
+ .I1(sig00000110),
+ .O(sig00000028)
+ );
+ XORCY blk0000006c (
+ .CI(sig0000000f),
+ .LI(sig00000027),
+ .O(sig0000014c)
+ );
+ MUXCY blk0000006d (
+ .CI(sig0000000f),
+ .DI(sig00000100),
+ .S(sig00000027),
+ .O(sig00000010)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000006e (
+ .I0(sig00000100),
+ .I1(sig0000010f),
+ .O(sig00000027)
+ );
+ XORCY blk0000006f (
+ .CI(sig0000000d),
+ .LI(sig00000026),
+ .O(sig0000014b)
+ );
+ MUXCY blk00000070 (
+ .CI(sig0000000d),
+ .DI(sig00000100),
+ .S(sig00000026),
+ .O(sig0000000f)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000071 (
+ .I0(sig00000100),
+ .I1(sig0000010e),
+ .O(sig00000026)
+ );
+ XORCY blk00000072 (
+ .CI(sig0000000c),
+ .LI(sig00000024),
+ .O(sig00000149)
+ );
+ MUXCY blk00000073 (
+ .CI(sig0000000c),
+ .DI(sig00000100),
+ .S(sig00000024),
+ .O(sig0000000d)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000074 (
+ .I0(sig00000100),
+ .I1(sig0000010c),
+ .O(sig00000024)
+ );
+ XORCY blk00000075 (
+ .CI(sig0000000b),
+ .LI(sig00000023),
+ .O(sig00000148)
+ );
+ MUXCY blk00000076 (
+ .CI(sig0000000b),
+ .DI(sig00000100),
+ .S(sig00000023),
+ .O(sig0000000c)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000077 (
+ .I0(sig00000100),
+ .I1(sig0000010b),
+ .O(sig00000023)
+ );
+ XORCY blk00000078 (
+ .CI(sig0000000a),
+ .LI(sig00000022),
+ .O(sig00000147)
+ );
+ MUXCY blk00000079 (
+ .CI(sig0000000a),
+ .DI(sig00000100),
+ .S(sig00000022),
+ .O(sig0000000b)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000007a (
+ .I0(sig00000100),
+ .I1(sig0000010a),
+ .O(sig00000022)
+ );
+ XORCY blk0000007b (
+ .CI(sig00000009),
+ .LI(sig00000021),
+ .O(sig00000146)
+ );
+ MUXCY blk0000007c (
+ .CI(sig00000009),
+ .DI(sig000000ff),
+ .S(sig00000021),
+ .O(sig0000000a)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000007d (
+ .I0(sig000000ff),
+ .I1(sig00000109),
+ .O(sig00000021)
+ );
+ XORCY blk0000007e (
+ .CI(sig00000008),
+ .LI(sig00000020),
+ .O(sig00000145)
+ );
+ MUXCY blk0000007f (
+ .CI(sig00000008),
+ .DI(sig000000fe),
+ .S(sig00000020),
+ .O(sig00000009)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000080 (
+ .I0(sig000000fe),
+ .I1(sig00000108),
+ .O(sig00000020)
+ );
+ XORCY blk00000081 (
+ .CI(sig00000007),
+ .LI(sig0000001f),
+ .O(sig00000144)
+ );
+ MUXCY blk00000082 (
+ .CI(sig00000007),
+ .DI(sig000000fd),
+ .S(sig0000001f),
+ .O(sig00000008)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000083 (
+ .I0(sig000000fd),
+ .I1(sig00000107),
+ .O(sig0000001f)
+ );
+ XORCY blk00000084 (
+ .CI(sig00000006),
+ .LI(sig0000001e),
+ .O(sig00000143)
+ );
+ MUXCY blk00000085 (
+ .CI(sig00000006),
+ .DI(sig000000fc),
+ .S(sig0000001e),
+ .O(sig00000007)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000086 (
+ .I0(sig000000fc),
+ .I1(sig00000106),
+ .O(sig0000001e)
+ );
+ XORCY blk00000087 (
+ .CI(sig00000005),
+ .LI(sig0000001d),
+ .O(sig00000142)
+ );
+ MUXCY blk00000088 (
+ .CI(sig00000005),
+ .DI(sig000000fb),
+ .S(sig0000001d),
+ .O(sig00000006)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000089 (
+ .I0(sig000000fb),
+ .I1(sig00000105),
+ .O(sig0000001d)
+ );
+ XORCY blk0000008a (
+ .CI(sig00000004),
+ .LI(sig0000001c),
+ .O(sig00000141)
+ );
+ MUXCY blk0000008b (
+ .CI(sig00000004),
+ .DI(sig000000fa),
+ .S(sig0000001c),
+ .O(sig00000005)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000008c (
+ .I0(sig000000fa),
+ .I1(sig00000104),
+ .O(sig0000001c)
+ );
+ XORCY blk0000008d (
+ .CI(sig00000019),
+ .LI(sig0000001b),
+ .O(sig00000140)
+ );
+ MUXCY blk0000008e (
+ .CI(sig00000019),
+ .DI(sig000000f9),
+ .S(sig0000001b),
+ .O(sig00000004)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000008f (
+ .I0(sig000000f9),
+ .I1(sig00000103),
+ .O(sig0000001b)
+ );
+ XORCY blk00000090 (
+ .CI(sig00000018),
+ .LI(sig00000031),
+ .O(sig00000156)
+ );
+ MUXCY blk00000091 (
+ .CI(sig00000018),
+ .DI(sig000000f8),
+ .S(sig00000031),
+ .O(sig00000019)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000092 (
+ .I0(sig000000f8),
+ .I1(sig00000118),
+ .O(sig00000031)
+ );
+ XORCY blk00000093 (
+ .CI(sig00000017),
+ .LI(sig00000030),
+ .O(sig00000155)
+ );
+ MUXCY blk00000094 (
+ .CI(sig00000017),
+ .DI(sig000000f7),
+ .S(sig00000030),
+ .O(sig00000018)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000095 (
+ .I0(sig000000f7),
+ .I1(sig00000117),
+ .O(sig00000030)
+ );
+ XORCY blk00000096 (
+ .CI(sig00000016),
+ .LI(sig0000002f),
+ .O(sig00000154)
+ );
+ MUXCY blk00000097 (
+ .CI(sig00000016),
+ .DI(sig000000f6),
+ .S(sig0000002f),
+ .O(sig00000017)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk00000098 (
+ .I0(sig000000f6),
+ .I1(sig00000116),
+ .O(sig0000002f)
+ );
+ XORCY blk00000099 (
+ .CI(sig00000015),
+ .LI(sig0000002e),
+ .O(sig00000153)
+ );
+ MUXCY blk0000009a (
+ .CI(sig00000015),
+ .DI(sig000000f5),
+ .S(sig0000002e),
+ .O(sig00000016)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000009b (
+ .I0(sig000000f5),
+ .I1(sig00000115),
+ .O(sig0000002e)
+ );
+ XORCY blk0000009c (
+ .CI(sig00000014),
+ .LI(sig0000002d),
+ .O(sig00000152)
+ );
+ MUXCY blk0000009d (
+ .CI(sig00000014),
+ .DI(sig000000f4),
+ .S(sig0000002d),
+ .O(sig00000015)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk0000009e (
+ .I0(sig000000f4),
+ .I1(sig00000114),
+ .O(sig0000002d)
+ );
+ XORCY blk0000009f (
+ .CI(sig00000013),
+ .LI(sig0000002c),
+ .O(sig00000151)
+ );
+ MUXCY blk000000a0 (
+ .CI(sig00000013),
+ .DI(sig000000f3),
+ .S(sig0000002c),
+ .O(sig00000014)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000a1 (
+ .I0(sig000000f3),
+ .I1(sig00000113),
+ .O(sig0000002c)
+ );
+ XORCY blk000000a2 (
+ .CI(sig00000012),
+ .LI(sig0000002b),
+ .O(sig00000150)
+ );
+ MUXCY blk000000a3 (
+ .CI(sig00000012),
+ .DI(sig000000f2),
+ .S(sig0000002b),
+ .O(sig00000013)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000a4 (
+ .I0(sig000000f2),
+ .I1(sig00000112),
+ .O(sig0000002b)
+ );
+ XORCY blk000000a5 (
+ .CI(sig0000000e),
+ .LI(sig0000002a),
+ .O(sig0000014f)
+ );
+ MUXCY blk000000a6 (
+ .CI(sig0000000e),
+ .DI(sig000000f1),
+ .S(sig0000002a),
+ .O(sig00000012)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000a7 (
+ .I0(sig000000f1),
+ .I1(sig0000010d),
+ .O(sig0000002a)
+ );
+ XORCY blk000000a8 (
+ .CI(sig00000003),
+ .LI(sig00000025),
+ .O(sig0000014a)
+ );
+ MUXCY blk000000a9 (
+ .CI(sig00000003),
+ .DI(sig000000f0),
+ .S(sig00000025),
+ .O(sig0000000e)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000aa (
+ .I0(sig000000f0),
+ .I1(sig00000102),
+ .O(sig00000025)
+ );
+ XORCY blk000000ab (
+ .CI(sig00000001),
+ .LI(sig0000001a),
+ .O(sig0000013f)
+ );
+ MUXCY blk000000ac (
+ .CI(sig00000001),
+ .DI(sig000000ef),
+ .S(sig0000001a),
+ .O(sig00000003)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000ad (
+ .I0(sig000000ef),
+ .I1(sig00000101),
+ .O(sig0000001a)
+ );
+ XORCY blk000000ae (
+ .CI(sig00000035),
+ .LI(sig00000043),
+ .O(sig0000015b)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000af (
+ .I0(sig00000129),
+ .I1(sig00000136),
+ .O(sig00000043)
+ );
+ XORCY blk000000b0 (
+ .CI(sig00000034),
+ .LI(sig00000042),
+ .O(sig0000015a)
+ );
+ MUXCY blk000000b1 (
+ .CI(sig00000034),
+ .DI(sig00000129),
+ .S(sig00000042),
+ .O(sig00000035)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000b2 (
+ .I0(sig00000129),
+ .I1(sig00000135),
+ .O(sig00000042)
+ );
+ XORCY blk000000b3 (
+ .CI(sig00000033),
+ .LI(sig00000041),
+ .O(sig00000159)
+ );
+ MUXCY blk000000b4 (
+ .CI(sig00000033),
+ .DI(sig00000129),
+ .S(sig00000041),
+ .O(sig00000034)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000b5 (
+ .I0(sig00000129),
+ .I1(sig00000134),
+ .O(sig00000041)
+ );
+ XORCY blk000000b6 (
+ .CI(sig0000003e),
+ .LI(sig00000040),
+ .O(sig00000158)
+ );
+ MUXCY blk000000b7 (
+ .CI(sig0000003e),
+ .DI(sig00000129),
+ .S(sig00000040),
+ .O(sig00000033)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000b8 (
+ .I0(sig00000129),
+ .I1(sig00000133),
+ .O(sig00000040)
+ );
+ XORCY blk000000b9 (
+ .CI(sig0000003d),
+ .LI(sig0000004c),
+ .O(sig00000164)
+ );
+ MUXCY blk000000ba (
+ .CI(sig0000003d),
+ .DI(sig00000129),
+ .S(sig0000004c),
+ .O(sig0000003e)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000bb (
+ .I0(sig00000129),
+ .I1(sig0000013e),
+ .O(sig0000004c)
+ );
+ XORCY blk000000bc (
+ .CI(sig0000003c),
+ .LI(sig0000004b),
+ .O(sig00000163)
+ );
+ MUXCY blk000000bd (
+ .CI(sig0000003c),
+ .DI(sig00000129),
+ .S(sig0000004b),
+ .O(sig0000003d)
+ );
+ LUT2 #(
+ .INIT ( 4'h6 ))
+ blk000000be (
+ .I0(sig00000129),
+ .I1(sig0000013d),
+ .O(sig0000004b)
+ );
+ XORCY blk000000bf (
+ .CI(sig0000003b),
+ .LI(sig0000004a),
+ .O(sig00000162)
+ );
+ MUXCY blk000000c0 (
+ .CI(sig0000003b),
+ .DI(sig00000129),
+ .S(sig0000004a),
+ .O(sig0000003c)
+ );
LUT2 #(
.INIT ( 4'h6 ))
blk000000c1 (
- .I0(sig0000014d),
- .I1(sig0000013a),
- .O(sig0000005b)
+ .I0(sig00000129),
+ .I1(sig0000013c),
+ .O(sig0000004a)
);
XORCY blk000000c2 (
- .CI(sig0000004b),
- .LI(sig0000005a),
- .O(sig00000172)
+ .CI(sig0000003a),
+ .LI(sig00000049),
+ .O(sig00000161)
);
MUXCY blk000000c3 (
- .CI(sig0000004b),
- .DI(sig0000013a),
- .S(sig0000005a),
- .O(sig0000004c)
+ .CI(sig0000003a),
+ .DI(sig00000129),
+ .S(sig00000049),
+ .O(sig0000003b)
);
LUT2 #(
.INIT ( 4'h6 ))
blk000000c4 (
- .I0(sig0000014c),
- .I1(sig0000013a),
- .O(sig0000005a)
+ .I0(sig00000129),
+ .I1(sig0000013b),
+ .O(sig00000049)
);
XORCY blk000000c5 (
- .CI(sig0000004a),
- .LI(sig00000059),
- .O(sig00000171)
+ .CI(sig00000039),
+ .LI(sig00000048),
+ .O(sig00000160)
);
MUXCY blk000000c6 (
- .CI(sig0000004a),
- .DI(sig00000139),
- .S(sig00000059),
- .O(sig0000004b)
+ .CI(sig00000039),
+ .DI(sig00000128),
+ .S(sig00000048),
+ .O(sig0000003a)
);
LUT2 #(
.INIT ( 4'h6 ))
blk000000c7 (
- .I0(sig00000139),
- .I1(sig0000014b),
- .O(sig00000059)
+ .I0(sig00000128),
+ .I1(sig0000013a),
+ .O(sig00000048)
);
XORCY blk000000c8 (
- .CI(sig00000049),
- .LI(sig00000058),
- .O(sig00000170)
+ .CI(sig00000038),
+ .LI(sig00000047),
+ .O(sig0000015f)
);
MUXCY blk000000c9 (
- .CI(sig00000049),
- .DI(sig00000138),
- .S(sig00000058),
- .O(sig0000004a)
+ .CI(sig00000038),
+ .DI(sig00000127),
+ .S(sig00000047),
+ .O(sig00000039)
);
LUT2 #(
.INIT ( 4'h6 ))
blk000000ca (
- .I0(sig00000138),
- .I1(sig0000014a),
- .O(sig00000058)
+ .I0(sig00000127),
+ .I1(sig00000139),
+ .O(sig00000047)
);
XORCY blk000000cb (
- .CI(sig00000048),
- .LI(sig00000057),
- .O(sig0000016f)
+ .CI(sig00000037),
+ .LI(sig00000046),
+ .O(sig0000015e)
);
MUXCY blk000000cc (
- .CI(sig00000048),
- .DI(sig00000137),
- .S(sig00000057),
- .O(sig00000049)
+ .CI(sig00000037),
+ .DI(sig00000126),
+ .S(sig00000046),
+ .O(sig00000038)
);
LUT2 #(
.INIT ( 4'h6 ))
blk000000cd (
- .I0(sig00000137),
- .I1(sig00000149),
- .O(sig00000057)
+ .I0(sig00000126),
+ .I1(sig00000138),
+ .O(sig00000046)
);
XORCY blk000000ce (
- .CI(sig00000047),
- .LI(sig00000056),
- .O(sig0000016e)
+ .CI(sig00000036),
+ .LI(sig00000045),
+ .O(sig0000015d)
);
MUXCY blk000000cf (
- .CI(sig00000047),
- .DI(sig00000135),
- .S(sig00000056),
- .O(sig00000048)
+ .CI(sig00000036),
+ .DI(sig00000124),
+ .S(sig00000045),
+ .O(sig00000037)
);
LUT2 #(
.INIT ( 4'h6 ))
blk000000d0 (
- .I0(sig00000135),
- .I1(sig00000148),
- .O(sig00000056)
+ .I0(sig00000124),
+ .I1(sig00000137),
+ .O(sig00000045)
);
XORCY blk000000d1 (
- .CI(sig00000043),
- .LI(sig00000055),
- .O(sig0000016d)
+ .CI(sig00000032),
+ .LI(sig00000044),
+ .O(sig0000015c)
);
MUXCY blk000000d2 (
- .CI(sig00000043),
- .DI(sig00000134),
- .S(sig00000055),
- .O(sig00000047)
+ .CI(sig00000032),
+ .DI(sig00000123),
+ .S(sig00000044),
+ .O(sig00000036)
);
LUT2 #(
.INIT ( 4'h6 ))
blk000000d3 (
- .I0(sig00000134),
- .I1(sig00000143),
- .O(sig00000055)
+ .I0(sig00000123),
+ .I1(sig00000132),
+ .O(sig00000044)
);
XORCY blk000000d4 (
- .CI(sig00000012),
- .LI(sig00000050),
- .O(sig00000168)
+ .CI(sig00000001),
+ .LI(sig0000003f),
+ .O(sig00000157)
);
MUXCY blk000000d5 (
- .CI(sig00000012),
- .DI(sig00000133),
- .S(sig00000050),
- .O(sig00000043)
+ .CI(sig00000001),
+ .DI(sig00000122),
+ .S(sig0000003f),
+ .O(sig00000032)
);
LUT2 #(
.INIT ( 4'h6 ))
blk000000d6 (
- .I0(sig00000133),
- .I1(sig00000142),
- .O(sig00000050)
+ .I0(sig00000122),
+ .I1(sig00000131),
+ .O(sig0000003f)
);
FD #(
.INIT ( 1'b0 ))
blk000000d7 (
.C(clk),
- .D(sig0000018f),
- .Q(p[47])
+ .D(sig000000d8),
+ .Q(sig00000129)
);
FD #(
.INIT ( 1'b0 ))
blk000000d8 (
.C(clk),
- .D(sig0000018b),
- .Q(p[46])
+ .D(sig000000d7),
+ .Q(sig00000128)
);
FD #(
.INIT ( 1'b0 ))
blk000000d9 (
.C(clk),
- .D(sig0000018a),
- .Q(p[45])
+ .D(sig000000d6),
+ .Q(sig00000127)
);
FD #(
.INIT ( 1'b0 ))
blk000000da (
.C(clk),
- .D(sig00000189),
- .Q(p[44])
+ .D(sig000000d5),
+ .Q(sig00000126)
);
FD #(
.INIT ( 1'b0 ))
blk000000db (
.C(clk),
- .D(sig00000188),
- .Q(p[43])
+ .D(sig000000d3),
+ .Q(sig00000124)
);
FD #(
.INIT ( 1'b0 ))
blk000000dc (
.C(clk),
- .D(sig00000187),
- .Q(p[42])
+ .D(sig000000d2),
+ .Q(sig00000123)
);
FD #(
.INIT ( 1'b0 ))
blk000000dd (
.C(clk),
- .D(sig00000186),
- .Q(p[41])
+ .D(sig000000d1),
+ .Q(sig00000122)
);
FD #(
.INIT ( 1'b0 ))
blk000000de (
.C(clk),
- .D(sig00000185),
- .Q(p[40])
+ .D(sig000000d0),
+ .Q(sig00000121)
);
FD #(
.INIT ( 1'b0 ))
blk000000df (
.C(clk),
- .D(sig00000184),
- .Q(p[39])
+ .D(sig000000cf),
+ .Q(sig00000120)
);
FD #(
.INIT ( 1'b0 ))
blk000000e0 (
.C(clk),
- .D(sig00000183),
- .Q(p[38])
+ .D(sig000000ce),
+ .Q(sig0000011f)
);
FD #(
.INIT ( 1'b0 ))
blk000000e1 (
.C(clk),
- .D(sig00000182),
- .Q(p[37])
+ .D(sig000000cd),
+ .Q(sig0000011e)
);
FD #(
.INIT ( 1'b0 ))
blk000000e2 (
.C(clk),
- .D(sig00000180),
- .Q(p[36])
+ .D(sig000000cc),
+ .Q(sig0000011d)
);
FD #(
.INIT ( 1'b0 ))
blk000000e3 (
.C(clk),
- .D(sig0000017f),
- .Q(p[35])
+ .D(sig000000cb),
+ .Q(sig0000011c)
);
FD #(
.INIT ( 1'b0 ))
blk000000e4 (
.C(clk),
- .D(sig0000017e),
- .Q(p[34])
+ .D(sig000000ca),
+ .Q(sig0000011b)
);
FD #(
.INIT ( 1'b0 ))
blk000000e5 (
.C(clk),
- .D(sig0000017d),
- .Q(p[33])
+ .D(sig000000e0),
+ .Q(sig00000130)
);
FD #(
.INIT ( 1'b0 ))
blk000000e6 (
.C(clk),
- .D(sig0000017c),
- .Q(p[32])
+ .D(sig000000df),
+ .Q(sig0000012f)
);
FD #(
.INIT ( 1'b0 ))
blk000000e7 (
.C(clk),
- .D(sig0000017b),
- .Q(p[31])
+ .D(sig000000de),
+ .Q(sig0000012e)
);
FD #(
.INIT ( 1'b0 ))
blk000000e8 (
.C(clk),
- .D(sig0000017a),
- .Q(p[30])
+ .D(sig000000dd),
+ .Q(sig0000012d)
);
FD #(
.INIT ( 1'b0 ))
blk000000e9 (
.C(clk),
- .D(sig00000179),
- .Q(p[29])
+ .D(sig000000dc),
+ .Q(sig0000012c)
);
FD #(
.INIT ( 1'b0 ))
blk000000ea (
.C(clk),
- .D(sig00000178),
- .Q(p[28])
+ .D(sig000000db),
+ .Q(sig0000012b)
);
FD #(
.INIT ( 1'b0 ))
blk000000eb (
.C(clk),
- .D(sig00000177),
- .Q(p[27])
+ .D(sig000000da),
+ .Q(sig0000012a)
);
FD #(
.INIT ( 1'b0 ))
blk000000ec (
.C(clk),
- .D(sig00000194),
- .Q(p[26])
+ .D(sig000000d9),
+ .Q(sig00000125)
);
FD #(
.INIT ( 1'b0 ))
blk000000ed (
.C(clk),
- .D(sig00000193),
- .Q(p[25])
+ .D(sig000000d4),
+ .Q(sig0000011a)
);
FD #(
.INIT ( 1'b0 ))
blk000000ee (
.C(clk),
- .D(sig00000192),
- .Q(p[24])
+ .D(sig000000c9),
+ .Q(sig00000119)
);
FD #(
.INIT ( 1'b0 ))
blk000000ef (
.C(clk),
- .D(sig00000191),
- .Q(p[23])
+ .D(sig000000c0),
+ .Q(sig00000111)
);
FD #(
.INIT ( 1'b0 ))
blk000000f0 (
.C(clk),
- .D(sig00000190),
- .Q(p[22])
+ .D(sig000000bf),
+ .Q(sig00000110)
);
FD #(
.INIT ( 1'b0 ))
blk000000f1 (
.C(clk),
- .D(sig0000018e),
- .Q(p[21])
+ .D(sig000000be),
+ .Q(sig0000010f)
);
FD #(
.INIT ( 1'b0 ))
blk000000f2 (
.C(clk),
- .D(sig0000018d),
- .Q(p[20])
+ .D(sig000000bd),
+ .Q(sig0000010e)
);
FD #(
.INIT ( 1'b0 ))
blk000000f3 (
.C(clk),
- .D(sig0000018c),
- .Q(p[19])
+ .D(sig000000bb),
+ .Q(sig0000010c)
);
FD #(
.INIT ( 1'b0 ))
blk000000f4 (
.C(clk),
- .D(sig00000181),
- .Q(p[18])
+ .D(sig000000ba),
+ .Q(sig0000010b)
);
FD #(
.INIT ( 1'b0 ))
blk000000f5 (
.C(clk),
- .D(sig00000176),
- .Q(p[17])
+ .D(sig000000b9),
+ .Q(sig0000010a)
);
FD #(
.INIT ( 1'b0 ))
blk000000f6 (
.C(clk),
- .D(sig000000f6),
- .Q(sig00000147)
+ .D(sig000000b8),
+ .Q(sig00000109)
);
FD #(
.INIT ( 1'b0 ))
blk000000f7 (
.C(clk),
- .D(sig000000f5),
- .Q(sig00000146)
+ .D(sig000000b7),
+ .Q(sig00000108)
);
FD #(
.INIT ( 1'b0 ))
blk000000f8 (
.C(clk),
- .D(sig000000f4),
- .Q(sig00000145)
+ .D(sig000000b6),
+ .Q(sig00000107)
);
FD #(
.INIT ( 1'b0 ))
blk000000f9 (
.C(clk),
- .D(sig000000f3),
- .Q(sig00000144)
+ .D(sig000000b5),
+ .Q(sig00000106)
);
FD #(
.INIT ( 1'b0 ))
blk000000fa (
.C(clk),
- .D(sig000000ff),
- .Q(sig0000014f)
+ .D(sig000000b4),
+ .Q(sig00000105)
);
FD #(
.INIT ( 1'b0 ))
blk000000fb (
.C(clk),
- .D(sig000000fe),
- .Q(sig0000014e)
+ .D(sig000000b3),
+ .Q(sig00000104)
);
FD #(
.INIT ( 1'b0 ))
blk000000fc (
.C(clk),
- .D(sig000000fd),
- .Q(sig0000014d)
+ .D(sig000000b2),
+ .Q(sig00000103)
);
FD #(
.INIT ( 1'b0 ))
blk000000fd (
.C(clk),
- .D(sig000000fc),
- .Q(sig0000014c)
+ .D(sig000000c8),
+ .Q(sig00000118)
);
FD #(
.INIT ( 1'b0 ))
blk000000fe (
.C(clk),
- .D(sig000000fb),
- .Q(sig0000014b)
+ .D(sig000000c7),
+ .Q(sig00000117)
);
FD #(
.INIT ( 1'b0 ))
blk000000ff (
.C(clk),
- .D(sig000000fa),
- .Q(sig0000014a)
+ .D(sig000000c6),
+ .Q(sig00000116)
);
FD #(
.INIT ( 1'b0 ))
blk00000100 (
.C(clk),
- .D(sig000000f9),
- .Q(sig00000149)
+ .D(sig000000c5),
+ .Q(sig00000115)
);
FD #(
.INIT ( 1'b0 ))
blk00000101 (
.C(clk),
- .D(sig000000f8),
- .Q(sig00000148)
+ .D(sig000000c4),
+ .Q(sig00000114)
);
FD #(
.INIT ( 1'b0 ))
blk00000102 (
.C(clk),
- .D(sig000000f7),
- .Q(sig00000143)
+ .D(sig000000c3),
+ .Q(sig00000113)
);
FD #(
.INIT ( 1'b0 ))
blk00000103 (
.C(clk),
- .D(sig000000f2),
- .Q(sig00000142)
+ .D(sig000000c2),
+ .Q(sig00000112)
);
FD #(
.INIT ( 1'b0 ))
blk00000104 (
.C(clk),
- .D(sig000000e9),
- .Q(sig0000013a)
+ .D(sig000000c1),
+ .Q(sig0000010d)
);
FD #(
.INIT ( 1'b0 ))
blk00000105 (
.C(clk),
- .D(sig000000e8),
- .Q(sig00000139)
+ .D(sig000000bc),
+ .Q(sig00000102)
);
FD #(
.INIT ( 1'b0 ))
blk00000106 (
.C(clk),
- .D(sig000000e7),
- .Q(sig00000138)
+ .D(sig000000b1),
+ .Q(sig00000101)
);
FD #(
.INIT ( 1'b0 ))
blk00000107 (
.C(clk),
- .D(sig000000e6),
- .Q(sig00000137)
+ .D(sig000000e5),
+ .Q(sig00000136)
);
FD #(
.INIT ( 1'b0 ))
@@ -2168,720 +2120,316 @@ sig000000bc, sig000000bb, sig000000b5, sig000000aa, sig0000009f})
FD #(
.INIT ( 1'b0 ))
blk0000010b (
- .C(clk),
- .D(sig000000e1),
- .Q(sig00000132)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000010c (
- .C(clk),
- .D(sig000000e0),
- .Q(sig00000131)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000010d (
- .C(clk),
- .D(sig000000df),
- .Q(sig00000130)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000010e (
- .C(clk),
- .D(sig000000de),
- .Q(sig0000012f)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000010f (
- .C(clk),
- .D(sig000000dd),
- .Q(sig0000012e)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000110 (
- .C(clk),
- .D(sig000000dc),
- .Q(sig0000012d)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000111 (
- .C(clk),
- .D(sig000000db),
- .Q(sig0000012c)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000112 (
- .C(clk),
- .D(sig000000f1),
- .Q(sig00000141)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000113 (
- .C(clk),
- .D(sig000000f0),
- .Q(sig00000140)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000114 (
- .C(clk),
- .D(sig000000ef),
- .Q(sig0000013f)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000115 (
.C(clk),
.D(sig000000ee),
.Q(sig0000013e)
);
FD #(
.INIT ( 1'b0 ))
- blk00000116 (
+ blk0000010c (
.C(clk),
.D(sig000000ed),
.Q(sig0000013d)
);
FD #(
.INIT ( 1'b0 ))
- blk00000117 (
+ blk0000010d (
.C(clk),
.D(sig000000ec),
.Q(sig0000013c)
);
FD #(
.INIT ( 1'b0 ))
- blk00000118 (
+ blk0000010e (
.C(clk),
.D(sig000000eb),
.Q(sig0000013b)
);
FD #(
.INIT ( 1'b0 ))
- blk00000119 (
+ blk0000010f (
.C(clk),
.D(sig000000ea),
- .Q(sig00000136)
+ .Q(sig0000013a)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000110 (
+ .C(clk),
+ .D(sig000000e9),
+ .Q(sig00000139)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000111 (
+ .C(clk),
+ .D(sig000000e8),
+ .Q(sig00000138)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000112 (
+ .C(clk),
+ .D(sig000000e7),
+ .Q(sig00000137)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000113 (
+ .C(clk),
+ .D(sig000000e6),
+ .Q(sig00000132)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000114 (
+ .C(clk),
+ .D(sig000000e1),
+ .Q(sig00000131)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000115 (
+ .C(clk),
+ .D(sig000000a9),
+ .Q(sig00000100)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000116 (
+ .C(clk),
+ .D(sig000000a8),
+ .Q(sig000000ff)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000117 (
+ .C(clk),
+ .D(sig000000a7),
+ .Q(sig000000fe)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000118 (
+ .C(clk),
+ .D(sig000000a6),
+ .Q(sig000000fd)
+ );
+ FD #(
+ .INIT ( 1'b0 ))
+ blk00000119 (
+ .C(clk),
+ .D(sig000000a5),
+ .Q(sig000000fc)
);
FD #(
.INIT ( 1'b0 ))
blk0000011a (
.C(clk),
- .D(sig000000e5),
- .Q(sig0000012b)
+ .D(sig000000a3),
+ .Q(sig000000fb)
);
FD #(
.INIT ( 1'b0 ))
blk0000011b (
.C(clk),
- .D(sig000000da),
- .Q(sig0000012a)
+ .D(sig000000a2),
+ .Q(sig000000fa)
);
FD #(
.INIT ( 1'b0 ))
blk0000011c (
.C(clk),
- .D(sig000000d1),
- .Q(sig00000122)
+ .D(sig000000a1),
+ .Q(sig000000f9)
);
FD #(
.INIT ( 1'b0 ))
blk0000011d (
.C(clk),
- .D(sig000000d0),
- .Q(sig00000121)
+ .D(sig000000a0),
+ .Q(sig000000f8)
);
FD #(
.INIT ( 1'b0 ))
blk0000011e (
.C(clk),
- .D(sig000000cf),
- .Q(sig00000120)
+ .D(sig0000009f),
+ .Q(sig000000f7)
);
FD #(
.INIT ( 1'b0 ))
blk0000011f (
.C(clk),
- .D(sig000000ce),
- .Q(sig0000011f)
+ .D(sig0000009e),
+ .Q(sig000000f6)
);
FD #(
.INIT ( 1'b0 ))
blk00000120 (
.C(clk),
- .D(sig000000cc),
- .Q(sig0000011d)
+ .D(sig0000009d),
+ .Q(sig000000f5)
);
FD #(
.INIT ( 1'b0 ))
blk00000121 (
.C(clk),
- .D(sig000000cb),
- .Q(sig0000011c)
+ .D(sig0000009c),
+ .Q(sig000000f4)
);
FD #(
.INIT ( 1'b0 ))
blk00000122 (
.C(clk),
- .D(sig000000ca),
- .Q(sig0000011b)
+ .D(sig0000009b),
+ .Q(sig000000f3)
);
FD #(
.INIT ( 1'b0 ))
blk00000123 (
.C(clk),
- .D(sig000000c9),
- .Q(sig0000011a)
+ .D(sig0000009a),
+ .Q(sig000000f2)
);
FD #(
.INIT ( 1'b0 ))
blk00000124 (
.C(clk),
- .D(sig000000c8),
- .Q(sig00000119)
+ .D(sig00000098),
+ .Q(sig000000f1)
);
FD #(
.INIT ( 1'b0 ))
blk00000125 (
.C(clk),
- .D(sig000000c7),
- .Q(sig00000118)
+ .D(sig00000097),
+ .Q(sig000000f0)
);
FD #(
.INIT ( 1'b0 ))
blk00000126 (
.C(clk),
- .D(sig000000c6),
- .Q(sig00000117)
+ .D(sig00000096),
+ .Q(sig000000ef)
);
FD #(
.INIT ( 1'b0 ))
blk00000127 (
.C(clk),
- .D(sig000000c5),
- .Q(sig00000116)
+ .D(sig00000095),
+ .Q(p[16])
);
FD #(
.INIT ( 1'b0 ))
blk00000128 (
.C(clk),
- .D(sig000000c4),
- .Q(sig00000115)
+ .D(sig00000094),
+ .Q(p[15])
);
FD #(
.INIT ( 1'b0 ))
blk00000129 (
.C(clk),
- .D(sig000000c3),
- .Q(sig00000114)
+ .D(sig00000093),
+ .Q(p[14])
);
FD #(
.INIT ( 1'b0 ))
blk0000012a (
.C(clk),
- .D(sig000000d9),
- .Q(sig00000129)
+ .D(sig00000092),
+ .Q(p[13])
);
FD #(
.INIT ( 1'b0 ))
blk0000012b (
.C(clk),
- .D(sig000000d8),
- .Q(sig00000128)
+ .D(sig00000091),
+ .Q(p[12])
);
FD #(
.INIT ( 1'b0 ))
blk0000012c (
.C(clk),
- .D(sig000000d7),
- .Q(sig00000127)
+ .D(sig00000090),
+ .Q(p[11])
);
FD #(
.INIT ( 1'b0 ))
blk0000012d (
.C(clk),
- .D(sig000000d6),
- .Q(sig00000126)
+ .D(sig0000008f),
+ .Q(p[10])
);
FD #(
.INIT ( 1'b0 ))
blk0000012e (
.C(clk),
- .D(sig000000d5),
- .Q(sig00000125)
+ .D(sig000000b0),
+ .Q(p[9])
);
FD #(
.INIT ( 1'b0 ))
blk0000012f (
.C(clk),
- .D(sig000000d4),
- .Q(sig00000124)
+ .D(sig000000af),
+ .Q(p[8])
);
FD #(
.INIT ( 1'b0 ))
blk00000130 (
.C(clk),
- .D(sig000000d3),
- .Q(sig00000123)
+ .D(sig000000ae),
+ .Q(p[7])
);
FD #(
.INIT ( 1'b0 ))
blk00000131 (
.C(clk),
- .D(sig000000d2),
- .Q(sig0000011e)
+ .D(sig000000ad),
+ .Q(p[6])
);
FD #(
.INIT ( 1'b0 ))
blk00000132 (
.C(clk),
- .D(sig000000cd),
- .Q(sig00000113)
+ .D(sig000000ac),
+ .Q(p[5])
);
FD #(
.INIT ( 1'b0 ))
blk00000133 (
.C(clk),
- .D(sig000000c2),
- .Q(sig00000112)
+ .D(sig000000ab),
+ .Q(p[4])
);
FD #(
.INIT ( 1'b0 ))
blk00000134 (
.C(clk),
- .D(sig000000ba),
- .Q(sig00000111)
+ .D(sig000000aa),
+ .Q(p[3])
);
FD #(
.INIT ( 1'b0 ))
blk00000135 (
.C(clk),
- .D(sig000000b9),
- .Q(sig00000110)
+ .D(sig000000a4),
+ .Q(p[2])
);
FD #(
.INIT ( 1'b0 ))
blk00000136 (
.C(clk),
- .D(sig000000b8),
- .Q(sig0000010f)
+ .D(sig00000099),
+ .Q(p[1])
);
FD #(
.INIT ( 1'b0 ))
blk00000137 (
.C(clk),
- .D(sig000000b7),
- .Q(sig0000010e)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000138 (
- .C(clk),
- .D(sig000000b6),
- .Q(sig0000010d)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000139 (
- .C(clk),
- .D(sig000000b4),
- .Q(sig0000010c)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000013a (
- .C(clk),
- .D(sig000000b3),
- .Q(sig0000010b)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000013b (
- .C(clk),
- .D(sig000000b2),
- .Q(sig0000010a)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000013c (
- .C(clk),
- .D(sig000000b1),
- .Q(sig00000109)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000013d (
- .C(clk),
- .D(sig000000b0),
- .Q(sig00000108)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000013e (
- .C(clk),
- .D(sig000000af),
- .Q(sig00000107)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000013f (
- .C(clk),
- .D(sig000000ae),
- .Q(sig00000106)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000140 (
- .C(clk),
- .D(sig000000ad),
- .Q(sig00000105)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000141 (
- .C(clk),
- .D(sig000000ac),
- .Q(sig00000104)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000142 (
- .C(clk),
- .D(sig000000ab),
- .Q(sig00000103)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000143 (
- .C(clk),
- .D(sig000000a9),
- .Q(sig00000102)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000144 (
- .C(clk),
- .D(sig000000a8),
- .Q(sig00000101)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000145 (
- .C(clk),
- .D(sig000000a7),
- .Q(sig00000100)
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000146 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000a4),
- .Q(sig00000007)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000147 (
- .C(clk),
- .D(sig00000007),
- .Q(p[14])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000148 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000a6),
- .Q(sig00000009)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000149 (
- .C(clk),
- .D(sig00000009),
- .Q(p[16])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk0000014a (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000a5),
- .Q(sig00000008)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000014b (
- .C(clk),
- .D(sig00000008),
- .Q(p[15])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk0000014c (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000a3),
- .Q(sig00000006)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000014d (
- .C(clk),
- .D(sig00000006),
- .Q(p[13])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk0000014e (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000a2),
- .Q(sig00000005)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000014f (
- .C(clk),
- .D(sig00000005),
- .Q(p[12])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000150 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000a1),
- .Q(sig00000004)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000151 (
- .C(clk),
- .D(sig00000004),
- .Q(p[11])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000152 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000a0),
- .Q(sig00000003)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000153 (
- .C(clk),
- .D(sig00000003),
- .Q(p[10])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000154 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000c1),
- .Q(sig00000011)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000155 (
- .C(clk),
- .D(sig00000011),
- .Q(p[9])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000156 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000c0),
- .Q(sig00000010)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000157 (
- .C(clk),
- .D(sig00000010),
- .Q(p[8])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000158 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000bf),
- .Q(sig0000000f)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000159 (
- .C(clk),
- .D(sig0000000f),
- .Q(p[7])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk0000015a (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000be),
- .Q(sig0000000e)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000015b (
- .C(clk),
- .D(sig0000000e),
- .Q(p[6])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk0000015c (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000bd),
- .Q(sig0000000d)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000015d (
- .C(clk),
- .D(sig0000000d),
- .Q(p[5])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk0000015e (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000bc),
- .Q(sig0000000c)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk0000015f (
- .C(clk),
- .D(sig0000000c),
- .Q(p[4])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000160 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000bb),
- .Q(sig0000000b)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000161 (
- .C(clk),
- .D(sig0000000b),
- .Q(p[3])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000162 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000b5),
- .Q(sig0000000a)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000163 (
- .C(clk),
- .D(sig0000000a),
- .Q(p[2])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000164 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig000000aa),
- .Q(sig00000002)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000165 (
- .C(clk),
- .D(sig00000002),
- .Q(p[1])
- );
- SRL16 #(
- .INIT ( 16'h0000 ))
- blk00000166 (
- .A0(sig00000012),
- .A1(sig00000012),
- .A2(sig00000012),
- .A3(sig00000012),
- .CLK(clk),
- .D(sig0000009f),
- .Q(sig00000001)
- );
- FD #(
- .INIT ( 1'b0 ))
- blk00000167 (
- .C(clk),
- .D(sig00000001),
+ .D(sig0000008e),
.Q(p[0])
);
diff --git a/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.xco b/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.xco
index 2273be6..13cf374 100644
--- a/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.xco
+++ b/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.xco
@@ -1,7 +1,7 @@
##############################################################
#
# Xilinx Core Generator version 13.2
-# Date: Mon Oct 24 22:04:01 2011
+# Date: Fri Oct 28 08:30:26 2011
#
##############################################################
#
@@ -49,7 +49,7 @@ CSET multtype=Parallel_Multiplier
CSET optgoal=Speed
CSET outputwidthhigh=47
CSET outputwidthlow=0
-CSET pipestages=3
+CSET pipestages=2
CSET portatype=Signed
CSET portawidth=24
CSET portbtype=Signed
@@ -65,4 +65,4 @@ CSET zerodetect=false
MISC pkg_timestamp=2011-06-21T06:26:54.000Z
# END Extra information
GENERATE
-# CRC: fd22ef14
+# CRC: efe4d30e
diff --git a/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.xise b/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.xise
index 1efcbc5..60829e7 100644
--- a/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.xise
+++ b/verilog/sd2snes_cx4/ipcore_dir/cx4_mul.xise
@@ -50,8 +50,8 @@
-
-
+
+
diff --git a/verilog/sd2snes_cx4/main.v b/verilog/sd2snes_cx4/main.v
index 93c69dd..182b861 100644
--- a/verilog/sd2snes_cx4/main.v
+++ b/verilog/sd2snes_cx4/main.v
@@ -299,7 +299,8 @@ cx4 snes_cx4 (
.BUS_DI(CX4_DINr),
.BUS_ADDR(CX4_ADDR),
.BUS_RRQ(CX4_RRQ),
- .BUS_RDY(CX4_RDY)
+ .BUS_RDY(CX4_RDY),
+ .cx4_active(cx4_active)
);
parameter MODE_SNES = 1'b0;
@@ -359,7 +360,7 @@ always @(posedge CLK2) begin
end
wire IS_CART = IS_ROM | IS_SAVERAM | IS_WRITABLE;
-wire ASSERT_SNES_ADDR = SNES_CPU_CLK & NEED_SNES_ADDRr & IS_CART;
+wire ASSERT_SNES_ADDR = SNES_CPU_CLK & NEED_SNES_ADDRr & IS_CART & ~cx4_active;
assign ROM_ADDR = (SD_DMA_TO_ROM) ? MCU_ADDR[23:1] : (ASSERT_SNES_ADDR) ? MAPPED_SNES_ADDR[23:1] : ROM_ADDRr[23:1];
assign ROM_ADDR0 = (SD_DMA_TO_ROM) ? MCU_ADDR[0] : (ASSERT_SNES_ADDR) ? MAPPED_SNES_ADDR[0] : ROM_ADDRr[0];
@@ -374,14 +375,14 @@ assign MCU_RDY = RQ_MCU_RDYr;
always @(posedge CLK2) begin
if(MCU_RRQ) begin
MCU_RD_PENDr <= 1'b1;
- RQ_MCU_RDYr <= 1'b0;
+ RQ_MCU_RDYr <= 1'b0;
end else if(MCU_WRQ) begin
MCU_WR_PENDr <= 1'b1;
- RQ_MCU_RDYr <= 1'b0;
+ RQ_MCU_RDYr <= 1'b0;
end else if(STATE & (ST_MCU_RD_END | ST_MCU_WR_END)) begin
MCU_RD_PENDr <= 1'b0;
- MCU_WR_PENDr <= 1'b0;
- RQ_MCU_RDYr <= 1'b1;
+ MCU_WR_PENDr <= 1'b0;
+ RQ_MCU_RDYr <= 1'b1;
end
end
@@ -392,143 +393,144 @@ assign CX4_RDY = RQ_CX4_RDYr;
always @(posedge CLK2) begin
if(CX4_RRQ) begin
CX4_RD_PENDr <= 1'b1;
- RQ_CX4_RDYr <= 1'b0;
- end else if(STATE == ST_CX4_RD_WAIT && ST_MEM_DELAYr == 4'h0) begin
+ RQ_CX4_RDYr <= 1'b0;
+ end else if(STATE == ST_CX4_RD_END) begin
CX4_RD_PENDr <= 1'b0;
- RQ_CX4_RDYr <= 1'b1;
+ RQ_CX4_RDYr <= 1'b1;
end
end
reg snes_wr_cycle;
always @(posedge CLK2) begin
- if(SNES_cycle_start & IS_CART) begin
+ if(SNES_cycle_start & IS_CART & ~cx4_active) begin
STATE <= ST_SNES_RD_ADDR;
- end else if(SNES_WR_start & IS_CART) begin
+ end else if(SNES_WR_start & IS_CART & ~cx4_active) begin
STATE <= ST_SNES_WR_ADDR;
end else begin
case(STATE)
- ST_IDLE: begin
- ROM_ADDRr <= MAPPED_SNES_ADDR;
- if(CX4_RRQ | CX4_RD_PENDr) begin
- ROM_ADDRr <= CX4_ADDR;
- STATE <= ST_CX4_RD_WAIT;
- ST_MEM_DELAYr <= ROM_RD_WAIT_CX4;
+ ST_IDLE: begin
+ ROM_ADDRr <= MAPPED_SNES_ADDR;
+ if(CX4_RD_PENDr) begin
+ STATE <= ST_CX4_RD_WAIT;
+ ROM_ADDRr <= CX4_ADDR;
+ ST_MEM_DELAYr <= ROM_RD_WAIT_CX4;
+ end
+ else if(~cx4_active) begin
+ if(MCU_RD_PENDr) STATE <= ST_MCU_RD_ADDR;
+ else if(MCU_WR_PENDr) STATE <= ST_MCU_WR_ADDR;
+ else STATE <= ST_IDLE;
end
- else if(MCU_RD_PENDr) STATE <= ST_MCU_RD_ADDR;
- else if(MCU_WR_PENDr) STATE <= ST_MCU_WR_ADDR;
else STATE <= ST_IDLE;
- end
- ST_SNES_RD_ADDR: begin
- STATE <= ST_SNES_RD_WAIT;
- ST_MEM_DELAYr <= ROM_RD_WAIT;
- end
- ST_SNES_RD_WAIT: begin
- ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
- if(ST_MEM_DELAYr == 4'h0) STATE <= ST_SNES_RD_END;
- else STATE <= ST_SNES_RD_WAIT;
- if(ROM_ADDR0) SNES_DINr <= ROM_DATA[7:0];
- else SNES_DINr <= ROM_DATA[15:8];
- end
- ST_SNES_RD_END: begin
- STATE <= ST_IDLE;
- if(ROM_ADDR0) SNES_DINr <= ROM_DATA[7:0];
- else SNES_DINr <= ROM_DATA[15:8];
- end
+ end
+ ST_SNES_RD_ADDR: begin
+ STATE <= ST_SNES_RD_WAIT;
+ ST_MEM_DELAYr <= ROM_RD_WAIT;
+ end
+ ST_SNES_RD_WAIT: begin
+ ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
+ if(ST_MEM_DELAYr == 4'h0) STATE <= ST_SNES_RD_END;
+ else STATE <= ST_SNES_RD_WAIT;
+ if(ROM_ADDR0) SNES_DINr <= ROM_DATA[7:0];
+ else SNES_DINr <= ROM_DATA[15:8];
+ end
+ ST_SNES_RD_END: begin
+ STATE <= ST_IDLE;
+ if(ROM_ADDR0) SNES_DINr <= ROM_DATA[7:0];
+ else SNES_DINr <= ROM_DATA[15:8];
+ end
ST_SNES_WR_ADDR: begin
ROM_WEr <= (!IS_WRITABLE);
snes_wr_cycle <= 1'b1;
- STATE <= ST_SNES_WR_WAIT1;
- ST_MEM_DELAYr <= ROM_WR_WAIT1;
- end
- ST_SNES_WR_WAIT1: begin
- ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
- if(ST_MEM_DELAYr == 4'h0) STATE <= ST_SNES_WR_DATA;
- else STATE <= ST_SNES_WR_WAIT1;
- end
- ST_SNES_WR_DATA: begin
+ STATE <= ST_SNES_WR_WAIT1;
+ ST_MEM_DELAYr <= ROM_WR_WAIT1;
+ end
+ ST_SNES_WR_WAIT1: begin
+ ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
+ if(ST_MEM_DELAYr == 4'h0) STATE <= ST_SNES_WR_DATA;
+ else STATE <= ST_SNES_WR_WAIT1;
+ end
+ ST_SNES_WR_DATA: begin
ROM_DOUTr <= SNES_DATA;
- ST_MEM_DELAYr <= ROM_WR_WAIT2;
- STATE <= ST_SNES_WR_WAIT2;
- end
+ ST_MEM_DELAYr <= ROM_WR_WAIT2;
+ STATE <= ST_SNES_WR_WAIT2;
+ end
ST_SNES_WR_WAIT2: begin
- ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
- if(ST_MEM_DELAYr == 4'h0) STATE <= ST_SNES_WR_END;
- else STATE <= ST_SNES_WR_WAIT2;
- end
- ST_SNES_WR_END: begin
- STATE <= ST_IDLE;
- ROM_WEr <= 1'b1;
- snes_wr_cycle <= 1'b0;
- end
- ST_MCU_RD_ADDR: begin
- ROM_ADDRr <= MCU_ADDR;
- STATE <= ST_MCU_RD_WAIT;
- ST_MEM_DELAYr <= ROM_RD_WAIT_MCU;
- end
- ST_MCU_RD_WAIT: begin
- ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
- if(ST_MEM_DELAYr == 4'h0) begin
- STATE <= ST_MCU_RD_WAIT2;
- ST_MEM_DELAYr <= 4'h2;
+ ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
+ if(ST_MEM_DELAYr == 4'h0) STATE <= ST_SNES_WR_END;
+ else STATE <= ST_SNES_WR_WAIT2;
end
- else STATE <= ST_MCU_RD_WAIT;
- if(ROM_ADDR0) MCU_DINr <= ROM_DATA[7:0];
- else MCU_DINr <= ROM_DATA[15:8];
- end
- ST_MCU_RD_WAIT2: begin
- ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
- if(ST_MEM_DELAYr == 4'h0) begin
- STATE <= ST_MCU_RD_END;
- end else STATE <= ST_MCU_RD_WAIT2;
- end
- ST_MCU_RD_END: begin
- STATE <= ST_IDLE;
- end
- ST_MCU_WR_ADDR: begin
- ROM_ADDRr <= MCU_ADDR;
- STATE <= ST_MCU_WR_WAIT;
- ST_MEM_DELAYr <= ROM_WR_WAIT_MCU;
- ROM_DOUTr <= MCU_DOUT;
- ROM_WEr <= 1'b0;
- end
- ST_MCU_WR_WAIT: begin
- ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
- if(ST_MEM_DELAYr == 4'h0) begin
- ROM_WEr <= 1'b1;
- STATE <= ST_MCU_WR_WAIT2;
- ST_MEM_DELAYr <= 4'h2;
+ ST_SNES_WR_END: begin
+ STATE <= ST_IDLE;
+ ROM_WEr <= 1'b1;
+ snes_wr_cycle <= 1'b0;
end
- else STATE <= ST_MCU_WR_WAIT;
+ ST_MCU_RD_ADDR: begin
+ ROM_ADDRr <= MCU_ADDR;
+ STATE <= ST_MCU_RD_WAIT;
+ ST_MEM_DELAYr <= ROM_RD_WAIT_MCU;
+ end
+ ST_MCU_RD_WAIT: begin
+ ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
+ if(ST_MEM_DELAYr == 4'h0) begin
+ STATE <= ST_MCU_RD_WAIT2;
+ ST_MEM_DELAYr <= 4'h2;
+ end
+ else STATE <= ST_MCU_RD_WAIT;
+ if(ROM_ADDR0) MCU_DINr <= ROM_DATA[7:0];
+ else MCU_DINr <= ROM_DATA[15:8];
end
- ST_MCU_WR_WAIT2: begin
- ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
- if(ST_MEM_DELAYr == 4'h0) begin
- STATE <= ST_MCU_WR_END;
- end else STATE <= ST_MCU_WR_WAIT2;
- end
- ST_MCU_WR_END: begin
- STATE <= ST_IDLE;
- end
-
- ST_CX4_RD_ADDR: begin
- ROM_ADDRr <= CX4_ADDR;
- STATE <= ST_CX4_RD_WAIT;
- ST_MEM_DELAYr <= ROM_RD_WAIT_CX4;
- end
- ST_CX4_RD_WAIT: begin
- ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
- if(ST_MEM_DELAYr == 4'h0) begin
+ ST_MCU_RD_WAIT2: begin
+ ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
+ if(ST_MEM_DELAYr == 4'h0) begin
+ STATE <= ST_MCU_RD_END;
+ end else STATE <= ST_MCU_RD_WAIT2;
+ end
+ ST_MCU_RD_END: begin
STATE <= ST_IDLE;
end
- else STATE <= ST_CX4_RD_WAIT;
- if(ROM_ADDR0) CX4_DINr <= ROM_DATA[7:0];
- else CX4_DINr <= ROM_DATA[15:8];
+ ST_MCU_WR_ADDR: begin
+ ROM_ADDRr <= MCU_ADDR;
+ STATE <= ST_MCU_WR_WAIT;
+ ST_MEM_DELAYr <= ROM_WR_WAIT_MCU;
+ ROM_DOUTr <= MCU_DOUT;
+ ROM_WEr <= 1'b0;
+ end
+ ST_MCU_WR_WAIT: begin
+ ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
+ if(ST_MEM_DELAYr == 4'h0) begin
+ ROM_WEr <= 1'b1;
+ STATE <= ST_MCU_WR_WAIT2;
+ ST_MEM_DELAYr <= 4'h2;
+ end
+ else STATE <= ST_MCU_WR_WAIT;
end
- ST_CX4_RD_END: begin
- STATE <= ST_IDLE;
- end
- endcase
+ ST_MCU_WR_WAIT2: begin
+ ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
+ if(ST_MEM_DELAYr == 4'h0) begin
+ STATE <= ST_MCU_WR_END;
+ end else STATE <= ST_MCU_WR_WAIT2;
+ end
+ ST_MCU_WR_END: begin
+ STATE <= ST_IDLE;
+ end
+
+ ST_CX4_RD_ADDR: begin
+ ROM_ADDRr <= CX4_ADDR;
+ STATE <= ST_CX4_RD_WAIT;
+ ST_MEM_DELAYr <= ROM_RD_WAIT_CX4;
+ end
+ ST_CX4_RD_WAIT: begin
+ ST_MEM_DELAYr <= ST_MEM_DELAYr - 4'h1;
+ if(ST_MEM_DELAYr == 4'h0) STATE <= ST_CX4_RD_END;
+ else STATE <= ST_CX4_RD_WAIT;
+ if(ROM_ADDR0) CX4_DINr <= ROM_DATA[7:0];
+ else CX4_DINr <= ROM_DATA[15:8];
+ end
+ ST_CX4_RD_END: begin
+ STATE <= ST_IDLE;
+ end
+ endcase
end
end
diff --git a/verilog/sd2snes_cx4/sd2snes_cx4.xise b/verilog/sd2snes_cx4/sd2snes_cx4.xise
index 82ca3c5..a182ee5 100644
--- a/verilog/sd2snes_cx4/sd2snes_cx4.xise
+++ b/verilog/sd2snes_cx4/sd2snes_cx4.xise
@@ -238,7 +238,7 @@
-
+
@@ -320,7 +320,7 @@
-
+
@@ -366,8 +366,8 @@
-
-
+
+