source: rtems/doc/supplements/arm/wksheets.texi @ 6c243f11

4.104.114.84.95
Last change on this file since 6c243f11 was 6c243f11, checked in by Joel Sherrill <joel.sherrill@…>, on Aug 2, 2002 at 12:45:38 AM

2002-08-01 Joel Sherrill <joel@…>

  • BSP_TIMES, wksheets.texi: Updated to reflect ARM times reported by Jay Monkman <jmonkman@…>. These times are subject to change as he tunes the ARM port and their BSP.
  • Property mode set to 100644
File size: 13.7 KB
Line 
1@c ******   This comment is here to remind you not to edit the wksheets.t
2@c ******   in any directory but common.
3@c
4@c Figures ...
5@c   RTEMS RAM Workspace Worksheet
6@c   RTEMS Code Space Worksheet
7@c
8@c  COPYRIGHT (c) 1988-2002.
9@c  On-Line Applications Research Corporation (OAR).
10@c  All rights reserved.
11@c
12@c  $Id$
13@c
14
15
16@node Memory Requirements, Memory Requirements Introduction, Processor Dependent Information Table CPU Dependent Information Table, Top
17
18@chapter Memory Requirements
19@ifinfo
20@menu
21* Memory Requirements Introduction::
22* Memory Requirements Data Space Requirements::
23* Memory Requirements Minimum and Maximum Code Space Requirements::
24* Memory Requirements RTEMS Code Space Worksheet::
25* Memory Requirements RTEMS RAM Workspace Worksheet::
26@end menu
27@end ifinfo
28
29
30@node Memory Requirements Introduction, Memory Requirements Data Space Requirements, Memory Requirements, Memory Requirements
31
32@section Introduction
33
34Memory is typically a limited resource in real-time
35embedded systems, therefore, RTEMS can be configured  to utilize
36the minimum amount of memory while meeting all of the
37applications requirements.  Worksheets are provided which allow
38the RTEMS application developer to determine the amount of RTEMS
39code and RAM workspace which is required by the particular
40configuration.  Also provided are the minimum code space,
41maximum code space,  and the constant data space required by
42RTEMS.
43
44
45@node Memory Requirements Data Space Requirements, Memory Requirements Minimum and Maximum Code Space Requirements, Memory Requirements Introduction, Memory Requirements
46
47@section Data Space Requirements
48
49RTEMS requires a small amount of memory for its
50private variables.  This data area must be in RAM and is
51separate from the RTEMS RAM Workspace.  The following
52illustrates the data space required for all configurations of
53RTEMS:
54
55@itemize @bullet
56@item Data Space: na
57@end itemize
58
59
60@node Memory Requirements Minimum and Maximum Code Space Requirements, Memory Requirements RTEMS Code Space Worksheet, Memory Requirements Data Space Requirements, Memory Requirements
61
62@section Minimum and Maximum Code Space Requirements
63
64A maximum configuration of RTEMS includes the core
65and all managers, including the multiprocessing manager.
66Conversely, a minimum configuration of RTEMS includes only the
67core and the following managers: initialization, task, interrupt
68and fatal error.  The following illustrates the code space
69required by these configurations of RTEMS:
70
71@itemize @bullet
72@item Minimum Configuration: na
73@item Maximum Configuration: na
74@end itemize
75
76
77@node Memory Requirements RTEMS Code Space Worksheet, Memory Requirements RTEMS RAM Workspace Worksheet, Memory Requirements Minimum and Maximum Code Space Requirements, Memory Requirements
78
79@section RTEMS Code Space Worksheet
80
81The RTEMS Code Space Worksheet is a tool provided to
82aid the RTEMS application designer to accurately calculate the
83memory required by the RTEMS run-time environment.  RTEMS allows
84the custom configuration of the executive by optionally
85excluding managers which are not required by a particular
86application.  This worksheet provides the included and excluded
87size of each manager in tabular form allowing for the quick
88calculation of any custom configuration of RTEMS.  The RTEMS
89Code Space Worksheet is below:
90
91@ifset use-ascii
92@page
93@end ifset
94@ifset use-tex
95@page
96@end ifset
97
98@page
99@center @b{RTEMS Code Space Worksheet}
100@sp 1
101
102@ifset use-ascii
103
104The following is a list of the components of the RTEMS code space.  The first
105number in parentheses is the size when the component is included,
106while the second number indicates its size when not included.  If the second
107number is "NA", then the component must always be included.
108
109@itemize @bullet
110@item Core (na, NA)
111@item Initialization (na, NA)
112@item Task (na, NA)
113@item Interrupt (na, NA)
114@item Clock (na, NA)
115@item Timer (na, na)
116@item Semaphore (na, na)
117@item Message (na, na)
118@item Event (na, na)
119@item Signal (na, na)
120@item Partition (na, na)
121@item Region (na, na)
122@item Dual Ported Memory (na, na)
123@item I/O (na, na)
124@item Fatal Error (na, NA)
125@item Rate Monotonic (na, na)
126@item Multiprocessing (na, na)
127@end itemize
128@end ifset
129
130@ifset use-tex
131
132@tex
133\line{\hskip 0.50in\vbox{\offinterlineskip\halign{
134\vrule\strut#&
135\hbox to 2.25in{\enskip\hfil#\hfil}&
136\vrule#&
137\hbox to 1.00in{\enskip\hfil#\hfil}&
138\vrule#&
139\hbox to 1.00in{\enskip\hfil#\hfil}&
140\vrule#&
141\hbox to 1.25in{\enskip\hfil#\hfil}&
142\vrule#\cr
143\noalign{\hrule}
144&\bf Component && \bf Included && \bf Not Included && \bf Size &\cr\noalign{\hrule}
145&Core && na && NA && &\cr\noalign{\hrule}
146&Initialization && na && NA && &\cr\noalign{\hrule}
147&Task && na && NA && &\cr\noalign{\hrule}
148&Interrupt && na && NA && &\cr\noalign{\hrule}
149&Clock && na && NA && &\cr\noalign{\hrule}
150&Timer && na && na && &\cr\noalign{\hrule}
151&Semaphore && na && na && &\cr\noalign{\hrule}
152&Message && na && na && &\cr\noalign{\hrule}
153&Event && na && na && &\cr\noalign{\hrule}
154&Signal && na && na && &\cr\noalign{\hrule}
155&Partition && na && na && &\cr\noalign{\hrule}
156&Region && na && na && &\cr\noalign{\hrule}
157&Dual Ported Memory && na && na && &\cr\noalign{\hrule}
158&I/O && na && na && &\cr\noalign{\hrule}
159&Fatal Error && na && NA && &\cr\noalign{\hrule}
160&Rate Monotonic && na && na && &\cr\noalign{\hrule}
161&Multiprocessing && na && na && &\cr\noalign{\hrule}
162&\multispan 5 \bf\hfil Total Code Space Requirements\qquad\hfil&&&\cr\noalign{\hrule}
163}}\hfil}
164@end tex
165@end ifset
166
167@ifset use-html
168@html
169<CENTER>
170  <TABLE COLS=4 WIDTH="80%" BORDER=2>
171<TR><TD ALIGN=center><STRONG>Component</STRONG></TD>
172    <TD ALIGN=center><STRONG>Included</STRONG></TD>
173    <TD ALIGN=center><STRONG>Not Included</STRONG></TD>
174    <TD ALIGN=center><STRONG>Size</STRONG></TD></TR>
175<TR><TD ALIGN=center>Core</TD>
176    <TD ALIGN=center>na</TD>
177    <TD ALIGN=center>NA</TD>
178     <TD><BR></TD></TR>
179<TR><TD ALIGN=center>Initialization</TD>
180    <TD ALIGN=center>na</TD>
181    <TD ALIGN=center>NA</TD>
182     <TD><BR></TD></TR>
183<TR><TD ALIGN=center>Task</TD>
184    <TD ALIGN=center>na</TD>
185    <TD ALIGN=center>NA</TD>
186     <TD><BR></TD></TR>
187<TR><TD ALIGN=center>Interrupt</TD>
188    <TD ALIGN=center>na</TD>
189    <TD ALIGN=center>NA</TD>
190     <TD><BR></TD></TR>
191<TR><TD ALIGN=center>Clock</TD>
192    <TD ALIGN=center>na</TD>
193    <TD ALIGN=center>NA</TD>
194     <TD><BR></TD></TR>
195<TR><TD ALIGN=center>Timer</TD>
196    <TD ALIGN=center>na</TD>
197    <TD ALIGN=center>na</TD>
198     <TD><BR></TD></TR>
199<TR><TD ALIGN=center>Semaphore</TD>
200    <TD ALIGN=center>na</TD>
201    <TD ALIGN=center>na</TD>
202     <TD><BR></TD></TR>
203<TR><TD ALIGN=center>Message</TD>
204    <TD ALIGN=center>na</TD>
205    <TD ALIGN=center>na</TD>
206     <TD><BR></TD></TR>
207<TR><TD ALIGN=center>Event</TD>
208    <TD ALIGN=center>na</TD>
209    <TD ALIGN=center>na</TD>
210     <TD><BR></TD></TR>
211<TR><TD ALIGN=center>Signal</TD>
212    <TD ALIGN=center>na</TD>
213    <TD ALIGN=center>na</TD>
214     <TD><BR></TD></TR>
215<TR><TD ALIGN=center>Partition</TD>
216    <TD ALIGN=center>na</TD>
217    <TD ALIGN=center>na</TD>
218     <TD><BR></TD></TR>
219<TR><TD ALIGN=center>Region</TD>
220    <TD ALIGN=center>na</TD>
221    <TD ALIGN=center>na</TD>
222     <TD><BR></TD></TR>
223<TR><TD ALIGN=center>Dual Ported Memory</TD>
224    <TD ALIGN=center>na</TD>
225    <TD ALIGN=center>na</TD>
226     <TD><BR></TD></TR>
227<TR><TD ALIGN=center>I/O</TD>
228    <TD ALIGN=center>na</TD>
229    <TD ALIGN=center>na</TD>
230     <TD><BR></TD></TR>
231<TR><TD ALIGN=center>Fatal Error</TD>
232    <TD ALIGN=center>na</TD>
233    <TD ALIGN=center>NA</TD>
234     <TD><BR></TD></TR>
235<TR><TD ALIGN=center>Rate Monotonic</TD>
236    <TD ALIGN=center>na</TD>
237    <TD ALIGN=center>na</TD>
238     <TD><BR></TD></TR>
239<TR><TD ALIGN=center>Multiprocessing</TD>
240    <TD ALIGN=center>na</TD>
241    <TD ALIGN=center>na</TD>
242     <TD><BR></TD></TR>
243<TR><TD ALIGN=center COLSPAN=3>
244      <STRONG>Total Code Space Requirements</STRONG></TD>
245     <TD><BR></TD></TR>
246  </TABLE>
247</CENTER>
248@end html
249@end ifset
250
251@page
252
253@c ******   Next node is set by a sed script in the document Makefile.
254@c ******   This comment is here to remind you not to edit the wksheets.t
255@c ******   in any directory but common.
256
257
258@node Memory Requirements RTEMS RAM Workspace Worksheet, Timing Specification, Memory Requirements RTEMS Code Space Worksheet, Memory Requirements
259
260@section RTEMS RAM Workspace Worksheet
261
262The RTEMS RAM Workspace Worksheet is a tool provided
263to aid the RTEMS application designer to accurately calculate
264the minimum memory block to be reserved for RTEMS use.  This
265worksheet provides equations for calculating the amount of
266memory required based upon the number of objects configured,
267whether for single or multiple processor versions of the
268executive.  This information is presented in tabular form, along
269with the fixed system requirements, allowing for quick
270calculation of any application defined configuration of RTEMS.
271The RTEMS RAM Workspace Worksheet is provided below:
272
273@ifset use-ascii
274@page
275@end ifset
276@ifset use-tex
277@sp 2
278@end ifset
279
280@center @b{RTEMS RAM Workspace Worksheet}
281@sp 2
282
283@ifset use-ascii
284The total RTEMS RAM Workspace required is the sum of the following:
285
286@itemize @bullet
287@item maximum_tasks * na
288@item maximum_timers * na
289@item maximum_semaphores * na
290@item maximum_message_queues * na
291@item maximum_regions * na
292@item maximum_partitions * na
293@item maximum_ports * na
294@item maximum_periods * na
295@item maximum_extensions * na
296@item Floating Point Tasks * na
297@item Task Stacks
298@item maximum_nodes * na
299@item maximum_global_objects * na
300@item maximum_proxies * na
301@item Fixed System Requirements of na
302@end itemize
303@end ifset
304
305@ifset use-tex
306@tex
307\line{\hskip 0.75in\vbox{\offinterlineskip\halign{
308\vrule\strut#&
309\hbox to 3.0in{\enskip\hfil#\hfil}&
310\vrule#&
311\hbox to 0.75in{\enskip\hfil#\hfil}&
312\vrule#&
313\hbox to 1.25in{\enskip\hfil#\hfil}&
314\vrule#\cr
315\noalign{\hrule}
316& \bf Description && \bf Equation && \bf Bytes Required &\cr\noalign{\hrule}
317& maximum\_tasks &&  * na = &&&\cr\noalign{\hrule}
318& maximum\_timers &&  * na = &&&\cr\noalign{\hrule}
319& maximum\_semaphores &&  * na = &&&\cr\noalign{\hrule}
320& maximum\_message\_queues &&  * na = &&&\cr\noalign{\hrule}
321& maximum\_regions &&  * na = &&&\cr\noalign{\hrule}
322& maximum\_partitions &&  * na = &&&\cr\noalign{\hrule}
323& maximum\_ports &&  * na = &&&\cr\noalign{\hrule}
324& maximum\_periods &&  * na = &&&\cr\noalign{\hrule}
325& maximum\_extensions &&  * na = &&&\cr\noalign{\hrule}
326& Floating Point Tasks &&  * na = &&&\cr\noalign{\hrule}
327& Task Stacks &&\hskip 2.3em=&&&\cr\noalign{\hrule}
328& Total Single Processor Requirements &&&&&\cr\noalign{\hrule}
329}}\hfil}
330
331\line{\hskip 0.75in\vbox{\offinterlineskip\halign{
332\vrule\strut#&
333\hbox to 3.0in{\enskip\hfil#\hfil}&
334\vrule#&
335\hbox to 0.75in{\enskip\hfil#\hfil}&
336\vrule#&
337\hbox to 1.25in{\enskip\hfil#\hfil}&
338\vrule#\cr
339\noalign{\hrule}
340& \bf Description && \bf Equation && \bf Bytes Required &\cr\noalign{\hrule}
341& maximum\_nodes &&  * na = &&&\cr\noalign{\hrule}
342& maximum\_global\_objects &&  * na = &&&\cr\noalign{\hrule}
343& maximum\_proxies &&  * na = &&&\cr\noalign{\hrule}
344}}\hfil}
345
346\line{\hskip 0.75in\vbox{\offinterlineskip\halign{
347\vrule\strut#&
348\hbox to 3.0in{\enskip\hfil#\hfil}&
349\vrule#&
350\hbox to 0.75in{\enskip\hfil#\hfil}&
351\vrule#&
352\hbox to 1.25in{\enskip\hfil#\hfil}&
353\vrule#\cr
354\noalign{\hrule}
355& Total Multiprocessing Requirements &&&&&\cr\noalign{\hrule}
356& Fixed System Requirements && na &&&\cr\noalign{\hrule}
357& Total Single Processor Requirements &&&&&\cr\noalign{\hrule}
358& Total Multiprocessing Requirements &&&&&\cr\noalign{\hrule}
359& Minimum Bytes for RTEMS Workspace &&&&&\cr\noalign{\hrule}
360}}\hfil}
361@end tex
362@end ifset
363
364@ifset use-html
365@html
366<CENTER>
367  <TABLE COLS=3 WIDTH="80%" BORDER=2>
368<TR><TD ALIGN=center><STRONG>Description</STRONG></TD>
369    <TD ALIGN=center><STRONG>Equation</STRONG></TD>
370    <TD ALIGN=center><STRONG>Bytes Required</STRONG></TD></TR>
371<TR><TD ALIGN=left>maximum_tasks</TD>
372    <TD ALIGN=right>* na =</TD>
373     <TD><BR></TD></TR>
374<TR><TD ALIGN=left>maximum_timers</TD>
375    <TD ALIGN=right>* na =</TD>
376     <TD><BR></TD></TR>
377<TR><TD ALIGN=left>maximum_semaphores</TD>
378    <TD ALIGN=right>* na =</TD>
379     <TD><BR></TD></TR>
380<TR><TD ALIGN=left>maximum_message_queues</TD>
381    <TD ALIGN=right>* na =</TD>
382     <TD><BR></TD></TR>
383<TR><TD ALIGN=left>maximum_regions</TD>
384    <TD ALIGN=right>* na =</TD>
385     <TD><BR></TD></TR>
386<TR><TD ALIGN=left>maximum_partitions</TD>
387    <TD ALIGN=right>* na =</TD>
388     <TD><BR></TD></TR>
389<TR><TD ALIGN=left>maximum_ports</TD>
390    <TD ALIGN=right>* na =</TD>
391     <TD><BR></TD></TR>
392<TR><TD ALIGN=left>maximum_periods</TD>
393    <TD ALIGN=right>* na =</TD>
394     <TD><BR></TD></TR>
395<TR><TD ALIGN=left>maximum_extensions</TD>
396    <TD ALIGN=right>* na =</TD>
397     <TD><BR></TD></TR>
398<TR><TD ALIGN=left>Floating Point Tasks</TD>
399    <TD ALIGN=right>* na =</TD>
400     <TD><BR></TD></TR>
401<TR><TD ALIGN=left COLSPAN=2>Task Stacks</TD>
402     <TD><BR></TD></TR>
403<TR><TD ALIGN=left COLSPAN=2>
404      <STRONG>Total Single Processor Requirements</STRONG></TD>
405     <TD><BR></TD></TR>
406<TR></TR>
407<TR><TD ALIGN=center><STRONG>Description</STRONG></TD>
408    <TD ALIGN=center><STRONG>Equation</STRONG></TD>
409    <TD ALIGN=center><STRONG>Bytes Required</STRONG></TD></TR>
410<TR><TD ALIGN=left>maximum_nodes</TD>
411    <TD ALIGN=right>* na =</TD>
412     <TD><BR></TD></TR>
413<TR><TD ALIGN=left>maximum_global_objects</TD>
414    <TD ALIGN=right>* na =</TD>
415     <TD><BR></TD></TR>
416<TR><TD ALIGN=left>maximum_proxies</TD>
417    <TD ALIGN=right>* na =</TD>
418     <TD><BR></TD></TR>
419<TR><TD ALIGN=left COLSPAN=2>
420      <STRONG>Total Multiprocessing Requirements</STRONG></TD>
421     <TD><BR></TD></TR>
422<TR></TR>
423<TR><TD ALIGN=left COLSPAN=2>Fixed System Requirements</TD>
424    <TD ALIGN=center>na</TD></TR>
425<TR><TD ALIGN=left COLSPAN=2>Total Single Processor Requirements</TD>
426     <TD><BR></TD></TR>
427<TR><TD ALIGN=left COLSPAN=2>Total Multiprocessing Requirements</TD>
428     <TD><BR></TD></TR>
429<TR><TD ALIGN=left COLSPAN=2>
430      <STRONG>Minimum Bytes for RTEMS Workspace</STRONG></TD>
431     <TD><BR></TD></TR>
432  </TABLE>
433</CENTER>
434@end html
435@end ifset
436
437
Note: See TracBrowser for help on using the repository browser.