cours5: segmentation.h

File segmentation.h, 2.3 KB (added by fpecheux, 16 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