]> jspc29.x-matter.uni-frankfurt.de Git - daqtools.git/commitdiff
Started thinking of TrbNetTopology, a "smart" TrbNet setup file
authorAndreas Neiser <neiser@kph.uni-mainz.de>
Sun, 30 Jun 2013 13:48:14 +0000 (15:48 +0200)
committerAndreas Neiser <neiser@kph.uni-mainz.de>
Sun, 30 Jun 2013 13:49:53 +0000 (15:49 +0200)
xml-db/database/TrbNetCommon.xsd [new file with mode: 0644]
xml-db/database/TrbNetEntity.xsd
xml-db/database/TrbNetTopology.xsd [new file with mode: 0644]
xml-db/database/jtag_registers_SPEC.xml
xml-db/database/testing.xml

diff --git a/xml-db/database/TrbNetCommon.xsd b/xml-db/database/TrbNetCommon.xsd
new file mode 100644 (file)
index 0000000..72bdc94
--- /dev/null
@@ -0,0 +1,224 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+  <!--==============================
+      Type Definitions
+      ==============================-->
+  <xs:simpleType name="nametype">
+    <xs:restriction base="xs:string">
+      <xs:pattern value="[0-9a-zA-Z_]+"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="addresstype">
+    <xs:restriction base="xs:string">
+      <xs:pattern value="[0-9a-fA-F]{4}"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="valuetype">
+    <xs:restriction base="xs:string">
+      <xs:pattern value="[0-9a-fA-F]+"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="modetype">
+    <xs:restriction base="xs:string">
+      <xs:pattern value="(r|w|rw)b?"/>
+      <!-- (r)ead and /or (w)rite, plus maybe (b)lock, if a
+           no-more-data from this registers transports some vital
+           information -->
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="purposetype">
+    <!-- config: setup some behaviour
+         trigger: register which starts some kind of operation of the hardware
+         status: shows the current status of components. E.g. temperature or the state of a state machine
+         statistics: statistical information like event counter or amount of data transferred
+         ***
+         Note: The difference between "status" and "statistics" is not sharp,
+         they both give some information about the system.
+    -->
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="config"/>
+      <xs:enumeration value="trigger"/>
+      <xs:enumeration value="status"/>
+      <xs:enumeration value="statistics"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="bittype">
+    <xs:restriction base="xs:integer">
+      <xs:minInclusive value="0"/>
+      <xs:maxInclusive value="31"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="formattype">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="raw"/>
+      <xs:enumeration value="integer"/>
+      <xs:enumeration value="signed"/>
+      <xs:enumeration value="unsigned"/>
+      <xs:enumeration value="hex"/>
+      <xs:enumeration value="bitmask"/>
+      <xs:enumeration value="boolean"/>
+      <xs:enumeration value="time"/>
+      <xs:enumeration value="string"/>
+      <xs:enumeration value="enum"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+
+  <!--==============================
+      Attribute Definition
+      ==============================-->
+  <xs:attribute name="name"         type="nametype" />
+  <xs:attribute name="address"      type="addresstype" />
+  <xs:attribute name="mode"         type="modetype"  />
+  <xs:attribute name="purpose"      type="purposetype" />
+  <xs:attribute name="start"        type="bittype" />
+  <xs:attribute name="size"         type="xs:positiveInteger" />
+  <xs:attribute name="defaultValue" type="valuetype" />
+  <xs:attribute name="value"        type="valuetype" />
+  <xs:attribute name="format"       type="formattype" />
+  <xs:attribute name="continuous"   type="xs:boolean" />
+  <xs:attribute name="repeat"       type="xs:positiveInteger" />
+  <xs:attribute name="errorflag"    type="xs:boolean" />
+  <!-- unit and scale give information about how to interpret data. a
+       numerical scaling factor and/or a physical unit. E.g.
+       temperature measured in 1/16th degrees will be ".0625" and "°C"
+  -->
+  <xs:attribute name="unit"         type="xs:string" />
+  <xs:attribute name="scale"        type="xs:double" />
+
+
+  <!--==============================
+      Simple Elements
+      ==============================-->
+  <xs:element name="description" type="xs:string" />
+
+  <!--==============================
+      Complex Elements
+      ==============================-->
+
+  <xs:complexType name="grouptype">
+    <xs:sequence>
+      <!-- a group does not necessarily need a description -->
+      <xs:choice minOccurs="0">
+        <xs:element   ref="description"/>
+      </xs:choice>
+    </xs:sequence>
+    <xs:attribute ref="name" use="required" />
+    <xs:attribute ref="address" />
+    <xs:attribute ref="size" />
+    <xs:attribute ref="purpose" />
+    <xs:attribute ref="continuous" />
+    <xs:attribute ref="mode" />
+    <xs:attribute ref="format" />
+    <xs:attribute ref="repeat" />
+  </xs:complexType>
+  
+  
+  <xs:element name="enumItem">
+    <xs:complexType>
+      <xs:simpleContent>
+        <xs:extension base="xs:string">
+          <xs:attribute name="value" type="valuetype" />
+        </xs:extension>
+      </xs:simpleContent>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="field">
+    <xs:complexType>
+      <xs:sequence>
+        <!-- description can be omitted if a register or alike only contains
+             one or several identical fields and the description of them can
+             be inherited from the register itself-->
+        <xs:choice minOccurs="0">
+          <xs:element   ref="description"/>
+        </xs:choice>
+        <xs:choice minOccurs="0" maxOccurs="unbounded">
+          <!-- enum items are only meaningful for format="enum"
+               fields, however we don't complain if there are some for
+               other formats... -->
+          <xs:element   ref="enumItem" />
+        </xs:choice>
+      </xs:sequence>
+
+      <xs:attribute ref="name" use="required" />
+      <xs:attribute ref="start" use="required" />
+      <xs:attribute ref="size" />
+      <xs:attribute ref="purpose" />
+      <xs:attribute ref="mode" />
+      <xs:attribute ref="value" />
+      <xs:attribute ref="format" />
+      <xs:attribute ref="repeat" />
+      <xs:attribute ref="unit" />
+      <xs:attribute ref="scale" />
+      <!-- if PERL evaluates this field to true,
+           an error is indicated by this field -->
+      <xs:attribute ref="errorflag" />
+    </xs:complexType>
+    <xs:unique name="UniqueEnumItems">
+      <xs:selector xpath="enumItem" />
+      <xs:field xpath="@value" />
+    </xs:unique>
+  </xs:element>
+
+
+  <xs:complexType name="basicTrbData">
+    <xs:sequence>
+      <!-- every TrbData must be described -->
+      <xs:choice>
+        <xs:element   ref="description"/>
+      </xs:choice>
+      <!-- but a data without any fields does not make sense for this
+           database, so the default minOccurs=1 is used -->
+      <xs:choice maxOccurs="unbounded">
+        <xs:element   ref="field" />
+      </xs:choice>
+    </xs:sequence>
+    <xs:attribute ref="name" use="required" />
+    <xs:attribute ref="address" use="required" />
+    <xs:attribute ref="mode" />
+    <xs:attribute ref="purpose" />
+  </xs:complexType>
+
+
+  <xs:element name="register">
+    <xs:complexType>
+      <xs:complexContent>
+        <xs:extension base="basicTrbData">
+          <xs:attribute ref="repeat" />
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="memory">
+    <xs:complexType>
+      <xs:complexContent>
+        <xs:extension base="basicTrbData">
+          <!-- size specified in 32bit long words -->
+          <xs:attribute ref="size" />
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="fifo">
+    <xs:complexType>
+      <xs:complexContent>
+        <xs:extension base="basicTrbData">
+          <!-- a fifo is currently not different at all from
+               basicTrbData, but we keep this complicated definition
+               for future extensions -->
+        </xs:extension>
+      </xs:complexContent>
+    </xs:complexType>
+  </xs:element>
+
+</xs:schema>                   
index 12c07ec6edf2a34a5aabf4ad85e045e139336936..ab154830be9622fd806075ca8842f47d437238db 100644 (file)
@@ -1,108 +1,9 @@
 <?xml version="1.0" encoding="utf-8" ?>
 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <!-- many definitions are used by TrbNetTopology.xsd as well, so
+       they are collected in a common scheme -->
+  <xs:include schemaLocation="TrbNetCommon.xsd"/>
 
-  <!--==============================
-      Type Definitions
-      ==============================-->
-  <xs:simpleType name="nametype">
-    <xs:restriction base="xs:string">
-      <xs:pattern value="[0-9a-zA-Z_]+"/>
-    </xs:restriction>
-  </xs:simpleType>
-
-  <xs:simpleType name="addresstype">
-    <xs:restriction base="xs:string">
-      <xs:pattern value="[0-9a-fA-F]{4}"/>
-    </xs:restriction>
-  </xs:simpleType>
-
-  <xs:simpleType name="valuetype">
-    <xs:restriction base="xs:string">
-      <xs:pattern value="[0-9a-fA-F]+"/>
-    </xs:restriction>
-  </xs:simpleType>
-
-  <xs:simpleType name="modetype">
-    <xs:restriction base="xs:string">
-      <xs:pattern value="(r|w|rw)b?"/>
-      <!-- (r)ead and /or (w)rite, plus maybe (b)lock, if a
-           no-more-data from this registers transports some vital
-           information -->
-    </xs:restriction>
-  </xs:simpleType>
-
-  <xs:simpleType name="purposetype">
-    <!-- config: setup some behaviour
-         trigger: register which starts some kind of operation of the hardware
-         status: shows the current status of components. E.g. temperature or the state of a state machine
-         statistics: statistical information like event counter or amount of data transferred
-         ***
-         Note: The difference between "status" and "statistics" is not sharp,
-         they both give some information about the system.
-    -->
-    <xs:restriction base="xs:string">
-      <xs:enumeration value="config"/>
-      <xs:enumeration value="trigger"/>
-      <xs:enumeration value="status"/>
-      <xs:enumeration value="statistics"/>
-    </xs:restriction>
-  </xs:simpleType>
-
-  <xs:simpleType name="bittype">
-    <xs:restriction base="xs:integer">
-      <xs:minInclusive value="0"/>
-      <xs:maxInclusive value="31"/>
-    </xs:restriction>
-  </xs:simpleType>
-
-  <xs:simpleType name="formattype">
-    <xs:restriction base="xs:string">
-      <xs:enumeration value="raw"/>
-      <xs:enumeration value="integer"/>
-      <xs:enumeration value="signed"/>
-      <xs:enumeration value="unsigned"/>
-      <xs:enumeration value="hex"/>
-      <xs:enumeration value="bitmask"/>
-      <xs:enumeration value="boolean"/>
-      <xs:enumeration value="time"/>
-      <xs:enumeration value="string"/>
-      <xs:enumeration value="enum"/>
-    </xs:restriction>
-  </xs:simpleType>
-
-
-  <!--==============================
-      Attribute Definition
-      ==============================-->
-  <xs:attribute name="name"         type="nametype" />
-  <xs:attribute name="address"      type="addresstype" />
-  <xs:attribute name="mode"         type="modetype"  />
-  <xs:attribute name="purpose"      type="purposetype" />
-  <xs:attribute name="start"        type="bittype" />
-  <xs:attribute name="size"         type="xs:positiveInteger" />
-  <xs:attribute name="defaultValue" type="valuetype" />
-  <xs:attribute name="value"        type="valuetype" />
-  <xs:attribute name="format"       type="formattype" />
-  <xs:attribute name="continuous"   type="xs:boolean" />
-  <xs:attribute name="repeat"       type="xs:positiveInteger" />
-  <xs:attribute name="errorflag"    type="xs:boolean" />
-  <!-- unit and scale give information about how to interpret data. a
-       numerical scaling factor and/or a physical unit. E.g.
-       temperature measured in 1/16th degrees will be ".0625" and "°C"
-  -->
-  <xs:attribute name="unit"         type="xs:string" />
-  <xs:attribute name="scale"        type="xs:double" />
-
-
-  <!--==============================
-      Simple Elements
-      ==============================-->
-  <xs:element name="description" type="xs:string" />
-
-
-  <!--==============================
-      Complex Elements
-      ==============================-->
   <xs:element name="TrbNetEntity">
     <xs:complexType>
       <xs:sequence>
       <xs:attribute ref="name" use="required" />
       <xs:attribute ref="address" />
     </xs:complexType>
+    
     <!-- although requiring "entity global" unique names usually leads
-         to redundant naming schemes, it hopefully makes "naming confusion"
-         less likely -->
+         to redundant naming schemes, its makes minor modifications to
+         entities very easy to specify (which is desirable in setup files) -->    
     <xs:unique name="UniqueFieldNames">
       <xs:selector xpath=".//field" />
       <xs:field xpath="@name" />
       <xs:selector xpath=".//register | .//memory | .//fifo" />
       <xs:field xpath="@name" />
     </xs:unique>
+    <xs:unique name="UniqueGroupNames">
+      <xs:selector xpath=".//group" />
+      <xs:field xpath="@name" />
+    </xs:unique>
+    
     <!-- consistency of addresses (and start, size of fields) is
          checked more precisely programmatically -->
     <xs:unique name="UniqueTrbDataAddressesInTop">
 
   <xs:element name="group">
     <xs:complexType>
-      <xs:sequence>
-        <!-- a group does not necessarily need a description -->
-        <xs:choice minOccurs="0">
-          <xs:element   ref="description"/>
-        </xs:choice>
-        <!-- groups may consist of other groups and "TrbData" describing things  -->
-        <xs:choice maxOccurs="unbounded">
-          <xs:element   ref="group"       maxOccurs="unbounded" />
-          <xs:element   ref="register"    maxOccurs="unbounded" />
-          <xs:element   ref="memory"      maxOccurs="unbounded" />
-          <xs:element   ref="fifo"        maxOccurs="unbounded" />
-        </xs:choice>
-      </xs:sequence>
-      <xs:attribute ref="name" use="required" />
-      <xs:attribute ref="address" />
-      <xs:attribute ref="size" />
-      <xs:attribute ref="purpose" />
-      <xs:attribute ref="continuous" />
-      <xs:attribute ref="mode" />
-      <xs:attribute ref="format" />
-      <xs:attribute ref="repeat" />
+      <xs:complexContent>
+        <xs:extension base="grouptype">
+          <!-- groups in a TrbNetEntity may consist of other groups
+               and "TrbData" describing things -->
+          <xs:choice maxOccurs="unbounded">
+            <xs:element   ref="group"       maxOccurs="unbounded" />
+            <xs:element   ref="register"    maxOccurs="unbounded" />
+            <xs:element   ref="memory"      maxOccurs="unbounded" />
+            <xs:element   ref="fifo"        maxOccurs="unbounded" />
+          </xs:choice>
+        </xs:extension>
+      </xs:complexContent>
     </xs:complexType>
+    <!-- consistency of addresses (and start, size of fields) is
+         checked more precisely programmatically -->
     <xs:unique name="UniqueTrbDataAddressesInGroup">
       <xs:selector xpath="register | memory | fifo" />
       <xs:field xpath="@address" />
     </xs:unique>
-  </xs:element>
-
-  <xs:element name="enumItem">
-    <xs:complexType>
-      <xs:simpleContent>
-        <xs:extension base="xs:string">
-          <xs:attribute name="value" type="valuetype" />
-        </xs:extension>
-      </xs:simpleContent>
-    </xs:complexType>
-  </xs:element>
-
-  <xs:element name="field">
-    <xs:complexType>
-      <xs:sequence>
-        <!-- description can be omitted if a register or alike only contains
-             one or several identical fields and the description of them can
-             be inherited from the register itself-->
-        <xs:choice minOccurs="0">
-          <xs:element   ref="description"/>
-        </xs:choice>
-        <xs:choice minOccurs="0" maxOccurs="unbounded">
-          <!-- enum items are only meaningful for format="enum"
-               fields, however we don't complain if there are some for
-               other formats... -->
-          <xs:element   ref="enumItem" />
-        </xs:choice>
-      </xs:sequence>
-
-      <xs:attribute ref="name" use="required" />
-      <xs:attribute ref="start" use="required" />
-      <xs:attribute ref="size" />
-      <xs:attribute ref="purpose" />
-      <xs:attribute ref="mode" />
-      <xs:attribute ref="defaultValue" />
-      <xs:attribute ref="format" />
-      <xs:attribute ref="repeat" />
-      <xs:attribute ref="unit" />
-      <xs:attribute ref="scale" />
-      <!-- if PERL evaluates this field to true,
-           an error is indicated by this field -->
-      <xs:attribute ref="errorflag" />
-    </xs:complexType>
-    <xs:unique name="UniqueEnumItems">
-      <xs:selector xpath="enumItem" />
-      <xs:field xpath="@value" />
-    </xs:unique>
-  </xs:element>
-
-
-  <xs:complexType name="basicTrbData">
-    <xs:sequence>
-      <!-- every TrbData must be described -->
-      <xs:choice>
-        <xs:element   ref="description"/>
-      </xs:choice>
-      <!-- but a data without any fields does not make sense for this
-           database, so the default minOccurs=1 is used -->
-      <xs:choice maxOccurs="unbounded">
-        <xs:element   ref="field" />
-      </xs:choice>
-    </xs:sequence>
-    <xs:attribute ref="name" use="required" />
-    <xs:attribute ref="address" use="required" />
-    <xs:attribute ref="mode" />
-    <xs:attribute ref="purpose" />
-  </xs:complexType>
-
-
-  <xs:element name="register">
-    <xs:complexType>
-      <xs:complexContent>
-        <xs:extension base="basicTrbData">
-          <xs:attribute ref="repeat" />
-        </xs:extension>
-      </xs:complexContent>
-    </xs:complexType>
-  </xs:element>
-
-  <xs:element name="memory">
-    <xs:complexType>
-      <xs:complexContent>
-        <xs:extension base="basicTrbData">
-          <!-- size specified in 32bit long words -->
-          <xs:attribute ref="size" />
-        </xs:extension>
-      </xs:complexContent>
-    </xs:complexType>
-  </xs:element>
-
-  <xs:element name="fifo">
-    <xs:complexType>
-      <xs:complexContent>
-        <xs:extension base="basicTrbData">
-          <!-- a fifo is currently not different at all from
-               basicTrbData, but we keep this complicated definition
-               for future extensions -->
-        </xs:extension>
-      </xs:complexContent>
-    </xs:complexType>
-  </xs:element>
-
-
+  </xs:element>  
 </xs:schema>
diff --git a/xml-db/database/TrbNetTopology.xsd b/xml-db/database/TrbNetTopology.xsd
new file mode 100644 (file)
index 0000000..ffcac39
--- /dev/null
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+  <xs:include schemaLocation="TrbNetCommon.xsd"/>
+  
+</xs:schema>
index bbd649fec3e944811795c3311ba88cbfddcc7cb8..a7f6862a3c24bcff89e8ae7b78efaedf6c645b2e 100644 (file)
@@ -14,7 +14,7 @@
               address="0007" mode="rw" purpose ="config" >
       <description>Wait time between write sequence and start signal.</description>
       <field name="WaitBeforeStart"
-             start="0"   size="20"  mode="rw"  purpose="config"  format="integer"  defaultValue="0" >
+             start="0"   size="20"  mode="rw"  purpose="config"  format="integer">
         <description>The number of MAPS clock cycles to wait after last write before sending the start signal. </description>
       </field>
     </register>
@@ -22,7 +22,7 @@
               address="000c" mode="w" purpose ="trigger" >
       <description>Trigger the init sequence.</description>
       <field name="TriggerInitSeq"
-             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask"  defaultValue="0" >
+             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask">
         <description>A bitmask to trigger the init sequence on individual JTAG chains. </description>
       </field>
     </register>
@@ -30,7 +30,7 @@
               address="000d" mode="w" purpose ="trigger" >
       <description>Trigger the init sequence.</description>
       <field name="TriggerReset"
-             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask"  defaultValue="0" >
+             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask">
         <description>A bitmask to trigger sending a reset pulse on individual JTAG chains </description>
       </field>
     </register>
@@ -38,7 +38,7 @@
               address="000e" mode="w" purpose ="trigger" >
       <description>Trigger sending a start pulse.</description>
       <field name="TriggerStart"
-             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask"  defaultValue="0" >
+             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask">
         <description>A bitmask to trigger sending a start pulse on individual JTAG chains </description>
       </field>
     </register>
@@ -46,7 +46,7 @@
               address="000f" mode="w" purpose ="trigger" >
       <description>Trigger running JTAG write.</description>
       <field name="TriggerJtagRun"
-             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask"  defaultValue="0" >
+             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask">
         <description>A bitmask to trigger writing the JTAG registers three times on individual JTAG chains </description>
       </field>
     </register>
@@ -54,7 +54,7 @@
               address="0010" mode="rw" purpose="config" >
       <description>Generate a reset before doing init sequence</description>
       <field name="ResetBeforeInit"
-             start="0"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+             start="0"   size="1"  mode="rw"  purpose="config"  format="boolean">
         <description>Enable to send a reset pulse before starting init sequence</description>
       </field>
     </register>
@@ -62,7 +62,7 @@
               address="0011" mode="rw" purpose="config" >
       <description>Generate a reset after first register write sequence</description>
       <field name="ResetAfterFirstWrite"
-             start="0"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+             start="0"   size="1"  mode="rw"  purpose="config"  format="boolean">
         <description>Enable to send a reset pulse after the first writing of JTAG registers</description>
       </field>
     </register>
@@ -70,7 +70,7 @@
               address="0014" mode="w" purpose ="trigger" >
       <description>Trigger writing all JTAG registers once</description>
       <field name="TriggerWriteOnce"
-             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask"  defaultValue="0" >
+             start="0"   size="5"  mode="w"  purpose="trigger"  format="bitmask">
         <description>Trigger writing all JTAG registers once on individual JTAG chains</description>
       </field>
     </register>
                 address="0020"  repeat="5" purpose="config" mode="rw" >
         <description>Sets fixed values for all outputs for JTAG and sensor control and inverts the outputs if needed. One register for each JTAG chain.</description>
         <field name="InvertTDO"
-               start="0"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="0"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Invert TDO input signal</description>
         </field>      
         <field name="InvertTDI"
-               start="2"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="2"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Invert TDI output signal</description>
         </field>
         <field name="InvertTMS"
-               start="4"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="4"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Invert TMS output signal</description>
         </field>
         <field name="InvertTCK"
-               start="6"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="6"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Invert TCK output signal</description>
         </field>
         <field name="InvertStart"
-               start="8"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="8"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Invert Start output signal</description>
         </field>
         <field name="InvertReset"
-               start="10"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="10"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Invert Reset output signal</description>
         </field>
         <field name="InvertClock"
-               start="12"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="12"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Invert Clock output signal</description>
         </field>
         <field name="EnableTDO"
-               start="1"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="1"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Enable TDO input signal</description>
         </field>      
         <field name="EnableTDI"
-               start="3"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="3"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Enable TDI output signal</description>
         </field>
         <field name="EnableTMS"
-               start="5"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="5"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Enable TMS output signal</description>
         </field>
         <field name="EnableTCK"
-               start="7"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="7"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Enable TCK output signal</description>
         </field>
         <field name="EnableStart"
-               start="9"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="9"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Enable Start output signal</description>
         </field>
         <field name="EnableReset"
-               start="11"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="11"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Enable Reset output signal</description>
         </field>
         <field name="EnableClock"
-               start="13"   size="1"  mode="rw"  purpose="config"  format="boolean"  defaultValue="0" >
+               start="13"   size="1"  mode="rw"  purpose="config"  format="boolean">
           <description>Enable Clock output signal</description>
         </field>
       </register>
index 081321cc1283165e9341489a5603547310624cb5..27550a2c3b215f4c2107db1738b5871f2aebe07a 100644 (file)
@@ -23,8 +23,7 @@
       <field
           name="WaitBeforeStart"
           start="0"
-          size="20"
-          defaultValue="0" >
+          size="20">
         <description>The number of MAPS clock cycles to wait after last write before sending the start signal. </description>
       </field>
     </register>