8.1. About the L1 memory system

The processor L1 memory system can be configured during implementation and integration. It can consist of:

The instruction side and data side can each optionally have their own L1 caches. The cache architecture is Harvard, that is, only instructions can be fetched from the Icache, and only data can be fetched from the Dcache. In parallel with each of the caches are two areas of dedicated RAM accessible to both the instruction and data sides. These are regions of TCM. You can implement one TCM using the ATCM interface and up to two TCMs using the BTCM interface. Figure 8.1 shows this.

Each TCM and cache can be configured at implementation time to have an error detection and correction scheme to protect the data stored in the memory from errors. Each TCM interface also has support for logic external to the processor to tell the processor that an error has occurred.

The MPU handles accesses to both the instruction and data sides. The MPU is responsible for protection checking, address access permissions, and memory attributes for all accesses. Some of these attributes can be passed to the L2 memory system through the AXI master. See Chapter 7 Memory Protection Unit for more information about the MPU.

The L1 memory system includes a monitor for exclusive accesses. Exclusive load and store instructions, for example LDREX and STREX, can be used with the appropriate memory monitoring to provide inter-process or inter-processor synchronization and semaphores. See the ARM Architecture Reference Manual for more information. The internal monitor can handle some exclusive monitoring internally to the processor, see Internal exclusive monitor for more information.

Figure 8.1. L1 memory system block diagram

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.

Copyright © 2006-2011 ARM Limited. All rights reserved.ARM DDI 0363G