From 291fce0ad7513ed072201ea6239c15fea5a18ad5 Mon Sep 17 00:00:00 2001
From: Sebastien Bourdeauducq <sebastien@milkymist.org>
Date: Sat, 27 Aug 2011 17:31:48 +0200
Subject: [PATCH] hostif: reduce max channels to 8

---
 hostif/genconn.py             |    2 +-
 hostif/genwb.py               |    2 +-
 hostif/tdc_hostif.vhd         |  139 +--
 hostif/tdc_hostif_package.vhd |  249 +----
 hostif/tdc_wb.vhd             | 1596 ++++-----------------------------
 5 files changed, 181 insertions(+), 1807 deletions(-)

diff --git a/hostif/genconn.py b/hostif/genconn.py
index dc2b998..a8669de 100755
--- a/hostif/genconn.py
+++ b/hostif/genconn.py
@@ -1,6 +1,6 @@
 #!/usr/bin/python
 
-nchan = 30
+nchan = 8
 
 for i in range(0,nchan):
     print "tdc_desh%d_o => wbg_des(%d downto %d)," % (i, i*64+63, i*64+32)
diff --git a/hostif/genwb.py b/hostif/genwb.py
index 5d6c8c0..bb41748 100755
--- a/hostif/genwb.py
+++ b/hostif/genwb.py
@@ -1,6 +1,6 @@
 #!/usr/bin/python
 
-nchan = 30
+nchan = 8
 
 print "peripheral {"
 print "    name = \"TDC\";"
diff --git a/hostif/tdc_hostif.vhd b/hostif/tdc_hostif.vhd
index 1670d03..22f24f8 100644
--- a/hostif/tdc_hostif.vhd
+++ b/hostif/tdc_hostif.vhd
@@ -12,6 +12,7 @@
 --
 -------------------------------------------------------------------------------
 -- last changes:
+-- 2011-08-27 SB Reduced supported channel count to 8
 -- 2011-08-26 SB Created file
 -------------------------------------------------------------------------------
 
@@ -39,7 +40,7 @@ entity tdc_hostif is
         rst_n_i   : in std_logic;
         wb_clk_i  : in std_logic;
         
-        wb_addr_i : in std_logic_vector(7 downto 0);
+        wb_addr_i : in std_logic_vector(5 downto 0);
         wb_data_i : in std_logic_vector(31 downto 0);
         wb_data_o : out std_logic_vector(31 downto 0);
         wb_cyc_i  : in std_logic;
@@ -87,7 +88,7 @@ signal wbg_fcr  : std_logic_vector(31 downto 0);
 signal wbg_fcsr : std_logic_vector(31 downto 0);
 
 -- maximum number of channels the host interface can support
-constant c_NCHAN: positive := 30;
+constant c_NCHAN: positive := 8;
 
 signal wbg_des    : std_logic_vector(c_NCHAN*64-1 downto 0);
 signal wbg_pol    : std_logic_vector(c_NCHAN-1 downto 0);
@@ -187,50 +188,6 @@ begin
             tdc_desl6_o => wbg_des(415 downto 384),
             tdc_desh7_o => wbg_des(511 downto 480),
             tdc_desl7_o => wbg_des(479 downto 448),
-            tdc_desh8_o => wbg_des(575 downto 544),
-            tdc_desl8_o => wbg_des(543 downto 512),
-            tdc_desh9_o => wbg_des(639 downto 608),
-            tdc_desl9_o => wbg_des(607 downto 576),
-            tdc_desh10_o => wbg_des(703 downto 672),
-            tdc_desl10_o => wbg_des(671 downto 640),
-            tdc_desh11_o => wbg_des(767 downto 736),
-            tdc_desl11_o => wbg_des(735 downto 704),
-            tdc_desh12_o => wbg_des(831 downto 800),
-            tdc_desl12_o => wbg_des(799 downto 768),
-            tdc_desh13_o => wbg_des(895 downto 864),
-            tdc_desl13_o => wbg_des(863 downto 832),
-            tdc_desh14_o => wbg_des(959 downto 928),
-            tdc_desl14_o => wbg_des(927 downto 896),
-            tdc_desh15_o => wbg_des(1023 downto 992),
-            tdc_desl15_o => wbg_des(991 downto 960),
-            tdc_desh16_o => wbg_des(1087 downto 1056),
-            tdc_desl16_o => wbg_des(1055 downto 1024),
-            tdc_desh17_o => wbg_des(1151 downto 1120),
-            tdc_desl17_o => wbg_des(1119 downto 1088),
-            tdc_desh18_o => wbg_des(1215 downto 1184),
-            tdc_desl18_o => wbg_des(1183 downto 1152),
-            tdc_desh19_o => wbg_des(1279 downto 1248),
-            tdc_desl19_o => wbg_des(1247 downto 1216),
-            tdc_desh20_o => wbg_des(1343 downto 1312),
-            tdc_desl20_o => wbg_des(1311 downto 1280),
-            tdc_desh21_o => wbg_des(1407 downto 1376),
-            tdc_desl21_o => wbg_des(1375 downto 1344),
-            tdc_desh22_o => wbg_des(1471 downto 1440),
-            tdc_desl22_o => wbg_des(1439 downto 1408),
-            tdc_desh23_o => wbg_des(1535 downto 1504),
-            tdc_desl23_o => wbg_des(1503 downto 1472),
-            tdc_desh24_o => wbg_des(1599 downto 1568),
-            tdc_desl24_o => wbg_des(1567 downto 1536),
-            tdc_desh25_o => wbg_des(1663 downto 1632),
-            tdc_desl25_o => wbg_des(1631 downto 1600),
-            tdc_desh26_o => wbg_des(1727 downto 1696),
-            tdc_desl26_o => wbg_des(1695 downto 1664),
-            tdc_desh27_o => wbg_des(1791 downto 1760),
-            tdc_desl27_o => wbg_des(1759 downto 1728),
-            tdc_desh28_o => wbg_des(1855 downto 1824),
-            tdc_desl28_o => wbg_des(1823 downto 1792),
-            tdc_desh29_o => wbg_des(1919 downto 1888),
-            tdc_desl29_o => wbg_des(1887 downto 1856),
             tdc_raw0_i => wbg_raw(31 downto 0),
             tdc_mesh0_i => wbg_mes(63 downto 32),
             tdc_mesl0_i => wbg_mes(31 downto 0),
@@ -255,72 +212,6 @@ begin
             tdc_raw7_i => wbg_raw(255 downto 224),
             tdc_mesh7_i => wbg_mes(511 downto 480),
             tdc_mesl7_i => wbg_mes(479 downto 448),
-            tdc_raw8_i => wbg_raw(287 downto 256),
-            tdc_mesh8_i => wbg_mes(575 downto 544),
-            tdc_mesl8_i => wbg_mes(543 downto 512),
-            tdc_raw9_i => wbg_raw(319 downto 288),
-            tdc_mesh9_i => wbg_mes(639 downto 608),
-            tdc_mesl9_i => wbg_mes(607 downto 576),
-            tdc_raw10_i => wbg_raw(351 downto 320),
-            tdc_mesh10_i => wbg_mes(703 downto 672),
-            tdc_mesl10_i => wbg_mes(671 downto 640),
-            tdc_raw11_i => wbg_raw(383 downto 352),
-            tdc_mesh11_i => wbg_mes(767 downto 736),
-            tdc_mesl11_i => wbg_mes(735 downto 704),
-            tdc_raw12_i => wbg_raw(415 downto 384),
-            tdc_mesh12_i => wbg_mes(831 downto 800),
-            tdc_mesl12_i => wbg_mes(799 downto 768),
-            tdc_raw13_i => wbg_raw(447 downto 416),
-            tdc_mesh13_i => wbg_mes(895 downto 864),
-            tdc_mesl13_i => wbg_mes(863 downto 832),
-            tdc_raw14_i => wbg_raw(479 downto 448),
-            tdc_mesh14_i => wbg_mes(959 downto 928),
-            tdc_mesl14_i => wbg_mes(927 downto 896),
-            tdc_raw15_i => wbg_raw(511 downto 480),
-            tdc_mesh15_i => wbg_mes(1023 downto 992),
-            tdc_mesl15_i => wbg_mes(991 downto 960),
-            tdc_raw16_i => wbg_raw(543 downto 512),
-            tdc_mesh16_i => wbg_mes(1087 downto 1056),
-            tdc_mesl16_i => wbg_mes(1055 downto 1024),
-            tdc_raw17_i => wbg_raw(575 downto 544),
-            tdc_mesh17_i => wbg_mes(1151 downto 1120),
-            tdc_mesl17_i => wbg_mes(1119 downto 1088),
-            tdc_raw18_i => wbg_raw(607 downto 576),
-            tdc_mesh18_i => wbg_mes(1215 downto 1184),
-            tdc_mesl18_i => wbg_mes(1183 downto 1152),
-            tdc_raw19_i => wbg_raw(639 downto 608),
-            tdc_mesh19_i => wbg_mes(1279 downto 1248),
-            tdc_mesl19_i => wbg_mes(1247 downto 1216),
-            tdc_raw20_i => wbg_raw(671 downto 640),
-            tdc_mesh20_i => wbg_mes(1343 downto 1312),
-            tdc_mesl20_i => wbg_mes(1311 downto 1280),
-            tdc_raw21_i => wbg_raw(703 downto 672),
-            tdc_mesh21_i => wbg_mes(1407 downto 1376),
-            tdc_mesl21_i => wbg_mes(1375 downto 1344),
-            tdc_raw22_i => wbg_raw(735 downto 704),
-            tdc_mesh22_i => wbg_mes(1471 downto 1440),
-            tdc_mesl22_i => wbg_mes(1439 downto 1408),
-            tdc_raw23_i => wbg_raw(767 downto 736),
-            tdc_mesh23_i => wbg_mes(1535 downto 1504),
-            tdc_mesl23_i => wbg_mes(1503 downto 1472),
-            tdc_raw24_i => wbg_raw(799 downto 768),
-            tdc_mesh24_i => wbg_mes(1599 downto 1568),
-            tdc_mesl24_i => wbg_mes(1567 downto 1536),
-            tdc_raw25_i => wbg_raw(831 downto 800),
-            tdc_mesh25_i => wbg_mes(1663 downto 1632),
-            tdc_mesl25_i => wbg_mes(1631 downto 1600),
-            tdc_raw26_i => wbg_raw(863 downto 832),
-            tdc_mesh26_i => wbg_mes(1727 downto 1696),
-            tdc_mesl26_i => wbg_mes(1695 downto 1664),
-            tdc_raw27_i => wbg_raw(895 downto 864),
-            tdc_mesh27_i => wbg_mes(1791 downto 1760),
-            tdc_mesl27_i => wbg_mes(1759 downto 1728),
-            tdc_raw28_i => wbg_raw(927 downto 896),
-            tdc_mesh28_i => wbg_mes(1855 downto 1824),
-            tdc_mesl28_i => wbg_mes(1823 downto 1792),
-            tdc_raw29_i => wbg_raw(959 downto 928),
-            tdc_mesh29_i => wbg_mes(1919 downto 1888),
-            tdc_mesl29_i => wbg_mes(1887 downto 1856),
             irq_ie0_i => wbg_ie(0),
             irq_ie1_i => wbg_ie(1),
             irq_ie2_i => wbg_ie(2),
@@ -328,29 +219,7 @@ begin
             irq_ie4_i => wbg_ie(4),
             irq_ie5_i => wbg_ie(5),
             irq_ie6_i => wbg_ie(6),
-            irq_ie7_i => wbg_ie(7),
-            irq_ie8_i => wbg_ie(8),
-            irq_ie9_i => wbg_ie(9),
-            irq_ie10_i => wbg_ie(10),
-            irq_ie11_i => wbg_ie(11),
-            irq_ie12_i => wbg_ie(12),
-            irq_ie13_i => wbg_ie(13),
-            irq_ie14_i => wbg_ie(14),
-            irq_ie15_i => wbg_ie(15),
-            irq_ie16_i => wbg_ie(16),
-            irq_ie17_i => wbg_ie(17),
-            irq_ie18_i => wbg_ie(18),
-            irq_ie19_i => wbg_ie(19),
-            irq_ie20_i => wbg_ie(20),
-            irq_ie21_i => wbg_ie(21),
-            irq_ie22_i => wbg_ie(22),
-            irq_ie23_i => wbg_ie(23),
-            irq_ie24_i => wbg_ie(24),
-            irq_ie25_i => wbg_ie(25),
-            irq_ie26_i => wbg_ie(26),
-            irq_ie27_i => wbg_ie(27),
-            irq_ie28_i => wbg_ie(28),
-            irq_ie29_i => wbg_ie(29)
+            irq_ie7_i => wbg_ie(7)
             -- end autogenerated connections
         );
     
diff --git a/hostif/tdc_hostif_package.vhd b/hostif/tdc_hostif_package.vhd
index cd10c0b..37b8b9f 100644
--- a/hostif/tdc_hostif_package.vhd
+++ b/hostif/tdc_hostif_package.vhd
@@ -12,6 +12,7 @@
 --
 -------------------------------------------------------------------------------
 -- last changes:
+-- 2011-08-27 SB Reduced supported channel count to 8
 -- 2011-08-25 SB Created file
 -------------------------------------------------------------------------------
 
@@ -37,7 +38,7 @@ component tdc_hostif is
         rst_n_i   : in std_logic;
         wb_clk_i  : in std_logic;
         
-        wb_addr_i : in std_logic_vector(7 downto 0);
+        wb_addr_i : in std_logic_vector(5 downto 0);
         wb_data_i : in std_logic_vector(31 downto 0);
         wb_data_o : out std_logic_vector(31 downto 0);
         wb_cyc_i  : in std_logic;
@@ -58,7 +59,7 @@ component tdc_wb is
   port (
     rst_n_i                                  : in     std_logic;
     wb_clk_i                                 : in     std_logic;
-    wb_addr_i                                : in     std_logic_vector(7 downto 0);
+    wb_addr_i                                : in     std_logic_vector(5 downto 0);
     wb_data_i                                : in     std_logic_vector(31 downto 0);
     wb_data_o                                : out    std_logic_vector(31 downto 0);
     wb_cyc_i                                 : in     std_logic;
@@ -103,96 +104,8 @@ component tdc_wb is
     tdc_desh7_o                              : out    std_logic_vector(31 downto 0);
 -- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 7 (low word)'
     tdc_desl7_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 8 (high word)'
-    tdc_desh8_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 8 (low word)'
-    tdc_desl8_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 9 (high word)'
-    tdc_desh9_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 9 (low word)'
-    tdc_desl9_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 10 (high word)'
-    tdc_desh10_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 10 (low word)'
-    tdc_desl10_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 11 (high word)'
-    tdc_desh11_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 11 (low word)'
-    tdc_desl11_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 12 (high word)'
-    tdc_desh12_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 12 (low word)'
-    tdc_desl12_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 13 (high word)'
-    tdc_desh13_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 13 (low word)'
-    tdc_desl13_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 14 (high word)'
-    tdc_desh14_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 14 (low word)'
-    tdc_desl14_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 15 (high word)'
-    tdc_desh15_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 15 (low word)'
-    tdc_desl15_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 16 (high word)'
-    tdc_desh16_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 16 (low word)'
-    tdc_desl16_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 17 (high word)'
-    tdc_desh17_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 17 (low word)'
-    tdc_desl17_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 18 (high word)'
-    tdc_desh18_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 18 (low word)'
-    tdc_desl18_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 19 (high word)'
-    tdc_desh19_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 19 (low word)'
-    tdc_desl19_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 20 (high word)'
-    tdc_desh20_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 20 (low word)'
-    tdc_desl20_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 21 (high word)'
-    tdc_desh21_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 21 (low word)'
-    tdc_desl21_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 22 (high word)'
-    tdc_desh22_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 22 (low word)'
-    tdc_desl22_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 23 (high word)'
-    tdc_desh23_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 23 (low word)'
-    tdc_desl23_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 24 (high word)'
-    tdc_desh24_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 24 (low word)'
-    tdc_desl24_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 25 (high word)'
-    tdc_desh25_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 25 (low word)'
-    tdc_desl25_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 26 (high word)'
-    tdc_desh26_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 26 (low word)'
-    tdc_desl26_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 27 (high word)'
-    tdc_desh27_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 27 (low word)'
-    tdc_desl27_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 28 (high word)'
-    tdc_desh28_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 28 (low word)'
-    tdc_desl28_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 29 (high word)'
-    tdc_desh29_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 29 (low word)'
-    tdc_desl29_o                             : out    std_logic_vector(31 downto 0);
 -- Port for std_logic_vector field: 'Value' in reg: 'Detected polarities'
-    tdc_pol_i                                : in     std_logic_vector(29 downto 0);
+    tdc_pol_i                                : in     std_logic_vector(7 downto 0);
 -- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 0'
     tdc_raw0_i                               : in     std_logic_vector(31 downto 0);
 -- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 0 (high word)'
@@ -241,138 +154,6 @@ component tdc_wb is
     tdc_mesh7_i                              : in     std_logic_vector(31 downto 0);
 -- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 7 (low word)'
     tdc_mesl7_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 8'
-    tdc_raw8_i                               : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 8 (high word)'
-    tdc_mesh8_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 8 (low word)'
-    tdc_mesl8_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 9'
-    tdc_raw9_i                               : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 9 (high word)'
-    tdc_mesh9_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 9 (low word)'
-    tdc_mesl9_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 10'
-    tdc_raw10_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 10 (high word)'
-    tdc_mesh10_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 10 (low word)'
-    tdc_mesl10_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 11'
-    tdc_raw11_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 11 (high word)'
-    tdc_mesh11_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 11 (low word)'
-    tdc_mesl11_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 12'
-    tdc_raw12_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 12 (high word)'
-    tdc_mesh12_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 12 (low word)'
-    tdc_mesl12_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 13'
-    tdc_raw13_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 13 (high word)'
-    tdc_mesh13_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 13 (low word)'
-    tdc_mesl13_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 14'
-    tdc_raw14_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 14 (high word)'
-    tdc_mesh14_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 14 (low word)'
-    tdc_mesl14_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 15'
-    tdc_raw15_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 15 (high word)'
-    tdc_mesh15_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 15 (low word)'
-    tdc_mesl15_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 16'
-    tdc_raw16_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 16 (high word)'
-    tdc_mesh16_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 16 (low word)'
-    tdc_mesl16_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 17'
-    tdc_raw17_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 17 (high word)'
-    tdc_mesh17_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 17 (low word)'
-    tdc_mesl17_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 18'
-    tdc_raw18_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 18 (high word)'
-    tdc_mesh18_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 18 (low word)'
-    tdc_mesl18_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 19'
-    tdc_raw19_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 19 (high word)'
-    tdc_mesh19_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 19 (low word)'
-    tdc_mesl19_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 20'
-    tdc_raw20_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 20 (high word)'
-    tdc_mesh20_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 20 (low word)'
-    tdc_mesl20_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 21'
-    tdc_raw21_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 21 (high word)'
-    tdc_mesh21_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 21 (low word)'
-    tdc_mesl21_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 22'
-    tdc_raw22_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 22 (high word)'
-    tdc_mesh22_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 22 (low word)'
-    tdc_mesl22_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 23'
-    tdc_raw23_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 23 (high word)'
-    tdc_mesh23_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 23 (low word)'
-    tdc_mesl23_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 24'
-    tdc_raw24_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 24 (high word)'
-    tdc_mesh24_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 24 (low word)'
-    tdc_mesl24_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 25'
-    tdc_raw25_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 25 (high word)'
-    tdc_mesh25_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 25 (low word)'
-    tdc_mesl25_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 26'
-    tdc_raw26_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 26 (high word)'
-    tdc_mesh26_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 26 (low word)'
-    tdc_mesl26_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 27'
-    tdc_raw27_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 27 (high word)'
-    tdc_mesh27_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 27 (low word)'
-    tdc_mesl27_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 28'
-    tdc_raw28_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 28 (high word)'
-    tdc_mesh28_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 28 (low word)'
-    tdc_mesl28_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 29'
-    tdc_raw29_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 29 (high word)'
-    tdc_mesh29_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 29 (low word)'
-    tdc_mesl29_i                             : in     std_logic_vector(31 downto 0);
     irq_ie0_i                                : in     std_logic;
     irq_ie1_i                                : in     std_logic;
     irq_ie2_i                                : in     std_logic;
@@ -381,28 +162,6 @@ component tdc_wb is
     irq_ie5_i                                : in     std_logic;
     irq_ie6_i                                : in     std_logic;
     irq_ie7_i                                : in     std_logic;
-    irq_ie8_i                                : in     std_logic;
-    irq_ie9_i                                : in     std_logic;
-    irq_ie10_i                               : in     std_logic;
-    irq_ie11_i                               : in     std_logic;
-    irq_ie12_i                               : in     std_logic;
-    irq_ie13_i                               : in     std_logic;
-    irq_ie14_i                               : in     std_logic;
-    irq_ie15_i                               : in     std_logic;
-    irq_ie16_i                               : in     std_logic;
-    irq_ie17_i                               : in     std_logic;
-    irq_ie18_i                               : in     std_logic;
-    irq_ie19_i                               : in     std_logic;
-    irq_ie20_i                               : in     std_logic;
-    irq_ie21_i                               : in     std_logic;
-    irq_ie22_i                               : in     std_logic;
-    irq_ie23_i                               : in     std_logic;
-    irq_ie24_i                               : in     std_logic;
-    irq_ie25_i                               : in     std_logic;
-    irq_ie26_i                               : in     std_logic;
-    irq_ie27_i                               : in     std_logic;
-    irq_ie28_i                               : in     std_logic;
-    irq_ie29_i                               : in     std_logic;
     irq_isc_i                                : in     std_logic;
     irq_icc_i                                : in     std_logic;
 -- Port for BIT field: 'Freeze request' in reg: 'Debug control'
diff --git a/hostif/tdc_wb.vhd b/hostif/tdc_wb.vhd
index 6cc48b8..9fe9fd1 100644
--- a/hostif/tdc_wb.vhd
+++ b/hostif/tdc_wb.vhd
@@ -2,11 +2,11 @@
 -- Title          : Wishbone slave core for TDC
 ---------------------------------------------------------------------------------------
 -- File           : tdc_wb.vhd
--- Author         : auto-generated by wbgen2 from tdc.wb
--- Created        : Thu Aug 25 22:28:17 2011
+-- Author         : auto-generated by wbgen2 from tdc_wb.wb
+-- Created        : Sat Aug 27 17:26:44 2011
 -- Standard       : VHDL'87
 ---------------------------------------------------------------------------------------
--- THIS FILE WAS GENERATED BY wbgen2 FROM SOURCE FILE tdc.wb
+-- THIS FILE WAS GENERATED BY wbgen2 FROM SOURCE FILE tdc_wb.wb
 -- DO NOT HAND-EDIT UNLESS IT'S ABSOLUTELY NECESSARY!
 ---------------------------------------------------------------------------------------
 
@@ -19,7 +19,7 @@ entity tdc_wb is
   port (
     rst_n_i                                  : in     std_logic;
     wb_clk_i                                 : in     std_logic;
-    wb_addr_i                                : in     std_logic_vector(7 downto 0);
+    wb_addr_i                                : in     std_logic_vector(5 downto 0);
     wb_data_i                                : in     std_logic_vector(31 downto 0);
     wb_data_o                                : out    std_logic_vector(31 downto 0);
     wb_cyc_i                                 : in     std_logic;
@@ -64,96 +64,8 @@ entity tdc_wb is
     tdc_desh7_o                              : out    std_logic_vector(31 downto 0);
 -- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 7 (low word)'
     tdc_desl7_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 8 (high word)'
-    tdc_desh8_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 8 (low word)'
-    tdc_desl8_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 9 (high word)'
-    tdc_desh9_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 9 (low word)'
-    tdc_desl9_o                              : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 10 (high word)'
-    tdc_desh10_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 10 (low word)'
-    tdc_desl10_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 11 (high word)'
-    tdc_desh11_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 11 (low word)'
-    tdc_desl11_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 12 (high word)'
-    tdc_desh12_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 12 (low word)'
-    tdc_desl12_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 13 (high word)'
-    tdc_desh13_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 13 (low word)'
-    tdc_desl13_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 14 (high word)'
-    tdc_desh14_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 14 (low word)'
-    tdc_desl14_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 15 (high word)'
-    tdc_desh15_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 15 (low word)'
-    tdc_desl15_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 16 (high word)'
-    tdc_desh16_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 16 (low word)'
-    tdc_desl16_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 17 (high word)'
-    tdc_desh17_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 17 (low word)'
-    tdc_desl17_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 18 (high word)'
-    tdc_desh18_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 18 (low word)'
-    tdc_desl18_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 19 (high word)'
-    tdc_desh19_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 19 (low word)'
-    tdc_desl19_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 20 (high word)'
-    tdc_desh20_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 20 (low word)'
-    tdc_desl20_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 21 (high word)'
-    tdc_desh21_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 21 (low word)'
-    tdc_desl21_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 22 (high word)'
-    tdc_desh22_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 22 (low word)'
-    tdc_desl22_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 23 (high word)'
-    tdc_desh23_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 23 (low word)'
-    tdc_desl23_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 24 (high word)'
-    tdc_desh24_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 24 (low word)'
-    tdc_desl24_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 25 (high word)'
-    tdc_desh25_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 25 (low word)'
-    tdc_desl25_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 26 (high word)'
-    tdc_desh26_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 26 (low word)'
-    tdc_desl26_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 27 (high word)'
-    tdc_desh27_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 27 (low word)'
-    tdc_desl27_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 28 (high word)'
-    tdc_desh28_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 28 (low word)'
-    tdc_desl28_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Deskew value for channel 29 (high word)'
-    tdc_desh29_o                             : out    std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Deskew value for channel 29 (low word)'
-    tdc_desl29_o                             : out    std_logic_vector(31 downto 0);
 -- Port for std_logic_vector field: 'Value' in reg: 'Detected polarities'
-    tdc_pol_i                                : in     std_logic_vector(29 downto 0);
+    tdc_pol_i                                : in     std_logic_vector(7 downto 0);
 -- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 0'
     tdc_raw0_i                               : in     std_logic_vector(31 downto 0);
 -- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 0 (high word)'
@@ -202,138 +114,6 @@ entity tdc_wb is
     tdc_mesh7_i                              : in     std_logic_vector(31 downto 0);
 -- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 7 (low word)'
     tdc_mesl7_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 8'
-    tdc_raw8_i                               : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 8 (high word)'
-    tdc_mesh8_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 8 (low word)'
-    tdc_mesl8_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 9'
-    tdc_raw9_i                               : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 9 (high word)'
-    tdc_mesh9_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 9 (low word)'
-    tdc_mesl9_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 10'
-    tdc_raw10_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 10 (high word)'
-    tdc_mesh10_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 10 (low word)'
-    tdc_mesl10_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 11'
-    tdc_raw11_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 11 (high word)'
-    tdc_mesh11_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 11 (low word)'
-    tdc_mesl11_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 12'
-    tdc_raw12_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 12 (high word)'
-    tdc_mesh12_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 12 (low word)'
-    tdc_mesl12_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 13'
-    tdc_raw13_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 13 (high word)'
-    tdc_mesh13_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 13 (low word)'
-    tdc_mesl13_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 14'
-    tdc_raw14_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 14 (high word)'
-    tdc_mesh14_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 14 (low word)'
-    tdc_mesl14_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 15'
-    tdc_raw15_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 15 (high word)'
-    tdc_mesh15_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 15 (low word)'
-    tdc_mesl15_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 16'
-    tdc_raw16_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 16 (high word)'
-    tdc_mesh16_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 16 (low word)'
-    tdc_mesl16_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 17'
-    tdc_raw17_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 17 (high word)'
-    tdc_mesh17_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 17 (low word)'
-    tdc_mesl17_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 18'
-    tdc_raw18_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 18 (high word)'
-    tdc_mesh18_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 18 (low word)'
-    tdc_mesl18_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 19'
-    tdc_raw19_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 19 (high word)'
-    tdc_mesh19_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 19 (low word)'
-    tdc_mesl19_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 20'
-    tdc_raw20_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 20 (high word)'
-    tdc_mesh20_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 20 (low word)'
-    tdc_mesl20_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 21'
-    tdc_raw21_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 21 (high word)'
-    tdc_mesh21_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 21 (low word)'
-    tdc_mesl21_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 22'
-    tdc_raw22_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 22 (high word)'
-    tdc_mesh22_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 22 (low word)'
-    tdc_mesl22_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 23'
-    tdc_raw23_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 23 (high word)'
-    tdc_mesh23_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 23 (low word)'
-    tdc_mesl23_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 24'
-    tdc_raw24_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 24 (high word)'
-    tdc_mesh24_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 24 (low word)'
-    tdc_mesl24_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 25'
-    tdc_raw25_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 25 (high word)'
-    tdc_mesh25_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 25 (low word)'
-    tdc_mesl25_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 26'
-    tdc_raw26_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 26 (high word)'
-    tdc_mesh26_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 26 (low word)'
-    tdc_mesl26_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 27'
-    tdc_raw27_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 27 (high word)'
-    tdc_mesh27_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 27 (low word)'
-    tdc_mesl27_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 28'
-    tdc_raw28_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 28 (high word)'
-    tdc_mesh28_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 28 (low word)'
-    tdc_mesl28_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Value' in reg: 'Raw measured value for channel 29'
-    tdc_raw29_i                              : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'High word value' in reg: 'Fixed point measurement for channel 29 (high word)'
-    tdc_mesh29_i                             : in     std_logic_vector(31 downto 0);
--- Port for std_logic_vector field: 'Low word value' in reg: 'Fixed point measurement for channel 29 (low word)'
-    tdc_mesl29_i                             : in     std_logic_vector(31 downto 0);
     irq_ie0_i                                : in     std_logic;
     irq_ie1_i                                : in     std_logic;
     irq_ie2_i                                : in     std_logic;
@@ -342,28 +122,6 @@ entity tdc_wb is
     irq_ie5_i                                : in     std_logic;
     irq_ie6_i                                : in     std_logic;
     irq_ie7_i                                : in     std_logic;
-    irq_ie8_i                                : in     std_logic;
-    irq_ie9_i                                : in     std_logic;
-    irq_ie10_i                               : in     std_logic;
-    irq_ie11_i                               : in     std_logic;
-    irq_ie12_i                               : in     std_logic;
-    irq_ie13_i                               : in     std_logic;
-    irq_ie14_i                               : in     std_logic;
-    irq_ie15_i                               : in     std_logic;
-    irq_ie16_i                               : in     std_logic;
-    irq_ie17_i                               : in     std_logic;
-    irq_ie18_i                               : in     std_logic;
-    irq_ie19_i                               : in     std_logic;
-    irq_ie20_i                               : in     std_logic;
-    irq_ie21_i                               : in     std_logic;
-    irq_ie22_i                               : in     std_logic;
-    irq_ie23_i                               : in     std_logic;
-    irq_ie24_i                               : in     std_logic;
-    irq_ie25_i                               : in     std_logic;
-    irq_ie26_i                               : in     std_logic;
-    irq_ie27_i                               : in     std_logic;
-    irq_ie28_i                               : in     std_logic;
-    irq_ie29_i                               : in     std_logic;
     irq_isc_i                                : in     std_logic;
     irq_icc_i                                : in     std_logic;
 -- Port for BIT field: 'Freeze request' in reg: 'Debug control'
@@ -415,50 +173,6 @@ signal tdc_desh6_int                            : std_logic_vector(31 downto 0);
 signal tdc_desl6_int                            : std_logic_vector(31 downto 0);
 signal tdc_desh7_int                            : std_logic_vector(31 downto 0);
 signal tdc_desl7_int                            : std_logic_vector(31 downto 0);
-signal tdc_desh8_int                            : std_logic_vector(31 downto 0);
-signal tdc_desl8_int                            : std_logic_vector(31 downto 0);
-signal tdc_desh9_int                            : std_logic_vector(31 downto 0);
-signal tdc_desl9_int                            : std_logic_vector(31 downto 0);
-signal tdc_desh10_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl10_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh11_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl11_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh12_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl12_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh13_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl13_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh14_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl14_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh15_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl15_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh16_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl16_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh17_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl17_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh18_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl18_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh19_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl19_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh20_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl20_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh21_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl21_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh22_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl22_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh23_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl23_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh24_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl24_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh25_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl25_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh26_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl26_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh27_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl27_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh28_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl28_int                           : std_logic_vector(31 downto 0);
-signal tdc_desh29_int                           : std_logic_vector(31 downto 0);
-signal tdc_desl29_int                           : std_logic_vector(31 downto 0);
 signal tdc_dctl_req_int                         : std_logic      ;
 signal tdc_csel_next_dly0                       : std_logic      ;
 signal tdc_csel_next_int                        : std_logic      ;
@@ -467,21 +181,21 @@ signal tdc_luta_int                             : std_logic_vector(15 downto 0);
 signal tdc_hisa_int                             : std_logic_vector(15 downto 0);
 signal tdc_fcc_st_dly0                          : std_logic      ;
 signal tdc_fcc_st_int                           : std_logic      ;
-signal eic_idr_int                              : std_logic_vector(31 downto 0);
+signal eic_idr_int                              : std_logic_vector(9 downto 0);
 signal eic_idr_write_int                        : std_logic      ;
-signal eic_ier_int                              : std_logic_vector(31 downto 0);
+signal eic_ier_int                              : std_logic_vector(9 downto 0);
 signal eic_ier_write_int                        : std_logic      ;
-signal eic_imr_int                              : std_logic_vector(31 downto 0);
-signal eic_isr_clear_int                        : std_logic_vector(31 downto 0);
-signal eic_isr_status_int                       : std_logic_vector(31 downto 0);
-signal eic_irq_ack_int                          : std_logic_vector(31 downto 0);
+signal eic_imr_int                              : std_logic_vector(9 downto 0);
+signal eic_isr_clear_int                        : std_logic_vector(9 downto 0);
+signal eic_isr_status_int                       : std_logic_vector(9 downto 0);
+signal eic_irq_ack_int                          : std_logic_vector(9 downto 0);
 signal eic_isr_write_int                        : std_logic      ;
-signal irq_inputs_vector_int                    : std_logic_vector(31 downto 0);
+signal irq_inputs_vector_int                    : std_logic_vector(9 downto 0);
 signal ack_sreg                                 : std_logic_vector(9 downto 0);
 signal rddata_reg                               : std_logic_vector(31 downto 0);
 signal wrdata_reg                               : std_logic_vector(31 downto 0);
 signal bwsel_reg                                : std_logic_vector(3 downto 0);
-signal rwaddr_reg                               : std_logic_vector(7 downto 0);
+signal rwaddr_reg                               : std_logic_vector(5 downto 0);
 signal ack_in_progress                          : std_logic      ;
 signal wr_int                                   : std_logic      ;
 signal rd_int                                   : std_logic      ;
@@ -523,50 +237,6 @@ begin
       tdc_desl6_int <= "00000000000000000000000000000000";
       tdc_desh7_int <= "00000000000000000000000000000000";
       tdc_desl7_int <= "00000000000000000000000000000000";
-      tdc_desh8_int <= "00000000000000000000000000000000";
-      tdc_desl8_int <= "00000000000000000000000000000000";
-      tdc_desh9_int <= "00000000000000000000000000000000";
-      tdc_desl9_int <= "00000000000000000000000000000000";
-      tdc_desh10_int <= "00000000000000000000000000000000";
-      tdc_desl10_int <= "00000000000000000000000000000000";
-      tdc_desh11_int <= "00000000000000000000000000000000";
-      tdc_desl11_int <= "00000000000000000000000000000000";
-      tdc_desh12_int <= "00000000000000000000000000000000";
-      tdc_desl12_int <= "00000000000000000000000000000000";
-      tdc_desh13_int <= "00000000000000000000000000000000";
-      tdc_desl13_int <= "00000000000000000000000000000000";
-      tdc_desh14_int <= "00000000000000000000000000000000";
-      tdc_desl14_int <= "00000000000000000000000000000000";
-      tdc_desh15_int <= "00000000000000000000000000000000";
-      tdc_desl15_int <= "00000000000000000000000000000000";
-      tdc_desh16_int <= "00000000000000000000000000000000";
-      tdc_desl16_int <= "00000000000000000000000000000000";
-      tdc_desh17_int <= "00000000000000000000000000000000";
-      tdc_desl17_int <= "00000000000000000000000000000000";
-      tdc_desh18_int <= "00000000000000000000000000000000";
-      tdc_desl18_int <= "00000000000000000000000000000000";
-      tdc_desh19_int <= "00000000000000000000000000000000";
-      tdc_desl19_int <= "00000000000000000000000000000000";
-      tdc_desh20_int <= "00000000000000000000000000000000";
-      tdc_desl20_int <= "00000000000000000000000000000000";
-      tdc_desh21_int <= "00000000000000000000000000000000";
-      tdc_desl21_int <= "00000000000000000000000000000000";
-      tdc_desh22_int <= "00000000000000000000000000000000";
-      tdc_desl22_int <= "00000000000000000000000000000000";
-      tdc_desh23_int <= "00000000000000000000000000000000";
-      tdc_desl23_int <= "00000000000000000000000000000000";
-      tdc_desh24_int <= "00000000000000000000000000000000";
-      tdc_desl24_int <= "00000000000000000000000000000000";
-      tdc_desh25_int <= "00000000000000000000000000000000";
-      tdc_desl25_int <= "00000000000000000000000000000000";
-      tdc_desh26_int <= "00000000000000000000000000000000";
-      tdc_desl26_int <= "00000000000000000000000000000000";
-      tdc_desh27_int <= "00000000000000000000000000000000";
-      tdc_desl27_int <= "00000000000000000000000000000000";
-      tdc_desh28_int <= "00000000000000000000000000000000";
-      tdc_desl28_int <= "00000000000000000000000000000000";
-      tdc_desh29_int <= "00000000000000000000000000000000";
-      tdc_desl29_int <= "00000000000000000000000000000000";
       tdc_dctl_req_int <= '0';
       tdc_csel_next_int <= '0';
       tdc_cal_int <= '0';
@@ -593,8 +263,8 @@ begin
         end if;
       else
         if ((wb_cyc_i = '1') and (wb_stb_i = '1')) then
-          case rwaddr_reg(7 downto 0) is
-          when "00000000" => 
+          case rwaddr_reg(5 downto 0) is
+          when "000000" => 
             if (wb_we_i = '1') then
               tdc_cs_rst_int <= wrdata_reg(0);
             else
@@ -632,7 +302,7 @@ begin
             end if;
             ack_sreg(2) <= '1';
             ack_in_progress <= '1';
-          when "00000001" => 
+          when "000001" => 
             if (wb_we_i = '1') then
               tdc_desh0_int <= wrdata_reg(31 downto 0);
             else
@@ -640,7 +310,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00000010" => 
+          when "000010" => 
             if (wb_we_i = '1') then
               tdc_desl0_int <= wrdata_reg(31 downto 0);
             else
@@ -648,7 +318,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00000011" => 
+          when "000011" => 
             if (wb_we_i = '1') then
               tdc_desh1_int <= wrdata_reg(31 downto 0);
             else
@@ -656,7 +326,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00000100" => 
+          when "000100" => 
             if (wb_we_i = '1') then
               tdc_desl1_int <= wrdata_reg(31 downto 0);
             else
@@ -664,7 +334,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00000101" => 
+          when "000101" => 
             if (wb_we_i = '1') then
               tdc_desh2_int <= wrdata_reg(31 downto 0);
             else
@@ -672,7 +342,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00000110" => 
+          when "000110" => 
             if (wb_we_i = '1') then
               tdc_desl2_int <= wrdata_reg(31 downto 0);
             else
@@ -680,7 +350,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00000111" => 
+          when "000111" => 
             if (wb_we_i = '1') then
               tdc_desh3_int <= wrdata_reg(31 downto 0);
             else
@@ -688,7 +358,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00001000" => 
+          when "001000" => 
             if (wb_we_i = '1') then
               tdc_desl3_int <= wrdata_reg(31 downto 0);
             else
@@ -696,7 +366,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00001001" => 
+          when "001001" => 
             if (wb_we_i = '1') then
               tdc_desh4_int <= wrdata_reg(31 downto 0);
             else
@@ -704,7 +374,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00001010" => 
+          when "001010" => 
             if (wb_we_i = '1') then
               tdc_desl4_int <= wrdata_reg(31 downto 0);
             else
@@ -712,7 +382,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00001011" => 
+          when "001011" => 
             if (wb_we_i = '1') then
               tdc_desh5_int <= wrdata_reg(31 downto 0);
             else
@@ -720,7 +390,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00001100" => 
+          when "001100" => 
             if (wb_we_i = '1') then
               tdc_desl5_int <= wrdata_reg(31 downto 0);
             else
@@ -728,7 +398,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00001101" => 
+          when "001101" => 
             if (wb_we_i = '1') then
               tdc_desh6_int <= wrdata_reg(31 downto 0);
             else
@@ -736,7 +406,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00001110" => 
+          when "001110" => 
             if (wb_we_i = '1') then
               tdc_desl6_int <= wrdata_reg(31 downto 0);
             else
@@ -744,7 +414,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00001111" => 
+          when "001111" => 
             if (wb_we_i = '1') then
               tdc_desh7_int <= wrdata_reg(31 downto 0);
             else
@@ -752,7 +422,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00010000" => 
+          when "010000" => 
             if (wb_we_i = '1') then
               tdc_desl7_int <= wrdata_reg(31 downto 0);
             else
@@ -760,998 +430,206 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "00010001" => 
+          when "010001" => 
             if (wb_we_i = '1') then
-              tdc_desh8_int <= wrdata_reg(31 downto 0);
             else
-              rddata_reg(31 downto 0) <= tdc_desh8_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00010010" => 
-            if (wb_we_i = '1') then
-              tdc_desl8_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl8_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00010011" => 
-            if (wb_we_i = '1') then
-              tdc_desh9_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh9_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00010100" => 
-            if (wb_we_i = '1') then
-              tdc_desl9_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl9_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00010101" => 
-            if (wb_we_i = '1') then
-              tdc_desh10_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh10_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00010110" => 
-            if (wb_we_i = '1') then
-              tdc_desl10_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl10_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00010111" => 
-            if (wb_we_i = '1') then
-              tdc_desh11_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh11_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00011000" => 
-            if (wb_we_i = '1') then
-              tdc_desl11_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl11_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00011001" => 
-            if (wb_we_i = '1') then
-              tdc_desh12_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh12_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00011010" => 
-            if (wb_we_i = '1') then
-              tdc_desl12_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl12_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00011011" => 
-            if (wb_we_i = '1') then
-              tdc_desh13_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh13_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00011100" => 
-            if (wb_we_i = '1') then
-              tdc_desl13_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl13_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00011101" => 
-            if (wb_we_i = '1') then
-              tdc_desh14_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh14_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00011110" => 
-            if (wb_we_i = '1') then
-              tdc_desl14_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl14_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00011111" => 
-            if (wb_we_i = '1') then
-              tdc_desh15_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh15_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00100000" => 
-            if (wb_we_i = '1') then
-              tdc_desl15_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl15_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00100001" => 
-            if (wb_we_i = '1') then
-              tdc_desh16_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh16_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00100010" => 
-            if (wb_we_i = '1') then
-              tdc_desl16_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl16_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00100011" => 
-            if (wb_we_i = '1') then
-              tdc_desh17_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh17_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00100100" => 
-            if (wb_we_i = '1') then
-              tdc_desl17_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl17_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00100101" => 
-            if (wb_we_i = '1') then
-              tdc_desh18_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh18_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00100110" => 
-            if (wb_we_i = '1') then
-              tdc_desl18_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl18_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00100111" => 
-            if (wb_we_i = '1') then
-              tdc_desh19_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh19_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00101000" => 
-            if (wb_we_i = '1') then
-              tdc_desl19_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl19_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00101001" => 
-            if (wb_we_i = '1') then
-              tdc_desh20_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh20_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00101010" => 
-            if (wb_we_i = '1') then
-              tdc_desl20_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl20_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00101011" => 
-            if (wb_we_i = '1') then
-              tdc_desh21_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh21_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00101100" => 
-            if (wb_we_i = '1') then
-              tdc_desl21_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl21_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00101101" => 
-            if (wb_we_i = '1') then
-              tdc_desh22_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh22_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00101110" => 
-            if (wb_we_i = '1') then
-              tdc_desl22_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl22_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00101111" => 
-            if (wb_we_i = '1') then
-              tdc_desh23_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh23_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00110000" => 
-            if (wb_we_i = '1') then
-              tdc_desl23_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl23_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00110001" => 
-            if (wb_we_i = '1') then
-              tdc_desh24_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh24_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00110010" => 
-            if (wb_we_i = '1') then
-              tdc_desl24_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl24_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00110011" => 
-            if (wb_we_i = '1') then
-              tdc_desh25_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh25_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00110100" => 
-            if (wb_we_i = '1') then
-              tdc_desl25_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl25_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00110101" => 
-            if (wb_we_i = '1') then
-              tdc_desh26_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh26_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00110110" => 
-            if (wb_we_i = '1') then
-              tdc_desl26_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl26_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00110111" => 
-            if (wb_we_i = '1') then
-              tdc_desh27_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh27_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00111000" => 
-            if (wb_we_i = '1') then
-              tdc_desl27_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl27_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00111001" => 
-            if (wb_we_i = '1') then
-              tdc_desh28_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh28_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00111010" => 
-            if (wb_we_i = '1') then
-              tdc_desl28_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl28_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00111011" => 
-            if (wb_we_i = '1') then
-              tdc_desh29_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desh29_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00111100" => 
-            if (wb_we_i = '1') then
-              tdc_desl29_int <= wrdata_reg(31 downto 0);
-            else
-              rddata_reg(31 downto 0) <= tdc_desl29_int;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00111101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(29 downto 0) <= tdc_pol_i;
-              rddata_reg(30) <= 'X';
-              rddata_reg(31) <= 'X';
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00111110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw0_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "00111111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh0_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01000000" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl0_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01000001" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw1_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01000010" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh1_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01000011" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl1_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01000100" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw2_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01000101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh2_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01000110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl2_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01000111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw3_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01001000" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh3_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01001001" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl3_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01001010" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw4_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01001011" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh4_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01001100" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl4_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01001101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw5_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01001110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh5_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01001111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl5_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01010000" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw6_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01010001" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh6_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01010010" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl6_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01010011" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw7_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01010100" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh7_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01010101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl7_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01010110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw8_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01010111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh8_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01011000" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl8_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01011001" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw9_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01011010" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh9_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01011011" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl9_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01011100" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw10_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01011101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh10_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01011110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl10_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01011111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw11_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01100000" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh11_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01100001" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl11_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01100010" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw12_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01100011" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh12_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01100100" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl12_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01100101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw13_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01100110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh13_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01100111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl13_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01101000" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw14_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01101001" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh14_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01101010" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl14_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01101011" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw15_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01101100" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh15_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01101101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl15_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01101110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw16_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01101111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh16_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01110000" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl16_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01110001" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw17_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01110010" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh17_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01110011" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl17_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01110100" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw18_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01110101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh18_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01110110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl18_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01110111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw19_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01111000" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh19_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01111001" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl19_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01111010" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw20_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01111011" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh20_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01111100" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl20_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01111101" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_raw21_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01111110" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesh21_i;
-            end if;
-            ack_sreg(0) <= '1';
-            ack_in_progress <= '1';
-          when "01111111" => 
-            if (wb_we_i = '1') then
-            else
-              rddata_reg(31 downto 0) <= tdc_mesl21_i;
+              rddata_reg(7 downto 0) <= tdc_pol_i;
+              rddata_reg(8) <= 'X';
+              rddata_reg(9) <= 'X';
+              rddata_reg(10) <= 'X';
+              rddata_reg(11) <= 'X';
+              rddata_reg(12) <= 'X';
+              rddata_reg(13) <= 'X';
+              rddata_reg(14) <= 'X';
+              rddata_reg(15) <= 'X';
+              rddata_reg(16) <= 'X';
+              rddata_reg(17) <= 'X';
+              rddata_reg(18) <= 'X';
+              rddata_reg(19) <= 'X';
+              rddata_reg(20) <= 'X';
+              rddata_reg(21) <= 'X';
+              rddata_reg(22) <= 'X';
+              rddata_reg(23) <= 'X';
+              rddata_reg(24) <= 'X';
+              rddata_reg(25) <= 'X';
+              rddata_reg(26) <= 'X';
+              rddata_reg(27) <= 'X';
+              rddata_reg(28) <= 'X';
+              rddata_reg(29) <= 'X';
+              rddata_reg(30) <= 'X';
+              rddata_reg(31) <= 'X';
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10000000" => 
+          when "010010" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_raw22_i;
+              rddata_reg(31 downto 0) <= tdc_raw0_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10000001" => 
+          when "010011" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesh22_i;
+              rddata_reg(31 downto 0) <= tdc_mesh0_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10000010" => 
+          when "010100" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesl22_i;
+              rddata_reg(31 downto 0) <= tdc_mesl0_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10000011" => 
+          when "010101" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_raw23_i;
+              rddata_reg(31 downto 0) <= tdc_raw1_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10000100" => 
+          when "010110" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesh23_i;
+              rddata_reg(31 downto 0) <= tdc_mesh1_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10000101" => 
+          when "010111" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesl23_i;
+              rddata_reg(31 downto 0) <= tdc_mesl1_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10000110" => 
+          when "011000" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_raw24_i;
+              rddata_reg(31 downto 0) <= tdc_raw2_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10000111" => 
+          when "011001" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesh24_i;
+              rddata_reg(31 downto 0) <= tdc_mesh2_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10001000" => 
+          when "011010" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesl24_i;
+              rddata_reg(31 downto 0) <= tdc_mesl2_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10001001" => 
+          when "011011" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_raw25_i;
+              rddata_reg(31 downto 0) <= tdc_raw3_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10001010" => 
+          when "011100" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesh25_i;
+              rddata_reg(31 downto 0) <= tdc_mesh3_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10001011" => 
+          when "011101" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesl25_i;
+              rddata_reg(31 downto 0) <= tdc_mesl3_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10001100" => 
+          when "011110" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_raw26_i;
+              rddata_reg(31 downto 0) <= tdc_raw4_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10001101" => 
+          when "011111" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesh26_i;
+              rddata_reg(31 downto 0) <= tdc_mesh4_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10001110" => 
+          when "100000" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesl26_i;
+              rddata_reg(31 downto 0) <= tdc_mesl4_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10001111" => 
+          when "100001" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_raw27_i;
+              rddata_reg(31 downto 0) <= tdc_raw5_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10010000" => 
+          when "100010" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesh27_i;
+              rddata_reg(31 downto 0) <= tdc_mesh5_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10010001" => 
+          when "100011" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesl27_i;
+              rddata_reg(31 downto 0) <= tdc_mesl5_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10010010" => 
+          when "100100" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_raw28_i;
+              rddata_reg(31 downto 0) <= tdc_raw6_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10010011" => 
+          when "100101" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesh28_i;
+              rddata_reg(31 downto 0) <= tdc_mesh6_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10010100" => 
+          when "100110" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesl28_i;
+              rddata_reg(31 downto 0) <= tdc_mesl6_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10010101" => 
+          when "100111" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_raw29_i;
+              rddata_reg(31 downto 0) <= tdc_raw7_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10010110" => 
+          when "101000" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesh29_i;
+              rddata_reg(31 downto 0) <= tdc_mesh7_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10010111" => 
+          when "101001" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= tdc_mesl29_i;
+              rddata_reg(31 downto 0) <= tdc_mesl7_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10011000" => 
+          when "101010" => 
             if (wb_we_i = '1') then
               tdc_dctl_req_int <= wrdata_reg(0);
             else
@@ -1790,7 +668,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10011001" => 
+          when "101011" => 
             if (wb_we_i = '1') then
               tdc_csel_next_int <= wrdata_reg(0);
             else
@@ -1828,7 +706,7 @@ begin
             end if;
             ack_sreg(2) <= '1';
             ack_in_progress <= '1';
-          when "10011010" => 
+          when "101100" => 
             if (wb_we_i = '1') then
               tdc_cal_int <= wrdata_reg(0);
             else
@@ -1867,7 +745,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10011011" => 
+          when "101101" => 
             if (wb_we_i = '1') then
               tdc_luta_int <= wrdata_reg(15 downto 0);
             else
@@ -1891,14 +769,14 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10011100" => 
+          when "101110" => 
             if (wb_we_i = '1') then
             else
               rddata_reg(31 downto 0) <= tdc_lutd_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10011101" => 
+          when "101111" => 
             if (wb_we_i = '1') then
               tdc_hisa_int <= wrdata_reg(15 downto 0);
             else
@@ -1922,14 +800,14 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10011110" => 
+          when "110000" => 
             if (wb_we_i = '1') then
             else
               rddata_reg(31 downto 0) <= tdc_hisd_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10011111" => 
+          when "110001" => 
             if (wb_we_i = '1') then
               tdc_fcc_st_int <= wrdata_reg(0);
             else
@@ -1967,21 +845,21 @@ begin
             end if;
             ack_sreg(2) <= '1';
             ack_in_progress <= '1';
-          when "10100000" => 
+          when "110010" => 
             if (wb_we_i = '1') then
             else
               rddata_reg(31 downto 0) <= tdc_fcr_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10100001" => 
+          when "110011" => 
             if (wb_we_i = '1') then
             else
               rddata_reg(31 downto 0) <= tdc_fcsr_i;
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10101000" => 
+          when "111000" => 
             if (wb_we_i = '1') then
               eic_idr_write_int <= '1';
             else
@@ -2020,7 +898,7 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10101001" => 
+          when "111001" => 
             if (wb_we_i = '1') then
               eic_ier_write_int <= '1';
             else
@@ -2059,18 +937,62 @@ begin
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10101010" => 
+          when "111010" => 
             if (wb_we_i = '1') then
             else
-              rddata_reg(31 downto 0) <= eic_imr_int(31 downto 0);
+              rddata_reg(9 downto 0) <= eic_imr_int(9 downto 0);
+              rddata_reg(10) <= 'X';
+              rddata_reg(11) <= 'X';
+              rddata_reg(12) <= 'X';
+              rddata_reg(13) <= 'X';
+              rddata_reg(14) <= 'X';
+              rddata_reg(15) <= 'X';
+              rddata_reg(16) <= 'X';
+              rddata_reg(17) <= 'X';
+              rddata_reg(18) <= 'X';
+              rddata_reg(19) <= 'X';
+              rddata_reg(20) <= 'X';
+              rddata_reg(21) <= 'X';
+              rddata_reg(22) <= 'X';
+              rddata_reg(23) <= 'X';
+              rddata_reg(24) <= 'X';
+              rddata_reg(25) <= 'X';
+              rddata_reg(26) <= 'X';
+              rddata_reg(27) <= 'X';
+              rddata_reg(28) <= 'X';
+              rddata_reg(29) <= 'X';
+              rddata_reg(30) <= 'X';
+              rddata_reg(31) <= 'X';
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
-          when "10101011" => 
+          when "111011" => 
             if (wb_we_i = '1') then
               eic_isr_write_int <= '1';
             else
-              rddata_reg(31 downto 0) <= eic_isr_status_int(31 downto 0);
+              rddata_reg(9 downto 0) <= eic_isr_status_int(9 downto 0);
+              rddata_reg(10) <= 'X';
+              rddata_reg(11) <= 'X';
+              rddata_reg(12) <= 'X';
+              rddata_reg(13) <= 'X';
+              rddata_reg(14) <= 'X';
+              rddata_reg(15) <= 'X';
+              rddata_reg(16) <= 'X';
+              rddata_reg(17) <= 'X';
+              rddata_reg(18) <= 'X';
+              rddata_reg(19) <= 'X';
+              rddata_reg(20) <= 'X';
+              rddata_reg(21) <= 'X';
+              rddata_reg(22) <= 'X';
+              rddata_reg(23) <= 'X';
+              rddata_reg(24) <= 'X';
+              rddata_reg(25) <= 'X';
+              rddata_reg(26) <= 'X';
+              rddata_reg(27) <= 'X';
+              rddata_reg(28) <= 'X';
+              rddata_reg(29) <= 'X';
+              rddata_reg(30) <= 'X';
+              rddata_reg(31) <= 'X';
             end if;
             ack_sreg(0) <= '1';
             ack_in_progress <= '1';
@@ -2133,161 +1055,7 @@ begin
   tdc_desh7_o <= tdc_desh7_int;
 -- Low word value
   tdc_desl7_o <= tdc_desl7_int;
--- High word value
-  tdc_desh8_o <= tdc_desh8_int;
--- Low word value
-  tdc_desl8_o <= tdc_desl8_int;
--- High word value
-  tdc_desh9_o <= tdc_desh9_int;
--- Low word value
-  tdc_desl9_o <= tdc_desl9_int;
--- High word value
-  tdc_desh10_o <= tdc_desh10_int;
--- Low word value
-  tdc_desl10_o <= tdc_desl10_int;
--- High word value
-  tdc_desh11_o <= tdc_desh11_int;
--- Low word value
-  tdc_desl11_o <= tdc_desl11_int;
--- High word value
-  tdc_desh12_o <= tdc_desh12_int;
--- Low word value
-  tdc_desl12_o <= tdc_desl12_int;
--- High word value
-  tdc_desh13_o <= tdc_desh13_int;
--- Low word value
-  tdc_desl13_o <= tdc_desl13_int;
--- High word value
-  tdc_desh14_o <= tdc_desh14_int;
--- Low word value
-  tdc_desl14_o <= tdc_desl14_int;
--- High word value
-  tdc_desh15_o <= tdc_desh15_int;
--- Low word value
-  tdc_desl15_o <= tdc_desl15_int;
--- High word value
-  tdc_desh16_o <= tdc_desh16_int;
--- Low word value
-  tdc_desl16_o <= tdc_desl16_int;
--- High word value
-  tdc_desh17_o <= tdc_desh17_int;
--- Low word value
-  tdc_desl17_o <= tdc_desl17_int;
--- High word value
-  tdc_desh18_o <= tdc_desh18_int;
--- Low word value
-  tdc_desl18_o <= tdc_desl18_int;
--- High word value
-  tdc_desh19_o <= tdc_desh19_int;
--- Low word value
-  tdc_desl19_o <= tdc_desl19_int;
--- High word value
-  tdc_desh20_o <= tdc_desh20_int;
--- Low word value
-  tdc_desl20_o <= tdc_desl20_int;
--- High word value
-  tdc_desh21_o <= tdc_desh21_int;
--- Low word value
-  tdc_desl21_o <= tdc_desl21_int;
--- High word value
-  tdc_desh22_o <= tdc_desh22_int;
--- Low word value
-  tdc_desl22_o <= tdc_desl22_int;
--- High word value
-  tdc_desh23_o <= tdc_desh23_int;
--- Low word value
-  tdc_desl23_o <= tdc_desl23_int;
--- High word value
-  tdc_desh24_o <= tdc_desh24_int;
--- Low word value
-  tdc_desl24_o <= tdc_desl24_int;
--- High word value
-  tdc_desh25_o <= tdc_desh25_int;
--- Low word value
-  tdc_desl25_o <= tdc_desl25_int;
--- High word value
-  tdc_desh26_o <= tdc_desh26_int;
--- Low word value
-  tdc_desl26_o <= tdc_desl26_int;
--- High word value
-  tdc_desh27_o <= tdc_desh27_int;
--- Low word value
-  tdc_desl27_o <= tdc_desl27_int;
--- High word value
-  tdc_desh28_o <= tdc_desh28_int;
--- Low word value
-  tdc_desl28_o <= tdc_desl28_int;
--- High word value
-  tdc_desh29_o <= tdc_desh29_int;
--- Low word value
-  tdc_desl29_o <= tdc_desl29_int;
--- Value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
 -- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
--- Value
--- High word value
--- Low word value
 -- Value
 -- High word value
 -- Low word value
@@ -2354,15 +1122,15 @@ begin
 -- Result
 -- Result
 -- extra code for reg/fifo/mem: Interrupt disable register
-  eic_idr_int(31 downto 0) <= wrdata_reg(31 downto 0);
+  eic_idr_int(9 downto 0) <= wrdata_reg(9 downto 0);
 -- extra code for reg/fifo/mem: Interrupt enable register
-  eic_ier_int(31 downto 0) <= wrdata_reg(31 downto 0);
+  eic_ier_int(9 downto 0) <= wrdata_reg(9 downto 0);
 -- extra code for reg/fifo/mem: Interrupt status register
-  eic_isr_clear_int(31 downto 0) <= wrdata_reg(31 downto 0);
+  eic_isr_clear_int(9 downto 0) <= wrdata_reg(9 downto 0);
 -- extra code for reg/fifo/mem: IRQ_CONTROLLER
   eic_irq_controller_inst : wbgen2_eic
     generic map (
-      g_num_interrupts     => 32,
+      g_num_interrupts     => 10,
       g_irq00_mode         => 0,
       g_irq01_mode         => 0,
       g_irq02_mode         => 0,
@@ -2420,30 +1188,8 @@ begin
   irq_inputs_vector_int(5) <= irq_ie5_i;
   irq_inputs_vector_int(6) <= irq_ie6_i;
   irq_inputs_vector_int(7) <= irq_ie7_i;
-  irq_inputs_vector_int(8) <= irq_ie8_i;
-  irq_inputs_vector_int(9) <= irq_ie9_i;
-  irq_inputs_vector_int(10) <= irq_ie10_i;
-  irq_inputs_vector_int(11) <= irq_ie11_i;
-  irq_inputs_vector_int(12) <= irq_ie12_i;
-  irq_inputs_vector_int(13) <= irq_ie13_i;
-  irq_inputs_vector_int(14) <= irq_ie14_i;
-  irq_inputs_vector_int(15) <= irq_ie15_i;
-  irq_inputs_vector_int(16) <= irq_ie16_i;
-  irq_inputs_vector_int(17) <= irq_ie17_i;
-  irq_inputs_vector_int(18) <= irq_ie18_i;
-  irq_inputs_vector_int(19) <= irq_ie19_i;
-  irq_inputs_vector_int(20) <= irq_ie20_i;
-  irq_inputs_vector_int(21) <= irq_ie21_i;
-  irq_inputs_vector_int(22) <= irq_ie22_i;
-  irq_inputs_vector_int(23) <= irq_ie23_i;
-  irq_inputs_vector_int(24) <= irq_ie24_i;
-  irq_inputs_vector_int(25) <= irq_ie25_i;
-  irq_inputs_vector_int(26) <= irq_ie26_i;
-  irq_inputs_vector_int(27) <= irq_ie27_i;
-  irq_inputs_vector_int(28) <= irq_ie28_i;
-  irq_inputs_vector_int(29) <= irq_ie29_i;
-  irq_inputs_vector_int(30) <= irq_isc_i;
-  irq_inputs_vector_int(31) <= irq_icc_i;
+  irq_inputs_vector_int(8) <= irq_isc_i;
+  irq_inputs_vector_int(9) <= irq_icc_i;
   rwaddr_reg <= wb_addr_i;
 -- ACK signal generation. Just pass the LSB of ACK counter.
   wb_ack_o <= ack_sreg(0);
-- 
GitLab