<!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:         23. September 2016
  $Revision:     1.3.3

  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="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.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 Aug 1 2018 17:12:47 for CMSIS-SVD 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>
