diff --git a/openlane/clk_skew_adjust/config.tcl b/openlane/clk_skew_adjust/config.tcl
new file mode 100644
index 0000000..0c507cc
--- /dev/null
+++ b/openlane/clk_skew_adjust/config.tcl
@@ -0,0 +1,89 @@
+# SPDX-FileCopyrightText: 2020 Efabless Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# SPDX-License-Identifier: Apache-2.0
+
+# Base Configurations. Don't Touch
+# section begin
+set script_dir [file dirname [file normalize [info script]]]
+
+set ::env(DESIGN_NAME) clk_skew_adjust
+set verilog_root $script_dir/../../verilog/
+set lef_root $script_dir/../../lef/
+set gds_root $script_dir/../../gds/
+#section end
+
+# User Configurations
+#
+set ::env(DESIGN_IS_CORE) 0
+set ::env(FP_PDN_CORE_RING) "0"
+set ::env(SYNTH_READ_BLACKBOX_LIB) "1"
+
+
+## Source Verilog Files
+set ::env(VERILOG_FILES) "\
+	$script_dir/../../verilog/rtl/clk_skew_adjust/src/clk_skew_adjust.gv"
+
+## Clock configurations
+set ::env(CLOCK_PORT) "clk_in"
+
+set ::env(CLOCK_PERIOD) "10"
+
+## Internal Macros
+### Macro Placement
+set ::env(FP_PIN_ORDER_CFG) $::env(DESIGN_DIR)/pin_order.cfg
+set ::env(FP_SIZING) absolute
+set ::env(DIE_AREA) "0 0 50 50"
+set ::env(PL_TARGET_DENSITY) 0.85
+set ::env(FP_CORE_UTIL) "60"
+
+
+
+set ::env(FP_PDN_CHECK_NODES) 0
+
+set ::env(RUN_KLAYOUT_DRC) 0
+
+set ::env(VDD_PIN) [list {vccd1}]
+set ::env(GND_PIN) [list {vssd1}]
+
+# If you're going to use multiple power domains, then keep this disabled.
+set ::env(RUN_CVC) 0
+
+# The following is because there are no std cells in the example wrapper project.
+set ::env(SYNTH_TOP_LEVEL) 1
+
+set ::env(PL_RESIZER_DESIGN_OPTIMIZATIONS) 0
+set ::env(PL_RESIZER_TIMING_OPTIMIZATIONS) 0
+set ::env(PL_RESIZER_BUFFER_INPUT_PORTS) 0
+set ::env(PL_RESIZER_BUFFER_OUTPUT_PORTS) 0
+
+# No Synthesis and CTS
+set ::env(RUN_SIMPLE_CTS) 0
+set ::env(SYNTH_BUFFERING) 0
+set ::env(SYNTH_SIZING) 0
+set ::env(CLOCK_TREE_SYNTH) 0
+set ::env(PL_OPENPHYSYN_OPTIMIZATIONS) 0
+set ::env(FILL_INSERTION) 1
+set ::env(RUN_SIMPLE_CTS) 0
+set ::env(LVS_CONNECT_BY_LABEL) 1
+set ::env(CELL_PAD) 0
+
+
+
+
+set ::env(PL_ROUTABILITY_DRIVEN) 1
+set ::env(FP_IO_VEXTEND) 4
+set ::env(FP_IO_HEXTEND) 4
+set ::env(GLB_RT_MAXLAYER) 4
+set ::env(GLB_RT_MAX_DIODE_INS_ITERS) 10
+set ::env(DIODE_INSERTION_STRATEGY) 4
diff --git a/openlane/clk_skew_adjust/pin_order.cfg b/openlane/clk_skew_adjust/pin_order.cfg
new file mode 100644
index 0000000..73fa0a0
--- /dev/null
+++ b/openlane/clk_skew_adjust/pin_order.cfg
@@ -0,0 +1,13 @@
+#BUS_SORT
+
+#MANUAL_PLACE
+
+#W
+clk_out              0000 0
+
+#E
+clk_in              0000 0
+sel\[3\]            0000 10
+sel\[2\]            0000 11
+sel\[1\]            0000 12
+sel\[0\]            0000 13
diff --git a/openlane/glbl_cfg/pin_order.cfg b/openlane/glbl_cfg/pin_order.cfg
index 5867718..022eda4 100644
--- a/openlane/glbl_cfg/pin_order.cfg
+++ b/openlane/glbl_cfg/pin_order.cfg
@@ -4,59 +4,11 @@
 #E
 cpu_clk                0000 0
 rtc_clk                
-irq_lines\[15\]        
-irq_lines\[14\]        
-irq_lines\[13\]        
-irq_lines\[12\]        
-irq_lines\[11\]        
-irq_lines\[10\]        
-irq_lines\[9\]         
-irq_lines\[8\]         
-irq_lines\[7\]         
-irq_lines\[6\]         
-irq_lines\[5\]         
-irq_lines\[4\]         
-irq_lines\[3\]         
-irq_lines\[2\]         
-irq_lines\[1\]         
-irq_lines\[0\]         
-soft_irq               
-fuse_mhartid\[31\]     
-fuse_mhartid\[30\]     
-fuse_mhartid\[29\]     
-fuse_mhartid\[28\]     
-fuse_mhartid\[27\]     
-fuse_mhartid\[26\]     
-fuse_mhartid\[25\]     
-fuse_mhartid\[24\]     
-fuse_mhartid\[23\]     
-fuse_mhartid\[22\]     
-fuse_mhartid\[21\]     
-fuse_mhartid\[20\]     
-fuse_mhartid\[19\]     
-fuse_mhartid\[18\]     
-fuse_mhartid\[17\]     
-fuse_mhartid\[16\]     
-fuse_mhartid\[15\]     
-fuse_mhartid\[14\]     
-fuse_mhartid\[13\]     
-fuse_mhartid\[12\]     
-fuse_mhartid\[11\]     
-fuse_mhartid\[10\]     
-fuse_mhartid\[9\]      
-fuse_mhartid\[8\]      
-fuse_mhartid\[7\]      
-fuse_mhartid\[6\]      
-fuse_mhartid\[5\]      
-fuse_mhartid\[4\]      
-fuse_mhartid\[3\]      
-fuse_mhartid\[2\]      
-fuse_mhartid\[1\]      
-fuse_mhartid\[0\]      
 
 #N
 mclk                   0000 0
 reset_n                
+user_clock1            
 user_clock2            
 user_irq\[2\]          
 user_irq\[1\]          
@@ -237,3 +189,55 @@
 reg_rdata\[1\]      
 reg_rdata\[0\]      
 reg_ack             
+
+
+irq_lines\[15\]    200 0 2    
+irq_lines\[14\]        
+irq_lines\[13\]        
+irq_lines\[12\]        
+irq_lines\[11\]        
+irq_lines\[10\]        
+irq_lines\[9\]         
+irq_lines\[8\]         
+irq_lines\[7\]         
+irq_lines\[6\]         
+irq_lines\[5\]         
+irq_lines\[4\]         
+irq_lines\[3\]         
+irq_lines\[2\]         
+irq_lines\[1\]         
+irq_lines\[0\]         
+soft_irq               
+fuse_mhartid\[31\]     
+fuse_mhartid\[30\]     
+fuse_mhartid\[29\]     
+fuse_mhartid\[28\]     
+fuse_mhartid\[27\]     
+fuse_mhartid\[26\]     
+fuse_mhartid\[25\]     
+fuse_mhartid\[24\]     
+fuse_mhartid\[23\]     
+fuse_mhartid\[22\]     
+fuse_mhartid\[21\]     
+fuse_mhartid\[20\]     
+fuse_mhartid\[19\]     
+fuse_mhartid\[18\]     
+fuse_mhartid\[17\]     
+fuse_mhartid\[16\]     
+fuse_mhartid\[15\]     
+fuse_mhartid\[14\]     
+fuse_mhartid\[13\]     
+fuse_mhartid\[12\]     
+fuse_mhartid\[11\]     
+fuse_mhartid\[10\]     
+fuse_mhartid\[9\]      
+fuse_mhartid\[8\]      
+fuse_mhartid\[7\]      
+fuse_mhartid\[6\]      
+fuse_mhartid\[5\]      
+fuse_mhartid\[4\]      
+fuse_mhartid\[3\]      
+fuse_mhartid\[2\]      
+fuse_mhartid\[1\]      
+fuse_mhartid\[0\]      
+
diff --git a/openlane/sdram/config.tcl b/openlane/sdram/config.tcl
index b35501d..230d1e6 100755
--- a/openlane/sdram/config.tcl
+++ b/openlane/sdram/config.tcl
@@ -39,6 +39,7 @@
          $script_dir/../../verilog/rtl/sdram_ctrl/src/top/sdrc_top.v \
          $script_dir/../../verilog/rtl/sdram_ctrl/src/wb2sdrc/wb2sdrc.v \
          $script_dir/../../verilog/rtl/lib/async_fifo.sv  \
+         $script_dir/../../verilog/rtl/lib/wb_stagging.sv \
          $script_dir/../../verilog/rtl/sdram_ctrl/src/core/sdrc_core.v \
          $script_dir/../../verilog/rtl/sdram_ctrl/src/core/sdrc_bank_ctl.v \
          $script_dir/../../verilog/rtl/sdram_ctrl/src/core/sdrc_bank_fsm.v \
diff --git a/openlane/syntacore/config.tcl b/openlane/syntacore/config.tcl
index c23dcc5..ad5d9bb 100755
--- a/openlane/syntacore/config.tcl
+++ b/openlane/syntacore/config.tcl
@@ -101,3 +101,5 @@
 set ::env(GLB_RT_MAXLAYER) 5
 set ::env(GLB_RT_MAX_DIODE_INS_ITERS) 10
 
+#set ::env(LVS_CONNECT_BY_LABEL) 1
+
diff --git a/openlane/syntacore/pin_order.cfg b/openlane/syntacore/pin_order.cfg
index 5f52899..fb94b98 100644
--- a/openlane/syntacore/pin_order.cfg
+++ b/openlane/syntacore/pin_order.cfg
@@ -3,272 +3,272 @@
 #MANUAL_PLACE
 #E
 core_clk            0000 0
-rtc_clk             0000 1
-cpu_rst_n           0000 2
-irq_lines\[15\]     0000 3
-irq_lines\[14\]     0000 4
-irq_lines\[13\]     0000 5
-irq_lines\[12\]     0000 6
-irq_lines\[11\]     0000 7
-irq_lines\[10\]     0000 8
-irq_lines\[9\]     0000 9
-irq_lines\[8\]     0000 10
-irq_lines\[7\]     0000 11
-irq_lines\[6\]     0000 12
-irq_lines\[5\]     0000 13
-irq_lines\[4\]     0000 14
-irq_lines\[3\]     0000 15
-irq_lines\[2\]     0000 16
-irq_lines\[1\]     0000 17
-irq_lines\[0\]     0000 18
-soft_irq           0000 19
-fuse_mhartid\[31\] 0000 20
-fuse_mhartid\[30\] 0000 21
-fuse_mhartid\[29\] 0000 22
-fuse_mhartid\[28\] 0000 23
-fuse_mhartid\[27\] 0000 24
-fuse_mhartid\[26\] 0000 25
-fuse_mhartid\[25\] 0000 26
-fuse_mhartid\[24\] 0000 27
-fuse_mhartid\[23\] 0000 28
-fuse_mhartid\[22\] 0000 29
-fuse_mhartid\[21\] 0000 30
-fuse_mhartid\[20\] 0000 31
-fuse_mhartid\[19\] 0000 32
-fuse_mhartid\[18\] 0000 33
-fuse_mhartid\[17\] 0000 34
-fuse_mhartid\[16\] 0000 35
-fuse_mhartid\[15\] 0000 36
-fuse_mhartid\[14\] 0000 37
-fuse_mhartid\[13\] 0000 38
-fuse_mhartid\[12\] 0000 39
-fuse_mhartid\[11\] 0000 40
-fuse_mhartid\[10\] 0000 41
-fuse_mhartid\[9\] 0000 42
-fuse_mhartid\[8\] 0000 43
-fuse_mhartid\[7\] 0000 44
-fuse_mhartid\[6\] 0000 45
-fuse_mhartid\[5\] 0000 46
-fuse_mhartid\[4\] 0000 47
-fuse_mhartid\[3\] 0000 48
-fuse_mhartid\[2\] 0000 49
-fuse_mhartid\[1\] 0000 50
-fuse_mhartid\[0\] 0000 51
+rtc_clk             
+cpu_rst_n           
 
 #W
 wb_clk            0000 0
-wb_rst_n          0000 1
-pwrup_rst_n       0000 2
-rst_n             0000 3
+wb_rst_n          
+pwrup_rst_n       
+rst_n             
 
 #N
-wbd_imem_stb_o    0000 0
-wbd_imem_we_o     0000 1
-wbd_imem_adr_o\[31\]    0000 2
-wbd_imem_adr_o\[30\]    0000 3
-wbd_imem_adr_o\[29\]    0000 4
-wbd_imem_adr_o\[28\]    0000 5
-wbd_imem_adr_o\[27\]    0000 6
-wbd_imem_adr_o\[26\]    0000 7
-wbd_imem_adr_o\[25\]    0000 8
-wbd_imem_adr_o\[24\]    0000 9
-wbd_imem_adr_o\[23\]    0000 10
-wbd_imem_adr_o\[22\]    0000 11
-wbd_imem_adr_o\[21\]    0000 12
-wbd_imem_adr_o\[20\]    0000 13
-wbd_imem_adr_o\[19\]    0000 14
-wbd_imem_adr_o\[18\]    0000 15
-wbd_imem_adr_o\[17\]    0000 16
-wbd_imem_adr_o\[16\]    0000 17
-wbd_imem_adr_o\[15\]    0000 18
-wbd_imem_adr_o\[14\]    0000 19
-wbd_imem_adr_o\[13\]    0000 20
-wbd_imem_adr_o\[12\]    0000 21
-wbd_imem_adr_o\[11\]    0000 22
-wbd_imem_adr_o\[10\]    0000 23
-wbd_imem_adr_o\[9\]    0000 24
-wbd_imem_adr_o\[8\]    0000 25
-wbd_imem_adr_o\[7\]    0000 26
-wbd_imem_adr_o\[6\]    0000 27
-wbd_imem_adr_o\[5\]    0000 28
-wbd_imem_adr_o\[4\]    0000 29
-wbd_imem_adr_o\[3\]    0000 30
-wbd_imem_adr_o\[2\]    0000 31
-wbd_imem_adr_o\[1\]    0000 32
-wbd_imem_adr_o\[0\]    0000 33
-wbd_imem_sel_o\[3\]    0000 34
-wbd_imem_sel_o\[2\]    0000 35
-wbd_imem_sel_o\[1\]    0000 36
-wbd_imem_sel_o\[0\]    0000 37
-wbd_imem_dat_o\[31\]   0000 38
-wbd_imem_dat_o\[30\]   0000 39
-wbd_imem_dat_o\[29\]   0000 40
-wbd_imem_dat_o\[28\]   0000 41
-wbd_imem_dat_o\[27\]   0000 42
-wbd_imem_dat_o\[26\]   0000 43
-wbd_imem_dat_o\[25\]   0000 44
-wbd_imem_dat_o\[24\]   0000 45
-wbd_imem_dat_o\[23\]   0000 46
-wbd_imem_dat_o\[22\]   0000 47
-wbd_imem_dat_o\[21\]   0000 48
-wbd_imem_dat_o\[20\]   0000 49
-wbd_imem_dat_o\[19\]   0000 50
-wbd_imem_dat_o\[18\]   0000 51
-wbd_imem_dat_o\[17\]   0000 52
-wbd_imem_dat_o\[16\]   0000 53
-wbd_imem_dat_o\[15\]   0000 54
-wbd_imem_dat_o\[14\]   0000 55
-wbd_imem_dat_o\[13\]   0000 56
-wbd_imem_dat_o\[12\]   0000 57
-wbd_imem_dat_o\[11\]   0000 58
-wbd_imem_dat_o\[10\]   0000 59
-wbd_imem_dat_o\[9\]   0000 60
-wbd_imem_dat_o\[8\]   0000 61
-wbd_imem_dat_o\[7\]   0000 62
-wbd_imem_dat_o\[6\]   0000 63
-wbd_imem_dat_o\[5\]   0000 64
-wbd_imem_dat_o\[4\]   0000 65
-wbd_imem_dat_o\[3\]   0000 66
-wbd_imem_dat_o\[2\]   0000 67
-wbd_imem_dat_o\[1\]   0000 68
-wbd_imem_dat_o\[0\]   0000 69
-wbd_imem_dat_i\[31\]  0000 70
-wbd_imem_dat_i\[30\]  0000 71
-wbd_imem_dat_i\[29\]  0000 72
-wbd_imem_dat_i\[28\]  0000 73
-wbd_imem_dat_i\[27\]  0000 74
-wbd_imem_dat_i\[26\]  0000 75
-wbd_imem_dat_i\[25\]  0000 76
-wbd_imem_dat_i\[24\]  0000 77
-wbd_imem_dat_i\[23\]  0000 78
-wbd_imem_dat_i\[22\]  0000 79
-wbd_imem_dat_i\[21\]  0000 80
-wbd_imem_dat_i\[20\]  0000 81
-wbd_imem_dat_i\[19\]  0000 82
-wbd_imem_dat_i\[18\]  0000 83
-wbd_imem_dat_i\[17\]  0000 84
-wbd_imem_dat_i\[16\]  0000 85
-wbd_imem_dat_i\[15\]  0000 86
-wbd_imem_dat_i\[14\]  0000 87
-wbd_imem_dat_i\[13\]  0000 88
-wbd_imem_dat_i\[12\]  0000 89
-wbd_imem_dat_i\[11\]  0000 90
-wbd_imem_dat_i\[10\]  0000 91
-wbd_imem_dat_i\[9\]  0000 92
-wbd_imem_dat_i\[8\]  0000 93
-wbd_imem_dat_i\[7\]  0000 94
-wbd_imem_dat_i\[6\]  0000 95
-wbd_imem_dat_i\[5\]  0000 96
-wbd_imem_dat_i\[4\]  0000 97
-wbd_imem_dat_i\[3\]  0000 98
-wbd_imem_dat_i\[2\]  0000 99
-wbd_imem_dat_i\[1\]  0000 100
-wbd_imem_dat_i\[0\]  0000 101
-wbd_imem_ack_i       0000 102
-wbd_imem_err_i       0000 103
+wbd_imem_stb_o          0000 0
+wbd_imem_we_o           
+wbd_imem_adr_o\[31\]    
+wbd_imem_adr_o\[30\]    
+wbd_imem_adr_o\[29\]    
+wbd_imem_adr_o\[28\]    
+wbd_imem_adr_o\[27\]    
+wbd_imem_adr_o\[26\]    
+wbd_imem_adr_o\[25\]    
+wbd_imem_adr_o\[24\]    
+wbd_imem_adr_o\[23\]    
+wbd_imem_adr_o\[22\]    
+wbd_imem_adr_o\[21\]    
+wbd_imem_adr_o\[20\]    
+wbd_imem_adr_o\[19\]    
+wbd_imem_adr_o\[18\]    
+wbd_imem_adr_o\[17\]    
+wbd_imem_adr_o\[16\]    
+wbd_imem_adr_o\[15\]    
+wbd_imem_adr_o\[14\]    
+wbd_imem_adr_o\[13\]    
+wbd_imem_adr_o\[12\]    
+wbd_imem_adr_o\[11\]    
+wbd_imem_adr_o\[10\]   
+wbd_imem_adr_o\[9\]    
+wbd_imem_adr_o\[8\]    
+wbd_imem_adr_o\[7\]    
+wbd_imem_adr_o\[6\]    
+wbd_imem_adr_o\[5\]    
+wbd_imem_adr_o\[4\]    
+wbd_imem_adr_o\[3\]    
+wbd_imem_adr_o\[2\]    
+wbd_imem_adr_o\[1\]    
+wbd_imem_adr_o\[0\]    
+wbd_imem_sel_o\[3\]    
+wbd_imem_sel_o\[2\]    
+wbd_imem_sel_o\[1\]    
+wbd_imem_sel_o\[0\]    
+wbd_imem_dat_o\[31\]   
+wbd_imem_dat_o\[30\]   
+wbd_imem_dat_o\[29\]   
+wbd_imem_dat_o\[28\]   
+wbd_imem_dat_o\[27\]   
+wbd_imem_dat_o\[26\]   
+wbd_imem_dat_o\[25\]   
+wbd_imem_dat_o\[24\]   
+wbd_imem_dat_o\[23\]   
+wbd_imem_dat_o\[22\]   
+wbd_imem_dat_o\[21\]   
+wbd_imem_dat_o\[20\]   
+wbd_imem_dat_o\[19\]   
+wbd_imem_dat_o\[18\]   
+wbd_imem_dat_o\[17\]   
+wbd_imem_dat_o\[16\]   
+wbd_imem_dat_o\[15\]   
+wbd_imem_dat_o\[14\]   
+wbd_imem_dat_o\[13\]   
+wbd_imem_dat_o\[12\]  
+wbd_imem_dat_o\[11\]  
+wbd_imem_dat_o\[10\]  
+wbd_imem_dat_o\[9\]   
+wbd_imem_dat_o\[8\]   
+wbd_imem_dat_o\[7\]   
+wbd_imem_dat_o\[6\]   
+wbd_imem_dat_o\[5\]   
+wbd_imem_dat_o\[4\]   
+wbd_imem_dat_o\[3\]   
+wbd_imem_dat_o\[2\]   
+wbd_imem_dat_o\[1\]   
+wbd_imem_dat_o\[0\]   
+wbd_imem_dat_i\[31\]  
+wbd_imem_dat_i\[30\]  
+wbd_imem_dat_i\[29\]  
+wbd_imem_dat_i\[28\]  
+wbd_imem_dat_i\[27\]  
+wbd_imem_dat_i\[26\]  
+wbd_imem_dat_i\[25\]  
+wbd_imem_dat_i\[24\]  
+wbd_imem_dat_i\[23\]  
+wbd_imem_dat_i\[22\]  
+wbd_imem_dat_i\[21\]  
+wbd_imem_dat_i\[20\]  
+wbd_imem_dat_i\[19\]  
+wbd_imem_dat_i\[18\]  
+wbd_imem_dat_i\[17\]  
+wbd_imem_dat_i\[16\]  
+wbd_imem_dat_i\[15\]  
+wbd_imem_dat_i\[14\]  
+wbd_imem_dat_i\[13\]  
+wbd_imem_dat_i\[12\]  
+wbd_imem_dat_i\[11\]  
+wbd_imem_dat_i\[10\]  
+wbd_imem_dat_i\[9\]  
+wbd_imem_dat_i\[8\]  
+wbd_imem_dat_i\[7\]  
+wbd_imem_dat_i\[6\]  
+wbd_imem_dat_i\[5\]  
+wbd_imem_dat_i\[4\]  
+wbd_imem_dat_i\[3\]  
+wbd_imem_dat_i\[2\]  
+wbd_imem_dat_i\[1\]  
+wbd_imem_dat_i\[0\]  
+wbd_imem_ack_i       
+wbd_imem_err_i       
 
-wbd_dmem_stb_o       0500 0
-wbd_dmem_we_o        0500 1
-wbd_dmem_adr_o\[31\] 0500 2
-wbd_dmem_adr_o\[30\] 0500 3
-wbd_dmem_adr_o\[29\] 0500 4
-wbd_dmem_adr_o\[28\] 0500 5
-wbd_dmem_adr_o\[27\] 0500 6
-wbd_dmem_adr_o\[26\] 0500 7
-wbd_dmem_adr_o\[25\] 0500 8
-wbd_dmem_adr_o\[24\] 0500 9
-wbd_dmem_adr_o\[23\] 0500 10
-wbd_dmem_adr_o\[22\] 0500 11
-wbd_dmem_adr_o\[21\] 0500 12
-wbd_dmem_adr_o\[20\] 0500 13
-wbd_dmem_adr_o\[19\] 0500 14
-wbd_dmem_adr_o\[18\] 0500 15
-wbd_dmem_adr_o\[17\] 0500 16
-wbd_dmem_adr_o\[16\] 0500 17
-wbd_dmem_adr_o\[15\] 0500 18
-wbd_dmem_adr_o\[14\] 0500 19
-wbd_dmem_adr_o\[13\] 0500 20
-wbd_dmem_adr_o\[12\] 0500 21
-wbd_dmem_adr_o\[11\] 0500 22
-wbd_dmem_adr_o\[10\] 0500 23
-wbd_dmem_adr_o\[9\] 0500 24
-wbd_dmem_adr_o\[8\] 0500 25
-wbd_dmem_adr_o\[7\] 0500 26
-wbd_dmem_adr_o\[6\] 0500 27
-wbd_dmem_adr_o\[5\] 0500 28
-wbd_dmem_adr_o\[4\] 0500 29
-wbd_dmem_adr_o\[3\] 0500 30
-wbd_dmem_adr_o\[2\] 0500 31
-wbd_dmem_adr_o\[1\] 0500 32
-wbd_dmem_adr_o\[0\] 0500 33
-wbd_dmem_sel_o\[3\]  0500 34
-wbd_dmem_sel_o\[2\]  0500 35
-wbd_dmem_sel_o\[1\]  0500 36
-wbd_dmem_sel_o\[0\]  0500 37
-wbd_dmem_dat_o\[31\] 0500 38
-wbd_dmem_dat_o\[30\] 0500 39
-wbd_dmem_dat_o\[29\] 0500 40
-wbd_dmem_dat_o\[28\] 0500 41
-wbd_dmem_dat_o\[27\] 0500 42
-wbd_dmem_dat_o\[26\] 0500 43
-wbd_dmem_dat_o\[25\] 0500 44
-wbd_dmem_dat_o\[24\] 0500 45
-wbd_dmem_dat_o\[23\] 0500 46
-wbd_dmem_dat_o\[22\] 0500 47
-wbd_dmem_dat_o\[21\] 0500 48
-wbd_dmem_dat_o\[20\] 0500 49
-wbd_dmem_dat_o\[19\] 0500 50
-wbd_dmem_dat_o\[18\] 0500 51
-wbd_dmem_dat_o\[17\] 0500 52
-wbd_dmem_dat_o\[16\] 0500 53
-wbd_dmem_dat_o\[15\] 0500 54
-wbd_dmem_dat_o\[14\] 0500 55
-wbd_dmem_dat_o\[13\] 0500 56
-wbd_dmem_dat_o\[12\] 0500 57
-wbd_dmem_dat_o\[11\] 0500 58
-wbd_dmem_dat_o\[10\] 0500 59
-wbd_dmem_dat_o\[9\] 0500 60
-wbd_dmem_dat_o\[8\] 0500 61
-wbd_dmem_dat_o\[7\] 0500 62
-wbd_dmem_dat_o\[6\] 0500 63
-wbd_dmem_dat_o\[5\] 0500 64
-wbd_dmem_dat_o\[4\] 0500 65
-wbd_dmem_dat_o\[3\] 0500 66
-wbd_dmem_dat_o\[2\] 0500 67
-wbd_dmem_dat_o\[1\] 0500 68
-wbd_dmem_dat_o\[0\] 0500 69
-wbd_dmem_dat_i\[31\] 0500 70
-wbd_dmem_dat_i\[30\] 0500 71
-wbd_dmem_dat_i\[29\] 0500 72
-wbd_dmem_dat_i\[28\] 0500 73
-wbd_dmem_dat_i\[27\] 0500 74
-wbd_dmem_dat_i\[26\] 0500 75
-wbd_dmem_dat_i\[25\] 0500 76
-wbd_dmem_dat_i\[24\] 0500 77
-wbd_dmem_dat_i\[23\] 0500 78
-wbd_dmem_dat_i\[22\] 0500 79
-wbd_dmem_dat_i\[21\] 0500 80
-wbd_dmem_dat_i\[20\] 0500 81
-wbd_dmem_dat_i\[19\] 0500 82
-wbd_dmem_dat_i\[18\] 0500 83
-wbd_dmem_dat_i\[17\] 0500 84
-wbd_dmem_dat_i\[16\] 0500 85
-wbd_dmem_dat_i\[15\] 0500 86
-wbd_dmem_dat_i\[14\] 0500 87
-wbd_dmem_dat_i\[13\] 0500 88
-wbd_dmem_dat_i\[12\] 0500 89
-wbd_dmem_dat_i\[11\] 0500 90
-wbd_dmem_dat_i\[10\] 0500 91
-wbd_dmem_dat_i\[9\] 0500 92
-wbd_dmem_dat_i\[8\] 0500 93
-wbd_dmem_dat_i\[7\] 0500 94
-wbd_dmem_dat_i\[6\] 0500 95
-wbd_dmem_dat_i\[5\] 0500 96
-wbd_dmem_dat_i\[4\] 0500 97
-wbd_dmem_dat_i\[3\] 0500 98
-wbd_dmem_dat_i\[2\] 0500 99
-wbd_dmem_dat_i\[1\] 0500 100
-wbd_dmem_dat_i\[0\] 0500 101
-wbd_dmem_ack_i      0500 102
-wbd_dmem_err_i      0500 103
+wbd_dmem_stb_o       0500 0  2
+wbd_dmem_we_o        
+wbd_dmem_adr_o\[31\] 
+wbd_dmem_adr_o\[30\] 
+wbd_dmem_adr_o\[29\] 
+wbd_dmem_adr_o\[28\] 
+wbd_dmem_adr_o\[27\] 
+wbd_dmem_adr_o\[26\] 
+wbd_dmem_adr_o\[25\] 
+wbd_dmem_adr_o\[24\] 
+wbd_dmem_adr_o\[23\] 
+wbd_dmem_adr_o\[22\] 
+wbd_dmem_adr_o\[21\] 
+wbd_dmem_adr_o\[20\] 
+wbd_dmem_adr_o\[19\] 
+wbd_dmem_adr_o\[18\] 
+wbd_dmem_adr_o\[17\] 
+wbd_dmem_adr_o\[16\] 
+wbd_dmem_adr_o\[15\] 
+wbd_dmem_adr_o\[14\] 
+wbd_dmem_adr_o\[13\] 
+wbd_dmem_adr_o\[12\] 
+wbd_dmem_adr_o\[11\] 
+wbd_dmem_adr_o\[10\] 
+wbd_dmem_adr_o\[9\] 
+wbd_dmem_adr_o\[8\] 
+wbd_dmem_adr_o\[7\] 
+wbd_dmem_adr_o\[6\] 
+wbd_dmem_adr_o\[5\] 
+wbd_dmem_adr_o\[4\] 
+wbd_dmem_adr_o\[3\] 
+wbd_dmem_adr_o\[2\] 
+wbd_dmem_adr_o\[1\] 
+wbd_dmem_adr_o\[0\] 
+wbd_dmem_sel_o\[3\]  
+wbd_dmem_sel_o\[2\]  
+wbd_dmem_sel_o\[1\]  
+wbd_dmem_sel_o\[0\]  
+wbd_dmem_dat_o\[31\] 
+wbd_dmem_dat_o\[30\] 
+wbd_dmem_dat_o\[29\] 
+wbd_dmem_dat_o\[28\] 
+wbd_dmem_dat_o\[27\] 
+wbd_dmem_dat_o\[26\] 
+wbd_dmem_dat_o\[25\] 
+wbd_dmem_dat_o\[24\] 
+wbd_dmem_dat_o\[23\] 
+wbd_dmem_dat_o\[22\] 
+wbd_dmem_dat_o\[21\] 
+wbd_dmem_dat_o\[20\] 
+wbd_dmem_dat_o\[19\] 
+wbd_dmem_dat_o\[18\] 
+wbd_dmem_dat_o\[17\] 
+wbd_dmem_dat_o\[16\] 
+wbd_dmem_dat_o\[15\] 
+wbd_dmem_dat_o\[14\] 
+wbd_dmem_dat_o\[13\] 
+wbd_dmem_dat_o\[12\] 
+wbd_dmem_dat_o\[11\] 
+wbd_dmem_dat_o\[10\] 
+wbd_dmem_dat_o\[9\]  
+wbd_dmem_dat_o\[8\]  
+wbd_dmem_dat_o\[7\]  
+wbd_dmem_dat_o\[6\]  
+wbd_dmem_dat_o\[5\]  
+wbd_dmem_dat_o\[4\]  
+wbd_dmem_dat_o\[3\]  
+wbd_dmem_dat_o\[2\]  
+wbd_dmem_dat_o\[1\]  
+wbd_dmem_dat_o\[0\]  
+wbd_dmem_dat_i\[31\] 
+wbd_dmem_dat_i\[30\] 
+wbd_dmem_dat_i\[29\] 
+wbd_dmem_dat_i\[28\] 
+wbd_dmem_dat_i\[27\] 
+wbd_dmem_dat_i\[26\] 
+wbd_dmem_dat_i\[25\] 
+wbd_dmem_dat_i\[24\] 
+wbd_dmem_dat_i\[23\] 
+wbd_dmem_dat_i\[22\] 
+wbd_dmem_dat_i\[21\] 
+wbd_dmem_dat_i\[20\] 
+wbd_dmem_dat_i\[19\] 
+wbd_dmem_dat_i\[18\] 
+wbd_dmem_dat_i\[17\] 
+wbd_dmem_dat_i\[16\] 
+wbd_dmem_dat_i\[15\] 
+wbd_dmem_dat_i\[14\] 
+wbd_dmem_dat_i\[13\] 
+wbd_dmem_dat_i\[12\] 
+wbd_dmem_dat_i\[11\] 
+wbd_dmem_dat_i\[10\] 
+wbd_dmem_dat_i\[9\] 
+wbd_dmem_dat_i\[8\] 
+wbd_dmem_dat_i\[7\] 
+wbd_dmem_dat_i\[6\] 
+wbd_dmem_dat_i\[5\] 
+wbd_dmem_dat_i\[4\] 
+wbd_dmem_dat_i\[3\] 
+wbd_dmem_dat_i\[2\] 
+wbd_dmem_dat_i\[1\] 
+wbd_dmem_dat_i\[0\] 
+wbd_dmem_ack_i      
+wbd_dmem_err_i      
 
+irq_lines\[15\]     1200 0  2
+irq_lines\[14\]     
+irq_lines\[13\]     
+irq_lines\[12\]     
+irq_lines\[11\]     
+irq_lines\[10\]     
+irq_lines\[9\]     
+irq_lines\[8\]     
+irq_lines\[7\]     
+irq_lines\[6\]     
+irq_lines\[5\]     
+irq_lines\[4\]     
+irq_lines\[3\]     
+irq_lines\[2\]     
+irq_lines\[1\]     
+irq_lines\[0\]     
+soft_irq           
+fuse_mhartid\[31\] 
+fuse_mhartid\[30\] 
+fuse_mhartid\[29\] 
+fuse_mhartid\[28\] 
+fuse_mhartid\[27\] 
+fuse_mhartid\[26\] 
+fuse_mhartid\[25\] 
+fuse_mhartid\[24\] 
+fuse_mhartid\[23\] 
+fuse_mhartid\[22\] 
+fuse_mhartid\[21\] 
+fuse_mhartid\[20\] 
+fuse_mhartid\[19\] 
+fuse_mhartid\[18\] 
+fuse_mhartid\[17\] 
+fuse_mhartid\[16\] 
+fuse_mhartid\[15\] 
+fuse_mhartid\[14\] 
+fuse_mhartid\[13\] 
+fuse_mhartid\[12\] 
+fuse_mhartid\[11\] 
+fuse_mhartid\[10\] 
+fuse_mhartid\[9\] 
+fuse_mhartid\[8\] 
+fuse_mhartid\[7\] 
+fuse_mhartid\[6\] 
+fuse_mhartid\[5\] 
+fuse_mhartid\[4\] 
+fuse_mhartid\[3\] 
+fuse_mhartid\[2\] 
+fuse_mhartid\[1\] 
+fuse_mhartid\[0\] 
diff --git a/openlane/user_project_wrapper/config.tcl b/openlane/user_project_wrapper/config.tcl
index 7661525..51dc0f8 100644
--- a/openlane/user_project_wrapper/config.tcl
+++ b/openlane/user_project_wrapper/config.tcl
@@ -60,6 +60,7 @@
         $script_dir/../../verilog/gl/uart.v     \
 	$script_dir/../../verilog/gl/sdram.v \
 	$script_dir/../../verilog/gl/wb_host.v \
+	$script_dir/../../verilog/gl/clk_skew_adjust.v \
 	$script_dir/../../verilog/gl/syntacore.v \
 	"
 
@@ -70,6 +71,7 @@
 	$lef_root/sdram.lef \
 	$lef_root/uart.lef \
 	$lef_root/wb_host.lef \
+	$lef_root/clk_skew_adjust.lef \
 	$lef_root/syntacore.lef \
 	"
 
@@ -80,6 +82,7 @@
 	$gds_root/uart.gds \
 	$gds_root/sdram.gds \
 	$gds_root/wb_host.gds \
+	$gds_root/clk_skew_adjust.gds \
 	$gds_root/syntacore.gds \
 	"
 
@@ -87,7 +90,7 @@
 
 set ::env(VERILOG_INCLUDE_DIRS) [glob $script_dir/../../verilog/rtl/syntacore/scr1/src/includes $script_dir/../../verilog/rtl/sdram_ctrl/src/defs ]
 
-set ::env(GLB_RT_MAXLAYER) 6
+set ::env(GLB_RT_MAXLAYER) 5
 
 set ::env(FP_PDN_CHECK_NODES) 0
 
@@ -111,6 +114,9 @@
 set ::env(TAP_DECAP_INSERTION) 0
 set ::env(CLOCK_TREE_SYNTH) 0
 
+set ::env(MAGIC_EXT_USE_GDS) "1"
+
+
 set ::env(PL_DIAMOND_SEARCH_HEIGHT) "250"
 
 
diff --git a/openlane/user_project_wrapper/macro.cfg b/openlane/user_project_wrapper/macro.cfg
index 9ef1988..2843978 100644
--- a/openlane/user_project_wrapper/macro.cfg
+++ b/openlane/user_project_wrapper/macro.cfg
@@ -5,3 +5,13 @@
 u_core.u_uart_core             2200            1600            N
 u_core.u_intercon              300             2300            N
 u_core.u_wb_host               300             300             N
+u_core.u_skew_wi               2600            2300            N
+u_core.u_skew_riscv            400             800             N
+u_core.u_skew_uart             2200            1500            N
+u_core.u_skew_spi              200             2700            E
+u_core.u_skew_sdram            900             2700            E
+u_core.u_skew_glbl             2000            3200            N
+u_core.u_skew_wh               1400            300             N
+u_core.u_skew_sd_co            950             3300            N
+u_core.u_skew_sd_ci            1100            3300            N
+u_core.u_skew_sp_co            300             3400            N
diff --git a/openlane/wb_host/config.tcl b/openlane/wb_host/config.tcl
index 56efc5b..1c7005b 100755
--- a/openlane/wb_host/config.tcl
+++ b/openlane/wb_host/config.tcl
@@ -37,8 +37,9 @@
 # Local sources + no2usb sources
 set ::env(VERILOG_FILES) "\
      $script_dir/../../verilog/rtl/wb_host/src/wb_host.sv \
-     $script_dir/../../verilog/rtl/lib/async_fifo.sv \
-     $script_dir/../../verilog/rtl/lib/async_wb.sv \
+     $script_dir/../../verilog/rtl/lib/async_fifo.sv      \
+     $script_dir/../../verilog/rtl/lib/async_wb.sv        \
+     $script_dir/../../verilog/rtl/lib/clk_ctl.v          \
      $script_dir/../../verilog/rtl/lib/registers.v"
 
 #set ::env(SDC_FILE) "$script_dir/base.sdc"
diff --git a/verilog/dv/risc_boot/Makefile b/verilog/dv/risc_boot/Makefile
index ed2fa74..635b188 100644
--- a/verilog/dv/risc_boot/Makefile
+++ b/verilog/dv/risc_boot/Makefile
@@ -63,7 +63,7 @@
 ifeq ($(SIM),RTL)
 	iverilog -g2005-sv -DFUNCTIONAL -DSIM -I $(PDK_PATH) \
 	-I $(CARAVEL_BEHAVIOURAL_MODELS) -I $(CARAVEL_RTL_PATH) \
-	-I $(UPRJ_BEHAVIOURAL_MODELS)    -I $(UPRJ_RTL_PATH) \
+	-I $(UPRJ_BEHAVIOURAL_MODELS)    -I $(UPRJ_RTL_PATH) -I $(UPRJ_VERILOG_PATH)  \
 	-I $(UPRJ_BEHAVIOURAL_AGENTS)    \
 	-I $(UPRJ_INCLUDE_PATH1)    -I $(UPRJ_INCLUDE_PATH2) \
 	$< -o $@ 
diff --git a/verilog/dv/user_risc_boot/run_iverilog b/verilog/dv/user_risc_boot/run_iverilog
index 63083a1..f083d6d 100755
--- a/verilog/dv/user_risc_boot/run_iverilog
+++ b/verilog/dv/user_risc_boot/run_iverilog
@@ -29,9 +29,13 @@
 rm crt_tcm.o user_risc_boot.o
 
 #iverilog with waveform dump
-#iverilog -g2005-sv -DWFDUMP -I $PDK_PATH -I ../ -I ../../../verilog/rtl -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model user_risc_boot_tb.v -o user_risc_boot_tb.vvp
+iverilog -g2005-sv -DWFDUMP -DFUNCTIONAL -DSIM -I $PDK_PATH -I  ../../../caravel/verilog/rtl  -I ../ -I ../../../verilog/rtl -I ../ -I ../../../verilog -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_risc_boot_tb.v -o user_risc_boot_tb.vvp
 
-iverilog -g2005-sv -I $PDK_PATH -I ../ -I ../../../verilog/rtl -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model user_risc_boot_tb.v -o user_risc_boot_tb.vvp
+
+#iverilog -g2005-sv -I $PDK_PATH -DFUNCTIONAL -DSIM -I  ../../../caravel/verilog/rtl -I ../ -I ../../../verilog/rtl -I ../../../verilog -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_risc_boot_tb.v -o user_risc_boot_tb.vvp
+
+# GLS
+#iverilog -g2005-sv -DGL -I $PDK_PATH -I  ../../../caravel/verilog/rtl  -I ../ -I ../../../verilog/rtl -I ../../../verilog -I /home/dinesha/workarea/pdk/sky130A -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_uart_tb.v -o user_risc_boot_tb.vvp
 
 vvp user_risc_boot_tb.vvp | tee test.log
 
diff --git a/verilog/dv/user_risc_boot/uprj_netlists.v b/verilog/dv/user_risc_boot/uprj_netlists.v
index 1668caa..24c1d6d 100644
--- a/verilog/dv/user_risc_boot/uprj_netlists.v
+++ b/verilog/dv/user_risc_boot/uprj_netlists.v
@@ -16,14 +16,17 @@
 // Include caravel global defines for the number of the user project IO pads 
 `include "defines.v"
 `define USE_POWER_PINS
+`define UNIT_DELAY #1
 
 `ifdef GL
-      `include "libs.ref/sky130_fd_sc_hd/verilog/primitives.v"
-      `include "libs.ref/sky130_fd_sc_hd/verilog/sky130_fd_sc_hd.v"
-      `include "libs.ref/sky130_fd_sc_hvl/verilog/primitives.v"
-      `include "libs.ref/sky130_fd_sc_hvl/verilog/sky130_fd_sc_hvl.v"
 
-      `include "digital_core/src/digital_core.sv"
+       `include "libs.ref/sky130_fd_sc_hd/verilog/primitives.v"
+       `include "libs.ref/sky130_fd_sc_hd/verilog/sky130_fd_sc_hd.v"
+       `include "libs.ref/sky130_fd_sc_hvl/verilog/primitives.v"
+       `include "libs.ref/sky130_fd_sc_hvl/verilog/sky130_fd_sc_hvl.v"
+
+
+
       `include "glbl_cfg.v"
       `include "sdram.v"
       `include "spi_master.v"
@@ -66,6 +69,11 @@
      `include "lib/sync_fifo.sv"
      `include "lib/async_fifo.sv"  
 `else
+     `include "libs.ref/sky130_fd_sc_hd/verilog/primitives.v"
+     `include "libs.ref/sky130_fd_sc_hd/verilog/sky130_fd_sc_hd.v"
+     `include "libs.ref/sky130_fd_sc_hvl/verilog/primitives.v"
+     `include "libs.ref/sky130_fd_sc_hvl/verilog/sky130_fd_sc_hvl.v"
+
      `include "spi_master/src/spim_top.sv"
      `include "spi_master/src/spim_regs.sv"
      `include "spi_master/src/spim_clkgen.sv"
@@ -136,4 +144,7 @@
      `include "lib/sync_fifo.sv"
 
      `include "user_project_wrapper.v"
+     // we are using netlist file for clk_skew_adjust as it has 
+     // standard cell + power pin
+     `include "gl/clk_skew_adjust.v"
 `endif
diff --git a/verilog/dv/user_uart/Makefile b/verilog/dv/user_uart/Makefile
index 45b15cc..c05ec68 100644
--- a/verilog/dv/user_uart/Makefile
+++ b/verilog/dv/user_uart/Makefile
@@ -63,7 +63,7 @@
 ifeq ($(SIM),RTL)
 	iverilog -g2005-sv -DFUNCTIONAL -DSIM -I $(PDK_PATH) \
 	-I $(CARAVEL_BEHAVIOURAL_MODELS) -I $(CARAVEL_RTL_PATH) \
-	-I $(UPRJ_BEHAVIOURAL_MODELS)    -I $(UPRJ_RTL_PATH) \
+	-I $(UPRJ_BEHAVIOURAL_MODELS)    -I $(UPRJ_RTL_PATH) -I $(UPRJ_VERILOG_PATH) \
 	-I $(UPRJ_BEHAVIOURAL_AGENTS)    \
 	-I $(UPRJ_INCLUDE_PATH1)    -I $(UPRJ_INCLUDE_PATH2) \
 	$< -o $@ 
diff --git a/verilog/dv/user_uart/run_iverilog b/verilog/dv/user_uart/run_iverilog
index 00d1d51..6cac66f 100755
--- a/verilog/dv/user_uart/run_iverilog
+++ b/verilog/dv/user_uart/run_iverilog
@@ -28,13 +28,13 @@
 rm crt_tcm.o user_uart.o
 
 #iverilog with waveform dump
-iverilog -g2005-sv -DWFDUMP -I $PDK_PATH -I  ../../../caravel/verilog/rtl -I ../ -I ../../../verilog/rtl -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_uart_tb.v -o user_uart_tb.vvp
+iverilog -g2005-sv -DWFDUMP -DFUNCTIONAL -DSIM -I $PDK_PATH -I  ../../../caravel/verilog/rtl  -I ../ -I ../../../verilog/rtl -I ../ -I ../../../verilog -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_uart_tb.v -o user_uart_tb.vvp
 
 
-#iverilog -g2005-sv -I $PDK_PATH -I  ../../../caravel/verilog/rtl -I ../ -I ../../../verilog/rtl -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_uart_tb.v -o user_uart_tb.vvp
+#iverilog -g2005-sv -I $PDK_PATH -DFUNCTIONAL -DSIM -I  ../../../caravel/verilog/rtl -I ../ -I ../../../verilog/rtl -I ../../../verilog -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_uart_tb.v -o user_uart_tb.vvp
 
 # GLS
-#iverilog -g2005-sv -DGL -I $PDK_PATH -I  ../../../caravel/verilog/rtl -I ../../gl -I ../ -I ../../../verilog/rtl -I /home/dinesha/workarea/pdk/sky130A -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_uart_tb.v -o user_uart_tb.vvp
+#iverilog -g2005-sv -DGL -I $PDK_PATH -I  ../../../caravel/verilog/rtl  -I ../ -I ../../../verilog/rtl -I ../../../verilog -I /home/dinesha/workarea/pdk/sky130A -I ../../../verilog/rtl/syntacore/scr1/src/includes   -I ../../../verilog/rtl/sdram_ctrl/src/defs -I $CARAVEL_ROOT/verilog/dv/caravel -I ../model -I ../agents user_uart_tb.v -o user_uart_tb.vvp
 
 vvp user_uart_tb.vvp | tee test.log
 
diff --git a/verilog/dv/user_uart/uprj_netlists.v b/verilog/dv/user_uart/uprj_netlists.v
index 5e42730..d140c85 100644
--- a/verilog/dv/user_uart/uprj_netlists.v
+++ b/verilog/dv/user_uart/uprj_netlists.v
@@ -16,12 +16,16 @@
 // Include caravel global defines for the number of the user project IO pads 
 `include "defines.v"
 `define USE_POWER_PINS
+`define UNIT_DELAY #1
 
 `ifdef GL
-      `include "libs.ref/sky130_fd_sc_hd/verilog/primitives.v"
-      `include "libs.ref/sky130_fd_sc_hd/verilog/sky130_fd_sc_hd.v"
-      `include "libs.ref/sky130_fd_sc_hvl/verilog/primitives.v"
-      `include "libs.ref/sky130_fd_sc_hvl/verilog/sky130_fd_sc_hvl.v"
+
+       `include "libs.ref/sky130_fd_sc_hd/verilog/primitives.v"
+       `include "libs.ref/sky130_fd_sc_hd/verilog/sky130_fd_sc_hd.v"
+       `include "libs.ref/sky130_fd_sc_hvl/verilog/primitives.v"
+       `include "libs.ref/sky130_fd_sc_hvl/verilog/sky130_fd_sc_hvl.v"
+
+
 
       `include "glbl_cfg.v"
       `include "sdram.v"
@@ -34,6 +38,13 @@
      `include "wb_host.v"
 
 `else
+
+     `include "libs.ref/sky130_fd_sc_hd/verilog/primitives.v"
+     `include "libs.ref/sky130_fd_sc_hd/verilog/sky130_fd_sc_hd.v"
+     `include "libs.ref/sky130_fd_sc_hvl/verilog/primitives.v"
+     `include "libs.ref/sky130_fd_sc_hvl/verilog/sky130_fd_sc_hvl.v"
+
+
      `include "spi_master/src/spim_top.sv"
      `include "spi_master/src/spim_regs.sv"
      `include "spi_master/src/spim_clkgen.sv"
@@ -104,4 +115,7 @@
      `include "lib/sync_fifo.sv"
 
      `include "user_project_wrapper.v"
+     // we are using netlist file for clk_skew_adjust as it has 
+     // standard cell + power pin
+     `include "gl/clk_skew_adjust.v"
 `endif
diff --git a/verilog/dv/user_uart/user_uart_tb.v b/verilog/dv/user_uart/user_uart_tb.v
index 3dcc653..cfe4819 100644
--- a/verilog/dv/user_uart/user_uart_tb.v
+++ b/verilog/dv/user_uart/user_uart_tb.v
@@ -150,9 +150,6 @@
 	   initial begin
 	   	$dumpfile("risc_boot.vcd");
 	   	$dumpvars(4, user_uart_tb);
-
-		#1000;
-		$finish;
 	   end
        `endif
 
diff --git a/verilog/dv/wb_port/Makefile b/verilog/dv/wb_port/Makefile
index f1565bb..19c32ee 100644
--- a/verilog/dv/wb_port/Makefile
+++ b/verilog/dv/wb_port/Makefile
@@ -51,7 +51,7 @@
 ifeq ($(SIM),RTL)
 	iverilog -g2005-sv -DFUNCTIONAL -DSIM -I $(PDK_PATH) \
 	-I $(CARAVEL_BEHAVIOURAL_MODELS) -I $(CARAVEL_RTL_PATH) \
-	-I $(UPRJ_BEHAVIOURAL_MODELS)    -I $(UPRJ_RTL_PATH) \
+	-I $(UPRJ_BEHAVIOURAL_MODELS)    -I $(UPRJ_RTL_PATH) -I $(UPRJ_VERILOG_PATH) \
 	-I $(UPRJ_INCLUDE_PATH1)    -I $(UPRJ_INCLUDE_PATH2) \
 	$< -o $@ 
 else  
diff --git a/verilog/rtl/clk_skew_adjust/src/clk_skew_adjust.gv b/verilog/rtl/clk_skew_adjust/src/clk_skew_adjust.gv
new file mode 100644
index 0000000..038ef52
--- /dev/null
+++ b/verilog/rtl/clk_skew_adjust/src/clk_skew_adjust.gv
@@ -0,0 +1,194 @@
+//////////////////////////////////////////////////////////////////////////////
+// SPDX-FileCopyrightText: 2021 , Dinesh Annayya                          
+// 
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// SPDX-License-Identifier: Apache-2.0
+// SPDX-FileContributor: Created by Dinesh Annayya <dinesha@opencores.org>
+//
+//////////////////////////////////////////////////////////////////////
+////                                                              ////
+////  clock skew adjust                                          ////
+////                                                              ////
+////  This file is part of the YIFive cores project               ////
+////  https://github.com/dineshannayya/yifive_r0.git              ////
+////  http://www.opencores.org/cores/yifive/                      ////
+////                                                              ////
+////  Description                                                 ////
+////      This block is useful for global clock skew adjustment   ////
+////      logic implementation:                                   ////
+////        clk_out = (sel=0) ? clk_in :                          ////
+////                  (sel=1) ? clk_d1 :                          ////
+////                  (sel=1) ? clk_d2 :                          ////
+////                  .....                                       ////
+////                  (sel=15)? clk_d15 :clk_in                   ////
+////                                                              ////
+////     Note: each d* indicate clk buf delay                     ////
+////                                                              ////
+////                                                              ////
+////  To Do:                                                      ////
+////    nothing                                                   ////
+////                                                              ////
+////  Author(s):                                                  ////
+////      - Dinesh Annayya, dinesha@opencores.org                 ////
+////                                                              ////
+////  Revision :                                                  ////
+////    0.0 - 29th Feb 2021, Dinesh A                             ////
+////          Initial version                                     ////
+///
+////                                                              ////
+//////////////////////////////////////////////////////////////////////
+////                                                              ////
+//// Copyright (C) 2000 Authors and OPENCORES.ORG                 ////
+////                                                              ////
+//// This source file may be used and distributed without         ////
+//// restriction provided that this copyright statement is not    ////
+//// removed from the file and that any derivative work contains  ////
+//// the original copyright notice and the associated disclaimer. ////
+////                                                              ////
+//// This source file is free software; you can redistribute it   ////
+//// and/or modify it under the terms of the GNU Lesser General   ////
+//// Public License as published by the Free Software Foundation; ////
+//// either version 2.1 of the License, or (at your option) any   ////
+//// later version.                                               ////
+////                                                              ////
+//// This source is distributed in the hope that it will be       ////
+//// useful, but WITHOUT ANY WARRANTY; without even the implied   ////
+//// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR      ////
+//// PURPOSE.  See the GNU Lesser General Public License for more ////
+//// details.                                                     ////
+////                                                              ////
+//// You should have received a copy of the GNU Lesser General    ////
+//// Public License along with this source; if not, download it   ////
+//// from http://www.opencores.org/lgpl.shtml                     ////
+////                                                              ////
+//////////////////////////////////////////////////////////////////////
+// Clock-in is east pad direction
+// clock out give in other three direction for better placement
+/////////////////////////////////////////////////////////////////////
+module clk_skew_adjust(clk_in, sel, clk_out);
+  input  clk_in;
+  output clk_out;
+  input [3:0] sel;
+  wire in0;
+  wire in1;
+  wire in2;
+  wire in3;
+  wire in4;
+  wire in5;
+  wire in6;
+  wire in7;
+  wire in8;
+  wire in9;
+  wire in10;
+  wire in11;
+  wire in12;
+  wire in13;
+  wire in14;
+  wire in15;
+
+  wire clk_d1;
+  wire clk_d2;
+  wire clk_d3;
+  wire clk_d4;
+  wire clk_d5;
+  wire clk_d6;
+  wire clk_d7;
+  wire clk_d8;
+  wire clk_d9;
+  wire clk_d10;
+  wire clk_d11;
+  wire clk_d12;
+  wire clk_d13;
+  wire clk_d14;
+  wire clk_d15;
+
+  wire d00;
+  wire d01;
+  wire d02;
+  wire d03;
+  wire d04;
+  wire d05;
+  wire d06;
+  wire d07;
+  wire d10;
+  wire d11;
+  wire d12;
+  wire d13;
+  wire d20;
+  wire d21;
+  wire d30;
+
+
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_1  (.A(clk_in),  .X(clk_d1));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_2  (.A(clk_d1),    .X(clk_d2));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_3  (.A(clk_d2),    .X(clk_d3));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_4  (.A(clk_d3),    .X(clk_d4));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_5  (.A(clk_d4),    .X(clk_d5));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_6  (.A(clk_d5),    .X(clk_d6));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_7  (.A(clk_d6),    .X(clk_d7));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_8  (.A(clk_d7),    .X(clk_d8));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_9  (.A(clk_d8),    .X(clk_d9));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_10 (.A(clk_d9),    .X(clk_d10));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_11 (.A(clk_d10),   .X(clk_d11));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_12 (.A(clk_d11),   .X(clk_d12));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_13 (.A(clk_d12),   .X(clk_d13));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_14 (.A(clk_d13),   .X(clk_d14));
+  sky130_fd_sc_hd__clkbuf_1 clkbuf_15 (.A(clk_d14),   .X(clk_d15));
+
+
+  // Tap point selection
+  assign in0  = clk_in;
+  assign in1  = clk_d1;
+  assign in2  = clk_d2;
+  assign in3  = clk_d3;
+  assign in4  = clk_d4;
+  assign in5  = clk_d5;
+  assign in6  = clk_d6;
+  assign in7  = clk_d7;
+  assign in8  = clk_d8;
+  assign in9  = clk_d9;
+  assign in10 = clk_d10;
+  assign in11 = clk_d11;
+  assign in12 = clk_d12;
+  assign in13 = clk_d13;
+  assign in14 = clk_d14;
+  assign in15 = clk_d15;
+
+
+  // first level mux - 8
+  sky130_fd_sc_hd__mux2_1 u_mux_level_00 ( .X (d00) , .A0 (in0),  .A1(in1),  .S(sel[0]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_01 ( .X (d01) , .A0 (in2),  .A1(in3),  .S(sel[0]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_02 ( .X (d02) , .A0 (in4),  .A1(in5),  .S(sel[0]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_03 ( .X (d03) , .A0 (in6),  .A1(in7),  .S(sel[0]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_04 ( .X (d04) , .A0 (in8),  .A1(in9),  .S(sel[0]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_05 ( .X (d05) , .A0 (in10), .A1(in11), .S(sel[0]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_06 ( .X (d06) , .A0 (in12), .A1(in13), .S(sel[0]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_07 ( .X (d07) , .A0 (in14), .A1(in15), .S(sel[0]));
+
+  // second level mux - 4
+  sky130_fd_sc_hd__mux2_1 u_mux_level_10 ( .X (d10) , .A0 (d00), .A1(d01), .S(sel[1]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_11 ( .X (d11) , .A0 (d02), .A1(d03), .S(sel[1]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_12 ( .X (d12) , .A0 (d04), .A1(d05), .S(sel[1]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_13 ( .X (d13) , .A0 (d06), .A1(d07), .S(sel[1]));
+
+  // third level mux - 2
+  sky130_fd_sc_hd__mux2_1 u_mux_level_20 ( .X (d20) , .A0 (d10), .A1(d11), .S(sel[2]));
+  sky130_fd_sc_hd__mux2_1 u_mux_level_21 ( .X (d21) , .A0 (d12), .A1(d13), .S(sel[2]));
+
+  // fourth level mux - 1
+  sky130_fd_sc_hd__mux2_1 u_mux_level_30 ( .X (d30) , .A0 (d20), .A1(d21), .S(sel[3]));
+
+
+  assign clk_out = d30;
+
+endmodule
diff --git a/verilog/rtl/clk_skew_adjust/synth/Makefile b/verilog/rtl/clk_skew_adjust/synth/Makefile
new file mode 100644
index 0000000..f6ae1df
--- /dev/null
+++ b/verilog/rtl/clk_skew_adjust/synth/Makefile
@@ -0,0 +1,49 @@
+# //////////////////////////////////////////////////////////////////////////////
+# // SPDX-FileCopyrightText: 2021, Dinesh Annayya
+# // 
+# // Licensed under the Apache License, Version 2.0 (the "License");
+# // you may not use this file except in compliance with the License.
+# // You may obtain a copy of the License at
+# //
+# //      http://www.apache.org/licenses/LICENSE-2.0
+# //
+# // Unless required by applicable law or agreed to in writing, software
+# // distributed under the License is distributed on an "AS IS" BASIS,
+# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# // See the License for the specific language governing permissions and
+# // limitations under the License.
+# // SPDX-License-Identifier: Apache-2.0
+# // SPDX-FileContributor: Dinesh Annayya <dinesha@opencores.org>
+# // //////////////////////////////////////////////////////////////////////////
+#------------------------------------------------------------------------------
+# Makefile for Synthesis
+#------------------------------------------------------------------------------
+
+# Paths
+export ROOT_DIR := $(shell pwd)
+export REPORT_DIR  := $(ROOT_DIR)/reports
+export NETLIST_DIR  := $(ROOT_DIR)/netlist
+export TMP_DIR  := $(ROOT_DIR)/tmp
+
+
+# Targets
+.PHONY: clean create synth
+
+default: clean create synth
+
+synth: clean create 
+	yosys -g -c synth.tcl -l synth.log
+
+create:
+	mkdir -p ./tmp/synthesis; 
+	mkdir -p ./reports; 
+	mkdir -p ./netlist;
+	$(OPENLANE_ROOT)/scripts/libtrim.pl $(PDK_ROOT)/sky130A/libs.ref/sky130_fd_sc_hd/lib/sky130_fd_sc_hd__tt_025C_1v80.lib $(PDK_ROOT)/sky130A/libs.tech/openlane/sky130_fd_sc_hd/no_synth.cells > ./tmp/trimmed.lib
+
+
+
+clean:
+	$(RM) -R synth.log
+	$(RM) -R $(REPORT_DIR)
+	$(RM) -R $(NETLIST_DIR)
+	$(RM) -R $(TMP_DIR)
diff --git a/verilog/rtl/clk_skew_adjust/synth/synth.tcl b/verilog/rtl/clk_skew_adjust/synth/synth.tcl
new file mode 100755
index 0000000..b7adea6
--- /dev/null
+++ b/verilog/rtl/clk_skew_adjust/synth/synth.tcl
@@ -0,0 +1,385 @@
+# //////////////////////////////////////////////////////////////////////////////
+# // SPDX-FileCopyrightText: 2021, Dinesh Annayya
+# // 
+# // Licensed under the Apache License, Version 2.0 (the "License");
+# // you may not use this file except in compliance with the License.
+# // You may obtain a copy of the License at
+# //
+# //      http://www.apache.org/licenses/LICENSE-2.0
+# //
+# // Unless required by applicable law or agreed to in writing, software
+# // distributed under the License is distributed on an "AS IS" BASIS,
+# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# // See the License for the specific language governing permissions and
+# // limitations under the License.
+# // SPDX-License-Identifier: Apache-2.0
+# // SPDX-FileContributor: Dinesh Annayya <dinesha@opencores.org>
+# // //////////////////////////////////////////////////////////////////////////
+# inputs expected as env vars
+#set opt $::env(SYNTH_OPT)
+########### config.tcl ##################
+# User config
+
+# User config
+set ::env(DESIGN_DIR) ../
+
+set ::env(PROJ_DIR) ../../../../
+
+# User config
+set ::env(DESIGN_NAME) clk_mux
+
+# Change if needed
+set ::env(VERILOG_FILES) [glob  \
+	../src/clk_mux.v  ]
+
+
+set ::env(SYNTH_DEFINES) [list YOSYS ]
+
+
+set ::env(LIB_SYNTH)  ./tmp/trimmed.lib
+
+
+# Fill this
+set ::env(CLOCK_PERIOD) "10"
+#set ::env(CLOCK_PORT) "mclk"
+set ::env(CLOCK_TREE_SYNTH) 0
+
+set ::env(RUN_SIMPLE_CTS) 0
+set ::env(SYNTH_BUFFERING) 0
+set ::env(SYNTH_SIZING) 0
+
+set ::env(SYNTH_DRIVING_CELL) "sky130_fd_sc_hd__inv_8"
+set ::env(SYNTH_CAP_LOAD) "17.65"
+set ::env(SYNTH_MAX_TRAN) "[expr {0.1*10.0}]"
+
+set ::env(SYNTH_MAX_FANOUT) 6
+set ::env(FP_CORE_UTIL) 50
+set ::env(PL_TARGET_DENSITY) [ expr ($::env(FP_CORE_UTIL)+5) / 100.0 ]
+set ::env(CELL_PAD) 4
+
+set ::env(SYNTH_NO_FLAT) "0"
+
+
+set ::env(SYNTH_STRATEGY) "AREA 0"
+set ::env(SYNTH_TIELO_PORT) "sky130_fd_sc_hd__conb_1 LO"
+set ::env(SYNTH_TIEHI_PORT) "sky130_fd_sc_hd__conb_1 HI"
+set ::env(SYNTH_MIN_BUF_PORT) "sky130_fd_sc_hd__buf_2 A X"
+
+
+#set ::env(CLOCK_NET) $::env(CLOCK_PORT)
+
+
+
+set ::env(yosys_tmp_file_tag) "./tmp/"
+set ::env(TMP_DIR) "./tmp/"
+set ::env(yosys_netlist_dir) "./netlist"
+set ::env(yosys_report_file_tag) "./reports/yosys"
+set ::env(yosys_result_file_tag) "./reports/yosys.synthesis"
+
+set ::env(SAVE_NETLIST) $::env(yosys_netlist_dir)/$::env(DESIGN_NAME).gv
+
+
+
+########### End of config.tcl
+set buffering $::env(SYNTH_BUFFERING)
+set sizing $::env(SYNTH_SIZING)
+
+yosys -import
+
+set vtop $::env(DESIGN_NAME)
+#set sdc_file $::env(SDC_FILE)
+set sclib $::env(LIB_SYNTH)
+
+if { [info exists ::env(SYNTH_DEFINES) ] } {
+	foreach define $::env(SYNTH_DEFINES) {
+		log "Defining $define"
+		verilog_defines -D$define
+	}
+}
+
+set vIdirsArgs ""
+if {[info exist ::env(VERILOG_INCLUDE_DIRS)]} {
+	foreach dir $::env(VERILOG_INCLUDE_DIRS) {
+		log "Adding include file -I$dir "
+		lappend vIdirsArgs "-I$dir"
+	}
+	set vIdirsArgs [join $vIdirsArgs]
+}
+
+
+
+if { [info exists ::env(EXTRA_LIBS) ] } {
+	foreach lib $::env(EXTRA_LIBS) {
+		read_liberty {*}$vIdirsArgs -lib -ignore_miss_dir -setattr blackbox $lib
+	}
+}
+
+
+
+# ns expected (in sdc as well)
+set clock_period [expr {$::env(CLOCK_PERIOD)*1000}]
+
+set driver  $::env(SYNTH_DRIVING_CELL)
+set cload   $::env(SYNTH_CAP_LOAD)
+# input pin cap of IN_3VX8
+set max_FO $::env(SYNTH_MAX_FANOUT)
+if {![info exist ::env(SYNTH_MAX_TRAN)]} {
+	set ::env(SYNTH_MAX_TRAN) [expr {0.1*$clock_period}]
+} else {
+	set ::env(SYNTH_MAX_TRAN) [expr {$::env(SYNTH_MAX_TRAN) * 1000}]
+}
+set max_Tran $::env(SYNTH_MAX_TRAN)
+
+
+# Mapping parameters
+set A_factor  0.00
+set B_factor  0.88
+set F_factor  0.00
+
+# Don't change these unless you know what you are doing
+set stat_ext    ".stat.rpt"
+set chk_ext    ".chk.rpt"
+set gl_ext      ".gl.v"
+set constr_ext  ".$clock_period.constr"
+set timing_ext  ".timing.txt"
+set abc_ext     ".abc"
+
+
+# get old sdc, add library specific stuff for abc scripts
+set sdc_file $::env(yosys_tmp_file_tag).sdc
+set outfile [open ${sdc_file} w]
+#puts $outfile $sdc_data
+puts $outfile "set_driving_cell ${driver}"
+puts $outfile "set_load ${cload}"
+close $outfile
+
+
+# ABC Scrips
+set abc_rs_K    "resub,-K,"
+set abc_rs      "resub"
+set abc_rsz     "resub,-z"
+set abc_rw_K    "rewrite,-K,"
+set abc_rw      "rewrite"
+set abc_rwz     "rewrite,-z"
+set abc_rf      "refactor"
+set abc_rfz     "refactor,-z"
+set abc_b       "balance"
+
+set abc_resyn2        "${abc_b}; ${abc_rw}; ${abc_rf}; ${abc_b}; ${abc_rw}; ${abc_rwz}; ${abc_b}; ${abc_rfz}; ${abc_rwz}; ${abc_b}"
+set abc_share         "strash; multi,-m; ${abc_resyn2}"
+set abc_resyn2a       "${abc_b};${abc_rw};${abc_b};${abc_rw};${abc_rwz};${abc_b};${abc_rwz};${abc_b}"
+set abc_resyn3        "balance;resub;resub,-K,6;balance;resub,-z;resub,-z,-K,6;balance;resub,-z,-K,5;balance"
+set abc_resyn2rs      "${abc_b};${abc_rs_K},6;${abc_rw};${abc_rs_K},6,-N,2;${abc_rf};${abc_rs_K},8;${abc_rw};${abc_rs_K},10;${abc_rwz};${abc_rs_K},10,-N,2;${abc_b},${abc_rs_K},12;${abc_rfz};${abc_rs_K},12,-N,2;${abc_rwz};${abc_b}"
+
+set abc_choice        "fraig_store; ${abc_resyn2}; fraig_store; ${abc_resyn2}; fraig_store; fraig_restore"
+set abc_choice2      "fraig_store; balance; fraig_store; ${abc_resyn2}; fraig_store; ${abc_resyn2}; fraig_store; ${abc_resyn2}; fraig_store; fraig_restore"
+
+set abc_map_old_cnt			"map,-p,-a,-B,0.2,-A,0.9,-M,0"
+set abc_map_old_dly         "map,-p,-B,0.2,-A,0.9,-M,0"
+set abc_retime_area         "retime,-D,{D},-M,5"
+set abc_retime_dly          "retime,-D,{D},-M,6"
+set abc_map_new_area        "amap,-m,-Q,0.1,-F,20,-A,20,-C,5000"
+
+set abc_area_recovery_1       "${abc_choice}; map;"
+set abc_area_recovery_2       "${abc_choice2}; map;"
+
+set map_old_cnt			    "map,-p,-a,-B,0.2,-A,0.9,-M,0"
+set map_old_dly			    "map,-p,-B,0.2,-A,0.9,-M,0"
+set abc_retime_area   	"retime,-D,{D},-M,5"
+set abc_retime_dly    	"retime,-D,{D},-M,6"
+set abc_map_new_area  	"amap,-m,-Q,0.1,-F,20,-A,20,-C,5000"
+
+if {$buffering==1} {
+	set abc_fine_tune		"buffer,-N,${max_FO},-S,${max_Tran};upsize,{D};dnsize,{D}"
+} elseif {$sizing} {
+	set abc_fine_tune       "upsize,{D};dnsize,{D}"
+} else {
+	set abc_fine_tune       ""
+}
+
+
+set delay_scripts [list \
+	"+read_constr,${sdc_file};fx;mfs;strash;refactor;${abc_resyn2};${abc_retime_dly}; scleanup;${abc_map_old_dly};retime,-D,{D};${abc_fine_tune};stime,-p;print_stats -m" \
+	\
+	"+read_constr,${sdc_file};fx;mfs;strash;refactor;${abc_resyn2};${abc_retime_dly}; scleanup;${abc_choice2};${abc_map_old_dly};${abc_area_recovery_2}; retime,-D,{D};${abc_fine_tune};stime,-p;print_stats -m" \
+	\
+	"+read_constr,${sdc_file};fx;mfs;strash;refactor;${abc_resyn2};${abc_retime_dly}; scleanup;${abc_choice};${abc_map_old_dly};${abc_area_recovery_1}; retime,-D,{D};${abc_fine_tune};stime,-p;print_stats -m" \
+	\
+	"+read_constr,${sdc_file};fx;mfs;strash;refactor;${abc_resyn2};${abc_retime_area};scleanup;${abc_choice2};${abc_map_new_area};${abc_choice2};${abc_map_old_dly};retime,-D,{D};${abc_fine_tune};stime,-p;print_stats -m" \
+	]
+
+set area_scripts [list \
+	"+read_constr,${sdc_file};fx;mfs;strash;refactor;${abc_resyn2};${abc_retime_area};scleanup;${abc_choice2};${abc_map_new_area};retime,-D,{D};${abc_fine_tune};stime,-p;print_stats -m" \
+	\
+	"+read_constr,${sdc_file};fx;mfs;strash;refactor;${abc_resyn2};${abc_retime_area};scleanup;${abc_choice2};${abc_map_new_area};${abc_choice2};${abc_map_new_area};retime,-D,{D};${abc_fine_tune};stime,-p;print_stats -m" \
+	\
+	"+read_constr,${sdc_file};fx;mfs;strash;refactor;${abc_choice2};${abc_retime_area};scleanup;${abc_choice2};${abc_map_new_area};${abc_choice2};${abc_map_new_area};retime,-D,{D};${abc_fine_tune};stime,-p;print_stats -m" \
+	]
+
+set all_scripts [list {*}$delay_scripts {*}$area_scripts]
+
+set strategy_parts [split $::env(SYNTH_STRATEGY)]
+
+proc synth_strategy_format_err { } {
+	upvar area_scripts area_scripts
+	upvar delay_scripts delay_scripts
+	log -stderr "\[ERROR] Misformatted SYNTH_STRATEGY (\"$::env(SYNTH_STRATEGY)\")."
+	log -stderr "\[ERROR] Correct format is \"DELAY|AREA 0-[expr [llength $delay_scripts]-1]|0-[expr [llength $area_scripts]-1]\"."
+	exit 1
+}
+
+if { [llength $strategy_parts] != 2 } {
+	synth_strategy_format_err
+}
+
+set strategy_type [lindex $strategy_parts 0]
+set strategy_type_idx [lindex $strategy_parts 1]
+
+if { $strategy_type != "AREA" && $strategy_type != "DELAY" } {
+	log -stderr "\[ERROR] AREA|DELAY tokens not found. ($strategy_type)"
+	synth_strategy_format_err
+}
+
+if { $strategy_type == "DELAY" && $strategy_type_idx >= [llength $delay_scripts] } {
+	log -stderr "\[ERROR] strategy index ($strategy_type_idx) is too high."
+	synth_strategy_format_err
+}
+
+if { $strategy_type == "AREA" && $strategy_type_idx >= [llength $area_scripts] } {
+	log -stderr "\[ERROR] strategy index ($strategy_type_idx) is too high."
+	synth_strategy_format_err
+}
+
+if { $strategy_type == "DELAY" } {
+	set strategy $strategy_type_idx
+} else {
+	set strategy [expr {[llength $delay_scripts]+$strategy_type_idx}]
+}
+
+
+for { set i 0 } { $i < [llength $::env(VERILOG_FILES)] } { incr i } {
+	read_verilog -sv {*}$vIdirsArgs [lindex $::env(VERILOG_FILES) $i]
+}
+
+if { [info exists ::env(VERILOG_FILES_BLACKBOX)] } {
+	foreach verilog_file $::env(VERILOG_FILES_BLACKBOX) {
+		read_verilog -sv {*}$vIdirsArgs -lib $verilog_file
+	}
+}
+select -module $vtop
+show -format dot -prefix $::env(TMP_DIR)/synthesis/hierarchy
+select -clear
+
+hierarchy -check -top $vtop
+
+# Infer tri-state buffers.
+set tbuf_map false
+if { [info exists ::env(TRISTATE_BUFFER_MAP)] } {
+        if { [file exists $::env(TRISTATE_BUFFER_MAP)] } {
+                set tbuf_map true
+                tribuf
+        } else {
+          log "WARNING: TRISTATE_BUFFER_MAP is defined but could not be found: $::env(TRISTATE_BUFFER_MAP)"
+        }
+}
+
+if { $::env(SYNTH_NO_FLAT) } {
+	synth -top $vtop
+} else {
+	synth -top $vtop -flatten
+}
+
+share -aggressive
+opt
+opt_clean -purge
+
+tee -o "$::env(yosys_report_file_tag)_pre.stat" stat
+
+# Map tri-state buffers.
+if { $tbuf_map } {
+        log {mapping tbuf}
+        techmap -map $::env(TRISTATE_BUFFER_MAP)
+        simplemap
+}
+
+# handle technology mapping of 4-MUX, and tell Yosys to infer 4-muxes
+if { [info exists ::env(SYNTH_MUX4_MAP)] && [file exists $::env(SYNTH_MUX4_MAP)] } {
+  muxcover -mux4 
+  techmap -map $::env(SYNTH_MUX4_MAP)
+  simplemap
+}
+
+# handle technology mapping of 2-MUX
+if { [info exists ::env(SYNTH_MUX_MAP)] && [file exists $::env(SYNTH_MUX_MAP)] } {
+  techmap -map $::env(SYNTH_MUX_MAP)
+  simplemap
+}
+
+# handle technology mapping of latches
+if { [info exists ::env(SYNTH_LATCH_MAP)] && [file exists $::env(SYNTH_LATCH_MAP)] } {
+	techmap -map $::env(SYNTH_LATCH_MAP)
+	simplemap
+}
+
+dfflibmap -liberty $sclib
+tee -o "$::env(yosys_report_file_tag)_dff.stat" stat
+
+if { [info exists ::env(SYNTH_EXPLORE)] && $::env(SYNTH_EXPLORE) } {
+	design -save myDesign
+
+	for { set index 0 }  { $index < [llength $all_scripts] }  { incr index } {
+		log "\[INFO\]: ABC: WireLoad : S_$index"
+		design -load myDesign
+
+		abc -D $clock_period \
+			-constr "$sdc_file" \
+			-liberty $sclib  \
+			-script [lindex $all_scripts $index]
+
+		setundef -zero
+
+		hilomap -hicell {*}$::env(SYNTH_TIEHI_PORT) -locell {*}$::env(SYNTH_TIELO_PORT)
+
+		# get rid of the assignments that make verilog2def fail
+		splitnets
+		opt_clean -purge
+		insbuf -buf {*}$::env(SYNTH_MIN_BUF_PORT)
+
+		tee -o "$::env(yosys_report_file_tag)_$index$chk_ext" check
+		write_verilog -noattr -noexpr -nohex -nodec -defparam "$::env(yosys_result_file_tag)_$index.v"
+		design -reset
+	}
+} else {
+
+	log "\[INFO\]: ABC: WireLoad : S_$strategy"
+
+	abc -D $clock_period \
+		-constr "$sdc_file" \
+		-liberty $sclib  \
+		-script [lindex $all_scripts $strategy] \
+		-showtmp;
+
+	setundef -zero
+
+	hilomap -hicell {*}$::env(SYNTH_TIEHI_PORT) -locell {*}$::env(SYNTH_TIELO_PORT)
+
+	# get rid of the assignments that make verilog2def fail
+	splitnets
+	opt_clean -purge
+	insbuf -buf {*}$::env(SYNTH_MIN_BUF_PORT)
+
+	tee -o "$::env(yosys_report_file_tag)_$strategy$chk_ext" check
+	write_verilog -noattr -noexpr -nohex -nodec -defparam "$::env(SAVE_NETLIST)"
+}
+
+if { $::env(SYNTH_NO_FLAT) } {
+	design -reset
+	file copy -force $::env(SAVE_NETLIST) $::env(yosys_tmp_file_tag)_unflat.v
+	read_verilog -sv $::env(SAVE_NETLIST)
+	synth -top $vtop -flatten
+	splitnets
+	opt_clean -purge
+	insbuf -buf {*}$::env(SYNTH_MIN_BUF_PORT)
+	write_verilog -noattr -noexpr -nohex -nodec -defparam "$::env(SAVE_NETLIST)"
+	tee -o "$::env(yosys_report_file_tag)_$strategy$chk_ext" check
+}
diff --git a/verilog/rtl/digital_core/src/digital_core.sv b/verilog/rtl/digital_core/src/digital_core.sv
index 2ead606..2e042cd 100644
--- a/verilog/rtl/digital_core/src/digital_core.sv
+++ b/verilog/rtl/digital_core/src/digital_core.sv
@@ -112,28 +112,29 @@
 //////////////////////////////////////////////////////////////////////
 
 
-module digital_core 
-#(
-	parameter      SDR_DW   = 8,  // SDR Data Width 
-        parameter      SDR_BW   = 1,  // SDR Byte Width
-	parameter      WB_WIDTH = 32  // WB ADDRESS/DARA WIDTH
- ) (
+module digital_core (
 `ifdef USE_POWER_PINS
+    inout vdda1,	// User area 1 3.3V supply
+    inout vdda2,	// User area 2 3.3V supply
+    inout vssa1,	// User area 1 analog ground
+    inout vssa2,	// User area 2 analog ground
     inout vccd1,	// User area 1 1.8V supply
+    inout vccd2,	// User area 2 1.8v supply
     inout vssd1,	// User area 1 digital ground
+    inout vssd2,	// User area 2 digital ground
 `endif
     input   wire                       wb_clk_i        ,  // System clock
     input   wire                       user_clock2     ,  // user Clock
     input   wire                       wb_rst_i        ,  // Regular Reset signal
 
-    input   wire                       wbd_ext_cyc_i   ,  // strobe/request
-    input   wire                       wbd_ext_stb_i   ,  // strobe/request
-    input   wire [WB_WIDTH-1:0]        wbd_ext_adr_i   ,  // address
-    input   wire                       wbd_ext_we_i    ,  // write
-    input   wire [WB_WIDTH-1:0]        wbd_ext_dat_i   ,  // data output
-    input   wire [3:0]                 wbd_ext_sel_i   ,  // byte enable
-    output  wire [WB_WIDTH-1:0]        wbd_ext_dat_o   ,  // data input
-    output  wire                       wbd_ext_ack_o   ,  // acknowlegement
+    input   wire                       wbs_cyc_i       ,  // strobe/request
+    input   wire                       wbs_stb_i       ,  // strobe/request
+    input   wire [WB_WIDTH-1:0]        wbs_adr_i       ,  // address
+    input   wire                       wbs_we_i        ,  // write
+    input   wire [WB_WIDTH-1:0]        wbs_dat_i       ,  // data output
+    input   wire [3:0]                 wbs_sel_i       ,  // byte enable
+    output  wire [WB_WIDTH-1:0]        wbs_dat_o       ,  // data input
+    output  wire                       wbs_ack_o       ,  // acknowlegement
 
  
     // Logic Analyzer Signals
@@ -155,6 +156,9 @@
 // Local Parameter Declaration
 // --------------------------------------------------
 
+parameter      SDR_DW   = 8;  // SDR Data Width 
+parameter      SDR_BW   = 1;  // SDR Byte Width
+parameter      WB_WIDTH = 32; // WB ADDRESS/DARA WIDTH
 
 //---------------------------------------------------------------------
 // Wishbone Risc V Instruction Memory Interface
@@ -263,6 +267,30 @@
 wire [7:0]                        cfg_glb_ctrl  ;
 wire [31:0]                       cfg_clk_ctrl1 ;
 wire [31:0]                       cfg_clk_ctrl2 ;
+wire [3:0]                        cfg_cska_wi   ; // clock skew adjust for wishbone interconnect
+wire [3:0]                        cfg_cska_riscv; // clock skew adjust for riscv
+wire [3:0]                        cfg_cska_uart ; // clock skew adjust for uart
+wire [3:0]                        cfg_cska_spi  ; // clock skew adjust for spi
+wire [3:0]                        cfg_cska_sdram; // clock skew adjust for sdram
+wire [3:0]                        cfg_cska_glbl ; // clock skew adjust for global reg
+wire [3:0]                        cfg_cska_wh   ; // clock skew adjust for web host
+
+
+wire                              wbd_clk_wi    ; // clock for wishbone interconnect
+wire                              wbd_clk_riscv ; // clock for riscv
+wire                              wbd_clk_uart  ; // clock for uart
+wire                              wbd_clk_spi   ; // clock for spi
+wire                              wbd_clk_sdram ; // clock for sdram
+wire                              wbd_clk_glbl  ; // clock for global reg
+wire                              wbd_clk_wh    ; // clock for global reg
+
+wire [3:0]                        cfg_cska_sd_co; // clock skew adjust for sdram clock out
+wire [3:0]                        cfg_cska_sd_ci; // clock skew adjust for sdram clock input
+wire [3:0]                        cfg_cska_sp_co; // clock skew adjust for SPI clock out
+
+wire                              io_out_29_    ; // Internally tapped SDRAM clock
+wire                              io_in_29_     ; // Clock Skewed Pad SDRAM clock
+wire                              io_in_30_     ; // SPI clock out
 
 //------------------------------------------------
 // Configuration Parameter
@@ -289,11 +317,22 @@
 /////////////////////////////////////////////////////////
 // Generating acive low wishbone reset                 
 // //////////////////////////////////////////////////////
-assign wbd_int_rst_n = cfg_glb_ctrl[0];
-assign cpu_rst_n     = cfg_glb_ctrl[1];
-assign spi_rst_n     = cfg_glb_ctrl[2];
-assign sdram_rst_n   = cfg_glb_ctrl[3];
+assign wbd_int_rst_n  = cfg_glb_ctrl[0];
+assign cpu_rst_n      = cfg_glb_ctrl[1];
+assign spi_rst_n      = cfg_glb_ctrl[2];
+assign sdram_rst_n    = cfg_glb_ctrl[3];
 
+assign cfg_cska_wi    = cfg_clk_ctrl1[3:0];
+assign cfg_cska_riscv = cfg_clk_ctrl1[7:4];
+assign cfg_cska_uart  = cfg_clk_ctrl1[11:8];
+assign cfg_cska_spi   = cfg_clk_ctrl1[15:12];
+assign cfg_cska_sdram = cfg_clk_ctrl1[19:16];
+assign cfg_cska_glbl  = cfg_clk_ctrl1[23:20];
+assign cfg_cska_wh    = cfg_clk_ctrl1[27:24];
+
+assign cfg_cska_sd_co = cfg_clk_ctrl2[3:0]; // SDRAM clock out control
+assign cfg_cska_sd_ci = cfg_clk_ctrl2[7:4]; // SDRAM clock in control
+assign cfg_cska_sp_co = cfg_clk_ctrl2[11:8];// SPI clock out control
 
 
 wb_host u_wb_host(
@@ -301,19 +340,19 @@
     // Master Port
        .wbm_rst_i        (wb_rst_i             ),  
        .wbm_clk_i        (wb_clk_i             ),  
-       .wbm_cyc_i        (wbd_ext_cyc_i        ),  
-       .wbm_stb_i        (wbd_ext_stb_i        ),  
-       .wbm_adr_i        (wbd_ext_adr_i        ),  
-       .wbm_we_i         (wbd_ext_we_i         ),  
-       .wbm_dat_i        (wbd_ext_dat_i        ),  
-       .wbm_sel_i        (wbd_ext_sel_i        ),  
-       .wbm_dat_o        (wbd_ext_dat_o        ),  
-       .wbm_ack_o        (wbd_ext_ack_o        ),  
+       .wbm_cyc_i        (wbs_cyc_i            ),  
+       .wbm_stb_i        (wbs_stb_i            ),  
+       .wbm_adr_i        (wbs_adr_i            ),  
+       .wbm_we_i         (wbs_we_i             ),  
+       .wbm_dat_i        (wbs_dat_i            ),  
+       .wbm_sel_i        (wbs_sel_i            ),  
+       .wbm_dat_o        (wbs_dat_o            ),  
+       .wbm_ack_o        (wbs_ack_o            ),  
        .wbm_err_o        (                     ),  
 
     // Slave Port
        .wbs_clk_out      (wbd_clk_int          ),  
-       .wbs_clk_i        (wbd_clk_int          ),  
+       .wbs_clk_i        (wbd_clk_wh           ),  
        .wbs_cyc_o        (wbd_int_cyc_i        ),  
        .wbs_stb_o        (wbd_int_stb_i        ),  
        .wbs_adr_o        (wbd_int_adr_i        ),  
@@ -362,8 +401,8 @@
     // .test_rst_n          (1'b1                      ), // Moved inside IP
 
     
-    .wb_rst_n               (wbd_int_rst_n              ),
-    .wb_clk                 (wbd_clk_int               ),
+    .wb_rst_n               (wbd_int_rst_n             ),
+    .wb_clk                 (wbd_clk_riscv             ),
     // Instruction memory interface
     .wbd_imem_stb_o         (wbd_riscv_imem_stb_i      ),
     .wbd_imem_adr_o         (wbd_riscv_imem_adr_i      ),
@@ -399,7 +438,7 @@
 `endif
 ) u_spi_master
 (
-    .mclk                   (wbd_clk_int               ),
+    .mclk                   (wbd_clk_spi               ),
     .rst_n                  (spi_rst_n                 ),
 
     .wbd_stb_i              (wbd_spim_stb_o            ),
@@ -415,7 +454,7 @@
 
     // Pad Interface
     .io_in                  (io_in[35:30]              ),
-    .io_out                 (io_out[35:30]             ),
+    .io_out                 ({io_out[35:31],io_in_30_} ),
     .io_oeb                 (io_oeb[35:30]             )
 
 );
@@ -435,7 +474,7 @@
                     
     // WB bus
     .wb_rst_n               (wbd_int_rst_n              ),
-    .wb_clk_i               (wbd_clk_int                ),
+    .wb_clk_i               (wbd_clk_sdram              ),
     
     .wb_stb_i               (wbd_sdram_stb_o            ),
     .wb_addr_i              (wbd_sdram_adr_o            ),
@@ -452,9 +491,9 @@
     .sdram_resetn           (sdram_rst_n               ),
 
     /** Pad Interface       **/
-    .io_in                  (io_in[29:0]               ),
+    .io_in                  ({io_in_29_,io_in[28:0]}   ),
     .io_oeb                 (io_oeb[29:0]              ),
-    .io_out                 (io_out[29:0]              ),
+    .io_out                 ({io_out_29_,io_out[28:0]} ),
                     
     /* Parameters */
     .sdr_init_done          (sdr_init_done             ),
@@ -473,7 +512,7 @@
 
 
 wb_interconnect  u_intercon (
-         .clk_i         (wbd_clk_int           ), 
+         .clk_i         (wbd_clk_wi            ), 
          .rst_n         (wbd_int_rst_n         ),
 
          // Master 0 Interface
@@ -557,8 +596,9 @@
 
 glbl_cfg   u_glbl_cfg (
 
-       .mclk                   (wbd_clk_int               ),
+       .mclk                   (wbd_clk_glbl              ),
        .reset_n                (wbd_int_rst_n             ),
+       .user_clock1            (wb_clk_i                  ),
        .user_clock2            (user_clock2               ),
        .device_idcode          (                          ),
 
@@ -608,7 +648,7 @@
 
 uart_core   u_uart_core (
         .arst_n                 (wbd_int_rst_n            ), // async reset
-        .app_clk                (wbd_clk_int              ),
+        .app_clk                (wbd_clk_uart             ),
 
         // Reg Bus Interface Signal
        .reg_cs                 (wbd_uart_stb_o            ),
@@ -628,5 +668,128 @@
 
      );
 
+////////////////////////////////////////////////////////////////
+// Clock Skew adjust module
+// ///////////////////////////////////////////////////////////
+
+// Wishbone interconnect clock skew control
+clk_skew_adjust u_skew_wi
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (wbd_clk_int                 ), 
+	       .sel        (cfg_cska_wi                 ), 
+	       .clk_out    (wbd_clk_wi                  ) 
+       );
+
+// riscv clock skew control
+clk_skew_adjust u_skew_riscv
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (wbd_clk_int                 ), 
+	       .sel        (cfg_cska_riscv              ), 
+	       .clk_out    (wbd_clk_riscv               ) 
+       );
+
+// uart clock skew control
+clk_skew_adjust u_skew_uart
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (wbd_clk_int                 ), 
+	       .sel        (cfg_cska_uart               ), 
+	       .clk_out    (wbd_clk_uart                ) 
+       );
+
+// spi clock skew control
+clk_skew_adjust u_skew_spi
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (wbd_clk_int                ), 
+	       .sel        (cfg_cska_spi               ), 
+	       .clk_out    (wbd_clk_spi                ) 
+       );
+
+// sdram clock skew control
+clk_skew_adjust u_skew_sdram
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (wbd_clk_int                ), 
+	       .sel        (cfg_cska_sdram             ), 
+	       .clk_out    (wbd_clk_sdram              ) 
+       );
+
+// global clock skew control
+clk_skew_adjust u_skew_glbl
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (wbd_clk_int               ), 
+	       .sel        (cfg_cska_glbl             ), 
+	       .clk_out    (wbd_clk_glbl              ) 
+       );
+
+// wb_host clock skew control
+clk_skew_adjust u_skew_wh
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (wbd_clk_int               ), 
+	       .sel        (cfg_cska_wh               ), 
+	       .clk_out    (wbd_clk_wh                ) 
+       );
+
+// SDRAM clock out clock skew control
+clk_skew_adjust u_skew_sd_co
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (io_out_29_                ), 
+	       .sel        (cfg_cska_sd_co            ), 
+	       .clk_out    (io_out[29]                ) 
+       );
+
+// Clock Skey for PAD SDRAM clock
+clk_skew_adjust u_skew_sd_ci
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (io_in[29]                 ), 
+	       .sel        (cfg_cska_sd_ci            ), 
+	       .clk_out    (io_in_29_                 ) 
+       );
+
+// Clock Skey for SPI clock out
+clk_skew_adjust u_skew_sp_co
+       (
+`ifdef USE_POWER_PINS
+               .vccd1      (vccd1                      ),// User area 1 1.8V supply
+               .vssd1      (vssd1                      ),// User area 1 digital ground
+`endif
+	       .clk_in     (io_in_30_                 ), 
+	       .sel        (cfg_cska_sp_co            ), 
+	       .clk_out    (io_out[30]                ) 
+       );
 
 endmodule : digital_core
diff --git a/verilog/rtl/digital_core/src/glbl_cfg.sv b/verilog/rtl/digital_core/src/glbl_cfg.sv
index a91502e..74557e7 100644
--- a/verilog/rtl/digital_core/src/glbl_cfg.sv
+++ b/verilog/rtl/digital_core/src/glbl_cfg.sv
@@ -66,6 +66,7 @@
 module glbl_cfg (
 
         input logic             mclk,
+        input logic             user_clock1,
         input logic             user_clock2,
         input logic             reset_n,
         output logic [31:0]     device_idcode,
@@ -1067,7 +1068,7 @@
 wire   sdram_clk_div;
 wire   sdram_ref_clk;
 
-assign sdram_ref_clk = (cfg_sdram_clk_src_sel) ? user_clock2 : mclk;
+assign sdram_ref_clk = (cfg_sdram_clk_src_sel) ? user_clock2 :user_clock1;
 
 
 
@@ -1090,7 +1091,7 @@
 wire   cpu_clk_div;
 wire   cpu_ref_clk;
 
-assign cpu_ref_clk = (cfg_cpu_clk_src_sel) ? user_clock2 : mclk;
+assign cpu_ref_clk = (cfg_cpu_clk_src_sel) ? user_clock2 : user_clock1;
 assign cpu_clk     = (cfg_cpu_clk_div)     ? cpu_clk_div : cpu_ref_clk;
 
 
@@ -1109,7 +1110,7 @@
 wire   rtc_clk_div;
 wire   rtc_ref_clk;
 
-assign rtc_ref_clk = (cfg_rtc_clk_src_sel) ? user_clock2 : mclk;
+assign rtc_ref_clk = (cfg_rtc_clk_src_sel) ? user_clock2 : user_clock1;
 assign rtc_clk     = (cfg_rtc_clk_div)     ? rtc_clk_div : rtc_ref_clk;
 
 
diff --git a/verilog/rtl/lib/async_wb.sv b/verilog/rtl/lib/async_wb.sv
index 9908e54..df1fbce 100644
--- a/verilog/rtl/lib/async_wb.sv
+++ b/verilog/rtl/lib/async_wb.sv
@@ -15,7 +15,6 @@
 // SPDX-License-Identifier: Apache-2.0
 // SPDX-FileContributor: Created by Dinesh Annayya <dinesha@opencores.org>
 //
-/*********************************************************************
 //////////////////////////////////////////////////////////////////////
 ////                                                              ////
 ////  Async Wishbone Interface                                    ////
diff --git a/verilog/rtl/sdram_ctrl/src/defs/sdrc_define.v b/verilog/rtl/sdram_ctrl/src/defs/sdrc_define.v
index dc66c23..2430831 100755
--- a/verilog/rtl/sdram_ctrl/src/defs/sdrc_define.v
+++ b/verilog/rtl/sdram_ctrl/src/defs/sdrc_define.v
@@ -14,8 +14,8 @@
 // limitations under the License.
 // SPDX-License-Identifier: Apache-2.0
 // SPDX-FileContributor: Created by Dinesh Annayya <dinesha@opencores.org>
-//
-/*********************************************************************
+///////////////////////////////////////////////////////////////////////////
+
 `define SDR_REQ_ID_W       4
 
 `define SDR_RFSH_TIMER_W    12
diff --git a/verilog/rtl/sdram_ctrl/src/top/sdrc_top.v b/verilog/rtl/sdram_ctrl/src/top/sdrc_top.v
index ab49c52..6aba2a6 100755
--- a/verilog/rtl/sdram_ctrl/src/top/sdrc_top.v
+++ b/verilog/rtl/sdram_ctrl/src/top/sdrc_top.v
@@ -55,6 +55,8 @@
 		  at digital core level
              0.4 - 27th June 2021
 	          Unused port wb_cti_i removed
+             0.5 - 29th June 2021
+	          Wishbone Stagging FF added to break timing path
 
                                                              
  Copyright (C) 2000 Authors and OPENCORES.ORG                
@@ -218,6 +220,17 @@
 wire [APP_DW-1:0]     app_wr_data        ; // sdr write data
 wire  [APP_DW-1:0]    app_rd_data        ; // sdr read data
 
+//--------------------------------------------------
+//  WishBone Stagging FF
+//--------------------------------------------------
+wire                   wb_stag_stb_i     ;
+wire                   wb_stag_ack_o     ;
+wire [APP_AW-1:0]      wb_stag_addr_i    ;
+wire                   wb_stag_we_i      ; // 1 - Write, 0 - Read
+wire [APP_DW-1:0]      wb_stag_dat_i     ;
+wire [APP_DW/8-1:0]    wb_stag_sel_i     ; // Byte enable
+wire  [APP_DW-1:0]     wb_stag_dat_o     ;
+wire                   wb_stag_cyc_i     ;
 //-----------------------------------------------------------------
 // To avoid the logic at digital core, pad control are brought inside the
 // block to support efabless/carvel soc enviornmental support
@@ -254,19 +267,52 @@
 //wire #(1.0) sdram_pad_clk = sdram_clk;
 
 /************** Ends Here **************************/
+
+// Adding Wishbone stagging FF to break timing path
+//
+wb_stagging u_wb_stage (
+         .clk_i                 (wb_clk_i         ), 
+         .rst_n                 (wb_rst_n         ),
+         // WishBone Input master I/P
+         .m_wbd_dat_i           (wb_dat_i         ),
+         .m_wbd_adr_i           (wb_addr_i        ),
+         .m_wbd_sel_i           (wb_sel_i         ),
+         .m_wbd_we_i            (wb_we_i          ),
+         .m_wbd_cyc_i           (wb_cyc_i         ),
+         .m_wbd_stb_i           (wb_stb_i         ),
+         .m_wbd_tid_i           ('h0              ),
+         .m_wbd_dat_o           (wb_dat_o         ),
+         .m_wbd_ack_o           (wb_ack_o         ),
+         .m_wbd_err_o           (                 ),
+
+         // Slave Interface
+         .s_wbd_dat_i          (wb_stag_dat_o     ),
+         .s_wbd_ack_i          (wb_stag_ack_o     ),
+         .s_wbd_err_i          (1'b0              ),
+         .s_wbd_dat_o          (wb_stag_dat_i     ),
+         .s_wbd_adr_o          (wb_stag_addr_i    ),
+         .s_wbd_sel_o          (wb_stag_sel_i     ),
+         .s_wbd_we_o           (wb_stag_we_i      ),
+         .s_wbd_cyc_o          (wb_stag_cyc_i     ),
+         .s_wbd_stb_o          (wb_stag_stb_i     ),
+         .s_wbd_tid_o          (                  )
+
+);
+
+
 wb2sdrc #(.dw(APP_DW),.tw(tw),.bl(bl),.APP_AW(APP_AW)) u_wb2sdrc (
       // WB bus
           .wb_rst_n           (wb_rst_n           ) ,
           .wb_clk_i           (wb_clk_i           ) ,
 
-          .wb_stb_i           (wb_stb_i           ) ,
-          .wb_ack_o           (wb_ack_o           ) ,
-          .wb_addr_i          (wb_addr_i          ) ,
-          .wb_we_i            (wb_we_i            ) ,
-          .wb_dat_i           (wb_dat_i           ) ,
-          .wb_sel_i           (wb_sel_i           ) ,
-          .wb_dat_o           (wb_dat_o           ) ,
-          .wb_cyc_i           (wb_cyc_i           ) ,
+          .wb_stb_i           (wb_stag_stb_i      ) ,
+          .wb_ack_o           (wb_stag_ack_o      ) ,
+          .wb_addr_i          (wb_stag_addr_i     ) ,
+          .wb_we_i            (wb_stag_we_i       ) ,
+          .wb_dat_i           (wb_stag_dat_i      ) ,
+          .wb_sel_i           (wb_stag_sel_i      ) ,
+          .wb_dat_o           (wb_stag_dat_o      ) ,
+          .wb_cyc_i           (wb_stag_cyc_i      ) ,
 
 
       //SDRAM Controller Hand-Shake Signal 
diff --git a/verilog/rtl/sdram_ctrl/src/wb2sdrc/wb2sdrc.v b/verilog/rtl/sdram_ctrl/src/wb2sdrc/wb2sdrc.v
index 1a6cc6b..f6eadc1 100755
--- a/verilog/rtl/sdram_ctrl/src/wb2sdrc/wb2sdrc.v
+++ b/verilog/rtl/sdram_ctrl/src/wb2sdrc/wb2sdrc.v
@@ -386,3 +386,4 @@
 
  
 endmodule
+
diff --git a/verilog/rtl/syntacore/scr1/sim/tests/common/link_tcm.ld b/verilog/rtl/syntacore/scr1/sim/tests/common/link_tcm.ld
index d2bccd2..1580b36 100644
--- a/verilog/rtl/syntacore/scr1/sim/tests/common/link_tcm.ld
+++ b/verilog/rtl/syntacore/scr1/sim/tests/common/link_tcm.ld
@@ -1,3 +1,4 @@
+/*
 //////////////////////////////////////////////////////////////////////////////
 // SPDX-FileCopyrightText: Syntacore LLC © 2016-2021
 // 
@@ -15,6 +16,7 @@
 // SPDX-License-Identifier: Apache-2.0
 // SPDX-FileContributor: Syntacore LLC
 // //////////////////////////////////////////////////////////////////////////
+*/
 /*
 * @file       <link.ld>
 * @brief      bare metal tests' linker script
diff --git a/verilog/rtl/syntacore/scr1/src/includes/scr1_arch_types.svh b/verilog/rtl/syntacore/scr1/src/includes/scr1_arch_types.svh
index ebe67e6..1b1b273 100644
--- a/verilog/rtl/syntacore/scr1/src/includes/scr1_arch_types.svh
+++ b/verilog/rtl/syntacore/scr1/src/includes/scr1_arch_types.svh
@@ -87,3 +87,4 @@
 } type_scr1_op_width_e;
 
 `endif //SCR1_ARCH_TYPES_SVH
+
diff --git a/verilog/rtl/uprj_netlists.v b/verilog/rtl/uprj_netlists.v
index e31d589..8445819 100644
--- a/verilog/rtl/uprj_netlists.v
+++ b/verilog/rtl/uprj_netlists.v
@@ -16,10 +16,10 @@
 // Include caravel global defines for the number of the user project IO pads 
 `include "defines.v"
 `define USE_POWER_PINS
+`define UNIT_DELAY #1
 
 `ifdef GL
     // Assume default net type to be wire because GL netlists don't have the wire definitions
-    `default_nettype wire
     `include "gl/user_project_wrapper.v"
     `include "gl/user_proj_example.v"
 `else
@@ -91,5 +91,8 @@
      `include "syntacore/scr1/src/top/scr1_imem_wb.sv"
      `include "syntacore/scr1/src/top/scr1_top_wb.sv"
      `include "lib/sync_fifo.sv"
-
+     // we are using netlist file for clk_skew_adjust as it has 
+     // standard cell + power pin
+     `include "gl/clk_skew_adjust.v"
 `endif
+
diff --git a/verilog/rtl/user_project_wrapper.v b/verilog/rtl/user_project_wrapper.v
index bf72715..404711c 100644
--- a/verilog/rtl/user_project_wrapper.v
+++ b/verilog/rtl/user_project_wrapper.v
@@ -85,8 +85,14 @@
 
 digital_core u_core (
     `ifdef USE_POWER_PINS
-	.vccd1(vccd1),	// User area 1 1.8V power
-	.vssd1(vssd1),	// User area 1 digital ground
+        .vdda1(vdda1),	// User area 1 3.3V supply
+        .vdda2(vdda2),	// User area 2 3.3V supply
+        .vssa1(vssa1),	// User area 1 analog ground
+        .vssa2(vssa2),	// User area 2 analog ground
+        .vccd1(vccd1),	// User area 1 1.8V supply
+        .vccd2(vccd2),	// User area 2 1.8v supply
+        .vssd1(vssd1),	// User area 1 digital ground
+        .vssd2(vssd2),	// User area 2 digital ground
     `endif
 
     .wb_clk_i(wb_clk_i),
@@ -95,14 +101,14 @@
 
     // MGMT SoC Wishbone Slave
 
-    .wbd_ext_cyc_i(wbs_cyc_i),
-    .wbd_ext_stb_i(wbs_stb_i),
-    .wbd_ext_we_i(wbs_we_i),
-    .wbd_ext_sel_i(wbs_sel_i),
-    .wbd_ext_adr_i(wbs_adr_i),
-    .wbd_ext_dat_i(wbs_dat_i),
-    .wbd_ext_ack_o(wbs_ack_o),
-    .wbd_ext_dat_o(wbs_dat_o),
+    .wbs_cyc_i(wbs_cyc_i),
+    .wbs_stb_i(wbs_stb_i),
+    .wbs_we_i(wbs_we_i),
+    .wbs_sel_i(wbs_sel_i),
+    .wbs_adr_i(wbs_adr_i),
+    .wbs_dat_i(wbs_dat_i),
+    .wbs_ack_o(wbs_ack_o),
+    .wbs_dat_o(wbs_dat_o),
 
     // Logic Analyzer
 
diff --git a/verilog/rtl/wb_host/src/wb_host.sv b/verilog/rtl/wb_host/src/wb_host.sv
index 6464c64..8032f11 100644
--- a/verilog/rtl/wb_host/src/wb_host.sv
+++ b/verilog/rtl/wb_host/src/wb_host.sv
@@ -135,11 +135,12 @@
 logic [31:0]        wbm_adr_int;
 logic               wbm_stb_int;
 
+logic [2:0]         cfg_wb_clk_ctr;
+
 
 assign wbm_rst_n = !wbm_rst_i;
 assign wbs_rst_n = !wbm_rst_i;
 
-assign wbs_clk_out =  wbm_clk_i;
 
 assign  wbm_dat_o   = (reg_sel) ? reg_rdata : wbm_dat_int;  // data input
 assign  wbm_ack_o   = (reg_sel) ? reg_ack   : wbm_ack_int; // acknowlegement
@@ -194,7 +195,7 @@
   reg_out [31:0] = 8'd0;
 
   case (sw_addr [1:0])
-    2'b00 :   reg_out [31:0] = {24'h0,cfg_glb_ctrl [7:0]};     
+    2'b00 :   reg_out [31:0] = {21'h0,cfg_wb_clk_ctr[2:0],cfg_glb_ctrl [7:0]};     
     2'b01 :   reg_out [31:0] = {24'h0,cfg_bank_sel [7:0]};     
     2'b10 :   reg_out [31:0] = cfg_clk_ctrl1 [31:0];    
     2'b11 :   reg_out [31:0] = cfg_clk_ctrl2 [31:0];     
@@ -204,14 +205,15 @@
 
 
 
-generic_register #(8,0  ) u_glb_ctrl (
-	      .we            ({8{sw_wr_en_0}}   ),		 
-	      .data_in       (wbm_dat_i[7:0]    ),
+generic_register #(11,0  ) u_glb_ctrl (
+	      .we            ({11{sw_wr_en_0}}   ),		 
+	      .data_in       (wbm_dat_i[10:0]    ),
 	      .reset_n       (wbm_rst_n         ),
 	      .clk           (wbm_clk_i         ),
 	      
 	      //List of Outs
-	      .data_out      (cfg_glb_ctrl[7:0] )
+	      .data_out      ({cfg_wb_clk_ctr[2:0],
+		               cfg_glb_ctrl[7:0]} )
           );
 
 generic_register #(8,8'h30 ) u_bank_sel (
@@ -282,6 +284,28 @@
     );
 
 
+//----------------------------------
+// Generate Internal WishBone Clock
+//----------------------------------
+logic       wb_clk_div;
+logic       cfg_wb_clk_div;
+logic [1:0] cfg_wb_clk_ratio;
+
+assign    cfg_wb_clk_ratio =  cfg_wb_clk_ctr[1:0];
+assign    cfg_wb_clk_div   =  cfg_wb_clk_ctr[2];
+
+
+assign wbs_clk_out  = (cfg_wb_clk_div)  ? wb_clk_div : wbm_clk_i;
+
+
+clk_ctl #(1) u_wbclk (
+   // Outputs
+       .clk_o         (wb_clk_div      ),
+   // Inputs
+       .mclk          (wbm_clk_i       ),
+       .reset_n       (wbm_rst_n        ), 
+       .clk_div_ratio (cfg_wb_clk_ratio )
+   );
 
 
 endmodule
