source: rtems/doc/supplements/sparc/memmodel.t @ 03889c1

4.104.114.84.95
Last change on this file since 03889c1 was 03889c1, checked in by Joel Sherrill <joel.sherrill@…>, on 10/19/98 at 21:46:32

All of the Supplemental manuals are now generated as automatically
as possible.

  • Property mode set to 100644
File size: 3.4 KB
Line 
1@c
2@c  COPYRIGHT (c) 1988-1998.
3@c  On-Line Applications Research Corporation (OAR).
4@c  All rights reserved.
5@c
6@c  $Id$
7@c
8
9@chapter Memory Model
10
11@section Introduction
12
13A processor may support any combination of memory
14models ranging from pure physical addressing to complex demand
15paged virtual memory systems.  RTEMS supports a flat memory
16model which ranges contiguously over the processor's allowable
17address space.  RTEMS does not support segmentation or virtual
18memory of any kind.  The appropriate memory model for RTEMS
19provided by the targeted processor and related characteristics
20of that model are described in this chapter.
21
22@section Flat Memory Model
23
24The SPARC architecture supports a flat 32-bit address
25space with addresses ranging from 0x00000000 to 0xFFFFFFFF (4
26gigabytes).  Each address is represented by a 32-bit value and
27is byte addressable.  The address may be used to reference a
28single byte, half-word (2-bytes), word (4 bytes), or doubleword
29(8 bytes).  Memory accesses within this address space are
30performed in big endian fashion by the SPARC.  Memory accesses
31which are not properly aligned generate a "memory address not
32aligned" trap (type number 7).  The following table lists the
33alignment requirements for a variety of data accesses:
34
35@ifset use-ascii
36@example
37@group
38          +--------------+-----------------------+
39          |   Data Type  | Alignment Requirement |
40          +--------------+-----------------------+
41          |     byte     |          1            |
42          |   half-word  |          2            |
43          |     word     |          4            |
44          |  doubleword  |          8            |
45          +--------------+-----------------------+
46@end group
47@end example
48@end ifset
49
50@ifset use-tex
51@sp 1
52@tex
53\centerline{\vbox{\offinterlineskip\halign{
54\vrule\strut#&
55\hbox to 1.75in{\enskip\hfil#\hfil}&
56\vrule#&
57\hbox to 1.75in{\enskip\hfil#\hfil}&
58\vrule#\cr
59\noalign{\hrule}
60&\bf Data Type &&\bf Alignment Requirement&\cr\noalign{\hrule}
61&byte&&1&\cr\noalign{\hrule}
62&half-word&&2&\cr\noalign{\hrule}
63&word&&4&\cr\noalign{\hrule}
64&doubleword&&8&\cr\noalign{\hrule}
65}}\hfil}
66@end tex
67@end ifset
68 
69@ifset use-html
70@html
71<CENTER>
72  <TABLE COLS=2 WIDTH="60%" BORDER=2>
73<TR><TD ALIGN=center><STRONG>Data Type</STRONG></TD>
74    <TD ALIGN=center><STRONG>Alignment Requirement</STRONG></TD></TR>
75<TR><TD ALIGN=center>byte</TD>
76    <TD ALIGN=center>1</TD></TR>
77<TR><TD ALIGN=center>half-word</TD>
78    <TD ALIGN=center>2</TD></TR>
79<TR><TD ALIGN=center>word</TD>
80    <TD ALIGN=center>4</TD></TR>
81<TR><TD ALIGN=center>doubleword</TD>
82    <TD ALIGN=center>8</TD></TR>
83  </TABLE>
84</CENTER>
85@end html
86@end ifset
87
88Doubleword load and store operations must use a pair
89of registers as their source or destination.  This pair of
90registers must be an adjacent pair of registers with the first
91of the pair being even numbered.  For example, a valid
92destination for a doubleword load might be input registers 0 and
931 (i0 and i1).  The pair i1 and i2 would be invalid.  [NOTE:
94Some assemblers for the SPARC do not generate an error if an odd
95numbered register is specified as the beginning register of the
96pair.  In this case, the assembler assumes that what the
97programmer meant was to use the even-odd pair which ends at the
98specified register.  This may or may not have been a correct
99assumption.]
100
101RTEMS does not support any SPARC Memory Management
102Units, therefore, virtual memory or segmentation systems
103involving the SPARC are not supported.
104
Note: See TracBrowser for help on using the repository browser.