|Home > Programmers model > About the programmers model|
This section provides general information about the MMU-600 register properties.
The following information applies to the MMU-600 registers:
Unless otherwise stated in the accompanying text:
Do not modify undefined register bits.
Access type is described as follows:
|RW||Read and write.|
|RAZ||Read as zero.|
Bit positions that are described as reserved are:
In an RW register, RAZ/WI.
The MMU-600 registers are accessed using the PROG APB4 slave interface on the TCU, and cannot be accessed directly through any other slave interfaces.
Some registers are 64 bits, but the PROG APB4 interface is 32 bits. Because software accesses 64‑bit registers 32 bits at a time, such accesses are not guaranteed to be 64‑bit atomic. This behavior does not cause problems for software, because the SMMUv3 architecture does not require 64‑bit atomic access to any registers.
The programmers model contains separate TBU and TCU regions for internal control, RAS, and identification registers. Accesses to unmapped or reserved registers are RAZ/WI. Non-secure accesses to Secure registers are RAZ/WI. The MMU-600 implements the identification register scheme that the SMMUv3 architecture defines.
The MMU-600 implements all the Performance Monitor Counter Group (PMCG) registers that the SMMUv3 architecture defines, except for:
The MMU-600 does not implement the following SMMUv3 architectural registers, and accesses to these locations are RAZ/WI:
See the Arm® System Memory Management Unit Architecture Specification, SMMU architecture version 3.0 and version 3.1 for more information about the SMMU architectural registers.