reg map update
diff --git a/verilog/rtl/user_reg_map.v b/verilog/rtl/user_reg_map.v
index 42f9e73..53d8331 100644
--- a/verilog/rtl/user_reg_map.v
+++ b/verilog/rtl/user_reg_map.v
@@ -9,6 +9,11 @@
 `define ADDR_SPACE_SSPI    32'h3001_00C0
 `define ADDR_SPACE_UART1   32'h3001_0100
 `define ADDR_SPACE_PINMUX  32'h3002_0000
+`define ADDR_SPACE_GLBL    32'h3002_0000
+`define ADDR_SPACE_GPIO    32'h3002_0040
+`define ADDR_SPACE_PWM     32'h3002_0080
+`define ADDR_SPACE_TIMER   32'h3002_00C0
+`define ADDR_SPACE_SEMA    32'h3002_0100
 `define ADDR_SPACE_WBHOST  32'h3008_0000
 
 //--------------------------------------------------
@@ -21,41 +26,74 @@
 `define WBHOST_PLL_CTRL           8'h10  // reg_4  - PLL Control
 
 //--------------------------------------------------
-// Pinmux Register
+// GLOBAL Register
 // -------------------------------------------------
+`define GLBL_CFG_CHIP_ID       8'h00  // reg_0  - Chip ID
+`define GLBL_CFG_CFG0          8'h04  // reg_1  - Global Config-0
+`define GLBL_CFG_CFG1          8'h08  // reg_2  - Global Config-1
+`define GLBL_CFG_INTR_MSK      8'h0C  // reg_3  - Global Interrupt Mask
+`define GLBL_CFG_INTR_STAT     8'h10  // reg_4  - Global Interrupt
+`define GLBL_CFG_MUTI_FUNC     8'h14  // reg_5  - Multi functional sel
+`define GLBL_CFG_SOFT_REG_0    8'h18  // reg_6 - Sof Register
+`define GLBL_CFG_SOFT_REG_1    8'h1C  // reg_7 - Sof Register
+`define GLBL_CFG_SOFT_REG_2    8'h20  // reg_8 - Sof Register
+`define GLBL_CFG_SOFT_REG_3    8'h24  // reg_9 - Sof Register
+`define GLBL_CFG_SOFT_REG_4    8'h28  // reg_10 - Sof Register
+`define GLBL_CFG_SOFT_REG_5    8'h2C  // reg_11 - Sof Register
 
-`define PINMUX_CHIP_ID           8'h00  // reg_0  - Chip ID
-`define PINMUX_GBL_CFG0          8'h04  // reg_1  - Global Config-2
-`define PINMUX_GBL_CFG1          8'h08  // reg_2  - Global Config-1
-`define PINMUX_GBL_INTR_MSK      8'h0C  // reg_3  - Global Interrupt Mask
-`define PINMUX_GBL_INTR          8'h10  // reg_4  - Global Interrupt
-`define PINMUX_GPIO_IDATA        8'h14  // reg_5  - GPIO Data In
-`define PINMUX_GPIO_ODATA        8'h18  // reg_6  - GPIO Data Out
-`define PINMUX_GPIO_DSEL         8'h1C  // reg_7  - GPIO Direction Select
-`define PINMUX_GPIO_TYPE         8'h20  // reg_8  - GPIO TYPE - Static/Waveform
-`define PINMUX_GPIO_INTR_STAT    8'h24  // reg_9  - GPIO Interrupt status
-`define PINMUX_GPIO_INTR_CLR     8'h24  // reg_9  - GPIO Interrupt Clear
-`define PINMUX_GPIO_INTR_SET     8'h28  // reg_10 - GPIO Interrupt Set
-`define PINMUX_GPIO_INTR_MASK    8'h2C  // reg_11 - GPIO Interrupt Mask
-`define PINMUX_GPIO_POS_INTR     8'h30  // reg_12 - GPIO Posedge Interrupt
-`define PINMUX_GPIO_NEG_INTR     8'h34  // reg_13 - GPIO Neg Interrupt
-`define PINMUX_GPIO_MULTI_FUNC   8'h38  // reg_14 - GPIO Multi Function
-`define PINMUX_SOFT_REG_0        8'h3C  // reg_15 - Soft Register
-`define PINMUX_CFG_PWM0          8'h40  // reg_16 - PWM Reg-0
-`define PINMUX_CFG_PWM1          8'h44  // reg_17 - PWM Reg-1
-`define PINMUX_CFG_PWM2          8'h48  // reg_18 - PWM Reg-2
-`define PINMUX_CFG_PWM3          8'h4C  // reg_19 - PWM Reg-3
-`define PINMUX_CFG_PWM4          8'h50  // reg_20 - PWM Reg-4
-`define PINMUX_CFG_PWM5          8'h54  // reg_21 - PWM Reg-5
-`define PINMUX_SOFT_REG_1        8'h58  // reg_22 - Sof Register
-`define PINMUX_SOFT_REG_2        8'h5C  // reg_23 - Sof Register
-`define PINMUX_SOFT_REG_3        8'h60  // reg_24 - Sof Register
-`define PINMUX_SOFT_REG_4        8'h64  // reg_25 - Sof Register
-`define PINMUX_SOFT_REG_5        8'h68  // reg_26 - Sof Register
-`define PINMUX_SOFT_REG_6        8'h6C  // reg_27 - Sof Register
-`define PINMUX_CFG_TIMER0        8'h70  // reg_28 - Timer-0
-`define PINMUX_CFG_TIMER1        8'h74  // reg_28 - Timer-1
-`define PINMUX_CFG_TIMER2        8'h78  // reg_28 - Timer-2
+//--------------------------------------------------
+// GPIO Register
+// -------------------------------------------------
+`define GPIO_CFG_DSEL         8'h00  // reg_0  - GPIO Direction Select
+`define GPIO_CFG_TYPE         8'h04  // reg_1  - GPIO TYPE - Static/Waveform
+`define GPIO_CFG_IDATA        8'h08  // reg_2  - GPIO Data In
+`define GPIO_CFG_ODATA        8'h0C  // reg_3  - GPIO Data Out
+`define GPIO_CFG_INTR_STAT    8'h10  // reg_4  - GPIO Interrupt status
+`define GPIO_CFG_INTR_CLR     8'h10  // reg_4  - GPIO Interrupt Clear
+`define GPIO_CFG_INTR_SET     8'h14  // reg_5  - GPIO Interrupt Set
+`define GPIO_CFG_INTR_MASK    8'h18  // reg_6  - GPIO Interrupt Mask
+`define GPIO_CFG_POS_INTR_SEL 8'h1C  // reg_7  - GPIO Posedge Interrupt
+`define GPIO_CFG_NEG_INTR_SEL 8'h20  // reg_8  - GPIO Neg Interrupt
+
+
+//--------------------------------------------------
+// PWM Register
+// -------------------------------------------------
+`define PWM_GLBL_CFG          8'h00  // reg_0 - PWM Global Config
+`define PWM_CFG_PWM_0         8'h04  // reg_1 - PWM Reg-0
+`define PWM_CFG_PWM_1         8'h08  // reg_2 - PWM Reg-1
+`define PWM_CFG_PWM_2         8'h0C  // reg_3 - PWM Reg-2
+`define PWM_CFG_PWM_3         8'h10  // reg_4 - PWM Reg-3
+`define PWM_CFG_PWM_4         8'h14  // reg_5 - PWM Reg-4
+`define PWM_CFG_PWM_5         8'h18  // reg_6 - PWM Reg-5
+
+//--------------------------------------------------
+// TIMER Register
+// -------------------------------------------------
+`define TIMER_CFG_GLBL        8'h00  // reg_0 - Global Config
+`define TIMER_CFG_TIMER_0     8'h04  // reg_1 - Timer-0
+`define TIMER_CFG_TIMER_1     8'h08  // reg_2 - Timer-1
+`define TIMER_CFG_TIMER_2     8'h0C  // reg_3 - Timer-2
+
+//--------------------------------------------------
+// SEMAPHORE Register
+// -------------------------------------------------
+`define SEMA_CFG_LOCK_0       8'h00  // reg_0  - Semaphore Lock Bit-0
+`define SEMA_CFG_LOCK_1       8'h04  // reg_1  - Semaphore Lock Bit-1
+`define SEMA_CFG_LOCK_2       8'h08  // reg_2  - Semaphore Lock Bit-2
+`define SEMA_CFG_LOCK_3       8'h0C  // reg_3  - Semaphore Lock Bit-3
+`define SEMA_CFG_LOCK_4       8'h10  // reg_4  - Semaphore Lock Bit-4
+`define SEMA_CFG_LOCK_5       8'h14  // reg_5  - Semaphore Lock Bit-5
+`define SEMA_CFG_LOCK_6       8'h18  // reg_6  - Semaphore Lock Bit-6
+`define SEMA_CFG_LOCK_7       8'h1C  // reg_7  - Semaphore Lock Bit-7
+`define SEMA_CFG_LOCK_8       8'h20  // reg_8  - Semaphore Lock Bit-8
+`define SEMA_CFG_LOCK_9       8'h24  // reg_9  - Semaphore Lock Bit-9
+`define SEMA_CFG_LOCK_10      8'h28  // reg_10 - Semaphore Lock Bit-10
+`define SEMA_CFG_LOCK_11      8'h2C  // reg_11 - Semaphore Lock Bit-11
+`define SEMA_CFG_LOCK_12      8'h30  // reg_12 - Semaphore Lock Bit-12
+`define SEMA_CFG_LOCK_13      8'h34  // reg_13 - Semaphore Lock Bit-13
+`define SEMA_CFG_LOCK_14      8'h38  // reg_14 - Semaphore Lock Bit-14
+`define SEMA_CFG_STATUS       8'h3C  // reg_15 - Semaphore Lock Status
 
 //----------------------------------------------------------
 // QSPI Register Map