summaryrefslogtreecommitdiff
path: root/docs/Zone/html/xml_memories.html
blob: ec2cb964295474708a9b3b19ad900dedc87f78e0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
<!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>/rzone/resources/memories element</title>
<title>CMSIS-Zone (Preview): /rzone/resources/memories element</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-Zone (Preview)
   &#160;<span id="projectnumber">Version 0.9.2</span>
   </div>
   <div id="projectbrief">System Resource Management</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('xml_memories.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>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><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">/rzone/resources/memories element </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>The <a class="el" href="xml_memories.html">/rzone/resources/memories element</a> contains:</p>
<ul>
<li>a list of all memory regions available in this system.</li>
<li>a list of all Memory Protection Controllers (MPC) in this system. Some memory region or MPC might restrict the availability to specific processors.</li>
</ul>
<p><b>Example</b> </p>
<div class="fragment"><div class="line">&lt;resources&gt;</div>
<div class="line">  &lt;memories&gt;</div>
<div class="line">    &lt;memory name=<span class="stringliteral">&quot;ExtMem1&quot;</span>    start=<span class="stringliteral">&quot;0x00000000&quot;</span> physical=<span class="stringliteral">&quot;0x00000000&quot;</span> size=<span class="stringliteral">&quot;0x00010000&quot;</span> access=<span class="stringliteral">&quot;rwx&quot;</span> security=<span class="stringliteral">&quot;&quot;</span>  type=<span class="stringliteral">&quot;RAM&quot;</span> info=<span class="stringliteral">&quot;External memory 1 / remap&quot;</span> external=<span class="stringliteral">&quot;true&quot;</span> /&gt;</div>
<div class="line">    &lt;memory name=<span class="stringliteral">&quot;Flash_NS&quot;</span>   start=<span class="stringliteral">&quot;0x08000000&quot;</span>                       size=<span class="stringliteral">&quot;0x00080000&quot;</span> access=<span class="stringliteral">&quot;rx&quot;</span>  security=<span class="stringliteral">&quot;&quot;</span>  type=<span class="stringliteral">&quot;ROM&quot;</span> info=<span class="stringliteral">&quot;Flash Memory (non secure)&quot;</span>                 /&gt;</div>
<div class="line">    &lt;mpc    name=<span class="stringliteral">&quot;IOTKIT_MPCSSRAM0&quot;</span> start=<span class="stringliteral">&quot;0x08000000&quot;</span>                 size=<span class="stringliteral">&quot;0x00100000&quot;</span> type=<span class="stringliteral">&quot;sp&quot;</span>    blk_size=<span class="stringliteral">&quot;0x20000&quot;</span>      info=<span class="stringliteral">&quot;MPC for extended Flash&quot;</span>                    /&gt;</div>
<div class="line">    &lt;memory name=<span class="stringliteral">&quot;Flash_S&quot;</span>    start=<span class="stringliteral">&quot;0x0c000000&quot;</span> physical=<span class="stringliteral">&quot;0x08001000&quot;</span> size=<span class="stringliteral">&quot;0x00080000&quot;</span> access=<span class="stringliteral">&quot;rx&quot;</span>  security=<span class="stringliteral">&quot;c&quot;</span> type=<span class="stringliteral">&quot;ROM&quot;</span> info=<span class="stringliteral">&quot;Flash Memory (secure)&quot;</span>                     /&gt;</div>
<div class="line"></div>
<div class="line">    &lt;memory name=<span class="stringliteral">&quot;SRAM1_C_NS&quot;</span> start=<span class="stringliteral">&quot;0x0A000000&quot;</span>                       size=<span class="stringliteral">&quot;0x00030000&quot;</span> access=<span class="stringliteral">&quot;rwx&quot;</span> security=<span class="stringliteral">&quot;&quot;</span>  type=<span class="stringliteral">&quot;RAM&quot;</span> info=<span class="stringliteral">&quot;SRAM1 Code (non secure)&quot;</span>   /&gt;</div>
<div class="line">    &lt;memory name=<span class="stringliteral">&quot;SRAM1_C_S&quot;</span>  start=<span class="stringliteral">&quot;0x0E000000&quot;</span> physical=<span class="stringliteral">&quot;0x0A000000&quot;</span> size=<span class="stringliteral">&quot;0x00030000&quot;</span> access=<span class="stringliteral">&quot;rwx&quot;</span> security=<span class="stringliteral">&quot;c&quot;</span> type=<span class="stringliteral">&quot;RAM&quot;</span> info=<span class="stringliteral">&quot;SRAM1 Code (secure)&quot;</span>       /&gt;</div>
<div class="line">    &lt;memory name=<span class="stringliteral">&quot;SRAM1_S&quot;</span>    start=<span class="stringliteral">&quot;0x30000000&quot;</span> physical=<span class="stringliteral">&quot;0x0A000000&quot;</span> size=<span class="stringliteral">&quot;0x00030000&quot;</span> access=<span class="stringliteral">&quot;rw&quot;</span>  security=<span class="stringliteral">&quot;s&quot;</span> type=<span class="stringliteral">&quot;RAM&quot;</span> info=<span class="stringliteral">&quot;SRAM1 (secure)&quot;</span>            /&gt;</div>
<div class="line">    &lt;memory name=<span class="stringliteral">&quot;SRAM1_NS&quot;</span>   start=<span class="stringliteral">&quot;0x20000000&quot;</span> physical=<span class="stringliteral">&quot;0x0A000000&quot;</span> size=<span class="stringliteral">&quot;0x00030000&quot;</span> access=<span class="stringliteral">&quot;rw&quot;</span>  security=<span class="stringliteral">&quot;&quot;</span>  type=<span class="stringliteral">&quot;RAM&quot;</span> info=<span class="stringliteral">&quot;SRAM1 (non secure)&quot;</span>        /&gt;</div>
<div class="line"></div>
<div class="line">    &lt;memory name=<span class="stringliteral">&quot;FMC_Bank1&quot;</span>  start=<span class="stringliteral">&quot;0x60000000&quot;</span>                       size=<span class="stringliteral">&quot;0x00000000&quot;</span> access=<span class="stringliteral">&quot;rw&quot;</span> security=<span class="stringliteral">&quot;&quot;</span>   type=<span class="stringliteral">&quot;RAM&quot;</span> info=<span class="stringliteral">&quot;Memory Controller bank 1&quot;</span>  /&gt;</div>
<div class="line">  &lt;/memories&gt;</div>
<div class="line">  :</div>
<div class="line">&lt;/resources&gt;</div>
</div><!-- fragment --><table  class="cmtable" summary="Element: memories">
<tr>
<th>Parent Element </th><th colspan="3">Element Chain  </th></tr>
<tr>
<td><a class="el" href="xml_resources.html">resources</a> </td><td colspan="3"><a class="el" href="xml_resources.html">/rzone/resources element</a>  </td></tr>
<tr>
<th>Child Elements </th><th>Description </th><th>Type </th><th>Occurrence  </th></tr>
<tr>
<td><a class="el" href="xml_memories.html#xml_rmemory">memory</a> </td><td>Lists a logical memory region with physical mapping. Memory might restricted to processors, access, or security modes. </td><td>complexType </td><td>0..1  </td></tr>
<tr>
<td><a class="el" href="xml_memories.html#xml_rmpc">mpc</a> </td><td>Specifies a Memory Protection Controller (MPC) for a physical address range. </td><td>complexType </td><td>0..1  </td></tr>
</table>
<h1><a class="anchor" id="xml_rmemory"></a>
/rzone/resources/memories/memory element</h1>
<p>The <a class="el" href="xml_memories.html#xml_rmemory">/rzone/resources/memories/memory element</a> lists a logical memory region with physical mapping. Memory might restricted to processors, access, or security modes.</p>
<table  class="cmtable" summary="Element: memory">
<tr>
<th>Parent Element </th><th colspan="3">Element Chain  </th></tr>
<tr>
<td><a class="el" href="xml_memories.html">memories</a> </td><td colspan="3"><a class="el" href="xml_memories.html">/rzone/resources/memories element</a>  </td></tr>
<tr>
<th>Attributes </th><th>Description </th><th>Type </th><th>Use  </th></tr>
<tr>
<td>name </td><td>The name of this memory region which must be unique in this *.rzone file. </td><td>xs:string </td><td>required  </td></tr>
<tr>
<td>type </td><td>The type of memory in this region ("RAM" or "ROM"). </td><td>PhysicalTypeEnum </td><td>required  </td></tr>
<tr>
<td>start </td><td>The logical start address of the memory region in the address map. </td><td>NonNegativeInteger </td><td>required  </td></tr>
<tr>
<td>physical </td><td>The physical start address of the memory region in the address map. If physical is not specified the start address value is used. </td><td>NonNegativeInteger </td><td>optional  </td></tr>
<tr>
<td>size </td><td>The size of the memory region in bytes. </td><td>NonNegativeInteger </td><td>required  </td></tr>
<tr>
<td>access </td><td><a class="el" href="zoneFormat.html#access">Access</a> permissions for this memory region. </td><td><a class="el" href="zoneFormat.html#access">AccessType</a> </td><td>optional  </td></tr>
<tr>
<td>security </td><td><a class="el" href="zoneFormat.html#security">Security</a> attributes for this memory region. </td><td><a class="el" href="zoneFormat.html#security">SecurityType</a> </td><td>optional  </td></tr>
<tr>
<td>privilege </td><td><a class="el" href="zoneFormat.html#privilege">Privilege level</a> for this memory region. </td><td><a class="el" href="zoneFormat.html#privilege">PrivilegeType</a> </td><td>optional  </td></tr>
<tr>
<td>startup </td><td>"1" specifies that this region is used for the startup code of the application. Default value is "0". </td><td>xs:boolean </td><td>optional  </td></tr>
<tr>
<td>uninit </td><td>"1" specifies that this region is not zero initialized during startup. Default value is "0". </td><td>xs:boolean </td><td>optional  </td></tr>
<tr>
<td>shared </td><td>"1" specifies that this region is used by multiple zones. Default value is "0". </td><td>xs:boolean </td><td>optional  </td></tr>
<tr>
<td>dma </td><td>"1" specifies that this region is accessed by a DMA controller. Default value is "0". </td><td>xs:boolean </td><td>optional  </td></tr>
<tr>
<td>external </td><td>"1" specifies that this region is provided by an external component that is not part of the device. Default value is "0". </td><td>xs:boolean </td><td>optional  </td></tr>
<tr>
<td>Pname </td><td>The processor that can access this memory region. If omitted all processors of the system have access. </td><td>xs:string </td><td>optional  </td></tr>
<tr>
<td>info </td><td>Brief description of the memory region. </td><td>xs:string </td><td>optional  </td></tr>
</table>
<h1><a class="anchor" id="xml_rmpc"></a>
/rzone/resources/memories/mpc element</h1>
<p>The <a class="el" href="xml_memories.html#xml_rmpc">/rzone/resources/memories/mpc element</a> element specifies a Memory Protection Controller (MPC) for a physical memory address region. The MPC region must not necessarily overlap a physical memory space which means it can be larger or smaller.</p>
<table  class="cmtable" summary="Element: mpc">
<tr>
<th>Parent Element </th><th colspan="3">Element Chain  </th></tr>
<tr>
<td><a class="el" href="xml_memories.html">memories</a> </td><td colspan="3"><a class="el" href="xml_memories.html">/rzone/resources/memories element</a>  </td></tr>
<tr>
<th>Attributes </th><th>Description </th><th>Type </th><th>Use  </th></tr>
<tr>
<td>name </td><td>The base register name of the MPC. </td><td>xs:string </td><td>required  </td></tr>
<tr>
<td>start </td><td>The physical start address of the memory address region that is protected by the MPC. </td><td>NonNegativeInteger </td><td>required  </td></tr>
<tr>
<td>size </td><td>The size of the memory address region in bytes. </td><td>NonNegativeInteger </td><td>required  </td></tr>
<tr>
<td>blk_size </td><td>The size (in bytes) of each memory block. This value is also the alignment requirement for the memory blocks. The number of LUT bits is: <em>memory size</em> / <em>blk_size</em>. </td><td>NonNegativeInteger </td><td>required  </td></tr>
<tr>
<td>type </td><td>Specifies the permissions that the MPC verifies for the memory access:<br/>
<ul>
<li>type="s" : (default) only the Secure attribute is verified.</li>
<li>type="p" : only the Privileged attribute is verified.</li>
<li>type="sp" : both the Secure are Privileged attribute are verified. </li>
</ul>
</td><td>MpcTypeEnum </td><td>optional  </td></tr>
<tr>
<td>info </td><td>Brief description of the memory region. </td><td>xs:string </td><td>optional  </td></tr>
</table>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="zoneFormat.html">Zone Description Format</a></li><li class="navelem"><a class="el" href="xml_rzone_pg.html">/rzone element</a></li><li class="navelem"><a class="el" href="xml_resources.html">/rzone/resources element</a></li>
    <li class="footer">Generated on Wed Jul 10 2019 15:21:06 for CMSIS-Zone (Preview) Version 0.9.2 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>