User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 110
UG585 (v1.11) September 27, 2016
Chapter 3: Application Processing Unit
No remaining activity in the SCU
The SCU resumes normal operation when a CPU leaves WFI mode or a request on the ACP occurs.
The standby mode of the L2 cache controller can be enabled by setting bit 0 of the L2 controller
power control register (l2cpl310.reg15_power_ctrl). This mode is used in conjunction with the wait
state (WFI/WFE) of the processor that drives the controller. Before entering the wait state, the
Cortex-A9 processor must set its status field in the CPU power status register of the SCU to signal its
entering standby mode. The Cortex-A9 processor then executes a WFI or WFE entry instruction. The
SCU CPU power status register bits can also be read by a Cortex-A9 processor exiting low-power
mode to determine its state before executing its reset setup.
If the MP system is in the standby mode, the SCU signals to the L2 cache controller to gate its clock
and the controller honors that when the L2 becomes idle. Any transaction from the SCU to the L2
restarts the clock and triggers a response with 2-3 clock cycles of delay.
3.8.3 Dynamic Clock Gating in the L2 Controller
Bit 1 of the L2 Controller Power Control register enables the dynamic clock gating feature within the
controller. If this feature is enabled, the cache controller stops its clock when it is idle for 32 clock
cycles. The controller stops the clock until there is a transaction on its slave interface from the SCU.
If this interface detects a transaction, it restarts its clock and accepts the new transaction with two to
three cycles of delay.
3.9 CPU Initialization Sequence
Typically, these are the following steps to initialize CPU:
1. Set the vector base address register.
2. Invalidate L1 caches, TLB, branch predictor array (refer to Initialization of L1 Caches).
3. Invalidate L2 cache.
4. Prepare page tables and load into physical memory. (For more information on page tables, refer
to Translation Table Base Register 0 and 1.)
5. Setup the stack.
6. Load the page table base address into the translation table base register (refer to Translation
Table Base Register 0 and 1).
7. Set the MMU enable bit of the system control register.
8. Initialize and enable L2 cache (refer to L2-Cache, section 3.4.10 Programming Model).
9. Enable L1 caches by writing to the system control register.
10. Jump to entry of application.