6.5. Local exclusive monitor

The processor L1 memory system has an local exclusive monitor. This is a two state, open and exclusive, state machine that manages load/store exclusive (LDREXB, LDREXH, LDREX, LDREXD, STREXB, STREXH, STREX and STREXD) accesses and clear exclusive (CLREX) instructions. You can use these instructions, operating in the L1 memory system, to construct semaphores and ensure synchronization between different processes. By adding a global exclusive monitor, you can also use these instructions in the L2 memory system to construct semaphores and ensure synchronization between different processors. See Chapter 11 Level Two Interface. See the ARM® Architecture Reference Manual ARMv7-A and ARMv7-R edition for more information about how these instructions work.

When a load-exclusive access is performed, the local exclusive monitor moves to the exclusive state. It can also move back to the open state for other reasons, for example, the other processor has taken the semaphore, or because of eviction of the cache line containing the semaphore value. The local exclusive monitor holds exclusivity state for the Cortex-R7 MPCore processor only. It does not record the address of the memory that a load-exclusive access was performed to. Any store exclusive access performed when the state is open fails.

Copyright © 2012, 2014 ARM. All rights reserved.ARM DDI 0458C