<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>CMSIS-SVD Schema File</title>
<title>CMSIS-SVD: CMSIS-SVD Schema File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="cmsis.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="printComponentTabs.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 46px;">
  <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">CMSIS-SVD
   &#160;<span id="projectnumber">Version 1.3.3</span>
   </div>
   <div id="projectbrief">CMSIS System View Description</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<div id="CMSISnav" class="tabs1">
    <ul class="tablist">
      <script type="text/javascript">
		<!--
		writeComponentTabs.call(this);
		//-->
      </script>
	  </ul>
</div>
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('schema_1_2_gr.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">CMSIS-SVD Schema File </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><pre class="fragment">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;!--

  Copyright (c) 2013-2016 ARM Limited. All rights reserved.

  SPDX-License-Identifier: Apache-2.0

  Licensed under the Apache License, Version 2.0 (the License); you may
  not use this file except in compliance with the License.
  You may obtain a copy of the License at

  www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an AS IS BASIS, WITHOUT
  WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

  $Date:         04. September 2018
  $Revision:     1.3.5

  Version 1.3.5:
  - add CM35P as enumeration value for cpuNameType.

  Version 1.3.4:
  - add dspPresent element to cpuType as SIMD instructions became optional for new processors.

  Version 1.3.3:
  - update file header to Apache 2.0 License
  - add dimableIdentifierType, as a copy of previous identifierType adding "%s",
  - update identifierType to only allow names without %s included.
  - remove enumerationNameType.
  - add headerEnumName to enumerationType and to dimArrayIndexType for peripheral arrays
    overwriting hierarchically generated names
  - add dimName to dimElementGroup. Only valid in &lt;cluster&gt; context, ignored otherwise.

  Version 1.3.2:
  adding dimIndexArray to peripheral-, cluster- and register-array to describe
  enumeration of array indices.

  Version 1.3.1:
  fixed peripheral name element type to identifierType to support %s for peripheral arrays
  added optional protection element to addressBlockType and added p=privileged

  Version 1.3:
  added dim to peripherals to describe an array of peripherals.
  added nesting of clusters to support hierarchical register structures.
  added protection element as part of the registerPropertiesGroup indicating
  special permissions are required for accessing a register.
  CPU Section extended with description of the Secure Attribution Unit.

  Version 1.2:
  Cortex-M7 support items have been added as optional tags for the device header file generation:
  fpuDP, icachePresent, dcachePresent, itcmPresent, dtcmPresent

  Version 1.1:
  For backward compatibility all additional tags have been made optional.
  Extensions may be mandatory for successful device header file generation
  Other changes are related to some restructuring of the schema.

  Note that the memory section has been removed since this would limit the
  reuse of descriptions for a series of devices.
 --&gt;

&lt;xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="qualified" version="1.3"&gt;
  &lt;!-- stringType requires a none empty string of a least one character length --&gt;
  &lt;xs:simpleType name="stringType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;xs:minLength value="1"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;

  &lt;xs:simpleType name="descriptionStringType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;xs:pattern value="[\p{IsBasicLatin}\p{IsLatin-1Supplement}]*" /&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;

  &lt;!-- cpuType specifies a selection of Cortex-M and Secure-Cores. This list will get extended as new processors are released --&gt;
  &lt;xs:simpleType name="cpuNameType"&gt;
    &lt;xs:restriction base="xs:token"&gt;
      &lt;xs:enumeration value="CM0"/&gt;
      &lt;xs:enumeration value="CM0PLUS"/&gt;
      &lt;xs:enumeration value="CM0+"/&gt;
      &lt;xs:enumeration value="CM1"/&gt;
      &lt;xs:enumeration value="SC000"/&gt;
      &lt;xs:enumeration value="CM23"/&gt;
      &lt;xs:enumeration value="CM3"/&gt;
      &lt;xs:enumeration value="CM33"/&gt;
      &lt;xs:enumeration value="CM35P"/&gt;
      &lt;xs:enumeration value="SC300"/&gt;
      &lt;xs:enumeration value="CM4"/&gt;
      &lt;xs:enumeration value="CM7"/&gt;
      &lt;xs:enumeration value="ARMV8MML"/&gt;
      &lt;xs:enumeration value="ARMV8MBL"/&gt;
      &lt;xs:enumeration value="CA5"/&gt;
      &lt;xs:enumeration value="CA7"/&gt;
      &lt;xs:enumeration value="CA8"/&gt;
      &lt;xs:enumeration value="CA9"/&gt;
      &lt;xs:enumeration value="CA15"/&gt;
      &lt;xs:enumeration value="CA17"/&gt;
      &lt;xs:enumeration value="CA53"/&gt;
      &lt;xs:enumeration value="CA57"/&gt;
      &lt;xs:enumeration value="CA72"/&gt;
      &lt;xs:enumeration value="other"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- revisionType specifies the CPU revision format as defined by ARM (rNpM) --&gt;
  &lt;xs:simpleType name="revisionType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;xs:pattern value="r[0-9]*p[0-9]*"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- EndianType pre-defines the tokens for specifying the endianess of the device --&gt;
  &lt;xs:simpleType name="endianType"&gt;
    &lt;xs:restriction base="xs:token"&gt;
      &lt;xs:enumeration value="little"/&gt;
      &lt;xs:enumeration value="big"/&gt;
      &lt;xs:enumeration value="selectable"/&gt;
      &lt;xs:enumeration value="other"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- dataType pre-defines the tokens in line with CMSIS data type definitions --&gt;
  &lt;xs:simpleType name="dataTypeType"&gt;
    &lt;xs:restriction base="xs:token"&gt;
      &lt;xs:enumeration value="uint8_t"/&gt;
      &lt;xs:enumeration value="uint16_t"/&gt;
      &lt;xs:enumeration value="uint32_t"/&gt;
      &lt;xs:enumeration value="uint64_t"/&gt;
      &lt;xs:enumeration value="int8_t"/&gt;
      &lt;xs:enumeration value="int16_t"/&gt;
      &lt;xs:enumeration value="int32_t"/&gt;
      &lt;xs:enumeration value="int64_t"/&gt;
      &lt;xs:enumeration value="uint8_t *"/&gt;
      &lt;xs:enumeration value="uint16_t *"/&gt;
      &lt;xs:enumeration value="uint32_t *"/&gt;
      &lt;xs:enumeration value="uint64_t *"/&gt;
      &lt;xs:enumeration value="int8_t *"/&gt;
      &lt;xs:enumeration value="int16_t *"/&gt;
      &lt;xs:enumeration value="int32_t *"/&gt;
      &lt;xs:enumeration value="int64_t *"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- nvicPrioBitsType specifies the integer value range for the number of bits used in NVIC to encode priority levels --&gt;
  &lt;xs:simpleType name="nvicPrioBitsType"&gt;
    &lt;xs:restriction base="xs:integer"&gt;
      &lt;xs:minInclusive value="2"/&gt;
      &lt;xs:maxInclusive value="8"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- dimableIdentifierType specifies the subset and sequence of characters used for specifying identifiers that may contain %s from dim. --&gt;
  &lt;!-- this is particularly important as these are used in ANSI C Structures during the device header file generation --&gt;
  &lt;xs:simpleType name="dimableIdentifierType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;xs:pattern value="((%s)|(%s)[_A-Za-z]{1}[_A-Za-z0-9]*)|([_A-Za-z]{1}[_A-Za-z0-9]*(\[%s\])?)|([_A-Za-z]{1}[_A-Za-z0-9]*(%s)?[_A-Za-z0-9]*)"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- identifierType specifies the subset and sequence of characters used for specifying identifiers that must not contain %s from dim. --&gt;
  &lt;!-- this is particularly important as these are used in ANSI C Structures during the device header file generation --&gt;
  &lt;xs:simpleType name="identifierType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;xs:pattern value="[_A-Za-z0-9]*"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- V1.3: Protection Access Attribute Strings --&gt;
  &lt;xs:simpleType name="protectionStringType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;!-- s = Secure                      --&gt;
      &lt;!-- n = Non-secure                  --&gt;
      &lt;!-- p = Privileged                  --&gt;
      &lt;xs:pattern value="[snp]"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- V1.3: SAU Access Type --&gt;
  &lt;xs:simpleType name="sauAccessType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;!-- c = non-secure Callable / Secure --&gt;
      &lt;!-- n = Non-secure                   --&gt;
      &lt;xs:pattern value="[cn]"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;

  &lt;!-- dimIndexType specifies the subset and sequence of characters used for specifying the sequence of indices in register arrays --&gt;
  &lt;xs:simpleType name="dimIndexType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;xs:pattern value="[0-9]+\-[0-9]+|[A-Z]-[A-Z]|[_0-9a-zA-Z]+(,\s*[_0-9a-zA-Z]+)+"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- scaledNonNegativeInteger specifies the format in which numbers are represented in hexadecimal or decimal format --&gt;
  &lt;xs:simpleType name="scaledNonNegativeInteger"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;xs:pattern value="[+]?(0x|0X|#)?[0-9a-fA-F]+[kmgtKMGT]?"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- enumeratedValueDataType specifies the number formats for the values in enumeratedValues --&gt;
  &lt;xs:simpleType name="enumeratedValueDataType"&gt;
    &lt;xs:restriction base="xs:string"&gt;
      &lt;xs:pattern value="[+]?(((0x|0X)[0-9a-fA-F]+)|([0-9]+)|((#|0b)[01xX]+))"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- accessType specfies the pre-defined tokens for the available accesses --&gt;
  &lt;xs:simpleType name="accessType"&gt;
    &lt;xs:restriction base="xs:token"&gt;
      &lt;xs:enumeration value="read-only"/&gt;
      &lt;xs:enumeration value="write-only"/&gt;
      &lt;xs:enumeration value="read-write"/&gt;
      &lt;xs:enumeration value="writeOnce"/&gt;
      &lt;xs:enumeration value="read-writeOnce"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- modifiedWriteValuesType specifies the pre-defined tokens for the write side effects --&gt;
  &lt;xs:simpleType name="modifiedWriteValuesType"&gt;
    &lt;xs:restriction base="xs:token"&gt;
      &lt;xs:enumeration value="oneToClear"/&gt;
      &lt;xs:enumeration value="oneToSet"/&gt;
      &lt;xs:enumeration value="oneToToggle"/&gt;
      &lt;xs:enumeration value="zeroToClear"/&gt;
      &lt;xs:enumeration value="zeroToSet"/&gt;
      &lt;xs:enumeration value="zeroToToggle"/&gt;
      &lt;xs:enumeration value="clear"/&gt;
      &lt;xs:enumeration value="set"/&gt;
      &lt;xs:enumeration value="modify"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- readAction type specifies the pre-defined tokens for read side effects --&gt;
  &lt;xs:simpleType name="readActionType"&gt;
    &lt;xs:restriction base="xs:token"&gt;
      &lt;xs:enumeration value="clear"/&gt;
      &lt;xs:enumeration value="set"/&gt;
      &lt;xs:enumeration value="modify"/&gt;
      &lt;xs:enumeration value="modifyExternal"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- enumUsageType specifies the pre-defined tokens for selecting what access types an enumeratedValues set is associated with --&gt;
  &lt;xs:simpleType name="enumUsageType"&gt;
    &lt;xs:restriction base="xs:token"&gt;
      &lt;xs:enumeration value="read"/&gt;
      &lt;xs:enumeration value="write"/&gt;
      &lt;xs:enumeration value="read-write"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- bitRangeType specifies the bit numbers to be restricted values from 0 - 69 --&gt;
  &lt;xs:simpleType name="bitRangeType"&gt;
    &lt;xs:restriction base="xs:token"&gt;
      &lt;xs:pattern value="\[([0-4])?[0-9]:([0-4])?[0-9]\]"/&gt;
    &lt;/xs:restriction&gt;
  &lt;/xs:simpleType&gt;
  &lt;!-- writeContraintType specifies how to describe the restriction of the allowed values that can be written to a resource --&gt;
  &lt;xs:complexType name="writeConstraintType"&gt;
    &lt;xs:choice&gt;
      &lt;xs:element name="writeAsRead" type="xs:boolean"/&gt;
      &lt;xs:element name="useEnumeratedValues" type="xs:boolean"/&gt;
      &lt;xs:element name="range"&gt;
        &lt;xs:complexType&gt;
          &lt;xs:sequence&gt;
            &lt;xs:element name="minimum" type="scaledNonNegativeInteger"/&gt;
            &lt;xs:element name="maximum" type="scaledNonNegativeInteger"/&gt;
          &lt;/xs:sequence&gt;
        &lt;/xs:complexType&gt;
      &lt;/xs:element&gt;
    &lt;/xs:choice&gt;
  &lt;/xs:complexType&gt;
  &lt;!-- addressBlockType specifies the elements to describe an address block --&gt;
  &lt;xs:complexType name="addressBlockType"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name="offset" type="scaledNonNegativeInteger"/&gt;
      &lt;xs:element name="size" type="scaledNonNegativeInteger"/&gt;
      &lt;xs:element name="usage"&gt;
        &lt;xs:simpleType&gt;
          &lt;xs:restriction base="xs:token"&gt;
            &lt;xs:enumeration value="registers"/&gt;
            &lt;xs:enumeration value="buffer"/&gt;
            &lt;xs:enumeration value="reserved"/&gt;
          &lt;/xs:restriction&gt;
        &lt;/xs:simpleType&gt;
      &lt;/xs:element&gt;
      &lt;!-- Version 1.3.2: optional access protection for an address block s=secure n=non-secure p=privileged --&gt;
      &lt;xs:element name="protection" type="protectionStringType" minOccurs="0"/&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:complexType&gt;
  &lt;!-- interruptType specifies how to describe an interrupt associated with a peripheral --&gt;
  &lt;xs:complexType name="interruptType"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name="name" type="stringType"/&gt;
      &lt;xs:element name="description" type="xs:string" minOccurs="0"/&gt;
      &lt;xs:element name="value" type="xs:integer"/&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:complexType&gt;
  &lt;!-- register properties group specifies register size, access permission and reset value
       this is used in multiple locations. Settings are inherited downstream. --&gt;
  &lt;xs:group name="registerPropertiesGroup"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name="size" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
      &lt;xs:element name="access" type="accessType" minOccurs="0"/&gt;
      &lt;!-- V 1.3: extended register access protection --&gt;
      &lt;xs:element name="protection" type="protectionStringType" minOccurs="0"/&gt;
      &lt;xs:element name="resetValue" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
      &lt;xs:element name="resetMask" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:group&gt;
  &lt;!-- bitRangeLsbMsbStyle specifies the bit position of a field within a register
       by specifying the least significant and the most significant bit position --&gt;
  &lt;xs:group name="bitRangeLsbMsbStyle"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name="lsb"  type="scaledNonNegativeInteger"/&gt;
      &lt;xs:element name="msb"  type="scaledNonNegativeInteger"/&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:group&gt;
  &lt;!-- bitRangeOffsetWidthStyle specifies the bit position of a field within a register
       by specifying the least significant bit position and the bitWidth of the field --&gt;
  &lt;xs:group name="bitRangeOffsetWidthStyle"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name="bitOffset" type="scaledNonNegativeInteger"/&gt;
      &lt;xs:element name="bitWidth" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:group&gt;

  &lt;!-- dimElementGroup specifies the number of array elements (dim), the address offset
       between to consecutive array elements and an a comma seperated list of strings
       being used for identifying each element in the array --&gt;
  &lt;xs:group name="dimElementGroup"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name="dim" type="scaledNonNegativeInteger"/&gt;
      &lt;xs:element name="dimIncrement" type="scaledNonNegativeInteger"/&gt;
      &lt;xs:element name="dimIndex" type="dimIndexType" minOccurs="0"/&gt;
      &lt;xs:element name="dimName" type="identifierType" minOccurs="0"/&gt;
      &lt;xs:element name="dimArrayIndex" type="dimArrayIndexType" minOccurs="0"/&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:group&gt;

  &lt;xs:complexType name="cpuType"&gt;
    &lt;xs:sequence&gt;
      &lt;!-- V1.1: ARM processor name: Cortex-Mx / SCxxx --&gt;
      &lt;xs:element name="name" type="cpuNameType"/&gt;
      &lt;!-- V1.1: ARM defined revision of the cpu --&gt;
      &lt;xs:element name="revision" type="revisionType"/&gt;
      &lt;!-- V1.1: Endian specifies the endianess of the processor/device --&gt;
      &lt;xs:element name="endian" type="endianType"/&gt;
      &lt;!-- V1.1: mpuPresent specifies whether or not a memory protection unit is physically present --&gt;
      &lt;xs:element name="mpuPresent" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.1: fpuPresent specifies whether or not a floating point hardware unit is physically present --&gt;
      &lt;xs:element name="fpuPresent" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.2: fpuDP specifies a double precision floating point hardware unit is physically present--&gt;
      &lt;xs:element name="fpuDP" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.3: dspPresent specifies whether the optional SIMD instructions are supported by processor --&gt;
      &lt;xs:element name="dspPresent" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.2: icachePresent specifies that an instruction cache is physically present--&gt;
      &lt;xs:element name="icachePresent" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.2: dcachePresent specifies that a data cache is physically present--&gt;
      &lt;xs:element name="dcachePresent" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.2: itcmPresent specifies that an instruction tightly coupled memory is physically present--&gt;
      &lt;xs:element name="itcmPresent" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.2: dtcmPresent specifies that an data tightly coupled memory is physically present--&gt;
      &lt;xs:element name="dtcmPresent" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.1: vtorPresent is used for Cortex-M0+ based devices only. It indicates whether the Vector --&gt;
      &lt;!--       Table Offset Register is implemented in the device or not                              --&gt;
      &lt;xs:element name="vtorPresent" type="xs:boolean" minOccurs="0"/&gt;
      &lt;!-- V1.1: nvicPrioBits specifies the number of bits used by the Nested Vectored Interrupt Controller --&gt;
      &lt;!--       for defining the priority level = # priority levels                                        --&gt;
      &lt;xs:element name="nvicPrioBits" type="scaledNonNegativeInteger"/&gt;
      &lt;!-- V1.1: vendorSystickConfig is set true if a custom system timer is implemented in the device --&gt;
      &lt;!--       instead of the ARM specified SysTickTimer                                             --&gt;
      &lt;xs:element name="vendorSystickConfig" type="xs:boolean"/&gt;
      &lt;!-- V1.3: reports the total number of interrupts implemented by the device (optional) --&gt;
      &lt;xs:element name="deviceNumInterrupts" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
      &lt;!-- V1.3: sauRegions specifies the available number of address regions --&gt;
      &lt;!--       if not specified a value of zero is assumed                  --&gt;
      &lt;xs:element name="sauNumRegions" type="scaledNonNegativeInteger" minOccurs="0"/&gt;
      &lt;!-- V1.3: SAU Regions Configuration (if fully or partially predefined) --&gt;
      &lt;xs:element name="sauRegionsConfig" minOccurs="0"&gt;
        &lt;xs:complexType&gt;
          &lt;xs:sequence&gt;
            &lt;xs:element name="region" minOccurs="0" maxOccurs="unbounded"&gt;
              &lt;!-- addressBlockType specifies the elements to describe an address block --&gt;
              &lt;xs:complexType&gt;
                &lt;xs:sequence minOccurs="1"   maxOccurs="unbounded"&gt;
                  &lt;xs:element name="base"    type="scaledNonNegativeInteger"/&gt;
                  &lt;xs:element name="limit"   type="scaledNonNegativeInteger"/&gt;
                  &lt;xs:element name="access"  type="sauAccessType"/&gt;
                &lt;/xs:sequence&gt;
                &lt;xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/&gt;
                &lt;xs:attribute name="name"    type="xs:string"  use="optional"/&gt;
              &lt;/xs:complexType&gt;
            &lt;/xs:element&gt;
          &lt;/xs:sequence&gt;
          &lt;xs:attribute name="enabled" type="xs:boolean" use="optional" default="true"/&gt;
          &lt;xs:attribute name="protectionWhenDisabled" type="protectionStringType" use="optional" default="s"/&gt;
        &lt;/xs:complexType&gt;
      &lt;/xs:element&gt;
     &lt;/xs:sequence&gt;
  &lt;/xs:complexType&gt;

  &lt;xs:complexType name="enumeratedValueType"&gt;
    &lt;xs:sequence&gt;
      &lt;!-- name is a ANSI C indentifier representing the value (C Enumeration) --&gt;
      &lt;xs:element name="name" type="identifierType"/&gt;
      &lt;!-- description contains the details about the semantics/behavior specified by this value --&gt;
      &lt;xs:element name="description" type="stringType" minOccurs="0"/&gt;
      &lt;xs:choice&gt;
        &lt;xs:element name="value" type="enumeratedValueDataType"/&gt;
        &lt;!-- isDefault specifies the name and description for all values that are not
             specifically described individually --&gt;
        &lt;xs:element name="isDefault" type="xs:boolean"/&gt;
      &lt;/xs:choice&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:complexType&gt;

  &lt;xs:complexType name="enumerationType"&gt;
    &lt;xs:sequence&gt;
      &lt;!-- name specfies a reference to this enumeratedValues section for reuse purposes
           this name does not appear in the System Viewer nor the Header File. --&gt;
      &lt;xs:element name="name" type="identifierType" minOccurs="0"/&gt;
      &lt;!-- overrides the hierarchical enumeration type in the device header file. User is responsible for uniqueness across description --&gt;
      &lt;xs:element name="headerEnumName" type="identifierType" minOccurs="0"/&gt;
      &lt;!-- usage specifies whether this enumeration is to be used for read or write or
                                                       (read and write) accesses --&gt;
      &lt;xs:element name="usage" type="enumUsageType" minOccurs="0"/&gt;
      &lt;!-- enumeratedValue derivedFrom=&lt;identifierType&gt; --&gt;
      &lt;xs:element name="enumeratedValue" type="enumeratedValueType" minOccurs="1" maxOccurs="unbounded"/&gt;
    &lt;/xs:sequence&gt;
    &lt;xs:attribute name="derivedFrom" type="identifierType" use="optional"/&gt;
  &lt;/xs:complexType&gt;

  &lt;xs:complexType name="dimArrayIndexType"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:element name="headerEnumName" type="identifierType" minOccurs="0"/&gt;
      &lt;xs:element name="enumeratedValue" type="enumeratedValueType" minOccurs="1" maxOccurs="unbounded"/&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:complexType&gt;

  &lt;xs:complexType name="fieldType"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:group    ref="dimElementGroup" minOccurs="0"/&gt;
      &lt;!-- name specifies a field's name. The System Viewer and the device header file will
           use the name of the field as identifier --&gt;
      &lt;xs:element name="name" type="dimableIdentifierType"/&gt;
      &lt;!-- description contains reference manual level information about the function and
           options of a field --&gt;
      &lt;xs:element name="description" type="stringType" minOccurs="0"/&gt;
      &lt;!-- alternative specifications of the bit position of the field within the register --&gt;
      &lt;xs:choice minOccurs="1" maxOccurs="1"&gt;
        &lt;!-- bit field described by lsb followed by msb tag --&gt;
        &lt;xs:group ref="bitRangeLsbMsbStyle"/&gt;
        &lt;!-- bit field described by bit offset relative to Bit0 + bit width of field --&gt;
        &lt;xs:group ref="bitRangeOffsetWidthStyle"/&gt;
        &lt;!-- bit field described by [&lt;msb&gt;:&lt;lsb&gt;] --&gt;
        &lt;xs:element name="bitRange" type="bitRangeType"/&gt;
      &lt;/xs:choice&gt;
      &lt;!-- access describes the predefined permissions for the field. --&gt;
      &lt;xs:element name="access" type="accessType" minOccurs="0"/&gt;
      &lt;!-- predefined description of write side effects --&gt;
      &lt;xs:element name="modifiedWriteValues" type="modifiedWriteValuesType" minOccurs="0"/&gt;
      &lt;!-- writeContstraint specifies the subrange of allowed values --&gt;
      &lt;xs:element name="writeConstraint" type="writeConstraintType" minOccurs="0"/&gt;
      &lt;!-- readAction specifies the read side effects. --&gt;
      &lt;xs:element name="readAction" type="readActionType" minOccurs="0"/&gt;
      &lt;!-- enumeratedValues derivedFrom=&lt;identifierType&gt; --&gt;
      &lt;xs:element name="enumeratedValues" type="enumerationType" minOccurs="0" maxOccurs="2"&gt;
      &lt;/xs:element&gt;
    &lt;/xs:sequence&gt;
    &lt;xs:attribute name="derivedFrom" type="dimableIdentifierType" use="optional"/&gt;
  &lt;/xs:complexType&gt;

  &lt;xs:complexType name="fieldsType"&gt;
    &lt;xs:sequence&gt;
      &lt;!-- field derivedFrom=&lt;identifierType&gt; --&gt;
      &lt;xs:element name="field" type="fieldType" minOccurs="1" maxOccurs="unbounded"/&gt;
    &lt;/xs:sequence&gt;
  &lt;/xs:complexType&gt;

  &lt;xs:complexType name="registerType"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:group    ref="dimElementGroup" minOccurs="0"/&gt;
      &lt;!-- name specifies the name of the register. The register name is used by System Viewer and
                                     device header file generator to represent a register --&gt;
      &lt;xs:element name="name" type="dimableIdentifierType"/&gt;
      &lt;!-- display name specifies a register name without the restritions of an ANSIS C identifier.
                                     The use of this tag is discouraged because it does not allow consistency between
                                     the System View and the device header file. --&gt;
      &lt;xs:element name="displayName" type="stringType" minOccurs="0"/&gt;
      &lt;!-- description contains a reference manual level description about the register and it's purpose --&gt;
      &lt;xs:element name="description" type="stringType" minOccurs="0"/&gt;
      &lt;xs:choice&gt;
        &lt;!-- alternateGroup specifies the identifier of the subgroup a register belongs to.
                                       This is useful if a register has a different description per mode but a single name --&gt;
        &lt;xs:element name="alternateGroup" type="identifierType" minOccurs="0"/&gt;
        &lt;!-- V1.1: alternateRegister specifies an alternate register description for an address that is
                                       already fully described. In this case the register name must be unique within the peripheral --&gt;
        &lt;xs:element name="alternateRegister" type="dimableIdentifierType" minOccurs="0"/&gt;
      &lt;/xs:choice&gt;
      &lt;!-- addressOffset describes the address of the register relative to the baseOffset of the peripheral --&gt;
      &lt;xs:element name="addressOffset" type="scaledNonNegativeInteger"/&gt;
      &lt;!-- registerPropertiesGroup elements specify the default values for register size, access permission and
                                     reset value. These default values are inherited to all fields contained in this register --&gt;
      &lt;xs:group    ref="registerPropertiesGroup" minOccurs="0"/&gt;
      &lt;!-- V1.1: dataType specifies a CMSIS compliant native dataType for a register (i.e. signed, unsigned, pointer) --&gt;
      &lt;xs:element name="dataType" type="dataTypeType" minOccurs="0"/&gt;
      &lt;!-- modifiedWriteValues specifies the write side effects --&gt;
      &lt;xs:element name="modifiedWriteValues" type="modifiedWriteValuesType" minOccurs="0"/&gt;
      &lt;!-- writeConstraint specifies the subset of allowed write values --&gt;
      &lt;xs:element name="writeConstraint" type="writeConstraintType" minOccurs="0"/&gt;
      &lt;!-- readAcction specifies the read side effects --&gt;
      &lt;xs:element name="readAction" type="readActionType" minOccurs="0"/&gt;
      &lt;!-- fields section contains all fields that belong to this register --&gt;
      &lt;xs:element name="fields" type="fieldsType" minOccurs="0" maxOccurs="1"/&gt;
    &lt;/xs:sequence&gt;
    &lt;xs:attribute name="derivedFrom" type="dimableIdentifierType" use="optional"/&gt;
  &lt;/xs:complexType&gt;

  &lt;!-- V1.1: A cluster is a set of registers that are composed into a C data structure in the device header file --&gt;
  &lt;xs:complexType name="clusterType"&gt;
    &lt;xs:sequence&gt;
      &lt;xs:group   ref="dimElementGroup" minOccurs="0"/&gt;
      &lt;xs:element name="name" type="dimableIdentifierType"/&gt;
      &lt;xs:element name="description" type="xs:string"/&gt;
      &lt;!-- V1.1: alternateCluster specifies an alternative description for a cluster address range that is
                 already fully described. In this case the cluster name must be unique within the peripheral --&gt;
      &lt;xs:element name="alternateCluster" type="dimableIdentifierType" minOccurs="0"/&gt;
      &lt;!-- V1.1: headerStructName specifies the name for the cluster structure typedef
                 used in the device header generation instead of the cluster name --&gt;
      &lt;xs:element name="headerStructName" type="identifierType" minOccurs="0"/&gt;
      &lt;xs:element name="addressOffset" type="scaledNonNegativeInteger"/&gt;
      &lt;!-- registerPropertiesGroup elements specify the default values for register size, access permission and
                 reset value. These default values are inherited to all registers contained in this peripheral --&gt;
      &lt;xs:group ref="registerPropertiesGroup" minOccurs="0"/&gt;
      &lt;xs:sequence&gt;
        &lt;xs:choice minOccurs="1" maxOccurs="unbounded"&gt;
          &lt;xs:element name="register" type="registerType" minOccurs="0" maxOccurs="unbounded"/&gt;
          &lt;!-- 1.3: nesting of cluster is supported --&gt;
          &lt;xs:element name="cluster" type="clusterType" minOccurs="0" maxOccurs="unbounded"/&gt;
        &lt;/xs:choice&gt;
      &lt;/xs:sequence&gt;
    &lt;/xs:sequence&gt;
    &lt;xs:attribute name="derivedFrom" type="dimableIdentifierType" use="optional"/&gt;
  &lt;/xs:complexType&gt;

  &lt;!-- the registers section can have an arbitrary list of cluster and register sections --&gt;
  &lt;xs:complexType name="registersType"&gt;
    &lt;xs:choice minOccurs="1" maxOccurs="unbounded"&gt;
      &lt;xs:element name="cluster" type="clusterType"/&gt;
      &lt;xs:element name="register" type="registerType"/&gt;
    &lt;/xs:choice&gt;
  &lt;/xs:complexType&gt;

  &lt;xs:complexType name="peripheralType"&gt;
    &lt;xs:sequence&gt;
      &lt;!-- 1.3: specify uni-dimensional array of peripheral - requires name="&lt;name&gt;[%s]" --&gt;
      &lt;xs:group    ref="dimElementGroup" minOccurs="0"/&gt;
      &lt;!-- name specifies the name of a peripheral. This name is used for the System View and device header file --&gt;
      &lt;xs:element name="name" type="dimableIdentifierType"/&gt;
      &lt;!-- version specifies the version of the peripheral descriptions --&gt;
      &lt;xs:element name="version" type="stringType" minOccurs="0"/&gt;
      &lt;!-- description provides a high level functional description of the peripheral --&gt;
      &lt;xs:element name="description" type="stringType" minOccurs="0"/&gt;
      &lt;!-- V1.1: alternatePeripheral specifies an alternative description for an address range that is
           already fully by a peripheral described. In this case the peripheral name must be unique within the device description --&gt;
      &lt;xs:element name="alternatePeripheral" type="dimableIdentifierType" minOccurs="0"/&gt;
      &lt;!-- groupName assigns this peripheral to a group of peripherals. This is only used bye the System View --&gt;
      &lt;xs:element name="groupName" type="xs:Name" minOccurs="0"/&gt;
      &lt;!-- prependToName specifies a prefix that is placed in front of each register name of this peripheral.
                         The device header file will show the registers in a C-Struct of the peripheral without the prefix. --&gt;
      &lt;xs:element name="prependToName" type="identifierType" minOccurs="0"/&gt;
      &lt;!-- appendToName is a postfix that is appended to each register name of this peripheral. The device header
                         file will sho the registers in a C-Struct of the peripheral without the postfix --&gt;
      &lt;xs:element name="appendToName" type="identifierType" minOccurs="0"/&gt;
      &lt;!-- V1.1: headerStructName specifies the name for the peripheral structure typedef
                         used in the device header generation instead of the peripheral name --&gt;
      &lt;xs:element name="headerStructName" type="dimableIdentifierType" minOccurs="0"/&gt;
      &lt;!-- disableCondition contains a logical expression based on constants and register or bit-field values
                         if the condition is evaluated to true, the peripheral display will be disabled --&gt;
      &lt;xs:element name="disableCondition" type="stringType" minOccurs="0"/&gt;
      &lt;!-- baseAddress specifies the absolute base address of a peripheral. For derived peripherals it is mandatory
                         to specify a baseAddress. --&gt;
      &lt;xs:element name="baseAddress" type="scaledNonNegativeInteger"/&gt;
      &lt;!-- registerPropertiesGroup elements specify the default values for register size, access permission and
                         reset value. These default values are inherited to all registers contained in this peripheral --&gt;
      &lt;xs:group ref="registerPropertiesGroup" minOccurs="0"/&gt;
      &lt;!-- addressBlock specifies one or more address ranges that are assigned exclusively to this peripheral.
                         derived peripherals may have no addressBlock, however none-derived peripherals are required to specify
                         at least one address block --&gt;
      &lt;xs:element name="addressBlock" type="addressBlockType" minOccurs="0" maxOccurs="unbounded"/&gt;
      &lt;!-- interrupt specifies can specify one or more interrtupts by name, description and value --&gt;
      &lt;xs:element name="interrupt" type="interruptType" minOccurs="0" maxOccurs="unbounded"/&gt;
      &lt;!-- registers section contains all registers owned by the peripheral. In case a peripheral gets derived it does
                        not have its own registers section, hence this section is optional. A unique peripheral without a
                        registers section is not allowed --&gt;
      &lt;xs:element name="registers" type="registersType" minOccurs="0" maxOccurs="1"&gt;
      &lt;/xs:element&gt;
    &lt;/xs:sequence&gt;
    &lt;xs:attribute name="derivedFrom" type="dimableIdentifierType" use="optional"/&gt;
  &lt;/xs:complexType&gt;

  &lt;!-- ==================================================== --&gt;
  &lt;!-- The top level element of a description is the device --&gt;
  &lt;!-- ==================================================== --&gt;
  &lt;xs:element name="device" nillable="true"&gt;
    &lt;xs:complexType&gt;
      &lt;xs:sequence&gt;
        &lt;!-- V1.1: Vendor Name --&gt;
        &lt;xs:element name="vendor" type="stringType" minOccurs="0"/&gt;
        &lt;!-- V1.1: Vendor ID - a short name for referring to the vendor (e.g. Texas Instruments = TI) --&gt;
        &lt;xs:element name="vendorID" type="identifierType" minOccurs="0"/&gt;
        &lt;!-- name specifies the device name being described --&gt;
        &lt;xs:element name="name" type="identifierType"/&gt;
        &lt;!-- V1.1: series specifies the device series or family name --&gt;
        &lt;xs:element name="series" type="stringType" minOccurs="0"/&gt;
        &lt;!-- version specifies the version of the device description --&gt;
        &lt;xs:element name="version" type="stringType"/&gt;
        &lt;!-- description is a string describing the device features (e.g. memory size, peripherals, etc.) --&gt;
        &lt;xs:element name="description" type="stringType"/&gt;
        &lt;!-- V1.1: licenseText specifies the file header section to be included in any derived file --&gt;
        &lt;xs:element name="licenseText" type="stringType" minOccurs="0"/&gt;
        &lt;!-- V1.1: cpu specifies the details of the processor included in the device --&gt;
        &lt;xs:element name="cpu" type="cpuType" minOccurs="0"/&gt;
        &lt;!-- V1.1: the tag specifies the filename without extension of the CMSIS System Device include file.
             This tag is used by the header file generator for customizing the include statement referencing the
             CMSIS system file within the CMSIS device header file. By default the filename is "system_&lt;device.name&gt;"
             In cases a device series shares a single system header file, the name of the series shall be used
             instead of the individual device name. --&gt;
        &lt;xs:element name="headerSystemFilename" type="identifierType" minOccurs="0"/&gt;
        &lt;!-- V1.1: headerDefinitionPrefix specifies the string being prepended to all names of types defined in
             generated device header file --&gt;
        &lt;xs:element name="headerDefinitionsPrefix" type="identifierType" minOccurs="0"/&gt;
        &lt;!-- addressUnitBits specifies the size of the minimal addressable unit in bits --&gt;
        &lt;xs:element name="addressUnitBits" type="scaledNonNegativeInteger"/&gt;
        &lt;!-- width specifies the number of bits for the maximum single transfer size allowed by the bus interface.
             This sets the maximum size of a single register that can be defined for an address space --&gt;
        &lt;xs:element name="width" type="scaledNonNegativeInteger"/&gt;
        &lt;!-- registerPropertiesGroup elements specify the default values for register size, access permission and
             reset value --&gt;
        &lt;xs:group ref="registerPropertiesGroup" minOccurs="0"/&gt;

        &lt;!-- peripherals is containing all peripherals --&gt;
        &lt;xs:element name="peripherals"&gt;
          &lt;xs:complexType&gt;
            &lt;xs:sequence&gt;
              &lt;xs:element name="peripheral" type="peripheralType" minOccurs="1" maxOccurs="unbounded"/&gt;
            &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;
        &lt;/xs:element&gt;

        &lt;!-- Vendor Extensions: this section captures custom extensions. This section will be ignored by default --&gt;
        &lt;xs:element name="vendorExtensions" minOccurs="0" maxOccurs="1"&gt;
          &lt;xs:complexType&gt;
            &lt;xs:sequence&gt;
              &lt;xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"&gt;
              &lt;/xs:any&gt;
            &lt;/xs:sequence&gt;
          &lt;/xs:complexType&gt;
        &lt;/xs:element&gt;
      &lt;/xs:sequence&gt;
      &lt;xs:attribute name="schemaVersion" type="xs:decimal" use="required"/&gt;
    &lt;/xs:complexType&gt;
  &lt;/xs:element&gt;
&lt;/xs:schema&gt;

&lt;!-- END OF FILE --&gt;</pre> </div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Wed Jul 10 2019 15:21:05 for CMSIS-SVD Version 1.3.3 by Arm Ltd. All rights reserved.
	<!--
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 
	-->
	</li>
  </ul>
</div>
</body>
</html>
