diff --git a/applications/apertif/designs/apertif_unb1_correlator/quartus/qsys_apertif_unb1_correlator.qsys b/applications/apertif/designs/apertif_unb1_correlator/quartus/qsys_apertif_unb1_correlator.qsys
index e522055f69da1c235fa34f5a7d2f5e2c8c5c7153..9b6c3dd78877d21f84533e00b103df4167ab1444 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/quartus/qsys_apertif_unb1_correlator.qsys
+++ b/applications/apertif/designs/apertif_unb1_correlator/quartus/qsys_apertif_unb1_correlator.qsys
@@ -85,162 +85,168 @@
          type = "boolean";
       }
    }
-   element ram_diag_bg_mesh.mem
+   element ram_diag_data_buffer_proc.mem
    {
       datum baseAddress
       {
-         value = "61440";
+         value = "1536";
          type = "long";
       }
    }
-   element pio_system_info.mem
+   element reg_tr_nonbonded.mem
    {
-      datum _lockedAddress
-      {
-         value = "1";
-         type = "boolean";
-      }
       datum baseAddress
       {
-         value = "0";
+         value = "12416";
          type = "long";
       }
    }
-   element reg_diag_data_buffer_input_pre.mem
+   element reg_diag_data_buffer_mesh.mem
    {
       datum baseAddress
       {
-         value = "13760";
+         value = "13776";
          type = "long";
       }
    }
-   element reg_dp_offload_rx_hdr_dat.mem
+   element ram_diag_bg_mesh.mem
    {
       datum baseAddress
       {
-         value = "512";
+         value = "61440";
          type = "long";
       }
    }
-   element ram_diag_data_buffer_input_pre.mem
+   element reg_diag_data_buffer_input_pre.mem
    {
       datum baseAddress
       {
-         value = "524288";
+         value = "13760";
          type = "long";
       }
    }
-   element pio_pps.mem
+   element ram_diag_data_buffer_mesh.mem
    {
       datum baseAddress
       {
-         value = "13768";
+         value = "12544";
          type = "long";
       }
    }
-   element reg_dp_offload_tx_hdr_dat.mem
+   element reg_diag_data_buffer_proc.mem
    {
       datum baseAddress
       {
-         value = "256";
+         value = "13784";
          type = "long";
       }
    }
-   element reg_diag_bg_mesh.mem
+   element reg_mdio_0.mem
    {
       datum baseAddress
       {
-         value = "13664";
+         value = "13568";
          type = "long";
       }
    }
-   element reg_mdio_0.mem
+   element ram_fil_coefs.mem
    {
       datum baseAddress
       {
-         value = "13568";
+         value = "14336";
          type = "long";
       }
    }
-   element ram_diag_data_buffer_input_post.mem
+   element reg_tr_10GbE.mem
    {
+      datum _tags
+      {
+         value = "";
+         type = "String";
+      }
       datum baseAddress
       {
-         value = "1048576";
+         value = "262144";
          type = "long";
       }
    }
-   element reg_mdio_2.mem
+   element reg_bsn_monitor_proc.mem
    {
       datum baseAddress
       {
-         value = "12512";
+         value = "12800";
          type = "long";
       }
    }
-   element ram_diag_data_buffer_proc.mem
+   element reg_dp_offload_rx_hdr_dat.mem
    {
       datum baseAddress
       {
-         value = "1536";
+         value = "512";
          type = "long";
       }
    }
-   element reg_wdi.mem
+   element reg_dp_fifo_fill.mem
    {
-      datum _lockedAddress
+      datum baseAddress
       {
-         value = "1";
-         type = "boolean";
+         value = "128";
+         type = "long";
       }
+   }
+   element reg_diag_bg_mesh.mem
+   {
       datum baseAddress
       {
-         value = "12288";
+         value = "13664";
          type = "long";
       }
    }
-   element reg_diag_data_buffer_input_post.mem
+   element reg_diag_bg_proc.mem
    {
       datum baseAddress
       {
-         value = "13792";
+         value = "13696";
          type = "long";
       }
    }
-   element reg_diag_data_buffer_proc.mem
+   element ram_diag_data_buffer_input_post.mem
    {
       datum baseAddress
       {
-         value = "13784";
+         value = "1048576";
          type = "long";
       }
    }
-   element rom_system_info.mem
+   element reg_bsn_monitor_input.mem
    {
-      datum _lockedAddress
+      datum baseAddress
       {
-         value = "1";
-         type = "boolean";
+         value = "1024";
+         type = "long";
       }
+   }
+   element ram_diag_bg_input.mem
+   {
       datum baseAddress
       {
-         value = "4096";
+         value = "40960";
          type = "long";
       }
    }
-   element ram_diag_bg_proc.mem
+   element reg_tr_xaui.mem
    {
       datum baseAddress
       {
-         value = "49152";
+         value = "32768";
          type = "long";
       }
    }
-   element ram_fil_coefs.mem
+   element reg_mdio_2.mem
    {
       datum baseAddress
       {
-         value = "14336";
+         value = "12512";
          type = "long";
       }
    }
@@ -252,27 +258,32 @@
          type = "long";
       }
    }
-   element reg_diag_bg_proc.mem
+   element pio_pps.mem
    {
       datum baseAddress
       {
-         value = "13696";
+         value = "13768";
          type = "long";
       }
    }
-   element reg_dp_fifo_fill.mem
+   element reg_diag_data_buffer_input_post.mem
    {
       datum baseAddress
       {
-         value = "128";
+         value = "13792";
          type = "long";
       }
    }
-   element reg_tr_xaui.mem
+   element reg_wdi.mem
    {
+      datum _lockedAddress
+      {
+         value = "1";
+         type = "boolean";
+      }
       datum baseAddress
       {
-         value = "32768";
+         value = "12288";
          type = "long";
       }
    }
@@ -284,56 +295,56 @@
          type = "long";
       }
    }
-   element reg_tr_nonbonded.mem
+   element reg_mdio_1.mem
    {
       datum baseAddress
       {
-         value = "12416";
+         value = "12480";
          type = "long";
       }
    }
-   element ram_diag_bg_input.mem
+   element reg_dp_xonoff_output.mem
    {
       datum baseAddress
       {
-         value = "40960";
+         value = "13800";
          type = "long";
       }
    }
-   element reg_mdio_1.mem
+   element reg_dp_offload_tx_hdr_dat.mem
    {
       datum baseAddress
       {
-         value = "12480";
+         value = "256";
          type = "long";
       }
    }
-   element reg_tr_10GbE.mem
+   element reg_dp_bsn_align_input.mem
    {
-      datum _tags
-      {
-         value = "";
-         type = "String";
-      }
       datum baseAddress
       {
-         value = "262144";
+         value = "13744";
          type = "long";
       }
    }
-   element reg_bsn_monitor_proc.mem
+   element pio_system_info.mem
    {
+      datum _lockedAddress
+      {
+         value = "1";
+         type = "boolean";
+      }
       datum baseAddress
       {
-         value = "12800";
+         value = "0";
          type = "long";
       }
    }
-   element reg_bsn_monitor_input.mem
+   element ram_diag_data_buffer_input_pre.mem
    {
       datum baseAddress
       {
-         value = "1024";
+         value = "524288";
          type = "long";
       }
    }
@@ -345,35 +356,32 @@
          type = "long";
       }
    }
-   element reg_dp_bsn_align_input.mem
+   element rom_system_info.mem
    {
-      datum baseAddress
+      datum _lockedAddress
       {
-         value = "13744";
-         type = "long";
+         value = "1";
+         type = "boolean";
       }
-   }
-   element reg_diagnostics.mem
-   {
       datum baseAddress
       {
-         value = "13312";
+         value = "4096";
          type = "long";
       }
    }
-   element ram_diag_data_buffer_mesh.mem
+   element reg_diagnostics.mem
    {
       datum baseAddress
       {
-         value = "12544";
+         value = "13312";
          type = "long";
       }
    }
-   element reg_diag_data_buffer_mesh.mem
+   element ram_diag_bg_proc.mem
    {
       datum baseAddress
       {
-         value = "13776";
+         value = "49152";
          type = "long";
       }
    }
@@ -754,6 +762,11 @@
          value = "40";
          type = "int";
       }
+      datum sopceditor_expanded
+      {
+         value = "0";
+         type = "boolean";
+      }
    }
    element reg_dp_fifo_fill
    {
@@ -762,6 +775,11 @@
          value = "41";
          type = "int";
       }
+      datum sopceditor_expanded
+      {
+         value = "0";
+         type = "boolean";
+      }
    }
    element reg_dp_offload_rx_hdr_dat
    {
@@ -789,6 +807,19 @@
          type = "boolean";
       }
    }
+   element reg_dp_xonoff_output
+   {
+      datum _sortIndex
+      {
+         value = "42";
+         type = "int";
+      }
+      datum sopceditor_expanded
+      {
+         value = "0";
+         type = "boolean";
+      }
+   }
    element reg_mdio_0
    {
       datum _sortIndex
@@ -919,11 +950,11 @@
          type = "long";
       }
    }
-   element pio_debug_wave.s1
+   element pio_wdi.s1
    {
       datum baseAddress
       {
-         value = "12304";
+         value = "13728";
          type = "long";
       }
    }
@@ -935,11 +966,11 @@
          type = "long";
       }
    }
-   element pio_wdi.s1
+   element pio_debug_wave.s1
    {
       datum baseAddress
       {
-         value = "13728";
+         value = "12304";
          type = "long";
       }
    }
@@ -995,7 +1026,7 @@
  <parameter name="projectName" value="" />
  <parameter name="sopcBorderPoints" value="false" />
  <parameter name="systemHash" value="1" />
- <parameter name="timeStamp" value="1459869215301" />
+ <parameter name="timeStamp" value="1461163192610" />
  <parameter name="useTestBenchNamingPattern" value="false" />
  <instanceScript></instanceScript>
  <interface
@@ -2284,6 +2315,41 @@
    internal="reg_dp_fifo_fill.clk"
    type="conduit"
    dir="end" />
+ <interface
+   name="reg_dp_fifo_fill_reset"
+   internal="reg_dp_fifo_fill.reset"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_dp_xonoff_output_reset"
+   internal="reg_dp_xonoff_output.reset"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_dp_xonoff_output_clk"
+   internal="reg_dp_xonoff_output.clk"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_dp_xonoff_output_address"
+   internal="reg_dp_xonoff_output.address"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_dp_xonoff_output_write"
+   internal="reg_dp_xonoff_output.write"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_dp_xonoff_output_writedata"
+   internal="reg_dp_xonoff_output.writedata"
+   type="conduit"
+   dir="end" />
+ <interface
+   name="reg_dp_xonoff_output_read"
+   internal="reg_dp_xonoff_output.read"
+   type="conduit"
+   dir="end" />
  <module
    kind="altera_avalon_onchip_memory2"
    version="11.1"
@@ -2460,7 +2526,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='0x10000' end='0x10800' /><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='reg_dp_fifo_fill.mem' start='0x80' end='0x100' /><slave name='reg_dp_offload_tx_hdr_dat.mem' start='0x100' end='0x200' /><slave name='reg_dp_offload_rx_hdr_dat.mem' start='0x200' end='0x400' /><slave name='reg_bsn_monitor_input.mem' start='0x400' end='0x600' /><slave name='ram_diag_data_buffer_proc.mem' start='0x600' end='0x800' /><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='jtag_uart_0.avalon_jtag_slave' start='0x3008' end='0x3010' /><slave name='pio_debug_wave.s1' start='0x3010' end='0x3020' /><slave name='timer_0.s1' start='0x3020' end='0x3040' /><slave name='avs_eth_0.mms_reg' start='0x3040' end='0x3080' /><slave name='reg_tr_nonbonded.mem' start='0x3080' end='0x30C0' /><slave name='reg_mdio_1.mem' start='0x30C0' end='0x30E0' /><slave name='reg_mdio_2.mem' start='0x30E0' end='0x3100' /><slave name='ram_diag_data_buffer_mesh.mem' start='0x3100' end='0x3200' /><slave name='reg_bsn_monitor_proc.mem' start='0x3200' end='0x3400' /><slave name='reg_diagnostics.mem' start='0x3400' end='0x3500' /><slave name='reg_mdio_0.mem' start='0x3500' end='0x3520' /><slave name='reg_unb_sens.mem' start='0x3520' end='0x3540' /><slave name='reg_diag_bg_input.mem' start='0x3540' end='0x3560' /><slave name='reg_diag_bg_mesh.mem' start='0x3560' end='0x3580' /><slave name='reg_diag_bg_proc.mem' start='0x3580' end='0x35A0' /><slave name='pio_wdi.s1' start='0x35A0' end='0x35B0' /><slave name='reg_dp_bsn_align_input.mem' start='0x35B0' end='0x35C0' /><slave name='reg_diag_data_buffer_input_pre.mem' start='0x35C0' end='0x35C8' /><slave name='pio_pps.mem' start='0x35C8' end='0x35D0' /><slave name='reg_diag_data_buffer_mesh.mem' start='0x35D0' end='0x35D8' /><slave name='reg_diag_data_buffer_proc.mem' start='0x35D8' end='0x35E0' /><slave name='reg_diag_data_buffer_input_post.mem' start='0x35E0' end='0x35E8' /><slave name='ram_fil_coefs.mem' start='0x3800' end='0x4000' /><slave name='ram_st_sst.mem' start='0x4000' end='0x8000' /><slave name='reg_tr_xaui.mem' start='0x8000' end='0xA000' /><slave name='ram_diag_bg_input.mem' start='0xA000' end='0xC000' /><slave name='ram_diag_bg_proc.mem' start='0xC000' end='0xE000' /><slave name='avs_eth_0.mms_ram' start='0xE000' end='0xF000' /><slave name='ram_diag_bg_mesh.mem' start='0xF000' end='0x10000' /><slave name='cpu_0.jtag_debug_module' start='0x10000' end='0x10800' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' /><slave name='reg_tr_10GbE.mem' start='0x40000' end='0x60000' /><slave name='ram_diag_data_buffer_input_pre.mem' start='0x80000' end='0x100000' /><slave name='ram_diag_data_buffer_input_post.mem' start='0x100000' end='0x180000' /></address-map>]]></parameter>
+  <parameter name="dataSlaveMapParam"><![CDATA[<address-map><slave name='pio_system_info.mem' start='0x0' end='0x80' /><slave name='reg_dp_fifo_fill.mem' start='0x80' end='0x100' /><slave name='reg_dp_offload_tx_hdr_dat.mem' start='0x100' end='0x200' /><slave name='reg_dp_offload_rx_hdr_dat.mem' start='0x200' end='0x400' /><slave name='reg_bsn_monitor_input.mem' start='0x400' end='0x600' /><slave name='ram_diag_data_buffer_proc.mem' start='0x600' end='0x800' /><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='jtag_uart_0.avalon_jtag_slave' start='0x3008' end='0x3010' /><slave name='pio_debug_wave.s1' start='0x3010' end='0x3020' /><slave name='timer_0.s1' start='0x3020' end='0x3040' /><slave name='avs_eth_0.mms_reg' start='0x3040' end='0x3080' /><slave name='reg_tr_nonbonded.mem' start='0x3080' end='0x30C0' /><slave name='reg_mdio_1.mem' start='0x30C0' end='0x30E0' /><slave name='reg_mdio_2.mem' start='0x30E0' end='0x3100' /><slave name='ram_diag_data_buffer_mesh.mem' start='0x3100' end='0x3200' /><slave name='reg_bsn_monitor_proc.mem' start='0x3200' end='0x3400' /><slave name='reg_diagnostics.mem' start='0x3400' end='0x3500' /><slave name='reg_mdio_0.mem' start='0x3500' end='0x3520' /><slave name='reg_unb_sens.mem' start='0x3520' end='0x3540' /><slave name='reg_diag_bg_input.mem' start='0x3540' end='0x3560' /><slave name='reg_diag_bg_mesh.mem' start='0x3560' end='0x3580' /><slave name='reg_diag_bg_proc.mem' start='0x3580' end='0x35A0' /><slave name='pio_wdi.s1' start='0x35A0' end='0x35B0' /><slave name='reg_dp_bsn_align_input.mem' start='0x35B0' end='0x35C0' /><slave name='reg_diag_data_buffer_input_pre.mem' start='0x35C0' end='0x35C8' /><slave name='pio_pps.mem' start='0x35C8' end='0x35D0' /><slave name='reg_diag_data_buffer_mesh.mem' start='0x35D0' end='0x35D8' /><slave name='reg_diag_data_buffer_proc.mem' start='0x35D8' end='0x35E0' /><slave name='reg_diag_data_buffer_input_post.mem' start='0x35E0' end='0x35E8' /><slave name='reg_dp_xonoff_output.mem' start='0x35E8' end='0x35F0' /><slave name='ram_fil_coefs.mem' start='0x3800' end='0x4000' /><slave name='ram_st_sst.mem' start='0x4000' end='0x8000' /><slave name='reg_tr_xaui.mem' start='0x8000' end='0xA000' /><slave name='ram_diag_bg_input.mem' start='0xA000' end='0xC000' /><slave name='ram_diag_bg_proc.mem' start='0xC000' end='0xE000' /><slave name='avs_eth_0.mms_ram' start='0xE000' end='0xF000' /><slave name='ram_diag_bg_mesh.mem' start='0xF000' end='0x10000' /><slave name='cpu_0.jtag_debug_module' start='0x10000' end='0x10800' /><slave name='onchip_memory2_0.s1' start='0x20000' end='0x40000' /><slave name='reg_tr_10GbE.mem' start='0x40000' end='0x60000' /><slave name='ram_diag_data_buffer_input_pre.mem' start='0x80000' end='0x100000' /><slave name='ram_diag_data_buffer_input_post.mem' start='0x100000' end='0x180000' /></address-map>]]></parameter>
   <parameter name="clockFrequency" value="25000000" />
   <parameter name="deviceFamilyName" value="Stratix IV" />
   <parameter name="internalIrqMaskSystemInfo" value="7" />
@@ -2746,6 +2812,15 @@ 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_dp_xonoff_output">
+  <parameter name="g_adr_w" value="1" />
+  <parameter name="g_dat_w" value="32" />
+  <parameter name="AUTO_SYSTEM_CLOCK_RATE" value="25000000" />
+ </module>
  <connection
    kind="avalon"
    version="11.1"
@@ -3632,4 +3707,22 @@ q]]></parameter>
   <parameter name="arbitrationPriority" value="1" />
   <parameter name="baseAddress" value="0x0080" />
  </connection>
+ <connection
+   kind="clock"
+   version="11.1"
+   start="clk_input.clk"
+   end="reg_dp_xonoff_output.system" />
+ <connection
+   kind="reset"
+   version="11.1"
+   start="clk_input.clk_reset"
+   end="reg_dp_xonoff_output.system_reset" />
+ <connection
+   kind="avalon"
+   version="11.1"
+   start="cpu_0.data_master"
+   end="reg_dp_xonoff_output.mem">
+  <parameter name="arbitrationPriority" value="1" />
+  <parameter name="baseAddress" value="0x35e8" />
+ </connection>
 </system>