Index: /sandbox/MultiChannelUSB/Paella.v
===================================================================
--- /sandbox/MultiChannelUSB/Paella.v	(revision 148)
+++ /sandbox/MultiChannelUSB/Paella.v	(revision 149)
@@ -7,4 +7,6 @@
 		input	wire			ADC_FCO,
 		input	wire	[5:0]	ADC_D,
+
+		output	wire	[3:0]	PWM,
 
 		output	wire	[1:0]	SPI_SEL,
@@ -201,6 +203,6 @@
 		begin : MUX_DATA
 			assign int_mux_data[j] = {
-				clp_data[j][11:0],
-				dec_data[j][11:0],
+				amp_data2[j],
+				clp_data[j],
 				cic_data[j][19:8],
 				sys_data[j]};
@@ -281,5 +283,5 @@
 		for (j = 0; j < 3; j = j + 1)
 		begin : DECONV_CHAIN
-	
+/*
 			deconv #(.shift(22), .width(20), .widthr(12)) deconv_unit (
 				.clock(sys_clock),
@@ -298,13 +300,12 @@
 					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'd14, 6'd14, 6'd14, 6'd14}),
+				.del_data({6'd12, 6'd12, 6'd12, 6'd12}),
 				.amp_data({6'd17, 6'd17, 6'd17, 6'd17}),
-				.tau_data({16'd17166, 16'd17166, 16'd17166, 16'd17166}),
+				.tau_data({16'd16560, 16'd16560, 16'd16560, 16'd16560}), // exp(-12/240)*1024*17
 				.inp_data({
 					cic_data[j*4+3][19:0], cic_data[j*4+2][19:0],
@@ -313,4 +314,20 @@
 					clp_data[j*4+3], clp_data[j*4+2], 
 					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
@@ -321,5 +338,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),
@@ -331,9 +348,9 @@
 				.out_flag(amp_flag1[j]),
 				.out_data(amp_data1[j]));
-
+*/
 			amplitude #(.width(12)) amplitude_unit_2 (
 				.clock(sys_clock),
 				.frame(sys_frame),
-				.reset(cfg_bits[0][2+j]),
+				.reset(1'b0),
 				.cfg_data({1'b0, 12'd0, 12'd5}),
 //				.cfg_data({cfg_bits[7+2*j][12:0], cfg_bits[6+2*j][11:0]}),
@@ -407,4 +424,9 @@
 		.bus_mosi(bus_mosi),
 		.bus_busy(bus_busy[12]));
+
+	pwm pwm_unit(
+		.clock(sys_clock),
+		.cfg_data({cfg_bits[31], cfg_bits[30], cfg_bits[29]}),
+		.out_data(PWM));
 
 	generate
