Index: /sandbox/MultiChannelUSB/Paella.v
===================================================================
--- /sandbox/MultiChannelUSB/Paella.v	(revision 153)
+++ /sandbox/MultiChannelUSB/Paella.v	(revision 154)
@@ -93,9 +93,6 @@
 	wire	[4*12-1:0]	int_mux_data [N-1:0];
 
-	wire			amp_flag1 [N-1:0];
-	wire	[11:0]	amp_data1 [N-1:0];
-
-	wire			amp_flag2 [N-1:0];
-	wire	[11:0]	amp_data2 [N-1:0];
+	wire			amp_flag [N-1:0];
+	wire	[11:0]	amp_data [N-1:0];
 
 	wire			cnt_good [N-1:0];
@@ -160,6 +157,6 @@
 			adc_data[3], adc_data[2], adc_data[1], adc_data[0]}));
 
-	wire	[15:0]	cfg_bits [31:0];
-	wire	[511:0]	int_cfg_bits;
+	wire	[15:0]		cfg_bits [63:0];
+	wire	[1023:0]	int_cfg_bits;
 
 	wire	[39:0]	cfg_mux_selector;
@@ -182,5 +179,5 @@
 
 	generate
-		for (j = 0; j < 32; j = j + 1)
+		for (j = 0; j < 64; j = j + 1)
 		begin : CONFIGURATION_OUTPUT
 			assign cfg_bits[j] = int_cfg_bits[j*16+15:j*16];
@@ -193,5 +190,5 @@
 		.bus_ssel(bus_ssel[0]),
 		.bus_wren(bus_wren),
-		.bus_addr(bus_addr[4:0]),
+		.bus_addr(bus_addr[5:0]),
 		.bus_mosi(bus_mosi),
 		.bus_miso(bus_miso[0]),
@@ -203,5 +200,5 @@
 		begin : MUX_DATA
 			assign int_mux_data[j] = {
-				amp_data2[j],
+				amp_data[j],
 				clp_data[j],
 				cic_data[j][19:8],
@@ -283,29 +280,14 @@
 		for (j = 0; j < 3; j = j + 1)
 		begin : DECONV_CHAIN
-/*
-			deconv #(.shift(22), .width(20), .widthr(12)) deconv_unit (
-				.clock(sys_clock),
-				.frame(sys_frame),
-				.reset(1'b0),
-				.del_data({6'd14, 6'd14, 6'd14, 6'd14}),
-				.amp_data({6'd17, 6'd17, 6'd17, 6'd17}),
-				.tau_data({16'd16320, 16'd16320, 16'd16320, 16'd16320}),
-//				.del_data({cfg_bits[16][5:0], cfg_bits[15][13:8], cfg_bits[15][5:0]}),
-//				.amp_data({cfg_bits[18][7:0], cfg_bits[17][15:8], cfg_bits[17][7:0]}),
-//				.tau_data({cfg_bits[21], cfg_bits[20], cfg_bits[19]}),
-				.inp_data({
-					cic_data[j*4+3][19:0], cic_data[j*4+2][19:0],
-					cic_data[j*4+1][19:0], cic_data[j*4+0][19:0]}),
-				.out_data({
-					dec_data[j*4+3], dec_data[j*4+2],
-					dec_data[j*4+1], dec_data[j*4+0]}));
-*/
+
 			clip #(.shift(22), .width(20), .widthr(12)) clip_unit (
 				.clock(sys_clock),
 				.frame(sys_frame),
 				.reset(1'b0),
-				.del_data({6'd12, 6'd12, 6'd12, 6'd12}),
+//				.del_data({6'd14, 6'd14, 6'd14, 6'd14}),
+				.del_data({cfg_bits[39+8*j][5:0], cfg_bits[37+8*j][5:0], cfg_bits[35+8*j][5:0], cfg_bits[33+8*j][5:0]}),
 				.amp_data({6'd17, 6'd17, 6'd17, 6'd17}),
-				.tau_data({16'd16560, 16'd16560, 16'd16560, 16'd16560}), // exp(-12/240)*1024*17
+//				.tau_data({16'd17193, 16'd17193, 16'd17193, 16'd17193}), /* exp(-14/1125)*1024*17 */
+				.tau_data({cfg_bits[38+8*j], cfg_bits[36+8*j], cfg_bits[34+8*j], cfg_bits[32+8*j]}),
 				.inp_data({
 					cic_data[j*4+3][19:0], cic_data[j*4+2][19:0],
@@ -315,19 +297,4 @@
 					clp_data[j*4+1], clp_data[j*4+0]}));
 
-/*
-			clip #(.shift(22), .width(22), .widthr(12)) clip_unit (
-				.clock(sys_clock),
-				.frame(sys_frame),
-				.reset(1'b0),
-				.del_data({6'd18, 6'd18, 6'd18, 6'd18}),
-				.amp_data({6'd5, 6'd5, 6'd5, 6'd5}),
-				.tau_data({16'd4932, 16'd4932, 16'd4932, 16'd4932}), // exp(-18/480)*1024*5
-				.inp_data({
-					cic_data[j*4+3][21:0], cic_data[j*4+2][21:0],
-					cic_data[j*4+1][21:0], cic_data[j*4+0][21:0]}),
-				.out_data({
-					clp_data[j*4+3], clp_data[j*4+2], 
-					clp_data[j*4+1], clp_data[j*4+0]}));
-*/
 		end
 	endgenerate
@@ -338,15 +305,5 @@
 
 			assign sys_data[j] = (cfg_bits[1][j]) ? (adc_data[j] ^ 12'hfff) : (adc_data[j]);
-/*
-			amplitude #(.width(12)) amplitude_unit_1 (
-				.clock(sys_clock),
-				.frame(sys_frame),
-				.reset(cfg_bits[0][2+j]),
-				.cfg_data({1'b0, 12'd0, 12'd5}),
-//				.cfg_data({cfg_bits[7+2*j][12:0], cfg_bits[6+2*j][11:0]}),
-				.inp_data(dec_data[j]),
-				.out_flag(amp_flag1[j]),
-				.out_data(amp_data1[j]));
-*/
+
 			amplitude #(.width(12)) amplitude_unit_2 (
 				.clock(sys_clock),
@@ -357,6 +314,6 @@
 //				.inp_data(dec_data[j]),
 				.inp_data(clp_data[j]),
-				.out_flag(amp_flag2[j]),
-				.out_data(amp_data2[j]));
+				.out_flag(amp_flag[j]),
+				.out_data(amp_data[j]));
 		end
 	endgenerate
@@ -366,6 +323,6 @@
 		.frame(sys_frame),
 		.reset(cfg_bits[0][5]),
-		.hst_good((amp_flag1[0]) & (cnt_good[0]) & (cfg_bits[13][1])),
-		.hst_data(amp_data1[0]),
+		.hst_good((amp_flag[0]) & (cnt_good[0]) & (cfg_bits[13][1])),
+		.hst_data(amp_data[0]),
 /*
 		.hst_good((amp_flag[j]) & (cnt_good[j]) & (cfg_bits[13][1])),
Index: /sandbox/MultiChannelUSB/clip.v
===================================================================
--- /sandbox/MultiChannelUSB/clip.v	(revision 153)
+++ /sandbox/MultiChannelUSB/clip.v	(revision 154)
@@ -104,5 +104,5 @@
 		- {2'b0, mul_data_wire1};
 
-	assign out_data_wire = 
+	assign out_data_wire = add_data_wire[width3-1] ? {(widthr){1'b0}} :
 		  add_data_wire[shift+widthr-1:shift]
 		+ {{(widthr-1){add_data_wire[width3-1]}}, add_data_wire[shift-1]};
Index: /sandbox/MultiChannelUSB/configuration.v
===================================================================
--- /sandbox/MultiChannelUSB/configuration.v	(revision 153)
+++ /sandbox/MultiChannelUSB/configuration.v	(revision 154)
@@ -4,5 +4,5 @@
 
 		input	wire			bus_ssel, bus_wren,
-		input	wire	[4:0]	bus_addr,
+		input	wire	[5:0]	bus_addr,
 		input	wire	[15:0]	bus_mosi,
 
@@ -10,12 +10,12 @@
 		output	wire			bus_busy,
 		
-		output  wire	[511:0]	cfg_bits
+		output  wire	[1023:0]	cfg_bits
 	);
 
-	wire 	[31:0]	int_ssel_wire;
+	wire 	[63:0]	int_ssel_wire;
 	wire	[15:0]	int_miso_wire;
 	reg		[15:0]	int_miso_reg;
 
-	wire 	[511:0]	int_bits_wire;
+	wire 	[1023:0]	int_bits_wire;
 
 	integer i;
@@ -23,5 +23,5 @@
 
 	generate
-		for (j = 0; j < 32; j = j + 1)
+		for (j = 0; j < 64; j = j + 1)
 		begin : BUS_OUTPUT
 			lpm_ff #(
@@ -43,8 +43,8 @@
 
 	lpm_mux #(
-		.lpm_size(32),
+		.lpm_size(64),
 		.lpm_type("LPM_MUX"),
 		.lpm_width(16),
-		.lpm_widths(5)) bus_miso_mux_unit (
+		.lpm_widths(6)) bus_miso_mux_unit (
 		.sel(bus_addr),
 		.data(int_bits_wire),
@@ -53,7 +53,7 @@
 
 	lpm_decode #(
-		.lpm_decodes(32),
+		.lpm_decodes(64),
 		.lpm_type("LPM_DECODE"),
-		.lpm_width(5)) lpm_decode_unit (
+		.lpm_width(6)) lpm_decode_unit (
 		.data(bus_addr),
 		.eq(int_ssel_wire),
