diff --git a/openlane/user_proj_example/config.json b/openlane/user_proj_example/config.json
index c0ac816..1e5b206 100644
--- a/openlane/user_proj_example/config.json
+++ b/openlane/user_proj_example/config.json
@@ -2,7 +2,7 @@
     "PDK"                      : "sky130A",
     "STD_CELL_LIBRARY"         : "sky130_fd_sc_hd",
     "CARAVEL_ROOT"             : "../../caravel",
-    "CLOCK_NET"                : "main_module.clk",
+    "CLOCK_NET"                : "main_module_ins.wb_clk_i",
     "CLOCK_PERIOD"             : "10",
     "CLOCK_PORT"               : "wb_clk_i",
     "DESIGN_IS_CORE"           : "0",
diff --git a/openlane/user_proj_example/config.tcl b/openlane/user_proj_example/config.tcl
index b835ad6..30f4576 100755
--- a/openlane/user_proj_example/config.tcl
+++ b/openlane/user_proj_example/config.tcl
@@ -36,7 +36,7 @@
 set ::env(DESIGN_IS_CORE) 0
 
 set ::env(CLOCK_PORT) "wb_clk_i"
-set ::env(CLOCK_NET) "main_module.clk"
+set ::env(CLOCK_NET) "wb_clk_i"
 set ::env(CLOCK_PERIOD) "10"
 
 set ::env(FP_SIZING) absolute
diff --git a/openlane/user_project_wrapper/config.tcl b/openlane/user_project_wrapper/config.tcl
index 5006ced..7f5724e 100755
--- a/openlane/user_project_wrapper/config.tcl
+++ b/openlane/user_project_wrapper/config.tcl
@@ -38,8 +38,8 @@
 	$script_dir/../../verilog/rtl/user_project_wrapper.v"
 
 ## Clock configurations
-set ::env(CLOCK_PORT) "user_clock2"
-set ::env(CLOCK_NET) "mprj.clk"
+set ::env(CLOCK_PORT) "wb_clk_i"
+set ::env(CLOCK_NET) "mprj.wbs_cyc_i"
 
 set ::env(CLOCK_PERIOD) "10"
 
diff --git a/verilog/rtl/controller/control_module.v b/verilog/rtl/controller/control_module.v
index 67ded59..798d42d 100644
--- a/verilog/rtl/controller/control_module.v
+++ b/verilog/rtl/controller/control_module.v
@@ -33,7 +33,7 @@
     parameter OUTPUTS = 32,
     parameter INPUTS = 32,
     parameter INSTRUCTION_SIZE = 3,
-    parameter SIZE_WORD_REGISTER = 5
+    parameter SIZE_WORD_REGISTER = 3
 
 )
 (
diff --git a/verilog/rtl/controller/logic_control.v b/verilog/rtl/controller/logic_control.v
index fe6a5a9..eccd0e9 100644
--- a/verilog/rtl/controller/logic_control.v
+++ b/verilog/rtl/controller/logic_control.v
@@ -30,7 +30,7 @@
     parameter STATUS_SIGNALS = 6,
     parameter DATA_WIDTH = 8,
     parameter INSTRUCTION_SIZE = 3,
-    parameter SIZE_WORD_REGISTER = 5,
+    parameter SIZE_WORD_REGISTER = 3,
     parameter INSTRUCCION_INPUT_START = INPUT_DATA_SIZE - 1 , //51 
     parameter INSTRUCCION_INPUT_END = INSTRUCCION_INPUT_START - (INSTRUCTION_SIZE - 1), // 49
     parameter REGISTER_INPUT_START = INSTRUCCION_INPUT_END -1, // 48 
diff --git a/verilog/rtl/controller/pmu.v b/verilog/rtl/controller/pmu.v
index 47060b1..8d9eba7 100644
--- a/verilog/rtl/controller/pmu.v
+++ b/verilog/rtl/controller/pmu.v
@@ -20,31 +20,76 @@
     input  wire [WHISBONE_ADR - 1 : 0] wbs_adr_i,
     input  wire valid_i,
     input  wire wbs_we_i,
+    input  wire [2:0] trx_error,
+    input  wire [2:0] output_io_error,
     output reg ready_o,
     output reg [WORD_SIZE - 1 : 0] rdata_o
 
 
 );
 
-reg [COUNTERSIZE-1:0] total_clk_pass;
+reg [COUNTERSIZE-1:0] total_errors_trx [0:2];
+reg [COUNTERSIZE-1:0] total_errors_io  [0:2];
+reg [COUNTERSIZE-1:0] total_unrecobable_errors_trx;
+reg [COUNTERSIZE-1:0] total_unrecobable_errors_io;
 
 always @(posedge clk) begin
     if(rst) begin
-        total_clk_pass    <= {WORD_SIZE {1'b0}};
+        total_errors_trx[0]    <= {WORD_SIZE {1'b0}};
+        total_errors_trx[1]    <= {WORD_SIZE {1'b0}};
+        total_errors_trx[2]    <= {WORD_SIZE {1'b0}};
+        total_errors_io[0]     <= {WORD_SIZE {1'b0}};
+        total_errors_io[1]     <= {WORD_SIZE {1'b0}};
+        total_errors_io[2]     <= {WORD_SIZE {1'b0}};
+
     end
     else begin
-        total_clk_pass <= total_clk_pass + 1;
+        // couting errors 
+        if (trx_error != 3'b000) begin
+            case (trx_error)
+                3'b001:  total_errors_trx[0] <= total_errors_trx[0] + 1;
+                3'b010:  total_errors_trx[1] <= total_errors_trx[1] + 1;
+                3'b100:  total_errors_trx[2] <= total_errors_trx[2] + 1;
+                default: total_unrecobable_errors_trx = total_unrecobable_errors_trx + 1;
+            endcase
+        end 
+        if (output_io_error != 3'b000) begin
+            case (trx_error)
+                3'b001:  total_errors_io[0] <= total_errors_io[0] + 1;
+                3'b010:  total_errors_io[1] <= total_errors_io[1] + 1;
+                3'b100:  total_errors_io[2] <= total_errors_io[2] + 1;
+                default: total_unrecobable_errors_io = total_unrecobable_errors_io + 1;
+            endcase
+        end
+        
         if (valid_i && wbs_adr_i[31:12] == ADDRBASE) begin
-            ready_o <= 1'b1;
-            if (wbs_we_i) begin
-                if (wstrb_i[0]) total_clk_pass[7:0]   <= wdata_i[7:0];
-                if (wstrb_i[1]) total_clk_pass[15:8]  <= wdata_i[15:8];
-                if (wstrb_i[2]) total_clk_pass[23:16] <= wdata_i[23:16];
-                if (wstrb_i[3]) total_clk_pass[31:24] <= wdata_i[31:24];
-            end
-            else begin
-                rdata_o <= {total_clk_pass};
-            end
+            case (wbs_adr_i[3:0]) 
+                4'h0: begin
+                    ready_o <= 1'b1;
+                    if (wbs_we_i) begin
+                        if (wstrb_i[0]) total_errors_trx[wbs_adr_i[5:4]][7:0]   <= wdata_i[7:0];
+                        if (wstrb_i[1]) total_errors_trx[wbs_adr_i[5:4]][15:8]  <= wdata_i[15:8];
+                        if (wstrb_i[2]) total_errors_trx[wbs_adr_i[5:4]][23:16] <= wdata_i[23:16];
+                        if (wstrb_i[3]) total_errors_trx[wbs_adr_i[5:4]][31:24] <= wdata_i[31:24];
+                    end
+                    else begin
+                        rdata_o <= {total_errors_trx[wbs_adr_i[5:4]]};
+                    end
+
+                end
+                4'h4: begin
+                    ready_o <= 1'b1;
+                    if (wbs_we_i) begin
+                        if (wstrb_i[0]) total_errors_io[wbs_adr_i[5:4]][7:0]   <= wdata_i[7:0];
+                        if (wstrb_i[1]) total_errors_io[wbs_adr_i[5:4]][15:8]  <= wdata_i[15:8];
+                        if (wstrb_i[2]) total_errors_io[wbs_adr_i[5:4]][23:16] <= wdata_i[23:16];
+                        if (wstrb_i[3]) total_errors_io[wbs_adr_i[5:4]][31:24] <= wdata_i[31:24];
+                    end
+                    else begin
+                        rdata_o <= {total_errors_io[wbs_adr_i[5:4]]};
+                    end
+                end
+            endcase
         end
         else begin
             ready_o <= 1'b0;
diff --git a/verilog/rtl/uprj_netlists.v b/verilog/rtl/uprj_netlists.v
index 1065d78..30cb808 100644
--- a/verilog/rtl/uprj_netlists.v
+++ b/verilog/rtl/uprj_netlists.v
@@ -25,7 +25,7 @@
 `else
     `include "user_project_wrapper.v"
     `include "user_proj_example.v"
-    `include "controller/top_module.v"
+    `include "controller/main_module.v"
     `include "controller/status_sender_data.v"
     `include "controller/logic_control.v"
     `include "controller/control_module.v"
diff --git a/verilog/rtl/user_proj_example.v b/verilog/rtl/user_proj_example.v
index 671ff2b..02a52cf 100644
--- a/verilog/rtl/user_proj_example.v
+++ b/verilog/rtl/user_proj_example.v
@@ -62,6 +62,8 @@
     input [31:0] wbs_adr_i,
     output wbs_ack_o,
     output [31:0] wbs_dat_o,
+    // seconday clk
+    input user_clock2,
 
     // Logic Analyzer Signals
     input  [127:0] la_data_in,
@@ -72,13 +74,25 @@
     input  [`MPRJ_IO_PADS-1:0] io_in,
     output [`MPRJ_IO_PADS-1:0] io_out,
     output [`MPRJ_IO_PADS-1:0] io_oeb,
+    /* 
+    *---------------------------------------------------------------------
+    * If the chip is configured for output with the oeb control
+    * register = 1, then the oeb line is controlled by the additional
+    * signal from the management SoC.  If the oeb control register = 0,
+    * then the output is disabled completely.  The "io" line is input
+    * only in this module.
+    *
+    *---------------------------------------------------------------------
+    */
 
     // IRQ
     output [2:0] irq
 );
     wire clk;
     wire rst;
-    wire [15:0] io_port;
+    wire [15:0] io_port_out;
+    wire [15:0] io_port_in;
+    wire [15:0] la_out_value;
     wire rtx;
     wire trx;
     wire [`MPRJ_IO_PADS-1:0] io_in;
@@ -99,16 +113,18 @@
     assign wdata = wbs_dat_i;
 
     // IO
-    assign io_out = {io_port,rtx,trx,20'b0};
-    assign io_oeb = {(`MPRJ_IO_PADS-1){rst}};
+    // IO MODE IO port connected to the 16 last 
+    assign io_out = {io_port_out,1'bx,trx,20'b0};
+    assign io_in = {io_port_in,rtx,1'bx,20'b0};
+    assign io_oeb = {(`MPRJ_IO_PADS-1){1'b0}};
 
     // IRQ
     //assign irq = 3'b000;	// Unused
 
     // LA
-    //assign la_data_out = {{(127-BITS){1'b0}}, count};
+    assign la_data_out = {{(127-15){1'b0}}, la_out_value};
     // Assuming LA probes [63:32] are for controlling the count register  
-    //assign la_write = ~la_oenb[63:32] & ~{BITS{valid}};
+    //assign la_write = ~la_oenb[63:32] & ~{WORD_SIZE{valid}};
     // Assuming LA probes [65:64] are for controlling the count clk & reset  
     assign clk = wb_clk_i;
     assign rst = wb_rst_i;
@@ -130,8 +146,8 @@
        .clk(clk),
        .rtx(rtx),
        .rst(rst),
-       .input_io_ports({la_data_in[15:0],io_port}),
-       .output_io_ports({la_data_out[15:0],io_port}),
+       .input_io_ports({la_data_in[15:0],io_port_in}),
+       .output_io_ports({la_out_value,io_port_out}),
        .trx(trx),
        .wstrb_i(wstrb),
        .wdata_i(wdata),
@@ -143,4 +159,5 @@
    );
 
 endmodule
+
 `default_nettype wire
diff --git a/verilog/rtl/user_project_wrapper.v b/verilog/rtl/user_project_wrapper.v
index 5ee1cee..82a5eff 100644
--- a/verilog/rtl/user_project_wrapper.v
+++ b/verilog/rtl/user_project_wrapper.v
@@ -115,7 +115,10 @@
     .io_oeb(io_oeb),
 
     // IRQ
-    .irq(user_irq)
+    .irq(user_irq),
+
+    // independent clk
+    .user_clock2(user_clock2)
 );
 
 endmodule	// user_project_wrapper
