--- /dev/null
+<?xml version="1.0" encoding="utf-8" ?>
+<TrbNetEntity xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="TrbNetEntity.xsd"
+ name="Hub"
+ address="0000"
+ >
+ <description>Register of the hub entity</description>
+
+ <group name="Status" purpose="status" address="0080" mode="r" continuous="false">
+ <group name="PortStatus"
+ address="0000" size="4" purpose="config" mode="rw" continuous="true">
+ <description>Current status of each port of the hub on each channel.</description>
+ <register name="PortStatusChannels"
+ address="0000" repeat="4" purpose="status" mode="rw" >
+ <description>Current status of each port of the hub on each channel.</description>
+ <field name="PortStatusChannels"
+ start="0" size="17" mode="r" purpose="status" format="bitmask">
+ </field>
+ </register>
+ </group>
+ </group>
+
+<!--
+ <group name="Status2" purpose="statistics" address="4000" mode="r" continuous="true">
+ </group>
+
+ <group name="Control" purpose="config" address="00c0" mode="rw" continuous="false">
+ </group>
+ -->
+
+</TrbNetEntity>
name="JtagController"
address="a000"
>
- <description>A JTAG controller for Pixel Sensors?</description>
+ <description>A JTAG controller for Pixel Sensors</description>
<!--===========================================-->
<!-- Common JTAG control registers -->
<!--===========================================-->
--- /dev/null
+<?xml version="1.0" encoding="utf-8" ?>
+<TrbNetEntity xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="TrbNetEntity.xsd"
+ name="TrgRdo"
+ address="7000"
+ >
+ <description>Register of the trigger and read-out handler in full_endpoint (on front-ends only)</description>
+
+
+ <register name="IPUHandlerStatus" address="0202" purpose="status">
+ <description>IPU handler status register</description>
+ <field name="IPUHandlerStatusState" start="0" size="4" format="enum">
+ <description>FSM state bits</description>
+ <enumItem value="0">IDLE</enumItem>
+ <enumItem value="1">WaitForLength</enumItem>
+ <enumItem value="2">GotLength</enumItem>
+ <enumItem value="3">SendDHDR</enumItem>
+ <enumItem value="4">ReadData</enumItem>
+ <enumItem value="5">EndReadout</enumItem>
+ </field>
+ </register>
+
+</TrbNetEntity>
name="TrbNet"
address="7000"
>
- <description>Registers for the TrbNet itself</description>
+ <description>Common Registers on allmost all endpoints</description>
<!-- this is just a very minimal version -->
<xs:choice maxOccurs="unbounded">
<xs:element name="entity" type="trbitemtype" />
<xs:element name="external" type="trbitemtype" />
+ <xs:element name="broadcast" type="broadcasttype" maxOccurs="unbounded" minOccurs="0" />
</xs:choice>
<xs:attribute ref="address" use="required" />
</xs:complexType>
</xs:element>
+ <xs:complexType name="broadcasttype">
+ <!-- Assigns a broadcast address to a trb element. Broadcast 0xffff matches all
+ boards by default and does not need to be set explicitly. -->
+ <xs:attribute name="address" type="addresstype" />
+ </xs:complexType>
+
<xs:complexType name="trbitemtype">
<!-- the entity may contain similar elements as the TrbNetEntity
element. They usually modify the "default" structure in an
<!-- we configure the trb endpoint with address 0x8000 -->
<trb address="8000">
+ <broadcast address="fffe" />
+ <broadcast address="ff7f" />
+ <broadcast address="ff7e" />
+ <broadcast address="fe35" />
+
<entity ref="TrbNet" />
<!-- it has a TDC (at default register address) -->
<trb address="0200">
+ <broadcast address="ff48" />
+
<!-- Standard TrbNet enpoint with standard 65ch TDC... -->
<entity ref="TrbNet" />
<entity ref="TDC" />
<!-- An example how to execute a setting. In general, the entities
are identified by their type and address (if specified) -->
<trb address="0200">
+ <broadcast address="ff48" />
+
<entity ref="TDC">
<!-- this field is a bitmask, so there's a converter to easily
set single bits -->
<trb address="0200">
+ <broadcast address="ff48" />
<entity ref="TDC">
<!-- this field is a bitmask, so there's a converter to easily
set single bits -->