diff --git a/applications/compaan/designs/compaan_io_test_bn/quartus/qsys_compaan_io_test_bn.qsys b/applications/compaan/designs/compaan_io_test_bn/quartus/qsys_compaan_io_test_bn.qsys
index bc2070efb7eb571d320d1f3901b029cc2d44731d..aedc938d3ae4ee9bc48c037223faf871f521e60e 100644
--- a/applications/compaan/designs/compaan_io_test_bn/quartus/qsys_compaan_io_test_bn.qsys
+++ b/applications/compaan/designs/compaan_io_test_bn/quartus/qsys_compaan_io_test_bn.qsys
@@ -16,7 +16,7 @@
    {
       datum baseAddress
       {
-         value = "608";
+         value = "1248";
          type = "long";
       }
    }
@@ -37,7 +37,7 @@
    {
       datum _sortIndex
       {
-         value = "12";
+         value = "13";
          type = "int";
       }
       datum sopceditor_expanded
@@ -85,15 +85,20 @@
          type = "boolean";
       }
    }
-   element pio_pps.mem
+   element pio_system_info.mem
    {
+      datum _lockedAddress
+      {
+         value = "1";
+         type = "boolean";
+      }
       datum baseAddress
       {
-         value = "616";
+         value = "0";
          type = "long";
       }
    }
-   element rom_system_info.mem
+   element reg_wdi.mem
    {
       datum _lockedAddress
       {
@@ -102,27 +107,43 @@
       }
       datum baseAddress
       {
-         value = "4096";
+         value = "12288";
          type = "long";
       }
    }
-   element reg_compaan.mem
+   element reg_diag_data_buffer.mem
    {
       datum baseAddress
       {
-         value = "2097152";
+         value = "128";
          type = "long";
       }
    }
-   element reg_unb_sens.mem
+   element reg_bsn_monitor.mem
    {
       datum baseAddress
       {
-         value = "544";
+         value = "512";
          type = "long";
       }
    }
-   element reg_wdi.mem
+   element reg_diagnostics.mem
+   {
+      datum baseAddress
+      {
+         value = "256";
+         type = "long";
+      }
+   }
+   element ram_diag_data_buffer.mem
+   {
+      datum baseAddress
+      {
+         value = "65536";
+         type = "long";
+      }
+   }
+   element rom_system_info.mem
    {
       datum _lockedAddress
       {
@@ -131,28 +152,31 @@
       }
       datum baseAddress
       {
-         value = "12288";
+         value = "4096";
          type = "long";
       }
    }
-   element reg_diagnostics.mem
+   element pio_pps.mem
    {
       datum baseAddress
       {
-         value = "256";
+         value = "1256";
          type = "long";
       }
    }
-   element pio_system_info.mem
+   element reg_compaan.mem
    {
-      datum _lockedAddress
+      datum baseAddress
       {
-         value = "1";
-         type = "boolean";
+         value = "2097152";
+         type = "long";
       }
+   }
+   element reg_unb_sens.mem
+   {
       datum baseAddress
       {
-         value = "0";
+         value = "1184";
          type = "long";
       }
    }
@@ -160,7 +184,7 @@
    {
       datum baseAddress
       {
-         value = "192";
+         value = "1088";
          type = "long";
       }
    }
@@ -176,7 +200,7 @@
    {
       datum baseAddress
       {
-         value = "128";
+         value = "1024";
          type = "long";
       }
    }
@@ -263,6 +287,19 @@
          type = "boolean";
       }
    }
+   element ram_diag_data_buffer
+   {
+      datum _sortIndex
+      {
+         value = "17";
+         type = "int";
+      }
+      datum sopceditor_expanded
+      {
+         value = "0";
+         type = "boolean";
+      }
+   }
    element avs_eth_0.ram_write
    {
       datum _tags
@@ -271,11 +308,24 @@
          type = "String";
       }
    }
+   element reg_bsn_monitor
+   {
+      datum _sortIndex
+      {
+         value = "12";
+         type = "int";
+      }
+      datum sopceditor_expanded
+      {
+         value = "0";
+         type = "boolean";
+      }
+   }
    element reg_compaan
    {
       datum _sortIndex
       {
-         value = "15";
+         value = "16";
          type = "int";
       }
       datum sopceditor_expanded
@@ -284,11 +334,19 @@
          type = "boolean";
       }
    }
+   element reg_diag_data_buffer
+   {
+      datum _sortIndex
+      {
+         value = "18";
+         type = "int";
+      }
+   }
    element reg_diagnostics
    {
       datum _sortIndex
       {
-         value = "13";
+         value = "14";
          type = "int";
       }
       datum sopceditor_expanded
@@ -301,7 +359,7 @@
    {
       datum _sortIndex
       {
-         value = "14";
+         value = "15";
          type = "int";
       }
       datum sopceditor_expanded
@@ -362,11 +420,11 @@
          type = "long";
       }
    }
-   element timer_0.s1
+   element pio_debug_wave.s1
    {
       datum baseAddress
       {
-         value = "512";
+         value = "1216";
          type = "long";
       }
    }
@@ -374,15 +432,15 @@
    {
       datum baseAddress
       {
-         value = "592";
+         value = "1232";
          type = "long";
       }
    }
-   element pio_debug_wave.s1
+   element timer_0.s1
    {
       datum baseAddress
       {
-         value = "576";
+         value = "1152";
          type = "long";
       }
    }
@@ -430,7 +488,7 @@
  <parameter name="projectName" value="" />
  <parameter name="sopcBorderPoints" value="false" />
  <parameter name="systemHash" value="1" />
- <parameter name="timeStamp" value="1476183884405" />
+ <parameter name="timeStamp" value="1476714360505" />
  <parameter name="useTestBenchNamingPattern" value="false" />
  <instanceScript></instanceScript>
  <interface
@@ -804,13 +862,118 @@
    internal="reg_tr_nonbonded.readdata"
    type="conduit"
    dir="end" />
+ <interface
+   name="reg_bsn_monitor_reset"
+   internal="reg_bsn_monitor.reset"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_bsn_monitor_clk"
+   internal="reg_bsn_monitor.clk"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_bsn_monitor_address"
+   internal="reg_bsn_monitor.address"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_bsn_monitor_write"
+   internal="reg_bsn_monitor.write"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_bsn_monitor_writedata"
+   internal="reg_bsn_monitor.writedata"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_bsn_monitor_read"
+   internal="reg_bsn_monitor.read"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_bsn_monitor_readdata"
+   internal="reg_bsn_monitor.readdata"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="ram_diag_data_buffer_reset"
+   internal="ram_diag_data_buffer.reset"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="ram_diag_data_buffer_clk"
+   internal="ram_diag_data_buffer.clk"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="ram_diag_data_buffer_address"
+   internal="ram_diag_data_buffer.address"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="ram_diag_data_buffer_write"
+   internal="ram_diag_data_buffer.write"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="ram_diag_data_buffer_writedata"
+   internal="ram_diag_data_buffer.writedata"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="ram_diag_data_buffer_read"
+   internal="ram_diag_data_buffer.read"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="ram_diag_data_buffer_readdata"
+   internal="ram_diag_data_buffer.readdata"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_diag_data_buffer_readdata"
+   internal="reg_diag_data_buffer.readdata"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_diag_data_buffer_read"
+   internal="reg_diag_data_buffer.read"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_diag_data_buffer_writedata"
+   internal="reg_diag_data_buffer.writedata"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_diag_data_buffer_write"
+   internal="reg_diag_data_buffer.write"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_diag_data_buffer_address"
+   internal="reg_diag_data_buffer.address"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_diag_data_buffer_clk"
+   internal="reg_diag_data_buffer.clk"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_diag_data_buffer_reset"
+   internal="reg_diag_data_buffer.reset"
+   type="conduit"
+   dir="end" />
  <module
    kind="altera_avalon_onchip_memory2"
    version="11.1"
    enabled="1"
    name="onchip_memory2_0">
   <parameter name="allowInSystemMemoryContentEditor" value="false" />
-  <parameter name="autoInitializationFileName">qsys_compaan_io_test_BN_onchip_memory2_0</parameter>
+  <parameter name="autoInitializationFileName">qsys_compaan_io_test_bn_onchip_memory2_0</parameter>
   <parameter name="blockType" value="M144K" />
   <parameter name="dataWidth" value="32" />
   <parameter name="deviceFamily" value="Stratix IV" />
@@ -980,7 +1143,7 @@ q]]></parameter>
   <parameter name="tightlyCoupledInstructionMaster2AddrWidth" value="1" />
   <parameter name="tightlyCoupledInstructionMaster3AddrWidth" value="1" />
   <parameter name="instSlaveMapParam"><![CDATA[<address-map><slave name='cpu_0.jtag_debug_module' start='0x3800' end='0x4000' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' /></address-map>]]></parameter>
-  <parameter name="dataSlaveMapParam"><![CDATA[<address-map><slave name='pio_system_info.mem' start='0x0' end='0x80' /><slave name='avs_eth_0.mms_reg' start='0x80' end='0xC0' /><slave name='reg_tr_nonbonded.mem' start='0xC0' end='0x100' /><slave name='reg_diagnostics.mem' start='0x100' end='0x200' /><slave name='timer_0.s1' start='0x200' end='0x220' /><slave name='reg_unb_sens.mem' start='0x220' end='0x240' /><slave name='pio_debug_wave.s1' start='0x240' end='0x250' /><slave name='pio_wdi.s1' start='0x250' end='0x260' /><slave name='jtag_uart_0.avalon_jtag_slave' start='0x260' end='0x268' /><slave name='pio_pps.mem' start='0x268' end='0x270' /><slave name='rom_system_info.mem' start='0x1000' end='0x2000' /><slave name='avs_eth_0.mms_tse' start='0x2000' end='0x3000' /><slave name='reg_wdi.mem' start='0x3000' end='0x3008' /><slave name='cpu_0.jtag_debug_module' start='0x3800' end='0x4000' /><slave name='avs_eth_0.mms_ram' start='0x4000' end='0x5000' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' /><slave name='reg_compaan.mem' start='0x200000' end='0x400000' /></address-map>]]></parameter>
+  <parameter name="dataSlaveMapParam"><![CDATA[<address-map><slave name='pio_system_info.mem' start='0x0' end='0x80' /><slave name='reg_diag_data_buffer.mem' start='0x80' end='0x100' /><slave name='reg_diagnostics.mem' start='0x100' end='0x200' /><slave name='reg_bsn_monitor.mem' start='0x200' end='0x400' /><slave name='avs_eth_0.mms_reg' start='0x400' end='0x440' /><slave name='reg_tr_nonbonded.mem' start='0x440' end='0x480' /><slave name='timer_0.s1' start='0x480' end='0x4A0' /><slave name='reg_unb_sens.mem' start='0x4A0' end='0x4C0' /><slave name='pio_debug_wave.s1' start='0x4C0' end='0x4D0' /><slave name='pio_wdi.s1' start='0x4D0' end='0x4E0' /><slave name='jtag_uart_0.avalon_jtag_slave' start='0x4E0' end='0x4E8' /><slave name='pio_pps.mem' start='0x4E8' end='0x4F0' /><slave name='rom_system_info.mem' start='0x1000' end='0x2000' /><slave name='avs_eth_0.mms_tse' start='0x2000' end='0x3000' /><slave name='reg_wdi.mem' start='0x3000' end='0x3008' /><slave name='cpu_0.jtag_debug_module' start='0x3800' end='0x4000' /><slave name='avs_eth_0.mms_ram' start='0x4000' end='0x5000' /><slave name='ram_diag_data_buffer.mem' start='0x10000' end='0x20000' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' /><slave name='reg_compaan.mem' start='0x200000' end='0x400000' /></address-map>]]></parameter>
   <parameter name="clockFrequency" value="25000000" />
   <parameter name="deviceFamilyName" value="Stratix IV" />
   <parameter name="internalIrqMaskSystemInfo" value="7" />
@@ -1048,6 +1211,29 @@ q]]></parameter>
   <parameter name="g_dat_w" value="32" />
   <parameter name="AUTO_SYSTEM_CLOCK_RATE" value="25000000" />
  </module>
+ <module kind="avs_common_mm" version="1.0" enabled="1" name="reg_bsn_monitor">
+  <parameter name="g_adr_w" value="7" />
+  <parameter name="g_dat_w" value="32" />
+  <parameter name="AUTO_SYSTEM_CLOCK_RATE" value="25000000" />
+ </module>
+ <module
+   kind="avs_common_mm"
+   version="1.0"
+   enabled="1"
+   name="ram_diag_data_buffer">
+  <parameter name="g_adr_w" value="14" />
+  <parameter name="g_dat_w" value="32" />
+  <parameter name="AUTO_SYSTEM_CLOCK_RATE" value="25000000" />
+ </module>
+ <module
+   kind="avs_common_mm"
+   version="1.0"
+   enabled="1"
+   name="reg_diag_data_buffer">
+  <parameter name="g_adr_w" value="5" />
+  <parameter name="g_dat_w" value="32" />
+  <parameter name="AUTO_SYSTEM_CLOCK_RATE" value="25000000" />
+ </module>
  <connection
    kind="avalon"
    version="11.1"
@@ -1086,7 +1272,7 @@ q]]></parameter>
    start="cpu_0.data_master"
    end="jtag_uart_0.avalon_jtag_slave">
   <parameter name="arbitrationPriority" value="1" />
-  <parameter name="baseAddress" value="0x0260" />
+  <parameter name="baseAddress" value="0x04e0" />
  </connection>
  <connection
    kind="interrupt"
@@ -1101,7 +1287,7 @@ q]]></parameter>
    start="cpu_0.data_master"
    end="pio_debug_wave.s1">
   <parameter name="arbitrationPriority" value="1" />
-  <parameter name="baseAddress" value="0x0240" />
+  <parameter name="baseAddress" value="0x04c0" />
  </connection>
  <connection
    kind="avalon"
@@ -1109,7 +1295,7 @@ q]]></parameter>
    start="cpu_0.data_master"
    end="pio_wdi.s1">
   <parameter name="arbitrationPriority" value="1" />
-  <parameter name="baseAddress" value="0x0250" />
+  <parameter name="baseAddress" value="0x04d0" />
  </connection>
  <connection
    kind="avalon"
@@ -1117,7 +1303,7 @@ q]]></parameter>
    start="cpu_0.data_master"
    end="timer_0.s1">
   <parameter name="arbitrationPriority" value="1" />
-  <parameter name="baseAddress" value="0x0200" />
+  <parameter name="baseAddress" value="0x0480" />
  </connection>
  <connection kind="interrupt" version="11.1" start="cpu_0.d_irq" end="timer_0.irq">
   <parameter name="irqNumber" value="1" />
@@ -1166,7 +1352,7 @@ q]]></parameter>
    start="cpu_0.data_master"
    end="avs_eth_0.mms_reg">
   <parameter name="arbitrationPriority" value="1" />
-  <parameter name="baseAddress" value="0x0080" />
+  <parameter name="baseAddress" value="0x0400" />
  </connection>
  <connection
    kind="avalon"
@@ -1187,7 +1373,7 @@ q]]></parameter>
    start="cpu_0.data_master"
    end="reg_unb_sens.mem">
   <parameter name="arbitrationPriority" value="1" />
-  <parameter name="baseAddress" value="0x0220" />
+  <parameter name="baseAddress" value="0x04a0" />
  </connection>
  <connection
    kind="reset"
@@ -1213,7 +1399,7 @@ q]]></parameter>
    start="cpu_0.data_master"
    end="pio_pps.mem">
   <parameter name="arbitrationPriority" value="1" />
-  <parameter name="baseAddress" value="0x0268" />
+  <parameter name="baseAddress" value="0x04e8" />
  </connection>
  <connection
    kind="reset"
@@ -1409,6 +1595,75 @@ q]]></parameter>
    start="cpu_0.data_master"
    end="reg_tr_nonbonded.mem">
   <parameter name="arbitrationPriority" value="1" />
-  <parameter name="baseAddress" value="0x00c0" />
+  <parameter name="baseAddress" value="0x0440" />
+ </connection>
+ <connection
+   kind="clock"
+   version="11.1"
+   start="clk_input.clk"
+   end="reg_bsn_monitor.system" />
+ <connection
+   kind="reset"
+   version="11.1"
+   start="clk_input.clk_reset"
+   end="reg_bsn_monitor.system_reset" />
+ <connection
+   kind="reset"
+   version="11.1"
+   start="cpu_0.jtag_debug_module_reset"
+   end="reg_bsn_monitor.system_reset" />
+ <connection
+   kind="avalon"
+   version="11.1"
+   start="cpu_0.data_master"
+   end="reg_bsn_monitor.mem">
+  <parameter name="arbitrationPriority" value="1" />
+  <parameter name="baseAddress" value="0x0200" />
+ </connection>
+ <connection
+   kind="clock"
+   version="11.1"
+   start="clk_input.clk"
+   end="ram_diag_data_buffer.system" />
+ <connection
+   kind="reset"
+   version="11.1"
+   start="clk_input.clk_reset"
+   end="ram_diag_data_buffer.system_reset" />
+ <connection
+   kind="reset"
+   version="11.1"
+   start="cpu_0.jtag_debug_module_reset"
+   end="ram_diag_data_buffer.system_reset" />
+ <connection
+   kind="avalon"
+   version="11.1"
+   start="cpu_0.data_master"
+   end="ram_diag_data_buffer.mem">
+  <parameter name="arbitrationPriority" value="1" />
+  <parameter name="baseAddress" value="0x00010000" />
+ </connection>
+ <connection
+   kind="clock"
+   version="11.1"
+   start="clk_input.clk"
+   end="reg_diag_data_buffer.system" />
+ <connection
+   kind="reset"
+   version="11.1"
+   start="clk_input.clk_reset"
+   end="reg_diag_data_buffer.system_reset" />
+ <connection
+   kind="reset"
+   version="11.1"
+   start="cpu_0.jtag_debug_module_reset"
+   end="reg_diag_data_buffer.system_reset" />
+ <connection
+   kind="avalon"
+   version="11.1"
+   start="cpu_0.data_master"
+   end="reg_diag_data_buffer.mem">
+  <parameter name="arbitrationPriority" value="1" />
+  <parameter name="baseAddress" value="0x0080" />
  </connection>
 </system>