User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 744
UG585 (v1.11) September 27, 2016
Chapter 29: On-Chip Memory (OCM)
5. Unlock the SLCR by writing the unlock key value to the slcr.SLCR_unlock register.
6. Modify the slcr.OCM_CFG register to change the address ranges that the RAM responds to.
7. Re-lock the SLCR by writing the lock key value to the slcr.SLCR_lock register, if desired.
8. Modify the mpcore.Filtering_Start_Address_Register to the desired start address of transactions
that should be filtered away from the OCM for SCU masters. Typical settings are 0x0010_0000
(default, do not redirect lower 1 MB), and 0x0000_0000 (start redirect at lowest address to DDR
RAM).
9. Modify the mpcore.Filtering_End_Address_Register to the desired end address of transactions
that should be filtered away from the OCM for SCU masters. A typical setting is 0xFFE0_0000.
10. Set mpcore.SCU_CONTROL_REGISTER[Address_filtering_enable] to enable address filtering.
11. Ensure that the access has completed to the SLCR by issuing a data memory barrier (DMB)
instruction. This allows subsequent accesses to rely on the new address mapping.
29.4.2 AXI Responses
The OCM module produces the following AXI responses:
OKAY Generated for exclusive access transactions, indicating exclusive access failure. (OCM
does not support exclusive access transactions). Also generated for all other successful
transactions.
DECERR Generated for TrustZone (TZ) violations when accessing RAM/BootROM. A TZ violation
occurs when a non-secure AXI access (AxPROT[1] = 1) is attempted to a secure 4 KB
region of RAM/BootROM (TZ operations occur at a 4 KB page granularity).
SLVERR Generated for attempted access to reserved locations. SLVERR also generated for parity
errors detected on RAM read access, if enabled.