Cortex-M3 Processor (Reference Material)
UG0331 User Guide Revision 15.0
32
Memory System Ordering of Memory Accesses,
page 30 describes the cases where the memory system
guarantees the order of memory accesses. Otherwise, if the order of memory accesses is critical,
software must include memory barrier instructions to force that ordering. The processor provides the
following memory barrier instructions:
DMB:
The Data Memory Barrier (DMB) instruction ensures that outstanding memory transactions
complete before subsequent memory transactions. See
DSB
: The Data Synchronization Barrier (DSB) instruction ensures that outstanding memory transactions
complete before subsequent instructions execute. See
ISB:
The Instruction Synchronization Barrier (ISB) ensures that the effect of all completed memory
transactions is recognizable by subsequent instructions. See
MPU programming
Use a DSB followed by an ISB instruction or exception return to ensure that the new MPU configuration
is used by subsequent instructions.
3.5.2.5
Bit-Banding
A bit-band region maps each word in a bit-band alias region to a single bit in the bit-band region. The bit-
band regions occupy the lowest 1MB of the SRAM and peripheral memory regions.
Note:
The Cortex-M3 processor does not support exclusive accesses to bit-band regions.
The memory map has two 32MB alias regions that map to two 1MB bit-band regions:
•
accesses to the 32MB SRAM alias region map to the 1MB SRAM bit-band region, as detailed in
•
accesses to the 32MB peripheral alias region map to the 1MB peripheral bit-band region, as detailed
in
Notes:
•
A word access to the SRAM or peripheral bit-band alias regions maps to a single bit in the SRAM or
peripheral bit-band region.
•
Bit band accesses can use byte, halfword, or word transfers. The bit band transfer size matches the
transfer size of the instruction making the bit band access.
Table 19 •
SRAM Memory Bit-banding Regions
Address Range
Memory SRAM Region Instruction and Data Accesses
0x20000000-0x200FFFFF
Bit-band region
Direct accesses to this memory range behave as SRAM
memory accesses, but this region is also bit addressable
through bit-band alias.
0x22000000-0x23FFFFFF
Bit-band alias
Data accesses to this region are remapped to bit band region.
A write operation is performed as read-modify-write.
Instruction accesses are not remapped.
Table 20 •
Peripheral Memory Bit-banding Regions
Address range
Memory SRAM Region Instruction and Data Accesses
0x40000000-0x400FFFFF
Bit-band alias
Direct accesses to this memory range behave as peripheral
memory accesses, but this region is also bit addressable
through bit-band alias.
0x42000000-0x43FFFFFF
Bit-band region
Data accesses to this region are remapped to bit band region.
A write operation is performed as read-modify-write.
Instruction accesses are not permitted.