User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 75
UG585 (v1.11) September 27, 2016
Chapter 3: Application Processing Unit
°
After writing to the location with the write-back attribute, a thread of execution must clean
the location from the caches to make the write visible to external memory.
°
Before reading the location with a cacheable attribute, a thread of execution must invalidate
the location from the caches to ensure that any value held in the caches reflects the last
value made visible in external memory.
In all cases:
°
Location refers to any byte within the current coherency granule.
°
A clean and invalidate operation can be used instead of a clean operation, or instead of an
invalidate operation.
°
To ensure coherency, all cache maintenance and memory transactions must be completed,
or ordered by the use of barrier operations.
5. If all aliases of a memory location that permit write access to the location assign the same
shareability and cacheability attributes to that location, and all these aliases use a definition of
the shareability attribute that includes all the threads of execution that can access the location,
then any thread of execution that reads the memory location using these shareability and
cacheability attributes accesses it coherently, to the extent required by that common definition
of the memory attributes.
3.2.5 Memory Management Unit (MMU)
The MMU in the ARM architecture involves both memory protection and address translation. The
MMU works closely with the L1 and L2 memory systems in the process of translating virtual
addresses to physical addresses. It also controls accesses to and from the external memory.
The MMU is compatible with the Virtual Memory System Architecture version 7 (VMSAv7)
requirements supporting 4 KB, 64 KB, 1 MB, and 16 MB page table entries and 16 access domains.
The unit provides global and application-specific identifiers to remove the requirement for context
switch TLB flushes and has the capability for extended permission checks. Please see the ARM
Architecture Reference Manual for a full architectural description of the VMSAv7.
The processor implements the ARMv7-A MMU enhanced with security extensions and
multiprocessor extensions to provide address translation and access permission checks. The MMU
controls table-walk hardware that accesses translation tables in main memory. The MMU enables
fine-grained memory system control through a set of virtual-to-physical address mappings and
memory attributes held in instruction and data translation look-aside buffers (TLBs).
In summary, the MMU is responsible for the following operations:
Checking of virtual address and ASID (address space identifier)
Checking of domain access permissions
•Checking of memory attributes
Virtual-to-physical address translation
Support for four page (region) sizes
Mapping of accesses to cache, or external memory
Four entries in the main TLB are lockable