<!-- Address table for TOB mergin module -->
<!-- version: 0.17.0     sha: 69E93F4 -->

<node fwinfo="endpoint;width=14" >
  <node id="merging_registers" address="0x0" description="Registers for TOB sorting module" tags="slave" fwinfo="endpoint;width=3">
    <!-- Control registers -->
    <node id="merging_control"   address="0x00">
      <node id="enable_fake_input"   description="Enable fake input TOBs" mask="0x1"/>
      <node id="enable_input_spy"    description="Enable writing input TOBS on input spy memory" mask="0x2"/>
      <node id="enable_fake_output"  description="Enable fake output TOBs" mask="0x4"/>
      <node id="enable_output_spy"   description="Enable writing output OBs on output spy memory" mask="0x8"/>
    </node>

    <node id="internal_sorting_control"   address="0x01"/>

    <node id="tob_offset"   address="0x02">
      <node id="local_offset"  description="Delay in unit of 200MHz clock" mask="0x0000003f"/>
      <node id="local_disable"  description="Set to 1 to disable FPGA1" mask="0x00000080"/>
      <node id="a_offset"  description="Delay in unit of 280MHz clock for U1 (if this is U2) or U2 (if this is U1) TOBs" mask="0x00003f00"/>
      <node id="a_disable"  description="Set to 1 to disable U2 (if this is U1) or U1 (if this is U2)" mask="0x00008000"/>
      <node id="b_offset"  description="Delay in unit of 280MHz clock for U3 TOBs" mask="0x003f0000"/>
      <node id="b_disable"  description="Set to 1 to disable U3" mask="0x00800000"/>
      <node id="c_offset"  description="Delay in unit of 280MHz clock for U4 TOBs" mask="0x3f000000"/>
      <node id="c_disable"  description="Set to 1 to disable U4" mask="0x80000000"/>
    </node>

    <!-- Status registers -->
    <node id="tob_bc_align_counters"  address="0x04">
      <node id="cnt_a"  description="Counter for TOB bus A i.e. U1 (if this is U2) or U2 (if this is U1)" mask="0x0000003ff"/>
      <node id="cnt_b"  description="Counter for TOB bus B i.e. U3" mask="0x000ffc00"/>
      <node id="cnt_c"  description="Counter for TOB bus C i.e. U4" mask="0x3ff00000"/>
    </node>

    <node id="tob_bc_align_status"  address="0x05">
      <node id="done_a"  description="Done for TOB bus A i.e. U1 (if this is U2) or U2 (if this is U1)" mask="0x00000001"/>
      <node id="done_b"  description="Done for TOB bus B i.e. U3" mask="0x00000002"/>
      <node id="done_c"  description="Done for TOB bus C i.e. U4" mask="0x00000004"/>
      <node id="counter"  description="Counter of the reset given by locan BCN, should be changing at all time" mask="0x0ffff000"/>
    </node>

  </node>
  <node id="merging_input_ram_1" address="0x400" size="0x400" mode="block" description="spy RAM for e FEX merging input 1" tags="slave" fwinfo="endpoint;width=10"/>
  <node id="merging_input_ram_2" address="0x800" size="0x400" mode="block" description="spy RAM for e FEX merging input 2" tags="slave" fwinfo="endpoint;width=10"/>
  <node id="merging_input_ram_3" address="0xC00" size="0x400" mode="block" description="spy RAM for e FEX merging input 3" tags="slave" fwinfo="endpoint;width=10"/>
  <node id="merging_input_ram_4" address="0x1000" size="0x400" mode="block" description="spy RAM for e FEX merging input 4" tags="slave" fwinfo="endpoint;width=10"/>
  <node id="merging_output_ram" address="0x1400" size="0x400" mode="block" description="spy RAM for e FEX merging output" tags="slave" fwinfo="endpoint;width=10"/>
</node>
