User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 109
UG585 (v1.11) September 27, 2016
Chapter 3: Application Processing Unit
The L2 cache can be put in the standby mode when the CPUs are in that mode.
Clock gating is extensively used in all the sub-blocks within the module. Dynamic clock gating in
the Cortex-A9 can be enabled in the CP15 power control register. If enabled, the clocks to the
CPU internal blocks are dynamically disabled in idle periods. The gated blocks include the
integer core, the system control block, and the data engine.
Accurate branch and return prediction reduces the number of incorrect instruction fetch and
decode operations.
Physically addressed caches reduce the number of cache flushes and refills, saving energy in the
system.
The CPUs implement micro TLBs for local address translation which reduces the power
consumed in translation and protection look-ups.
The tag RAMs and data RAMs are accessed sequentially to eliminate accesses to the unwanted
data RAMs, and thus minimize unnecessary power consumption.
To reduce power consumption in the L1 caches, the number of full cache reads is reduced by
taking advantage of the sequential nature of memory accesses. If a cache read is sequential to
the previous cache read, and the address is within the same cache line, only the data RAM set
that was previously read is accessed.
If an instruction loop fits in four BTAC entries, then instruction cache accesses are turned off to
lower power consumption.
The clock to the NEON engine is dynamically controlled by the CPU and the engine gets clocked
only when a NEON instruction is issued.
Note: Power to the APU or any of its sub-blocks cannot be turned off while the PS is powered on.
3.8.2 Standby Mode
In the standby mode of operation, the device is still powered-up, but most of its clocks are gated off.
This means that the processor is in a static state and the only power drawn is due to leakage currents
and the clocking of the small amount of logic which looks out for the wake-up condition.
This mode is entered using either the WFI (wait for interrupt) or WFE (wait for event) instructions. It
is recommended that a DSB memory barrier be used before WFI or WFE, to ensure that pending
memory transactions complete.
The processor stops execution until a wake-up event is detected. The wake-up condition is
dependent on the entry instruction. For WFI, an interrupt or external debug request wakes the
processor. For WFE, several specified events exist, including another processor in an MP system
executing the SEV instruction. A request from the SCU can also wake up the clock for a cache
coherency operation in an MP system. This means that the cache of a processor which is in standby
state continues to be coherent with caches of other processors. A processor reset always forces the
processor to exit from the standby condition.
The standby mode in the SCU is enabled by setting the corresponding bit in the
mpcore.SCU_CONTROL_REGISTER. When this feature is enabled, the SCU stops its internal clocks
when the following conditions are met:
•CPUs are in WFI mode
No pending requests on the ACP