--- /dev/null
+<?xml version="1.0" encoding="utf-8" ?>
+<TrbNetEntity xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="../schema/TrbNetEntity.xsd"
+ name="InputMonitorTrb3sc"
+ address="df00"
+ >
+ <description>Input monitoring and trigger signal generation - version for TRB3sc</description>
+
+ <group name="MonitorRegs" purpose="config" address="0080" size="16" mode="rw" continuous="true">
+ <description>Registers of the input monitoring</description>
+ <register name="MonitorEnable" address="0000" mode="rw" >
+ <description>Enables individual inputs for monitoring</description>
+ <field name="MonitorEnable" start="0" bits="32" format="bitmask" noflag="true">
+ </field>
+ </register>
+ <register name="MonitorInvert" address="0001" mode="rw" >
+ <description>Inverts individual inputs for monitoring</description>
+ <field name="MonitorInvert" start="0" bits="32" format="bitmask" noflag="true">
+ </field>
+ </register>
+ <register name="MonitorRate" address="0002" mode="rw" >
+ <description>Sets the rate at which values are written to the fifo.</description>
+ <field name="MonitorRate" start="0" bits="32" format="unsigned" unit="ns" scale="10" noflag="true">
+ </field>
+ </register>
+ <register name="MonitorTimer" address="0003" mode="r" >
+ <description>Current value of the timer</description>
+ <field name="MonitorTimer" start="0" bits="32" format="unsigned" unit="ns" scale="10">
+ </field>
+ </register>
+ <register name="MonitorStatus" address="0004" mode="r" >
+ <description>Status information of the monitoring block</description>
+ <field name="MonitorFifoLevel" start="0" bits="10" format="unsigned" >
+ <description>Number of data words in fifo for first input</description>
+ </field>
+ <field name="MonitorFifoWrite" start="11" bits="1" format="boolean" >
+ <description>Write signal for fifos</description>
+ </field>
+ <field name="MonitorWordCount" start="16" bits="12" format="unsigned" >
+ <description>Word counter of Fifo control logic</description>
+ </field>
+ </register>
+ <register name="MonitorInput" address="000e" mode="r" >
+ <description>Current status of all inputs</description>
+ <field name="MonitorInput" start="0" bits="31" format="bitmask">
+ </field>
+ </register>
+ <register name="MonitorTrigger" address="000f" mode="rw" >
+ <description>Control signals for fifo and counters</description>
+ <field name="MonitorRecord" start="0" mode="w" bits="1" format="bitmask">
+ <description>Start writing data to fifo</description>
+ </field>
+ <field name="MonitorResetCounters" start="1" mode="w" bits="1" format="bitmask">
+ <description>Reset all counters</description>
+ </field>
+ <field name="MonitorInputNumber" start="8" mode="r" bits="5" format="unsigned">
+ <description>Number of input signals</description>
+ </field>
+ <field name="MonitorSingleFifo" start="15" mode="r" bits="1" format="boolean">
+ <description>Shows if the design contains a single monitoring fifo only and not one for each input</description>
+ </field>
+ <field name="MonitorFifoSelect" start="16" mode="rw" bits="5" format="unsigned">
+ <description>Select the input signal to the Fifo, if the single-fifo version is implemented</description>
+ </field>
+ </register>
+ </group>
+
+ <group name="MonitorFifos" purpose="statistics" address="00a0" size="32" mode="r" continuous="true">
+ <description>Fifos for each input. 1024 words each.</description>
+ <fifo name="MonitorFifo" address="0000" mode="r" repeat="32" size="1024" >
+ <description>Fifo with history of input edge counters. Number of available fifos depends on MonitorSingleFifo and MonitorInputNumber</description>
+ <field name="MonitorFifo" start="0" bits="18" format="unsigned" noflag="true" rate="true">
+ </field>
+ </fifo>
+ </group>
+
+ <group name="MonitorCounters" purpose="statistics" address="00c0" size="32" mode="r" continuous="true">
+ <description>Current counter value for each input</description>
+ <register name="MonitorCounter" address="0000" mode="r" repeat="32" >
+ <description>Current value of the input edge counter</description>
+ <field name="MonitorCounter" start="0" bits="24" format="unsigned" noflag="true" rate="true" />
+ </register>
+ </group>
+
+ <group name="Trigger" purpose="config" address="0000" size="37" mode="rw" continuous="false">
+ <description>Registers of the trigger generation logic</description>
+ <group name="TriggerGeneration" purpose="config" address="0000" size="2" repeat="16" continuous="true">
+ <register name="TriggerEnable" address="0000" mode="rw" >
+ <description>Enables individual inputs for trigger generation. If enabled, the input adds to the common or</description>
+ <field name="TriggerEnable" start="0" bits="32" format="bitmask" noflag="true">
+ </field>
+ </register>
+ <register name="TriggerInvertOld" address="0001" mode="rw" >
+ <description>Inverts individual inputs for trigger generation. DOES NOT EXIST IN NEW DESIGNS</description>
+ <field name="TriggerInvertOld" start="0" bits="32" format="bitmask" noflag="true">
+ </field>
+ </register>
+ </group>
+ <register name="TriggerInput" address="0020" mode="r" >
+ <description>Current status of all inputs</description>
+ <field name="TriggerInput" start="0" bits="32" format="bitmask" />
+ </register>
+ <register name="TriggerOutput" address="0021" mode="r" >
+ <description>Current status of all inputs</description>
+ <field name="TriggerOutput" start="0" bits="32" format="bitmask" />
+ </register>
+ <register name="TriggerStretch" address="0022" mode="rw" >
+ <description>Enable stretching of individual input channels by adding 10 to 20 ns to the signal length</description>
+ <field name="TriggerStretch" start="0" bits="32" format="bitmask" />
+ </register>
+ <register name="TriggerInvert" address="0024" mode="rw" >
+ <description>Inverts individual inputs for trigger generation.</description>
+ <field name="TriggerInvert" start="0" bits="32" format="bitmask" />
+ </register>
+ <register name="TriggerCoincidence1" address="0025" mode="rw" >
+ <description>Enable input to be used in coincidence logic. First group of signals or'ed. At least one of the inputs to each group must fire within 40 ns to get a coincidence.</description>
+ <field name="TriggerCoincidence1" start="0" bits="32" format="bitmask" />
+ </register>
+ <register name="TriggerCoincidence2" address="0026" mode="rw" >
+ <description>Enable input to be used in coincidence logic. Second group of signals or'ed. At least one of the inputs to each group must fire within 40 ns to get a coincidence.</description>
+ <field name="TriggerCoincidence2" start="0" bits="32" format="bitmask" />
+ </register>
+ <register name="TriggerConfig" address="0027" mode="r" >
+ <description>Information about configuration.</description>
+ <field name="TriggerInputs" start="0" bits="6" format="unsigned" noflag="true">
+ <description>Number of inputs to the trigger logic</description>
+ </field>
+ <field name="TriggerOutputs" start="8" bits="4" format="unsigned" noflag="true">
+ <description>Number of outputs of the trigger logic</description>
+ </field>
+ </register>
+ </group>
+
+</TrbNetEntity>
+