<device xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" schemaVersion="1.1" xs:noNamespaceSchemaLocation="CMSIS-SVD_Schema_1_1.xsd">
  <name>GD32E230</name>
  <version>1.0</version>
  <description>GD32E230 ARM 32-bit Cortex-M23 Microcontroller based device</description>
  <cpu>
  <name>CM23</name>
  <revision>r0p0</revision>
  <endian>little</endian>
  <mpuPresent>1</mpuPresent>
  <fpuPresent>1</fpuPresent>
  <nvicPrioBits>4</nvicPrioBits>
  <vendorSystickConfig>0</vendorSystickConfig>
  </cpu> 
  <addressUnitBits>8</addressUnitBits>
  <width>32</width>
  <size>0x20</size>
  <resetValue>0x0</resetValue>
  <resetMask>0xFFFFFFFF</resetMask>
   <peripherals>
    <peripheral>
      <name>ADC</name>
      <description>Analog to digital converter</description>
      <groupName>ADC</groupName>
      <baseAddress>0x40012400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>ADC_CMP</name>
        <value>12</value>
      </interrupt>
      <registers>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>status register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>STRC</name>
              <description>Start flag of regular channel group</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>STRCR</name><usage>read</usage><enumeratedValue><name>NotStarted</name><description>No regular channel conversion started</description><value>0</value></enumeratedValue><enumeratedValue><name>Started</name><description>Regular channel conversion has started</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>STRCW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear the regular channel start flag</description><value>0</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STIC</name>
              <description>Start flag of inserted channel group</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>STICR</name><usage>read</usage><enumeratedValue><name>NotStarted</name><description>No inserted channel group conversion started</description><value>0</value></enumeratedValue><enumeratedValue><name>Started</name><description>Inserted channel group conversion has started</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>STICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear the inserted channel group start flag</description><value>0</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EOIC</name>
              <description>End of inserted group conversion flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EOICR</name><usage>read</usage><enumeratedValue><name>NotComplete</name><description>Conversion is not complete</description><value>0</value></enumeratedValue><enumeratedValue><name>Complete</name><description>Conversion complete</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>EOICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear end of inserted group conversion flag</description><value>0</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EOC</name>
              <description>End of group conversion flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EOCR</name><usage>read</usage><enumeratedValue><name>NotComplete</name><description>Conversion is not complete</description><value>0</value></enumeratedValue><enumeratedValue><name>Complete</name><description>Conversion complete</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>EOCW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear end of group conversion flag</description><value>0</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WDE</name>
              <description>Analog watchdog event flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WDER</name><usage>read</usage><enumeratedValue><name>NoEvent</name><description>No analog watchdog event occurred</description><value>0</value></enumeratedValue><enumeratedValue><name>Event</name><description>Analog watchdog event occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>WDEW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear the analog watchdog event flag</description><value>0</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 0</description>
          <addressOffset>0x4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>DRES</name>
              <description>ADC resolution</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>RWDEN</name>
              <description>Regular channel analog watchdog enable</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RWDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Analog watchdog disabled on regular channels</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Analog watchdog enabled on regular channels</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IWDEN</name>
              <description>Inserted channel analog watchdog enable</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>IWDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Analog watchdog disabled on inserted channels</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Analog watchdog enabled on inserted channels</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DISNUM</name>
              <description>Number of conversions in discontinuous 
	     mode</description>
              <bitOffset>13</bitOffset>
              <bitWidth>3</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>7</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DISIC</name>
              <description>Discontinuous mode on injected
              channels</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DISIC</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Discontinuous mode on inserted channels disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Discontinuous mode on inserted channels enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DISRC</name>
              <description>Discontinuous mode on regular
              channels</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DISRC</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Discontinuous mode on regular channels disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Discontinuous mode on regular channels enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ICA</name>
              <description>Inserted channel group convert 
	     automatically</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ICA</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Automatic inserted group conversion disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Automatic inserted group conversion enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WDSC</name>
              <description>When in scan mode, analog watchdog 
	     is effective on a single channel</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WDSC</name><usage>read-write</usage><enumeratedValue><name>All</name><description>Analog watchdog enabled on all channels</description><value>0</value></enumeratedValue><enumeratedValue><name>Single</name><description>Analog watchdog enabled on a single channel</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SM</name>
              <description>Scan mode</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SM</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Scan mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Scan mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EOICIE</name>
              <description>Interrupt enable for EOIC</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EOICIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>EOIC interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>EOIC interrupt enabled. An interrupt is generated when the EOIC bit is set</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WDEIE</name>
              <description>Interrupt enable for WDE</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WDEIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>WDE interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>WDE interrupt enabled. An interrupt is generated when the WDE bit is set</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EOCIE</name>
              <description>Interrupt enable for EOC</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EOCIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>EOC interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>EOC interrupt enabled. An interrupt is generated when the EOC bit is set</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WDCHSEL</name>
              <description>Analog watchdog channel select</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>control register 1</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TSVREN</name>
              <description>Channel 16 and 17 enable of ADC</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TSVREN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Channel 16 and 17 disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Channel 16 and 17 enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SWRCST</name>
              <description>Start on regular channel</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SWRCSTR</name><usage>read</usage><enumeratedValue><name>Started</name><description>Reset state</description><value>0</value></enumeratedValue><enumeratedValue><name>NotStarted</name><description>Starting conversion of regular channels</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>SWRCSTW</name><usage>write</usage><enumeratedValue><name>Start</name><description>Start conversion of regular channels</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SWICST</name>
              <description>Start on inserted channel</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SWICSTR</name><usage>read</usage><enumeratedValue><name>Started</name><description>Reset state</description><value>0</value></enumeratedValue><enumeratedValue><name>NotStarted</name><description>Starting conversion of inserted channels</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>SWICSTW</name><usage>write</usage><enumeratedValue><name>Start</name><description>Start conversion of inserted channels</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ETERC</name>
              <description>External trigger enable for regular 
	     channel</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ETERC</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Conversion on external event disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Conversion on external event enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ETSRC</name>
              <description>External trigger select for regular
              channel</description>
              <bitOffset>17</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>ETSRC</name><usage>read-write</usage><enumeratedValue><name>Timer0Ch0</name><description>Timer 0 channel 0 event</description><value>0</value></enumeratedValue><enumeratedValue><name>Timer0Ch1</name><description>Timer 0 channel 1 event</description><value>1</value></enumeratedValue><enumeratedValue><name>Timer0Ch2</name><description>Timer 0 channel 2 event</description><value>2</value></enumeratedValue><enumeratedValue><name>Timer1Ch1</name><description>Timer 1 channel 1 event</description><value>3</value></enumeratedValue><enumeratedValue><name>Timer2Trgo</name><description>Timer 2 TRGO event</description><value>4</value></enumeratedValue><enumeratedValue><name>Timer14Ch0</name><description>Timer 14 channel 0 event</description><value>5</value></enumeratedValue><enumeratedValue><name>Exti11</name><description>EXTI line 11</description><value>6</value></enumeratedValue><enumeratedValue><name>Swrcst</name><description>SWRCST</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ETEIC</name>
              <description>External trigger enable  for
              inserted  channels</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ETEIC</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Conversion on external event disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Conversion on external event enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ETSIC</name>
              <description>External trigger select for inserted 
              channel</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>ETSIC</name><usage>read-write</usage><enumeratedValue><name>Timer0Trgo</name><description>Timer 0 TRGO event</description><value>0</value></enumeratedValue><enumeratedValue><name>Timer0Ch3</name><description>Timer 0 channel 3 event</description><value>1</value></enumeratedValue><enumeratedValue><name>Timer1Trgo</name><description>Timer 1 TRGO event</description><value>2</value></enumeratedValue><enumeratedValue><name>Timer1Ch0</name><description>Timer 1 channel 0 event</description><value>3</value></enumeratedValue><enumeratedValue><name>Timer2Ch2</name><description>Timer 2 channel 3 event</description><value>4</value></enumeratedValue><enumeratedValue><name>Timer14Trgo</name><description>Timer 14 TRGO event</description><value>5</value></enumeratedValue><enumeratedValue><name>Exti15</name><description>EXTI line 15</description><value>6</value></enumeratedValue><enumeratedValue><name>Swicst</name><description>SWICST</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DAL</name>
              <description>Data alignment</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DAL</name><usage>read-write</usage><enumeratedValue><name>Right</name><description>Right alignment</description><value>0</value></enumeratedValue><enumeratedValue><name>Left</name><description>Left alignment</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DMA</name>
              <description>DMA request enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DMA</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>DMA mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>DMA mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RSTCLB</name>
              <description>Reset calibration</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RSTCLBR</name><usage>read</usage><enumeratedValue><name>Complete</name><description>Calibration completed</description><value>0</value></enumeratedValue><enumeratedValue><name>NotComplete</name><description>Calibrating</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>RSTCLBW</name><usage>write</usage><enumeratedValue><name>Start</name><description>Enable calibration</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CLB</name>
              <description>ADC calibration</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CLBR</name><usage>read</usage><enumeratedValue><name>Complete</name><description>Calibration completed</description><value>0</value></enumeratedValue><enumeratedValue><name>NotComplete</name><description>Calibrating</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>CLBW</name><usage>write</usage><enumeratedValue><name>Start</name><description>Enable calibration</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CTN</name>
              <description>Continuous mode</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CTN</name><usage>read-write</usage><enumeratedValue><name>Single</name><description>Single conversion mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Continuous</name><description>Continuous conversion mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ADCON</name>
              <description>ADC ON</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ADCON</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Disable ADC conversion/calibration and go to power down mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Enable ADC and to start conversion</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>SAMPT0</name>
          <displayName>SAMPT0</displayName>
          <description>Sampling time register 0</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>           
            <field>
              <name>SPT16</name>
              <description>Channel 16 sample time
              selection</description>
              <bitOffset>18</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>SPT16</name><usage>read-write</usage><enumeratedValue><name>Cycles1_5</name><description>1.5 ADC clock cycles</description><value>0</value></enumeratedValue><enumeratedValue><name>Cycles7_5</name><description>7.5 ADC clock cycles</description><value>1</value></enumeratedValue><enumeratedValue><name>Cycles13_5</name><description>13.5 ADC clock cycles</description><value>2</value></enumeratedValue><enumeratedValue><name>Cycles28_5</name><description>28.5 ADC clock cycles</description><value>3</value></enumeratedValue><enumeratedValue><name>Cycles41_5</name><description>41.5 ADC clock cycles</description><value>4</value></enumeratedValue><enumeratedValue><name>Cycles55_5</name><description>55.5 ADC clock cycles</description><value>5</value></enumeratedValue><enumeratedValue><name>Cycles71_5</name><description>71.5 ADC clock cycles</description><value>6</value></enumeratedValue><enumeratedValue><name>Cycles239_5</name><description>239.5 ADC clock cycles</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SPT17</name>
              <description>Channel 17 sample time
              selection</description>
              <bitOffset>21</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT16"/>
            </field>
          </fields>
        </register>
        <register>
          <name>SAMPT1</name>
          <displayName>SAMPT1</displayName>
          <description>Sampling time register 1</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SPT0</name>
              <description>Channel 0 sample time
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>SPT0</name><usage>read-write</usage><enumeratedValue><name>Cycles1_5</name><description>1.5 ADC clock cycles</description><value>0</value></enumeratedValue><enumeratedValue><name>Cycles7_5</name><description>7.5 ADC clock cycles</description><value>1</value></enumeratedValue><enumeratedValue><name>Cycles13_5</name><description>13.5 ADC clock cycles</description><value>2</value></enumeratedValue><enumeratedValue><name>Cycles28_5</name><description>28.5 ADC clock cycles</description><value>3</value></enumeratedValue><enumeratedValue><name>Cycles41_5</name><description>41.5 ADC clock cycles</description><value>4</value></enumeratedValue><enumeratedValue><name>Cycles55_5</name><description>55.5 ADC clock cycles</description><value>5</value></enumeratedValue><enumeratedValue><name>Cycles71_5</name><description>71.5 ADC clock cycles</description><value>6</value></enumeratedValue><enumeratedValue><name>Cycles239_5</name><description>239.5 ADC clock cycles</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SPT1</name>
              <description>Channel 1 sample time
              selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
            <field>
              <name>SPT2</name>
              <description>Channel 2 sample time
              selection</description>
              <bitOffset>6</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
            <field>
              <name>SPT3</name>
              <description>Channel 3 sample time
              selection</description>
              <bitOffset>9</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
            <field>
              <name>SPT4</name>
              <description>Channel 4 sample time
              selection</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
            <field>
              <name>SPT5</name>
              <description>Channel 5 sample time
              selection</description>
              <bitOffset>15</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
            <field>
              <name>SPT6</name>
              <description>Channel 6 sample time
              selection</description>
              <bitOffset>18</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
            <field>
              <name>SPT7</name>
              <description>Channel 7 sample time
              selection</description>
              <bitOffset>21</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
            <field>
              <name>SPT8</name>
              <description>Channel 8 sample time
              selection</description>
              <bitOffset>24</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
            <field>
              <name>SPT9</name>
              <description>Channel 9 sample time
              selection</description>
              <bitOffset>27</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="SPT0"/>
            </field>
          </fields>
        </register>
        <register>
          <name>IOFF0</name>
          <displayName>IOFF0</displayName>
          <description>Inserted channel data offset register
          0</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IOFF</name>
              <description>Data offset for injected channel
              x</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>IOFF1</name>
          <displayName>IOFF1</displayName>
          <description>Inserted channel data offset register
          1</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IOFF</name>
              <description>Data offset for injected channel
              x</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>IOFF2</name>
          <displayName>IOFF2</displayName>
          <description>Inserted channel data offset register
          2</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IOFF</name>
              <description>Data offset for injected channel
              x</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>IOFF3</name>
          <displayName>IOFF3</displayName>
          <description>Inserted channel data offset register
          3</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IOFF</name>
              <description>Data offset for injected channel
              x</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>WDHT</name>
          <displayName>WDHT</displayName>
          <description>watchdog higher threshold
          register</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000FFF</resetValue>
          <fields>
            <field>
              <name>WDHT</name>
              <description>Analog watchdog high
              threshold</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>WDLT</name>
          <displayName>WDLT</displayName>
          <description>watchdog low threshold
          register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>WDLT</name>
              <description>Analog watchdog lower
              threshold</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>RSQ0</name>
          <displayName>RSQ0</displayName>
          <description>regular sequence register 0</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>RL</name>
              <description>Regular channel sequence
              length</description>
              <bitOffset>20</bitOffset>
              <bitWidth>4</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>15</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ15</name>
              <description>15th conversion in regular
              sequence</description>
              <bitOffset>15</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ14</name>
              <description>14th conversion in regular
              sequence</description>
              <bitOffset>10</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ13</name>
              <description>13th conversion in regular
              sequence</description>
              <bitOffset>5</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ12</name>
              <description>12th conversion in regular
              sequence</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>RSQ1</name>
          <displayName>RSQ1</displayName>
          <description>regular sequence register 1</description>
          <addressOffset>0x30</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>RSQ11</name>
              <description>11th conversion in regular
              sequence</description>
              <bitOffset>25</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ10</name>
              <description>10th conversion in regular
              sequence</description>
              <bitOffset>20</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ9</name>
              <description>9th conversion in regular
              sequence</description>
              <bitOffset>15</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ8</name>
              <description>8th conversion in regular
              sequence</description>
              <bitOffset>10</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ7</name>
              <description>7th conversion in regular
              sequence</description>
              <bitOffset>5</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ6</name>
              <description>6th conversion in regular
              sequence</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>RSQ2</name>
          <displayName>RSQ2</displayName>
          <description>regular sequence register 2</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>RSQ5</name>
              <description>5th conversion in regular
              sequence</description>
              <bitOffset>25</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ4</name>
              <description>4th conversion in regular
              sequence</description>
              <bitOffset>20</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ3</name>
              <description>3rd conversion in regular
              sequence</description>
              <bitOffset>15</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ2</name>
              <description>2nd conversion in regular
              sequence</description>
              <bitOffset>10</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ1</name>
              <description>1st conversion in regular
              sequence</description>
              <bitOffset>5</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RSQ0</name>
              <description>  conversion in regular
              sequence</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>ISQ</name>
          <displayName>ISQ</displayName>
          <description>injected sequence register</description>
          <addressOffset>0x38</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IL</name>
              <description>Injected sequence length</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>3</maximum></range></writeConstraint>
            </field>
            <field>
              <name>ISQ3</name>
              <description>3rd conversion in injected
              sequence</description>
              <bitOffset>15</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>ISQ2</name>
              <description>2nd conversion in injected
              sequence</description>
              <bitOffset>10</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>ISQ1</name>
              <description>1st conversion in injected
              sequence</description>
              <bitOffset>5</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
            <field>
              <name>ISQ0</name>
              <description> conversion in injected
              sequence</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>18</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>IDATA0</name>
          <displayName>IDATA0</displayName>
          <description>injected data register 0</description>
          <addressOffset>0x3C</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IDATAn</name>
              <description>Injected data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>IDATA1</name>
          <displayName>IDATA1</displayName>
          <description>injected data register 1</description>
          <addressOffset>0x40</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IDATAn</name>
              <description>Injected data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>IDATA2</name>
          <displayName>IDATA2</displayName>
          <description>injected data register 2</description>
          <addressOffset>0x44</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IDATAn</name>
              <description>Injected data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>IDATA3</name>
          <displayName>IDATA3</displayName>
          <description>injected data register 3</description>
          <addressOffset>0x48</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IDATAn</name>
              <description>Injected data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>RDATA</name>
          <displayName>RDATA</displayName>
          <description>regular data register</description>
          <addressOffset>0x4C</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>RDATA</name>
              <description>Regular data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>OVSAMPCTL</name>
          <displayName>OVSAMPCTL</displayName>
          <description>ADC oversample control register</description>
          <addressOffset>0x80</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TOVS</name>
              <description>Triggered Oversampling</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>OVSS</name>
              <description>Oversampling shift</description>
              <bitOffset>5</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>OVSR</name>
              <description>Oversampling ratio</description>
              <bitOffset>2</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>OVSEN</name>
              <description>Oversampler Enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>CMP</name>
      <description>Comparator</description>
      <groupName>Comparator</groupName>
      <baseAddress>0x4001001C</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x80</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CS</name>
          <displayName>CS</displayName>
          <description> control and status register</description>
          <addressOffset>0x00</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CMPEN</name>
              <description>Comparator  enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CMPEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Comparator disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Comparator enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMPSW</name>
              <description>Comparator  switch </description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CMPSW</name><usage>read-write</usage><enumeratedValue><name>Open</name><description>Switch open</description><value>0</value></enumeratedValue><enumeratedValue><name>Closed</name><description>Switch closed</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMPM</name>
              <description>Comparator  mode</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CMPM</name><usage>read-write</usage><enumeratedValue><name>HighSpeed</name><description>High speed / full power</description><value>0</value></enumeratedValue><enumeratedValue><name>MediumSpeed</name><description>Medium speed / medium power</description><value>1</value></enumeratedValue><enumeratedValue><name>LowSpeed</name><description>Low speed / low power</description><value>2</value></enumeratedValue><enumeratedValue><name>VeryLowSpeed</name><description>Very-low speed / ultra-low power</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMPMSEL</name>
              <description>Comparator  input selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CMPMSEL</name><usage>read-write</usage><enumeratedValue><name>OneQuarterVRef</name><description>1/4 of VRefint</description><value>0</value></enumeratedValue><enumeratedValue><name>OneHalfVRef</name><description>1/2 of VRefint</description><value>1</value></enumeratedValue><enumeratedValue><name>ThreeQuarterVRef</name><description>3/4 of VRefint</description><value>2</value></enumeratedValue><enumeratedValue><name>VRef</name><description>VRefint</description><value>3</value></enumeratedValue><enumeratedValue><name>PA4</name><description>PA4 (DAC0</description><value>4</value></enumeratedValue><enumeratedValue><name>PA5</name><description>PA5</description><value>5</value></enumeratedValue><enumeratedValue><name>PA0</name><description>PA0</description><value>6</value></enumeratedValue></enumeratedValues>
            </field>      
           <field>
              <name>CMPOSEL</name>
              <description>Comparator  output selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>3</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CMPOSEL</name><usage>read-write</usage><enumeratedValue><name>NoSelection</name><description>No selection</description><value>0</value></enumeratedValue><enumeratedValue><name>Timer0BreakInput</name><description>Timer 0 break input</description><value>1</value></enumeratedValue><enumeratedValue><name>Timer0InputCapture0</name><description>Timer 0 Input capture 0</description><value>2</value></enumeratedValue><enumeratedValue><name>Timer0OCPREClearInput</name><description>Timer 0 OCPRE_CLR input</description><value>3</value></enumeratedValue><enumeratedValue><name>Timer1InputCapture3</name><description>Timer 1 input capture 3</description><value>4</value></enumeratedValue><enumeratedValue><name>Timer1OCPREClearInput</name><description>Timer 1 OCPRE_CLR input</description><value>5</value></enumeratedValue><enumeratedValue><name>Timer2InputCapture0</name><description>Timer 2 input capture 0</description><value>6</value></enumeratedValue><enumeratedValue><name>Timer2OCPREClearInput</name><description>Timer 2 OCPRE_CLR input</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>      
            <field>
              <name>CMPPL</name>
              <description>Polarity of comparator output</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CMPPL</name><usage>read-write</usage><enumeratedValue><name>NotInverted</name><description>Output is not inverted</description><value>0</value></enumeratedValue><enumeratedValue><name>Inverted</name><description>Output is inverted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMPHST</name>
              <description>Comparator  hysteresis</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CMPHST</name><usage>read-write</usage><enumeratedValue><name>NoHysteresis</name><description>No hysteresis</description><value>0</value></enumeratedValue><enumeratedValue><name>LowHysteresis</name><description>Low hysteresis</description><value>1</value></enumeratedValue><enumeratedValue><name>MediumHysteresis</name><description>Medium hysteresis</description><value>2</value></enumeratedValue><enumeratedValue><name>HighHysteresis</name><description>High hysteresis</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMPO</name>
              <description>Comparator 0 output</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>CMPO</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Non-inverting input below inverting input</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Non-inverting input above inverting input</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMPLK</name>
              <description>Comparator 0 lock</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CMPLK</name><usage>read-write</usage><enumeratedValue><name>ReadWrite</name><description>Control bits are read-write</description><value>0</value></enumeratedValue><enumeratedValue><name>ReadOnly</name><description>Control bits are read-only</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>     
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>CRC</name>
      <description>cyclic redundancy check calculation unit</description>
      <groupName>CRC</groupName>
      <baseAddress>0x40023000</baseAddress>
         <addressBlock>
         <offset>0x0</offset>
          <size>0x400</size>
          <usage>registers</usage>
          </addressBlock>
          <registers>
             <register>
          <name>DATA</name>
          <displayName>DATA</displayName>
          <description>Data register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0xFFFFFFFF</resetValue>
          <fields>
            <field>
              <name>DATA</name>
              <description>CRC calculation result bits</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4294967295</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>FDATA</name>
          <displayName>FDATA</displayName>
          <description>Free data register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>FDATA</name>
              <description>General-purpose 8-bit data register
              bits</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>Control register</description>
          <addressOffset>0x8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>RST</name>
              <description>reset bit</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RSTW</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the DATA register to IDATA, with no effect on FDATA</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PS</name>
              <description>Size of polynomial</description>
              <bitOffset>3</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>REV_I</name>
              <description>Reverse input data</description>
              <bitOffset>5</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>REV_I</name><usage>read-write</usage><enumeratedValue><name>Normal</name><description>Bit order not affected</description><value>0</value></enumeratedValue><enumeratedValue><name>Byte</name><description>Bit reversal done by byte</description><value>1</value></enumeratedValue><enumeratedValue><name>HalfWord</name><description>Bit reversal done by half-word</description><value>2</value></enumeratedValue><enumeratedValue><name>Word</name><description>Bit reversal done by word</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>REV_O</name>
              <description>Reverse output data</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>REV_O</name><usage>read-write</usage><enumeratedValue><name>Normal</name><description>Bit order not affected</description><value>0</value></enumeratedValue><enumeratedValue><name>Reversed</name><description>Bit reversed output</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>IDATA</name>
          <displayName>IDATA</displayName>
          <description>Initialization Data Register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0xFFFFFFFF</resetValue>
          <fields>
            <field>
              <name>IDATA</name>
              <description>CRC calculation initial value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4294967295</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>POLY</name>
          <displayName>POLY</displayName>
          <description>Polynomial register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x04C11DB7</resetValue>
          <fields>
            <field>
              <name>POLY</name>
              <description>User configurable polynomial value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>DBG</name>
      <description>Debug support</description>
      <groupName>DBGMCU</groupName>
      <baseAddress>0x40015800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>ID</name>
          <displayName>ID</displayName>
          <description>MCU Device ID Code Register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x0</resetValue>
          <fields>
            <field>
              <name>ID_CODE</name>
              <description>DBG ID code register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4294967295</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>Debug Control Register 0</description>
          <addressOffset>0x4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0</resetValue>
          <fields>
            <field>
              <name>SLP_HOLD</name>
              <description>Sleep mode hold register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SLP_HOLD</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>No effect</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>In sleep mode the AHB clock is on</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DSLP_HOLD</name>
              <description>DEEPSLEEP mode hold Mode</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
             <enumeratedValues><name>DSLP_HOLD</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>No effect</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>In deep-sleep mode the AHB clock and system clock are provided by IRC8M</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STB_HOLD</name>
              <description>Standby mode hold Mode</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
             <enumeratedValues><name>STB_HOLD</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>No effect</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>In standby mode the AHB clock and system clock are provided by IRC8M</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FWDGT_HOLD</name>
              <description>FWDGT hold register</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
             <enumeratedValues><name>FWDGT_HOLD</name><usage>read-write</usage><enumeratedValue><name>Continue</name><description>Continue running the watchdog timer as usual</description><value>0</value></enumeratedValue><enumeratedValue><name>Stop</name><description>Hold the watchdog timer for debug when the core is halted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WWDGT_HOLD</name>
              <description>WWDGT hold register</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FWDGT_HOLD"/>
            </field>
            <field>
              <name>TIMER0_HOLD</name>
              <description>Timer 0 hold register</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TIMER0_HOLD</name><usage>read-write</usage><enumeratedValue><name>Continue</name><description>Continue running the timer as usual</description><value>0</value></enumeratedValue><enumeratedValue><name>Stop</name><description>Hold the timer counter for debug when the core is halted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TIMER2_HOLD</name>
              <description>Timer 2 hold register</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
           <enumeratedValues derivedFrom="TIMER0_HOLD"/>
            </field>
            <field>
              <name>I2C0_HOLD</name>
              <description>I2C0 hold register</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>I2C0_HOLD</name><usage>read-write</usage><enumeratedValue><name>Continue</name><description>Continue running I2C as usual</description><value>0</value></enumeratedValue><enumeratedValue><name>Stop</name><description>Hold the I2C timeout for debug when the core is halted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>I2C1_HOLD</name>
              <description>I2C1 hold register</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="I2C0_HOLD"/>
            </field>
            <field>
              <name>TIMER5_HOLD</name>
              <description>Timer 5 hold register</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0_HOLD"/>
            </field>
            <field>
              <name>TIMER13_HOLD</name>
              <description>Timer 13 hold register</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0_HOLD"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>Debug Control Register 1</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>RTC_HOLD</name>
              <description>RTC hold register</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RTC_HOLD</name><usage>read-write</usage><enumeratedValue><name>Continue</name><description>Continue running the RTC as usual</description><value>0</value></enumeratedValue><enumeratedValue><name>Stop</name><description>Hold the RTC for debug when the core is halted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TIMER14_HOLD</name>
              <description>Timer 14 hold register</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
             <enumeratedValues><name>TIMER14_HOLD</name><usage>read-write</usage><enumeratedValue><name>Continue</name><description>Continue running the timer as usual</description><value>0</value></enumeratedValue><enumeratedValue><name>Stop</name><description>Hold the timer counter for debug when the core is halted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TIMER15_HOLD</name>
              <description>Timer 15 hold register</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
             <enumeratedValues derivedFrom="TIMER14_HOLD"/>
            </field>
            <field>
              <name>TIMER16_HOLD</name>
              <description>Timer 16 hold register</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
             <enumeratedValues derivedFrom="TIMER14_HOLD"/>
            </field>            
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>DMA</name>
      <description>DMA controller</description>
      <groupName>DMA</groupName>
      <baseAddress>0x40020000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>DMA_Channel0</name>
        <value>9</value>
      </interrupt>
      <interrupt>
        <name>DMA_Channel1_2</name>
        <value>10</value>
      </interrupt>
      <interrupt>
        <name>DMA_Channel3_4</name>
       <value>11</value>
      </interrupt>
      <registers>
        <register>
          <name>INTF</name>
          <displayName>INTF</displayName>
          <description>DMA interrupt flag register
          (DMA_INTF)</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>GIF0</name>
              <description>Channel 0 Global interrupt
              flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>GIF0</name><usage>read-write</usage><enumeratedValue><name>NoEvent</name><description>No transfer error, half event, complete event</description><value>0</value></enumeratedValue><enumeratedValue><name>Event</name><description>A transfer error, half event or complete event has occured</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FTFIF0</name>
              <description>Channel 0 Full Transfer Finish
              flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FTFIF0</name><usage>read-write</usage><enumeratedValue><name>NotComplete</name><description>No transfer complete event</description><value>0</value></enumeratedValue><enumeratedValue><name>Complete</name><description>A transfer complete event has occured</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HTFIF0</name>
              <description>Channel 0 Half Transfer Finish
              flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HTFIF0</name><usage>read-write</usage><enumeratedValue><name>NotHalf</name><description>No half transfer event</description><value>0</value></enumeratedValue><enumeratedValue><name>Half</name><description>A half transfer event has occured</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIF0</name>
              <description>Channel 0 Error flag</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIF0</name><usage>read-write</usage><enumeratedValue><name>NoError</name><description>No transfer error</description><value>0</value></enumeratedValue><enumeratedValue><name>Error</name><description>A transfer error has occured</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>GIF1</name>
              <description>Channel 1 Global interrupt
              flag</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="GIF0"/>
            </field>
            <field>
              <name>FTFIF1</name>
              <description>Channel 1 Full Transfer Finish
              flag</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTFIF0"/>
            </field>
            <field>
              <name>HTFIF1</name>
              <description>Channel 1 Half Transfer Finish
              flag</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="HTFIF0"/>
            </field>
            <field>
              <name>ERRIF1</name>
              <description>Channel 1 Error flag</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ERRIF0"/>
            </field>
            <field>
              <name>GIF2</name>
              <description>Channel 2 Global interrupt
              flag</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="GIF0"/>
            </field>
            <field>
              <name>FTFIF2</name>
              <description>Channel 2 Full Transfer Finish
              flag</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTFIF0"/>
            </field>
            <field>
              <name>HTFIF2</name>
              <description>Channel 2 Half Transfer Finish
              flag</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="HTFIF0"/>
            </field>
            <field>
              <name>ERRIF2</name>
              <description>Channel 2 Error
              flag</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ERRIF0"/>
            </field>
            <field>
              <name>GIF3</name>
              <description>Channel 3 Global interrupt
              flag</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="GIF0"/>
            </field>
            <field>
              <name>FTFIF3</name>
              <description>Channel 3 Full Transfer Finish
              flag</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTFIF0"/>
            </field>
            <field>
              <name>HTFIF3</name>
              <description>Channel 3 Half Transfer Finish
              flag</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="HTFIF0"/>
            </field>
            <field>
              <name>ERRIF3</name>
              <description>Channel 3 Error
              flag</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ERRIF0"/>
            </field>
            <field>
              <name>GIF4</name>
              <description>Channel 4 Global interrupt
              flag</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="GIF0"/>
            </field>
            <field>
              <name>FTFIF4</name>
              <description>Channel 4 Full Transfer Finish
              flag</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTFIF0"/>
            </field>
            <field>
              <name>HTFIF4</name>
              <description>Channel 4 Half Transfer Finish
              flag</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="HTFIF0"/>
            </field>
            <field>
              <name>ERRIF4</name>
              <description>Channel 4 Error
              flag</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ERRIF0"/>
            </field>      
          </fields>
        </register>
        <register>
          <name>INTC</name>
          <displayName>INTC</displayName>
          <description>DMA interrupt flag clear register
          (DMA_INTC)</description>
          <addressOffset>0x4</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>GIFC0</name>
              <description>Channel 0 Global interrupt flag
              clear</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>GIFC0</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the GIF flag in INTF</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>GIFC1</name>
              <description>Channel 1 Global interrupt flag
              clear</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="GIFC0"/>
            </field>
            <field>
              <name>GIFC2</name>
              <description>Channel 2 Global interrupt flag
              clear</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="GIFC0"/>
            </field>
            <field>
              <name>GIFC3</name>
              <description>Channel 3 Global interrupt flag
              clear</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="GIFC0"/>
            </field>
            <field>
              <name>GIFC4</name>
              <description>Channel 4 Global interrupt flag
              clear</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="GIFC0"/>
            </field>
            <field>
              <name>FTFIFC0</name>
              <description>Channel 0 Full Transfer Finish
              clear</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FTFIFC0</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the FDFIF flag in INTF</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FTFIFC1</name>
              <description>Channel 1 Full Transfer Finish
              clear</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTFIFC0"/>
            </field>
            <field>
              <name>FTFIFC2</name>
              <description>Channel 2 Full Transfer Finish
              clear</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTFIFC0"/>
            </field>
            <field>
              <name>FTFIFC3</name>
              <description>Channel 3 Full Transfer Finish
              clear</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTFIFC0"/>
            </field>
            <field>
              <name>FTFIFC4</name>
              <description>Channel 4 Full Transfer Finish
              clear</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTFIFC0"/>
            </field>
            <field>
              <name>HTFIFC0</name>
              <description>Channel 0 Half Transfer
              clear</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HTFIFC0</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the HTFIF flag in INTF</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HTFIFC1</name>
              <description>Channel 1 Half Transfer
              clear</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="HTFIFC0"/>
            </field>
            <field>
              <name>HTFIFC2</name>
              <description>Channel 2 Half Transfer
              clear</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="HTFIFC0"/>
            </field>
            <field>
              <name>HTFIFC3</name>
              <description>Channel 3 Half Transfer
              clear</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="HTFIFC0"/>
            </field>
            <field>
              <name>HTFIFC4</name>
              <description>Channel 4 Half Transfer
              clear</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="HTFIFC0"/>
            </field>
            <field>
              <name>ERRIFC0</name>
              <description>Channel 0  Error
              clear</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIFC0</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the ERRIF flag in INTF</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIFC1</name>
              <description>Channel 1  Error
              clear</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ERRIFC0"/>
            </field>
            <field>
              <name>ERRIFC2</name>
              <description>Channel 2 Error
              clear</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ERRIFC0"/>
            </field>
            <field>
              <name>ERRIFC3</name>
              <description>Channel 3  Error
              clear</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ERRIFC0"/>
            </field>
            <field>
              <name>ERRIFC4</name>
              <description>Channel 4 Error
              clear</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ERRIFC0"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0CTL</name>
          <displayName>CH0CTL</displayName>
          <description>DMA channel configuration register
          (DMA_CH0CTL)</description>
          <addressOffset>0x8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CHEN</name>
              <description>Channel enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CHEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Channel disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Channel enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FTFIE</name>
              <description>Full Transfer Finish interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Full transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Full transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HTFIE</name>
              <description>Half Transfer Finish interrupt
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Half transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Half transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Transfer access error interrupt
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Transfer error interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Transfer error interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DIR</name>
              <description>Transfer direction</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DIR</name><usage>read-write</usage><enumeratedValue><name>FromPeripheral</name><description>Read from peripheral</description><value>0</value></enumeratedValue><enumeratedValue><name>FromMemory</name><description>Read from memory</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMEN</name>
              <description>Circular mode enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Circular buffer disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Circular buffer enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PNAGA</name>
              <description>Next address generation algorithm of peripheral</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PNAGA</name><usage>read-write</usage><enumeratedValue><name>Fixed</name><description>Fixed address mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Increment</name><description>Increment address mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MNAGA</name>
              <description>Next address generation algorithm of memory</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PNAGA"/>
            </field>
            <field>
              <name>PWIDTH</name>
              <description>Transfer data size of peripheral</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PWIDTH</name><usage>read-write</usage><enumeratedValue><name>Bits8</name><description>8-bit size</description><value>0</value></enumeratedValue><enumeratedValue><name>Bits16</name><description>16-bit size</description><value>1</value></enumeratedValue><enumeratedValue><name>Bits32</name><description>32-bit size</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MWIDTH</name>
              <description>Transfer data size of memory</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PWIDTH"/>
            </field>
            <field>
              <name>PRIO</name>
              <description>Priority Level of this channel</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PRIO</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Low priority</description><value>0</value></enumeratedValue><enumeratedValue><name>Medium</name><description>Medium priority</description><value>1</value></enumeratedValue><enumeratedValue><name>High</name><description>High priority</description><value>2</value></enumeratedValue><enumeratedValue><name>VeryHigh</name><description>Very high priority</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>M2M</name>
              <description>Memory to memory mode</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>M2M</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Memory to memory mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Memory to memory mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0CNT</name>
          <displayName>CH0CNT</displayName>
          <description>DMA channel 0 counter
          register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>Transfer counter</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0PADDR</name>
          <displayName>CH0PADDR</displayName>
          <description>DMA channel 0 peripheral base address
          register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PADDR</name>
              <description>Peripheral base address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0MADDR</name>
          <displayName>CH0MADDR</displayName>
          <description>DMA channel 0 memory base address
          register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>MADDR</name>
              <description>Memory address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH1CTL</name>
          <displayName>CH1CTL</displayName>
          <description>DMA channel configuration register
          (DMA_CH1CTL)</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CHEN</name>
              <description>Channel enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CHEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Channel disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Channel enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FTFIE</name>
              <description>Full Transfer Finish interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Full transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Full transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HTFIE</name>
              <description>Half Transfer Finish interrupt
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Half transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Half transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Transfer error interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Transfer error interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DIR</name>
              <description>Transfer direction</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DIR</name><usage>read-write</usage><enumeratedValue><name>FromPeripheral</name><description>Read from peripheral</description><value>0</value></enumeratedValue><enumeratedValue><name>FromMemory</name><description>Read from memory</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMEN</name>
              <description>Circular mode enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Circular buffer disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Circular buffer enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PNAGA</name>
              <description>Next address generation algorithm of peripheral</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PNAGA</name><usage>read-write</usage><enumeratedValue><name>Fixed</name><description>Fixed address mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Increment</name><description>Increment address mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MNAGA</name>
              <description>Next address generation algorithm of memory</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PNAGA"/>
            </field>
            <field>
              <name>PWIDTH</name>
              <description>Transfer data size of peripheral</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PWIDTH</name><usage>read-write</usage><enumeratedValue><name>Bits8</name><description>8-bit size</description><value>0</value></enumeratedValue><enumeratedValue><name>Bits16</name><description>16-bit size</description><value>1</value></enumeratedValue><enumeratedValue><name>Bits32</name><description>32-bit size</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MWIDTH</name>
              <description>Transfer data size of memory</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PWIDTH"/>
            </field>
            <field>
              <name>PRIO</name>
              <description>Priority Level of this channel</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PRIO</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Low priority</description><value>0</value></enumeratedValue><enumeratedValue><name>Medium</name><description>Medium priority</description><value>1</value></enumeratedValue><enumeratedValue><name>High</name><description>High priority</description><value>2</value></enumeratedValue><enumeratedValue><name>VeryHigh</name><description>Very high priority</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>M2M</name>
              <description>Memory to memory mode</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>M2M</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Memory to memory mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Memory to memory mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CH1CNT</name>
          <displayName>CH1CNT</displayName>
          <description>DMA channel 1 counter
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
           <fields>
            <field>
              <name>CNT</name>
              <description>Transfer counter</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>

        </register>
        <register>
          <name>CH1PADDR</name>
          <displayName>CH1PADDR</displayName>
          <description>DMA channel 1 peripheral base address
          register</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PADDR</name>
              <description>Peripheral base address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH1MADDR</name>
          <displayName>CH1MADDR</displayName>
          <description>DMA channel 1 memory base address
          register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>MADDR</name>
              <description>Memory address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH2CTL</name>
          <displayName>CH2CTL</displayName>
          <description>DMA channel configuration register
          (DMA_CH2CTL)</description>
          <addressOffset>0x30</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CHEN</name>
              <description>Channel enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CHEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Channel disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Channel enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FTFIE</name>
              <description>Full Transfer Finish interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Full transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Full transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HTFIE</name>
              <description>Half Transfer Finish interrupt
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Half transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Half transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Transfer error interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Transfer error interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DIR</name>
              <description>Transfer direction</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DIR</name><usage>read-write</usage><enumeratedValue><name>FromPeripheral</name><description>Read from peripheral</description><value>0</value></enumeratedValue><enumeratedValue><name>FromMemory</name><description>Read from memory</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMEN</name>
              <description>Circular mode enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Circular buffer disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Circular buffer enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PNAGA</name>
              <description>Next address generation algorithm of peripheral</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PNAGA</name><usage>read-write</usage><enumeratedValue><name>Fixed</name><description>Fixed address mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Increment</name><description>Increment address mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MNAGA</name>
              <description>Next address generation algorithm of memory</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PNAGA"/>
            </field>
            <field>
              <name>PWIDTH</name>
              <description>Transfer data size of peripheral</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PWIDTH</name><usage>read-write</usage><enumeratedValue><name>Bits8</name><description>8-bit size</description><value>0</value></enumeratedValue><enumeratedValue><name>Bits16</name><description>16-bit size</description><value>1</value></enumeratedValue><enumeratedValue><name>Bits32</name><description>32-bit size</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MWIDTH</name>
              <description>Transfer data size of memory</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PWIDTH"/>
            </field>
            <field>
              <name>PRIO</name>
              <description>Priority Level of this channel</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PRIO</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Low priority</description><value>0</value></enumeratedValue><enumeratedValue><name>Medium</name><description>Medium priority</description><value>1</value></enumeratedValue><enumeratedValue><name>High</name><description>High priority</description><value>2</value></enumeratedValue><enumeratedValue><name>VeryHigh</name><description>Very high priority</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>M2M</name>
              <description>Memory to memory mode</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>M2M</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Memory to memory mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Memory to memory mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CH2CNT</name>
          <displayName>CH2CNT</displayName>
          <description>DMA channel 2 counter
          register</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>Transfer counter</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>

        </register>
        <register>
          <name>CH2PADDR</name>
          <displayName>CH2PADDR</displayName>
          <description>DMA channel 2 peripheral base address
          register</description>
          <addressOffset>0x38</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PADDR</name>
              <description>Peripheral base address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH2MADDR</name>
          <displayName>CH2MADDR</displayName>
          <description>DMA channel 2 memory base address
          register</description>
          <addressOffset>0x3C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>MADDR</name>
              <description>Memory address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH3CTL</name>
          <displayName>CH3CTL</displayName>
          <description>DMA channel configuration register
          (DMA_CH3CTL)</description>
          <addressOffset>0x44</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CHEN</name>
              <description>Channel enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CHEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Channel disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Channel enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FTFIE</name>
              <description>Full Transfer Finish interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Full transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Full transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HTFIE</name>
              <description>Half Transfer Finish interrupt
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Half transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Half transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Transfer error interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Transfer error interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DIR</name>
              <description>Transfer direction</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DIR</name><usage>read-write</usage><enumeratedValue><name>FromPeripheral</name><description>Read from peripheral</description><value>0</value></enumeratedValue><enumeratedValue><name>FromMemory</name><description>Read from memory</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMEN</name>
              <description>Circular mode enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Circular buffer disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Circular buffer enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PNAGA</name>
              <description>Next address generation algorithm of peripheral</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PNAGA</name><usage>read-write</usage><enumeratedValue><name>Fixed</name><description>Fixed address mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Increment</name><description>Increment address mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MNAGA</name>
              <description>Next address generation algorithm of memory</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PNAGA"/>
            </field>
            <field>
              <name>PWIDTH</name>
              <description>Transfer data size of peripheral</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PWIDTH</name><usage>read-write</usage><enumeratedValue><name>Bits8</name><description>8-bit size</description><value>0</value></enumeratedValue><enumeratedValue><name>Bits16</name><description>16-bit size</description><value>1</value></enumeratedValue><enumeratedValue><name>Bits32</name><description>32-bit size</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MWIDTH</name>
              <description>Transfer data size of memory</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PWIDTH"/>
            </field>
            <field>
              <name>PRIO</name>
              <description>Priority Level of this channel</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PRIO</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Low priority</description><value>0</value></enumeratedValue><enumeratedValue><name>Medium</name><description>Medium priority</description><value>1</value></enumeratedValue><enumeratedValue><name>High</name><description>High priority</description><value>2</value></enumeratedValue><enumeratedValue><name>VeryHigh</name><description>Very high priority</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>M2M</name>
              <description>Memory to memory mode</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>M2M</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Memory to memory mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Memory to memory mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CH3CNT</name>
          <displayName>CH3CNT</displayName>
          <description>DMA channel 3 counter
          register</description>
          <addressOffset>0x48</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>Transfer counter</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH3PADDR</name>
          <displayName>CH3PADDR</displayName>
          <description>DMA channel 3 peripheral base address
          register</description>
          <addressOffset>0x4C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PADDR</name>
              <description>Peripheral base address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH3MADDR</name>
          <displayName>CH3MADDR</displayName>
          <description>DMA channel 3 memory base address
          register</description>
          <addressOffset>0x50</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>MADDR</name>
              <description>Memory address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH4CTL</name>
          <displayName>CH4CTL</displayName>
          <description>DMA channel configuration register
          (DMA_CH4CTL)</description>
          <addressOffset>0x58</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CHEN</name>
              <description>Channel enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CHEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Channel disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Channel enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FTFIE</name>
              <description>Full Transfer Finish interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Full transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Full transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HTFIE</name>
              <description>Half Transfer Finish interrupt
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HTFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Half transfer interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Half transfer interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Transfer error interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Transfer error interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DIR</name>
              <description>Transfer direction</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DIR</name><usage>read-write</usage><enumeratedValue><name>FromPeripheral</name><description>Read from peripheral</description><value>0</value></enumeratedValue><enumeratedValue><name>FromMemory</name><description>Read from memory</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMEN</name>
              <description>Circular mode enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Circular buffer disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Circular buffer enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PNAGA</name>
              <description>Next address generation algorithm of peripheral</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PNAGA</name><usage>read-write</usage><enumeratedValue><name>Fixed</name><description>Fixed address mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Increment</name><description>Increment address mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MNAGA</name>
              <description>Next address generation algorithm of memory</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PNAGA"/>
            </field>
            <field>
              <name>PWIDTH</name>
              <description>Transfer data size of peripheral</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PWIDTH</name><usage>read-write</usage><enumeratedValue><name>Bits8</name><description>8-bit size</description><value>0</value></enumeratedValue><enumeratedValue><name>Bits16</name><description>16-bit size</description><value>1</value></enumeratedValue><enumeratedValue><name>Bits32</name><description>32-bit size</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MWIDTH</name>
              <description>Transfer data size of memory</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PWIDTH"/>
            </field>
            <field>
              <name>PRIO</name>
              <description>Priority Level of this channel</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PRIO</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Low priority</description><value>0</value></enumeratedValue><enumeratedValue><name>Medium</name><description>Medium priority</description><value>1</value></enumeratedValue><enumeratedValue><name>High</name><description>High priority</description><value>2</value></enumeratedValue><enumeratedValue><name>VeryHigh</name><description>Very high priority</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>M2M</name>
              <description>Memory to memory mode</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>M2M</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Memory to memory mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Memory to memory mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CH4CNT</name>
          <displayName>CH4CNT</displayName>
          <description>DMA channel 4 counter
          register</description>
          <addressOffset>0x5C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
           <fields>
            <field>
              <name>CNT</name>
              <description>Transfer counter</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH4PADDR</name>
          <displayName>CH4PADDR</displayName>
          <description>DMA channel 4 peripheral base address
          register</description>
          <addressOffset>0x60</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PADDR</name>
              <description>Peripheral base address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH4MADDR</name>
          <displayName>CH4MADDR</displayName>
          <description>DMA channel 4 memory base address
          register</description>
          <addressOffset>0x64</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>MADDR</name>
              <description>Memory address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>EXTI</name>
      <description>External interrupt/event
      controller</description>
      <groupName>EXTI</groupName>
      <baseAddress>0x40010400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>LVD</name>
        <value>1</value>
      </interrupt>
      <interrupt>
        <name>EXTI0_1</name> 
        <value>5</value>
      </interrupt>
      <interrupt>
        <name>EXTI2_3</name>    
        <value>6</value>
      </interrupt>
      <interrupt>
        <name>EXTI4_15</name>
        <value>7</value>
      </interrupt>
      <registers>
        <register>
          <name>INTEN</name>
          <displayName>INTEN</displayName>
          <description>Interrupt enable register
          (EXTI_INTEN)</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0F940000</resetValue>
          <fields>
            <field>
              <name>INTEN0</name>
              <description>Enable Interrupt on line 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>INTEN0</name><usage>read-write</usage><enumeratedValue><name>Masked</name><description>Interrupt from line is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Unmasked</name><description>Interrupt from line is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>INTEN1</name>
              <description>Enable Interrupt on line 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN2</name>
              <description>Enable Interrupt on line 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN3</name>
              <description>Enable Interrupt on line 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN4</name>
              <description>Enable Interrupt on line 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN5</name>
              <description>Enable Interrupt on line 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN6</name>
              <description>Enable Interrupt on line 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN7</name>
              <description>Enable Interrupt on line 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN8</name>
              <description>Enable Interrupt on line 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN9</name>
              <description>Enable Interrupt on line 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN10</name>
              <description>Enable Interrupt on line 10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN11</name>
              <description>Enable Interrupt on line 11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN12</name>
              <description>Enable Interrupt on line 12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN13</name>
              <description>Enable Interrupt on line 13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN14</name>
              <description>Enable Interrupt on line 14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN15</name>
              <description>Enable Interrupt on line 15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN16</name>
              <description>Enable Interrupt on line 16</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN17</name>
              <description>Enable Interrupt on line 17</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN18</name>
              <description>Enable Interrupt on line 18</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN19</name>
              <description>Enable Interrupt on line 19</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN20</name>
              <description>Enable Interrupt on line 20</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN21</name>
              <description>Enable Interrupt on line 21</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN22</name>
              <description>Enable Interrupt on line 22</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN23</name>
              <description>Enable Interrupt on line 23</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN24</name>
              <description>Enable Interrupt on line 24</description>
              <bitOffset>24</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN25</name>
              <description>Enable Interrupt on line 25</description>
              <bitOffset>25</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN26</name>
              <description>Enable Interrupt on line 26</description>
              <bitOffset>26</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
            <field>
              <name>INTEN27</name>
              <description>Enable Interrupt on line 27</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="INTEN0"/>
            </field>
          </fields>
        </register>
        <register>
          <name>EVEN</name>
          <displayName>EVEN</displayName>
          <description>Event enable register (EXTI_EVEN)</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>EVEN0</name>
              <description>Enable Event on line 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EVEN0</name><usage>read-write</usage><enumeratedValue><name>Masked</name><description>Event from line is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Unmasked</name><description>Event from line is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EVEN1</name>
              <description>Enable Event on line 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN2</name>
              <description>Enable Event on line 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN3</name>
              <description>Enable Event on line 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN4</name>
              <description>Enable Event on line 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN5</name>
              <description>Enable Event on line 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN6</name>
              <description>Enable Event on line 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN7</name>
              <description>Enable Event on line 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN8</name>
              <description>Enable Event on line 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN9</name>
              <description>Enable Event on line 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN10</name>
              <description>Enable Event on line 10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN11</name>
              <description>Enable Event on line 11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN12</name>
              <description>Enable Event on line 12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN13</name>
              <description>Enable Event on line 13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN14</name>
              <description>Enable Event on line 14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN15</name>
              <description>Enable Event on line 15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN16</name>
              <description>Enable Event on line 16</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN17</name>
              <description>Enable Event on line 17</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN18</name>
              <description>Enable Event on line 18</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN19</name>
              <description>Enable Event on line 19</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN20</name>
              <description>Enable Event on line 20</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN21</name>
              <description>Enable Event on line 21</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN22</name>
              <description>Enable Event on line 22</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN23</name>
              <description>Enable Event on line 23</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN24</name>
              <description>Enable Event on line 24</description>
              <bitOffset>24</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN25</name>
              <description>Enable Event on line 25</description>
              <bitOffset>25</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN26</name>
              <description>Enable Event on line 26</description>
              <bitOffset>26</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
            <field>
              <name>EVEN27</name>
              <description>Enable Event on line 27</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="EVEN0"/>
            </field>
          </fields>
        </register>
        <register>
          <name>RTEN</name>
          <displayName>RTEN</displayName>
          <description>Rising Edge Trigger Enable register
          (EXTI_RTEN)</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>RTEN0</name>
              <description>Rising trigger event configuration of
              line 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RTEN0</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Rising edge trigger is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Rising edge trigger is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RTEN1</name>
              <description>Rising trigger event configuration of
              line 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN2</name>
              <description>Rising trigger event configuration of
              line 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN3</name>
              <description>Rising trigger event configuration of
              line 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN4</name>
              <description>Rising trigger event configuration of
              line 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN5</name>
              <description>Rising trigger event configuration of
              line 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN6</name>
              <description>Rising trigger event configuration of
              line 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN7</name>
              <description>Rising trigger event configuration of
              line 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN8</name>
              <description>Rising trigger event configuration of
              line 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN9</name>
              <description>Rising trigger event configuration of
              line 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN10</name>
              <description>Rising trigger event configuration of
              line 10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN11</name>
              <description>Rising trigger event configuration of
              line 11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN12</name>
              <description>Rising trigger event configuration of
              line 12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN13</name>
              <description>Rising trigger event configuration of
              line 13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN14</name>
              <description>Rising trigger event configuration of
              line 14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN15</name>
              <description>Rising trigger event configuration of
              line 15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN16</name>
              <description>Rising trigger event configuration of
              line 16</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN17</name>
              <description>Rising trigger event configuration of
              line 17</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN19</name>
              <description>Rising trigger event configuration of
              line 19</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
            <field>
              <name>RTEN21</name>
              <description>Rising trigger event configuration of
              line 21</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="RTEN0"/>
            </field>
          </fields>
        </register>
        <register>
          <name>FTEN</name>
          <displayName>FTEN</displayName>
          <description>Falling Egde Trigger Enable register
          (EXTI_FTEN)</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>FTEN0</name>
              <description>Falling trigger event configuration of
              line 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FTEN0</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Falling edge trigger is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Falling edge trigger is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FTEN1</name>
              <description>Falling trigger event configuration of
              line 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN2</name>
              <description>Falling trigger event configuration of
              line 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN3</name>
              <description>Falling trigger event configuration of
              line 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN4</name>
              <description>Falling trigger event configuration of
              line 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN5</name>
              <description>Falling trigger event configuration of
              line 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN6</name>
              <description>Falling trigger event configuration of
              line 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN7</name>
              <description>Falling trigger event configuration of
              line 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN8</name>
              <description>Falling trigger event configuration of
              line 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN9</name>
              <description>Falling trigger event configuration of
              line 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN10</name>
              <description>Falling trigger event configuration of
              line 10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN11</name>
              <description>Falling trigger event configuration of
              line 11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN12</name>
              <description>Falling trigger event configuration of
              line 12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN13</name>
              <description>Falling trigger event configuration of
              line 13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN14</name>
              <description>Falling trigger event configuration of
              line 14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN15</name>
              <description>Falling trigger event configuration of
              line 15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN16</name>
              <description>Falling trigger event configuration of
              line 16</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN17</name>
              <description>Falling trigger event configuration of
              line 17</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN19</name>
              <description>Falling trigger event configuration of
              line 19</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
            <field>
              <name>FTEN21</name>
              <description>Falling trigger event configuration of
              line 21</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="FTEN0"/>
            </field>
          </fields>
        </register>
        <register>
          <name>SWIEV</name>
          <displayName>SWIEV</displayName>
          <description>Software interrupt event register
          (EXTI_SWIEV)</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SWIEV0</name>
              <description>Software Interrupt on line
              0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SWIEV0W</name><usage>write</usage><enumeratedValue><name>Pend</name><description>Generates an interrupt request</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SWIEV1</name>
              <description>Software Interrupt on line
              1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV2</name>
              <description>Software Interrupt on line
              2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV3</name>
              <description>Software Interrupt on line
              3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV4</name>
              <description>Software Interrupt on line
              4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV5</name>
              <description>Software Interrupt on line
              5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV6</name>
              <description>Software Interrupt on line
              6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV7</name>
              <description>Software Interrupt on line
              7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV8</name>
              <description>Software Interrupt on line
              8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV9</name>
              <description>Software Interrupt on line
              9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV10</name>
              <description>Software Interrupt on line
              10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV11</name>
              <description>Software Interrupt on line
              11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV12</name>
              <description>Software Interrupt on line
              12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV13</name>
              <description>Software Interrupt on line
              13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV14</name>
              <description>Software Interrupt on line
              14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV15</name>
              <description>Software Interrupt on line
              15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV16</name>
              <description>Software Interrupt on line
              16</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV17</name>
              <description>Software Interrupt on line
              17</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV19</name>
              <description>Software Interrupt on line
              19</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
            <field>
              <name>SWIEV21</name>
              <description>Software Interrupt on line
              21</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="SWIEV0W"/>
            </field>
          </fields>
        </register>
        <register>
          <name>PD</name>
          <displayName>PD</displayName>
          <description>Pending register (EXTI_PD)</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PD0</name>
              <description>Pending bit 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PD0R</name><usage>read</usage><enumeratedValue><name>NotPending</name><description>No trigger request occurred</description><value>0</value></enumeratedValue><enumeratedValue><name>Pending</name><description>Selected trigger request occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>PD0W</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clears pending bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PD1</name>
              <description>Pending bit 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD2</name>
              <description>Pending bit 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD3</name>
              <description>Pending bit 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD4</name>
              <description>Pending bit 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD5</name>
              <description>Pending bit 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD6</name>
              <description>Pending bit 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD7</name>
              <description>Pending bit 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD8</name>
              <description>Pending bit 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD9</name>
              <description>Pending bit 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD10</name>
              <description>Pending bit 10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD11</name>
              <description>Pending bit 11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD12</name>
              <description>Pending bit 12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD13</name>
              <description>Pending bit 13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD14</name>
              <description>Pending bit 14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD15</name>
              <description>Pending bit 15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD16</name>
              <description>Pending bit 16</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD17</name>
              <description>Pending bit 17</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
            <field>
              <name>PD19</name>
              <description>Pending bit 19</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
           <field>
              <name>PD21</name>
              <description>Pending bit 21</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PD0R"/>
            <enumeratedValues derivedFrom="PD0W"/>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>FMC</name>
      <description>FMC</description>
      <groupName>FMC</groupName>
      <baseAddress>0x40022000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>FMC</name>
        <value>3</value>
      </interrupt>
      <registers>
        <register>
          <name>WS</name>
          <displayName>WS</displayName>
          <description>wait state register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>WSCNT</name>
              <description>wait state counter register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>WSCNT</name><usage>read-write</usage><enumeratedValue><name>WS0</name><description>0 wait states added</description><value>0</value></enumeratedValue><enumeratedValue><name>WS1</name><description>1 wait state added</description><value>1</value></enumeratedValue><enumeratedValue><name>WS2</name><description>2 wait states added</description><value>2</value></enumeratedValue></enumeratedValues>
            </field> 
            <field>
              <name>PFEN</name>
              <description>Pre-fetch enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PGW</name>
              <description>Program width to flash memory</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            </field>            
          </fields>
        </register>
        <register>
          <name>KEY</name>
          <displayName>KEY</displayName>
          <description>Unlock key register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>KEY</name>
              <description>FMC_CTL unlock register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4294967295</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>OBKEY</name>
          <displayName>OBKEY</displayName>
          <description>Option byte unlock key register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OBKEY</name>
              <description>FMC_ CTL option bytes operation unlock register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4294967295</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>Status register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ENDF</name>
              <description>End of operation flag bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>ENDFR</name><usage>read</usage><enumeratedValue><name>NoEvent</name><description>No end of operation occurred</description><value>0</value></enumeratedValue><enumeratedValue><name>Event</name><description>An end of operation event occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>ENDFW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clears flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WPERR</name>
              <description>Erase/Program protection error flag bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>WPERRR</name><usage>read</usage><enumeratedValue><name>NoError</name><description>There was no error</description><value>0</value></enumeratedValue><enumeratedValue><name>Error</name><description>There was an error erasing/programming protected pages</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>WPERRW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clears flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PGAERR</name>
              <description>Program alignment error flag bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>PGERR</name>
              <description>Program error flag bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>PGERRR</name><usage>read</usage><enumeratedValue><name>NoError</name><description>There was no error</description><value>0</value></enumeratedValue><enumeratedValue><name>Error</name><description>There was an error programming flash</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>PGERRW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clears flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BUSY</name>
              <description>The flash is busy bit</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>BUSYR</name><usage>read</usage><enumeratedValue><name>Inactive</name><description>No operation is in progress</description><value>0</value></enumeratedValue><enumeratedValue><name>Active</name><description>An operation is in progress</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>Control register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000080</resetValue>
          <fields>
             <field>
              <name>OBRLD</name>
              <description>Option byte reload bit</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OBRLD</name><usage>read-write</usage><enumeratedValue><name>Reload</name><description>Force option bytes reload and reset</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ENDIE</name>
              <description>End of operation interrupt enable bit</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ENDIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>End of operation interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>End of operation interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt enable bit</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Error interrupt generation disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Error interrupt generation enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OBWEN</name>
              <description>Option byte erase/program enable bit</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OBWENR</name><usage>read</usage><enumeratedValue><name>Disabled</name><description>Option byte write disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Option byte write enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>OBWENW</name><usage>write</usage><enumeratedValue><name>Disable</name><description>Disable option byte write</description><value>0</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LK</name>
              <description>FMC_CTL lock bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LKR</name><usage>read</usage><enumeratedValue><name>Unlocked</name><description>CTL register is unlocked</description><value>0</value></enumeratedValue><enumeratedValue><name>Locked</name><description>CTL register is locked</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>LKW</name><usage>write</usage><enumeratedValue><name>Lock</name><description>Lock CTL register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>START</name>
              <description>Send erase command to FMC bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>STARTW</name><usage>write</usage><enumeratedValue><name>Start</name><description>Trigger an erase operation</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OBER</name>
              <description>Option bytes erase command bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OBER</name><usage>read-write</usage><enumeratedValue><name>OptionByteErase</name><description>Erase option byte activated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OBPG</name>
              <description>Option bytes program command bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OBPG</name><usage>read-write</usage><enumeratedValue><name>OptionByteProgramming</name><description>Program option byte activated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MER</name>
              <description>Main flash mass erase for bank0 command bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>MER</name><usage>read-write</usage><enumeratedValue><name>MassErase</name><description>Erase activated for all user sectors</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PER</name>
              <description>Main flash page erase for bank0 command bit</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PER</name><usage>read-write</usage><enumeratedValue><name>PageErase</name><description>Erase activated for selected page</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PG</name>
              <description>Main flash program for bank0 command bit</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PG</name><usage>read-write</usage><enumeratedValue><name>Program</name><description>Flash programming activated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>ADDR</name>
          <displayName>ADDR</displayName>
          <description>Address register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ADDR</name>
              <description>Flash erase/program command address bits</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4294967295</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>OBSTAT</name>
          <displayName>OBSTAT</displayName>
          <description>Option byte control register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OBERR</name>
              <description>Option bytes read error bit</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OBERR</name><usage>read-write</usage><enumeratedValue><name>NoError</name><description>No error with option bytes</description><value>0</value></enumeratedValue><enumeratedValue><name>Error</name><description>Option bytes and complement bytes do not match</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PLEVEL</name>
              <description>Option bytes security protection level</description>
              <bitOffset>1</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PLEVEL</name><usage>read-write</usage><enumeratedValue><name>None</name><description>No protection level</description><value>0</value></enumeratedValue><enumeratedValue><name>Low</name><description>Low protection level</description><value>1</value></enumeratedValue><enumeratedValue><name>High</name><description>High protection level</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OB_USER</name>
              <description>Store USER of option bytes block after system reset</description>
              <bitOffset>8</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
            <field>
              <name>OB_DATA</name>
              <description>Store DATA[15:0] of option bytes block after system reset</description>
              <bitOffset>16</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>WP</name>
          <displayName>WP</displayName>
          <description>Erase/Program Protection register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OB_WP</name>
              <description>Store WP[15:0] of option bytes block after system reset</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>PID</name>
          <displayName>PID</displayName>
          <description>Product ID register</description>
          <addressOffset>0x100</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PID</name>
              <description>Product reserved ID code register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4294967295</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>FWDGT</name>
      <description>free watchdog timer</description>
      <groupName>FWDGT</groupName>
      <baseAddress>0x40003000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>Control register</description>
          <addressOffset>0x00</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CMD</name>
              <description>Key value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <enumeratedValues><name>CMD</name><usage>read-write</usage><enumeratedValue><name>Enable</name><description>Enable access to PR, RLR and WINR registers (0x5555)</description><value>21845</value></enumeratedValue><enumeratedValue><name>Reset</name><description>Reset the watchdog value (0xAAAA)</description><value>43690</value></enumeratedValue><enumeratedValue><name>Start</name><description>Start the watchdog (0xCCCC)</description><value>52428</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <displayName>PSC</displayName>
          <description>Prescaler register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PSC</name>
              <description>Prescaler divider</description>
              <bitOffset>0</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>PSC</name><usage>read-write</usage><enumeratedValue><name>DivideBy4</name><description>Divider /4</description><value>0</value></enumeratedValue><enumeratedValue><name>DivideBy8</name><description>Divider /8</description><value>1</value></enumeratedValue><enumeratedValue><name>DivideBy16</name><description>Divider /16</description><value>2</value></enumeratedValue><enumeratedValue><name>DivideBy32</name><description>Divider /32</description><value>3</value></enumeratedValue><enumeratedValue><name>DivideBy64</name><description>Divider /64</description><value>4</value></enumeratedValue><enumeratedValue><name>DivideBy128</name><description>Divider /128</description><value>5</value></enumeratedValue><enumeratedValue><name>DivideBy256</name><description>Divider /256</description><value>6</value></enumeratedValue><enumeratedValue><name>DivideBy256bis</name><description>Divider /256</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>RLD</name>
          <displayName>RLD</displayName>
          <description>Reload register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000FFF</resetValue>
          <fields>
            <field>
              <name>RLD</name>
              <description>Watchdog counter reload
              value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>Status register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PUD</name>
              <description>Watchdog prescaler value
              update</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PUD</name><usage>read-write</usage><enumeratedValue><name>Valid</name><description>The value read from the PSC register is valid</description><value>0</value></enumeratedValue><enumeratedValue><name>Ongoing</name><description>A write operation to to the PSC register is ongoing, so the value read is invalid</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RUD</name>
              <description>Watchdog counter reload value
              update</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RUD</name><usage>read-write</usage><enumeratedValue><name>Valid</name><description>The value read from the RLD register is valid</description><value>0</value></enumeratedValue><enumeratedValue><name>Ongoing</name><description>A write operation to to the RLD register is ongoing, so the value read is invalid</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WUD</name>
              <description>Watchdog counter window value
              update</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WUD</name><usage>read-write</usage><enumeratedValue><name>Valid</name><description>The value read from the WND register is valid</description><value>0</value></enumeratedValue><enumeratedValue><name>Ongoing</name><description>A write operation to to the WND register is ongoing, so the value read is invalid</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>WND</name>
          <displayName>WND</displayName>
          <description>Window register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000FFF</resetValue>
          <fields>
            <field>
              <name>WND</name>
              <description>Watchdog counter window
              value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>GPIOA</name>
      <description>General-purpose I/Os</description>
      <groupName>GPIO</groupName>
      <baseAddress>0x48000000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>GPIO port control register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x28000000</resetValue>
          <fields>
            <field>
              <name>CTL15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CTL0</name><usage>read-write</usage><enumeratedValue><name>Input</name><description>Input mode (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>Output</name><description>General purpose output mode</description><value>1</value></enumeratedValue><enumeratedValue><name>Alternate</name><description>Alternate function mode</description><value>2</value></enumeratedValue><enumeratedValue><name>Analog</name><description>Analog mode</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OMODE</name>
          <displayName>OMODE</displayName>
          <description>GPIO port output type register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OM15</name>
              <description>Port x configuration bit
              15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM14</name>
              <description>Port x configuration bit
              14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM13</name>
              <description>Port x configuration bit
              13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM12</name>
              <description>Port x configuration bit
              12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM11</name>
              <description>Port x configuration bit
              11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM10</name>
              <description>Port x configuration bit
              10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM9</name>
              <description>Port x configuration bit 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM8</name>
              <description>Port x configuration bit 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM7</name>
              <description>Port x configuration bit 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM6</name>
              <description>Port x configuration bit 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM5</name>
              <description>Port x configuration bit 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM4</name>
              <description>Port x configuration bit 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM3</name>
              <description>Port x configuration bit 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM2</name>
              <description>Port x configuration bit 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM1</name>
              <description>Port x configuration bit 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM0</name>
              <description>Port x configuration bit 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OM0</name><usage>read-write</usage><enumeratedValue><name>PushPull</name><description>Output push-pull (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>OpenDrain</name><description>Output open-drain</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OSPD</name>
          <displayName>OSPD</displayName>
          <description>GPIO port output speed
          register </description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0C000000</resetValue>
          <fields>
            <field>
              <name>OSPD15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>OSPD0</name><usage>read-write</usage><enumeratedValue><name>Speed2M</name><description>Max output speed 2 MHz</description><value>0</value></enumeratedValue><enumeratedValue><name>Speed10M</name><description>Max output speed 10 MHz</description><value>1</value></enumeratedValue><enumeratedValue><name>Speed50M</name><description>Max output speed 50 MHz</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>PUD</name>
          <displayName>PUD</displayName>
          <description>GPIO port pull-up/pull-down
          register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x24000000</resetValue>
          <fields>
            <field>
              <name>PUD15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PUD0</name><usage>read-write</usage><enumeratedValue><name>Floating</name><description>No pull-up, pull-down (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>PullUp</name><description>Pull-up</description><value>1</value></enumeratedValue><enumeratedValue><name>PullDown</name><description>Pull-down</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>ISTAT</name>
          <displayName>ISTAT</displayName>
          <description>GPIO port input data register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ISTAT15</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT14</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT13</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT12</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT11</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT10</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT9</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT8</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT7</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT6</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT5</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT4</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT3</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT2</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT1</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT0</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ISTAT0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Input is logic low</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Input is logic high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OCTL</name>
          <displayName>OCTL</displayName>
          <description>GPIO port output data register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OCTL15</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL14</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL13</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL12</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL11</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL10</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL9</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL8</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL7</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL6</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL5</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL4</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL3</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL2</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL1</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL0</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OCTL0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Set output to logic low</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Set output to logic high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BOP</name>
          <displayName>BOP</displayName>
          <description>GPIO port bit set/reset
          register</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CR15</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR14</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR13</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>29</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR12</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR11</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR10</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR9</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>25</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR8</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR7</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR6</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR5</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR4</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR3</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR2</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR1</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR0</name>
              <description>Port x reset bit y (y=
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CR0W</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BOP15</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP14</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP13</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP12</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP11</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP10</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP9</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP8</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP7</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP6</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP5</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP4</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP3</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP2</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP1</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP0</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BOP0W</name><usage>write</usage><enumeratedValue><name>Set</name><description>Sets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>LOCK</name>
          <displayName>LOCK</displayName>
          <description>GPIO port configuration lock
          register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>LKK</name>
              <description>Port x lock bit y
              </description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LKK</name><usage>read-write</usage><enumeratedValue><name>NotActive</name><description>Port configuration lock key not active</description><value>0</value></enumeratedValue><enumeratedValue><name>Active</name><description>Port configuration lock key active</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LK15</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK14</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK13</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK12</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK11</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK10</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LK10</name><usage>read-write</usage><enumeratedValue><name>Unlocked</name><description>Port configuration not locked</description><value>0</value></enumeratedValue><enumeratedValue><name>Locked</name><description>Port configuration locked</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LK9</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK8</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK7</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK6</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK5</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK4</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK3</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK2</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK1</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK0</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LK0</name><usage>read-write</usage><enumeratedValue><name>Unlocked</name><description>Port configuration not locked</description><value>0</value></enumeratedValue><enumeratedValue><name>Locked</name><description>Port configuration locked</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>AFSEL0</name>
          <displayName>AFSEL0</displayName>
          <description>GPIO alternate function low
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SEL7</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL6</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL5</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL4</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL3</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL2</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL1</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL0</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>SEL0</name><usage>read-write</usage><enumeratedValue><name>AF0</name><description>AF0</description><value>0</value></enumeratedValue><enumeratedValue><name>AF1</name><description>AF1</description><value>1</value></enumeratedValue><enumeratedValue><name>AF2</name><description>AF2</description><value>2</value></enumeratedValue><enumeratedValue><name>AF3</name><description>AF3</description><value>3</value></enumeratedValue><enumeratedValue><name>AF4</name><description>AF4</description><value>4</value></enumeratedValue><enumeratedValue><name>AF5</name><description>AF5</description><value>5</value></enumeratedValue><enumeratedValue><name>AF6</name><description>AF6</description><value>6</value></enumeratedValue><enumeratedValue><name>AF7</name><description>AF7</description><value>7</value></enumeratedValue><enumeratedValue><name>AF9</name><description>AF9</description><value>9</value></enumeratedValue><enumeratedValue><name>AF11</name><description>AF11</description><value>11</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>AFSEL1</name>
          <displayName>AFSEL1</displayName>
          <description>GPIO alternate function 
          register 1</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SEL15</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL14</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL13</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL12</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL11</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL10</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL9</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL8</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>SEL8</name><usage>read-write</usage><enumeratedValue><name>AF0</name><description>AF0</description><value>0</value></enumeratedValue><enumeratedValue><name>AF1</name><description>AF1</description><value>1</value></enumeratedValue><enumeratedValue><name>AF2</name><description>AF2</description><value>2</value></enumeratedValue><enumeratedValue><name>AF3</name><description>AF3</description><value>3</value></enumeratedValue><enumeratedValue><name>AF4</name><description>AF4</description><value>4</value></enumeratedValue><enumeratedValue><name>AF5</name><description>AF5</description><value>5</value></enumeratedValue><enumeratedValue><name>AF6</name><description>AF6</description><value>6</value></enumeratedValue><enumeratedValue><name>AF7</name><description>AF7</description><value>7</value></enumeratedValue><enumeratedValue><name>AF9</name><description>AF9</description><value>9</value></enumeratedValue><enumeratedValue><name>AF11</name><description>AF11</description><value>11</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BC</name>
          <displayName>BC</displayName>
          <description>Port bit reset register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CR0</name>
              <description>Port cleat bit</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CR0W</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CR1</name>
              <description>Port cleat bit</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR2</name>
              <description>Port cleat bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR3</name>
              <description>Port cleat bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR4</name>
              <description>Port cleat bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR5</name>
              <description>Port cleat bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR6</name>
              <description>Port cleat bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR7</name>
              <description>Port cleat bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR8</name>
              <description>Port cleat bit</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR9</name>
              <description>Port cleat bit</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR10</name>
              <description>Port cleat bit</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR11</name>
              <description>Port cleat bit</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR12</name>
              <description>Port cleat bit</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR13</name>
              <description>Port cleat bit</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR14</name>
              <description>Port cleat bit</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR15</name>
              <description>Port cleat bit</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
          </fields>
        </register>
        <register>
          <name>TG</name>
          <displayName>TG</displayName>
          <description>Port bit toggle register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TG0</name>
              <description>Port toggle bit </description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TG0W</name><usage>write</usage><enumeratedValue><name>Toggle</name><description>Toggles the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TG1</name>
              <description>Port toggle bit</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG2</name>
              <description>Port toggle bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG3</name>
              <description>Port toggle bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG4</name>
              <description>Port toggle bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG5</name>
              <description>Port toggle bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG6</name>
              <description>Port toggle bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG7</name>
              <description>Port toggle bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG8</name>
              <description>Port toggle bit</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG9</name>
              <description>Port toggle bit</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG10</name>
              <description>Port toggle bit</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG11</name>
              <description>Port toggle bit</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG12</name>
              <description>Port toggle bit</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG13</name>
              <description>Port toggle bit</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG14</name>
              <description>Port toggle bit</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG15</name>
              <description>Port toggle bit</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>GPIOB</name>
      <description>General-purpose I/Os</description>
      <groupName>GPIO</groupName>
      <baseAddress>0x48000400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>GPIO port control register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CTL15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CTL0</name><usage>read-write</usage><enumeratedValue><name>Input</name><description>Input mode (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>Output</name><description>General purpose output mode</description><value>1</value></enumeratedValue><enumeratedValue><name>Alternate</name><description>Alternate function mode</description><value>2</value></enumeratedValue><enumeratedValue><name>Analog</name><description>Analog mode</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OMODE</name>
          <displayName>OMODE</displayName>
          <description>GPIO port output type register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OM15</name>
              <description>Port x configuration bit
              15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM14</name>
              <description>Port x configuration bit
              14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM13</name>
              <description>Port x configuration bit
              13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM12</name>
              <description>Port x configuration bit
              12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM11</name>
              <description>Port x configuration bit
              11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM10</name>
              <description>Port x configuration bit
              10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM9</name>
              <description>Port x configuration bit 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM8</name>
              <description>Port x configuration bit 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM7</name>
              <description>Port x configuration bit 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM6</name>
              <description>Port x configuration bit 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM5</name>
              <description>Port x configuration bit 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM4</name>
              <description>Port x configuration bit 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM3</name>
              <description>Port x configuration bit 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM2</name>
              <description>Port x configuration bit 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM1</name>
              <description>Port x configuration bit 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM0</name>
              <description>Port x configuration bit 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OM0</name><usage>read-write</usage><enumeratedValue><name>PushPull</name><description>Output push-pull (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>OpenDrain</name><description>Output open-drain</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OSPD</name>
          <displayName>OSPD</displayName>
          <description>GPIO port output speed
          register </description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OSPD15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>OSPD0</name><usage>read-write</usage><enumeratedValue><name>Speed2M</name><description>Max output speed 2 MHz</description><value>0</value></enumeratedValue><enumeratedValue><name>Speed10M</name><description>Max output speed 10 MHz</description><value>1</value></enumeratedValue><enumeratedValue><name>Speed50M</name><description>Max output speed 50 MHz</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>PUD</name>
          <displayName>PUD</displayName>
          <description>GPIO port pull-up/pull-down
          register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PUD15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PUD0</name><usage>read-write</usage><enumeratedValue><name>Floating</name><description>No pull-up, pull-down (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>PullUp</name><description>Pull-up</description><value>1</value></enumeratedValue><enumeratedValue><name>PullDown</name><description>Pull-down</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>ISTAT</name>
          <displayName>ISTAT</displayName>
          <description>GPIO port input data register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ISTAT15</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT14</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT13</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT12</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT11</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT10</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT9</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT8</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT7</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT6</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT5</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT4</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT3</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT2</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT1</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT0</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ISTAT0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Input is logic low</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Input is logic high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OCTL</name>
          <displayName>OCTL</displayName>
          <description>GPIO port output data register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OCTL15</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL14</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL13</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL12</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL11</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL10</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL9</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL8</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL7</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL6</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL5</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL4</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL3</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL2</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL1</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL0</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OCTL0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Set output to logic low</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Set output to logic high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BOP</name>
          <displayName>BOP</displayName>
          <description>GPIO port bit set/reset
          register</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CR15</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR14</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR13</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>29</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR12</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR11</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR10</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR9</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>25</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR8</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR7</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR6</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR5</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR4</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR3</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR2</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR1</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR0</name>
              <description>Port x reset bit y (y=
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CR0W</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BOP15</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP14</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP13</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP12</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP11</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP10</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP9</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP8</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP7</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP6</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP5</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP4</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP3</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP2</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP1</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP0</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BOP0W</name><usage>write</usage><enumeratedValue><name>Set</name><description>Sets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>LOCK</name>
          <displayName>LOCK</displayName>
          <description>GPIO port configuration lock
          register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>LKK</name>
              <description>Port x lock bit y
              </description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LKK</name><usage>read-write</usage><enumeratedValue><name>NotActive</name><description>Port configuration lock key not active</description><value>0</value></enumeratedValue><enumeratedValue><name>Active</name><description>Port configuration lock key active</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LK15</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK14</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK13</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK12</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK11</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK10"/>
            </field>
            <field>
              <name>LK10</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LK10</name><usage>read-write</usage><enumeratedValue><name>Unlocked</name><description>Port configuration not locked</description><value>0</value></enumeratedValue><enumeratedValue><name>Locked</name><description>Port configuration locked</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LK9</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK8</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK7</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK6</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK5</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK4</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK3</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK2</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK1</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="LK0"/>
            </field>
            <field>
              <name>LK0</name>
              <description>Port x lock bit y (y=
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LK0</name><usage>read-write</usage><enumeratedValue><name>Unlocked</name><description>Port configuration not locked</description><value>0</value></enumeratedValue><enumeratedValue><name>Locked</name><description>Port configuration locked</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>AFSEL0</name>
          <displayName>AFSEL0</displayName>
          <description>GPIO alternate function low
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SEL7</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL6</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL5</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL4</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL3</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL2</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL1</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL0</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>SEL0</name><usage>read-write</usage><enumeratedValue><name>AF0</name><description>AF0</description><value>0</value></enumeratedValue><enumeratedValue><name>AF1</name><description>AF1</description><value>1</value></enumeratedValue><enumeratedValue><name>AF2</name><description>AF2</description><value>2</value></enumeratedValue><enumeratedValue><name>AF3</name><description>AF3</description><value>3</value></enumeratedValue><enumeratedValue><name>AF4</name><description>AF4</description><value>4</value></enumeratedValue><enumeratedValue><name>AF5</name><description>AF5</description><value>5</value></enumeratedValue><enumeratedValue><name>AF6</name><description>AF6</description><value>6</value></enumeratedValue><enumeratedValue><name>AF7</name><description>AF7</description><value>7</value></enumeratedValue><enumeratedValue><name>AF9</name><description>AF9</description><value>9</value></enumeratedValue><enumeratedValue><name>AF11</name><description>AF11</description><value>11</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>AFSEL1</name>
          <displayName>AFSEL1</displayName>
          <description>GPIO alternate function 
          register 1</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SEL15</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL14</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL13</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL12</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL11</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL10</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL9</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL8</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>SEL8</name><usage>read-write</usage><enumeratedValue><name>AF0</name><description>AF0</description><value>0</value></enumeratedValue><enumeratedValue><name>AF1</name><description>AF1</description><value>1</value></enumeratedValue><enumeratedValue><name>AF2</name><description>AF2</description><value>2</value></enumeratedValue><enumeratedValue><name>AF3</name><description>AF3</description><value>3</value></enumeratedValue><enumeratedValue><name>AF4</name><description>AF4</description><value>4</value></enumeratedValue><enumeratedValue><name>AF5</name><description>AF5</description><value>5</value></enumeratedValue><enumeratedValue><name>AF6</name><description>AF6</description><value>6</value></enumeratedValue><enumeratedValue><name>AF7</name><description>AF7</description><value>7</value></enumeratedValue><enumeratedValue><name>AF9</name><description>AF9</description><value>9</value></enumeratedValue><enumeratedValue><name>AF11</name><description>AF11</description><value>11</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BC</name>
          <displayName>BC</displayName>
          <description>Port bit reset register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CR0</name>
              <description>Port cleat bit</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CR0W</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CR1</name>
              <description>Port cleat bit</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR2</name>
              <description>Port cleat bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR3</name>
              <description>Port cleat bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR4</name>
              <description>Port cleat bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR5</name>
              <description>Port cleat bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR6</name>
              <description>Port cleat bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR7</name>
              <description>Port cleat bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR8</name>
              <description>Port cleat bit</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR9</name>
              <description>Port cleat bit</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR10</name>
              <description>Port cleat bit</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR11</name>
              <description>Port cleat bit</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR12</name>
              <description>Port cleat bit</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR13</name>
              <description>Port cleat bit</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR14</name>
              <description>Port cleat bit</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR15</name>
              <description>Port cleat bit</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
          </fields>
        </register>
        <register>
          <name>TG</name>
          <displayName>TG</displayName>
          <description>Port bit toggle register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TG0</name>
              <description>Port toggle bit </description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TG0W</name><usage>write</usage><enumeratedValue><name>Toggle</name><description>Toggles the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TG1</name>
              <description>Port toggle bit</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG2</name>
              <description>Port toggle bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG3</name>
              <description>Port toggle bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG4</name>
              <description>Port toggle bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG5</name>
              <description>Port toggle bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG6</name>
              <description>Port toggle bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG7</name>
              <description>Port toggle bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG8</name>
              <description>Port toggle bit</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG9</name>
              <description>Port toggle bit</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG10</name>
              <description>Port toggle bit</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG11</name>
              <description>Port toggle bit</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG12</name>
              <description>Port toggle bit</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG13</name>
              <description>Port toggle bit</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG14</name>
              <description>Port toggle bit</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG15</name>
              <description>Port toggle bit</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>GPIOC</name>
      <description>General-purpose I/Os</description>
      <groupName>GPIO</groupName>
      <baseAddress>0x48000800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>GPIO port control register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CTL15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CTL0</name><usage>read-write</usage><enumeratedValue><name>Input</name><description>Input mode (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>Output</name><description>General purpose output mode</description><value>1</value></enumeratedValue><enumeratedValue><name>Alternate</name><description>Alternate function mode</description><value>2</value></enumeratedValue><enumeratedValue><name>Analog</name><description>Analog mode</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OMODE</name>
          <displayName>OMODE</displayName>
          <description>GPIO port output type register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OM15</name>
              <description>Port x configuration bit
              15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM14</name>
              <description>Port x configuration bit
              14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM13</name>
              <description>Port x configuration bit
              13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM12</name>
              <description>Port x configuration bit
              12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM11</name>
              <description>Port x configuration bit
              11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM10</name>
              <description>Port x configuration bit
              10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM9</name>
              <description>Port x configuration bit 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM8</name>
              <description>Port x configuration bit 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM7</name>
              <description>Port x configuration bit 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM6</name>
              <description>Port x configuration bit 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM5</name>
              <description>Port x configuration bit 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM4</name>
              <description>Port x configuration bit 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM3</name>
              <description>Port x configuration bit 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM2</name>
              <description>Port x configuration bit 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM1</name>
              <description>Port x configuration bit 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM0</name>
              <description>Port x configuration bit 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OM0</name><usage>read-write</usage><enumeratedValue><name>PushPull</name><description>Output push-pull (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>OpenDrain</name><description>Output open-drain</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OSPD</name>
          <displayName>OSPD</displayName>
          <description>GPIO port output speed
          register </description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OSPD15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>OSPD0</name><usage>read-write</usage><enumeratedValue><name>Speed2M</name><description>Max output speed 2 MHz</description><value>0</value></enumeratedValue><enumeratedValue><name>Speed10M</name><description>Max output speed 10 MHz</description><value>1</value></enumeratedValue><enumeratedValue><name>Speed50M</name><description>Max output speed 50 MHz</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>PUD</name>
          <displayName>PUD</displayName>
          <description>GPIO port pull-up/pull-down
          register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PUD15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PUD0</name><usage>read-write</usage><enumeratedValue><name>Floating</name><description>No pull-up, pull-down (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>PullUp</name><description>Pull-up</description><value>1</value></enumeratedValue><enumeratedValue><name>PullDown</name><description>Pull-down</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>ISTAT</name>
          <displayName>ISTAT</displayName>
          <description>GPIO port input data register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ISTAT15</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT14</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT13</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT12</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT11</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT10</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT9</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT8</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT7</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT6</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT5</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT4</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT3</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT2</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT1</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT0</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ISTAT0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Input is logic low</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Input is logic high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OCTL</name>
          <displayName>OCTL</displayName>
          <description>GPIO port output data register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OCTL15</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL14</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL13</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL12</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL11</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL10</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL9</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL8</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL7</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL6</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL5</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL4</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL3</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL2</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL1</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL0</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OCTL0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Set output to logic low</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Set output to logic high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BOP</name>
          <displayName>BOP</displayName>
          <description>GPIO port bit set/reset
          register</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CR15</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR14</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR13</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>29</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR12</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR11</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR10</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR9</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>25</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR8</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR7</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR6</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR5</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR4</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR3</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR2</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR1</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR0</name>
              <description>Port x reset bit y (y=
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CR0W</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BOP15</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP14</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP13</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP12</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP11</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP10</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP9</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP8</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP7</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP6</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP5</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP4</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP3</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP2</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP1</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP0</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BOP0W</name><usage>write</usage><enumeratedValue><name>Set</name><description>Sets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>AFSEL0</name>
          <displayName>AFSEL0</displayName>
          <description>GPIO alternate function low
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SEL7</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL6</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL5</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL4</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL3</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL2</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL1</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL0"/>
            </field>
            <field>
              <name>SEL0</name>
              <description>Alternate function selection for port x
              bit y (y = 0..7)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>SEL0</name><usage>read-write</usage><enumeratedValue><name>AF0</name><description>AF0</description><value>0</value></enumeratedValue><enumeratedValue><name>AF1</name><description>AF1</description><value>1</value></enumeratedValue><enumeratedValue><name>AF2</name><description>AF2</description><value>2</value></enumeratedValue><enumeratedValue><name>AF3</name><description>AF3</description><value>3</value></enumeratedValue><enumeratedValue><name>AF4</name><description>AF4</description><value>4</value></enumeratedValue><enumeratedValue><name>AF5</name><description>AF5</description><value>5</value></enumeratedValue><enumeratedValue><name>AF6</name><description>AF6</description><value>6</value></enumeratedValue><enumeratedValue><name>AF7</name><description>AF7</description><value>7</value></enumeratedValue><enumeratedValue><name>AF9</name><description>AF9</description><value>9</value></enumeratedValue><enumeratedValue><name>AF11</name><description>AF11</description><value>11</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>AFSEL1</name>
          <displayName>AFSEL1</displayName>
          <description>GPIO alternate function 
          register 1</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SEL15</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL14</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL13</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL12</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL11</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL10</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL9</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="SEL8"/>
            </field>
            <field>
              <name>SEL8</name>
              <description>Alternate function selection for port x
              bit y (y = 8..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>SEL8</name><usage>read-write</usage><enumeratedValue><name>AF0</name><description>AF0</description><value>0</value></enumeratedValue><enumeratedValue><name>AF1</name><description>AF1</description><value>1</value></enumeratedValue><enumeratedValue><name>AF2</name><description>AF2</description><value>2</value></enumeratedValue><enumeratedValue><name>AF3</name><description>AF3</description><value>3</value></enumeratedValue><enumeratedValue><name>AF4</name><description>AF4</description><value>4</value></enumeratedValue><enumeratedValue><name>AF5</name><description>AF5</description><value>5</value></enumeratedValue><enumeratedValue><name>AF6</name><description>AF6</description><value>6</value></enumeratedValue><enumeratedValue><name>AF7</name><description>AF7</description><value>7</value></enumeratedValue><enumeratedValue><name>AF9</name><description>AF9</description><value>9</value></enumeratedValue><enumeratedValue><name>AF11</name><description>AF11</description><value>11</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BC</name>
          <displayName>BC</displayName>
          <description>Port bit reset register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CR0</name>
              <description>Port cleat bit</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CR0W</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CR1</name>
              <description>Port cleat bit</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR2</name>
              <description>Port cleat bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR3</name>
              <description>Port cleat bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR4</name>
              <description>Port cleat bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR5</name>
              <description>Port cleat bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR6</name>
              <description>Port cleat bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR7</name>
              <description>Port cleat bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR8</name>
              <description>Port cleat bit</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR9</name>
              <description>Port cleat bit</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR10</name>
              <description>Port cleat bit</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR11</name>
              <description>Port cleat bit</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR12</name>
              <description>Port cleat bit</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR13</name>
              <description>Port cleat bit</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR14</name>
              <description>Port cleat bit</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR15</name>
              <description>Port cleat bit</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
          </fields>
        </register>
        <register>
          <name>TG</name>
          <displayName>TG</displayName>
          <description>Port bit toggle register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TG0</name>
              <description>Port toggle bit </description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TG0W</name><usage>write</usage><enumeratedValue><name>Toggle</name><description>Toggles the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TG1</name>
              <description>Port toggle bit</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG2</name>
              <description>Port toggle bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG3</name>
              <description>Port toggle bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG4</name>
              <description>Port toggle bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG5</name>
              <description>Port toggle bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG6</name>
              <description>Port toggle bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG7</name>
              <description>Port toggle bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG8</name>
              <description>Port toggle bit</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG9</name>
              <description>Port toggle bit</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG10</name>
              <description>Port toggle bit</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG11</name>
              <description>Port toggle bit</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG12</name>
              <description>Port toggle bit</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG13</name>
              <description>Port toggle bit</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG14</name>
              <description>Port toggle bit</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG15</name>
              <description>Port toggle bit</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>GPIOF</name>
      <description>General-purpose I/Os</description>
      <groupName>GPIO</groupName>
      <baseAddress>0x48001400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>GPIOF port control register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CTL15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CTL0"/>
            </field>
            <field>
              <name>CTL0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CTL0</name><usage>read-write</usage><enumeratedValue><name>Input</name><description>Input mode (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>Output</name><description>General purpose output mode</description><value>1</value></enumeratedValue><enumeratedValue><name>Alternate</name><description>Alternate function mode</description><value>2</value></enumeratedValue><enumeratedValue><name>Analog</name><description>Analog mode</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OMODE</name>
          <displayName>OMODE</displayName>
          <description>GPIO port output type register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OM15</name>
              <description>Port x configuration bit
              15</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM14</name>
              <description>Port x configuration bit
              14</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM13</name>
              <description>Port x configuration bit
              13</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM12</name>
              <description>Port x configuration bit
              12</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM11</name>
              <description>Port x configuration bit
              11</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM10</name>
              <description>Port x configuration bit
              10</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM9</name>
              <description>Port x configuration bit 9</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM8</name>
              <description>Port x configuration bit 8</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM7</name>
              <description>Port x configuration bit 7</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM6</name>
              <description>Port x configuration bit 6</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM5</name>
              <description>Port x configuration bit 5</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM4</name>
              <description>Port x configuration bit 4</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM3</name>
              <description>Port x configuration bit 3</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM2</name>
              <description>Port x configuration bit 2</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM1</name>
              <description>Port x configuration bit 1</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OM0"/>
            </field>
            <field>
              <name>OM0</name>
              <description>Port x configuration bit 0</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OM0</name><usage>read-write</usage><enumeratedValue><name>PushPull</name><description>Output push-pull (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>OpenDrain</name><description>Output open-drain</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OSPD</name>
          <displayName>OSPD</displayName>
          <description>GPIO port output speed
          register </description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OSPD15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="OSPD0"/>
            </field>
            <field>
              <name>OSPD0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>OSPD0</name><usage>read-write</usage><enumeratedValue><name>Speed2M</name><description>Max output speed 2 MHz</description><value>0</value></enumeratedValue><enumeratedValue><name>Speed10M</name><description>Max output speed 10 MHz</description><value>1</value></enumeratedValue><enumeratedValue><name>Speed50M</name><description>Max output speed 50 MHz</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>PUD</name>
          <displayName>PUD</displayName>
          <description>GPIO port pull-up/pull-down
          register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PUD15</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD14</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD13</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD12</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD11</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD10</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD9</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD8</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD7</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD6</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD5</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD4</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD3</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD2</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD1</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="PUD0"/>
            </field>
            <field>
              <name>PUD0</name>
              <description>Port x configuration bits (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PUD0</name><usage>read-write</usage><enumeratedValue><name>Floating</name><description>No pull-up, pull-down (reset state)</description><value>0</value></enumeratedValue><enumeratedValue><name>PullUp</name><description>Pull-up</description><value>1</value></enumeratedValue><enumeratedValue><name>PullDown</name><description>Pull-down</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>ISTAT</name>
          <displayName>ISTAT</displayName>
          <description>GPIO port input data register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ISTAT15</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT14</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT13</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT12</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT11</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT10</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT9</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT8</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT7</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT6</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT5</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT4</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT3</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT2</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT1</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISTAT0"/>
            </field>
            <field>
              <name>ISTAT0</name>
              <description>Port input data (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ISTAT0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Input is logic low</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Input is logic high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>OCTL</name>
          <displayName>OCTL</displayName>
          <description>GPIO port output data register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>OCTL15</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL14</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL13</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL12</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL11</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL10</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL9</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL8</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL7</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL6</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL5</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL4</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL3</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL2</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL1</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="OCTL0"/>
            </field>
            <field>
              <name>OCTL0</name>
              <description>Port output data (y =
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OCTL0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Set output to logic low</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>Set output to logic high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BOP</name>
          <displayName>BOP</displayName>
          <description>GPIO port bit set/reset
          register</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CR15</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR14</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>30</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR13</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>29</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR12</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>28</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR11</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR10</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>26</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR9</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>25</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR8</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>24</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR7</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR6</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR5</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR4</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR3</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR2</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR1</name>
              <description>Port x reset bit y (y =
              0..15)</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR0</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CR0W</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BOP15</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP14</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP13</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP12</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP11</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP10</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP9</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP8</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP7</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP6</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP5</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP4</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP3</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP2</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP1</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="BOP0W"/>
            </field>
            <field>
              <name>BOP0</name>
              <description>Port x set bit y (y=
              0..15)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BOP0W</name><usage>write</usage><enumeratedValue><name>Set</name><description>Sets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BC</name>
          <displayName>BC</displayName>
          <description>Port bit reset register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CR0</name>
              <description>Port x Reset bit y</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CR0W</name><usage>write</usage><enumeratedValue><name>Reset</name><description>Resets the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CR1</name>
              <description>Port x Reset bit y</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR2</name>
              <description>Port x Reset bit y</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR3</name>
              <description>Port x Reset bit y</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR4</name>
              <description>Port x Reset bit y</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR5</name>
              <description>Port x Reset bit y</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR6</name>
              <description>Port x Reset bit y</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR7</name>
              <description>Port x Reset bit y</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR8</name>
              <description>Port x Reset bit y</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR9</name>
              <description>Port x Reset bit y</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR10</name>
              <description>Port x Reset bit y</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR11</name>
              <description>Port x Reset bit y</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR12</name>
              <description>Port x Reset bit y</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR13</name>
              <description>Port x Reset bit y</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR14</name>
              <description>Port x Reset bit y</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
            <field>
              <name>CR15</name>
              <description>Port x Reset bit y</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CR0W"/>
            </field>
          </fields>
        </register>
        <register>
          <name>TG</name>
          <displayName>TG</displayName>
          <description>Port bit toggle register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TG0</name>
              <description>Port toggle bit </description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TG0W</name><usage>write</usage><enumeratedValue><name>Toggle</name><description>Toggles the corresponding OCTLx bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TG1</name>
              <description>Port toggle bit</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG2</name>
              <description>Port toggle bit</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG3</name>
              <description>Port toggle bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG4</name>
              <description>Port toggle bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG5</name>
              <description>Port toggle bit</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG6</name>
              <description>Port toggle bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG7</name>
              <description>Port toggle bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG8</name>
              <description>Port toggle bit</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG9</name>
              <description>Port toggle bit</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG10</name>
              <description>Port toggle bit</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG11</name>
              <description>Port toggle bit</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG12</name>
              <description>Port toggle bit</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG13</name>
              <description>Port toggle bit</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG14</name>
              <description>Port toggle bit</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
            <field>
              <name>TG15</name>
              <description>Port toggle bit</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TG0W"/>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
   <peripheral>
      <name>I2C0</name>
      <description>Inter integrated circuit</description>
      <groupName>I2C</groupName>
      <baseAddress>0x40005400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>I2C0_EV</name>       
        <value>23</value>
      </interrupt>
      <interrupt>
        <name>I2C0_ER</name>  
        <value>32</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>Control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>SRESET</name>
              <description>Software reset</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SRESET</name><usage>read-write</usage><enumeratedValue><name>NotReset</name><description>I2C peripheral not under reset</description><value>0</value></enumeratedValue><enumeratedValue><name>Reset</name><description>I2C peripheral under reset</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SALT</name>
              <description>SMBus alert</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SALT</name><usage>read-write</usage><enumeratedValue><name>Release</name><description>SMBA pin released high</description><value>0</value></enumeratedValue><enumeratedValue><name>Drive</name><description>SMBA pin driven low</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PECTRANS</name>
              <description>Packet error checking</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PECTRANS</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>No PEC transfer</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>PEC transfer</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>POAP</name>
              <description>Acknowledge/PEC Position (for data
              reception)</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>POAP</name><usage>read-write</usage><enumeratedValue><name>Current</name><description>ACK bit controls the (N)ACK of the current byte being received</description><value>0</value></enumeratedValue><enumeratedValue><name>Next</name><description>ACK bit controls the (N)ACK of the next byte to be received</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ACKEN</name>
              <description>Acknowledge enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ACKEN</name><usage>read-write</usage><enumeratedValue><name>NAK</name><description>No acknowledge returned</description><value>0</value></enumeratedValue><enumeratedValue><name>ACK</name><description>Acknowledge returned after a byte is received</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STOP</name>
              <description>Stop condition</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>STOP</name><usage>read-write</usage><enumeratedValue><name>NoStop</name><description>STOP will not be sent</description><value>0</value></enumeratedValue><enumeratedValue><name>Stop</name><description>STOP will be sent</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>START</name>
              <description>Start generation</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>START</name><usage>read-write</usage><enumeratedValue><name>NoStart</name><description>START will not be sent</description><value>0</value></enumeratedValue><enumeratedValue><name>Start</name><description>START will be sent</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SS</name>
              <description>SCL Stretching(Slave
              mode)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SS</name><usage>read-write</usage><enumeratedValue><name>Enabled</name><description>Clock stretching enabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Disabled</name><description>Clock stretching disabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>GCEN</name>
              <description>General call enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>GCEN</name><usage>read-write</usage><enumeratedValue><name>NotRespond</name><description>Slave won't respond to General Call</description><value>0</value></enumeratedValue><enumeratedValue><name>Respond</name><description>Slave will respond to General Call</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PECEN</name>
              <description>PEC enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PECEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>PEC calculation disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>PEC calculation enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ARPEN</name>
              <description>ARP enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ARPEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>ARP disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>ARP enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SMBSEL</name>
              <description>SMBus type</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SMBSEL</name><usage>read-write</usage><enumeratedValue><name>Device</name><description>SMBus Device</description><value>0</value></enumeratedValue><enumeratedValue><name>Host</name><description>SMBus Host</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SMBEN</name>
              <description>SMBus mode</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SMBEN</name><usage>read-write</usage><enumeratedValue><name>I2C</name><description>I2C Mode</description><value>0</value></enumeratedValue><enumeratedValue><name>SMBus</name><description>SMBus</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>I2CEN</name>
              <description>Peripheral enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>I2CEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Peripheral disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Peripheral enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>Control register 1</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMALST</name>
              <description>Flag indicating DMA last transfer</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DMALST</name><usage>read-write</usage><enumeratedValue><name>NotLast</name><description>Next DMA EOT is not the last transfer</description><value>0</value></enumeratedValue><enumeratedValue><name>Last</name><description>Next DMA EOT is the last transfer</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DMAON</name>
              <description>DMA mode switch</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DMAON</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>DMA requests disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>DMA requests enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BUFIE</name>
              <description>Buffer interrupt enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BUFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>TBE=1 or RBNE=1 does not generate any interrupt</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>TBE=1 or RBNE=1 generates Event interrupt</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EVIE</name>
              <description>Event interrupt enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EVIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Event interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Event interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Error interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Error interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>I2CCLK</name>
              <description>Peripheral clock frequency</description>
              <bitOffset>0</bitOffset>
              <bitWidth>7</bitWidth>
            <writeConstraint><range><minimum>2</minimum><maximum>72</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>SADDR0</name>
          <displayName>SADDR0</displayName>
          <description>Own address register 0</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>ADDFORMAT</name>
              <description>Addressing mode (slave
              mode)</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ADDFORMAT</name><usage>read-write</usage><enumeratedValue><name>Add7</name><description>7-bit slave address (note that you'll need to shift the address by 1b)</description><value>0</value></enumeratedValue><enumeratedValue><name>Add10</name><description>10-bit slave address</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ADDRESS</name>
              <description>Interface address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>10</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>1023</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>SADDR1</name>
          <displayName>SADDR1</displayName>
          <description>Own address register 1</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>ADDRESS2</name>
              <description>Interface address</description>
              <bitOffset>1</bitOffset>
              <bitWidth>7</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>127</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DUADEN</name>
              <description>Dual addressing mode
              enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DUADEN</name><usage>read-write</usage><enumeratedValue><name>Single</name><description>Single addressing mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Dual</name><description>Dual addressing mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>DATA</name>
          <displayName>DATA</displayName>
          <description>Data register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TRB</name>
              <description>Transmission or reception data buffer</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT0</name>
          <displayName>STAT0</displayName>
          <description>Transfer status register 0</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>SMBALT</name>
              <description>SMBus alert</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>SMBALT</name><usage>read-write</usage><enumeratedValue><name>NoAlert</name><description>SMBA not pulled down or no alert occured</description><value>0</value></enumeratedValue><enumeratedValue><name>Alert</name><description>SMBA pulled down or alert occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SMBTO</name>
              <description>Timeout signal in SMBus mode</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>SMBTO</name><usage>read-write</usage><enumeratedValue><name>NoTimeout</name><description>No Timeout error</description><value>0</value></enumeratedValue><enumeratedValue><name>Timeout</name><description>SCL remained low for 25 ms</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PECERR</name>
              <description>PEC error when receiving data</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>PECERR</name><usage>read-write</usage><enumeratedValue><name>NoError</name><description>No PEC error</description><value>0</value></enumeratedValue><enumeratedValue><name>Error</name><description>PEC error</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OUERR</name>
              <description>Overrun/Underrun occurs in slave mode</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>OUERR</name><usage>read-write</usage><enumeratedValue><name>NoOverrun</name><description>No overrun/underrun occured</description><value>0</value></enumeratedValue><enumeratedValue><name>Overrun</name><description>Overrun/underrun occured</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>AERR</name>
              <description>Acknowledge error</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>AERR</name><usage>read-write</usage><enumeratedValue><name>NoError</name><description>No acknowledge error</description><value>0</value></enumeratedValue><enumeratedValue><name>Error</name><description>Acknowledge error</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LOSTARB</name>
              <description>Arbitration lost (master
              mode)</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>LOSTARB</name><usage>read-write</usage><enumeratedValue><name>NoLost</name><description>No Arbitration Lost detected</description><value>0</value></enumeratedValue><enumeratedValue><name>Lost</name><description>Arbitration Lost detected</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BERR</name>
              <description>Bus error</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>BERR</name><usage>read-write</usage><enumeratedValue><name>NoError</name><description>No misplaced Start or Stop condition</description><value>0</value></enumeratedValue><enumeratedValue><name>Error</name><description>Misplaced Start or Stop condition</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TBE</name>
              <description>I2C_DATA is Empty during transmitting</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>TBE</name><usage>read-write</usage><enumeratedValue><name>NotEmpty</name><description>Data register not empty</description><value>0</value></enumeratedValue><enumeratedValue><name>Empty</name><description>Data register empty, software can write</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RBNE</name>
              <description>I2C_DATA is not Empty during receiving</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>RBNE</name><usage>read-write</usage><enumeratedValue><name>Empty</name><description>Data register empty</description><value>0</value></enumeratedValue><enumeratedValue><name>NotEmpty</name><description>Data register not empty, software can read</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STPDET</name>
              <description>Stop detection (slave
              mode)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>STPDET</name><usage>read-write</usage><enumeratedValue><name>NoStop</name><description>No Stop condition detected</description><value>0</value></enumeratedValue><enumeratedValue><name>Stop</name><description>Stop condition detected</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ADD10SEND</name>
              <description>Header of 10-bit address is sent in master mode</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>ADD10SEND</name><usage>read-write</usage><enumeratedValue><name>NoHeader</name><description>No header of 10-bit address is sent</description><value>0</value></enumeratedValue><enumeratedValue><name>Header</name><description>Header of 10-bit address is sent</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BTC</name>
              <description>Byte transmission completed</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>BTC</name><usage>read-write</usage><enumeratedValue><name>NotFinished</name><description>Data byte transfer not done</description><value>0</value></enumeratedValue><enumeratedValue><name>Finished</name><description>Data byte transfer successful</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ADDSEND</name>
              <description>Address sent (master mode)/matched
              (slave mode)</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>ADDSEND</name><usage>read-write</usage><enumeratedValue><name>NotMatch</name><description>Adress mismatched or not received</description><value>0</value></enumeratedValue><enumeratedValue><name>Match</name><description>Received slave address matched with one of the enabled slave addresses</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SBSEND</name>
              <description>Start bit (Master mode)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>SBSEND</name><usage>read-write</usage><enumeratedValue><name>NoStart</name><description>No Start condition</description><value>0</value></enumeratedValue><enumeratedValue><name>Start</name><description>Start condition generated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT1</name>
          <displayName>STAT1</displayName>
          <description>Transfer status register 1</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>PECV</name>
              <description>Packet error checking
              register</description>
              <bitOffset>8</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>127</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DUMODF</name>
              <description>Dual flag (Slave mode)</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DUMODF</name><usage>read-write</usage><enumeratedValue><name>SADDR0</name><description>The address matches SADDR0</description><value>0</value></enumeratedValue><enumeratedValue><name>SADDR1</name><description>The address matches SADDR1</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HSTSMB</name>
              <description>SMBus host header (Slave
              mode)</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HSTSMB</name><usage>read-write</usage><enumeratedValue><name>NoHeader</name><description>No SMBus host header detected</description><value>0</value></enumeratedValue><enumeratedValue><name>Header</name><description>SMBus host header detected</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DEFSMB</name>
              <description>SMBus device default address (Slave
              mode)</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DEFSMB</name><usage>read-write</usage><enumeratedValue><name>NotReceived</name><description>Default address has not been received</description><value>0</value></enumeratedValue><enumeratedValue><name>Received</name><description>Default address has been received</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RXGC</name>
              <description>General call address (Slave
              mode)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RXGC</name><usage>read-write</usage><enumeratedValue><name>NotReceived</name><description>No general call address received</description><value>0</value></enumeratedValue><enumeratedValue><name>Received</name><description>General call address received</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TR</name>
              <description>Transmitter/receiver</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TR</name><usage>read-write</usage><enumeratedValue><name>Receiver</name><description>Receiver</description><value>0</value></enumeratedValue><enumeratedValue><name>Transmitter</name><description>Transmitter</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>I2CBSY</name>
              <description>Bus busy</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>I2CBSY</name><usage>read-write</usage><enumeratedValue><name>NotBusy</name><description>No I2C communication</description><value>0</value></enumeratedValue><enumeratedValue><name>Busy</name><description>I2C communication active</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MASTER</name>
              <description>Master/slave</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>MASTER</name><usage>read-write</usage><enumeratedValue><name>Slave</name><description>Slave mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Master</name><description>Master mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CKCFG</name>
          <displayName>CKCFG</displayName>
          <description>Clock configure register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>FAST</name>
              <description>I2C master mode selection</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FAST</name><usage>read-write</usage><enumeratedValue><name>Standard</name><description>Standard mode I2C</description><value>0</value></enumeratedValue><enumeratedValue><name>Fast</name><description>Fast mode I2C</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DTCY</name>
              <description>Fast mode duty cycle</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DTCY</name><usage>read-write</usage><enumeratedValue><name>Duty2</name><description>Duty cycle t_low/t_high = 2</description><value>0</value></enumeratedValue><enumeratedValue><name>Duty16_9</name><description>Duty cycle t_low/t_high = 16/9</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CLKC</name>
              <description>Clock control register in Fast/Standard
              mode (Master mode)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>RT</name>
          <displayName>RT</displayName>
          <description>Rise time register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0002</resetValue>
          <fields>
            <field>
              <name>RISETIME</name>
              <description>Maximum rise time in master mode</description>
              <bitOffset>0</bitOffset>
              <bitWidth>7</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>127</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>SAMCS</name>
          <displayName>SAMCS</displayName>
          <description>SAM control and status register</description>
          <addressOffset>0x80</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>RFR</name>
              <description>Rxframe rise flag</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RFF</name>
              <description>Rxframe fall flag</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TFR</name>
              <description>Txframe rise flag</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TFF</name>
              <description>Txframe fall flag</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RXF</name>
              <description>level of rx frame signal</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TXF</name>
              <description>level of tx frame signal</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RFRIE</name>
              <description>Rx frame rise interrupt enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RFRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Rxframe rise interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Rxframe rise interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RFFIE</name>
              <description>Rx frame fall interrupt enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RFFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Rxframe fall interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Rxframe fall interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TFRIE</name>
              <description>Tx frame rise interrupt enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TFRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Txframe rise interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Txframe rise interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TFFIE</name>
              <description>Tx frame fall interrupt enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TFFIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Txframe fall interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Txframe fall interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STOEN</name>
              <description>SAM_V interface timeout detect enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>STOEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>SAM_V interface timeout detect disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>SAM_V interface timeout detect enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>SAMEN</name>
              <description>SAM_V interface  enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SAMEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>SAM_V interface disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>SAM_V interface enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>FMPCFG</name>
          <displayName>FMPCFG</displayName>
          <description>Fast-mode-plus configure register</description>
          <addressOffset>0x90</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>FMPEN</name>
              <description>Fast-mode-plus enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="I2C0">
      <name>I2C1</name>
      <baseAddress>0x40005800</baseAddress>
      <interrupt>
        <name>I2C1_EV</name>
        <value>24</value>
      </interrupt>
      <interrupt>
        <name>I2C1_ER</name>
        <value>34</value>
      </interrupt>
    </peripheral>
    <peripheral>
      <name>NVIC</name>
      <description>Nested Vectored Interrupt
      Controller</description>
      <groupName>NVIC</groupName>
      <baseAddress>0xE000E100</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0xF00</size>
        <usage>registers</usage>
      </addressBlock>
      <addressBlock>
        <offset>0x33D</offset>
        <size>0xC3</size>
        <usage>reserved</usage>
      </addressBlock>
      <registers>
        <register>
          <name>ISER0</name>
          <displayName>ISER0</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER1</name>
          <displayName>ISER1</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER2</name>
          <displayName>ISER2</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER3</name>
          <displayName>ISER3</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER4</name>
          <displayName>ISER4</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER5</name>
          <displayName>ISER5</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER6</name>
          <displayName>ISER6</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER7</name>
          <displayName>ISER7</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER8</name>
          <displayName>ISER8</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER9</name>
          <displayName>ISER9</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER10</name>
          <displayName>ISER10</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER11</name>
          <displayName>ISER11</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER12</name>
          <displayName>ISER12</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x30</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER13</name>
          <displayName>ISER13</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER14</name>
          <displayName>ISER14</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x38</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ISER15</name>
          <displayName>ISER15</displayName>
          <description>Interrupt Set Enable Register</description>
          <addressOffset>0x3C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETENA</name>
              <description>SETENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICER0</name>
          <displayName>ICER0</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0x80</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER1</name>
          <displayName>ICER1</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0x84</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER2</name>
          <displayName>ICER2</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0x8C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER3</name>
          <displayName>ICER3</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0x90</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER4</name>
          <displayName>ICER4</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0x94</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER5</name>
          <displayName>ICER5</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0x98</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER6</name>
          <displayName>ICER6</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0x9C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER7</name>
          <displayName>ICER7</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xA0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER8</name>
          <displayName>ICER8</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xA4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER9</name>
          <displayName>ICER9</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xA8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER10</name>
          <displayName>ICER10</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xAC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER11</name>
          <displayName>ICER11</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xB0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER12</name>
          <displayName>ICER12</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xB4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER13</name>
          <displayName>ICER13</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xB8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER14</name>
          <displayName>ICER14</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xBC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
	<register>
          <name>ICER15</name>
          <displayName>ICER15</displayName>
          <description>Interrupt Clear Enable
          Register</description>
          <addressOffset>0xC0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRENA</name>
              <description>CLRENA</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR0</name>
          <displayName>ISPR0</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x100</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR1</name>
          <displayName>ISPR1</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x104</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR2</name>
          <displayName>ISPR2</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x108</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR3</name>
          <displayName>ISPR3</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x10C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR4</name>
          <displayName>ISPR4</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x110</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR5</name>
          <displayName>ISPR5</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x114</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR6</name>
          <displayName>ISPR6</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x118</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR7</name>
          <displayName>ISPR7</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x11C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR8</name>
          <displayName>ISPR8</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x120</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR9</name>
          <displayName>ISPR9</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x124</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR10</name>
          <displayName>ISPR10</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x128</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR11</name>
          <displayName>ISPR11</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x12C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR12</name>
          <displayName>ISPR12</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x130</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR13</name>
          <displayName>ISPR13</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x134</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR14</name>
          <displayName>ISPR14</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x138</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ISPR15</name>
          <displayName>ISPR15</displayName>
          <description>Interrupt Set-Pending Register</description>
          <addressOffset>0x13C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SETPEND</name>
              <description>SETPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR0</name>
          <displayName>ICPR0</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x180</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR1</name>
          <displayName>ICPR1</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x184</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR2</name>
          <displayName>ICPR2</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x188</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR3</name>
          <displayName>ICPR3</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x18C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR4</name>
          <displayName>ICPR4</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x190</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR5</name>
          <displayName>ICPR5</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x194</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR6</name>
          <displayName>ICPR6</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x198</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR7</name>
          <displayName>ICPR7</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x19C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR8</name>
          <displayName>ICPR8</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x1A0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR9</name>
          <displayName>ICPR9</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x1A4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR10</name>
          <displayName>ICPR10</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x1A8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR11</name>
          <displayName>ICPR11</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x1AC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR12</name>
          <displayName>ICPR12</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x1B0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR13</name>
          <displayName>ICPR13</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x1B4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR14</name>
          <displayName>ICPR14</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x1B8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ICPR15</name>
          <displayName>ICPR15</displayName>
          <description>Interrupt Clear-Pending
          Register</description>
          <addressOffset>0x1BC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CLRPEND</name>
              <description>CLRPEND</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR0</name>
          <displayName>IABR0</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x200</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR1</name>
          <displayName>IABR1</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x204</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR2</name>
          <displayName>IABR2</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x208</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR3</name>
          <displayName>IABR3</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x20C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR4</name>
          <displayName>IABR4</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x210</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR5</name>
          <displayName>IABR5</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x214</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR6</name>
          <displayName>IABR6</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x218</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR7</name>
          <displayName>IABR7</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x21C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR8</name>
          <displayName>IABR8</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x220</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR9</name>
          <displayName>IABR9</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x224</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR10</name>
          <displayName>IABR10</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x228</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR11</name>
          <displayName>IABR11</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x22C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR12</name>
          <displayName>IABR12</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x230</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR13</name>
          <displayName>IABR13</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x234</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR14</name>
          <displayName>IABR14</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x238</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>IABR15</name>
          <displayName>IABR15</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x23C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IABR</name>
              <description>IABR</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS0</name>
          <displayName>ITNS0</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x280</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS1</name>
          <displayName>ITNS1</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x284</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS2</name>
          <displayName>ITNS2</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x288</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS3</name>
          <displayName>ITNS3</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x28C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS4</name>
          <displayName>ITNS4</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x290</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS5</name>
          <displayName>ITNS5</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x294</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS6</name>
          <displayName>ITNS6</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x298</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS7</name>
          <displayName>ITNS7</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x29C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS8</name>
          <displayName>ITNS8</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x2A0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS9</name>
          <displayName>ITNS9</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x2A4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS10</name>
          <displayName>ITNS10</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x2A8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS11</name>
          <displayName>ITNS11</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x2AC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS12</name>
          <displayName>ITNS12</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x2B0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS13</name>
          <displayName>ITNS13</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x2B4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS14</name>
          <displayName>ITNS14</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x2B8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
       <register>
          <name>ITNS15</name>
          <displayName>ITNS15</displayName>
          <description>Interrupt Active bit
          Register</description>
          <addressOffset>0x2BC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ITNS</name>
              <description>ITNS</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>IPR0</name>
          <displayName>IPR0</displayName>
          <description>Interrupt Priority Register 0</description>
          <addressOffset>0x300</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_00</name>
              <description>PRI_00</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
      <register>
          <name>IPR1</name>
          <displayName>IPR1</displayName>
          <description>Interrupt Priority Register 1</description>
          <addressOffset>0x301</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_01</name>
              <description>PRI_01</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR2</name>
          <displayName>IPR2</displayName>
          <description>Interrupt Priority Register 2</description>
          <addressOffset>0x302</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_02</name>
              <description>PRI_02</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register> 
     <register>
          <name>IPR3</name>
          <displayName>IPR3</displayName>
          <description>Interrupt Priority Register 3</description>
          <addressOffset>0x303</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_03</name>
              <description>PRI_03</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR4</name>
          <displayName>IPR4</displayName>
          <description>Interrupt Priority Register 4</description>
          <addressOffset>0x304</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_04</name>
              <description>PRI_04</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR5</name>
          <displayName>IPR5</displayName>
          <description>Interrupt Priority Register 5</description>
          <addressOffset>0x305</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_05</name>
              <description>PRI_05</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR6</name>
          <displayName>IPR6</displayName>
          <description>Interrupt Priority Register 6</description>
          <addressOffset>0x306</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_06</name>
              <description>PRI_06</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR7</name>
          <displayName>IPR7</displayName>
          <description>Interrupt Priority Register 7</description>
          <addressOffset>0x307</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_07</name>
              <description>PRI_07</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR8</name>
          <displayName>IPR8</displayName>
          <description>Interrupt Priority Register 8</description>
          <addressOffset>0x308</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_08</name>
              <description>PRI_08</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR9</name>
          <displayName>IPR9</displayName>
          <description>Interrupt Priority Register 9</description>
          <addressOffset>0x309</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_09</name>
              <description>PRI_09</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR10</name>
          <displayName>IPR10</displayName>
          <description>Interrupt Priority Register 10</description>
          <addressOffset>0x30A</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_10</name>
              <description>PRI_10</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR11</name>
          <displayName>IPR11</displayName>
          <description>Interrupt Priority Register 11</description>
          <addressOffset>0x30B</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_11</name>
              <description>PRI_11</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR12</name>
          <displayName>IPR12</displayName>
          <description>Interrupt Priority Register 12</description>
          <addressOffset>0x30C</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_12</name>
              <description>PRI_12</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR13</name>
          <displayName>IPR13</displayName>
          <description>Interrupt Priority Register 13</description>
          <addressOffset>0x30D</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_13</name>
              <description>PRI_13</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR14</name>
          <displayName>IPR14</displayName>
          <description>Interrupt Priority Register 14</description>
          <addressOffset>0x30E</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_14</name>
              <description>PRI_14</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR15</name>
          <displayName>IPR15</displayName>
          <description>Interrupt Priority Register 15</description>
          <addressOffset>0x30F</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_15</name>
              <description>PRI_15</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR16</name>
          <displayName>IPR16</displayName>
          <description>Interrupt Priority Register 16</description>
          <addressOffset>0x310</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_16</name>
              <description>PRI_16</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR17</name>
          <displayName>IPR17</displayName>
          <description>Interrupt Priority Register 17</description>
          <addressOffset>0x311</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_17</name>
              <description>PRI_17</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR18</name>
          <displayName>IPR18</displayName>
          <description>Interrupt Priority Register 18</description>
          <addressOffset>0x312</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_18</name>
              <description>PRI_18</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR19</name>
          <displayName>IPR19</displayName>
          <description>Interrupt Priority Register 19</description>
          <addressOffset>0x313</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_19</name>
              <description>PRI_19</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR20</name>
          <displayName>IPR20</displayName>
          <description>Interrupt Priority Register 20</description>
          <addressOffset>0x314</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_20</name>
              <description>PRI_20</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR21</name>
          <displayName>IPR21</displayName>
          <description>Interrupt Priority Register 21</description>
          <addressOffset>0x315</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_21</name>
              <description>PRI_21</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR22</name>
          <displayName>IPR22</displayName>
          <description>Interrupt Priority Register 22</description>
          <addressOffset>0x316</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_22</name>
              <description>PRI_22</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR23</name>
          <displayName>IPR23</displayName>
          <description>Interrupt Priority Register 23</description>
          <addressOffset>0x317</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_23</name>
              <description>PRI_23</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR24</name>
          <displayName>IPR24</displayName>
          <description>Interrupt Priority Register 24</description>
          <addressOffset>0x318</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_24</name>
              <description>PRI_24</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR25</name>
          <displayName>IPR25</displayName>
          <description>Interrupt Priority Register 25</description>
          <addressOffset>0x319</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_25</name>
              <description>PRI_25</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR26</name>
          <displayName>IPR26</displayName>
          <description>Interrupt Priority Register 26</description>
          <addressOffset>0x31A</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_26</name>
              <description>PRI_26</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR27</name>
          <displayName>IPR27</displayName>
          <description>Interrupt Priority Register 27</description>
          <addressOffset>0x31B</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_27</name>
              <description>PRI_27</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR28</name>
          <displayName>IPR28</displayName>
          <description>Interrupt Priority Register 28</description>
          <addressOffset>0x31C</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_28</name>
              <description>PRI_28</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR29</name>
          <displayName>IPR29</displayName>
          <description>Interrupt Priority Register 29</description>
          <addressOffset>0x31D</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_29</name>
              <description>PRI_29</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR30</name>
          <displayName>IPR30</displayName>
          <description>Interrupt Priority Register 30</description>
          <addressOffset>0x31E</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_30</name>
              <description>PRI_30</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
     <register>
          <name>IPR31</name>
          <displayName>IPR31</displayName>
          <description>Interrupt Priority Register 31</description>
          <addressOffset>0x31F</addressOffset>
          <size>0x08</size>
          <access>read-write</access>
          <resetValue>0x00</resetValue>
          <fields>
            <field>
              <name>PRI_31</name>
              <description>PRI_31</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>    
      </registers>
    </peripheral>
    <peripheral>
      <name>PMU</name>
      <description>Power management unit</description>
      <groupName>PMU</groupName>
      <baseAddress>0x40007000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>power control register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00004000</resetValue>
          <fields>     
           <field>
              <name>LDOVS</name>
              <description>LDO output voltage select</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
            </field>   
            <field>
              <name>BKPWEN</name>
              <description>Backup Domain Write Enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BKPWEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Access to backup domain registers disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Access to backup domain registers enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LVDT</name>
              <description>Low Voltage Detector Threshold</description>
              <bitOffset>5</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>LVDT</name><usage>read-write</usage><enumeratedValue><name>V2_2</name><description>2.2 V</description><value>0</value></enumeratedValue><enumeratedValue><name>V2_3</name><description>2.3 V</description><value>1</value></enumeratedValue><enumeratedValue><name>V2_4</name><description>2.4 V</description><value>2</value></enumeratedValue><enumeratedValue><name>V2_5</name><description>2.5 V</description><value>3</value></enumeratedValue><enumeratedValue><name>V2_6</name><description>2.6 V</description><value>4</value></enumeratedValue><enumeratedValue><name>V2_7</name><description>2.7 V</description><value>5</value></enumeratedValue><enumeratedValue><name>V2_8</name><description>2.8 V</description><value>6</value></enumeratedValue><enumeratedValue><name>V2_9</name><description>2.9 V</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LVDEN</name>
              <description>Low Voltage Detector Enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LVDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Low voltage detector disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Low voltage detector enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STBRST</name>
              <description>Standby Flag Reset</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>STBRSTW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear the standby flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WURST</name>
              <description>Wakeup Flag Reset</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WURSTW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear the wakeup flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STBMOD</name>
              <description>Standby Mode</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>STBMOD</name><usage>read-write</usage><enumeratedValue><name>DeepSleep</name><description>Enter Deep-sleep mode when the CPU enters deepsleep</description><value>0</value></enumeratedValue><enumeratedValue><name>Standby</name><description>Enter Standby mode when the CPU enters deepsleep</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LDOLP</name>
              <description>LDO Low Power Mode</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LDOLP</name><usage>read-write</usage><enumeratedValue><name>Normal</name><description>LDO operates normally during Deepsleep mode</description><value>0</value></enumeratedValue><enumeratedValue><name>LowPower</name><description>LDO in low-power mode during Deepsleep mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CS</name>
          <displayName>CS</displayName>
          <description>power control/status register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000000</resetValue>
          <fields>      
            <field>
              <name>WUPEN6</name>
              <description>WKUP pin6 Enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>WUPEN5</name>
              <description>WKUP pin5 Enable</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>       
           <field>
              <name>WUPEN1</name>
              <description>WKUP pin1 Enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>WUPEN1</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>WKUP pin 1 is used for general purpose I/Os. An event on the WKUP pin 1 does not wakeup the device from Standby mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>WKUP pin 1 is used for wakeup from Standby mode and forced in input pull down configuration (rising edge on WKUP pin 1 wakes-up the system from Standby mode)</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WUPEN0</name>
              <description>WKUP pin0 Enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>WUPEN0</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>WKUP pin 0 is used for general purpose I/Os. An event on the WKUP pin 0 does not wakeup the device from Standby mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>WKUP pin 0 is used for wakeup from Standby mode and forced in input pull down configuration (rising edge on WKUP pin 0 wakes-up the system from Standby mode)</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LVDF</name>
              <description>Low Voltage Detector Status Flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>LVDFR</name><usage>read</usage><enumeratedValue><name>AboveThreshold</name><description>VDD is higher than the LVD threshold</description><value>0</value></enumeratedValue><enumeratedValue><name>BelowThreshold</name><description>VDD is lower than or equal to the LVD threshold</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STBF</name>
              <description>Standby flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>STBFR</name><usage>read</usage><enumeratedValue><name>NoStandbyEvent</name><description>Device has not been in Standby mode</description><value>0</value></enumeratedValue><enumeratedValue><name>StandbyEvent</name><description>Device has been in Standby mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WUF</name>
              <description>Wakeup flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>WUFR</name><usage>read</usage><enumeratedValue><name>NoWakeupEvent</name><description>No wakeup event occurred</description><value>0</value></enumeratedValue><enumeratedValue><name>WakeupEvent</name><description>A wakeup event was received from the WKUP pin or from the RTC wakeup event (RTC Tamper event, RTC TimeStamp event or RTC alarm)</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>RCU</name>
      <description>Reset and clock unit</description>
      <groupName>RCU</groupName>
      <baseAddress>0x40021000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>RCU</name>
        <value>4</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>Control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000083</resetValue>
          <fields>
            <field>
              <name>PLLSTB</name>
              <description>PLL Clock Stabilization Flag</description>
              <bitOffset>25</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>PLLSTBR</name><usage>read</usage><enumeratedValue><name>NotReady</name><description>PLL is not stable</description><value>0</value></enumeratedValue><enumeratedValue><name>Ready</name><description>PLL is stable</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PLLEN</name>
              <description>PLL enable</description>
              <bitOffset>24</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>PLLEN</name><usage>read-write</usage><enumeratedValue><name>Off</name><description>Clock Off</description><value>0</value></enumeratedValue><enumeratedValue><name>On</name><description>Clock On</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>CKMEN</name>
              <description>HXTAL Clock Monitor Enable</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CKMEN</name><usage>read-write</usage><enumeratedValue><name>Off</name><description>Clock monitor disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>On</name><description>Clock monitor enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HXTALBPS</name>
              <description>External crystal oscillator (HXTAL) clock bypass mode enable</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>HXTALBPS</name><usage>read-write</usage><enumeratedValue><name>NotBypassed</name><description>HXTAL crystal oscillator not bypassed</description><value>0</value></enumeratedValue><enumeratedValue><name>Bypassed</name><description>HXTAL crystal oscillator bypassed with external clock</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HXTALSTB</name>
              <description>External crystal oscillator (HXTAL) clock stabilization flag</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>HXTALSTBR</name><usage>read</usage><enumeratedValue><name>NotReady</name><description>HXTAL is not stable</description><value>0</value></enumeratedValue><enumeratedValue><name>Ready</name><description>HXTAL is stable</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>HXTALEN</name>
              <description>External High Speed oscillator Enable</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="IRC8MEN"/>
            </field>
           <field>
              <name>IRC8MCALIB</name>
              <description>High Speed Internal Oscillator calibration value register</description>
              <bitOffset>8</bitOffset>
              <bitWidth>8</bitWidth>
              <access>read-only</access>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
           <field>
              <name>IRC8MADJ</name>
              <description>High Speed Internal Oscillator clock trim adjust value</description>
              <bitOffset>3</bitOffset>
              <bitWidth>5</bitWidth>
              <access>read-write</access>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
           <field>
              <name>IRC8MSTB</name>
              <description>IRC8M High Speed Internal Oscillator stabilization Flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>IRC8MSTBR</name><usage>read</usage><enumeratedValue><name>NotReady</name><description>IRC8M is not stable</description><value>0</value></enumeratedValue><enumeratedValue><name>Ready</name><description>IRC8M is stable</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IRC8MEN</name>
              <description>Internal High Speed oscillator Enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>IRC8MEN</name><usage>read-write</usage><enumeratedValue><name>Off</name><description>Clock Off</description><value>0</value></enumeratedValue><enumeratedValue><name>On</name><description>Clock On</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CFG0</name>
          <displayName>CFG0</displayName>
          <description>Clock configuration register 0
          (RCU_CFG0)</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000000</resetValue>
          <fields>
          <field>
              <name>PLLDV</name>
              <description>The CK_PLL divide by 1 or 2 for CK_OUT
              </description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>PLLDV</name><usage>read-write</usage><enumeratedValue><name>Div2</name><description>PLL is divided by 2 for CK_OUT</description><value>0</value></enumeratedValue><enumeratedValue><name>Div1</name><description>PLL is not divided for CK_OUT</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>CKOUTDIV</name>
              <description>The CK_OUT divider which the CK_OUT frequency can be reduced</description>
              <bitOffset>28</bitOffset>
              <bitWidth>3</bitWidth>
              <access>read-write</access>
              <enumeratedValues><name>CKOUTDIV</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>CK_OUT is divided by 1</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>CK_OUT is divided by 2</description><value>1</value></enumeratedValue><enumeratedValue><name>Div4</name><description>CK_OUT is divided by 4</description><value>2</value></enumeratedValue><enumeratedValue><name>Div8</name><description>CK_OUT is divided by 8</description><value>3</value></enumeratedValue><enumeratedValue><name>Div16</name><description>CK_OUT is divided by 16</description><value>4</value></enumeratedValue><enumeratedValue><name>Div32</name><description>CK_OUT is divided by 32</description><value>5</value></enumeratedValue><enumeratedValue><name>Div64</name><description>CK_OUT is divided by 64</description><value>6</value></enumeratedValue><enumeratedValue><name>Div128</name><description>CK_OUT is divided by 128</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PLLMF_MSB</name>
              <description>Bit 4 of PLLMF register</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
             <enumeratedValues><name>PLLMF_MSB</name><usage>read-write</usage><enumeratedValue><name>None</name><description>Value of PLLMF is as set</description><value>0</value></enumeratedValue><enumeratedValue><name>Plus15</name><description>Add 15 to the value of PLLMF</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CKOUTSEL</name>
              <description>CK_OUT Clock Source Selection</description>
              <bitOffset>24</bitOffset>
              <bitWidth>3</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>CKOUTSEL</name><usage>read-write</usage><enumeratedValue><name>None</name><description>No clock selected</description><value>0</value></enumeratedValue><enumeratedValue><name>IRC14M</name><description>Internal 14 MHz RC oscillator clock selected</description><value>1</value></enumeratedValue><enumeratedValue><name>LSI40K</name><description>Internal 40 kHz RC oscillator clock selected</description><value>2</value></enumeratedValue><enumeratedValue><name>LXTAL</name><description>External low speed oscillator clock selected</description><value>3</value></enumeratedValue><enumeratedValue><name>SYSCLK</name><description>System clock selected</description><value>4</value></enumeratedValue><enumeratedValue><name>IRC8M</name><description>Internal RC 8 MHz (HSI) oscillator clock selected</description><value>5</value></enumeratedValue><enumeratedValue><name>HXTAL</name><description>External 4-32 MHz (HSE) oscillator clock selected</description><value>6</value></enumeratedValue><enumeratedValue><name>PLL</name><description>PLL clock selected (divided by 1 or 2, depending on PLLDV)</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PLLMF</name>
              <description>PLL multiply factor</description>
              <bitOffset>18</bitOffset>
              <bitWidth>4</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>PLLMF</name><usage>read-write</usage><enumeratedValue><name>Mul2</name><description>PLL input clock x2</description><value>0</value></enumeratedValue><enumeratedValue><name>Mul3</name><description>PLL input clock x3</description><value>1</value></enumeratedValue><enumeratedValue><name>Mul4</name><description>PLL input clock x4</description><value>2</value></enumeratedValue><enumeratedValue><name>Mul5</name><description>PLL input clock x5</description><value>3</value></enumeratedValue><enumeratedValue><name>Mul6</name><description>PLL input clock x6</description><value>4</value></enumeratedValue><enumeratedValue><name>Mul7</name><description>PLL input clock x7</description><value>5</value></enumeratedValue><enumeratedValue><name>Mul8</name><description>PLL input clock x8</description><value>6</value></enumeratedValue><enumeratedValue><name>Mul9</name><description>PLL input clock x9</description><value>7</value></enumeratedValue><enumeratedValue><name>Mul10</name><description>PLL input clock x10</description><value>8</value></enumeratedValue><enumeratedValue><name>Mul11</name><description>PLL input clock x11</description><value>9</value></enumeratedValue><enumeratedValue><name>Mul12</name><description>PLL input clock x12</description><value>10</value></enumeratedValue><enumeratedValue><name>Mul13</name><description>PLL input clock x13</description><value>11</value></enumeratedValue><enumeratedValue><name>Mul14</name><description>PLL input clock x14</description><value>12</value></enumeratedValue><enumeratedValue><name>Mul15</name><description>PLL input clock x15</description><value>13</value></enumeratedValue><enumeratedValue><name>Mul16</name><description>PLL input clock x16</description><value>14</value></enumeratedValue><enumeratedValue><name>Mul16x</name><description>PLL input clock x16</description><value>15</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>PLLPREDV</name>
              <description>HXTAL divider for PLL source clock selection.</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>PLLPREDV</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>HXTAL clock not divided</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>HXTAL clock divided by 2</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PLLSEL</name>
              <description>PLL Clock Source Selection</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>PLLSEL</name><usage>read-write</usage><enumeratedValue><name>IRC8M_2</name><description>IRC8M / 2 selected as PLL source clock</description><value>0</value></enumeratedValue><enumeratedValue><name>HXTAL</name><description>HXTAL selected as PLL source clock</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>ADCPSC</name>
              <description>ADC clock prescaler selection</description>
              <bitOffset>14</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>ADCPSC</name><usage>read-write</usage><enumeratedValue><name>Div2</name><description>CK_APB2 divided by 2</description><value>0</value></enumeratedValue><enumeratedValue><name>Div4</name><description>CK_APB2 divided by 4</description><value>1</value></enumeratedValue><enumeratedValue><name>Div6</name><description>CK_APB2 divided by 6</description><value>2</value></enumeratedValue><enumeratedValue><name>Div8</name><description>CK_APB2 divided by 8</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>APB2PSC</name>
              <description>APB2 prescaler selection</description>
              <bitOffset>11</bitOffset>
              <bitWidth>3</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="APB1PSC"/>
            </field>
            <field>
              <name>APB1PSC</name>
              <description>APB1 prescaler selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>3</bitWidth>
              <access>read-write</access>
              <enumeratedValues><name>APB1PSC</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>CK_AHB</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>CK_AHB divided by 2</description><value>4</value></enumeratedValue><enumeratedValue><name>Div4</name><description>CK_AHB divided by 4</description><value>5</value></enumeratedValue><enumeratedValue><name>Div8</name><description>CK_AHB divided by 8</description><value>6</value></enumeratedValue><enumeratedValue><name>Div16</name><description>CK_AHB divided by 16</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>AHBPSC</name>
              <description>AHB prescaler selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>AHBPSC</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>CK_SYS</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>CK_SYS divided by 2</description><value>8</value></enumeratedValue><enumeratedValue><name>Div4</name><description>CK_SYS divided by 4</description><value>9</value></enumeratedValue><enumeratedValue><name>Div8</name><description>CK_SYS divided by 8</description><value>10</value></enumeratedValue><enumeratedValue><name>Div16</name><description>CK_SYS divided by 16</description><value>11</value></enumeratedValue><enumeratedValue><name>Div64</name><description>CK_SYS divided by 64</description><value>12</value></enumeratedValue><enumeratedValue><name>Div128</name><description>CK_SYS divided by 128</description><value>13</value></enumeratedValue><enumeratedValue><name>Div256</name><description>CK_SYS divided by 256</description><value>14</value></enumeratedValue><enumeratedValue><name>Div512</name><description>CK_SYS divided by 512</description><value>15</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>SCSS</name>
              <description>System clock switch status</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>SCSS</name><usage>read-write</usage><enumeratedValue><name>IRC8M</name><description>IRC8M used as system clock</description><value>0</value></enumeratedValue><enumeratedValue><name>HXTAL</name><description>HXTAL used as system clock</description><value>1</value></enumeratedValue><enumeratedValue><name>PLL</name><description>PLL used as system clock</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SCS</name>
              <description>System clock switch</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>SCS</name><usage>read-write</usage><enumeratedValue><name>IRC8M</name><description>IRC8M used as system clock</description><value>0</value></enumeratedValue><enumeratedValue><name>HXTAL</name><description>HXTAL used as system clock</description><value>1</value></enumeratedValue><enumeratedValue><name>PLL</name><description>PLL used as system clock</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>INT</name>
          <displayName>INT</displayName>
          <description>Clock interrupt register
          (RCU_INT)</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000000</resetValue>
          <fields>
           <field>
              <name>CKMIC</name>
              <description>HXTAL Clock Stuck Interrupt Clear</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            <enumeratedValues><name>CKMICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear CKMIF flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>IRC28MSTBIC</name>
              <description>IRC28M stabilization Interrupt Clear</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            <enumeratedValues><name>IRC28MSTBICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear IRC28MSTBIF flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>PLLSTBIC</name>
              <description>PLL stabilization Interrupt Clear</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            <enumeratedValues><name>PLLSTBICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear PLLSTBIF flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>HXTALSTBIC</name>
              <description>HXTAL Stabilization Interrupt Clear</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            <enumeratedValues><name>HXTALSTBICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear HXTALSTBIF flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IRC8MSTBIC</name>
              <description>IRC8M Stabilization Interrupt Clear</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            <enumeratedValues><name>IRC8MSTBICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear IRC8MSTBIF flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>LXTALSTBIC</name>
              <description>LXTAL Stabilization Interrupt Clear</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            <enumeratedValues><name>LXTALSTBICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear LXTALSTBIF flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IRC40KSTBIC</name>
              <description>IRC40K Stabilization Interrupt Clear</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            <enumeratedValues><name>IRC40KSTBICW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear IRC40KSTBIF flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>IRC28MSTBIE</name>
              <description>IRC28M Stabilization Interrupt Enable</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>IRC28MSTBIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>PLLSTBIE</name>
              <description>PLL Stabilization Interrupt Enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>PLLSTBIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HXTALSTBIE</name>
              <description>HXTAL Stabilization Interrupt Enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>HXTALSTBIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
        <field>
              <name>IRC8MSTBIE</name>
              <description>IRC8M Stabilization Interrupt Enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>IRC8MSTBIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LXTALSTBIE</name>
              <description>LXTAL Stabilization Interrupt Enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>LXTALSTBIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
         <field>
              <name>IRC40KSTBIE</name>
              <description>IRC40K Stabilization interrupt enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>IRC40KSTBIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>CKMIF</name>
              <description>HXTAL Clock Stuck Interrupt Flag</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>CKMIFR</name><usage>read</usage><enumeratedValue><name>NotInterrupted</name><description>Clock operating normally</description><value>0</value></enumeratedValue><enumeratedValue><name>Interrupted</name><description>HXTAL clock stuck</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           <field>
              <name>IRC28MSTBIF</name>
              <description>IRC28M stabilization interrupt flag</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>IRC28MSTBIFR</name><usage>read</usage><enumeratedValue><name>NotInterrupted</name><description>No interrupt generated</description><value>0</value></enumeratedValue><enumeratedValue><name>Interrupted</name><description>IRC14M stabilisation interrupt generated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>   
         <field>
              <name>PLLSTBIF</name>
              <description>PLL stabilization interrupt flag</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>PLLSTBIFR</name><usage>read</usage><enumeratedValue><name>NotInterrupted</name><description>No interrupt generated</description><value>0</value></enumeratedValue><enumeratedValue><name>Interrupted</name><description>PLL stabilisation interrupt generated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HXTALSTBIF</name>
              <description>HXTAL stabilization interrupt flag</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>HXTALSTBIFR</name><usage>read</usage><enumeratedValue><name>NotInterrupted</name><description>No interrupt generated</description><value>0</value></enumeratedValue><enumeratedValue><name>Interrupted</name><description>HXTAL stabilisation interrupt generated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IRC8MSTBIF</name>
              <description>IRC8M stabilization interrupt flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>IRC8MSTBIFR</name><usage>read</usage><enumeratedValue><name>NotInterrupted</name><description>No interrupt generated</description><value>0</value></enumeratedValue><enumeratedValue><name>Interrupted</name><description>IRC8M stabilisation interrupt generated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
         <field>
              <name>LXTALSTBIF</name>
              <description>LXTAL stabilization interrupt flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>LXTALSTBIFR</name><usage>read</usage><enumeratedValue><name>NotInterrupted</name><description>No interrupt generated</description><value>0</value></enumeratedValue><enumeratedValue><name>Interrupted</name><description>LXTAL stabilisation interrupt generated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IRC40KSTBIF</name>
              <description>IRC40K stabilization interrupt flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>IRC40KSTBIFR</name><usage>read</usage><enumeratedValue><name>NotInterrupted</name><description>No interrupt generated</description><value>0</value></enumeratedValue><enumeratedValue><name>Interrupted</name><description>IRC40K stabilisation interrupt generated</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            </fields>
        </register>
        <register>
          <name>APB2RST</name>
          <displayName>APB2RST</displayName>
          <description>APB2 reset register
          (RCU_APB2RST)</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TIMER16RST</name>
              <description>TIMER16 reset</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPRST"/>
            </field>
           <field>
              <name>TIMER15RST</name>
              <description>TIMER15 reset</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPRST"/>
            </field>
          <field>
              <name>TIMER14RST</name>
              <description>TIMER14 reset</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPRST"/>
            </field>
           <field>
              <name>USART0RST</name>
              <description>USART0 Reset</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPRST"/>
            </field>
            <field>
              <name>SPI0RST</name>
              <description>SPI0 Reset</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPRST"/>
            </field>
         <field>
              <name>TIMER0RST</name>
              <description>TIMER0 reset</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPRST"/>
            </field>
           <field>
              <name>ADCRST</name>
              <description>ADC reset</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPRST"/>
            </field>
            <field>
              <name>CFGCMPRST</name>
              <description>System configuration and comparator reset</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CFGCMPRST</name><usage>read-write</usage><enumeratedValue><name>Reset</name><description>Reset the selected module</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
           </fields>
        </register>
        <register>
          <name>APB1RST</name>
          <displayName>APB1RST</displayName>
          <description>APB1 reset register
          (RCU_APB1RST)</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
           <field>
              <name>PMURST</name>
              <description>Power control reset</description>
              <bitOffset>28</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2RST"/>
            </field>
           <field>
              <name>I2C1RST</name>
              <description>I2C1 reset</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2RST"/>
            </field>
           <field>
              <name>I2C0RST</name>
              <description>I2C0 reset</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2RST"/>
            </field>
           <field>
              <name>USART1RST</name>
              <description>USART1 reset</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2RST"/>
            </field>
          <field>
              <name>SPI1RST</name>
              <description>SPI1 reset</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2RST"/>
            </field>
            <field>
              <name>WWDGTRST</name>
              <description>Window watchdog timer reset</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2RST"/>
            </field>
           <field>
              <name>TIMER13RST</name>
              <description>TIMER13 timer reset</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2RST"/>
            </field>
           <field>
              <name>TIMER5RST</name>
              <description>TIMER5 timer reset</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2RST"/>
            </field>
          <field>
              <name>TIMER2RST</name>
              <description>TIMER2 timer reset</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TIMER2RST</name><usage>read-write</usage><enumeratedValue><name>Reset</name><description>Reset the selected module</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>AHBEN</name>
          <displayName>AHBEN</displayName>
          <description>AHB enable register
          (RCU_AHBEN)</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000014</resetValue>
          <fields>
          <field>
              <name>PFEN</name>
              <description>GPIO port F clock enable</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="DMAEN"/>
            </field>
           <field>
              <name>PCEN</name>
              <description>GPIO port C clock enable</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="DMAEN"/>
            </field>
         <field>
              <name>PBEN</name>
              <description>GPIO port B clock enable</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="DMAEN"/>
            </field>
         <field>
              <name>PAEN</name>
              <description>GPIO port A clock enable</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="DMAEN"/>
            </field>
            <field>
              <name>CRCEN</name>
              <description>CRC clock enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="DMAEN"/>
            </field>
         <field>
              <name>FMCSPEN</name>
              <description>FMC clock during sleep mode enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="DMAEN"/>
            </field>
            <field>
              <name>SRAMSPEN</name>
              <description>SRAM interface clock during sleep mode enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="DMAEN"/>
            </field>
               <field>
              <name>DMAEN</name>
              <description>DMA clock enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DMAEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>The selected clock is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>The selected clock is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>APB2EN</name>
          <displayName>APB2EN</displayName>
          <description>APB2 enable register
          (RCU_APB2EN)</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
             <field>
              <name>DBGMCUEN</name>
              <description>DBGMCU clock enable</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPEN"/>
            </field>
            <field>
              <name>TIMER16EN</name>
              <description>TIMER16 timer clock enable</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPEN"/>
            </field>
           <field>
              <name>TIMER15EN</name>
              <description>TIMER15 timer clock enable</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPEN"/>
            </field>
          <field>
              <name>TIMER14EN</name>
              <description>TIMER14 timer clock enable</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPEN"/>
            </field>
         <field>
              <name>USART0EN</name>
              <description>USART0 clock enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPEN"/>
            </field>
            <field>
              <name>SPI0EN</name>
              <description>SPI0 clock enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPEN"/>
            </field>
          <field>
              <name>TIMER0EN</name>
              <description>TIMER0 timer clock enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPEN"/>
            </field>
          <field>
              <name>ADCEN</name>
              <description>ADC interface clock enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CFGCMPEN"/>
            </field>
            <field>
              <name>CFGCMPEN</name>
              <description>System configuration and comparator clock enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CFGCMPEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>The selected clock is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>The selected clock is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>APB1EN</name>
          <displayName>APB1EN</displayName>
          <description>APB1 enable register
          (RCU_APB1EN)</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
           <field>
              <name>PMUEN</name>
              <description>Power interface clock enable</description>
              <bitOffset>28</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2EN"/>
            </field>
           <field>
              <name>I2C1EN</name>
              <description>I2C1 clock enable</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2EN"/>
            </field>
           <field>
              <name>I2C0EN</name>
              <description>I2C0 clock enable</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2EN"/>
            </field>
          <field>
              <name>USART1EN</name>
              <description>USART1 clock enable</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2EN"/>
            </field>
            <field>
              <name>SPI1EN</name>
              <description>SPI1 clock enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2EN"/>
            </field>
           <field>
              <name>WWDGTEN</name>
              <description>Window watchdog timer clock enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2EN"/>
            </field>
           <field>
              <name>TIMER13EN</name>
              <description>TIMER13 timer clock enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2EN"/>
            </field>
            <field>
              <name>TIMER5EN</name>
              <description>TIMER5 timer clock enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER2EN"/>
            </field>
           <field>
              <name>TIMER2EN</name>
              <description>TIMER2 timer clock enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TIMER2EN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>The selected clock is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>The selected clock is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BDCTL</name>
          <displayName>BDCTL</displayName>
          <description>Backup domain control register
          (RCU_BDCTL)</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000018</resetValue>
          <fields>
          <field>
              <name>BKPRST</name>
              <description>Backup domain reset</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>BKPRST</name><usage>read-write</usage><enumeratedValue><name>NoReset</name><description>Reset not activated</description><value>0</value></enumeratedValue><enumeratedValue><name>Reset</name><description>Reset the entire RTC domain</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RTCEN</name>
              <description>RTC clock enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>RTCEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>RTC clock disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>RTC clock enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>RTCSRC</name>
              <description>RTC clock entry selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>RTCSRC</name><usage>read-write</usage><enumeratedValue><name>NoClock</name><description>No clock</description><value>0</value></enumeratedValue><enumeratedValue><name>LXTAL</name><description>LXTAL oscillator clock used as RTC clock</description><value>1</value></enumeratedValue><enumeratedValue><name>IRC40K</name><description>IRC40K oscillator clock used as RTC clock</description><value>2</value></enumeratedValue><enumeratedValue><name>HXTAL</name><description>HXTAL oscillator / 32 used as RTC clock</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LXTALDRI</name>
              <description>LXTAL drive capability</description>
              <bitOffset>3</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>LXTALDRI</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>Low driving capability</description><value>0</value></enumeratedValue><enumeratedValue><name>MediumLow</name><description>Medium low driving capability</description><value>1</value></enumeratedValue><enumeratedValue><name>MediumHigh</name><description>Medium high driving capability</description><value>2</value></enumeratedValue><enumeratedValue><name>High</name><description>High driving capability (reset value)</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
         <field>
              <name>LXTALBPS</name>
              <description>LXTAL bypass mode enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>LXTALBPS</name><usage>read-write</usage><enumeratedValue><name>NotBypassed</name><description>LXTAL crystal oscillator not bypassed</description><value>0</value></enumeratedValue><enumeratedValue><name>Bypassed</name><description>LXTAL crystal oscillator bypassed with external clock</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          <field>
              <name>LXTALSTB</name>
              <description>External low-speed oscillator stabilization</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>LXTALSTBR</name><usage>read</usage><enumeratedValue><name>NotReady</name><description>LXTAL oscillator not ready</description><value>0</value></enumeratedValue><enumeratedValue><name>Ready</name><description>LXTAL oscillator ready</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LXTALEN</name>
              <description>LXTAL enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>LXTALEN</name><usage>read-write</usage><enumeratedValue><name>Off</name><description>LXTAL oscillator Off</description><value>0</value></enumeratedValue><enumeratedValue><name>On</name><description>LXTAL oscillator On</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>RSTSCK</name>
          <displayName>RSTSCK</displayName>
          <description>Reset source /clock register
          (RCU_RSTSCK)</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <resetValue>0x0C000000</resetValue>
          <fields>
           <field>
              <name>LPRSTF</name>
              <description>Low-power reset flag</description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="V12RSTFR"/>
            </field>
          <field>
              <name>WWDGTRSTF</name>
              <description>Window watchdog timer reset flag</description>
              <bitOffset>30</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="V12RSTFR"/>
            </field>
         <field>
              <name>FWDGTRSTF</name>
              <description>Free Watchdog timer reset flag</description>
              <bitOffset>29</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="V12RSTFR"/>
            </field>
            <field>
              <name>SWRSTF</name>
              <description>Software reset flag</description>
              <bitOffset>28</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="V12RSTFR"/>
            </field>
           <field>
              <name>PORRSTF</name>
              <description>Power reset flag</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="V12RSTFR"/>
            </field>
           <field>
              <name>EPRSTF</name>
              <description>External PIN reset flag</description>
              <bitOffset>26</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="V12RSTFR"/>
            </field>
         <field>
              <name>OBLRSTF</name>
              <description>Option byte loader reset flag</description>
              <bitOffset>25</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues derivedFrom="V12RSTFR"/>
            </field>
            <field>
              <name>RSTFC</name>
              <description>Reset flag clear</description>
              <bitOffset>24</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>RSTFCW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clears reset flags</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>V12RSTF</name>
              <description>V12 domain Power reset flag</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>V12RSTFR</name><usage>read</usage><enumeratedValue><name>NoReset</name><description>No reset has occured</description><value>0</value></enumeratedValue><enumeratedValue><name>Reset</name><description>A reset has occured</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IRC40KSTB</name>
              <description>IRC40K stabilization</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>IRC40KSTBR</name><usage>read</usage><enumeratedValue><name>NotReady</name><description>IRC40K oscillator is not stable</description><value>0</value></enumeratedValue><enumeratedValue><name>Ready</name><description>IRC40K oscillator is stable</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>    
              <name>IRC40KEN</name>
              <description>IRC40K enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>IRC40KEN</name><usage>read-write</usage><enumeratedValue><name>Off</name><description>IRC40K oscillator disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>On</name><description>IRC40K oscillator enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>AHBRST</name>
          <displayName>AHBRST</displayName>
          <description>AHB reset register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PFRST</name>
              <description>GPIO port F reset</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PARST"/>
            </field>
           <field>
              <name>PCRST</name>
              <description>GPIO port C reset</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PARST"/>
            </field>
          <field>
              <name>PBRST</name>
              <description>GPIO port B reset</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="PARST"/>
            </field>
            <field>
              <name>PARST</name>
              <description>GPIO port A reset</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PARST</name><usage>read-write</usage><enumeratedValue><name>Reset</name><description>Reset the selected module</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CFG1</name>
          <displayName>CFG1</displayName>
          <description>Configuration register 1</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>HXTALPREDV</name>
              <description>CK_HXTAL or CK_IRC48M divider previous PLL</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>HXTALPREDV</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>HXTAL input to PLL not divided</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>HXTAL input to PLL divided by 2</description><value>1</value></enumeratedValue><enumeratedValue><name>Div3</name><description>HXTAL input to PLL divided by 3</description><value>2</value></enumeratedValue><enumeratedValue><name>Div4</name><description>HXTAL input to PLL divided by 4</description><value>3</value></enumeratedValue><enumeratedValue><name>Div5</name><description>HXTAL input to PLL divided by 5</description><value>4</value></enumeratedValue><enumeratedValue><name>Div6</name><description>HXTAL input to PLL divided by 6</description><value>5</value></enumeratedValue><enumeratedValue><name>Div7</name><description>HXTAL input to PLL divided by 7</description><value>6</value></enumeratedValue><enumeratedValue><name>Div8</name><description>HXTAL input to PLL divided by 8</description><value>7</value></enumeratedValue><enumeratedValue><name>Div9</name><description>HXTAL input to PLL divided by 9</description><value>8</value></enumeratedValue><enumeratedValue><name>Div10</name><description>HXTAL input to PLL divided by 10</description><value>9</value></enumeratedValue><enumeratedValue><name>Div11</name><description>HXTAL input to PLL divided by 11</description><value>10</value></enumeratedValue><enumeratedValue><name>Div12</name><description>HXTAL input to PLL divided by 12</description><value>11</value></enumeratedValue><enumeratedValue><name>Div13</name><description>HXTAL input to PLL divided by 13</description><value>12</value></enumeratedValue><enumeratedValue><name>Div14</name><description>HXTAL input to PLL divided by 14</description><value>13</value></enumeratedValue><enumeratedValue><name>Div15</name><description>HXTAL input to PLL divided by 15</description><value>14</value></enumeratedValue><enumeratedValue><name>Div16</name><description>HXTAL input to PLL divided by 16</description><value>15</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CFG2</name>
          <displayName>CFG2</displayName>
          <description>Configuration register 2</description>
          <addressOffset>0x30</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>ADCPSC</name>
              <description>Bit 2 of ADCPSC</description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>IRC28MDIV</name>
              <description>CK_IRC28M divider 2 or not</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
           <field>
              <name>ADCSEL</name>
              <description>CK_ADC clock source selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>USART0SEL</name>
              <description>CK_USART0 clock source selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>USART0SEL</name><usage>read-write</usage><enumeratedValue><name>APB2</name><description>APB2 selected as USART0 clock source</description><value>0</value></enumeratedValue><enumeratedValue><name>SYS</name><description>SYS selected as USART0 clock source</description><value>1</value></enumeratedValue><enumeratedValue><name>LXTAL</name><description>LXTAL selected as USART0 clock source</description><value>2</value></enumeratedValue><enumeratedValue><name>IRC8M</name><description>IRC8M selected as USART0 clock source</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
           </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>Control register 1</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000080</resetValue>
          <fields>
           <field>
              <name>IRC28MCALIB</name>
              <description>Internal 28M RC Oscillator calibration value register</description>
              <bitOffset>8</bitOffset>
              <bitWidth>8</bitWidth>
              <access>read-only</access>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
           <field>
              <name>IRC28MADJ</name>
              <description>Internal 28M RC Oscillator clock trim adjust value</description>
              <bitOffset>3</bitOffset>
              <bitWidth>5</bitWidth>
              <access>read-write</access>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
            <field>
              <name>IRC28MSTB</name>
              <description>IRC28M Internal 28M RC Oscillator stabilization Flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            <enumeratedValues><name>IRC28MSTBR</name><usage>read</usage><enumeratedValue><name>NotReady</name><description>IRC14M is not stable</description><value>0</value></enumeratedValue><enumeratedValue><name>Ready</name><description>IRC14M is stable</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IRC28MEN</name>
              <description>IRC28M Internal 28M RC oscillator Enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>IRC28MEN</name><usage>read-write</usage><enumeratedValue><name>Off</name><description>Clock Off</description><value>0</value></enumeratedValue><enumeratedValue><name>On</name><description>Clock On</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>VKEY</name>
          <displayName>VKEY</displayName>
          <description>Voltage key register</description>
          <addressOffset>0x100</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>KEY</name>
              <description>The key of RCU_DSV register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
              <access>write-only</access>
            <enumeratedValues><name>KEYW</name><usage>write</usage><enumeratedValue><name>Enable</name><description>Allow PDVSEL and DSV to be written</description><value>439041101</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>DSV</name>
          <displayName>DSV</displayName>
          <description>Deep-sleep mode voltage register</description>
          <addressOffset>0x134</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>DSLPVS</name>
              <description>Deep-sleep mode voltage select</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-write</access>
            <enumeratedValues><name>DSLPVS</name><usage>read-write</usage><enumeratedValue><name>V1_0</name><description>The core voltage is 1.0 V in deep-sleep mode</description><value>0</value></enumeratedValue><enumeratedValue><name>V0_9</name><description>The core voltage is 0.9 V in deep-sleep mode</description><value>1</value></enumeratedValue><enumeratedValue><name>V0_8</name><description>The core voltage is 0.8 V in deep-sleep mode</description><value>2</value></enumeratedValue><enumeratedValue><name>V1_2</name><description>The core voltage is 1.2 V in deep-sleep mode</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>RTC</name>
      <description>Real-time clock</description>
      <groupName>RTC</groupName>
      <baseAddress>0x40002800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>RTC</name>     
        <value>2</value>
      </interrupt>
      <registers>
        <register>
          <name>TIME</name>
          <displayName>TIME</displayName>
          <description>time register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PM</name>
              <description>AM/PM mark</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>HRT</name>
              <description>Hour tens in BCD code</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>HRU</name>
              <description>Hour units in BCD format</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>MNT</name>
              <description>Minute tens in BCD code</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>MNU</name>
              <description>Minute units in BCD code</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>SCT</name>
              <description>Second tens in BCD code</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>SCU</name>
              <description>Second units in BCD code</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>DATE</name>
          <displayName>DATE</displayName>
          <description>date register</description>
          <addressOffset>0x4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00002101</resetValue>
          <fields>
            <field>
              <name>YRT</name>
              <description>Year tens in BCD code</description>
              <bitOffset>20</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>YRU</name>
              <description>Year units in BCD code</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>DOW</name>
              <description>Days of the week</description>
              <bitOffset>13</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>MONT</name>
              <description>Month tens in BCD code</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>MONU</name>
              <description>Month units in BCD code</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>DAYT</name>
              <description>Date tens in BCD code</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>DAYU</name>
              <description>Date units in BCD code</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>control register</description>
          <addressOffset>0x8</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>COEN</name>
              <description>Calibration output enable</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
           <field>
              <name>OS</name>
              <description>Output selection</description>
              <bitOffset>21</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>OPOL</name>
              <description>Output polarity</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
           <field>
              <name>COS</name>
              <description>Calibration output
              selection</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>DSM</name>
              <description>Backup</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
           <field>
              <name>S1H</name>
              <description>Subtract 1 hour (winter time
              change)</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            </field>
            <field>
              <name>A1H</name>
              <description>Add 1 hour (summer time
              change)</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
              <access>write-only</access>
            </field>
            <field>
              <name>TSIE</name>
              <description>Time-stamp interrupt
              enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>ALRM0IE</name>
              <description>Alarm A interrupt enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>TSEN</name>
              <description>timestamp enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
           <field>
              <name>ALRM0EN</name>
              <description>Alarm A enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
           <field>
              <name>CS</name>
              <description>Hour format</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
           <field>
              <name>BPSHAD</name>
              <description>Bypass the shadow
              registers</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>REFEN</name>
              <description>RTC_REFIN reference clock detection
              enable (50 or 60 Hz)</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>TSEG</name>
              <description>Time-stamp event active
              edge</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>initialization and status
          register</description>
          <addressOffset>0xC</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000007</resetValue>
          <fields>
            <field>
              <name>SCPF</name>
              <description>Recalibration pending Flag</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>TP1F</name>
              <description>RTC_TAMP1 detection flag</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>TP0F</name>
              <description>RTC_TAMP0 detection flag</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>TSOVRF</name>
              <description>Time-stamp overflow flag</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
           <field>
              <name>TSF</name>
              <description>Time-stamp flag</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
           <field>
              <name>ALRM0F</name>
              <description>Alarm A flag</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>INITM</name>
              <description>Initialization mode</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>INITF</name>
              <description>Initialization flag</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>RSYNF</name>
              <description>Registers synchronization
              flag</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>YCM</name>
              <description>Initialization status flag</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
           <field>
              <name>SOPF</name>
              <description>Shift operation pending</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>ALRM0WF</name>
              <description>Alarm A write flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <displayName>PSC</displayName>
          <description>prescaler register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x007F00FF</resetValue>
          <fields>
            <field>
              <name>FACTOR_A</name>
              <description>Asynchronous prescaler
              factor</description>
              <bitOffset>16</bitOffset>
              <bitWidth>7</bitWidth>
            </field>
            <field>
              <name>FACTOR_S</name>
              <description>Synchronous prescaler
              factor</description>
              <bitOffset>0</bitOffset>
              <bitWidth>15</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ALRM0TD</name>
          <displayName>ALRM0TD</displayName>
          <description>alarm A register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>MSKD</name>
              <description>Alarm  date mask</description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DOWS</name>
              <description>Week day selection</description>
              <bitOffset>30</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DAYT</name>
              <description>Date tens in BCD format.</description>
              <bitOffset>28</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>DAYU</name>
              <description>Date units or day in BCD
              format.</description>
              <bitOffset>24</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>MSKH</name>
              <description>Alarm hours mask</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PM</name>
              <description>AM/PM notation</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>HRT</name>
              <description>Hour tens in BCD format.</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>HRU</name>
              <description>Hour units in BCD format.</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>MSKM</name>
              <description>Alarm  minutes mask</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>MNT</name>
              <description>Minute tens in BCD format.</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>MNU</name>
              <description>Minute units in BCD
              format.</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>MSKS</name>
              <description>Alarm  seconds mask</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SCT</name>
              <description>Second tens in BCD format.</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>SCU</name>
              <description>Second units in BCD
              format.</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>WPK</name>
          <displayName>WPK</displayName>
          <description>write protection register</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>WPK</name>
              <description>Write protection key</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>SS</name>
          <displayName>SS</displayName>
          <description>sub second register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SSC</name>
              <description>Sub second value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>SHIFTCTL</name>
          <displayName>SHIFTCTL</displayName>
          <description>shift control register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>A1S</name>
              <description>One second add</description>
              <bitOffset>31</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SFS</name>
              <description>Subtract a fraction of a
              second</description>
              <bitOffset>0</bitOffset>
              <bitWidth>15</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>TTS</name>
          <displayName>TTS</displayName>
          <description>timestamp time register</description>
          <addressOffset>0x30</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PM</name>
              <description>AM/PM mark</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>HRT</name>
              <description>Hour tens in BCD code</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>HRU</name>
              <description>Hour units in BCD code</description>
              <bitOffset>16</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>MNT</name>
              <description>Minute tens in BCD code</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>MNU</name>
              <description>Minute units in BCD code</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>SCT</name>
              <description>Second tens in BCD code</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>SCU</name>
              <description>Second units in BCD code</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>DTS</name>
          <displayName>DTS</displayName>
          <description>Date of time stamp register</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>DOW</name>
              <description>Week day units</description>
              <bitOffset>13</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>MONT</name>
              <description>Month tens in BCD code</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>MONU</name>
              <description>Month units in BCD code</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>DAYT</name>
              <description>Date tens in BCD code</description>
              <bitOffset>5</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>DAYU</name>
              <description>Date units in BCD code</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>SSTS</name>
          <displayName>SSTS</displayName>
          <description>time-stamp sub second register</description>
          <addressOffset>0x38</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SSC</name>
              <description>Sub second value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>HRFC</name>
          <displayName>HRFC</displayName>
          <description>High resolution frequency compensation register</description>
          <addressOffset>0x3C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>FREQI</name>
              <description>Increase RTC frequency by 488.5PPM</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CWND8</name>
              <description>Frequency compensation window 8 second selected</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CWND16</name>
              <description>Frequency compensation window 16 second selected</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CMSK</name>
              <description>Calibration mask number</description>
              <bitOffset>0</bitOffset>
              <bitWidth>9</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>TAMP</name>
          <displayName>TAMP</displayName>
          <description>tamper and alternate function configuration
          register</description>
          <addressOffset>0x40</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PC15MDE</name>
              <description>PC15 mode</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PC15VAL</name>
              <description>PC15 value</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PC14MDE</name>
              <description>PC14 mode</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PC14VAL</name>
              <description>PC14 value</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PC13MDE</name>
              <description>PC13 mode</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PC13VAL</name>
              <description>RTC_ALARM output type/PC13
              value</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DISPU</name>
              <description>RTC_TAMPx pull-up disable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PRCH</name>
              <description>RTC_TAMPx precharge
              duration</description>
              <bitOffset>13</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>FLT</name>
              <description>RTC_TAMPx filter count</description>
              <bitOffset>11</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>FREQ</name>
              <description>Tamper sampling frequency</description>
              <bitOffset>8</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>TPTS</name>
              <description>Activate timestamp on tamper detection
              event</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TP1EG</name>
              <description>Tamper 1 event trigger edge</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TP1EN</name>
              <description>Tamper 1 detection enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TPIE</name>
              <description>Tamper detection interrupt enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TP0EG</name>
              <description>Active level for RTC_TAMP1
              input</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TP0EN</name>
              <description>Tamper 0 event trigger edge</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>ALRM0SS</name>
          <displayName>ALRM0SS</displayName>
          <description>alarm 0 sub second register</description>
          <addressOffset>0x44</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>MSKSSC</name>
              <description>Mask control bit of SSC</description>
              <bitOffset>24</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>SSC</name>
              <description>Alarm sub second value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>15</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>BKP0</name>
          <displayName>BKP0</displayName>
          <description>backup register</description>
          <addressOffset>0x50</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>DATA</name>
              <description>BKP data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>BKP1</name>
          <displayName>BKP1</displayName>
          <description>backup register</description>
          <addressOffset>0x54</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>DATA</name>
              <description>BKP data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>BKP2</name>
          <displayName>BKP2</displayName>
          <description>backup register</description>
          <addressOffset>0x58</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>DATA</name>
              <description>BKP data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>BKP3</name>
          <displayName>BKP3</displayName>
          <description>backup register</description>
          <addressOffset>0x5C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>DATA</name>
              <description>BKP data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>BKP4</name>
          <displayName>BKP4</displayName>
          <description>backup register</description>
          <addressOffset>0x60</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>DATA</name>
              <description>BKP data</description>
              <bitOffset>0</bitOffset>
              <bitWidth>32</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>SPI0</name>
      <description>Serial peripheral interface</description>
      <groupName>SPI</groupName>
      <baseAddress>0x40013000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>SPI0</name>  
        <value>25</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>BDEN</name>
              <description>Bidirectional enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>BDOEN</name>
              <description>Bidirectional Transmit output enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CRCEN</name>
              <description>Hardware CRC calculation enable</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CRCNT</name>
              <description>CRC transfer next</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>FF16</name>
              <description>Data frame format</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RO</name>
              <description>Receive only</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SWNSSEN</name>
              <description>NSS Software Mode Selection</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SWNSS</name>
              <description>NSS Pin Selection In NSS Software Mode</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>LF</name>
              <description>LSB First Mode</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SPIEN</name>
              <description>SPI enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PSC</name>
              <description>Master Clock Prescaler Selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>MSTMOD</name>
              <description>Master Mode Enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CKPL</name>
              <description>Clock Polarity Selection</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CKPH</name>
              <description>Clock Phase Selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>control register 1</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TBEIE</name>
              <description>Transmit Buffer Empty Interrupt Enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RBNEIE</name>
              <description>Receive Buffer Not Empty Interrupt Enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TMOD</name>
              <description>SPI TI Mode Enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>NSSP</name>
              <description>SPI NSS Pulse Mode Enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>NSSDRV</name>
              <description>NSS output enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DMATEN</name>
              <description>Tx buffer DMA enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DMAREN</name>
              <description>Rx buffer DMA enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>status register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <resetValue>0x0002</resetValue>
          <fields>
            <field>
              <name>FERR</name>
              <description>Format Error</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>TRANS</name>
              <description>Transmitting On-going Bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>RXORERR</name>
              <description>Reception Overrun Error Bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>CONFERR</name>
              <description>SPI Configuration error</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>CRCERR</name>
              <description>SPI CRC Error Bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>TXURERR</name>
              <description>Transmission underrun error bit</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>I2SCH</name>
              <description>I2S channel side</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>TBE</name>
              <description>Transmit Buffer Empty</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>RBNE</name>
              <description>Receive Buffer Not Empty</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>DATA</name>
          <displayName>DATA</displayName>
          <description>data register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DATA</name>
              <description>Data register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CRCPOLY</name>
          <displayName>CPCPOLY</displayName>
          <description>CRC polynomial register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0007</resetValue>
          <fields>
            <field>
              <name>CRCPOLY</name>
              <description>CRC polynomial register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>RCRC</name>
          <displayName>RCRC</displayName>
          <description>RX CRC register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>RCRC</name>
              <description>RX RCR register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>TCRC</name>
          <displayName>TCRC</displayName>
          <description>TX CRC register</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TCRC</name>
              <description>Tx CRC register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>I2SCTL</name>
          <displayName>I2SCTL</displayName>
          <description>I2S configuration register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>I2SSEL</name>
              <description>I2S mode selection</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>I2SEN</name>
              <description>I2S Enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>I2SOPMOD</name>
              <description>I2S configuration mode</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>PCMSMOD</name>
              <description>PCM frame synchronization</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>I2SSTD</name>
              <description>I2S standard selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>CKPL</name>
              <description>Idle state clock polarity</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DTLEN</name>
              <description>Data length to be
              transferred</description>
              <bitOffset>1</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>CHLEN</name>
              <description>Channel length (number of bits per audio
              channel)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>I2SPSC</name>
          <displayName>I2SPSC</displayName>
          <description>I2S prescaler register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0002</resetValue>
          <fields>
            <field>
              <name>MCKOEN</name>
              <description>I2S_MCK output enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>OF</name>
              <description>Odd factor for the
              prescaler</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DIV</name>
              <description>Dividing factor for the prescaler</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>SPI1</name>
      <description>Serial Peripheral Interface 1</description>
      <baseAddress>0x40003800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>SPI1</name> 
        <value>26</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>BDEN</name>
              <description>Bidirectional enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>BDOEN</name>
              <description>Bidirectional Transmit output enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CRCEN</name>
              <description>Hardware CRC calculation enable</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CRCNT</name>
              <description>CRC transfer next</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CRCL</name>
              <description>CRC length</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RO</name>
              <description>Receive only</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SWNSSEN</name>
              <description>NSS Software Mode Selection</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SWNSS</name>
              <description>NSS Pin Selection In NSS Software Mode</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>LF</name>
              <description>LSB First Mode</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SPIEN</name>
              <description>SPI enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PSC</name>
              <description>Master Clock Prescaler Selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>3</bitWidth>
            </field>
            <field>
              <name>MSTMOD</name>
              <description>Master Mode Enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CKPL</name>
              <description>Clock Polarity Selection</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CKPH</name>
              <description>Clock Phase Selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>control register 1</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TXDMA_ODD</name>
              <description>Odd bytes in TX DMA channel</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RXDMA_ODD</name>
              <description>Odd bytes in RX DMA channel</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>BYTEN</name>
              <description>Byte access enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
             <field>
              <name>DZ</name>
              <description>Date size</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            </field>
            <field>
              <name>TBEIE</name>
              <description>Transmit Buffer Empty Interrupt Enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RBNEIE</name>
              <description>Receive Buffer Not Empty Interrupt Enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TMOD</name>
              <description>SPI TI Mode Enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>NSSP</name>
              <description>SPI NSS Pulse Mode Enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>NSSDRV</name>
              <description>NSS output enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DMATEN</name>
              <description>Tx buffer DMA enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DMAREN</name>
              <description>Rx buffer DMA enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>status register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <resetValue>0x0002</resetValue>
          <fields>
            <field>
              <name>TXLVL</name>
              <description>Tx FIFO level</description>
              <bitOffset>11</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>RXLVL</name>
              <description>Rx FIFO level</description>
              <bitOffset>9</bitOffset>
              <bitWidth>2</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>FERR</name>
              <description>Format Error</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>TRANS</name>
              <description>Transmitting On-going Bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>RXORERR</name>
              <description>Reception Overrun Error Bit</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>CONFERR</name>
              <description>SPI Configuration error</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>CRCERR</name>
              <description>SPI CRC Error Bit</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>TBE</name>
              <description>Transmit Buffer Empty</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>RBNE</name>
              <description>Receive Buffer Not Empty</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>DATA</name>
          <displayName>DATA</displayName>
          <description>data register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DATA</name>
              <description>Data register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CRCPOLY</name>
          <displayName>CPCPOLY</displayName>
          <description>CRC polynomial register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0007</resetValue>
          <fields>
            <field>
              <name>CRCPOLY</name>
              <description>CRC polynomial register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>RCRC</name>
          <displayName>RCRC</displayName>
          <description>RX CRC register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>RCRC</name>
              <description>RX RCR register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>TCRC</name>
          <displayName>TCRC</displayName>
          <description>TX CRC register</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TCRC</name>
              <description>Tx CRC register</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>I2SCTL</name>
          <displayName>I2SCTL</displayName>
          <description>I2S configuration register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>I2SSEL</name>
              <description>I2S mode selection</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>I2SEN</name>
              <description>I2S Enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>I2SOPMOD</name>
              <description>I2S configuration mode</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>PCMSMOD</name>
              <description>PCM frame synchronization</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>I2SSTD</name>
              <description>I2S standard selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>CKPL</name>
              <description>Idle state clock polarity</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DTLEN</name>
              <description>Data length to be
              transferred</description>
              <bitOffset>1</bitOffset>
              <bitWidth>2</bitWidth>
            </field>
            <field>
              <name>CHLEN</name>
              <description>Channel length (number of bits per audio
              channel)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>I2SPSC</name>
          <displayName>I2SPSC</displayName>
          <description>I2S prescaler register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0002</resetValue>
          <fields>
            <field>
              <name>MCKOEN</name>
              <description>I2S_MCK output enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>OF</name>
              <description>Odd factor for the
              prescaler</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>DIV</name>
              <description>Dividing factor for the prescaler</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>QCTL</name>
          <displayName>QCTL</displayName>
          <description>SPI quad wird control register</description>
          <addressOffset>0x80</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0000</resetValue>
          <fields>
            <field>
              <name>IO23_DRV</name>
              <description>Drive IO2 and IO3 enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>QRD</name>
              <description>Quad wire read select</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>QMOD</name>
              <description>Quad wire mode enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>

    <peripheral>
      <name>SYSCFG</name>
      <description>System configuration controller</description>
      <groupName>SYSCFG</groupName>
      <baseAddress>0x40010000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x0400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CFG0</name>
          <displayName>CFG0</displayName>
          <description>System configuration register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>PB9_HCCE</name>
              <description>PB9 pin high current capability enable</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PB9_HCCE</name><usage>read-write</usage><enumeratedValue><name>LowCurrent</name><description>High current capability is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>HighCurrent</name><description>High current capability is enabled, and speed control is bypassed</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TIMER16_DMA_RMP</name>
              <description>Timer 16 DMA request remapping enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TIMER16_DMA_RMP</name><usage>read-write</usage><enumeratedValue><name>Channel0</name><description>Timer 16 DMA requests are mapped to DMA channel 0</description><value>0</value></enumeratedValue><enumeratedValue><name>Channel1</name><description>Timer 16 DMA requests are remapped to DMA channel 1</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TIMER15_DMA_RMP</name>
              <description>Timer 15 DMA request remapping enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TIMER15_DMA_RMP</name><usage>read-write</usage><enumeratedValue><name>Channel2</name><description>Timer 15 DMA requests are mapped to DMA channel 2</description><value>0</value></enumeratedValue><enumeratedValue><name>Channel3</name><description>Timer 15 DMA requests are remapped to DMA channel 3</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>USART0_RX_DMA_RMP</name>
              <description>USART0_RX DMA request remapping enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>USART0_RX_DMA_RMP</name><usage>read-write</usage><enumeratedValue><name>Channel2</name><description>USART0 RX DMA requests are mapped to DMA channel 2</description><value>0</value></enumeratedValue><enumeratedValue><name>Channel4</name><description>USART0 RX DMA requests are remapped to DMA channel 4</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>USART0_TX_DMA_RMP</name>
              <description>USART0_TX DMA request remapping enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>USART0_TX_DMA_RMP</name><usage>read-write</usage><enumeratedValue><name>Channel1</name><description>USART0 TX DMA requests are mapped to DMA channel 1</description><value>0</value></enumeratedValue><enumeratedValue><name>Channel3</name><description>USART0 TX DMA requests are remapped to DMA channel 3</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ADC_DMA_RMP</name>
              <description>ADC DMA request remapping enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ADC_DMA_RMP</name><usage>read-write</usage><enumeratedValue><name>Channel0</name><description>ADC DMA requests are mapped to DMA channel 0</description><value>0</value></enumeratedValue><enumeratedValue><name>Channel1</name><description>ADC DMA requests are remapped to DMA channel 1</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
             <field>
              <name>PA11_PA12_RMP</name>
              <description>PA11 and PA12 remapping bit for small packages</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>BOOT_MODE</name>
              <description>Boot mode</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
             <access>read-only</access>
            <enumeratedValues><name>BOOT_MODE</name><usage>read-write</usage><enumeratedValue><name>Flash</name><description>Boot from main flash</description><value>0</value></enumeratedValue><enumeratedValue><name>SystemMemory</name><description>Boot from system memory</description><value>1</value></enumeratedValue><enumeratedValue><name>SRAM</name><description>Boot from embedded SRAM</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>EXTISS0</name>
          <displayName>EXTISS0</displayName>
          <description>EXTI sources selection register
          0</description>
          <addressOffset>0x8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>EXTI3_SS</name>
              <description>EXTI 3 sources selection</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI3_SS</name><usage>read-write</usage><enumeratedValue><name>PA3</name><description>PA3 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB3</name><description>PB3 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC3</name><description>PC3 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI2_SS</name>
              <description>EXTI 2 sources selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI2_SS</name><usage>read-write</usage><enumeratedValue><name>PA2</name><description>PA2 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB2</name><description>PB2 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC2</name><description>PC2 pin</description><value>2</value></enumeratedValue><enumeratedValue><name>PD2</name><description>PD2 pin</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI1_SS</name>
              <description>EXTI 1 sources selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI1_SS</name><usage>read-write</usage><enumeratedValue><name>PA1</name><description>PA1 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB1</name><description>PB1 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC1</name><description>PC1 pin</description><value>2</value></enumeratedValue><enumeratedValue><name>PF1</name><description>PF1 pin</description><value>5</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI0_SS</name>
              <description>EXTI 0 sources selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI0_SS</name><usage>read-write</usage><enumeratedValue><name>PA0</name><description>PA0 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB0</name><description>PB0 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC0</name><description>PC0 pin</description><value>2</value></enumeratedValue><enumeratedValue><name>PF0</name><description>PF0 pin</description><value>5</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>EXTISS1</name>
          <displayName>EXTISS1</displayName>
          <description>EXTI sources selection register
          1</description>
          <addressOffset>0xC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>EXTI7_SS</name>
              <description>EXTI 7 sources selection</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI7_SS</name><usage>read-write</usage><enumeratedValue><name>PA7</name><description>PA7 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB7</name><description>PB7 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC7</name><description>PC7 pin</description><value>2</value></enumeratedValue><enumeratedValue><name>PF7</name><description>PF7 pin</description><value>5</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI6_SS</name>
              <description>EXTI 6 sources selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI6_SS</name><usage>read-write</usage><enumeratedValue><name>PA6</name><description>PA6 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB6</name><description>PB6 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC6</name><description>PC6 pin</description><value>2</value></enumeratedValue><enumeratedValue><name>PF6</name><description>PF6 pin</description><value>5</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI5_SS</name>
              <description>EXTI 5 sources selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI5_SS</name><usage>read-write</usage><enumeratedValue><name>PA5</name><description>PA5 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB5</name><description>PB5 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC5</name><description>PC5 pin</description><value>2</value></enumeratedValue><enumeratedValue><name>PF5</name><description>PF5 pin</description><value>5</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI4_SS</name>
              <description>EXTI 4 sources selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI4_SS</name><usage>read-write</usage><enumeratedValue><name>PA4</name><description>PA4 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB4</name><description>PB4 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC4</name><description>PC4 pin</description><value>2</value></enumeratedValue><enumeratedValue><name>PF4</name><description>PF4 pin</description><value>5</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>EXTISS2</name>
          <displayName>EXTISS2</displayName>
          <description>EXTI sources selection register
          2</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>EXTI11_SS</name>
              <description>EXTI 11 sources selection</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI11_SS</name><usage>read-write</usage><enumeratedValue><name>PA11</name><description>PA11 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB11</name><description>PB11 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC11</name><description>PC11 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI10_SS</name>
              <description>EXTI 10 sources selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI10_SS</name><usage>read-write</usage><enumeratedValue><name>PA10</name><description>PA10 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB10</name><description>PB10 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC10</name><description>PC10 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI9_SS</name>
              <description>EXTI 9 sources selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI9_SS</name><usage>read-write</usage><enumeratedValue><name>PA9</name><description>PA9 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB9</name><description>PB9 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC9</name><description>PC9 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI8_SS</name>
              <description>EXTI 8 sources selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI8_SS</name><usage>read-write</usage><enumeratedValue><name>PA8</name><description>PA8 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB8</name><description>PB8 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC8</name><description>PC8 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>EXTISS3</name>
          <displayName>EXTISS3</displayName>
          <description>EXTI sources selection register
          3</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>EXTI15_SS</name>
              <description>EXTI 15 sources selection</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI15_SS</name><usage>read-write</usage><enumeratedValue><name>PA15</name><description>PA15 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB15</name><description>PB15 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC15</name><description>PC15 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI14_SS</name>
              <description>EXTI 14 sources selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI14_SS</name><usage>read-write</usage><enumeratedValue><name>PA14</name><description>PA14 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB14</name><description>PB14 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC14</name><description>PC14 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI13_SS</name>
              <description>EXTI 13 sources selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI13_SS</name><usage>read-write</usage><enumeratedValue><name>PA13</name><description>PA13 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB13</name><description>PB13 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC13</name><description>PC13 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EXTI12_SS</name>
              <description>EXTI 12 sources selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>EXTI12_SS</name><usage>read-write</usage><enumeratedValue><name>PA12</name><description>PA12 pin</description><value>0</value></enumeratedValue><enumeratedValue><name>PB12</name><description>PB12 pin</description><value>1</value></enumeratedValue><enumeratedValue><name>PC12</name><description>PC12 pin</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CFG2</name>
          <displayName>CFG2</displayName>
          <description>System configuration register 2</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>SRAM_PCEF</name>
              <description>SRAM parity check error flag</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SRAM_PCEFR</name><usage>read</usage><enumeratedValue><name>NoError</name><description>No SRAM parity check error detected</description><value>0</value></enumeratedValue><enumeratedValue><name>Error</name><description>SRAM parity check error detected</description><value>1</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>SRAM_PCEFW</name><usage>write</usage><enumeratedValue><name>Clear</name><description>Clear error flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LVD_LOCK</name>
              <description>LVD lock</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LVD_LOCK</name><usage>read-write</usage><enumeratedValue><name>Unlocked</name><description>The LVD interrupt is disconnected from the break input</description><value>0</value></enumeratedValue><enumeratedValue><name>Locked</name><description>The LVD interrupt is connected to the break input</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SRAM_PARITY_ERROR_LOCK</name>
              <description>SRAM parity check error lock</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SRAM_PARITY_ERROR_LOCK</name><usage>read-write</usage><enumeratedValue><name>Unlocked</name><description>The SRAM parity check error is disconnected from the break input</description><value>0</value></enumeratedValue><enumeratedValue><name>Locked</name><description>The SRAM parity check error is connected to the break input</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LOCKUP_LOCK</name>
              <description>Cortex-M4 LOCKUP output lock</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LOCKUP_LOCK</name><usage>read-write</usage><enumeratedValue><name>Unlocked</name><description>The Cortex-M3 LOCKUP output is disconnected from the break input</description><value>0</value></enumeratedValue><enumeratedValue><name>Locked</name><description>The Cortex-M3 LOCKUP output is connected to the break input</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CPU_IRQ_LAT</name>
          <displayName>CPU_IRQ_LAT</displayName>
          <description>IRQ Latency register</description>
          <addressOffset>0x100</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>IRQ_LATENCY</name>
              <description>specifies the minimum number of cycles between an interrupt </description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIMER0</name>
      <description>Advanced-timers</description>
      <groupName>TIMER</groupName>
      <baseAddress>0x40012C00</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIMER0_BRK_UP_TRG_COM</name>  
        <value>13</value>
      </interrupt>
      <interrupt>
        <name>TIMER0_CC</name>
        <value>14</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CKDIV</name>
              <description>Clock division</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CKDIV</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>t_DTS = t_CK_INT</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>t_DTS = 2 &#215; t_CK_INT</description><value>1</value></enumeratedValue><enumeratedValue><name>Div4</name><description>t_DTS = 4 &#215; t_CK_INT</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ARSE</name>
              <description>Auto-reload preload enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ARSE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>The shadow register for CAR is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>The shadow register for CAR is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CAM</name>
              <description>Center-aligned mode
              selection</description>
              <bitOffset>5</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CAM</name><usage>read-write</usage><enumeratedValue><name>EdgeAligned</name><description>The counter counts up or down depending on the direction bit</description><value>0</value></enumeratedValue><enumeratedValue><name>CenterAlignedCountingDown</name><description>The counter counts up and down alternatively. Output compare interrupt flags are set only when the counter is counting down.</description><value>1</value></enumeratedValue><enumeratedValue><name>CenterAlignedCountingUp</name><description>The counter counts up and down alternatively. Output compare interrupt flags are set only when the counter is counting up.</description><value>2</value></enumeratedValue><enumeratedValue><name>CenterAlignedCountingUpDown</name><description>The counter counts up and down alternatively. Output compare interrupt flags are set both when the counter is counting up or down.</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DIR</name>
              <description>Direction</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DIR</name><usage>read-write</usage><enumeratedValue><name>Up</name><description>Counter used as upcounter</description><value>0</value></enumeratedValue><enumeratedValue><name>Down</name><description>Counter used as downcounter</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SPM</name>
              <description>One-pulse mode</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SPM</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Counter is not stopped at update event</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Counter stops counting at the next update event (clearing the CEN bit)</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPS</name>
              <description>Update request source</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPS</name><usage>read-write</usage><enumeratedValue><name>AnyEvent</name><description>Any of counter overflow/underflow, setting UPG, or update through slave mode, generates an update interrupt or DMA request</description><value>0</value></enumeratedValue><enumeratedValue><name>CounterOnly</name><description>Only counter overflow/underflow generates an update interrupt or DMA request</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPDIS</name>
              <description>Update disable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPDIS</name><usage>read-write</usage><enumeratedValue><name>Enabled</name><description>Update event enabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Disabled</name><description>Update event disabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CEN</name>
              <description>Counter enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Counter disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Counter enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>control register 1</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>ISO3</name>
              <description>Idle state of channel 3 output</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISO0"/>
            </field>
            <field>
              <name>ISO2N</name>
              <description>Idle state of channel 2 complementary output</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISO0N"/>
            </field>
            <field>
              <name>ISO2</name>
              <description>Idle state of channel 2 output</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISO0"/>
            </field>
            <field>
              <name>ISO1N</name>
              <description>Idle state of channel 1 complementary output</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="ISO0N"/>
            </field>
            <field>
              <name>ISO1</name>
              <description>Idle state of channel 1 output</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.ISO0.ISO0"/>
            </field>
            <field>
              <name>ISO0N</name>
              <description>Idle state of channel 0 complementary output</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ISO0N</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>CHn_ON=0 when POEN=0</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>CHn_ON=1 when POEN=0</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ISO0</name>
              <description>Idle state of channel 0 output</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ISO0</name><usage>read-write</usage><enumeratedValue><name>Low</name><description>CHn_O=0 (after a dead-time if CHn_ON is implemented) when POEN=0</description><value>0</value></enumeratedValue><enumeratedValue><name>High</name><description>CHn_O=1 (after a dead-time if CHn_ON is implemented) when POEN=0</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TI0S</name>
              <description>Channel 0 trigger input selection</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TI0S</name><usage>read-write</usage><enumeratedValue><name>Normal</name><description>The CH0 pin input is selected as channel 0 trigger input</description><value>0</value></enumeratedValue><enumeratedValue><name>XOR</name><description>The XOR of CH0, CH1 and CH2 pins are selected as channel 0 trigger input</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MMC</name>
              <description>Master mode control</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>MMC</name><usage>read-write</usage><enumeratedValue><name>Reset</name><description>Use UPG bit from SWEVG register</description><value>0</value></enumeratedValue><enumeratedValue><name>Enable</name><description>Use CEN bit from CTL0 register</description><value>1</value></enumeratedValue><enumeratedValue><name>Update</name><description>Use the update event</description><value>2</value></enumeratedValue><enumeratedValue><name>CaptureComparePulse</name><description>The trigger output send a positive pulse when a capture or a compare match occurred in channel 0</description><value>3</value></enumeratedValue><enumeratedValue><name>CompareO0C</name><description>O0CPRE signal is used as trigger output</description><value>4</value></enumeratedValue><enumeratedValue><name>CompareO1C</name><description>O1CPRE signal is used as trigger output</description><value>5</value></enumeratedValue><enumeratedValue><name>CompareO2C</name><description>O2CPRE signal is used as trigger output</description><value>6</value></enumeratedValue><enumeratedValue><name>CompareO3C</name><description>O3CPRE signal is used as trigger output</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DMAS</name>
              <description>DMA request source selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DMAS</name><usage>read-write</usage><enumeratedValue><name>OnCompare</name><description>CCx DMA request sent when CCx event occurs</description><value>0</value></enumeratedValue><enumeratedValue><name>OnUpdate</name><description>CCx DMA request sent when update event occurs</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CCUC</name>
              <description>Commutation control shadow register update control</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CCUC</name><usage>read-write</usage><enumeratedValue><name>Default</name><description>Capture/compare are updated only by setting the CMTG bit</description><value>0</value></enumeratedValue><enumeratedValue><name>WithRisingEdge</name><description>Capture/compare are updated by setting the CMTG bit or when an rising edge occurs on TRGI</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CCSE</name>
              <description>Commutation control shadow enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CCSE</name><usage>read-write</usage><enumeratedValue><name>NotPreloaded</name><description>The shadow registers for CHxEN, CHxNEN and CHxCOMCTL bits are disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Preloaded</name><description>The shadow registers for CHxEN, CHxNEN and CHxCOMCTL bits are enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>SMCFG</name>
          <displayName>SMCFG</displayName>
          <description>slave mode configuration register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>ETP</name>
              <description>External trigger polarity</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ETP</name><usage>read-write</usage><enumeratedValue><name>NotInverted</name><description>ETI is noninverted, active at high level or rising edge</description><value>0</value></enumeratedValue><enumeratedValue><name>Inverted</name><description>ETI is inverted, active at low level or falling edge</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SMC1</name>
              <description>Part of SMC for enable External clock mode1</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SMC1</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>External clock mode 1 disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>External clock mode 1 enabled. The counter is clocked by any active edge on the ETIF signal.</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ETPSC</name>
              <description>External trigger prescaler</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>ETPSC</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>External trigger prescaler disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>ETI frequency divided by 2</description><value>1</value></enumeratedValue><enumeratedValue><name>Div4</name><description>ETI frequency divided by 4</description><value>2</value></enumeratedValue><enumeratedValue><name>Div8</name><description>ETI frequency divided by 8</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ETFC</name>
              <description>External trigger filter</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>ETFC</name><usage>read-write</usage><enumeratedValue><name>NoFilter</name><description>Filter disabled. fSAMP=fDTS, N=1</description><value>0</value></enumeratedValue><enumeratedValue><name>TimerCk_N2</name><description>fSAMP=fTIMER_CK, N=2</description><value>1</value></enumeratedValue><enumeratedValue><name>TimerCk_N4</name><description>fSAMP=fTIMER_CK, N=4</description><value>2</value></enumeratedValue><enumeratedValue><name>TimerCk_N8</name><description>fSAMP=fTIMER_CK, N=8</description><value>3</value></enumeratedValue><enumeratedValue><name>FDTS_Div2_N6</name><description>fSAMP=fDTS/2, N=6</description><value>4</value></enumeratedValue><enumeratedValue><name>FDTS_Div2_N8</name><description>fSAMP=fDTS/2, N=8</description><value>5</value></enumeratedValue><enumeratedValue><name>FDTS_Div4_N6</name><description>fSAMP=fDTS/4, N=6</description><value>6</value></enumeratedValue><enumeratedValue><name>FDTS_Div4_N8</name><description>fSAMP=fDTS/4, N=8</description><value>7</value></enumeratedValue><enumeratedValue><name>FDTS_Div8_N6</name><description>fSAMP=fDTS/8, N=6</description><value>8</value></enumeratedValue><enumeratedValue><name>FDTS_Div8_N8</name><description>fSAMP=fDTS/8, N=8</description><value>9</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N5</name><description>fSAMP=fDTS/16, N=5</description><value>10</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N6</name><description>fSAMP=fDTS/16, N=6</description><value>11</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N8</name><description>fSAMP=fDTS/16, N=8</description><value>12</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N5</name><description>fSAMP=fDTS/32, N=5</description><value>13</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N6</name><description>fSAMP=fDTS/32, N=6</description><value>14</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N8</name><description>fSAMP=fDTS/32, N=8</description><value>15</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MSM</name>
              <description>Master/Slave mode</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>MSM</name><usage>read-write</usage><enumeratedValue><name>NoSync</name><description>No action</description><value>0</value></enumeratedValue><enumeratedValue><name>Sync</name><description>The effect of an event on the trigger input (TRGI) is delayed to allow a perfect synchronization between the current timer and its slaves (through TRGO). It is useful if we want to synchronize several timers on a single external event.</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TRGS</name>
              <description>Trigger selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>TRGS</name><usage>read-write</usage><enumeratedValue><name>ITI0</name><description>Internal Trigger 0 (ITI0)</description><value>0</value></enumeratedValue><enumeratedValue><name>ITI1</name><description>Internal Trigger 1 (ITI1)</description><value>1</value></enumeratedValue><enumeratedValue><name>ITI2</name><description>Internal Trigger 2 (ITI2)</description><value>2</value></enumeratedValue><enumeratedValue><name>CI0F_ED</name><description>CI0 Edge Detector (CI0F_ED)</description><value>4</value></enumeratedValue><enumeratedValue><name>CI0FE0</name><description>Filtered Timer Input 0 (CI0FE0)</description><value>5</value></enumeratedValue><enumeratedValue><name>CI1FE1</name><description>Filtered Timer Input 1 (CI1FE1)</description><value>6</value></enumeratedValue><enumeratedValue><name>ETIFP</name><description>External Trigger input (ETIFP)</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OCRC</name>
              <description>Trigger selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OCRC</name><usage>read-write</usage><enumeratedValue><name>Input</name><description>OCPRE_CLR_INT is connected to the OCPRE_CLR input</description><value>0</value></enumeratedValue><enumeratedValue><name>ETIF</name><description>OCPRE_CLR_INT is connected to ETIF</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SMC</name>
              <description>Slave mode selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>SMC</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Slave mode disabled - if CEN=1 then the prescaler is clocked directly by the internal clock.</description><value>0</value></enumeratedValue><enumeratedValue><name>QuadratureDecoderMode0</name><description>Quadrature decoder mode 0 - Counter counts up/down on CI1FE1 edge depending on CI0FE0 level.</description><value>1</value></enumeratedValue><enumeratedValue><name>QuadratureDecoderMode1</name><description>Quadrature decoder mode 1 - Counter counts up/down on CI0FE0 edge depending on CI1FE1 level.</description><value>2</value></enumeratedValue><enumeratedValue><name>QuadratureDecoderMode2</name><description>Quadrature decoder mode 2 - Counter counts up/down on both CI0FE0 and CI1FE1 edges depending on the level of the other input.</description><value>3</value></enumeratedValue><enumeratedValue><name>RestartMode</name><description>Restart Mode - Rising edge of the selected trigger input (TRGI) reinitializes the counter and generates an update of the registers.</description><value>4</value></enumeratedValue><enumeratedValue><name>PauseMode</name><description>Pause Mode - The counter clock is enabled when the trigger input (TRGI) is high. The counter stops (but is not reset) as soon as the trigger becomes low. Both start and stop of the counter are controlled.</description><value>5</value></enumeratedValue><enumeratedValue><name>EventMode</name><description>Event Mode - The counter starts at a rising edge of the trigger TRGI (but it is not reset). Only the start of the counter is controlled.</description><value>6</value></enumeratedValue><enumeratedValue><name>ExternalClockMode</name><description>External Clock Mode 0 - Rising edges of the selected trigger (TRGI) clock the counter.</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAINTEN</name>
          <displayName>DMAINTEN</displayName>
          <description>DMA/Interrupt enable register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TRGDEN</name>
              <description>Trigger DMA request enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Trigger DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Trigger DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMTDEN</name>
              <description>Reserved</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMTDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Commutation DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Commutation DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH3DEN</name>
              <description>Capture/Compare 3 DMA request
              enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0DEN"/>
            </field>
            <field>
              <name>CH2DEN</name>
              <description>Capture/Compare 2 DMA request
              enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0DEN"/>
            </field>
            <field>
              <name>CH1DEN</name>
              <description>Capture/Compare 1 DMA request
              enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0DEN"/>
            </field>
            <field>
              <name>CH0DEN</name>
              <description>Capture/Compare 0 DMA request
              enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0DEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Capture/compare DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Capture/compare DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPDEN</name>
              <description>Update DMA request enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Update DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Update DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BRKIE</name>
              <description>Break interrupt enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BRKIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Break interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Break interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TRGIE</name>
              <description>Trigger interrupt enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Trigger interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Trigger interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMTIE</name>
              <description>COM interrupt enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMTIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Commutation interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Commutation interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH3IE</name>
              <description>Capture/Compare 3 interrupt
              enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0IE"/>
            </field>
            <field>
              <name>CH2IE</name>
              <description>Capture/Compare 2 interrupt
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0IE"/>
            </field>
            <field>
              <name>CH1IE</name>
              <description>Capture/Compare 1 interrupt
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0IE"/>
            </field>
            <field>
              <name>CH0IE</name>
              <description>Capture/Compare 0 interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0IE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Capture/compare interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Capture/compare interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPIE</name>
              <description>Update interrupt enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Update interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Update interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>INTF</name>
          <displayName>INTF</displayName>
          <description>status register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3OF</name>
              <description>Channel 3 over capture flag</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0OF"/>
            </field>
            <field>
              <name>CH2OF</name>
              <description>Channel 2 over capture flag</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0OF"/>
            </field>
            <field>
              <name>CH1OF</name>
              <description>Channel 1 over capture flag</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0OF"/>
            </field>
            <field>
              <name>CH0OF</name>
              <description>Channel 0 over capture flag</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0OF</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>No over capture occurred</description><value>0</value></enumeratedValue><enumeratedValue><name>OverCapture</name><description>A capture event occured while CHnIF was already set</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BRKIF</name>
              <description>Break interrupt flag</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BRKIF</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>No active level break detected</description><value>0</value></enumeratedValue><enumeratedValue><name>Break</name><description>Active level detected</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TRGIF</name>
              <description>Trigger interrupt flag</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGIF</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>No trigger event occured</description><value>0</value></enumeratedValue><enumeratedValue><name>Triggered</name><description>Trigger event occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMTIF</name>
              <description>COM interrupt flag</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMTIF</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>No channel commutation event occured</description><value>0</value></enumeratedValue><enumeratedValue><name>Commutation</name><description>Channel commutation event occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH3IF</name>
              <description>Capture/Compare 3 interrupt
              flag</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0IF"/>
            </field>
            <field>
              <name>CH2IF</name>
              <description>Capture/Compare 2 interrupt
              flag</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0IF"/>
            </field>
            <field>
              <name>CH1IF</name>
              <description>Capture/Compare 1 interrupt
              flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0IF"/>
            </field>
            <field>
              <name>CH0IF</name>
              <description>Capture/compare 0 interrupt
              flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0IF</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>No capture or compare interrupt occurred</description><value>0</value></enumeratedValue><enumeratedValue><name>CaptureCompare</name><description>A capture or compare event occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPIF</name>
              <description>Update interrupt flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPIF</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>No update interrupt occurred</description><value>0</value></enumeratedValue><enumeratedValue><name>UpdatePending</name><description>Update interrupt pending.</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>SWEVG</name>
          <displayName>SWEVG</displayName>
          <description>Software event generation register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>BRKG</name>
              <description>Break event generation</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BRKG</name><usage>read-write</usage><enumeratedValue><name>Break</name><description>Generate a break event</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TRGG</name>
              <description>Trigger event generation</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGG</name><usage>read-write</usage><enumeratedValue><name>Trigger</name><description>Generate a trigger event</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMTG</name>
              <description>Channel commutation event generation</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CMTG</name><usage>read-write</usage><enumeratedValue><name>Update</name><description>Generate a channel commutation event, updating capture/compare control registers based on the value of CCSE</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH3G</name>
              <description>Channel 3's capture or compare event generation</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0G"/>
            </field>
            <field>
              <name>CH2G</name>
              <description>Channel 2's capture or compare event generation</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0G"/>
            </field>
            <field>
              <name>CH1G</name>
              <description>Channel 1's capture or compare event generation</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0G"/>
            </field>
            <field>
              <name>CH0G</name>
              <description>Channel 0's capture or compare event generation</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0G</name><usage>read-write</usage><enumeratedValue><name>CaptureCompare</name><description>Generate a capture or compare event</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPG</name>
              <description>Update event generation</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPG</name><usage>read-write</usage><enumeratedValue><name>Update</name><description>Re-initializes the timer counter and generates an update of the registers.</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Output</name>
          <displayName>CHCTL0_Output</displayName>
          <description>capture/compare mode register (output
          mode)</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH1COMCEN</name>
              <description>Channel 1 output compare clear enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMCEN.CH0COMCEN"/>
            </field>
            <field>
              <name>CH1COMCTL</name>
              <description>Channel 1 compare output control</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH1COMSEN</name>
              <description>Channel 1 output compare shadow enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH1COMFEN</name>
              <description>Channel 1 output compare fast enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH1MS</name>
              <description>Channel 1 mode selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH0COMCEN</name>
              <description>Channel 0 output compare clear enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0COMCEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Output compare clear disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Output compare clear enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH0COMCTL</name>
              <description>Channel 0 compare output control</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>CH0COMCTL</name><usage>read-write</usage><enumeratedValue><name>Frozen</name><description>The comparison between the output compare register CHyCV and the counter CNT has no effect on the outputs</description><value>0</value></enumeratedValue><enumeratedValue><name>ActiveOnMatch</name><description>Set channel to active level on match. OxCPRE signal is forced high when the counter matches the capture/compare register CHyCV</description><value>1</value></enumeratedValue><enumeratedValue><name>InactiveOnMatch</name><description>Set channel to inactive level on match. OxCPRE signal is forced low when the counter matches the capture/compare register CHyCV</description><value>2</value></enumeratedValue><enumeratedValue><name>Toggle</name><description>OxCPRE toggles when CNT=CHyCV</description><value>3</value></enumeratedValue><enumeratedValue><name>ForceInactive</name><description>OxCPRE is forced low</description><value>4</value></enumeratedValue><enumeratedValue><name>ForceActive</name><description>OxCPRE is forced high</description><value>5</value></enumeratedValue><enumeratedValue><name>PwmMode0</name><description>In upcounting, channel is active as long as CNT&lt;CHyCV else inactive. In downcounting, channel is inactive as long as CNT&gt;CHyCV else active</description><value>6</value></enumeratedValue><enumeratedValue><name>PwmMode1</name><description>Inversely to PwmMode0</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH0COMSEN</name>
              <description>Channel 0 compare output shadow enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0COMSEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Preload register on CHyCV disabled. New values written to CHyCV are taken into account immediately</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Preload register on CHyCV enabled. Preload value is loaded into active register on each update event</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH0COMFEN</name>
              <description>Channel 0 output compare fast enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0COMFEN</name><usage>read-write</usage><enumeratedValue><name>Slow</name><description>The minimum delay from an edge is 5 clock cycles</description><value>0</value></enumeratedValue><enumeratedValue><name>Fast</name><description>The minimum delay from an edge is 3 clock cycles</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Channel 0 I/O mode selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CH0MS</name><usage>read-write</usage><enumeratedValue><name>Output</name><description>Channel is configured as output</description><value>0</value></enumeratedValue><enumeratedValue><name>CI0</name><description>Channel is configured as input, ISx is connected to CI0FE0</description><value>1</value></enumeratedValue><enumeratedValue><name>CI1</name><description>Channel is configured as input, ISx is connected to CI1FE0</description><value>2</value></enumeratedValue><enumeratedValue><name>ITS</name><description>Channel is configured as input, ISx is connected to ITS</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Input</name>
          <displayName>CHCTL0_Input</displayName>
          <description>capture/compare mode register 0 (input
          mode)</description>
          <alternateRegister>CHCTL0_Output</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH1CAPFLT</name>
              <description>Channel 1 input capture filter control</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH1CAPPSC</name>
              <description>Channel 1 input capture prescaler</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH1MS</name>
              <description>Channel 1 mode selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH0CAPFLT</name>
              <description>Channel 0 input capture filter control</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>CH0CAPFLT</name><usage>read-write</usage><enumeratedValue><name>NoFilter</name><description>Filter disabled. fSAMP=fDTS, N=1</description><value>0</value></enumeratedValue><enumeratedValue><name>TimerCk_N2</name><description>fSAMP=fTIMER_CK, N=2</description><value>1</value></enumeratedValue><enumeratedValue><name>TimerCk_N4</name><description>fSAMP=fTIMER_CK, N=4</description><value>2</value></enumeratedValue><enumeratedValue><name>TimerCk_N8</name><description>fSAMP=fTIMER_CK, N=8</description><value>3</value></enumeratedValue><enumeratedValue><name>FDTS_Div2_N6</name><description>fSAMP=fDTS/2, N=6</description><value>4</value></enumeratedValue><enumeratedValue><name>FDTS_Div2_N8</name><description>fSAMP=fDTS/2, N=8</description><value>5</value></enumeratedValue><enumeratedValue><name>FDTS_Div4_N6</name><description>fSAMP=fDTS/4, N=6</description><value>6</value></enumeratedValue><enumeratedValue><name>FDTS_Div4_N8</name><description>fSAMP=fDTS/4, N=8</description><value>7</value></enumeratedValue><enumeratedValue><name>FDTS_Div8_N6</name><description>fSAMP=fDTS/8, N=6</description><value>8</value></enumeratedValue><enumeratedValue><name>FDTS_Div8_N8</name><description>fSAMP=fDTS/8, N=8</description><value>9</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N5</name><description>fSAMP=fDTS/16, N=5</description><value>10</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N6</name><description>fSAMP=fDTS/16, N=6</description><value>11</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N8</name><description>fSAMP=fDTS/16, N=8</description><value>12</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N5</name><description>fSAMP=fDTS/32, N=5</description><value>13</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N6</name><description>fSAMP=fDTS/32, N=6</description><value>14</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N8</name><description>fSAMP=fDTS/32, N=8</description><value>15</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH0CAPPSC</name>
              <description>Channel 0 input capture prescaler</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CH0CAPPSC</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>Prescaler disabled, capture on every edge</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>Capture every 2 edges</description><value>1</value></enumeratedValue><enumeratedValue><name>Div4</name><description>Capture every 4 edges</description><value>2</value></enumeratedValue><enumeratedValue><name>Div8</name><description>Capture every 8 edges</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Channel 0 mode selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CH0MS</name><usage>read-write</usage><enumeratedValue><name>Output</name><description>Channel is configured as output</description><value>0</value></enumeratedValue><enumeratedValue><name>CI0</name><description>Channel is configured as input, ISx is connected to CI0FEx</description><value>1</value></enumeratedValue><enumeratedValue><name>CI1</name><description>Channel is configured as input, ISx is connected to CI1FEx</description><value>2</value></enumeratedValue><enumeratedValue><name>ITS</name><description>Channel is configured as input, ISx is connected to ITS</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL1_Output</name>
          <displayName>CHCTL1_Output</displayName>
          <description>capture/compare mode register (output
          mode)</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3COMCEN</name>
              <description>Channel 3 output compare clear enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMCEN.CH0COMCEN"/>
            </field>
            <field>
              <name>CH3COMCTL</name>
              <description>Channel 3 compare output control</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH3COMSEN</name>
              <description>Channel 3 output compare shadow enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH3COMFEN</name>
              <description>Channel 3 output compare fast enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH3MS</name>
              <description>Channel 3 mode selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH2COMCEN</name>
              <description>Channel 2 output compare clear enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMCEN.CH0COMCEN"/>
            </field>
            <field>
              <name>CH2COMCTL</name>
              <description>Channel 2 compare output control</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH2COMSEN</name>
              <description>Channel 2 compare output shadow enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH2COMFEN</name>
              <description>Channel 2 output compare fast enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH2MS</name>
              <description>Channel 2 I/O mode selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL1_Input</name>
          <displayName>CHCTL1_Input</displayName>
          <description>capture/compare mode register 1 (input
          mode)</description>
          <alternateRegister>CHCTL1_Output</alternateRegister>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3CAPFLT</name>
              <description>Channel 3 input capture filter control</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH3CAPPSC</name>
              <description>Channel 3 input capture prescaler</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH3MS</name>
              <description>Channel 3 mode selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH2CAPFLT</name>
              <description>Input capture 2 filter</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH2CAPPSC</name>
              <description>Input capture 2 prescaler</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH2MS</name>
              <description>Capture/compare 2
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL2</name>
          <displayName>CHCTL2</displayName>
          <description>capture/compare enable
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3P</name>
              <description>Capture/Compare 3 output
              Polarity</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0P"/>
            </field>
            <field>
              <name>CH3EN</name>
              <description>Capture/Compare 3 output
              enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0EN"/>
            </field>
            <field>
              <name>CH2NP</name>
              <description>Capture/Compare 2 output
              Polarity</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0P"/>
            </field>
            <field>
              <name>CH2NEN</name>
              <description>Capture/Compare 2 complementary output
              enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH2P</name>
              <description>Capture/Compare 2 output
              Polarity</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0P"/>
            </field>
            <field>
              <name>CH2EN</name>
              <description>Capture/Compare 2 output
              enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0EN"/>
            </field>
            <field>
              <name>CH1NP</name>
              <description>Capture/Compare 1 output
              Polarity</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0P"/>
            </field>
            <field>
              <name>CH1NEN</name>
              <description>Capture/Compare 1 complementary output
              enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH1P</name>
              <description>Capture/Compare 1 output
              Polarity</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0P"/>
            </field>
            <field>
              <name>CH1EN</name>
              <description>Capture/Compare 1 output
              enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0EN"/>
            </field>
            <field>
              <name>CH0NP</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0P"/>
            </field>
            <field>
              <name>CH0NEN</name>
              <description>Capture/Compare 0 complementary output
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH0P</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0P</name><usage>read-write</usage><enumeratedValue><name>NotInverted</name><description>Active high</description><value>0</value></enumeratedValue><enumeratedValue><name>Inverted</name><description>Active low</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH0EN</name>
              <description>Capture/Compare 1 output
              enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0EN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Channel output is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Channel output is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <displayName>CNT</displayName>
          <description>counter</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <displayName>PSC</displayName>
          <description>prescaler</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>PSC</name>
              <description>Prescaler value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CAR</name>
          <displayName>CAR</displayName>
          <description>auto-reload register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CAR</name>
              <description>Counter auto reload value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CREP</name>
          <displayName>CREP</displayName>
          <description>repetition counter register</description>
          <addressOffset>0x30</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CREP</name>
              <description>Repetition counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0CV</name>
          <displayName>CH0CV</displayName>
          <description>capture/compare register 0</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0VAL</name>
              <description>Capture/Compare 0 value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH1CV</name>
          <displayName>CH1CV</displayName>
          <description>capture/compare register 1</description>
          <addressOffset>0x38</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH1VAL</name>
              <description>Capture/Compare 1 value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH2CV</name>
          <displayName>CH2CV</displayName>
          <description>capture/compare register 2</description>
          <addressOffset>0x3C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH2VAL</name>
              <description>Capture/Compare 2 value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH3CV</name>
          <displayName>CH3CV</displayName>
          <description>capture/compare register 3</description>
          <addressOffset>0x40</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3VAL</name>
              <description>Capture/Compare 3 value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CCHP</name>
          <displayName>CCHP</displayName>
          <description>channel complementary protection register</description>
          <addressOffset>0x44</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>POEN</name>
              <description>Main output enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>POEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Channel outputs are disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Channel outputs are enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OAEN</name>
              <description>Automatic output enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OAEN</name><usage>read-write</usage><enumeratedValue><name>Manual</name><description>POEN cannot be set by hardware</description><value>0</value></enumeratedValue><enumeratedValue><name>Automatic</name><description>POEN can be set by hardware automatically at the next update event</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BRKP</name>
              <description>Break polarity</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BRKP</name><usage>read-write</usage><enumeratedValue><name>Inverted</name><description>BRKIN is active low</description><value>0</value></enumeratedValue><enumeratedValue><name>NotInverted</name><description>BRKIN is active high</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BRKEN</name>
              <description>Break enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>BRKEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Break inputs disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Break inputs enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ROS</name>
              <description>Off-state selection for Run
              mode</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ROS</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>When POEN is set, the channel output signals are disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>When POEN is set, the channel output signals are enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IOS</name>
              <description>Off-state selection for Idle
              mode</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>IOS</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>When POEN is reset, the channel output signals are disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>When POEN is reset, the channel output signals are enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PROT</name>
              <description>Lock configuration</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PROT</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Write protection disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Mode0</name><description>Protection mode 0</description><value>1</value></enumeratedValue><enumeratedValue><name>Mode1</name><description>Protection mode 1</description><value>2</value></enumeratedValue><enumeratedValue><name>Mode2</name><description>Protection mode 2</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DTCFG</name>
              <description>Dead-time generator setup</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>DMACFG</name>
          <displayName>DMACFG</displayName>
          <description>DMA configuration register</description>
          <addressOffset>0x48</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMATC</name>
              <description>DMA transfer count</description>
              <bitOffset>8</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DMATA</name>
              <description>DMA transfer access start address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>DMATB</name>
          <displayName>DMATB</displayName>
          <description>DMA address for full transfer</description>
          <addressOffset>0x4C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMATB</name>
              <description>DMA register for burst
              accesses</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
       </register>
        <register>
          <name>CFG</name>
          <displayName>CFG</displayName>
          <description>Configuration register</description>
          <addressOffset>0xFC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CHVSEL</name>
              <description>Write CHxVAL register selection</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>OUTSEL</name>
              <description>The output value selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIMER2</name>
      <description>General-purpose-timers</description>
      <groupName>TIMER</groupName>
      <baseAddress>0x40000400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIMER2</name>
        <value>16</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CKDIV</name>
              <description>Clock division</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CKDIV.CKDIV"/>
            </field>
            <field>
              <name>ARSE</name>
              <description>Auto-reload preload enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.ARSE.ARSE"/>
            </field>
            <field>
              <name>CAM</name>
              <description>Center-aligned mode
              selection</description>
              <bitOffset>5</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CAM.CAM"/>
            </field>
            <field>
              <name>DIR</name>
              <description>Direction</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.DIR.DIR"/>
            </field>
            <field>
              <name>SPM</name>
              <description>One-pulse mode</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SPM</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Counter is not stopped at update event</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Counter stops counting at the next update event (clearing the CEN bit)</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPS</name>
              <description>Update request source</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPS.UPS"/>
            </field>
            <field>
              <name>UPDIS</name>
              <description>Update disable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPDIS.UPDIS"/>
            </field>
            <field>
              <name>CEN</name>
              <description>Counter enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CEN.CEN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>control register 1</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TI0S</name>
              <description>TI0 selection</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TI0S</name><usage>read-write</usage><enumeratedValue><name>Normal</name><description>The CH0 pin input is selected as channel 0 trigger input</description><value>0</value></enumeratedValue><enumeratedValue><name>XOR</name><description>The XOR of CH0, CH1 and CH2 pins are selected as channel 0 trigger input</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MMC</name>
              <description>Master mode selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>MMC</name><usage>read-write</usage><enumeratedValue><name>Reset</name><description>Use UPG bit from SWEVG register</description><value>0</value></enumeratedValue><enumeratedValue><name>Enable</name><description>Use CEN bit from CTL0 register</description><value>1</value></enumeratedValue><enumeratedValue><name>Update</name><description>Use the update event</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DMAS</name>
              <description>Capture/compare DMA
              selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DMAS</name><usage>read-write</usage><enumeratedValue><name>OnCompare</name><description>CCx DMA request sent when CCx event occurs</description><value>0</value></enumeratedValue><enumeratedValue><name>OnUpdate</name><description>CCx DMA request sent when update event occurs</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>SMCFG</name>
          <displayName>SMCFG</displayName>
          <description>slave mode control register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>ETP</name>
              <description>External trigger polarity</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ETP</name><usage>read-write</usage><enumeratedValue><name>NotInverted</name><description>ETI is noninverted, active at high level or rising edge</description><value>0</value></enumeratedValue><enumeratedValue><name>Inverted</name><description>ETI is inverted, active at low level or falling edge</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SMC1</name>
              <description>External clock enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SMC1</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>External clock mode 1 disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>External clock mode 1 enabled. The counter is clocked by any active edge on the ETIF signal.</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ETPSC</name>
              <description>External trigger prescaler</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>ETPSC</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>External trigger prescaler disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>ETI frequency divided by 2</description><value>1</value></enumeratedValue><enumeratedValue><name>Div4</name><description>ETI frequency divided by 4</description><value>2</value></enumeratedValue><enumeratedValue><name>Div8</name><description>ETI frequency divided by 8</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ETFC</name>
              <description>External trigger filter</description>
              <bitOffset>8</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues><name>ETFC</name><usage>read-write</usage><enumeratedValue><name>NoFilter</name><description>Filter disabled. fSAMP=fDTS, N=1</description><value>0</value></enumeratedValue><enumeratedValue><name>TimerCk_N2</name><description>fSAMP=fTIMER_CK, N=2</description><value>1</value></enumeratedValue><enumeratedValue><name>TimerCk_N4</name><description>fSAMP=fTIMER_CK, N=4</description><value>2</value></enumeratedValue><enumeratedValue><name>TimerCk_N8</name><description>fSAMP=fTIMER_CK, N=8</description><value>3</value></enumeratedValue><enumeratedValue><name>FDTS_Div2_N6</name><description>fSAMP=fDTS/2, N=6</description><value>4</value></enumeratedValue><enumeratedValue><name>FDTS_Div2_N8</name><description>fSAMP=fDTS/2, N=8</description><value>5</value></enumeratedValue><enumeratedValue><name>FDTS_Div4_N6</name><description>fSAMP=fDTS/4, N=6</description><value>6</value></enumeratedValue><enumeratedValue><name>FDTS_Div4_N8</name><description>fSAMP=fDTS/4, N=8</description><value>7</value></enumeratedValue><enumeratedValue><name>FDTS_Div8_N6</name><description>fSAMP=fDTS/8, N=6</description><value>8</value></enumeratedValue><enumeratedValue><name>FDTS_Div8_N8</name><description>fSAMP=fDTS/8, N=8</description><value>9</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N5</name><description>fSAMP=fDTS/16, N=5</description><value>10</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N6</name><description>fSAMP=fDTS/16, N=6</description><value>11</value></enumeratedValue><enumeratedValue><name>FDTS_Div16_N8</name><description>fSAMP=fDTS/16, N=8</description><value>12</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N5</name><description>fSAMP=fDTS/32, N=5</description><value>13</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N6</name><description>fSAMP=fDTS/32, N=6</description><value>14</value></enumeratedValue><enumeratedValue><name>FDTS_Div32_N8</name><description>fSAMP=fDTS/32, N=8</description><value>15</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MSM</name>
              <description>Master/Slave mode</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>MSM</name><usage>read-write</usage><enumeratedValue><name>NoSync</name><description>No action</description><value>0</value></enumeratedValue><enumeratedValue><name>Sync</name><description>The effect of an event on the trigger input (TRGI) is delayed to allow a perfect synchronization between the current timer and its slaves (through TRGO). It is useful if we want to synchronize several timers on a single external event.</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TRGS</name>
              <description>Trigger selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>TRGS</name><usage>read-write</usage><enumeratedValue><name>ITI0</name><description>Internal Trigger 0 (ITI0)</description><value>0</value></enumeratedValue><enumeratedValue><name>ITI1</name><description>Internal Trigger 1 (ITI1)</description><value>1</value></enumeratedValue><enumeratedValue><name>ITI2</name><description>Internal Trigger 2 (ITI2)</description><value>2</value></enumeratedValue><enumeratedValue><name>CI0F_ED</name><description>CI0 Edge Detector (CI0F_ED)</description><value>4</value></enumeratedValue><enumeratedValue><name>CI0FE0</name><description>Filtered Timer Input 0 (CI0FE0)</description><value>5</value></enumeratedValue><enumeratedValue><name>CI1FE1</name><description>Filtered Timer Input 1 (CI1FE1)</description><value>6</value></enumeratedValue><enumeratedValue><name>ETIFP</name><description>External Trigger input (ETIFP)</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OCRC</name>
              <description>OCREF clear source selection </description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OCRC</name><usage>read-write</usage><enumeratedValue><name>Input</name><description>OCPRE_CLR_INT is connected to the OCPRE_CLR input</description><value>0</value></enumeratedValue><enumeratedValue><name>ETIF</name><description>OCPRE_CLR_INT is connected to ETIF</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SMC</name>
              <description>Slave mode selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>SMC</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Slave mode disabled - if CEN=1 then the prescaler is clocked directly by the internal clock.</description><value>0</value></enumeratedValue><enumeratedValue><name>QuadratureDecoderMode0</name><description>Quadrature decoder mode 0 - Counter counts up/down on CI1FE1 edge depending on CI0FE0 level.</description><value>1</value></enumeratedValue><enumeratedValue><name>QuadratureDecoderMode1</name><description>Quadrature decoder mode 1 - Counter counts up/down on CI0FE0 edge depending on CI1FE1 level.</description><value>2</value></enumeratedValue><enumeratedValue><name>QuadratureDecoderMode2</name><description>Quadrature decoder mode 2 - Counter counts up/down on both CI0FE0 and CI1FE1 edges depending on the level of the other input.</description><value>3</value></enumeratedValue><enumeratedValue><name>RestartMode</name><description>Restart Mode - Rising edge of the selected trigger input (TRGI) reinitializes the counter and generates an update of the registers.</description><value>4</value></enumeratedValue><enumeratedValue><name>PauseMode</name><description>Pause Mode - The counter clock is enabled when the trigger input (TRGI) is high. The counter stops (but is not reset) as soon as the trigger becomes low. Both start and stop of the counter are controlled.</description><value>5</value></enumeratedValue><enumeratedValue><name>EventMode</name><description>Event Mode - The counter starts at a rising edge of the trigger TRGI (but it is not reset). Only the start of the counter is controlled.</description><value>6</value></enumeratedValue><enumeratedValue><name>ExternalClockMode</name><description>External Clock Mode 0 - Rising edges of the selected trigger (TRGI) clock the counter.</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAINTEN</name>
          <displayName>DMAINTEN</displayName>
          <description>DMA/Interrupt enable register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TRGDEN</name>
              <description>Trigger DMA request enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Trigger DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Trigger DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH3DEN</name>
              <description>Capture/Compare 3 DMA request
              enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0DEN"/>
            </field>
            <field>
              <name>CH2DEN</name>
              <description>Capture/Compare 2 DMA request
              enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0DEN"/>
            </field>
            <field>
              <name>CH1DEN</name>
              <description>Capture/Compare 1 DMA request
              enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0DEN"/>
            </field>
            <field>
              <name>CH0DEN</name>
              <description>Capture/Compare 1 DMA request
              enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0DEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Capture/compare DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Capture/compare DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPDEN</name>
              <description>Update DMA request enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Update DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Update DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TRGIE</name>
              <description>Trigger interrupt enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Trigger interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Trigger interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH3IE</name>
              <description>Capture/Compare 3 interrupt
              enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CH0IE.CH0IE"/>
            </field>
            <field>
              <name>CH2IE</name>
              <description>Capture/Compare 2 interrupt
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CH0IE.CH0IE"/>
            </field>
            <field>
              <name>CH1IE</name>
              <description>Capture/Compare 1 interrupt
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CH0IE.CH0IE"/>
            </field>
            <field>
              <name>CH0IE</name>
              <description>Capture/Compare 0 interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CH0IE.CH0IE"/>
            </field>
            <field>
              <name>UPIE</name>
              <description>Update interrupt enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.UPIE.UPIE"/>
            </field>
          </fields>
        </register>
        <register>
          <name>INTF</name>
          <displayName>INTF</displayName>
          <description>interrupt flag register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3OF</name>
              <description>Capture/Compare 3 overcapture
              flag</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0OF.CH0OF"/>
            </field>
            <field>
              <name>CH2OF</name>
              <description>Capture/Compare 2 overcapture
              flag</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0OF.CH0OF"/>
            </field>
            <field>
              <name>CH1OF</name>
              <description>Capture/compare 1 overcapture
              flag</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0OF.CH0OF"/>
            </field>
            <field>
              <name>CH0OF</name>
              <description>Capture/Compare 0 overcapture
              flag</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0OF.CH0OF"/>
            </field>
            <field>
              <name>TRGIF</name>
              <description>Trigger interrupt flag</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGIF</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>No trigger event occured</description><value>0</value></enumeratedValue><enumeratedValue><name>Triggered</name><description>Trigger event occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH3IF</name>
              <description>Capture/Compare 3 interrupt
              flag</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0IF.CH0IF"/>
            </field>
            <field>
              <name>CH2IF</name>
              <description>Capture/Compare 2 interrupt
              flag</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0IF.CH0IF"/>
            </field>
            <field>
              <name>CH1IF</name>
              <description>Capture/Compare 1 interrupt
              flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0IF.CH0IF"/>
            </field>
            <field>
              <name>CH0IF</name>
              <description>Capture/compare 0 interrupt
              flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0IF.CH0IF"/>
            </field>
            <field>
              <name>UPIF</name>
              <description>Update interrupt flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.UPIF.UPIF"/>
            </field>
          </fields>
        </register>
        <register>
          <name>SWEVG</name>
          <displayName>SWEVG</displayName>
          <description>event generation register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TRGG</name>
              <description>Trigger generation</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGG</name><usage>read-write</usage><enumeratedValue><name>Trigger</name><description>Generate a trigger event</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CH3G</name>
              <description>Capture/compare 3
              generation</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CH0G.CH0G"/>
            </field>
            <field>
              <name>CH2G</name>
              <description>Capture/compare 2
              generation</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CH0G.CH0G"/>
            </field>
            <field>
              <name>CH1G</name>
              <description>Capture/compare 1
              generation</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CH0G.CH0G"/>
            </field>
            <field>
              <name>CH0G</name>
              <description>Capture/compare 0
              generation</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CH0G.CH0G"/>
            </field>
            <field>
              <name>UPG</name>
              <description>Update generation</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.UPG.UPG"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Output</name>
          <displayName>CHCTL0_Output</displayName>
          <description>capture/compare mode register 0 (output
          mode)</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH1COMCEN</name>
              <description>Output compare 1 clear
              enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCEN.CH0COMCEN"/>
            </field>
            <field>
              <name>CH1COMCTL</name>
              <description>Output compare 1 mode</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH1COMSEN</name>
              <description>Output compare 1 preload
              enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH1COMFEN</name>
              <description>Output compare 1 fast
              enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH1MS</name>
              <description>Capture/Compare 1
              selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH0COMCEN</name>
              <description>Output compare 0 clear
              enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCEN.CH0COMCEN"/>
            </field>
            <field>
              <name>CH0COMCTL</name>
              <description>Output compare 0 mode</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH0COMSEN</name>
              <description>Output compare 0 preload
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH0COMFEN</name>
              <description>Output compare 0 fast
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Capture/Compare 0
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Input</name>
          <displayName>CHCTL0_Input</displayName>
          <description>capture/compare mode register 0 (input
          mode)</description>
          <alternateRegister>CHCTL0_Output</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CH1CAPFLT</name>
              <description>Input capture 1 filter</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH1CAPPSC</name>
              <description>Input capture 1 prescaler</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH1MS</name>
              <description>Capture/compare 1
              selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH0CAPFLT</name>
              <description>Input capture 0 filter</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH0CAPPSC</name>
              <description>Input capture 0 prescaler</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Capture/Compare 0
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL1_Output</name>
          <displayName>CHCTL1_Output</displayName>
          <description>capture/compare mode register 1 (output
          mode)</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3COMCEN</name>
              <description>Output compare 3 clear
              enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCEN.CH0COMCEN"/>
            </field>
            <field>
              <name>CH3COMCTL</name>
              <description>Output compare 3 mode</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH3COMSEN</name>
              <description>Output compare 3 preload
              enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH3COMFEN</name>
              <description>Output compare 3 fast
              enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH3MS</name>
              <description>Capture/Compare 3
              selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH2COMCEN</name>
              <description>Output compare 2 clear
              enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCEN.CH0COMCEN"/>
            </field>
            <field>
              <name>CH2COMCTL</name>
              <description>Output compare 2 mode</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH2COMSEN</name>
              <description>Output compare 2 preload
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH2COMFEN</name>
              <description>Output compare 2 fast
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH2MS</name>
              <description>Capture/Compare 2
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL1_Input</name>
          <displayName>CHCTL1_Input</displayName>
          <description>capture/compare mode register 1 (input
          mode)</description>
          <alternateRegister>CHCTL1_Output</alternateRegister>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3CAPFLT</name>
              <description>Input capture 3 filter</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH3CAPPSC</name>
              <description>Input capture 3 prescaler</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH3MS</name>
              <description>Capture/Compare 3
              selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH2CAPFLT</name>
              <description>Input capture 2 filter</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH2CAPPSC</name>
              <description>Input capture 2 prescaler</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH2MS</name>
              <description>Capture/Compare 2
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL2</name>
          <displayName>CHCTL2</displayName>
          <description>capture/compare enable
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH3NP</name>
              <description>Capture/Compare 3 output
              Polarity</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH3P</name>
              <description>Capture/Compare 3 output
              Polarity</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH3EN</name>
              <description>Capture/Compare 3 output
              enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH2NP</name>
              <description>Capture/Compare 2 output
              Polarity</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH2P</name>
              <description>Capture/Compare 2 output
              Polarity</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH2EN</name>
              <description>Capture/Compare 2 output
              enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH1NP</name>
              <description>Capture/Compare 1 output
              Polarity</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH1P</name>
              <description>Capture/Compare 1 output
              Polarity</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH1EN</name>
              <description>Capture/Compare 1 output
              enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH0NP</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH0P</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH0EN</name>
              <description>Capture/Compare 0 output
              enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <displayName>CNT</displayName>
          <description>counter</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <displayName>PSC</displayName>
          <description>prescaler</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>PSC</name>
              <description>Prescaler value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CAR</name>
          <displayName>CAR</displayName>
          <description>auto-reload register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CAR</name>
              <description>Low Auto-reload value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0CV</name>
          <displayName>CH0CV</displayName>
          <description>capture/compare register 1</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CH0VAL</name>
              <description>Low Capture/Compare 1
              value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH1CV</name>
          <displayName>CH1CV</displayName>
          <description>capture/compare register 2</description>
          <addressOffset>0x38</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
            <fields>
            <field>
              <name>CH1VAL</name>
              <description>Low Capture/Compare 2
              value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
             </field>
          </fields>
        </register>
        <register>
          <name>CH2CV</name>
          <displayName>CH2CV</displayName>
          <description>capture/compare register 2</description>
          <addressOffset>0x3C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CH2VAL</name>
              <description>High Capture/Compare value (TIM2
              only)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>CH3CV</name>
          <displayName>CH3CV</displayName>
          <description>capture/compare register 3</description>
          <addressOffset>0x40</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CH3VAL</name>
              <description>High Capture/Compare value (TIM2
              only)</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>DMACFG</name>
          <displayName>DMACFG</displayName>
          <description>DMA control register</description>
          <addressOffset>0x48</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMATC</name>
              <description>DMA burst length</description>
              <bitOffset>8</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DMATA</name>
              <description>DMA base address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>DMATB</name>
          <displayName>DMATB</displayName>
          <description>DMA address for full transfer</description>
          <addressOffset>0x4C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMATB</name>
              <description>DMA register for burst
              accesses</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
      <register>
          <name>CFG</name>
          <displayName>CFG</displayName>
          <description>Configuration</description>
          <addressOffset>0xFC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CHVSEL</name>
              <description>Write CHxVAL register selection</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIMER5</name>
      <description>Basic-timers</description>
      <groupName>TIMER</groupName>
      <baseAddress>0x40001000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIMER5</name>
        <value>17</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>ARSE</name>
              <description>Auto-reload preload enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.ARSE.ARSE"/>
            </field>
            <field>
              <name>SPM</name>
              <description>One-pulse mode</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SPM</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Counter is not stopped at update event</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Counter stops counting at the next update event (clearing the CEN bit)</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPS</name>
              <description>Update request source</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPS.UPS"/>
            </field>
            <field>
              <name>UPDIS</name>
              <description>Update disable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPDIS.UPDIS"/>
            </field>
            <field>
              <name>CEN</name>
              <description>Counter enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CEN.CEN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>control register 1</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>MMC</name>
              <description>Master mode selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>MMC</name><usage>read-write</usage><enumeratedValue><name>Reset</name><description>Use UPG bit from SWEVG register</description><value>0</value></enumeratedValue><enumeratedValue><name>Enable</name><description>Use CEN bit from CTL0 register</description><value>1</value></enumeratedValue><enumeratedValue><name>Update</name><description>Use the update event</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAINTEN</name>
          <displayName>DMAINTEN</displayName>
          <description>DMA/Interrupt enable register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>UPDEN</name>
              <description>Update DMA request enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Update DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Update DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPIE</name>
              <description>Update interrupt enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.UPIE.UPIE"/>
            </field>
          </fields>
        </register>
        <register>
          <name>INTF</name>
          <displayName>INTF</displayName>
          <description>status register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>UPIF</name>
              <description>Update interrupt flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.UPIF.UPIF"/>
            </field>
          </fields>
        </register>
        <register>
          <name>SWEVG</name>
          <displayName>SWEVG</displayName>
          <description>event generation register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>UPG</name>
              <description>Update generation</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.UPG.UPG"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <displayName>CNT</displayName>
          <description>counter</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>Low counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <displayName>PSC</displayName>
          <description>prescaler</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>PSC</name>
              <description>Prescaler value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CAR</name>
          <displayName>CAR</displayName>
          <description>auto-reload register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CAR</name>
              <description>Low Auto-reload value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIMER13</name>
      <description>General-purpose-timers</description>
      <groupName>TIMER</groupName>
      <baseAddress>0x40002000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIMER13</name>
        <value>19</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 1</description>
          <addressOffset>0x00</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CKDIV</name>
              <description>Clock division</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CKDIV.CKDIV"/>
            </field>
            <field>
              <name>ARSE</name>
              <description>Auto-reload preload enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.ARSE.ARSE"/>
            </field>
            <field>
              <name>UPS</name>
              <description>Update request source</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPS.UPS"/>
            </field>
            <field>
              <name>UPDIS</name>
              <description>Update disable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPDIS.UPDIS"/>
            </field>
            <field>
              <name>CEN</name>
              <description>Counter enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CEN.CEN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAINTEN</name>
          <displayName>DMAINTEN</displayName>
          <description>DMA/Interrupt enable register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0IE</name>
              <description>Capture/Compare 0 interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CH0IE.CH0IE"/>
            </field>
            <field>
              <name>UPIE</name>
              <description>Update interrupt enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.UPIE.UPIE"/>
            </field>
          </fields>
        </register>
        <register>
          <name>INTF</name>
          <displayName>INTF</displayName>
          <description>interrupt flag register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0OF</name>
              <description>Capture/Compare 0 overcapture
              flag</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0OF.CH0OF"/>
            </field>
            <field>
              <name>CH0IF</name>
              <description>Capture/compare 0 interrupt
              flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0IF.CH0IF"/>
            </field>
            <field>
              <name>UPIF</name>
              <description>Update interrupt flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.UPIF.UPIF"/>
            </field>
          </fields>
        </register>
        <register>
          <name>SWEVG</name>
          <displayName>SWEVG</displayName>
          <description>event generation register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0G</name>
              <description>Capture/compare 0
              generation</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CH0G.CH0G"/>
            </field>
            <field>
              <name>UPG</name>
              <description>Update generation</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.UPG.UPG"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Output</name>
          <displayName>CHCTL0_Output</displayName>
          <description>capture/compare mode register (output
          mode)</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0MS</name>
              <description>Capture/Compare 0
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH0COMFEN</name>
              <description>Output compare 0 fast
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH0COMSEN</name>
              <description>Output Compare 0 preload
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH0COMCTL</name>
              <description>Output Compare 0 mode</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
             <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Input</name>
          <displayName>CHCTL0_Input</displayName>
          <description>capture/compare mode register (input
          mode)</description>
          <alternateRegister>CHCTL0_Output</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0CAPFLT</name>
              <description>Input capture 0 filter</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH0CAPPSC</name>
              <description>Input capture 0 prescaler</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Capture/Compare 0
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL2</name>
          <displayName>CHCTL2</displayName>
          <description>capture/compare enable
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0NP</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH0P</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH0EN</name>
              <description>Capture/Compare 1 output
              enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <displayName>CNT</displayName>
          <description>counter</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <displayName>PSC</displayName>
          <description>prescaler</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>PSC</name>
              <description>Prescaler value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CAR</name>
          <displayName>CAR</displayName>
          <description>auto-reload register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CAR</name>
              <description>Auto-reload value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0CV</name>
          <displayName>CH0CV</displayName>
          <description>capture/compare register 0</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0VAL</name>
              <description>Capture/Compare 1 value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>IRMP</name>
          <displayName>IRMP</displayName>
          <description>channel input remap register</description>
          <addressOffset>0x50</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CI0_RMP</name>
              <description>Timer input 0 remap</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>CI0_RMP</name><usage>read-write</usage><enumeratedValue><name>GPIO</name><description>Channel 0 input is connected to GPIO</description><value>0</value></enumeratedValue><enumeratedValue><name>RTCCLK</name><description>Channel 0 input is connected to RTCCLK</description><value>1</value></enumeratedValue><enumeratedValue><name>HXTAL_32</name><description>Channel 0 input is connected to HXTAL / 32</description><value>2</value></enumeratedValue><enumeratedValue><name>CKOUTSEL</name><description>Channel 0 input is connected to CKOUTSEL</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
       <register>
          <name>CFG</name>
          <displayName>CFG</displayName>
          <description>configuration register</description>
          <addressOffset>0xFC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CHVSEL</name>
              <description>Write CHxVAL register selection</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIMER14</name>
      <description>General-purpose-timers</description>
      <groupName>TIMER</groupName>
      <baseAddress>0x40014000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
      <name>TIMER14</name>
      <value>20</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CKDIV</name>
              <description>Clock division</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CKDIV.CKDIV"/>
            </field>
            <field>
              <name>ARSE</name>
              <description>Auto-reload preload enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.ARSE.ARSE"/>
            </field>
            <field>
              <name>SPM</name>
              <description>One-pulse mode</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SPM</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Counter is not stopped at update event</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Counter stops counting at the next update event (clearing the CEN bit)</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPS</name>
              <description>Update request source</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPS.UPS"/>
            </field>
            <field>
              <name>UPDIS</name>
              <description>Update disable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPDIS.UPDIS"/>
            </field>
            <field>
              <name>CEN</name>
              <description>Counter enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CEN.CEN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>control register 1</description>
          <addressOffset>0x4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>ISO1</name>
              <description>Output Idle state 1</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.ISO0.ISO0"/>
            </field>
            <field>
              <name>ISO0N</name>
              <description>Output Idle state 0</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.ISO0N.ISO0N"/>
            </field>
            <field>
              <name>ISO0</name>
              <description>Output Idle state 0</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.ISO0.ISO0"/>
            </field>
            <field>
              <name>MMC</name>
              <description>Master mode selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>MMC</name><usage>read-write</usage><enumeratedValue><name>Reset</name><description>Use UPG bit from SWEVG register</description><value>0</value></enumeratedValue><enumeratedValue><name>Enable</name><description>Use CEN bit from CTL0 register</description><value>1</value></enumeratedValue><enumeratedValue><name>Update</name><description>Use the update event</description><value>2</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DMAS</name>
              <description>Capture/compare DMA
              selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DMAS</name><usage>read-write</usage><enumeratedValue><name>OnCompare</name><description>CCx DMA request sent when CCx event occurs</description><value>0</value></enumeratedValue><enumeratedValue><name>OnUpdate</name><description>CCx DMA request sent when update event occurs</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CCUC</name>
              <description>Capture/compare control update
              selection</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.CCUC.CCUC"/>
            </field>
            <field>
              <name>CCSE</name>
              <description>Capture/compare preloaded
              control</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.CCSE.CCSE"/>
            </field>
          </fields>
        </register>
        <register>
          <name>SMCFG</name>
          <displayName>SMCFG</displayName>
          <description>slave mode configuration register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>MSM</name>
              <description>Master/Slave mode</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>MSM</name><usage>read-write</usage><enumeratedValue><name>NoSync</name><description>No action</description><value>0</value></enumeratedValue><enumeratedValue><name>Sync</name><description>The effect of an event on the trigger input (TRGI) is delayed to allow a perfect synchronization between the current timer and its slaves (through TRGO). It is useful if we want to synchronize several timers on a single external event.</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TRGS</name>
              <description>Trigger selection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>TRGS</name><usage>read-write</usage><enumeratedValue><name>ITI0</name><description>Internal Trigger 0 (ITI0)</description><value>0</value></enumeratedValue><enumeratedValue><name>ITI1</name><description>Internal Trigger 1 (ITI1)</description><value>1</value></enumeratedValue><enumeratedValue><name>CI0F_ED</name><description>CI0 Edge Detector (CI0F_ED)</description><value>4</value></enumeratedValue><enumeratedValue><name>CI0FE0</name><description>Filtered Timer Input 0 (CI0FE0)</description><value>5</value></enumeratedValue><enumeratedValue><name>CI1FE1</name><description>Filtered Timer Input 1 (CI1FE1)</description><value>6</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SMC</name>
              <description>Slave mode selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues><name>SMC</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Slave mode disabled - if CEN=1 then the prescaler is clocked directly by the internal clock.</description><value>0</value></enumeratedValue><enumeratedValue><name>RestartMode</name><description>Restart Mode - Rising edge of the selected trigger input (TRGI) reinitializes the counter and generates an update of the registers.</description><value>4</value></enumeratedValue><enumeratedValue><name>PauseMode</name><description>Pause Mode - The counter clock is enabled when the trigger input (TRGI) is high. The counter stops (but is not reset) as soon as the trigger becomes low. Both start and stop of the counter are controlled.</description><value>5</value></enumeratedValue><enumeratedValue><name>EventMode</name><description>Event Mode - The counter starts at a rising edge of the trigger TRGI (but it is not reset). Only the start of the counter is controlled.</description><value>6</value></enumeratedValue><enumeratedValue><name>ExternalClockMode</name><description>External Clock Mode 0 - Rising edges of the selected trigger (TRGI) clock the counter.</description><value>7</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAINTEN</name>
          <displayName>DMAINTEN</displayName>
          <description>DMA/Interrupt enable register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>TRGDEN</name>
              <description>Trigger DMA request enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Trigger DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Trigger DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMTDEN</name>
              <description>Commutation DMA request enable</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CH1DEN</name>
              <description>Capture/Compare 1 DMA request
              enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="CH0DEN"/>
            </field>
            <field>
              <name>CH0DEN</name>
              <description>Capture/Compare 0 DMA request
              enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0DEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Capture/compare DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Capture/compare DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPDEN</name>
              <description>Update DMA request enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Update DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Update DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BRKIE</name>
              <description>Break interrupt enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.BRKIE.BRKIE"/>
            </field>
            <field>
              <name>TRGIE</name>
              <description>Trigger interrupt enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Trigger interrupt disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Trigger interrupt enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMTIE</name>
              <description>COM interrupt enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CMTIE.CMTIE"/>
            </field>
            <field>
              <name>CH1IE</name>
              <description>Capture/Compare 2 interrupt
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CH0IE.CH0IE"/>
            </field>
            <field>
              <name>CH0IE</name>
              <description>Capture/Compare 1 interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CH0IE.CH0IE"/>
            </field>
            <field>
              <name>UPIE</name>
              <description>Update interrupt enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.UPIE.UPIE"/>
            </field>
          </fields>
        </register>
        <register>
          <name>INTF</name>
          <displayName>INTF</displayName>
          <description>interrupt flag register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH1OF</name>
              <description>Capture/compare 1 overcapture
              flag</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0OF.CH0OF"/>
            </field>
            <field>
              <name>CH0OF</name>
              <description>Capture/Compare 0 overcapture
              flag</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0OF.CH0OF"/>
            </field>
            <field>
              <name>BRKIF</name>
              <description>Break interrupt flag</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.BRKIF.BRKIF"/>
            </field>
            <field>
              <name>TRGIF</name>
              <description>Trigger interrupt flag</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGIF</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>No trigger event occured</description><value>0</value></enumeratedValue><enumeratedValue><name>Triggered</name><description>Trigger event occurred</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMTIF</name>
              <description>COM interrupt flag</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CMTIF.CMTIF"/>
            </field>
            <field>
              <name>CH1IF</name>
              <description>Capture/Compare 1 interrupt
              flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0IF.CH0IF"/>
            </field>
            <field>
              <name>CH0IF</name>
              <description>Capture/compare 0 interrupt
              flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0IF.CH0IF"/>
            </field>
            <field>
              <name>UPIF</name>
              <description>Update interrupt flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.UPIF.UPIF"/>
            </field>
          </fields>
        </register>
        <register>
          <name>SWEVG</name>
          <displayName>SWEVG</displayName>
          <description>event generation register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>BRKG</name>
              <description>Break generation</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.BRKG.BRKG"/>
            </field>
            <field>
              <name>TRGG</name>
              <description>Trigger generation</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TRGG</name><usage>read-write</usage><enumeratedValue><name>Trigger</name><description>Generate a trigger event</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CMTG</name>
              <description>Capture/Compare control update
              generation</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CMTG.CMTG"/>
            </field>
            <field>
              <name>CH1G</name>
              <description>Capture/compare 1
              generation</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CH0G.CH0G"/>
            </field>
            <field>
              <name>CH0G</name>
              <description>Capture/compare 0
              generation</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CH0G.CH0G"/>
            </field>
            <field>
              <name>UPG</name>
              <description>Update generation</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.UPG.UPG"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Output</name>
          <displayName>CHCTL0_Output</displayName>
          <description>capture/compare mode register (output
          mode)</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
         <fields>
            <field>
              <name>CH1COMCTL</name>
              <description>Output Compare 1 mode</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH1COMSEN</name>
              <description>Output Compare 1 preload
              enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH1COMFEN</name>
              <description>Output Compare 1 fast
              enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH1MS</name>
              <description>Capture/Compare 1
              selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH0COMCTL</name>
              <description>Output Compare 0 mode</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH0COMSEN</name>
              <description>Output Compare 0 preload
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH0COMFEN</name>
              <description>Output Compare 0 fast
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Capture/Compare 0
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Input</name>
          <displayName>CHCTL0_Input</displayName>
          <description>capture/compare mode register 0 (input
          mode)</description>
          <alternateRegister>CHCTL0_Output</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CH1CAPFLT</name>
              <description>Input capture 1 filter</description>
              <bitOffset>12</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH1CAPPSC</name>
              <description>Input capture 1 prescaler</description>
              <bitOffset>10</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH1MS</name>
              <description>Capture/Compare 1
              selection</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
            <field>
              <name>CH0CAPFLT</name>
              <description>Input capture 0 filter</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH0CAPPSC</name>
              <description>Input capture 0 prescaler</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Capture/Compare 0
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL2</name>
          <displayName>CHCTL2</displayName>
          <description>capture/compare enable
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH1NP</name>
              <description>Capture/Compare 1 output
              Polarity</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH1P</name>
              <description>Capture/Compare 1 output
              Polarity</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH1EN</name>
              <description>Capture/Compare 1 output
              enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH0NP</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH0NEN</name>
              <description>Capture/Compare 0 complementary output
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH0P</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH0EN</name>
              <description>Capture/Compare 0 output
              enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <displayName>CNT</displayName>
          <description>counter</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <displayName>PSC</displayName>
          <description>prescaler</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>PSC</name>
              <description>Prescaler value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CAR</name>
          <displayName>CAR</displayName>
          <description>auto-reload register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CAR</name>
              <description>Auto-reload value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CREP</name>
          <displayName>CREP</displayName>
          <description>repetition counter register</description>
          <addressOffset>0x30</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CREP</name>
              <description>Repetition counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0CV</name>
          <displayName>CH0CV</displayName>
          <description>capture/compare register 0</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CH0VAL</name>
              <description>Capture/Compare 0 value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH1CV</name>
          <displayName>CH1CV</displayName>
          <description>capture/compare register 1</description>
          <addressOffset>0x38</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CH1VAL</name>
              <description>Capture/Compare 1 value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CCHP</name>
          <displayName>CCHP</displayName>
          <description>break and dead-time register</description>
          <addressOffset>0x44</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>POEN</name>
              <description>Main output enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.POEN.POEN"/>
            </field>
            <field>
              <name>OAEN</name>
              <description>Automatic output enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.OAEN.OAEN"/>
            </field>
            <field>
              <name>BRKP</name>
              <description>Break polarity</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.BRKP.BRKP"/>
            </field>
            <field>
              <name>BRKEN</name>
              <description>Break enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.BRKEN.BRKEN"/>
            </field>
            <field>
              <name>ROS</name>
              <description>Off-state selection for Run
              mode</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.ROS.ROS"/>
            </field>
            <field>
              <name>IOS</name>
              <description>Off-state selection for Idle
              mode</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.IOS.IOS"/>
            </field>
            <field>
              <name>PROT</name>
              <description>complementary register protect control</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.PROT.PROT"/>
            </field>
            <field>
              <name>DTCFG</name>
              <description>Dead-time generator configure</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>DMACFG</name>
          <displayName>DMACFG</displayName>
          <description>DMA configuration register</description>
          <addressOffset>0x48</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMATC</name>
              <description>DMA burst length</description>
              <bitOffset>8</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DMATA</name>
              <description>DMA base address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>DMATB</name>
          <displayName>DMATB</displayName>
          <description>DMA transfer buffer register</description>
          <addressOffset>0x4C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMATB</name>
              <description>DMA register for burst
              accesses</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
       <register>
          <name>CFG</name>
          <displayName>CFG</displayName>
          <description>configuration register</description>
          <addressOffset>0xFC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CHVSEL</name>
              <description>Write CHxVAL register selection</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          <field>
              <name>OUTSEL</name>
              <description>The output value selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIMER15</name>
      <description>General-purpose-timers</description>
      <groupName>TIMER</groupName>
      <baseAddress>0x40014400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIMER15</name>  
        <value>21</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CKDIV</name>
              <description>Clock division</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CKDIV.CKDIV"/>
            </field>
            <field>
              <name>ARSE</name>
              <description>Auto-reload preload enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.ARSE.ARSE"/>
            </field>
            <field>
              <name>SPM</name>
              <description>One-pulse mode</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SPM</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Counter is not stopped at update event</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Counter stops counting at the next update event (clearing the CEN bit)</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPS</name>
              <description>Update request source</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPS.UPS"/>
            </field>
            <field>
              <name>UPDIS</name>
              <description>Update disable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.UPDIS.UPDIS"/>
            </field>
            <field>
              <name>CEN</name>
              <description>Counter enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL0.CEN.CEN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>control register 1</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>ISO0N</name>
              <description>Output Idle state 0</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.ISO0N.ISO0N"/>
            </field>
            <field>
              <name>ISO0</name>
              <description>Output Idle state 0</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.ISO0.ISO0"/>
            </field>
            <field>
              <name>DMAS</name>
              <description>Capture/compare DMA
              selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DMAS</name><usage>read-write</usage><enumeratedValue><name>OnCompare</name><description>CCx DMA request sent when CCx event occurs</description><value>0</value></enumeratedValue><enumeratedValue><name>OnUpdate</name><description>CCx DMA request sent when update event occurs</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CCUC</name>
              <description>Capture/compare control update
              selection</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.CCUC.CCUC"/>
            </field>
            <field>
              <name>CCSE</name>
              <description>Capture/compare preloaded
              control</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CTL1.CCSE.CCSE"/>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAINTEN</name>
          <displayName>DMAINTEN</displayName>
          <description>DMA/Interrupt enable register</description>
          <addressOffset>0x0C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0DEN</name>
              <description>Capture/Compare 0 DMA request
              enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CH0DEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Capture/compare DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Capture/compare DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UPDEN</name>
              <description>Update DMA request enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UPDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Update DMA request disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Update DMA request enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>BRKIE</name>
              <description>Break interrupt enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.BRKIE.BRKIE"/>
            </field>
            <field>
              <name>CMTIE</name>
              <description>COM interrupt enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CMTIE.CMTIE"/>
            </field>
            <field>
              <name>CH0IE</name>
              <description>Capture/Compare 0 interrupt
              enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.CH0IE.CH0IE"/>
            </field>
            <field>
              <name>UPIE</name>
              <description>Update interrupt enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.DMAINTEN.UPIE.UPIE"/>
            </field>
          </fields>
        </register>
        <register>
          <name>INTF</name>
          <displayName>INTF</displayName>
          <description>interrupt flag register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0OF</name>
              <description>Capture/Compare 0 overcapture
              flag</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0OF.CH0OF"/>
            </field>
            <field>
              <name>BRKIF</name>
              <description>Break interrupt flag</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.BRKIF.BRKIF"/>
            </field>
            <field>
              <name>CMTIF</name>
              <description>COM interrupt flag</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CMTIF.CMTIF"/>
            </field>
            <field>
              <name>CH0IF</name>
              <description>Capture/compare 0 interrupt
              flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.CH0IF.CH0IF"/>
            </field>
            <field>
              <name>UPIF</name>
              <description>Update interrupt flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.INTF.UPIF.UPIF"/>
            </field>
          </fields>
        </register>
        <register>
          <name>SWEVG</name>
          <displayName>SWEVG</displayName>
          <description>event generation register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>BRKG</name>
              <description>Break generation</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.BRKG.BRKG"/>
            </field>
            <field>
              <name>CMTG</name>
              <description>Capture/Compare control update
              generation</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CMTG.CMTG"/>
            </field>
            <field>
              <name>CH0G</name>
              <description>Capture/compare 0
              generation</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.CH0G.CH0G"/>
            </field>
            <field>
              <name>UPG</name>
              <description>Update generation</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.SWEVG.UPG.UPG"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Output</name>
          <displayName>CHCTL0_Output</displayName>
          <description>capture/compare mode register (output
          mode)</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CH0COMCTL</name>
              <description>Output Compare 0 mode</description>
              <bitOffset>4</bitOffset>
              <bitWidth>3</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMCTL.CH0COMCTL"/>
            </field>
            <field>
              <name>CH0COMSEN</name>
              <description>Output Compare 0 preload
              enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMSEN.CH0COMSEN"/>
            </field>
            <field>
              <name>CH0COMFEN</name>
              <description>Output Compare 0 fast
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0COMFEN.CH0COMFEN"/>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Capture/Compare 0
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Output.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL0_Input</name>
          <displayName>CHCTL0_Input</displayName>
          <description>capture/compare mode register 0 (input
          mode)</description>
          <alternateRegister>CHCTL0_Output</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0CAPFLT</name>
              <description>Input capture 0 filter</description>
              <bitOffset>4</bitOffset>
              <bitWidth>4</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPFLT.CH0CAPFLT"/>
            </field>
            <field>
              <name>CH0CAPPSC</name>
              <description>Input capture 0 prescaler</description>
              <bitOffset>2</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0CAPPSC.CH0CAPPSC"/>
            </field>
            <field>
              <name>CH0MS</name>
              <description>Capture/Compare 0
              selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL0_Input.CH0MS.CH0MS"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CHCTL2</name>
          <displayName>CHCTL2</displayName>
          <description>capture/compare enable
          register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0NP</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH0NEN</name>
              <description>Capture/Compare 0 complementary output
              enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
            <field>
              <name>CH0P</name>
              <description>Capture/Compare 0 output
              Polarity</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0P.CH0P"/>
            </field>
            <field>
              <name>CH0EN</name>
              <description>Capture/Compare 0 output
              enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CHCTL2.CH0EN.CH0EN"/>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <displayName>CNT</displayName>
          <description>counter</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CNT</name>
              <description>counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <displayName>PSC</displayName>
          <description>prescaler</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>PSC</name>
              <description>Prescaler value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CAR</name>
          <displayName>CAR</displayName>
          <description>auto-reload register</description>
          <addressOffset>0x2C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>CAR</name>
              <description>Auto-reload value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CREP</name>
          <displayName>CREP</displayName>
          <description>repetition counter register</description>
          <addressOffset>0x30</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CREP</name>
              <description>Repetition counter value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CH0CV</name>
          <displayName>CH0CV</displayName>
          <description>capture/compare register 0</description>
          <addressOffset>0x34</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>CH0VAL</name>
              <description>Capture/Compare 0 value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CCHP</name>
          <displayName>CCHP</displayName>
          <description>break and dead-time register</description>
          <addressOffset>0x44</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>POEN</name>
              <description>Main output enable</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.POEN.POEN"/>
            </field>
            <field>
              <name>OAEN</name>
              <description>Automatic output enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.OAEN.OAEN"/>
            </field>
            <field>
              <name>BRKP</name>
              <description>Break polarity</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.BRKP.BRKP"/>
            </field>
            <field>
              <name>BRKEN</name>
              <description>Break enable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.BRKEN.BRKEN"/>
            </field>
            <field>
              <name>ROS</name>
              <description>Off-state selection for Run
              mode</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.ROS.ROS"/>
            </field>
            <field>
              <name>IOS</name>
              <description>Off-state selection for Idle
              mode</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.IOS.IOS"/>
            </field>
            <field>
              <name>PROT</name>
              <description>complementary register protect control</description>
              <bitOffset>8</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues derivedFrom="TIMER0.CCHP.PROT.PROT"/>
            </field>
            <field>
              <name>DTCFG</name>
              <description>Dead-time generator setup</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>DMACFG</name>
          <displayName>DMACFG</displayName>
          <description>DMA configuration register</description>
          <addressOffset>0x48</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMATC</name>
              <description>DMA transfer count</description>
              <bitOffset>8</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DMATA</name>
              <description>DMA transfer access start address</description>
              <bitOffset>0</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>DMATB</name>
          <displayName>DMATB</displayName>
          <description>DMA transfer buffer register</description>
          <addressOffset>0x4C</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>DMATB</name>
              <description>DMA register for burst
              accesses</description>
              <bitOffset>0</bitOffset>
              <bitWidth>16</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>65535</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
       <register>
          <name>CFG</name>
          <displayName>CFG</displayName>
          <description>configuration register</description>
          <addressOffset>0xFC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000</resetValue>
          <fields>
            <field>
              <name>OUTSEL</name>
              <description>The output value selection</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
             <field>
              <name>CHVSEL</name>
              <description>Write CHxVAL register selection</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="TIMER15">
      <name>TIMER16</name>
      <baseAddress>0x40014800</baseAddress>
      <interrupt>
        <name>TIMER16</name>
        <value>22</value>
      </interrupt>
    </peripheral>
    <peripheral>
      <name>USART0</name>
      <description>Universal synchronous asynchronous receiver
      transmitter</description>
      <groupName>USART</groupName>
      <baseAddress>0x40013800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>USART0</name>       
        <value>27</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <displayName>CTL0</displayName>
          <description>Control register 0</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>EBIE</name>
              <description>End of Block interrupt
              enable</description>
              <bitOffset>27</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EBIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>End of block interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>End of block interrupt is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RTIE</name>
              <description>Receiver timeout interrupt
              enable</description>
              <bitOffset>26</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RTIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Receiver timeout interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Receiver timeout interrupt is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DEA</name>
              <description>Driver Enable assertion
              time</description>
              <bitOffset>21</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DED</name>
              <description>Driver Enable deassertion
              time</description>
              <bitOffset>16</bitOffset>
              <bitWidth>5</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>31</maximum></range></writeConstraint>
            </field>
            <field>
              <name>OVSMOD</name>
              <description>Oversampling mode</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OVSMOD</name><usage>read-write</usage><enumeratedValue><name>Oversampling16</name><description>Oversampling by 16</description><value>0</value></enumeratedValue><enumeratedValue><name>Oversampling8</name><description>Oversampling by 8</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>AMIE</name>
              <description>Character match interrupt
              enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>AMIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Address match interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Address match interrupt is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MEN</name>
              <description>Mute mode enable</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>MEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Receiver in active mode permanently</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Receiver can switch between mute mode and active mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WL</name>
              <description>Word length</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WL</name><usage>read-write</usage><enumeratedValue><name>Bit8</name><description>8 data bits</description><value>0</value></enumeratedValue><enumeratedValue><name>Bit9</name><description>9 data bits</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WM</name>
              <description>Receiver wakeup method</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WM</name><usage>read-write</usage><enumeratedValue><name>Idle</name><description>Idle line</description><value>0</value></enumeratedValue><enumeratedValue><name>Address</name><description>Address mask</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PCEN</name>
              <description>Parity control enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PCEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Parity control disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Parity control enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PM</name>
              <description>Parity selection</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PM</name><usage>read-write</usage><enumeratedValue><name>Even</name><description>Even parity</description><value>0</value></enumeratedValue><enumeratedValue><name>Odd</name><description>Odd parity</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PERRIE</name>
              <description>PE interrupt enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Parity error interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt is generated whenever PERR=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TBEIE</name>
              <description>interrupt enable</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TBEIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Transmission register empty interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt is generated whenever TBE=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TCIE</name>
              <description>Transmission complete interrupt
              enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TCIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Transmission complete interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt is generated whenever TC=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RBNEIE</name>
              <description>RXNE interrupt enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RBNEIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Read data buffer not empty and overrrun error interrupts are disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt is generated whenever ORERR=1 or RBNE=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IDLEIE</name>
              <description>IDLE interrupt enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>IDLEIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Idle line detected interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Interrupt is generated whenever IDLEF=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TEN</name>
              <description>Transmitter enable</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Transmitter is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Transmitter is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>REN</name>
              <description>Receiver enable</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>REN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Receiver is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Receiver is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UESM</name>
              <description>USART enable in Stop mode</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UESM</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>USART not able to wake the MCU from deep-sleep mode</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>USART is able to wake the MCU from deep-sleep mode, as long as the clock source for the USART is IRC8M or LXTAL</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>UEN</name>
              <description>USART enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>UEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>USART prescaler and outputs disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>USART prescaler and outputs enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <displayName>CTL1</displayName>
          <description>Control register 1</description>
          <addressOffset>0x4</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
            <fields>
            <field>
              <name>ADDR</name>
              <description>Address of the USART node</description>
              <bitOffset>24</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RTEN</name>
              <description>Receiver timeout enable</description>
              <bitOffset>23</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RTEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Receiver timeout feature disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Receiver timeout feature enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ABDM</name>
              <description>Auto baud rate mode</description>
              <bitOffset>21</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>ABDM</name><usage>read-write</usage><enumeratedValue><name>Start</name><description>Measurement of the start bit is used to detect the baud rate</description><value>0</value></enumeratedValue><enumeratedValue><name>Edge</name><description>Falling edge to falling edge measurement</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ABDEN</name>
              <description>Auto baud rate enable</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ABDEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Auto baud rate detection is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Auto baud rate detection is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MSBF</name>
              <description>Most significant bit first</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>MSBF</name><usage>read-write</usage><enumeratedValue><name>LSB</name><description>Data is transmitted/received with data bit 0 first, following the start bit</description><value>0</value></enumeratedValue><enumeratedValue><name>MSB</name><description>Data is transmitted/received with MSB (bit 7/8/9) first, following the start bit</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DINV</name>
              <description>Binary data inversion</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DINV</name><usage>read-write</usage><enumeratedValue><name>Positive</name><description>Logical data from the data register are send/received in positive/direct logic</description><value>0</value></enumeratedValue><enumeratedValue><name>Negative</name><description>Logical data from the data register are send/received in negative/inverse logic</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TINV</name>
              <description>TX pin active level
              inversion</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TINV</name><usage>read-write</usage><enumeratedValue><name>Standard</name><description>TX pin signal works using the standard logic levels</description><value>0</value></enumeratedValue><enumeratedValue><name>Inverted</name><description>TX pin signal values are inverted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RINV</name>
              <description>RX pin active level
              inversion</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RINV</name><usage>read-write</usage><enumeratedValue><name>Standard</name><description>RX pin signal works using the standard logic levels</description><value>0</value></enumeratedValue><enumeratedValue><name>Inverted</name><description>RX pin signal values are inverted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STRP</name>
              <description>Swap TX/RX pins</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>STRP</name><usage>read-write</usage><enumeratedValue><name>Standard</name><description>TX/RX pins are used as defined in standard pinout</description><value>0</value></enumeratedValue><enumeratedValue><name>Swapped</name><description>The TX and RX pins functions are swapped</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LMEN</name>
              <description>LIN mode enable</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LMEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>LIN mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>LIN mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>STB</name>
              <description>STOP bits</description>
              <bitOffset>12</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>STB</name><usage>read-write</usage><enumeratedValue><name>Stop1</name><description>1 stop bit</description><value>0</value></enumeratedValue><enumeratedValue><name>Stop0p5</name><description>0.5 stop bit</description><value>1</value></enumeratedValue><enumeratedValue><name>Stop2</name><description>2 stop bit</description><value>2</value></enumeratedValue><enumeratedValue><name>Stop1p5</name><description>1.5 stop bit</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CKEN</name>
              <description>Clock enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CKEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>CK pin disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>CK pin enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CPL</name>
              <description>Clock polarity</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CPL</name><usage>read-write</usage><enumeratedValue><name>NotInverted</name><description>Steady low value on CK pin outside tranmission window</description><value>0</value></enumeratedValue><enumeratedValue><name>Inverted</name><description>Steady high value on CK pin outside tranmission window</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CPH</name>
              <description>Clock phase</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CPH</name><usage>read-write</usage><enumeratedValue><name>First</name><description>The first clock transition is the first data capture edge</description><value>0</value></enumeratedValue><enumeratedValue><name>Second</name><description>The second clock transition is the first data capture edge</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CLEN</name>
              <description>Last bit clock pulse</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CLEN</name><usage>read-write</usage><enumeratedValue><name>NotOutput</name><description>The clock pulse of the last data bit is not output to the CK pin</description><value>0</value></enumeratedValue><enumeratedValue><name>Output</name><description>The clock pulse of the last data bit is output to the CK pin</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LBDIE</name>
              <description>LIN break detection interrupt
              enable</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LBDIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>An interrupt is generated whenever LBDF=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LBLEN</name>
              <description>LIN break detection length</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LBLEN</name><usage>read-write</usage><enumeratedValue><name>Bit10</name><description>10-bit break detection</description><value>0</value></enumeratedValue><enumeratedValue><name>Bit11</name><description>11-bit break detection</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ADDM</name>
              <description>7-bit Address Detection/4-bit Address
              Detection</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ADDM</name><usage>read-write</usage><enumeratedValue><name>Bit4</name><description>4-bit address detection</description><value>0</value></enumeratedValue><enumeratedValue><name>Full</name><description>Full-bit address detection</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL2</name>
          <displayName>CTL2</displayName>
          <description>Control register 2</description>
          <addressOffset>0x8</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>WUIE</name>
              <description>Wakeup from Stop mode interrupt
              enable</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WUIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Wake-up from deep-sleep mode interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Wake-up from deep-sleep mode interrupt is generated whenever WUF=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WUM</name>
              <description>Wakeup from Stop mode interrupt flag
              selection</description>
              <bitOffset>20</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>WUM</name><usage>read-write</usage><enumeratedValue><name>Address</name><description>WUF active on address match</description><value>0</value></enumeratedValue><enumeratedValue><name>Start</name><description>WUF active on start bit detection</description><value>2</value></enumeratedValue><enumeratedValue><name>RXNE</name><description>WUF active on RBNE</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SCRTNUM</name>
              <description>Smartcard auto-retry count</description>
              <bitOffset>17</bitOffset>
              <bitWidth>3</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>7</maximum></range></writeConstraint>
            </field>
            <field>
              <name>DEP</name>
              <description>Driver enable polarity
              selection</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DEP</name><usage>read-write</usage><enumeratedValue><name>High</name><description>DE signal is active high</description><value>0</value></enumeratedValue><enumeratedValue><name>Low</name><description>DE signal is active low</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DEM</name>
              <description>Driver enable mode</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DEM</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>DE function is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>The DE signal is output on the RTS pin</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DDRE</name>
              <description>DMA Disable on Reception
              Error</description>
              <bitOffset>13</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DDRE</name><usage>read-write</usage><enumeratedValue><name>NotDisabled</name><description>DMA is not disabled in case of reception error</description><value>0</value></enumeratedValue><enumeratedValue><name>Disabled</name><description>DMA is disabled following a reception error</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OVRD</name>
              <description>Overrun Disable</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OVRD</name><usage>read-write</usage><enumeratedValue><name>Enabled</name><description>Overrun Error Flag, ORE, is set when received data is not read before receiving new data</description><value>0</value></enumeratedValue><enumeratedValue><name>Disabled</name><description>Overrun functionality is disabled. If new data is received while the RXNE flag is still set the ORE flag is not set and the new received data overwrites the previous content of the RDATA register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OSB</name>
              <description>One sample bit method
              enable</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OSB</name><usage>read-write</usage><enumeratedValue><name>Sample3</name><description>Three sample bit method</description><value>0</value></enumeratedValue><enumeratedValue><name>Sample1</name><description>One sample bit method</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CTSIE</name>
              <description>CTS interrupt enable</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CTSIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>An interrupt is generated whenever CTS=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CTSEN</name>
              <description>CTS enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CTSEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>CTS hardware flow control disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>CTS mode enabled, data is only transmitted when the CTS input is asserted</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RTSEN</name>
              <description>RTS enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RTSEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>RTS hardware flow control disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>RTS output enabled, data is only requested when there is space in the receive buffer</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DENT</name>
              <description>DMA enable transmitter</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DENT</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>DMA mode is disabled for transmission</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>DMA mode is enabled for transmission</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>DENR</name>
              <description>DMA enable receiver</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>DENR</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>DMA mode is disabled for reception</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>DMA mode is enabled for reception</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SCEN</name>
              <description>Smartcard mode enable</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SCEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Smartcard Mode disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Smartcard Mode enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>NKEN</name>
              <description>Smartcard NACK enable</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>NKEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>NACK transmission in case of parity error is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>NACK transmission during parity error is enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>HDEN</name>
              <description>Half-duplex selection</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>HDEN</name><usage>read-write</usage><enumeratedValue><name>NotSelected</name><description>Half duplex mode is not selected</description><value>0</value></enumeratedValue><enumeratedValue><name>Selected</name><description>Half duplex mode is selected</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IRLP</name>
              <description>IrDA low-power</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>IRLP</name><usage>read-write</usage><enumeratedValue><name>Normal</name><description>Normal mode</description><value>0</value></enumeratedValue><enumeratedValue><name>LowPower</name><description>Low-power mode</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IREN</name>
              <description>IrDA mode enable</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>IREN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>IrDA disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>IrDA enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ERRIE</name>
              <description>Error interrupt enable</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ERRIE</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Error interrupt is disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>An interrupt is generated when FERR=1 or ORERR=1 or NERR=1 in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>BAUD</name>
          <displayName>BAUD</displayName>
          <description>Baud rate register</description>
          <addressOffset>0xC</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>INTDIV</name>
              <description>integer of baud-rate divider</description>
              <bitOffset>4</bitOffset>
              <bitWidth>12</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>4095</maximum></range></writeConstraint>
            </field>
            <field>
              <name>FRADIV</name>
              <description>integer of baud-rate divider</description>
              <bitOffset>0</bitOffset>
              <bitWidth>4</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>15</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>GP</name>
          <displayName>GP</displayName>
          <description>Guard time and prescaler
          register</description>
          <addressOffset>0x10</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>GUAT</name>
              <description>Guard time value</description>
              <bitOffset>8</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
            <field>
              <name>PSC</name>
              <description>Prescaler value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>RT</name>
          <displayName>RT</displayName>
          <description>Receiver timeout register</description>
          <addressOffset>0x14</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>BL</name>
              <description>Block Length</description>
              <bitOffset>24</bitOffset>
              <bitWidth>8</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
            <field>
              <name>RT</name>
              <description>Receiver timeout value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>24</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>16777215</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CMD</name>
          <displayName>CMD</displayName>
          <description>Request register</description>
          <addressOffset>0x18</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TXFCMD</name>
              <description>Transmit data flush
              request</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TXFCMD</name><usage>read-write</usage><enumeratedValue><name>Discard</name><description>Set the TBE flag. This allows to discard the transmit data</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RXFCMD</name>
              <description>Receive data flush request</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RXFCMD</name><usage>read-write</usage><enumeratedValue><name>Discard</name><description>Clears the RBNE flag. This allows to discard the received data without reading it, and avoid an overrun condition</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>MMCMD</name>
              <description>Mute mode request</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>MMCMD</name><usage>read-write</usage><enumeratedValue><name>Mute</name><description>Puts the USART in mute mode and sets the RWU flag</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>SBKCMD</name>
              <description>Send break request</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>SBKCMD</name><usage>read-write</usage><enumeratedValue><name>Break</name><description>Sets the SBKF flag and request to send a BREAK on the line, as soon as the transmit machine is available</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>ABDCMD</name>
              <description>Auto baud rate request</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>ABDCMD</name><usage>read-write</usage><enumeratedValue><name>Request</name><description>Resets the ABRF flag in the USART_ISR and request an automatic baud rate measurement on the next received data frame</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>Interrupt &amp; status
          register</description>
          <addressOffset>0x1C</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x000000C0</resetValue>
          <fields>
            <field>
              <name>REA</name>
              <description>Receive enable acknowledge
              flag</description>
              <bitOffset>22</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TEA</name>
              <description>Transmit enable acknowledge
              flag</description>
              <bitOffset>21</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>WUF</name>
              <description>Wakeup from Stop mode flag</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RWU</name>
              <description>Receiver wakeup from Mute
              mode</description>
              <bitOffset>19</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>SBF</name>
              <description>Send break flag</description>
              <bitOffset>18</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>AMF</name>
              <description>character match flag</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>BSY</name>
              <description>Busy flag</description>
              <bitOffset>16</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>ABDF</name>
              <description>Auto baud rate flag</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>ABDE</name>
              <description>Auto baud rate error</description>
              <bitOffset>14</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>EBF</name>
              <description>End of block flag</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RTF</name>
              <description>Receiver timeout</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CTS</name>
              <description>CTS flag</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>CTSF</name>
              <description>CTS interrupt flag</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>LBDF</name>
              <description>LIN break detection flag</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TBE</name>
              <description>Transmit data register
              empty</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>TC</name>
              <description>Transmission complete</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>RBNE</name>
              <description>Read data register not
              empty</description>
              <bitOffset>5</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>IDLEF</name>
              <description>Idle line detected</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>ORERR</name>
              <description>Overrun error</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>NERR</name>
              <description>Noise detected flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>FERR</name>
              <description>Framing error</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>PERR</name>
              <description>Parity error</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>INTC</name>
          <displayName>INTC</displayName>
          <description>Interrupt flag clear register</description>
          <addressOffset>0x20</addressOffset>
          <size>0x20</size>
          <access>write-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>WUC</name>
              <description>Wakeup from Stop mode clear
              flag</description>
              <bitOffset>20</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WUC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the WUF flag in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>AMC</name>
              <description>Character match clear flag</description>
              <bitOffset>17</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>AMC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the AMF flag in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>EBC</name>
              <description>End of timeout clear flag</description>
              <bitOffset>12</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EBC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the EBF flag in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>RTC</name>
              <description>Receiver timeout clear
              flag</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>RTC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the RCF flag in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CTSC</name>
              <description>CTS clear flag</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>CTSC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the CTSF flag in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>LBDC</name>
              <description>LIN break detection clear
              flag</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>LBDC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the LBDF flag in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>TCC</name>
              <description>Transmission complete clear
              flag</description>
              <bitOffset>6</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>TCC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the TC bit in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>IDLEC</name>
              <description>Idle line detected clear
              flag</description>
              <bitOffset>4</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>IDLEC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the IDLEF flag in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>OREC</name>
              <description>Overrun error clear flag</description>
              <bitOffset>3</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>OREC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the ORERR bit in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>NEC</name>
              <description>Noise detected clear flag</description>
              <bitOffset>2</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>NEC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the NERR bit in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>FEC</name>
              <description>Framing error clear flag</description>
              <bitOffset>1</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>FEC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the FERR bit in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PEC</name>
              <description>Parity error clear flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>PEC</name><usage>read-write</usage><enumeratedValue><name>Clear</name><description>Clears the PERR bit in the STAT register</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
        <register>
          <name>RDATA</name>
          <displayName>RDATA</displayName>
          <description>Receive data register</description>
          <addressOffset>0x24</addressOffset>
          <size>0x20</size>
          <access>read-only</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>RDATA</name>
              <description>Receive data value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>9</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>511</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>TDATA</name>
          <displayName>TDATA</displayName>
          <description>Transmit data register</description>
          <addressOffset>0x28</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>TDATA</name>
              <description>Transmit data value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>9</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>255</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CHC</name>
          <displayName>CHC</displayName>
          <description> coherence control register</description>
          <addressOffset>0xC0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>EPERR</name>
              <description>Early parity error flag</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
            <field>
              <name>HCM</name>
              <description>Hardware flow control coherence mode</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            </field>
          </fields>
        </register>
        <register>
          <name>RFCS</name>
          <displayName>RFCS</displayName>
          <description>USART receive FIFO control and status register</description>
          <addressOffset>0xD0</addressOffset>
          <size>0x20</size>
          <resetValue>0x00000400</resetValue>
          <fields>
            <field>
              <name>RFFINT</name>
              <description>Receive FIFO full interrupt flag</description>
              <bitOffset>15</bitOffset>
              <bitWidth>1</bitWidth>
              <access>read-write</access>
            </field>
            <field>
              <name>RFCNT</name>
              <description>Receive FIFO count number</description>
              <bitOffset>12</bitOffset>
              <bitWidth>3</bitWidth>
              <access>read-only</access>
            </field>
            <field>
              <name>RFF</name>
              <description>Receive FIFO full flag</description>
              <bitOffset>11</bitOffset>
              <bitWidth>1</bitWidth>
	     <access>read-only</access>
            </field>
           <field>
              <name>RFE</name>
              <description>Receive FIFO empty flag</description>
              <bitOffset>10</bitOffset>
              <bitWidth>1</bitWidth>
	     <access>read-only</access>
            </field>
           <field>
              <name>RFFIE</name>
              <description>Receive FIFO full interrupt enable</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
	     <access>read-write</access>
            </field>
          <field>
              <name>RFEN</name>
              <description>Receive FIFO enable</description>
              <bitOffset>8</bitOffset>
              <bitWidth>1</bitWidth>
	     <access>read-write</access>
            </field>
            <field>
              <name>ELNACK</name>
              <description>Early NKEN when smartcard mode is selected</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
	     <access>read-write</access>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="USART0">
      <name>USART1</name>
      <baseAddress>0x40004400</baseAddress>
      <interrupt>
        <name>USART1</name>    
        <value>28</value>
      </interrupt>
    </peripheral>
    <peripheral>
      <name>WWDGT</name>
      <description>Window watchdog timer</description>
      <groupName>WWDGT</groupName>
      <baseAddress>0x40002C00</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>WWDGT</name>  
        <value>0</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL</name>
          <displayName>CTL</displayName>
          <description>Control register</description>
          <addressOffset>0x0</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000007F</resetValue>
          <fields>
            <field>
              <name>WDGTEN</name>
              <description>Activation bit</description>
              <bitOffset>7</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>WDGTEN</name><usage>read-write</usage><enumeratedValue><name>Disabled</name><description>Watchdog disabled</description><value>0</value></enumeratedValue><enumeratedValue><name>Enabled</name><description>Watchdog enabled</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>CNT</name>
              <description>7-bit counter</description>
              <bitOffset>0</bitOffset>
              <bitWidth>7</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>127</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>CFG</name>
          <displayName>CFG</displayName>
          <description>Configuration register</description>
          <addressOffset>0x04</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x0000007F</resetValue>
          <fields>
            <field>
              <name>EWIE</name>
              <description>Early wakeup interrupt</description>
              <bitOffset>9</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EWIEW</name><usage>write</usage><enumeratedValue><name>Enable</name><description>interrupt occurs whenever the counter reaches the value 0x40</description><value>1</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>PSC</name>
              <description>Prescaler</description>
              <bitOffset>7</bitOffset>
              <bitWidth>2</bitWidth>
            <enumeratedValues><name>PSC</name><usage>read-write</usage><enumeratedValue><name>Div1</name><description>Counter clock (PCLK1 div 4096) div 1</description><value>0</value></enumeratedValue><enumeratedValue><name>Div2</name><description>Counter clock (PCLK1 div 4096) div 2</description><value>1</value></enumeratedValue><enumeratedValue><name>Div4</name><description>Counter clock (PCLK1 div 4096) div 4</description><value>2</value></enumeratedValue><enumeratedValue><name>Div8</name><description>Counter clock (PCLK1 div 4096) div 8</description><value>3</value></enumeratedValue></enumeratedValues>
            </field>
            <field>
              <name>WIN</name>
              <description>7-bit window value</description>
              <bitOffset>0</bitOffset>
              <bitWidth>7</bitWidth>
            <writeConstraint><range><minimum>0</minimum><maximum>127</maximum></range></writeConstraint>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>Status register</description>
          <addressOffset>0x08</addressOffset>
          <size>0x20</size>
          <access>read-write</access>
          <resetValue>0x00000000</resetValue>
          <fields>
            <field>
              <name>EWIF</name>
              <description>Early wakeup interrupt
              flag</description>
              <bitOffset>0</bitOffset>
              <bitWidth>1</bitWidth>
            <enumeratedValues><name>EWIFR</name><usage>read</usage><enumeratedValue><name>Pending</name><description>The EWI Interrupt Service Routine has been triggered</description><value>1</value></enumeratedValue><enumeratedValue><name>Finished</name><description>The EWI Interrupt Service Routine has been serviced</description><value>0</value></enumeratedValue></enumeratedValues>
            <enumeratedValues><name>EWIFW</name><usage>write</usage><enumeratedValue><name>Finished</name><description>The EWI Interrupt Service Routine has been serviced</description><value>0</value></enumeratedValue></enumeratedValues>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>

  </peripherals>

</device>