source: rtems-docs/cpu_supplement/superh.rst @ 489740f

4.115
Last change on this file since 489740f was 489740f, checked in by Chris Johns <chrisj@…>, on 05/20/16 at 02:47:09

Set SPDX License Identifier in each source file.

  • Property mode set to 100644
File size: 3.8 KB
Line 
1.. comment SPDX-License-Identifier: CC-BY-SA-4.0
2
3SuperH Specific Information
4###########################
5
6This chapter discusses the SuperH architecture dependencies
7in this port of RTEMS.  The SuperH family has a wide variety
8of implementations by a wide range of vendors.  Consequently,
9there are many, many CPU models within it.
10
11**Architecture Documents**
12
13For information on the SuperH architecture,
14refer to the following documents available from VENDOR
15(:file:`http//www.XXX.com/`):
16
17- *SuperH Family Reference, VENDOR, PART NUMBER*.
18
19CPU Model Dependent Features
20============================
21
22This chapter presents the set of features which vary
23across SuperH implementations and are of importance to RTEMS.
24The set of CPU model feature macros are defined in the file``cpukit/score/cpu/sh/sh.h`` based upon the particular CPU
25model specified on the compilation command line.
26
27Another Optional Feature
28------------------------
29
30The macro XXX
31
32Calling Conventions
33===================
34
35Calling Mechanism
36-----------------
37
38All RTEMS directives are invoked using a ``XXX``
39instruction and return to the user application via the``XXX`` instruction.
40
41Register Usage
42--------------
43
44The SH1 has 16 general registers (r0..r15).
45
46- r0..r3 used as general volatile registers
47
48- r4..r7 used to pass up to 4 arguments to functions, arguments
49  above 4 are
50  passed via the stack)
51
52- r8..13 caller saved registers (i.e. push them to the stack if you
53  need them inside of a function)
54
55- r14 frame pointer
56
57- r15 stack pointer
58
59Parameter Passing
60-----------------
61
62XXX
63
64Memory Model
65============
66
67Flat Memory Model
68-----------------
69
70The SuperH family supports a flat 32-bit address
71space with addresses ranging from 0x00000000 to 0xFFFFFFFF (4
72gigabytes).  Each address is represented by a 32-bit value and
73is byte addressable.  The address may be used to reference a
74single byte, word (2-bytes), or long word (4 bytes).  Memory
75accesses within this address space are performed in big endian
76fashion by the processors in this family.
77
78Some of the SuperH family members support virtual memory and
79segmentation.  RTEMS does not support virtual memory or
80segmentation on any of the SuperH family members.  It is the
81responsibility of the BSP to initialize the mapping for
82a flat memory model.
83
84Interrupt Processing
85====================
86
87Although RTEMS hides many of the processor dependent
88details of interrupt processing, it is important to understand
89how the RTEMS interrupt manager is mapped onto the processor's
90unique architecture. Discussed in this chapter are the MIPS's
91interrupt response and control mechanisms as they pertain to
92RTEMS.
93
94Vectoring of an Interrupt Handler
95---------------------------------
96
97Upon receipt of an interrupt the XXX family
98members with separate interrupt stacks automatically perform the
99following actions:
100
101- TBD
102
103A nested interrupt is processed similarly by these
104CPU models with the exception that only a single ISF is placed
105on the interrupt stack and the current stack need not be
106switched.
107
108Interrupt Levels
109----------------
110
111TBD
112
113Default Fatal Error Processing
114==============================
115
116The default fatal error handler for this architecture disables processor
117interrupts, places the error code in *XXX*, and executes a ``XXX``
118instruction to simulate a halt processor instruction.
119
120Symmetric Multiprocessing
121=========================
122
123SMP is not supported.
124
125Thread-Local Storage
126====================
127
128Thread-local storage is not implemented.
129
130Board Support Packages
131======================
132
133System Reset
134------------
135
136An RTEMS based application is initiated or
137re-initiated when the processor is reset.  When the
138processor is reset, it performs the following actions:
139
140- TBD
141
142Processor Initialization
143------------------------
144
145TBD
146
147.. COMMENT: COPYRIGHT (c) 1988-2002.
148
149.. COMMENT: On-Line Applications Research Corporation (OAR).
150
151.. COMMENT: All rights reserved.
152
Note: See TracBrowser for help on using the repository browser.