cours5: segmentation.h

File segmentation.h, 2.3 KB (added by fpecheux, 15 years ago)

Les informations de segmentation

Line 
1/*
2 *
3 * SOCLIB_LGPL_HEADER_BEGIN
4 *
5 * This file is part of SoCLib, GNU LGPLv2.1.
6 *
7 * SoCLib is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU Lesser General Public License as published
9 * by the Free Software Foundation; version 2.1 of the License.
10 *
11 * SoCLib is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with SoCLib; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19 * 02110-1301 USA
20 *
21 * SOCLIB_LGPL_HEADER_END
22 *
23 * Copyright (c) UPMC, Lip6, SoC
24 *         Nicolas Pouillon <nipo@ssji.net>, 2006-2007
25 *
26 * Maintainers: nipo
27 */
28
29/////////////////////////////////////////////////////////////////
30//      ADDRESS SPACE SEGMENTATION
31//
32//      This file must be included in the system.cpp file,
33//      for harware configuration : It is used to build
34//      the SOCLIB_SEGMENT_TABLE.
35//
36//      This file is also used by the ldscript generator,
37//      for embedded software generation.
38//
39//      It gives the system integrator the garanty
40//      that hardware and software have the same
41//      description of the address space segmentation.
42//
43//      The segment names cannot be changed.
44/////////////////////////////////////////////////////////////////
45
46/////////////////////////////////////////////////////////////////
47//      text, reset, and exception segments
48/////////////////////////////////////////////////////////////////
49
50#define TEXT_BASE       0x00400000
51#define TEXT_SIZE       0x00050000
52
53/* base address required by MIPS processor */
54#define RESET_BASE      0xBFC00000
55#define RESET_SIZE      0x00010000
56
57#define EXCEP_BASE      0x80000000
58#define EXCEP_SIZE      0x00010000
59
60#define DATA_BASE       0x10000000
61#define DATA_SIZE       0x00020000
62
63//////////////////////////////////////////////////////////
64//      System devices
65///////////////////////////////////////////////////////////
66
67#define TTY_BASE        0xC0200000
68#define TTY_SIZE        0x00000040
69
70#define UART_BASE       0xB0200000
71#define UART_SIZE       0x00000040
72
73#define TIMER_BASE      0xB1200000
74#define TIMER_SIZE      0x00000040
75
76#define ICU_BASE        0xD0200000
77#define ICU_SIZE        0x00000040