Level One Memory System

8.1About the L1 memory system

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

separate instruction and data caches

multiple Tightly-Coupled Memory (TCM) areas

a Memory Protection Unit (MPU).

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 i-cache, and only data can be fetched from the d-cache. 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 on page 8-3shows 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. Some of these functions 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 can be used, for example, LDREX, STREX, with the appropriate memory monitoring to provide inter-process or inter-processor synchronization and semaphores. See the ARM Architecture Reference Manual for more details. The monitor can handle some exclusive monitoring internally to the processor.

ARM DDI 0363E

Copyright © 2009 ARM Limited. All rights reserved.

8-2

ID013010

Non-Confidential, Unrestricted Access

 

Page 198
Image 198
ARM R4F, r1p3 manual About the L1 memory system