
Memory and bus architecture
RM0453
66/1454
RM0453 Rev 2
The memory protection allows the following areas to be defined within a memory:
•
When memory unprivileged address offset > secure address offset
–
Secure privileged
–
Flash memory only: secure privileged and unprivileged read execute only (non
base thread mode)
–
Secure unprivileged
–
Non-secure unprivileged
Or
•
When memory security address offset > unprivileged address offset
–
Secure privileged
–
Flash memory only: non-secure privileged and unprivileged read execute only
(non base thread mode)
–
Non-secure privileged
–
Non-secure unprivileged
For more information see
Section 3.1: GTZC introduction
.
Further more a hide protection area can be defined in the Flash memory by the hide
protection area address offset defined in HDPSA user option.
When enabled, the Flash memory area starting from the HDPSA address offset up to the
end of the Flash memory is hide protected. This means that the area is accessible from
device reset or wakeup from Standby mode, and can be protected from any access by
disabling the hide protection area with the HDPADIS bit in Flash memory access control
register 2 (FLASF_ACR2).
Memory protection is controlled by the parameters as listed below:
•
Flash memory security address offset is defined in SFSA user option.
The unprivileged watermark address offset is defined in
GTZC_TZSC_MPCWM0.UPWM1LGTH and the privileged and unprivileged, read and
execute watermark in address offset defined in
GTZC_TZSC_MPCWM0.UPWWM1LGTH.
–
Flash memory privileged is only available when the Flash memory is secure
(ESE = 1).
•
SRAM1 security address offset is defined in SNBRSA user option.
The unprivileged watermark address offset is defined in
GTZC_TZSC_MPCWM1.UPWM1LGTH.
–
SRAM1 security is optional and privilege can be enabled without having security.
•
SRAM2 security address offset is defined in SBRSA user option
The unprivileged watermark address offset is defined in
GTZC_TZSC_MPCWM2.UPWM1LGTH.
–
SRAM2 security is optional and privilege can be enabled without having security.
When enabled, the memory area starting from the security address offset up to the end of
the memory is secure.
When enabled, the unprivileged area starts from the memory base address up to the
watermark address offset, and the area above the watermark up to the end of the memory is
privileged.