MPU monitors all the read and write
accesses happening on the bus continuously. Any faults in the interface are
communicated to the ESM module where the errors are latched and RTDMA access
permissions is determined accordingly.
Errors can be of the following
types:
- Address Checks:
- If an address does not
belong to any region, a fault is generated and triggered to the ESM. In
this case, access is blocked.
- More than one MPU regions
responded to a data write or read access
- Multiple regions
respond and allow the access – no fault is generated and access
goes through.
- Multiple regions
respond and one of the regions blocks the access – fault is
generated and triggered to the ESM and access is blocked.
- Access Permission Checks:
- If an access to a range
defined by MPU region does not have the necessary access permissions, a
fault is generated and triggered to the ESM and access is blocked.
Note: When SIC and MPU error happens on
the same cycle – MPU error address is reported to the ESM. Refer to
Section 7.2.3 for more
details about how all errors are registered within the ESM.
The MPU is enabled by
default. If memory protection support is not needed, disable the MPU during
RTDMA initialization.