P
r
e
l
i
m
i
n
a
r
y
:
A
t
h
e
r
o
s
C
o
n
f
i
d
e
n
t
i
a
l
10 • AR6002 MAC/BB/Radio for Embedded WLAN Applications Atheros Communications, Inc.
10 • April 2008 PRELIMINARY: ATHEROS CONFIDENTIAL
1.12.2 Sleep State Management
Sleep state minimizes power consumption
while saving system states. In deep sleep state,
all high speed clocks are gated off and the
external crystal is powered off. Light sleep is
similar to deep sleep, but the XTAL remains
running for faster WAKEUP. For the AR6002 to
enter sleep state, the MAC, SDIO/MBOX, and
CPU systems must be in sleep state.
When the embedded XTENSA CPU executes
the WAITI command, the SDIO/MBOX is idle
and the MAC system is in sleep state, the
AR6002 enters the system Sleep state. In sleep
state, the system gates all clock trees based on
REF_CLK with only the sleep clock logic
operating. The system remains in sleep state
until a WAKEUP event causes the system to
enter WAKEUP state, wait for the high
frequency clock source to stabilize, and finally
ungate all enabled clock trees. The CPU exits
the WAITI state only when an interrupt
arrives, which may result from the system
WAKEUP event.
1.13 System Clocking (RTC Block)
The AR6002 has an RTC block which controls
the clocks and power going to other internal
modules. Its inputs consist of sleep requests
from these modules and its outputs consists of
clock enable and power signals which are used
to gate the clocks going to these modules. The
RTC block also manages resets going to other
modules with the device. The AR6002’s
clocking is grouped into two types: high-speed
and low-speed.
1.13.1 High Speed Clocking
The crystal drives the primary clock source for
the internal PLL within the AR6002. REF_CLK
is the primary clock source for the analog and
digital systems. It is a high-frequency clock
sourced from either an external crystal or
oscillator source. It is the input to the RF
synthesizer for generating required frequencies
for proper 802.11 operation. An on-chip PLL
creates the appropriate clock frequency for
digital logic. When the AR6002 is in SLEEP
state, REF_CLK is not needed. To minimize
power consumption, the REF_CLK generator
shuts down during deep sleep. If an external
crystal is being used, the AR6002 disables the
on-chip oscillator driver. If REF_CLK is coming
from an external oscillator source, the AR6002
de-asserts its CLK_REQ signal and the external
clock source may shut down REF_CLK.
The PLL output is programmable but it will
usually run at one of only two frequencies: 320
MHz (during 802.11a mode) or 352 MHz
(during 802.11 b/g mode). This base clock is
divided into several clocks for the MAC and BB
modules. There are clocks running at 160 MHz,
80 MHz, and 40 MHz going to the MAC and BB
modules for 802.11a mode. (In 802.11g mode,
these are running at 176 MHz, 88 MHz, and 44
MHz.)
The SOC clock comes from a clock divider
module which divides the base clock by a
programmable value. By default, this value is
8. Hence in 802.11a mode (320 MHz base
clock), the default SOC frequency is 40 MHz
and in 802.11b/g mode (352 MHz base clock),
the SOC frequency is 44 MHz.
When the AR6002 exits SLEEP state, it enters
WAKEUP state and asserts CLK_REQ or
enables its internal crystal oscillator depending
on the clock configuration. The AR6002
remains in WAKEUP state for a programmable
duration that must cover clock settling time.
CLK_REQ remains asserted in WAKEUP and
ON states.
1.13.2 Low-Speed Clocking
The AR6002 has eliminated the need for a
second crystal thereby reducing system cost.
Instead, there is now a ring oscillator which
produces a clock that is nominally running at 2
MHz, but this can depending on process and
temperature.
The AR6002 has an internal calibration module
which produces a 32.768 KHz output with
minimal variation. For this, it uses the high-
speed crystal input as the golden clock.
Typically, this crystal input is only available
when the system is in the normal operating
state and is shut down during network sleep.
Hence the calibration module can adjust for
process and temperature variations only when
the system is in the normal operating state.
During network sleep, this module cannot
adjust for variations in the ring-oscillator
output.
In case the output from the calibration module
is not accurate enough, the AR6002 does have
the capability to use an external low-speed
clock source. This external clock source can be
used as the sleep clock instead of the
calibration module output. GPIO_8 in the
AR6002 can be used as the external clock
source pin.