EasyManua.ls Logo

ARM Cortex-R4 - 7.2 Memory types

Default Icon
436 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Memory Protection Unit
ARM DDI 0363G Copyright © 2006-2011 ARM Limited. All rights reserved. 7-7
ID073015 Non-Confidential
7.2 Memory types
The ARM architecture defines a set of memory types with characteristics that are suited to
particular devices. There are three mutually exclusive memory type attributes:
Strongly-ordered
•Device
Normal.
MPU memory regions can each be assigned a memory type attribute. Table 7-2 shows a
summary of the memory types.
Note
The processor L1 cache does not cache shared normal regions.
For more information on memory attributes and types, memory barriers, and ordering
requirements for memory accesses, see the ARM Architecture Reference Manual.
7.2.1 Using memory types
The processor memory system contains a store buffer that helps to improve the throughput of
accesses to Normal type memory. See Store buffer on page 8-18 for more information. Because
of the ordering rules that they must follow, accesses to other types of memory typically have a
lower throughput or higher latency than accesses to Normal memory. In particular:
reads from Device memory must first drain the store buffer of all writes to Device memory
all accesses to Strongly-ordered memory must first drain the store buffer completely.
Similarly, when it accesses Strongly-ordered or Device type memory, the processor's response
to interrupts must be modified, and the interrupt response latency is longer. See Low interrupt
latency on page 3-17 for more information.
To ensure optimum performance, you must understand the architectural semantics of the
different memory types. Use Device memory type for appropriate memory regions, typically
peripherals, and only use Strongly-ordered memory type for memory regions where it is
essential.
Table 7-2 Memory attributes summary
Memory type
attribute
Shared or
Non-shared
Description
Strongly-ordered - All memory accesses to Strongly-ordered memory occur in program order.
All Strongly-ordered accesses are assumed to be shared.
Device Shared For memory-mapped peripherals that several processors share.
Non-shared For memory-mapped peripherals that only a single processor uses.
Normal Shared For normal memory that is shared between several processors.
Non-shared For normal memory that only a single processor uses.

Table of Contents

Related product manuals