1 about the mpu, About the mpu -2, Table 7-1 – ARM Cortex R4F User Manual

Page 185: Default memory map -2

Advertising
background image

Memory Protection Unit

ARM DDI 0363E

Copyright © 2009 ARM Limited. All rights reserved.

7-2

ID013010

Non-Confidential, Unrestricted Access

7.1

About the MPU

The MPU works with the L1 memory system to control accesses to and from L1 and external
memory. For a full architectural description of the MPU, see the ARM Architecture Reference
Manual
.

The MPU enables you to partition memory into regions and set individual protection attributes
for each region. The MPU supports zero, eight, or twelve memory regions.

Note

If the MPU has zero regions, you cannot enable or program the MPU. Attributes are only
determined from the default memory map when zero regions are implemented.

Each region is programmed with a base address and size, and the regions can be overlapped to
enable efficient programming of the memory map. To support overlapping, the regions are
assigned priorities, with region 0 having the lowest priority and region 11 having the highest.
The MPU returns access permissions and attributes for the highest priority region where the
address hits.

The MPU is programmed using CP15 registers c1 and c6, see MPU control and configuration
on page 4-5.
Memory region control read and write access is permitted only from Privileged
modes.

Table 7-1 shows the default memory map.

Table 7-1 Default memory map

Address
range

Instruction memory type

Data memory type

Execute Never

Instruction
cache enabled

Instruction
cache disabled

Data cache
enabled

Data cache
disabled

0xFFFFFFFF

Normal
Non-cacheable
only if HIVECS is
TRUE

Normal
Non-cacheable
only if HIVECS is
TRUE

Strongly Ordered

Strongly
Ordered

Instruction
execution only
permitted if
HIVECS is TRUE

0xF0000000

0xEFFFFFFF

-

-

Strongly Ordered

Strongly
Ordered

Execute Never

0xC0000000

0xBFFFFFFF

-

-

Shared Device

Shared
Device

Execute Never

0xA0000000

0x9FFFFFFF

-

-

Non-shared
Device

Non-shared
Device

Execute Never

0x80000000

0x7FFFFFFF

Normal,
Cacheable,
Non-shared

Normal,
Non-cacheable,
Non-shared

Normal,
Non-cacheable,
Shared

Normal,
Non-cacheable,
Shared

Instruction
execution permitted

0x60000000

0x5FFFFFF

Normal,
Cacheable,
Non-shared

Normal,
Non-cacheable,
Non-shared

Normal,
WT Cacheable,
Non-shared

Normal,
Non-cacheable,
Shared

Instruction
execution permitted

0x40000000

0x3FFFFFFF

Normal,
Cacheable,
Non-shared

Normal,
Non-cacheable,
Non-shared

Normal,
WBWA Cacheable
, Non-shared

Normal,
Non-cacheable,
Shared

Instruction
execution permitted

0x00000000

Advertising
This manual is related to the following products: