09.12.2012 Views

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Clock, Reset, and Power Control<br />

the processor asserts CLKSTOPACK, it closes the architectural clock gate. However, eight<br />

CLK cycles must pass before you can rely on the architectural clock gate being completely<br />

closed.<br />

Figure 10-9 on page 10-9 shows the system stopping CLK after the architectural clock gate is<br />

closed. This enables additional energy savings, but it is optional. In addition, the supply voltage,<br />

Vdd (core) can also be lowered as shown in Figure 10-9 on page 10-9 to improve energy<br />

savings. However, CLK must not stop before the architectural clock gate is closed, that is, it<br />

must continue to run for at least eight cycles after CLKSTOPACK is asserted.<br />

After the architectural clock gate closes, the system can keep the processor in this low-power<br />

state for as long as required, by holding CLKSTOPREQ HIGH. When the system deasserts<br />

CLKSTOPREQ, this causes the architectural clock gate to open. The processor then responds<br />

by deasserting CLKSTOPACK and resuming instruction execution. The upper bound for the<br />

number of CLK cycles between CLKSTOPREQ and CLKSTOPACK deassertion is 8.<br />

When driving CLKSTOPREQ, the system must comply with a set of protocol rules, otherwise<br />

the processor behavior is Unpredictable. The rules are as follows:<br />

• CLKSTOPREQ must not transition from LOW to HIGH if CLKSTOPACK is already<br />

HIGH.<br />

• When CLKSTOPREQ is HIGH, it must remain HIGH until CLKSTOPACK goes<br />

HIGH. Only when CLKSTOPACK goes HIGH can CLKSTOPREQ go LOW.<br />

Note<br />

• If you are debugging software running on the <strong>Cortex</strong>-<strong>A8</strong> processor, DBGNOCLKSTOP<br />

must be HIGH. Otherwise, halting debug events do not work as architected and the APB<br />

interface does not return a response when accessing the ETM, CTI, or core domain debug<br />

registers. See Table 12-3 on page 12-6 for information on the debug registers that are in<br />

the core.<br />

• If DBGNOCLKSTOP is HIGH and the system asserts CLKSTOPREQ, the processor<br />

goes into an idle state but not into a low-power state.<br />

• The CLKSTOPACK output pin remains HIGH even when DBGNOCLKSTOP is<br />

HIGH.<br />

NEON or ETM unit level gating<br />

In addition to the architectural gating mechanism, the processor supports gating of major<br />

components within the processor such as the NEON unit, VFP coprocessor, and ETM unit.<br />

The cp10 and cp11 fields in the CP15 c1 Coprocessor Access Control Register control access to<br />

the NEON and VFP coprocessor. See c1, Coprocessor Access Control Register on page 3-52.<br />

Reset clears the cp10 and cp11 fields. If there are no NEON or VFP instructions in the pipeline,<br />

the clock is disabled for lower power.<br />

You can also disable the NEON unit and VFP coprocessor by setting the EN bit of the<br />

Floating-point Exception Register to 0. See Floating-point Exception Register, FPEXC on<br />

page 13-14.<br />

The ETM Control Register enables the ETM. See the Embedded Trace Macrocell Architecture<br />

Specification for more information. The global enable bit in the CTI Control Register enables<br />

the ETM clocks, excluding the ATB clock, ATCLK, that can only be gated external to the<br />

processor. See CTI Control Register, CTICONTROL on page 15-11.<br />

<strong>ARM</strong> DDI 0344K Copyright © 2006-2010 <strong>ARM</strong> Limited. All rights reserved. 10-10<br />

ID060510 Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!