TI CC2420EMK

CC2420
2.4 GHz IEEE 802.15.4 / ZigBee-ready RF Transceiver
Applications
•
•
•
•
•
•
•
2.4 GHz IEEE 802.15.4 systems
ZigBee systems
Home/building automation
Industrial Control
Wireless sensor networks
PC peripherals
Consumer Electronics
Product Description
The CC2420 is a true single-chip 2.4 GHz
IEEE 802.15.4 compliant RF transceiver
designed for low power and low voltage
wireless applications. CC2420 includes a
digital direct sequence spread spectrum
baseband modem providing a spreading
gain of 9 dB and an effective data rate of
250 kbps.
The CC2420 is a low-cost, highly integrated
solution for robust wireless communication
in the 2.4 GHz unlicensed ISM band. It
complies with worldwide regulations
covered by ETSI EN 300 328 and EN 300
440 class 2 (Europe), FCC CFR47 Part 15
(US) and ARIB STD-T66 (Japan).
features reduce the load on the host
controller and allow CC2420 to interface
low-cost microcontrollers.
The configuration interface and transmit /
receive FIFOs of CC2420 are accessed via
an SPI interface. In a typical application
CC2420 will be used together with a
microcontroller and a few external passive
components.
CC2420 is based on Chipcon’s SmartRF®03 technology in 0.18 µm CMOS.
The CC2420 provides extensive hardware
support for packet handling, data
buffering, burst transmissions, data
encryption, data authentication, clear
channel assessment, link quality indication
and packet timing information. These
Key Features
•
•
•
•
•
•
True single-chip 2.4 GHz IEEE
802.15.4 compliant RF transceiver
with baseband modem and MAC
support
DSSS baseband modem with 2
MChips/s and 250 kbps effective data
rate.
Suitable for both RFD and FFD
operation
Low current consumption (RX: 18.8
mA, TX: 17.4 mA)
Low supply voltage (2.1 – 3.6 V) with
integrated voltage regulator
Low supply voltage (1.6 – 2.0 V) with
external voltage regulator
•
•
•
•
•
•
•
•
•
•
•
•
SWRS041B
Programmable output power
No external RF switch / filter needed
I/Q low-IF receiver
I/Q direct upconversion transmitter
Very few external components
128(RX) + 128(TX) byte data buffering
Digital RSSI / LQI support
Hardware MAC encryption (AES-128)
Battery monitor
QLP-48 package, 7x7 mm
Complies with ETSI EN 300 328, EN
300 440 class 2, FCC CFR-47 part 15
and ARIB STD-T66
Powerful and flexible development
tools available
Page 1 of 89
CC2420
Table of contents
1
Abbreviations_________________________________________________________________5
2
References ___________________________________________________________________6
3
Features _____________________________________________________________________7
4
Absolute Maximum Ratings _____________________________________________________8
5
Operating Conditions __________________________________________________________8
6
Electrical Specifications ________________________________________________________9
6.1
Overall ___________________________________________________________________9
6.2
Transmit Section ___________________________________________________________9
6.3
Receive Section ___________________________________________________________10
6.4
RSSI / Carrier Sense _______________________________________________________11
6.5
IF Section _______________________________________________________________11
6.6
Frequency Synthesizer Section _______________________________________________11
6.7
Digital Inputs/Outputs ______________________________________________________12
6.8
Voltage Regulator _________________________________________________________13
6.9
Battery Monitor ___________________________________________________________13
6.10 Power Supply ____________________________________________________________13
7
Pin Assignment ______________________________________________________________15
8
Circuit Description ___________________________________________________________17
9
Application Circuit ___________________________________________________________19
9.1
Input / output matching _____________________________________________________19
9.2
Bias resistor ______________________________________________________________19
9.3
Crystal __________________________________________________________________19
9.4
Voltage regulator __________________________________________________________19
9.5
Power supply decoupling and filtering _________________________________________19
10
IEEE 802.15.4 Modulation Format ____________________________________________24
11
Configuration Overview _____________________________________________________25
12
Evaluation Software ________________________________________________________26
13
4-wire Serial Configuration and Data Interface__________________________________27
13.1 Pin configuration __________________________________________________________27
13.2 Register access____________________________________________________________27
13.3 Status byte _______________________________________________________________28
13.4 Command strobes _________________________________________________________29
13.5 RAM access______________________________________________________________29
13.6 FIFO access ______________________________________________________________31
13.7 Multiple SPI access ________________________________________________________31
14
Microcontroller Interface and Pin Description __________________________________32
14.1 Configuration interface _____________________________________________________32
14.2 Receive mode ____________________________________________________________33
14.3 RXFIFO overflow _________________________________________________________33
14.4 Transmit mode____________________________________________________________34
14.5 General control and status pins _______________________________________________35
15
Demodulator, Symbol Synchroniser and Data Decision ___________________________35
16
Frame Format _____________________________________________________________36
16.1 Synchronisation header _____________________________________________________36
16.2 Length field ______________________________________________________________37
16.3 MAC protocol data unit_____________________________________________________37
16.4 Frame check sequence ______________________________________________________38
SWRS041B
Page 2 of 89
CC2420
17
RF Data Buffering __________________________________________________________39
17.1 Buffered transmit mode _____________________________________________________39
17.2 Buffered receive mode _____________________________________________________39
17.3 Unbuffered, serial mode ____________________________________________________40
18
Address Recognition ________________________________________________________41
19
Acknowledge Frames _______________________________________________________41
20
Radio control state machine __________________________________________________43
21
MAC Security Operations (Encryption and Authentication) _______________________45
21.1 Keys____________________________________________________________________45
21.2 Nonce / counter ___________________________________________________________45
21.3 Stand-alone encryption _____________________________________________________46
21.4 In-line security operations ___________________________________________________46
21.5 CTR mode encryption / decryption ____________________________________________47
21.6 CBC-MAC_______________________________________________________________47
21.7 CCM ___________________________________________________________________47
21.8 Timing __________________________________________________________________48
22
Linear IF and AGC Settings__________________________________________________48
23
RSSI / Energy Detection _____________________________________________________48
24
Link Quality Indication _____________________________________________________49
25
Clear Channel Assessment ___________________________________________________50
26
Frequency and Channel Programming _________________________________________50
27
VCO and PLL Self-Calibration _______________________________________________51
27.1 VCO____________________________________________________________________51
27.2 PLL self-calibration________________________________________________________51
28
Output Power Programming _________________________________________________51
29
Voltage Regulator __________________________________________________________51
30
Battery Monitor____________________________________________________________52
31
Crystal Oscillator __________________________________________________________53
32
Input / Output Matching ____________________________________________________54
33
Transmitter Test Modes _____________________________________________________54
33.1 Unmodulated carrier _______________________________________________________54
33.2 Modulated spectrum _______________________________________________________55
34
System Considerations and Guidelines _________________________________________57
34.1 Frequency hopping and multi-channel systems___________________________________57
34.2 Data burst transmissions ____________________________________________________57
34.3 Crystal accuracy and drift ___________________________________________________57
34.4 Communication robustness __________________________________________________57
34.5 Communication security ____________________________________________________57
34.6 Low-cost systems _________________________________________________________58
34.7 Battery operated systems ____________________________________________________58
34.8 BER / PER measurements ___________________________________________________58
35
PCB Layout Recommendations _______________________________________________59
36
Antenna Considerations _____________________________________________________59
37
Configuration Registers _____________________________________________________61
38
Test Output Signals _________________________________________________________81
39
Package Description (QLP 48) ________________________________________________83
40
Recommended layout for package (QLP 48) ____________________________________84
SWRS041B
Page 3 of 89
CC2420
40.1
40.2
40.3
40.4
41
Package thermal properties __________________________________________________84
Soldering information ______________________________________________________84
Plastic tube specification ____________________________________________________85
Carrier tape and reel specification _____________________________________________85
Ordering Information _______________________________________________________85
42
General Information ________________________________________________________86
42.1 Document History _________________________________________________________86
42.2 Product Status Definitions___________________________________________________87
43
Address Information ________________________________________________________88
44
TI Worldwide Technical Support _____________________________________________88
SWRS041B
Page 4 of 89
CC2420
1
Abbreviations
ADC
AES
AGC
ARIB
BER
CBC-MAC
CCA
CCM
CFR
CSMA-CA
CTR
CW
DAC
DSSS
ESD
ESR
EVM
FCC
FCF
FIFO
FFCTRL
HSSD
IEEE
IF
ISM
ITU-T
-
I/O
I/Q
kbps
LNA
LO
LQI
LSB
MAC
MFR
MHR
MIC
MPDU
MSDU
NA
NC
O-QPSK
PA
PCB
PER
PHY
PHR
PLL
PSDU
QLP
RAM
RBW
RF
RSSI
RX
-
Analog to Digital Converter
Advanced Encryption Standard
Automatic Gain Control
Association of Radio Industries and Businesses
Bit Error Rate
Cipher Block Chaining Message Authentication Code
Clear Channel Assessment
Counter mode + CBC-MAC
Code of Federal Regulations
Carrier Sense Multiple Access with Collision Avoidance
Counter mode (encryption)
Continuous Wave
Digital to Analog Converter
Direct Sequence Spread Spectrum
Electro Static Discharge
Equivalent Series Resistance
Error Vector Magnitude
Federal Communications Commission
Frame Control Field
First In First Out
FIFO and Frame Control
High Speed Serial Debug
Institute of Electrical and Electronics Engineers
Intermediate Frequency
Industrial, Scientific and Medical
International Telecommunication Union – Telecommunication
Standardization Sector
Input / Output
In-phase / Quadrature-phase
kilo bits per second
Low-Noise Amplifier
Local Oscillator
Link Quality Indication
Least Significant Bit / Byte
Medium Access Control
MAC Footer
MAC Header
Message Integrity Code
MAC Protocol Data Unit
MAC Service Data Unit
Not Available
Not Connected
Offset - Quadrature Phase Shift Keying
Power Amplifier
Printed Circuit Board
Packet Error Rate
Physical Layer
PHY Header
Phase Locked Loop
PHY Service Data Unit
Quad Leadless Package
Random Access Memory
Resolution BandWidth
Radio Frequency
Receive Signal Strength Indicator
Receive
SWRS041B
Page 5 of 89
CC2420
SHR
SPI
TBD
T/R
TX
VCO
VGA
2
[1]
-
Synchronisation Header
Serial Peripheral Interface
To Be Decided / To Be Defined
Transmit / Receive
Transmit
Voltage Controlled Oscillator
Variable Gain Amplifier
References
IEEE std. 802.15.4 - 2003: Wireless Medium Access Control (MAC) and
Physical Layer (PHY) specifications for Low Rate Wireless Personal Area
Networks (LR-WPANs)
http://standards.ieee.org/getieee802/download/802.15.4-2003.pdf
[2]
NIST FIPS Pub 197: Advanced Encryption Standard (AES), Federal
Information Processing Standards Publication 197, US Department of
Commerce/N.I.S.T., November 26, 2001. Available from the NIST website.
http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf
[3]
R. Housley, D. Whiting, N. Ferguson, Counter with CBC-MAC (CCM),
submitted to NIST, June 3, 2002. Available from the NIST website.
http://csrc.nist.gov/CryptoToolkit/modes/proposedmodes/ProposedModesPa
ge.html
SWRS041B
Page 6 of 89
CC2420
3
•
•
Features
2400 – 2483.5 MHz RF Transceiver
• Direct
Sequence
Spread
Spectrum (DSSS) transceiver
• 250 kbps data rate, 2 MChip/s
chip rate
• O-QPSK with half sine pulse
shaping modulation
• Very low current consumption
(RX: 18.8 mA, TX: 17.4 mA)
• High sensitivity (-95 dBm)
• High adjacent channel rejection
(30/45 dB)
• High alternate channel rejection
(53/54 dB)
• On-chip VCO, LNA and PA
• Low supply voltage (2.1 – 3.6 V)
with on-chip voltage regulator
• Programmable output power
• I/Q low-IF soft decision receiver
• I/Q
direct
up-conversion
transmitter
Separate transmit and receive FIFOs
• 128 byte transmit data FIFO
• 128 byte receive data FIFO
•
Very few external components
• Only reference crystal and a
minimised number of passives
• No external filters needed
•
Easy configuration interface
• 4-wire SPI interface
• Serial clock up to 10 MHz
•
802.15.4 MAC hardware support:
• Automatic preamble generator
• Synchronisation
word
insertion/detection
• CRC-16
computation
and
checking over the MAC payload
• Clear Channel Assessment
• Energy detection / digital RSSI
• Link Quality Indication
• Full automatic MAC security
(CTR, CBC-MAC, CCM)
•
802.15.4 MAC hardware security:
• Automated security operations
within the receive and transmit
FIFOs.
• CTR mode encryption / decryption
• CBC-MAC authentication
• CCM encryption / decryption and
authentication
• Stand-alone AES encryption
•
Development tools available
• Fully equipped development kit
• Demonstration board reference
design with microcontroller code
• Easy-to-use
software
for
generating the CC2420 configuration data
•
•
Small size QLP-48 package, 7 x 7 mm
Complies with EN 300 328, EN 300
440 class 2, FCC CFR47 part 15 and
ARIB STD-T66
SWRS041B
Page 7 of 89
CC2420
4
Absolute Maximum Ratings
Parameter
Min.
Max.
Units
Supply voltage for on-chip voltage regulator,
VREG_IN pin 43.
-0.3
3.6
V
Supply voltage (VDDIO) for digital I/Os, DVDD3.3,
pin 25.
-0.3
3.6
V
Supply voltage (VDD) on AVDD_VCO, DVDD1.8,
etc (pin no 1, 2, 3, 4, 10, 14, 15, 17, 18, 20, 26, 35,
37, 44 and 48)
−0.3
2.0
V
Voltage on any digital I/O pin, (pin no. 21, 27-34
and 41)
-0.3
VDDIO+0.3, max 3.6
V
Voltage on any other pin, (pin no. 6, 7, 8, 11, 12,
13, 16, 36, 38, 39, 40, 45, 46 and 47)
-0.3
VDD+0.3, max 2.0
V
10
dBm
150
°C
260
°C
Input RF level
Storage temperature range
−50
Reflow solder temperature
The absolute maximum ratings given
above should under no circumstances be
violated. Stress exceeding one or more of
Condition
T = 10 s
the limiting values may cause permanent
damage to the device.
Caution!
ESD
sensitive
device.
Precaution should be used when handling
the device in order to prevent permanent
damage.
5
Operating Conditions
Parameter
Min.
Supply voltage for on-chip voltage regulator,
VREG_IN pin 43.
Typ.
Max.
Units
2.1
3.6
V
Supply voltage (VDDIO) for digital I/Os, DVDD3.3,
pin 25 .
1.6
3.6
V
The digital I/O voltage (DVDD3.3 pin)
must match the external interfacing
circuit (e.g. microcontroller).
Supply voltage (VDD) on AVDD_VCO, DVDD1.8,
etc (pin no 1, 2, 3, 4, 10, 14, 15, 17, 18, 20, 26, 35,
37, 44 and 48)
1.6
2.0
V
The typical application uses regulated
1.8 V supply generated by the on-chip
voltage regulator.
Operating ambient temperature range, TA
−40
85
°C
1.8
SWRS041B
Condition
Page 8 of 89
CC2420
6
Electrical Specifications
Measured on CC2420 EM with transmission line balun, TA = 25 °C,
voltage regulator used if nothing else stated.
6.1
and
VREG_IN
= 3.3 V, internal
Overall
Parameter
Min.
RF Frequency Range
2400
6.2
DVDD3.3
Typ.
Max.
Unit
Condition / Note
2483.5
MHz
Programmable in 1 MHz steps, 5
MHz steps for compliance with [1]
Max.
Unit
Condition / Note
Transmit Section
Parameter
Min.
Typ.
Transmit bit rate
250
250
kbps
As defined by [1]
Transmit chip rate
2000
2000
kChips/s
As defined by [1]
Nominal output power
-3
dBm
Delivered to a single ended 50 Ω
load through a balun.
0
[1] requires minimum –3 dBm
Programmable output power range
24
dB
The output power is
programmable in 8 steps from
approximately –24 to 0 dBm.
nd
-44
dBm
rd
-64
dBm
Measured conducted with 1 MHz
resolution bandwidth on spectrum
analyser. At max output power
delivered to a single ended 50 Ω
load through a balun. See page
54.
Harmonics
2 harmonic
3 harmonic
Spurious emission
Maximum output power.
30 - 1000 MHz
1– 12.75 GHz
1.8 – 1.9 GHz
5.15 – 5.3 GHz
-56
-44
-56
-51
dBm
dBm
dBm
dBm
Complies with EN 300 328, EN
300 440, FCC CFR47 Part 15
and ARIB STD-T-66
Error Vector Magnitude (EVM)
11
%
Measured as defined by [1]
[1] requires max. 35 %
Optimum load impedance
95
+ j187
SWRS041B
Ω
Differential impedance as seen
from the RF-port (RF_P and
RF_N) towards the antenna. For
matching details see the Input /
Output Matching section on page
54.
Page 9 of 89
CC2420
6.3
Receive Section
Parameter
Min.
Typ.
-90
-95
Max.
Unit
Condition / Note
dBm
PER = 1%, as specified by [1]
Receiver Sensitivity
Measured in a 50Ω single-ended
load through a balun.
[1] requires –85 dBm
Saturation (maximum input level)
0
10
dBm
PER = 1%, as specified by [1]
Measured in a 50Ω single–ended
load through a balun.
[1] requires –20 dBm
Adjacent channel rejection
+ 5 MHz channel spacing
45
dB
Wanted signal @ -82 dBm,
adjacent modulated channel at
+5 MHz, PER = 1 %, as specified
by [1].
[1] requires 0 dB
Adjacent channel rejection
- 5 MHz channel spacing
30
dB
Wanted signal @ -82 dBm,
adjacent modulated channel at
-5 MHz, PER = 1 %, as specified
by [1].
[1] requires 0 dB
Alternate channel rejection
+ 10 MHz channel spacing
54
dB
Wanted signal @ -82 dBm,
adjacent modulated channel at
+10 MHz, PER = 1 %, as
specified by [1]
[1] requires 30 dB
Alternate channel rejection
- 10 MHz channel spacing
53
dB
Wanted signal @ -82 dBm,
adjacent modulated channel at
-10 MHz, PER = 1 %, as
specified by [1]
[1] requires 30 dB
Channel rejection
≥ + 15 MHz
62
dB
≤ - 15 MHz
62
dB
Co-channel rejection
Wanted signal @ -82 dBm.
Undesired signal is an IEEE
802.15.4 modulated channel,
stepped through all channels
from 2405 to 2480 MHz. Signal
level for PER = 1%.
-3
dB
Wanted signal @ -82 dBm.
Undesired signal is an IEEE
802.15.4 modulated at the same
frequency as the desired signal.
Signal level for PER = 1%.
-28
-28
-27
-28
dBm
dBm
dBm
dBm
Wanted signal 3 dB above the
sensitivity level, CW jammer,
PER = 1%. Complies with EN
300 440 class 2.
-73
-58
dBm
dBm
Conducted measurement in a 50
Ω single ended load. Measured
according to EN 300 328, EN 300
440 class 2, FCC CFR47, Part 15
and ARIB STD-T-66
Blocking / Desensitisation
+/- 5 MHz from band edge
+/- 20 MHz from band edge
+/- 30 MHz from band edge
+/- 50 MHz from band edge
Spurious emission
30 – 1000 MHz
1 – 12.75 GHz
SWRS041B
Page 10 of 89
CC2420
Parameter
Min.
Frequency error tolerance
-300
Typ.
Max.
Unit
Condition / Note
300
kHz
Difference between centre
frequency of the received RF
signal and local oscillator
frequency
[1] requires 200 kHz
Symbol rate error tolerance
120
ppm
Difference between incoming
symbol rate and the internally
generated symbol rate
[1] requires 80 ppm
Data latency
6.4
3
µs
Processing delay in receiver.
Time from complete transmission
of SFD until complete reception
of SFD, i.e. from SFD goes active
on transmitter until active on
receiver.
Unit
Condition / Note
RSSI / Carrier Sense
Parameter
Min.
Typ.
Max.
Carrier sense level
− 77
dBm
Programmable in
RSSI.CCA_THR
RSSI dynamic range
100
dB
The range is approximately from
–100 dBm to 0 dBm
RSSI accuracy
±6
dB
See page 48 for details
RSSI linearity
±3
dB
RSSI average time
128
µs
8 symbol periods, as specified by
[1]
Unit
Condition / Note
6.5
IF Section
Parameter
Min.
Intermediate frequency (IF)
6.6
Typ.
Max.
2
MHz
Frequency Synthesizer Section
Parameter
Min.
Crystal oscillator frequency
Crystal frequency accuracy
requirement
Crystal operation
Typ.
Max.
16
- 40
40
Parallel
SWRS041B
Unit
Condition / Note
MHz
See page 53 for details.
ppm
Including aging and temperature
dependency, as specified by [1]
C381 and C391 are loading
capacitors, see page 53
Page 11 of 89
CC2420
Parameter
Min.
Typ.
Max.
Unit
Condition / Note
Crystal load capacitance
12
16
20
pF
16 pF recommended
60
Ω
Crystal ESR
Crystal oscillator start-up time
1.0
ms
Phase noise
Unmodulated carrier
PLL loop bandwidth
−109
−117
−117
−117
dBc/Hz
dBc/Hz
dBc/Hz
dBc/Hz
100
kHz
PLL lock time
6.7
16 pF load
At ±1 MHz offset from carrier
At ±2 MHz offset from carrier
At ±3 MHz offset from carrier
At ±5 MHz offset from carrier
192
µs
The startup time from the crystal
oscillator is running and RX / TX
turnaround time
Max.
Unit
Condition / Note
Digital Inputs/Outputs
Parameter
Min.
Typ.
General
Signal levels are referred to the
voltage level at pin DVDD3.3
Logic "0" input voltage
0
0.3*
DVDD
V
Logic "1" input voltage
0.7*
DVDD
DVDD
V
Logic "0" output voltage
0
0.4
V
Output current −8 mA,
3.3 V supply voltage
Logic "1" output voltage
2.5
VDD
V
Output current 8 mA,
3.3 V supply voltage
Logic "0" input current
NA
−1
µA
Input signal equals GND
Logic "1" input current
NA
1
µA
Input signal equals VDD
FIFO setup time
20
ns
TX unbuffered mode, minimum
time FIFO must be ready before
the positive edge of FIFOP
FIFO hold time
10
ns
TX unbuffered mode, minimum
time FIFO must be held after the
positive edge of FIFOP
Serial interface pins (SCLK, SI, SO
and CSn) timing specification
See Table 4 on page 28
SWRS041B
Page 12 of 89
CC2420
6.8
Voltage Regulator
Parameter
Min.
Typ.
Max.
Unit
Condition / Note
Note that the internal voltage
regulator
can
only
supply
CC2420 and no external circuitry.
General
Input Voltage
2.1
3.0
3.6
V
On the VREG_IN pin
Output Voltage
1.7
1.8
1.9
V
On the VREG_OUT pin
Quiescent current
13
20
29
µA
No current drawn from the
VREG_OUT pin. Min and max
numbers include 2.1 through 3.6
V input voltage
0.3
0.6
ms
Start-up time
6.9
Battery Monitor
Parameter
Min.
Typ.
Max.
Unit
Condition / Note
Current consumption
6
30
90
µA
When enabled
Start-up time
100
µs
Voltage regulator already enabled
Settling time
2
µs
New toggle voltage programmed
Step size
50
mV
Hysteresis
10
mV
Absolute accuracy
-80
80
mV
Relative accuracy
-50
50
mV
Max.
Unit
May be software calibrated for
known reference voltage
6.10 Power Supply
Parameter
Min.
Typ.
Current consumption in different
modes (see Figure 25, page 44)
Condition / Note
Current drawn from VREG_IN,
through voltage regulator
Voltage regulator off (OFF)
Power Down mode (PD)
Idle mode (IDLE)
0.02
20
426
Current Consumption,
receive mode
18.8
1
SWRS041B
µA
µA
µA
Voltage regulator off
Voltage regulator on
Including crystal oscillator and
voltage regulator
mA
Page 13 of 89
CC2420
Parameter
Min.
Typ.
Max.
Unit
Condition / Note
mA
mA
mA
mA
mA
The output power is delivered
differentially to a 50 Ω singled
ended load through a balun, see
also page 54.
Current Consumption,
transmit mode:
P = -25 dBm
P = -15 dBm
P = -10 dBm
P = −5 dBm
P = 0 dBm
8.5
9.9
11
14
17.4
SWRS041B
Page 14 of 89
CC2420
AVDD_IF1
VREG_OUT
VREG_EN
NC
XOSC16_Q1
XOSC16_Q2
AVDD_XOSC16
42
41
40
39
38
37
R_BIAS
45
VREG_IN
ATEST2
46
43
ATEST1
47
44
AVDD_CHP
Pin Assignment
48
7
VCO_GUARD
1
36
NC
AVDD_VCO
2
35
DVDD_RAM
AVDD_PRE
3
34
SO
AVDD_RF1
4
33
SI
GND
5
32
SCLK
RF_P
6
31
CSn
TXRX_SWITCH
7
30
FIFO
RF_N
8
29
FIFOP
GND
9
28
CCA
AVDD_SW
10
27
SFD
NC
11
26
DVDD1.8
NC
12
25
DVDD3.3
CC2420
QLP48
7x7
DGND_GUARD
DGUARD
DSUB_CORE
20
DSUB_PADS
19
DVDD_ADC
24
18
AVDD_ADC
23
17
NC
RESETn
16
AVDD_IF2
DGND
15
AVDD_RF2
22
14
NC
21
13
AGND
Exposed die
attach pad
Figure 1. CC2420 Pinout – Top View
Pin
Pin Name
Pin type
Pin Description
-
AGND
Ground (analog)
1
2
3
4
5
6
VCO_GUARD
AVDD_VCO
AVDD_PRE
AVDD_RF1
GND
RF_P
Power (analog)
Power (analog)
Power (analog)
Power (analog)
Ground (analog)
RF I/O
7
TXRX_SWITCH
Power (analog)
8
RF_N
RF I/O
9
10
11
12
13
14
15
GND
AVDD_SW
NC
NC
NC
AVDD_RF2
AVDD_IF2
Ground (analog)
Power (analog)
Power (analog)
Power (analog)
Exposed die attach pad. Must be connected to solid ground
plane
Connection of guard ring for VCO (to AVDD) shielding
1.8 V Power supply for VCO
1.8 V Power supply for Prescaler
1.8 V Power supply for RF front-end
Grounded pin for RF shielding
Positive RF input/output signal to LNA/from PA in
receive/transmit mode
Common supply connection for integrated RF front-end. Must
be connected to RF_P and RF_N externally through a DC
path
Negative RF input/output signal to LNA/from PA in
receive/transmit mode
Grounded pin for RF shielding
1.8 V Power supply for LNA / PA switch
Not Connected
Not Connected
Not Connected
1.8 V Power supply for receive and transmit mixers
1.8 V Power supply for transmit / receive IF chain
SWRS041B
Page 15 of 89
CC2420
Pin
Pin Name
Pin type
Pin Description
16
17
18
19
20
21
22
23
24
25
26
27
28
29
NC
AVDD_ADC
DVDD_ADC
DGND_GUARD
DGUARD
RESETn
DGND
DSUB_PADS
DSUB_CORE
DVDD3.3
DVDD1.8
SFD
CCA
FIFOP
Power (analog)
Power (digital)
Ground (digital)
Power (digital)
Digital Input
Ground (digital)
Ground (digital)
Ground (digital)
Power (digital)
Power (digital)
Digital output
Digital output
Digital output
30
FIFO
Digital I/O
31
32
33
34
CSn
SCLK
SI
SO
35
36
37
38
39
40
41
DVDD_RAM
NC
AVDD_XOSC16
XOSC16_Q2
XOSC16_Q1
NC
VREG_EN
Digital input
Digital input
Digital input
Digital output
(tristate)
Power (digital)
Power (analog)
Analog I/O
Analog I/O
Digital input
42
43
44
45
46
47
48
VREG_OUT
VREG_IN
AVDD_IF1
R_BIAS
ATEST2
ATEST1
AVDD_CHP
Power output
Power (analog)
Power (analog)
Analog output
Analog I/O
Analog I/O
Power (analog)
Not Connected
1.8 V Power supply for analog parts of ADCs and DACs
1.8 V Power supply for digital parts of receive ADCs
Ground connection for digital noise isolation
1.8 V Power supply connection for digital noise isolation
Asynchronous, active low digital reset
Ground connection for digital core and pads
Substrate connection for digital pads
Substrate connection for digital modules
3.3 V Power supply for digital I/Os
1.8 V Power supply for digital core
SFD (Start of Frame Delimiter) / digital mux output
CCA (Clear Channel Assessment) / digital mux output
Active when number of bytes in FIFO exceeds threshold /
serial RF clock output in test mode
Active when data in FIFO /
serial RF data input / output in test mode
SPI Chip select, active low
SPI Clock input, up to 10 MHz
SPI Slave Input. Sampled on the positive edge of SCLK
SPI Slave Output. Updated on the negative edge of SCLK.
Tristate when CSn high.
1.8 V Power supply for digital RAM
Not Connected
1.8 V crystal oscillator power supply
16 MHz Crystal oscillator pin 2
16 MHz Crystal oscillator pin 1 or external clock input
Not Connected
Voltage regulator enable, active high, held at VREG_IN
voltage level when active. Note that VREG_EN is relative
VREG_IN, not DVDD3.3.
Voltage regulator 1.8 V power supply output
Voltage regulator 2.1 to 3.6 V power supply input
1.8 V Power supply for transmit / receive IF chain
External precision resistor, 43 kΩ, ± 1 %
Analog test I/O for prototype and production testing
Analog test I/O for prototype and production testing
1.8 V Power supply for phase detector and charge pump
NOTES:
The exposed die attach pad must be connected to a solid ground plane as this is the main ground connection for the
chip.
SWRS041B
Page 16 of 89
CC2420
8
Circuit Description
AUTOMATIC GAIN CONTROL
ADC
DIGITAL
DEMODULATOR
ADC
- Digital RSSI
- Gain Control
- Image Suppression
- Channel Filtering
- Demodulation
- Frame
synchronization
LNA
Serial
voltage
regulator
CC2420
0
FREQ
SYNTH
90
Serial
microcontroller
interface
SmartRF ®
CONTROL LOGIC
TX/RX CONTROL
DIGITAL
INTERFACE
WITH FIFO
BUFFERS,
CRC AND
ENCRYPTION
TX POWER CONTROL
DAC
Power
Control
PA
Σ
DIGITAL
MODULATOR
- Data spreading
- Modulation
Digital and
Analog test
interface
DAC
XOSC
On-chip
BIAS
R
16 MHz
Figure 2. CC2420 simplified block diagram
A simplified block diagram of CC2420 is
shown in Figure 2.
CC2420 features a low-IF receiver. The
received RF signal is amplified by the lownoise amplifier (LNA) and down-converted
in quadrature (I and Q) to the intermediate
frequency (IF). At IF (2 MHz), the complex
I/Q signal is filtered and amplified, and
then digitized by the ADCs. Automatic
gain control, final channel filtering, despreading, symbol correlation and byte
synchronisation are performed digitally.
When the SFD pin goes active, this
indicates that a start of frame delimiter has
been detected. CC2420 buffers the
received data in a 128 byte receive FIFO.
The user may read the FIFO through an
SPI interface. CRC is verified in hardware.
RSSI and correlation values are appended
to the frame. CCA is available on a pin in
receive mode. Serial (unbuffered) data
modes are also available for test
purposes.
The CC2420 transmitter is based on direct
up-conversion. The data is buffered in a
128 byte transmit FIFO (separate from the
receive FIFO). The preamble and start of
frame delimiter are generated by
hardware. Each symbol (4 bits) is spread
using the IEEE 802.15.4 spreading
sequence to 32 chips and output to the
digital-to-analog converters (DACs).
An analog low pass filter passes the signal
to the quadrature (I and Q) upconversion
mixers. The RF signal is amplified in the
power amplifier (PA) and fed to the
antenna.
The internal T/R switch circuitry makes the
antenna interface and matching easy. The
RF connection is differential. A balun may
be used for single-ended antennas. The
biasing of the PA and LNA is done by
connecting TXRX_SWITCH to RF_P and
RF_N through an external DC path.
The frequency synthesizer includes a
completely on-chip LC VCO and a 90
degrees phase splitter for generating the I
SWRS041B
Page 17 of 89
CC2420
and Q LO signals to the down-conversion
mixers in receive mode and up-conversion
mixers in transmit mode. The VCO
operates in the frequency range 4800 –
4966 MHz, and the frequency is divided by
two when split in I and Q.
A crystal must be connected to
XOSC16_Q1
and
XOSC16_Q2
and
provides the reference frequency for the
synthesizer. A digital lock signal is
available from the PLL.
The 4-wire SPI serial interface is used for
configuration and data buffering.
An on-chip voltage regulator delivers the
regulated 1.8 V supply voltage. The
voltage regulator may be enabled /
disabled through a separate pin.
A battery monitor may optionally be used
to monitor the unregulated power supply
voltage.
The
battery
monitor
is
configurable through the SPI interface.
The digital baseband includes support for
frame handling, address recognition, data
buffering and MAC security.
SWRS041B
Page 18 of 89
CC2420
9
Application Circuit
Few external components are required for
the operation of CC2420. A typical
application circuit is shown in Figure 4.
The external components shown are
described in Table 1 and typical values
are given in Table 2. Note that most
decoupling capacitors are not shown on
the application circuits. For the complete
reference design please refer to Texas
Instrument’s web site: http://www.ti.com.
9.1
Input / output matching
The RF input/output is high impedance
and differential. The optimum differential
load for the RF port is 95+j187 Ω.
When using an unbalanced antenna such
as a monopole, a balun should be used in
order to optimise performance. The balun
can be implemented using low-cost
discrete inductors and capacitors only or
in combination with transmission lines.
Figure 3 shows the balun implemented in
a two-layer reference design. It consists of
a half wave transmission line, C81, L61,
L71 and L81. The circuit will present the
optimum RF termination to CC2420 with a
50 Ω load on the antenna connection. This
circuit has improved EVM performance,
sensitivity and harmonic suppression
compared to the design in Figure 4.
Please refer to the input/output matching
section on page 54 for more details.
The balun in Figure 4 consists of C61,
C62, C71, C81, L61, L62 and L81, and will
present the optimum RF termination to
CC2420 with a 50 Ω load on the antenna
connection. A low pass filter may be
added to add margin to the FCC
requirement on second harmonic level.
If a balanced antenna such as a folded
dipole is used, the balun can be omitted. If
the antenna also provides a DC path from
the TXRX_SWITCH pin to the RF pins,
inductors are not needed for DC bias.
Figure 5 shows a suggested application
circuit using a differential antenna. The
antenna type is a standard folded dipole.
The dipole has a virtual ground point;
hence
bias
is
provided
without
degradation in antenna performance.
9.2
Bias resistor
The bias resistor R451 is used to set an
accurate bias current.
9.3
Crystal
An external crystal with two loading
capacitors (C381 and C391) is used for
the crystal oscillator. See page 53 for
details.
9.4
Voltage regulator
The on chip voltage regulator supplies all
1.8 V power supply inputs. C42 is required
for stability of the regulator. A series
resistor may be used to comply with the
ESR requirement.
9.5
Power supply decoupling and
filtering
Proper power supply decoupling must be
used for optimum performance. The
placement and size of the decoupling
capacitors and the power supply filtering
are very important to achieve the best
performance in an application. Texas
Instruments provides a compact reference
design that should be followed very
closely..
SWRS041B
Page 19 of 89
CC2420
Ref
Description
C42
Voltage regulator load capacitance
C61
Balun and match
C62
DC block to antenna and match
C71
Front-end bias decoupling and match
C81
Balun and match
C381
16MHz crystal load capacitor, see page 53
C391
16MHz crystal load capacitor, see page 53
L61
DC bias and match
L62
DC bias and match
L71
DC bias and match
L81
Balun and match
R451
Precision resistor for current reference generator
XTAL
16MHz crystal, see page 53
Table 1. Overview of external components
3.3 V
Power
supply
C391
C381
C42
R451
XOSC16_Q2 38
2 AVDD_VCO
λ/2
C81
L81
λ/2
L71
L61
3
AVDD_PRE
4
AVDD_RF1
5
GND
6
RF_P
7
TXRX_SWITCH
8
RF_N
9
GND
NC 36
DVDD_RAM 35
SO 34
SI 33
CC2420
SCLK 32
Transceiver
FIFO 30
QLP48
RF
7x7
CSn 31
FIFOP 29
CCA 28
10 AVDD_SW
SFD 27
DVDD1.8 26
11 NC
DSUB_CORE 24
DSUB_PADS 23
DGND 22
DGUARD 20
RESETn 21
DGND_GUARD 19
DVDD_ADC 18
NC 16
AVDD_ADC 17
AVDD_IF2 15
NC 13
AVDD_RF2 14
12 NC
Digital Interface
Antenna
(50 Ohm)
AVDD_XOSC16 37
NC 40
XOSC16_Q1 39
VREG_EN 41
VREG_IN 43
VREG_OUT 42
1 VCO_GUARD
AVDD_IF1 44
ATEST2 46
R_BIAS 45
ATEST1 47
AVDD_CHP 48
XTAL
DVDD3.3 25
Figure 3. Typical application circuit with transmission line balun for single-ended
operation
SWRS041B
Page 20 of 89
CC2420
3.3 V
Power
supply
C391
C381
R451
XOSC16_Q2 38
2 AVDD_VCO
C61
C62
C71
L62
L81
C81
L61
NC 36
DVDD_RAM 35
3
AVDD_PRE
SO 34
4
AVDD_RF1
SI 33
5
GND
6
RF_P
CC2420
7
TXRX_SWITCH
8
RF_N
9
GND
SCLK 32
QLP48
RF
7x7
CSn 31
FIFO 30
Transceiver
Digital Interface
Antenna
(50 Ohm)
AVDD_XOSC16 37
XOSC16_Q1 39
XTAL
NC 40
VREG_EN 41
VREG_OUT 42
VREG_IN 43
R_BIAS 45
1 VCO_GUARD
AVDD_IF1 44
ATEST2 46
ATEST1 47
AVDD_CHP 48
C42
FIFOP 29
CCA 28
10 AVDD_SW
SFD 27
11 NC
DVDD1.8 26
DSUB_CORE 24
DGND 22
DSUB_PADS 23
RESETn 21
DGUARD 20
DVDD_ADC 18
DGND_GUARD 19
NC 16
AVDD_ADC 17
AVDD_IF2 15
NC 13
AVDD_RF2 14
12 NC
DVDD3.3 25
Figure 4. Typical application circuit with discrete balun for single-ended operation
SWRS041B
Page 21 of 89
CC2420
3.3 V
Power
supply
C391
C381
R451
L61
L71
AVDD_XOSC16 37
XOSC16_Q2 38
XOSC16_Q1 39
NC 40
VREG_EN 41
VREG_IN 43
XTAL
NC 36
2
AVDD_VCO
DVDD_RAM 35
3
AVDD_PRE
SO 34
4
AVDD_RF1
5
GND
6
RF_P
SI 33
CC2420
7
TXRX_SWITCH
8
RF_N
9
GND
SCLK 32
QLP48
RF
7x7
CSn 31
FIFO 30
Transceiver
Digital Interface
Folded
dipole
antenna
VREG_OUT 42
1 VCO_GUARD
AVDD_IF1 44
R_BIAS 45
ATEST2 46
ATEST1 47
AVDD_CHP 48
C42
FIFOP 29
CCA 28
10 AVDD_SW
SFD 27
11 NC
DVDD1.8 26
DSUB_CORE 24
DGND 22
DSUB_PADS 23
DGUARD 20
RESETn 21
DGND_GUARD 19
DVDD_ADC 18
AVDD_ADC 17
NC 16
AVDD_IF2 15
NC 13
AVDD_RF2 14
12 NC
DVDD3.3 25
Figure 5. Suggested application circuit with differential antenna (folded dipole)
SWRS041B
Page 22 of 89
CC2420
Item
Single
ended
output,
transmission line balun
Single
ended
discrete balun
output,
Differential antenna
C42
10 µF, 0.5Ω < ESR < 5Ω
10 µF, 0.5Ω < ESR < 5Ω
10 µF, 0.5Ω < ESR < 5Ω
C61
Not used
0.5 pF, +/- 0.25pF, NP0, 0402
Not used
C62
Not used
5.6 pF, +/- 0.25pF, NP0, 0402
Not used
C71
Not used
5.6 pF, 10%, X5R, 0402
Not used
C81
5.6 pF, +/- 0.25pF, NP0, 0402
0.5 pF, +/- 0.25pF, NP0, 0402
Not used
C381
27 pF, 5%, NP0, 0402
27 pF, 5%, NP0, 0402
27 pF, 5%, NP0, 0402
C391
27 pF, 5%, NP0, 0402
27 pF, 5%, NP0, 0402
27 pF, 5%, NP0, 0402
L61
8.2 nH, 5%,
Monolithic/multilayer, 0402
7.5 nH, 5%,
Monolithic/multilayer, 0402
27 nH, 5%, Monolithic/multilayer,
0402
L62
Not used
5.6 nH, 5%,
Monolithic/multilayer, 0402
Not used
L71
22 nH, 5%,
Monolithic/multilayer, 0402
Not used
12 nH, 5%, Monolithic/multilayer,
0402
L81
1.8 nH, +/- 0.3nH,
Monolithic/multilayer, 0402
7.5 nH, 5%,
Monolithic/multilayer, 0402
Not used
R451
43 kΩ, 1%, 0402
43 kΩ, 1%, 0402
43 kΩ, 1%, 0402
XTAL
16 MHz crystal, 16 pF load
(CL),
ESR < 60 Ω
16 MHz crystal, 16 pF load
(CL),
ESR < 60 Ω
16 MHz crystal, 16 pF load (CL),
ESR < 60 Ω
Table 2. Bill of materials for the application circuits
SWRS041B
Page 23 of 89
CC2420
10 IEEE 802.15.4 Modulation Format
This section is meant as an introduction to
the 2.4 GHz direct sequence spread
spectrum (DSSS) RF modulation format
defined in IEEE 802.15.4. For a complete
description, please refer to [1].
least significant byte is transmitted first,
except for security related fields where the
most significant byte it transmitted first.
Each symbol is mapped to one out of 16
pseudo-random sequences, 32 chips
each. The symbol to chip mapping is
shown in Table 3. The chip sequence is
then transmitted at 2 MChips/s, with the
least significant chip (C0) transmitted first
for each symbol.
The modulation and spreading functions
are illustrated at block level in Figure 6 [1].
Each byte is divided into two symbols, 4
bits each. The least significant symbol is
transmitted first. For multi-byte fields, the
Transmitted
bit-stream
(LSB first)
Bit-toSymbol
Symbolto-Chip
O-QPSK
Modulator
Modulated
Signal
Figure 6. Modulation and spreading functions [1]
Symbol
Chip sequence (C0, C1, C2, … , C31)
0
11011001110000110101001000101110
1
11101101100111000011010100100010
2
00101110110110011100001101010010
3
00100010111011011001110000110101
4
01010010001011101101100111000011
5
00110101001000101110110110011100
6
11000011010100100010111011011001
7
10011100001101010010001011101101
8
10001100100101100000011101111011
9
10111000110010010110000001110111
10
01111011100011001001011000000111
11
01110111101110001100100101100000
12
00000111011110111000110010010110
13
01100000011101111011100011001001
14
10010110000001110111101110001100
15
11001001011000000111011110111000
Table 3. IEEE 802.15.4 symbol-to-chip mapping [1]
The modulation format is Offset –
Quadrature Phase Shift Keying (O-QPSK)
with half-sine chip shaping. This is
equivalent to MSK modulation. Each chip
is shaped as a half-sine, transmitted
alternately in the I and Q channels with
one half chip period offset. This is
illustrated for the zero-symbol in Figure 7.
SWRS041B
Page 24 of 89
CC2420
TC
I-phase
1
Q-phase
0
1
0
1
1
0
1
1
0
1
1
0
0
0
0
1
0
1
1
0
1
0
0
0
1
0
1
1
0
1
0
2TC
Figure 7. I / Q Phases when transmitting a zero-symbol chip sequence, TC = 0.5 µs
11 Configuration Overview
CC2420 can be configured to achieve the
best
performance
for
different
applications. Through the programmable
configuration registers the following key
parameters can be programmed:
•
•
•
Receive / transmit mode
RF channel selection
RF output power
•
•
•
•
•
SWRS041B
Power-down / power-up mode
Crystal oscillator power-up / power
down
Clear Channel Assessment mode
Packet handling hardware support
Encryption / Authentication modes
Page 25 of 89
CC2420
12 Evaluation Software
Texas Instruments (TI) provides users of
CC2420 with a software program,
SmartRF® Studio (Windows interface)
which may be used for radio performance
and functionality evaluation. SmartRF®
Studio can be downloaded from TI’s web
page: http://www.ti.com. Figure 8 shows
the user interface of the CC2420
configuration software.
Figure 8. SmartRF Studio user interface
SWRS041B
Page 26 of 89
CC2420
13 4-wire Serial Configuration and Data Interface
CC2420 is configured via a simple 4-wire
SPI-compatible interface (pins SI, SO,
SCLK and CSn) where CC2420 is the slave.
This interface is also used to read and
write buffered data (see page 39). All
address and data transfer on the SPI
interface is done most significant bit first.
13.1 Pin configuration
The digital inputs SCLK, SI and CSn are
high-impedance inputs (no internal pullup) and should have external pull-ups if
not driven. SO is high-impedance when
CSn is high. An external pull-up should be
used at SO to prevent floating input at
microcontroller. Unused I/O pins on the
MCU can be set to outputs with a fixed ‘0’
level to avoid leakage currents.
13.2 Register access
There are 33 16-bit configuration and
status registers, 15 command strobe
registers, and two 8-bit registers to access
the separate transmit and receive FIFOs.
Each of the 50 registers is addressed by a
6-bit address. The RAM/Register bit (bit 7)
must be cleared for register access. The
Read/Write bit (bit 6) selects a read or a
write operation and makes up the 8-bit
address field together with the 6-bit
address.
In each register read or write cycle, 24 bits
are sent on the SI-line. The CSn pin (Chip
Select, active low) must be kept low during
this transfer. The bit to be sent first is the
RAM/Register bit (set to 0 for register
access), followed by the R/W bit (0 for
write, 1 for read). The following 6 bits are
the address-bits (A5:0). A5 is the most
significant bit of the address and is sent
first. The 16 data-bits are then transferred
(D15:0), also MSB first. See Figure 9 for
an illustration.
The configuration registers can also be
read by the microcontroller via the same
configuration interface. The R/W bit must
be set high to initiate the data read-back.
CC2420 then returns the data from the
addressed register on the 16 clock cycles
following the register address. The SO pin
is used as the data output and must be
configured as an input by the
microcontroller.
The timing for the programming is also
shown in Figure 9 with reference to Table
4. The clocking of the data on SI into the
CC2420 is done on the positive edge of
SCLK. When the last bit, D0, of the 16
data-bits has been written, the data word
is loaded in the internal configuration
register.
Multiple registers may be written without
releasing CSn, as described in the Multiple
SPI access section on page 31.
The register data will be retained during
power down mode, but not when the
power-supply is turned off (e.g. by
disabling the voltage regulator using the
VREG_EN pin). The registers can be
programmed in any order.
SWRS041B
Page 27 of 89
CC2420
tsp
tch
tcl
thd
tsd
tns
SCLK
CSn
Write to register / RXFIFO:
SI
SO
0
0
A5
A4
A3
A2
A1
A0
S7
S6
S5
S4
S3
S2
S1
S0
X
DW 15 DW 14 DW 13 DW 12 DW11 DW 10
DW9
DW 8
X
DW 7
DW 6
DW 5
DW 4
DW3
DW2
DW1
DW0
X
DW 7
DW 6
DW 5
DW 4
DW3
DW2
DW1
DW0
X
S6
S5
S4
S3
S2
S1
S0
DR6
DR5
DR4
DR3
DR2
DR1
DR0
X
Write to TXFIFO:
SI
SO
0
0
A5
A4
A3
A2
A1
A0
S7
S6
S5
S4
S3
S2
S1
S0
X
DW 7
S7
DW 6
DW5
DW4
DW3
DW2
DW1
DW 0
S6
S5
S4
S3
S2
S1
S0
X
S7
DR9
DR8
DR7
X
X
S7
Read from register / RXFIFO:
SI
0
1
A5
A4
A3
A2
A1
A0
SO
S7
S6
S5
S4
S3
S2
S1
S0
X
DR15
DR14 DR13 DR12 DR11 DR10
DR15
Read and write one byte to RAM: (multiple read / writes also possible)
SI
1
A6
A5
A4
A3
A2
A1
A0
SO
S7
S6
S5
S4
S3
S2
S1
S0
X
B1
B0
0
X
X
X
X
X
DW 6
DW 5
DW 4
DW3
DW2
DW1
DW0
X
DR7
DW 7
DR6
DR5
DR4
DR3
DR2
DR1
DR0
DR7
DR7
DR6
DR5
DR4
DR3
DR2
DR1
DR0
DR7
Read one byte from RAM: (multiple reads also possible)
SI
1
A6
A5
A4
A3
A2
A1
A0
SO
S7
S6
S5
S4
S3
S2
S1
S0
X
B1
B0
1
X
X
X
X
X
X
X
Figure 9. SPI timing diagram
Parameter
Symbol
Min
Max
Units
10
MHz
Conditions
SCLK, clock
frequency
FSCLK
SCLK low
pulse
duration
tcl
25
ns
The minimum time SCLK must be low.
SCLK high
pulse
duration
tch
25
ns
The minimum time SCLK must be high.
CSn setup
time
tsp
25
ns
The minimum time CSn must be low before the first
positive edge of SCLK.
CSn hold time
tns
25
ns
The minimum time CSn must be held low after the
last negative edge of SCLK.
SI setup time
tsd
25
ns
The minimum time data on SI must be ready
before the positive edge of SCLK.
SI hold time
thd
25
ns
The minimum time data must be held at SI, after
the positive edge of SCLK.
Rise time
trise
100
ns
The maximum rise time for SCLK and CSn
Fall time
tfall
100
ns
The maximum fall time for SCLK and CSn
Note: The set-up- and hold-times refer to 50% of VDD.
Table 4. SPI timing specification
13.3 Status byte
During transfer of the register access byte,
command strobes, the first RAM address
byte and data transfer to the TXFIFO, the
CC2420 status byte is returned on the SO
pin. The status byte contains 6 status bits
which are described in Table 5.
Issuing a SNOP (no operation) command
strobe may be used to read the status
byte. It may also be read during access to
chip functions such as register or FIFO
access.
SWRS041B
Page 28 of 89
CC2420
Bit #
Name
Description
7
-
Reserved, ignore value
6
XOSC16M_STABLE
Indicates whether the 16 MHz oscillator is running or not
0 : The 16 MHz crystal oscillator is not running
1 : The 16 MHz crystal oscillator is running
5
TX_UNDERFLOW
Indicates whether an FIFO underflow has occurred during
transmission. Must be cleared manually with a SFLUSHTX
command strobe.
0 : No underflow has occurred
1 : An underflow has occurred
4
ENC_BUSY
Indicates whether the encryption module is busy
0 : Encryption module is idle
1 : Encryption module is busy
3
TX_ACTIVE
Indicates whether RF transmission is active
0 : RF Transmission is idle
1 : RF Transmission is active
2
LOCK
Indicates whether the frequency synthesizer PLL is in lock or not
0 : The PLL is out of lock
1 : The PLL is in lock
1
RSSI_VALID
Indicates whether the RSSI value is valid or not.
0 : The RSSI value is not valid
1 : The RSSI value is valid, always true when reception has been
enabled at least 8 symbol periods (128 us)
0
-
Reserved, ignore value
Table 5. Status byte returned during address transfer and TXFIFO writing
13.4 Command strobes
Command strobes may be viewed as
single byte instructions to CC2420. By
addressing a command strobe register
internal sequences will be started. These
commands must be used to enable the
crystal oscillator, enable receive mode,
start decryption etc. All 15 command
strobes are listed in Table 11 on page 62.
When the crystal oscillator is disabled
(Power Down state in Figure 25 on page
44), only the SXOSCON command strobe
may be used. All other command strobes
will be ignored and will have no effect. The
crystal oscillator must stabilise (see the
XOSC16M_STABLE status bit in Table 5)
before other command strobes are
accepted.
The command strobe register is accessed
in the same way as for a register write
operation, but no data is transferred. That
is, only the RAM/Register bit (set to 0),
R/W bit (set to 0) and the 6 address bits
(in the range 0x00 through 0x0E) are
written. A command strobe may be
followed by any other SPI access without
pulling CSn high, and is executed on the
last falling edge on SCLK.
13.5 RAM access
The internal 368 byte RAM may be
accessed through the SPI interface. Single
or multiple bytes may be read or written
sending the address part (2 bytes) only
once. The address is then automatically
incremented by the CC2420 hardware for
each new byte. Data is read and written
one byte at a time, unlike register access
where 2 bytes are always required after
each address byte.
The crystal oscillator must be running
when accessing the RAM.
The RAM/Register bit must be set high to
enable RAM access. The 9 bit RAM
address consists of two parts, B1:0 (MSB)
selecting one of the three memory banks
and A6:0 (LSB) selecting the address
within the selected bank. The RAM is
SWRS041B
Page 29 of 89
CC2420
divided into three memory banks: TXFIFO
(bank 0), RXFIFO (bank 1) and security
(bank 2). The FIFO banks are 128 bytes
each, while the security bank is 112 bytes.
A6:0 is transmitted directly after the
RAM/Register bit as shown in Figure 9.
For RAM access, a second byte is also
required before the data transfer. This
byte contains B1:0 in bits 7 and 6,
followed by the R/W bit (0 for read+write, 1
for read). Bits 4 through 0 are don’t care
as shown in Figure 9.
For RAM write, data to be written must be
input on the SI pin directly after the
second address byte. RAM data read is
output on the SO pin simultaneously, but
may be ignored by the user if only writing
is of interest.
For RAM read, the selected byte(s) are
output on the SO pin directly after the
second address byte.
See Figure 10 for an illustration on how
multiple RAM bytes may be read or written
in one operation.
The RAM memory space is shown in
Table 6. The lower 256 bytes are used to
store FIFO data. Note that RAM access
should never be used for FIFO write
operations because the FIFO counter will
not be updated. Use RXFIFO and TXFIFO
access instead as described in section
FIFO access.
As with register data, data stored in RAM
will be retained during power down mode,
but not when the power-supply is turned
off (e.g. by disabling the voltage regulator
using the VREG_EN pin).
CSn:
Command strobe:
ADDR
Multiple command strobes:
ADDR
ADDR
ADDR
Read or write a whole register (16 bit):
ADDR
DATA8MSB
DATA8LSB
Read 8 MSB of a register:
ADDR
DATA8MSB
Multiple register read or write
ADDR
DATA8MSB
DATA8LSB
ADDR
DATA8MSB
...
ADDRFIFO
DATAbyte0
DATAbyte1
DATAbyte2
DATAbyte3
...
DATAbyte n-3 DATAbyte n-2 DATAbyte n-1
ADDRLRAM ADDRHRAM DATAADDR DATAADDR+1 DATAADDR+2 ...
DATAADDR+n
Read or write n bytes from/to RF FIFO:
Read or write n bytes from/to RAM:
Note:
...
...
ADDR
ADDR
ADDR
DATA8MSB
DATA8LSB
FIFO and RAM access must be terminated with setting the CSn pin high.
Command strobes and register access may be followed by any other access,
since they are completed on the last negative edge on SCLK. They may however also be
terminated with setting CSn high, if desirable, e.g. for reading only 8 bits from a configuration
register.
Figure 10. Configuration registers write and read operations via SPI
SWRS041B
Page 30 of 89
CC2420
Address
Byte Ordering
Name
Description
0x16F –
0x16C
-
-
Not used
0x16B –
0x16A
MSB
LSB
SHORTADR
16-bit Short address, used for address recognition.
0x169 –
0x168
MSB
LSB
PANID
16-bit PAN identifier, used for address recognition.
0x167 –
0x160
MSB
LSB
IEEEADR
64-bit IEEE address of current node, used for address
recognition.
0x15F –
0x150
MSB
LSB
CBCSTATE
Temporary storage for CBC-MAC calculations
0x14F –
0x140
MSB (Flags)
LSB
TXNONCE / TXCTR
Transmitter nonce for in-line authentication and
transmitter counter for in-line encryption.
0x13F –
0x130
MSB
LSB
KEY1
Encryption key 1
0x12F –
0x120
MSB
LSB
SABUF
Stand-alone encryption buffer, for plaintext input and
ciphertext output
0x11F –
0x110
MSB (Flags)
LSB
RXNONCE / RXCTR
Receiver nonce for in-line authentication or
receiver counter for in-line decryption.
0x10F –
0x100
MSB
LSB
KEY0
Encryption key 0
0x0FF –
0x080
MSB
LSB
RXFIFO
128 bytes receive FIFO
0x07F –
0x000
MSB
LSB
TXFIFO
128 bytes transmit FIFO
Table 6. CC2420 RAM Memory Space
setting the CSn pin high once it has been
started.
13.6 FIFO access
The TXFIFO and RXFIFO may be
accessed through the TXFIFO (0x3E) and
RXFIFO (0x3F) registers.
The TXFIFO is write only, but may be read
back using RAM access as described in
the previous section. Data is read and
written one byte at a time, as with RAM
access. The RXFIFO is both writeable and
readable. Writing to the RXFIFO should
however only be done for debugging or for
using the RXFIFO for security operations
(decryption / authentication).
The crystal oscillator must be running
when accessing the FIFOs.
When writing to the TXFIFO, the status
byte (see Table 5) is output for each new
data byte on SO, as shown in Figure 9.
This could be used to detect TXFIFO
underflow (see section RF Data Buffering
section on page 39) while writing data to
the TXFIFO.
Multiple FIFO bytes may be accessed in
one operation, as with the RAM access.
FIFO access can only be terminated by
The FIFO and FIFOP pins also provide
additional information on the data in the
receive FIFO, as will be described in the
Microcontroller
Interface
and
Pin
Description section on page 32. Note that
the FIFO and FIFOP pins only apply to
the RXFIFO. The TXFIFO has its
underflow flag in the status byte.
The TXFIFO may be flushed by issuing a
SFLUSHTX command strobe. Similarly, a
SFLUSHRX command strobe will flush the
receive FIFO.
13.7 Multiple SPI access
Register access, command strobes, FIFO
access and RAM access may be issued
continuously without setting CSn high.
E.g. the user may issue a command
strobe, a register write and writing 3 bytes
to the TXFIFO in one operation, as
illustrated in Figure 11. The only exception
is that FIFO and RAM access must be
terminated by setting CSn high.
SWRS041B
Page 31 of 89
CC2420
CSn
SI
ADDR
ADDR
-
-
SO
Status
Status
DATA8MSB
DATA8LSB
Command
Strobe
ADDRTXFIFO DATAADDR DATAADDR+1 DATAADDR+2
Status
Status
Register
Read
Status
Status
TXFIFO
Write
Figure 11. Multiple SPI Access Example
14 Microcontroller Interface and Pin Description
When used in a typical system, CC2420 will
interface to a microcontroller. This
microcontroller must be able to:
• Program CC2420 into different modes,
read and write buffered data, and read
back status information via the 4-wire
SPI-bus configuration interface (SI, SO,
SCLK and CSn).
• Interface to the receive and transmit
FIFOs using the FIFO and FIFOP
status pins.
• Interface to the CCA pin for clear
channel assessment.
• Interface to the SFD pin for timing
information (particularly for beaconing
networks).
configuration interface (SI, SO, SCLK and
CSn). SO should be connected to an input
at the microcontroller. SI, SCLK and CSn
must
be
microcontroller
outputs.
Preferably the microcontroller should have
a hardware SPI interface.
The microcontroller pins connected to SI,
SO and SCLK can be shared with other
SPI-interface devices. SO is a high
impedance output as long as CSn is not
activated (active low).
CSn should have an external pull-up
resistor or be set to a high level when the
voltage regulator is turned off in order to
prevent the input from floating. SI and
SCLK should be set to a defined level to
prevent the inputs from floating.
14.1 Configuration interface
A CC2420 to microcontroller interface
example is shown in Figure 12. The
microcontroller uses 4 I/O pins for the SPI
µC
CC2420
FIFO
GIO0
FIFOP
Interrupt
CCA
GIO1
SFD
Timer Capture
CSn
SI
SO
SCLK
GIO2
MOSI
MISO
SCLK
Figure 12. Microcontroller interface example
SWRS041B
Page 32 of 89
CC2420
14.2 Receive mode
In receive mode, the SFD pin goes active
after the start of frame delimiter (SFD)
field has been completely received. If
address recognition is disabled or is
successful, the SFD pin goes inactive
again only after the last byte of the MPDU
has been received. If the received frame
fails address recognition, the SFD pin goes
inactive immediately. This is illustrated in
Figure 13.
The FIFO pin is active when there are one
or more data bytes in the RXFIFO. The
first byte to be stored in the RXFIFO is the
length field of the received frame, i.e. the
FIFO pin goes active when the length field
is written to the RXFIFO. The FIFO pin
then remains active until the RXFIFO is
empty.
If a previously received frame is
completely or partially inside the RXFIFO,
the FIFO pin will remain active until the
RXFIFO is empty.
The FIFOP pin is active when the number
of unread bytes in the RXFIFO exceeds
the
threshold
programmed
into
IOCFG0.FIFOP_THR. When address
recognition is enabled the FIFOP pin will
remain inactive until the incoming frame
passes address recognition, even if the
number of bytes in the RXFIFO exceeds
the programmed threshold.
The FIFOP pin will also go active when
the last byte of a new packet is received,
even if the threshold is not exceeded. If
so, the FIFOP pin will go inactive once
one byte has been read out of the
RXFIFO.
When address recognition is enabled,
data should not be read out of the RXFIFO
before the address is completely received,
since the frame may be automatically
flushed by CC2420 if it fails address
recognition. This may be handled by using
the FIFOP pin, since this pin does not go
active until the frame passes address
recognition.
Figure 14 shows an example of pin activity
when reading a packet from the RXFIFO.
In this example, the packet size is 8 bytes,
IOCFG0.FIFOP_THR
=
3
and
MODEMCTRL0.AUTOCRC is set. The length
will be 8 bytes, RSSI will contain the
average RSSI level during reception of the
packet and FCS/corr contains information
of FCS check result and the correlation
levels.
14.3 RXFIFO overflow
The RXFIFO can only contain a maximum
of 128 bytes at a given time. This may be
divided between multiple frames, as long
as the total number of bytes is 128 or less.
If an overflow occurs in the RXFIFO, this
is signalled to the microcontroller by
making the FIFO pin go inactive while the
FIFOP pin is active. Data already in the
RXFIFO will not be affected by the
overflow, i.e. frames already received may
be read out.
A SFLUSHRX command strobe is required
after an RXFIFO overflow to enable
reception of new data. Note that the
SFLUSHRX command strobe should be
issued twice to ensure that the SFD pin
goes back to its inactive state.
For security enabled frames, the MAC
layer must read the source address of the
received frame before it can decide which
key to use to decrypt or authenticate. This
data must therefore not be overwritten
even if it has been read out of the RXFIFO
by
the
microcontroller.
If
the
SECCTRL0.RXFIFO_PROTECTION control
bit is set, CC2420 also protects the frame
header of security enabled frames until
decryption has been performed. If no MAC
security is used or if it is implemented
outside the CC2420, this bit may be cleared
to achieve optimal use of the RXFIFO.
SWRS041B
Page 33 of 89
CC2420
c
re
ed
te
ct
by
te
e
h
t
d
D
ng
Le
SF
Data received over RF
Address
recognition OK
d
ve
ei
g
co
re
ss ted
e
dr le
Ad omp
c
ti
ni
on
U d
PD eive
t M rec
s
La yte
b
Preamble
SFD Length
MAC Protocol Data Unit (MPDU) with correct address
Preamble
SFD Length
MAC Protocol Data Unit (MPDU) with wrong address
SFD Pin
FIFO Pin
FIFOP Pin, if threshold
higher than frame length
FIFOP Pin, if threshold
lower than frame length
Data received over RF
Address
recognition fails
SFD Pin
FIFO Pin
FIFOP Pin
Figure 13. Pin activity examples during receive
n
he
w te
y
w
l o st b
es la
go t of
FO ou
FI ad s
re tart
s
gh f
hi r o
ns be HR
i
a
m um _T
re n P
P as IFO
FO ng F
FI s lo s >
a yte
b
SCLK
SFD
CSn
SI
ADDRTXFIFO
-
-
-
-
-
-
-
-
-
SO
Status
Length
PSDU0
PSDU1
PSDU2
PSDU3
PSDU4
PSDU5
RSSI
FCS/Corr
FIFOP
FIFO
Figure 14. Example of pin activity when reading RXFIFO.
14.4 Transmit mode
During transmit the FIFO and FIFOP pins
are still only related to the RXFIFO. The
SFD pin is however active during
transmission of a data frame, as shown in
Figure 15.
The SFD pin goes active when the SFD
field has been completely transmitted. It
goes inactive again when the complete
MPDU (as defined by the length field) has
been transmitted or if an underflow is
detected. See the RF Data Buffering
section on page 39 for more information
on TXFIFO underflow.
As can be seen from comparing Figure 13
and Figure 15, the SFD pin behaves very
similarly during reception and transmission
of a data frame. If the SFD pins of the
transmitter and the receiver are compared
during the transmission of a data frame, a
small delay of approximately 2 µs can be
seen because of bandwidth limitations in
both the transmitter and the receiver.
SWRS041B
Page 34 of 89
CC2420
m
m
co
d
an
N
XO e
ST trob
s
Data transmitted
over RF
SF
Preamble
SFD
D
tra
d
U itte
PD sm w
o
M
n
l
f
st tra er
La yte nd
b Xu
T
ed
itt
m
ns
Length
MAC Protocol Data Unit (MPDU)
SFD Pin
12 symbol periods
Automatically generated
preamble and SFD
Data fetched
from TXFIFO
CRC generated
by CC2420
Figure 15. Pin activity example during transmit
14.5 General control and status pins
In receive mode, the FIFOP pin can be
used to interrupt the microcontroller when
a threshold has been exceeded or a
complete frame has been received. This
pin should then be connected to a
microcontroller interrupt pin.
In receive mode, the FIFO pin can be
used to detect if there is data at all in the
receive FIFO.
The SFD pin can be used to extract the
timing information of transmitted and
received data frames. The SFD pin will go
active when a start of frame delimiter has
been completely detected / transmitted.
The SFD pin should preferably be
connected to a timer capture pin on the
microcontroller.
For debug purposes, the SFD and CCA
pins can be used to monitor several status
signals as selected by the IOCFG1
register. See Table 12 and Table 13 for
available signals.
The polarity of FIFO, FIFOP, SFD and CCA
can be controlled by the IOCFG0 register
(address 0x1C).
15 Demodulator, Symbol Synchroniser and Data Decision
The block diagram for the CC2420
demodulator is shown in Figure 16.
Channel filtering and frequency offset
compensation is performed digitally. The
signal level in the channel is estimated to
generate the RSSI level (see the RSSI /
Energy Detection section on page 48 for
more information). Data filtering is also
included for enhanced performance.
With the ±40 ppm frequency accuracy
requirement from [1], a compliant receiver
must be able to compensate for up to 80
ppm or 200 kHz. The CC2420 demodulator
tolerates up to 300 kHz offset without
significant degradation of the receiver
performance.
Soft decision is used at the chip level, i.e.
the demodulator does not make a decision
for each chip, only for each received
symbol. De-spreading is performed using
over sampled symbol correlators. Symbol
synchronisation is achieved by a
continuous start of frame delimiter (SFD)
search.
When a SFD is detected, data is written to
the RXFIFO and may be read out by the
microcontroller at a lower bit rate than the
250 kbps generated by the receiver.
The CC2420 demodulator also handles
symbol rate errors in excess of 120 ppm
without
performance
degradation.
Resynchronisation
is
performed
continuously to adjust for error in the
incoming symbol rate.
The RXCTRL1.RXBPF_LOCUR control bit
should be written to 1.
The MDMCTRL1.CORR_THR control bits
are by default set to 20 defining the
threshold for detecting IEEE 802.15.4 start
of frame delimiters.
SWRS041B
Page 35 of 89
or
CC2420
I / Q Analog
IF signal
Digital
IF Channel
Filtering
ADC
Frequency
Offset
Compensation
RSSI
Generator
Digital
Data
Filtering
Symbol
Correlators and
Synchronisation
Data
Symbol
Output
Average
Correlation
Value (may be
used for LQI)
RSSI
Figure 16. Demodulator Simplified Block Diagram
16 Frame Format
CC2420 has hardware support for parts of
the IEEE 802.15.4 frame format. This
section gives a brief summary to the IEEE
802.15.4 frame format, and describes how
CC2420 is set up to comply with this.
Figure 17 [1] shows a schematic view of
the IEEE 802.15.4 frame format. Similar
figures describing specific frame formats
(data
frames,
beacon
frames,
acknowledgment frames and MAC
command frames) are included in [1].
1
0 to 20
2
Frame
Data
Address
Control Field
Sequence
Information
(FCF)
Number
MAC Header (MHR)
n
Bytes:
MAC
Layer
Bytes:
PHY
Layer
1
1
Start of frame
Frame
Delimiter
Length
(SFD)
Synchronisation Header
PHY Header
(SHR)
(PHR)
Frame payload
MAC Payload
2
Frame Check
Sequence
(FCS)
MAC Footer
(MFR)
5 + (0 to 20) + n
MAC Protocol
Data Unit
(MPDU)
PHY Service Data Unit
(PSDU)
4
Preamble
Sequence
11 + (0 to 20) + n
PHY Protocol Data Unit
(PPDU)
Figure 17. Schematic view of the IEEE 802.15.4 Frame Format [1]
16.1 Synchronisation header
The synchronisation header (SHR)
consists of the preamble sequence
followed by the start of frame delimiter
(SFD). In [1], the preamble sequence is
defined to be 4 bytes of 0x00. The SFD is
one byte, set to 0xA7.
In CC2420, the preamble length and SFD is
configurable. The default values are
compliant with [1]. Changing these values
will make the system non-compliant to
IEEE 802.15.4.
A synchronisation header is always
transmitted first in all transmit modes.
The preamble sequence length can be set
by MDMCTRL0.PREAMBLE_LENGTH, while
the SFD is programmed in the SYNCWORD
register. SYNCWORD is 2 bytes long, which
gives the user some extra flexibility as
described below. Figure 18 shows how the
CC2420 synchronisation header relates to
the IEEE 802.15.4 specification.
The programmable preamble length only
applies to transmission, it does not affect
receive mode. The preamble length
should not be set shorter than the default
value. Note that 2 of the 8 zero-symbols in
the preamble sequence required by [1] are
included in the SYNCWORD register so that
the CC2420 preamble sequence is only 6
symbols long for compliance with [1]. Two
SWRS041B
Page 36 of 89
CC2420
additional zero symbols in SYNCWORD
make CC2420 compliant with [1].
right) 0 7 A. If SYNCWORD = 0xA70F,
CC2420 will require the incoming symbol
sequence of (from left to right) 0 0 7 A. If
SYNCWORD = 0xA700, CC2420 will require
the incoming symbol sequence of (from
left to right) 0 0 0 7 A.
In reception, CC2420 synchronises to
received zero-symbols and searches for
the SFD sequence defined by the
SYNCWORD register. The least significant
symbols in SYNCWORD set to 0xF will be
ignored, while symbols different from 0xF
will be required for synchronisation. The
default setting of 0xA70F thereby requires
one
additional
zero-symbol
for
synchronisation. This will reduce the
number of false frames detected due to
noise.
In receive mode CC2420 uses the
preamble
sequence
for
symbol
synchronisation and frequency offset
adjustments. The SFD is used for byte
synchronisation, and is not part of the data
stored in the receive buffer (RXFIFO).
The following illustrates how the
programmed synch word is interpreted
during reception by CC2420: If SYNCWORD
= 0xA7FF, CC2420 will require the
incoming symbol sequence of (from left to
Synchronisation Header
Preamble
IEEE 802.15.4
CC2420
0
0
0
0
SFD
0
0
2·(PREAMBLE_LENGTH + 1) zero symbols
0
0
7
A
SW0
SW1
SW2
SW3
Each box corresponds to 4 bits. Hence the preamble corresponds to 8 x 4 ''0' s or 4 bytes with the value 0.
SW0 = SYNCWORD[3:0]
if different from 'F', else '0'
SW1 = SYNCWORD[7:4]
if different from 'F', else '0'
SW2 = SYNCWORD[11:8] if different from 'F', else '0'
SW3 = SYNCWORD[15:12] if different from 'F', else '0'
Figure 18. Transmitted Synchronisation Header
16.2 Length field
The frame length field shown in Figure 17
defines the number of bytes in the MPDU.
Note that the length field does not include
the length field itself. It does however
include
the
FCS
(Frame
Check
Sequence), even if this is inserted
automatically by CC2420 hardware. It also
includes the MIC if authentication is used.
The length field is 7 bits and has a
maximum value of 127. The most
significant bit in the length field is reserved
[1], and should be set to zero.
must always be included. In transmit
mode, the length field is used for
underflow detection, as described in the
FIFO access section on page 31.
16.3 MAC protocol data unit
The FCF, data sequence number and
address information follows the length field
as shown in Figure 17. Together with the
MAC data payload and Frame Check
Sequence, they form the MAC Protocol
Data Unit (MPDU).
The format of the FCF is shown in Figure
19. Please refer to [1] for details.
CC2420 uses the length field both for
transmission and reception, so this field
SWRS041B
Page 37 of 89
CC2420
CC2420
There is no hardware support for the data
sequence number, this field must be
inserted and verified by software.
includes hardware address
recognition, as described in the Address
Recognition section on page 41.
Bits: 0-2
3
4
5
6
7-9
10-11
12-13
14-15
Frame
Type
Security
Enabled
Frame
Pending
Acknowledge
request
Intra
PAN
Reserved
Destination
addressing
mode
Reserved
Source
addressing
mode
Figure 19. Format of the Frame Control Field (FCF) [1]
interested in the correctness of the FCS,
not the FCS sequence itself. The FCS
sequence itself is therefore not written to
the RXFIFO during receive.
16.4 Frame check sequence
A 2-byte frame check sequence (FCS)
follows the last MAC payload byte as
shown in Figure 17. The FCS is calculated
over the MPDU, i.e. the length field is not
part of the FCS. This field is automatically
generated and verified by hardware when
the MODEMCTRL0.AUTOCRC control bit is
set. It is recommended to always have this
enabled, except possibly for debug
purposes. If cleared, CRC generation and
verification must be performed by
software.
Instead, when MODEMCTRL0.AUTOCRC is
set the two FCS bytes are replaced by the
RSSI value, average correlation value
(used for LQI) and CRC OK/not OK. This
is illustrated in Figure 21.
The first FCS byte is replaced by the 8-bit
RSSI value. This RSSI value is measured
over the first 8 symbols following the SFD.
See the RSSI section on page 48 for
details.
The FCS polynomial is [1]:
x16 + x12 + x5 + 1
The 7 least significant bits in the last FCS
byte are replaced by the average
correlation value of the 8 first symbols of
the received PHY header (length field) and
PHY Service Data Unit (PSDU). This
correlation value may be used as a basis
for calculating the LQI. See the Link
Quality Indication section on page 49 for
details.
The CC2420 hardware implementation is
shown in Figure 20. Please refer to [1] for
further details.
In transmit mode the FCS is appended at
the correct position defined by the length
field. The FCS is not written to the
TXFIFO, but stored in a separate 16-bit
register.
The most significant bit in the last byte of
each frame is set high if the CRC of the
received frame is correct and low
otherwise.
In receive mode the FCS is verified by
hardware. The user is normally only
Data
input
(LSB
first)
r0
r1
r2
r3
r4
r5
r6
r7
r8
r9
r10
r11
r12
r13
r14
r15
Figure 20. CC2420 Frame Check Sequence (FCS) hardware implementation [1]
SWRS041B
Page 38 of 89
CC2420
Length byte
Data in RXFIFO
n
MPDU
MPDU1
MPDU2
MPDUn-2
Bit number
RSSI
(signed)
CRC / Corr
7
6
5
4
3
2
1
0
CRC
Correlation value (unsigned)
OK
Figure 21. Data in RXFIFO when MDMCTRL0.AUTOCRC is set
17 RF Data Buffering
CC2420 can be configured for different
transmit and receive modes, as set in the
MDMCTRL1.TX_MODE
and
MDMCTRL1.RX_MODE
control
bits.
Buffered mode (mode 0) will be used for
normal operation of CC2420, while other
modes are available for test purposes.
17.1 Buffered transmit mode
A TXFIFO underflow is issued if too few
bytes are written to the TXFIFO.
Transmission is then automatically
stopped. The underflow is indicated in the
TX_UNDERFLOW status bit, which is
returned during each address byte and
each byte written to the TXFIFO. The
underflow bit is only cleared by issuing a
SFLUSHTX command strobe.
In buffered transmit mode (TX_MODE 0),
the 128 byte TXFIFO, located in CC2420
RAM, is used to buffer data before
transmission. A preamble sequence
(defined in the Frame Format section
below) is automatically inserted before the
length field during transmission. The
length field must always be the first byte
written to the transmit buffer for all frames.
The TXFIFO can only contain one data
frame at a given time.
Writing one or multiple bytes to the
TXFIFO is described in the FIFO access
section on page 31. Reading data from the
TXFIFO is possible with RAM access, but
this does not remove the byte from the
FIFO.
Writing to the TXFIFO after a frame has
been transmitted will cause the TXFIFO to
be automatically flushed before the new
byte is written. The only exception is if a
TXFIFO underflow has occurred, then a
SFLUSHTX command strobe is required.
Transmission is enabled by issuing a
STXON or STXONCCA command strobe.
See the Radio control state machine
section on page 43 for an illustration of
how the transmit command strobes affect
the state of CC2420. The STXONCCA strobe
is ignored if the channel is busy. See the
Clear Channel Assessment section on
page 50 for details on CCA.
The preamble sequence is started 12
symbol periods after the command strobe.
After the programmable start of frame
delimiter has been transmitted, data is
fetched from the TXFIFO.
After complete transmission of a data
frame, the TXFIFO is automatically refilled
with the last transmitted frame. Issuing a
new STXON or STXONCCA command
strobe will then cause CC2420 to retransmit
the last frame.
17.2 Buffered receive mode
In buffered receive mode (RX_MODE 0),
the 128 byte RXFIFO, located in CC2420
RAM, is used to buffer data received by
the demodulator. Accessing data in the
RXFIFO is described in the FIFO access
section on page 31.
The FIFO and FIFOP pins are used to
assist the microcontroller in supervising
the RXFIFO. Please note that the FIFO
and FIFOP pins are only related to the
RXFIFO, even if CC2420 is in transmit
mode.
SWRS041B
Page 39 of 89
CC2420
Multiple data frames may be in the
RXFIFO simultaneously, as long as the
total number of bytes does not exceed
128.
See the RXFIFO overflow section on page
33 for details on how a RXFIFO overflow
is detected and signalled.
17.3 Unbuffered, serial mode
Unbuffered mode should be used for
evaluation / debugging purposes only.
Buffered mode is recommended for all
applications.
In unbuffered mode, the FIFO and FIFOP
pins are reconfigured as data and data
clock pins. The TXFIFO and RXFIFO
buffers are not used in this mode. A
synchronous data clock is provided by
CC2420 at the FIFOP pin, and the FIFO
pin is used as data input/output. The
FIFOP clock frequency is 250 kHz when
active. This is illustrated in Figure 22.
Incoming / outgoing
RF data
Transmit mode:
Preamble
In
serial
transmit
mode
(MDMCTRL1.TX_MODE=1),
a
synchronisation sequence is inserted at
the start of each frame by hardware, as in
buffered mode. Data is sampled by CC2420
on the positive edge of FIFOP and should
be updated by the microcontroller on the
negative edge of FIFOP. See Figure 22 for
an illustration of the timing in serial
transmit mode. The SFD and CCA pins
retain their normal operation also in serial
mode. CC2420 will remain in serial transmit
mode until transmission is turned off
manually.
In
serial
receive
mode
(MDMCTRL1.RX_MODE=1)
byte
synchronisation is still performed by
CC2420. This means that the FIFOP clock
pin will remain inactive until a start of
frame delimiter has been detected.
SFD
s0
s1
s2
4 us
FIFOP
FIFO (from uC)
b0
b1
b2
b3
b4
b5
b6
b7
b8
b9
b10 b11 b8
b9
b10 b11
b0
b1
Receive mode:
FIFOP
FIFO (from CC2420)
b2
b3
Figure 22. Unbuffered test mode, pin activity
SWRS041B
Page 40 of 89
b4
CC2420
18 Address Recognition
CC2420 includes hardware support for
address recognition, as specified in [1].
Hardware address recognition may be
enabled
/
disabled
using
the
MDMCTRL0.ADR_DECODE control bit.
Address recognition is based on the
following requirements, listed from section
7.5.6.2 in [1]:
•
The frame type subfield shall not
contain an illegal frame type
•
If the frame type indicates that the
frame is a beacon frame, the
source PAN identifier shall match
macPANId unless macPANId is
equal to 0xFFFF, in which case
the beacon frame shall be
accepted regardless of the source
PAN identifier.
•
If a destination PAN identifier is
included in the frame, it shall
match macPANId or shall be the
broadcast
PAN
identifier
(0xFFFF).
•
If a short destination address is
included in the frame, it shall
match either macShortAddress or
the broadcast address (0xFFFF).
Otherwise
if
an
extended
destination address is included in
the frame, it shall match
aExtendedAddress.
•
If only source addressing fields
are included in a data or MAC
command frame, the frame shall
only be accepted if the device is a
PAN coordinator and the source
PAN
identifier
macPANId.
matches
If any of the above requirements are not
satisfied and address recognition is
enabled, CC2420 will disregard the
incoming frame and flush the data from
the RXFIFO. Only data from the rejected
frame is flushed, data from previously
accepted frames may still be in the
RXFIFO.
The IOCFG0.BCN_ACCEPT control bit
must be set when the PAN identifier
programmed into CC2420 RAM is equal to
0xFFFF and cleared otherwise. This
particularly applies to active and passive
scans as defined by [1], which requires all
received beacons to be processed by the
MAC sublayer.
Incoming frames with reserved frame
types (FCF frame type subfield is 4, 5, 6 or
7)
is
however
accepted
if
the
RESERVED_FRAME_MODE control bit in
MDMCTRL0 is set. In this case, no further
address recognition is performed on these
frames. This option is included for future
expansions of the IEEE 802.15.4
standard.
If a frame is rejected, CC2420 will only start
searching for a new frame after the
rejected frame has been completely
received (as defined by the length field) to
avoid detecting false SFDs within the
frame.
The
MDMCTRL0.PAN_COORDINATOR
control bit must be correctly set, since
parts of the address recognition procedure
requires knowledge about whether the
current device is a PAN coordinator or not.
19 Acknowledge Frames
CC2420 includes hardware support for
transmitting acknowledge frames, as
specified in [1]. Figure 23 shows the
format of the acknowledge frame.
If MDMCTRL0.AUTOACK is enabled, an
acknowledge frame is transmitted for all
incoming frames accepted by the address
recognition with the acknowledge request
flag set and a valid CRC. AUTOACK
therefore does not make sense unless
also ADR_DECODE and AUTOCRC are
enabled. The sequence number is copied
from the incoming frame.
SWRS041B
Page 41 of 89
CC2420
AUTOACK may be used for non-beacon
systems as long as the frame pending
field (see Figure 19) is cleared. The
acknowledge frame is then transmitted 12
Bytes:
symbol periods after the last symbol of the
incoming frame. This is as specified by [1]
for non-beacon networks.
1
1
Start of Frame
Preamble
Frame
Delimiter
Sequence
Length
(SFD)
Synchronisation Header
PHY Header
(SHR)
(PHR)
1
2
Frame
Data
Control Field
Sequence
(FCF)
Number
MAC Header (MHR)
4
2
Frame Check
Sequence
(FCS)
MAC Footer
(MFR)
Figure 23. Acknowledge frame format [1]
Two command strobes, SACK and
SACKPEND are defined to transmit
acknowledge frames with the frame
pending field cleared or set, respectively.
The
acknowledge
frame
is
only
transmitted if the CRC is valid.
For systems using beacons, there is an
additional timing requirement that the
acknowledge frame transmission should
be started on the first backoff-slot
boundary (20 symbol periods) at least 12
symbol periods after the last symbol of the
incoming frame. This timing must be
controlled by the microcontroller by issuing
the SACK and SACKPEND command strobe
12 symbol periods before the following
backoff-slot boundary, as illustrated in
Figure 24.
If a SACK or SACKPEND command strobe
is issued while receiving an incoming
frame, the acknowledge frame is
transmitted 12 symbol periods after the
last symbol of the incoming frame. This
should be used to transmit acknowledge
frames in non-beacon networks. This
timing is also illustrated in Figure 24.
Using SACKPEND will set the pending data
flag
for
automatically
transmitted
acknowledge frames using AUTOACK. The
pending flag will then be set also for future
acknowledge frames, until a SACK
command strobe is issued.
Acknowledge frames may be manually
transmitted
using
normal
data
transmission if desired.
ry
D
l
da
n
bo PEN
u
m
K
bo
sy AC
ot
U
S
l
D
fs
/
of
PP K
k
t
c
C
s
La
Ba
SA
Beacon
network
PPDU
12
symbol
periods
12 symbol periods <=
Non-beacon
network
tack
PPDU
Acknowledge
< 32 symbol periods
Acknowledge
tack
= 12 symbol periods
Figure 24. Acknowledge frame timing
SWRS041B
Page 42 of 89
CC2420
20 Radio control state machine
CC2420 has a built-in state machine that is
used to switch between different
operational states (modes). The change of
state is done either by using command
strobes or by internal events such as SFD
detected in receive mode.
The radio control state machine states are
shown in Figure 25. The numbers in
brackets refer to the state number
readable in the FSMSTATE status register.
Reading the FSMSTATE status register is
primarily for test / debug purposes.
Before using the radio in either RX or TX
mode, the voltage regulator and crystal
oscillator must be turned on and become
stable. The voltage regulator and crystal
oscillator start-up times are given in the
Electrical Specifications section on page
9.
The crystal oscillator is controlled by
accessing the SXOSCON / SXOSCOFF
command strobes. The XOSC16M_STABLE
bit in the status register returned during
address transfer indicates whether the
oscillator is running and stable or not (see
Table 5). This status register can be polled
when waiting for the oscillator to start.
For test purposes, the frequency
synthesizer (FS) can also be manually
calibrated and started by using the
STXCAL command strobe register. This
will not start a transmission before a
STXON command strobe is issued. This is
not shown in Figure 25.
Enabling transmission is done by issuing a
STXON or STXONCCA command strobe.
Turning off RF can be accomplished by
using one of the SRFOFF or SXOSCOFF
command strobe registers.
After reset the CC2420 is in Power Down
mode. All configuration registers can then
be programmed in order to make the chip
ready to operate at the correct frequency
and mode. Due to the very fast start-up
time, CC2420 can remain in Power Down
until a transmission session is requested.
As also described in the 4-wire Serial
Configuration and Data Interface section
on page 27, the crystal oscillator must be
running (IDLE) in order to have access to
the RAM and FIFOs.
SWRS041B
Page 43 of 89
CC2420
Voltage Regulator Off
VREG_EN set low
VREG_EN set high
Wait until voltage regulator
has powered up
Chip Reset
(pin or register)
SXOSCOFF
command strobe
All States
Crystal oscillator disabled,
register access enabled,
FIFO / RAM access disabled
Power Down (PD)
[0]
SXOSCON
Wait for the specified crystal oscillator
start-up time, or poll the
XOSC16M_STABLE status bit
SRFOFF
IDLE
[1]
N
XO
ST
RX_CALIBRATE
[2 and 40]
Ov
RX_OVERFLOW
[17]
lo
erf
w
SFD
found
RX_FRAME
[16 and 40]
Automatic or manual
acknowledge request
TX_ACK_CALIBRATE
[48]
TX_PREAMBLE
[34, 35 and 36]
Preamble and SFD
is transmitted
ed
Frame received or
failed address
recognition
SACK or SACKPEND
RX_WAIT
[14]
RX_SFD_SEARCH
[3, 4, 5 and 6]
8 or 12 symbol
periods later
let
mp
co
ion
HRX
SFLUS
TX_CALIBRATE
[32]
iss
sm
an
Tr
12 symbol periods
later
(S ST
TX XO
ON N
CC CCA or
A) a
nd
All RX states
SR
XO
N
All States
except Power Down (PD)
TX_FRAME
[37, 38 and 39]
TXFIFO Data
is transmitted
Underflow
TX_UNDERFLOW
[56]
The transition from
TX_UNDERFLOW to
RX_CALIBRATE is automatic,
but SFLUSHTX must be used to
reset underflow indication
12 symbol
periods later
TX_ACK_PREAMBLE
[49, 50 and 51]
Acknowledge
completed
TX_ACK
[52, 53 and 54]
Figure 25. Radio control states
SWRS041B
Page 44 of 89
CC2420
21 MAC Security Operations (Encryption and Authentication)
CC2420 features hardware IEEE 802.15.4
MAC security operations. This includes
counter mode (CTR) encryption /
decryption, CBC-MAC authentication and
CCM encryption + authentication. All
security operations are based on AES
encryption [2] using 128 bit keys. Security
operations are performed within the
transmit and receive FIFOs on a frame
basis.
CC2420 also includes stand-alone AES
encryption, in which one 128 bit plaintext
is encrypted to a 128 bit ciphertext.
The SAES, STXENC and SRXDEC
command strobes are used to start
security operations in CC2420 as will be
described in the following sections. The
ENC_BUSY status bit (see Table 5) may be
used to monitor when a security operation
has been completed. Security command
strobes issued while the security engine is
busy will be ignored, and the ongoing
operation will be completed.
Table 6 on page 31 shows the CC2420
RAM memory map, including the security
related data located from addresses
0x100 through 0x15F. RAM access (see
the RAM access section on page 29) is
used to write or read the keys, nonces and
stand-alone buffer. All security related
data is stored little-endian, i.e. the least
significant byte is transferred first over the
SPI interface during RAM read or write
operations.
For a complete description of IEEE
802.15.4 MAC security operations, please
refer to [1].
As can be seen from Table 6 on page 31,
KEY0 is located from address 0x100 and
KEY1 from address 0x130.
A way of establishing the keys used for
encryption and authentication must be
decided for each particular application.
IEEE 802.15.4 does not define how this is
done, it is left to the higher layer of the
protocol.
ZigBee
uses
an
Elliptic
Curve
Cryptography (ECC) based approach to
establish keys. For PC based solutions,
more processor intensive solutions such
as Diffie-Hellman may be chosen. Some
applications
may
also
use
preprogrammed keys, e.g. for remote keyless
entry where the key and lock are delivered
in pairs. A push-button approach for
loading keys may also be selected.
21.2 Nonce / counter
The receive and transmit nonces used for
encryption / decryption are located in RAM
from addresses 0x110 and 0x140
respectively. They are both 16 bytes.
The nonce must be correctly initialized
before receive or transmit CTR or CCM
operations are started. The format of the
nonce is shown in Table 7. The block
counter must be set to 1 for compliance
with [1]. The key sequence counter is
controlled by a layer above the MAC layer.
The frame counter must be increased for
each new frame by the MAC layer. The
source address is the 64 bit IEEE address.
1 byte
8 bytes
4 bytes
1 byte
2 bytes
Flags
Source
Address
Frame
Counter
Key
Sequence
Counter
Block
Counter
21.1 Keys
All security operations are based on 128
bit keys. The CC2420 RAM space has
storage space for two individual keys
(KEY0 and KEY1). Transmit, receive and
stand-alone encryption may select one of
these two keys individually in the
SEC_TXKEYSEL, SEC_RXKEYSEL and
SEC_SAKEYSEL control bits (SECCTRL0).
Table 7. IEEE 802.15.4 Nonce [1]
The block counter bytes are not updated
in RAM, only in a local copy that is
reloaded for each new in-line security
operation. I.e. the block counter part of the
nonce does not need to be rewritten. The
CC2420 block counter should be set to
0x0001 for compliance with [1].
CC2420 gives the user full flexibility in
selecting the flags for both nonces. The
SWRS041B
Page 45 of 89
CC2420
flag setting is stored in the most significant
byte of the nonce. The flag byte used for
encryption and authentication is then
generated as shown in Figure 26.
7
-
MSB in CC2420 nonce RAM
6
5
4
3
2
CTR Flag
CBC Flag
bits 7:6
bits 7:6
7
6
5
Res
Res
0
CTR mode flag byte
4
3
2
0
0
1
The frame counter part of the nonce must
be incremented for each new packet by
software.
0
L
1
SECCTRL0.SEC_M
0
7
L
Res
CBC-MAC flag byte
6
5
4
Adata
M
3
2
1
L
Figure 26. CC2420 Security Flag Byte
21.3 Stand-alone encryption
Plain AES encryption, with 128 bit
plaintext and 128 bit keys [2], is available
using
stand-alone
encryption.
The
plaintext is stored in stand-alone buffer
located at RAM location 0x120, as can be
seen from Table 6 on page 31.
A stand-alone encryption operation is
initiated by using the SAES command
strobe.
The
selected
key
(SECCTRL0.SEC_SAKEYSEL) is then used
to encrypt the plaintext written to the
stand-alone buffer. Upon completion of the
encryption operation, the ciphertext is
written back to the stand-alone buffer,
thereby overwriting the plaintext.
Note that RAM write operations also
output data currently in RAM, so that a
new plaintext may be written at the same
time as reading out the previous
ciphertext.
The key, nonce (does not apply to CBCMAC), and SECCTRL0 and SECCTRL1
control registers must be correctly set
before starting any in-line security
operation.
The in-line security mode is set in
SECCTRL0.SEC_MODE to one of the
following modes:
•
•
•
•
When enabled, TX in-line security is
started in one of two ways:
•
•
21.4 In-line security operations
CC2420 can do MAC security operations
(encryption, decryption and authentication)
on frames within the TXFIFO and
RXFIFO. These operations are called inline security operations.
As with other MAC hardware support
within CC2420, in-line security operation
relies on the length field in the PHY
header. A correct length field must
therefore be used for all security
operations.
Disabled
CBC-MAC (authentication)
CTR (encryption / decryption)
CCM (authentication and encryption /
decryption)
Issue a STXENC command strobe. Inline security will be performed within
the TXFIFO, but a RF transmission
will not be started. Ciphertext may be
read back using RAM read operations.
Issue a STXON or STXONCCA
command strobe. In-line security will
be performed within the TXFIFO and a
RF transmission of the ciphertext is
started.
When enabled, RX in-line security is
started as follows:
•
SWRS041B
Issue a SRXDEC command strobe. The
first frame in the RXFIFO is then
decrypted / authenticated as set by
the current security mode.
Page 46 of 89
0
CC2420
RX in-line security operations are always
performed on the first frame currently
inside the RXFIFO, even if parts of this
have already been read out over the SPI
interface. This allows the receiver to first
read the source address out to decide
which key to use before doing
authentication of the complete frame. In
CTR or CCM mode it is of course
important that bytes to be decrypted are
not read out before the security operation
is started.
of the RXFIFO is then decrypted as
specified by [1].
21.6 CBC-MAC
CBC-MAC
in-line
authentication
provided by CC2420 hardware.
is
SECCTRL0.SEC_M sets the MIC length M,
encoded as (M-2)/2.
When enabling CBC-MAC in-line TXFIFO
authentication, the generated MIC is
written to the TXFIFO for transmission.
The frame length must include the MIC.
When the SRXDEC command strobe is
issued, the FIFO and FIFOP pins will go
inactive. This is to indicate to the
microcontroller that no further data may be
read out before the next byte to be read
has undergone the requested security
operation.
SECCTRL1.SEC_TXL / SEC_RXL sets the
number of bytes between the length field
and the first byte to be authenticated,
normally set to 0 for MAC authentication.
The frame in the RXFIFO may be received
over RF or it may be written into the
RXFIFO over the SPI interface for
debugging or higher layer security
operations.
SECCTRL0.SEC_CBC_HEAD defines if the
authentication length is used as the first
byte of data to be authenticated or not.
This bit should be set for compliance with
[1].
21.5 CTR
mode
decryption
When enabling CBC-MAC in-line RXFIFO
authentication, the generated MIC is
compared to the MIC in the RXFIFO. The
last byte of the MIC is replaced in the
RXFIFO with:
encryption
/
CTR mode encryption / decryption is
performed by CC2420 on MAC frames
within the TXFIFO / RXFIFO respectively.
SECCTRL1.SEC_TXL / SEC_RXL sets the
number of bytes between the length field
and the first byte to be encrypted /
decrypted respectively. This controls the
number of plaintext bytes in the current
frame.
For
IEEE
802.15.4
MAC
encryption, only the MAC payload (see
Figure 17 on page 36) should be
encrypted, so SEC_TXL / SEC_RXL is set
to 3 + (0 to 20) depending on the address
information in the current frame.
When encryption is initiated, the plaintext
in the TXFIFO is then encrypted as
specified by [1]. The encryption module
will encrypt all the plaintext currently
available, and wait if not everything is prebuffered. The encryption operation may
also be started without any data in the
TXFIFO at all, and data will be encrypted
as it is written to the TXFIFO.
•
0x00 if the MIC is correct
•
0xFF if the MIC is incorrect
The other bytes in the MIC are left
unchanged in the RXFIFO.
21.7 CCM
CCM combines CTR mode encryption and
CBC-MAC authentication in one operation.
CCM is described in [3].
SECCTRL1.SEC_TXL / SEC_RXL sets the
number of bytes after the length field to be
authenticated but not encrypted.
The MIC is generated and verified very
much like with CBC-MAC described
above. The only differences are from the
requirements in [1] for CCM.
When decryption is initiated with a
SRXDEC command strobe, the ciphertext
SWRS041B
Page 47 of 89
CC2420
Table 8 shows some examples of the time
used by the security module for different
operations.
21.8 Timing
Mode
l(a)
l(m)
l(MIC)
Time
[us]
CCM
50
69
8
222
CTR
-
15
-
99
CBC
17
98
12
99
Standalone
-
16
-
14
Table 8. Security timing examples
22 Linear IF and AGC Settings
CC2420 is based on a linear IF chain
where the signal amplification is done in
an analog VGA (variable gain amplifier).
The gain of the VGA is digitally controlled.
The AGC (Automatic Gain Control) loop
ensures that the ADC operates inside its
dynamic range by using an analog/digital
feedback loop.
The AGC characteristics are set through
the AGCCTRL, AGCTST0, AGCTST1 and
AGCTST2 registers. The reset values
should be used for all AGC control and
test registers.
23 RSSI / Energy Detection
CC2420 has a built-in RSSI (Received
Signal Strength Indicator) providing a
digital value that can be read from the 8
bit,
signed
2’s
complement
RSSI.RSSI_VAL register.
The RSSI value is always averaged over 8
symbol periods (128 µs), in accordance
with [1]. The RSSI_VALID status bit
(Table 5) indicates when the RSSI value is
valid, meaning that the receiver has been
enabled for at least 8 symbol periods.
of –20 from the RSSI register, the RF
input power is approximately –65 dBm.
A typical plot of the RSSI_VAL reading as
function of input power is shown in Figure
27. It can be seen from the figure that the
RSSI reading from CC2420 is very linear
and has a dynamic range of about 100 dB.
The RSSI register value RSSI.RSSI_VAL
is calculated and continuously updated for
each symbol after RSSI has become valid.
The RSSI register value RSSI.RSSI_VAL
can be referred to the power P at the RF
pins by using the following equations:
P = RSSI_VAL + RSSI_OFFSET [dBm]
where the RSSI_OFFSET is found
empirically during system development
from the front end gain. RSSI_OFFSET is
approximately –45. E.g. if reading a value
SWRS041B
Page 48 of 89
CC2420
60
RSSI Register Value
40
20
0
-100
-80
-60
-40
-20
0
-20
-40
-60
RF Level [dBm]
Figure 27. Typical RSSI value vs. input power
24 Link Quality Indication
The
link
quality
indication
(LQI)
measurement is a characterisation of the
strength and/or quality of a received
packet, as defined by [1].
The RSSI value described in the previous
section may be used by the MAC software
to produce the LQI value. The LQI value is
required by [1] to be limited to the range 0
through 255, with at least 8 unique values.
Software is responsible for generating the
appropriate scaling of the LQI value for the
given application.
Using the RSSI value directly to calculate
the LQI value has the disadvantage that
e.g. a narrowband interferer inside the
channel bandwidth will increase the LQI
value although it actually reduces the true
link quality. CC2420 therefore also provides
an average correlation value for each
incoming packet, based on the 8 first
symbols following the SFD. This unsigned
7-bit value can be looked upon as a
measurement of the “chip error rate,”
although CC2420 does not do chip
decision.
As described in the Frame check
sequence section on page 38, the average
correlation value for the 8 first symbols is
appended to each received frame together
with the RSSI and CRC OK/not OK when
MDMCTRL0.AUTOCRC is set. A correlation
value of ~110 indicates a maximum quality
frame while a value of ~50 is typically the
lowest quality frames detectable by
CC2420.
Software must convert the correlation
value to the range 0-255 defined by [1],
e.g. by calculating:
LQI = (CORR – a) · b
limited to the range 0-255, where a and b
are found empirically based on PER
measurements as a function of the
correlation value.
A combination of RSSI and correlation
values may also be used to generate the
LQI value.
SWRS041B
Page 49 of 89
CC2420
25 Clear Channel Assessment
The clear channel assessment signal is
based on the measured RSSI value and a
programmable threshold. The clear
channel assessment function is used to
implement the CSMA-CA functionality
specified in [1]. CCA is valid when the
receiver has been enabled for at least 8
symbol periods.
Carrier
sense
threshold
level
is
programmed by RSSI.CCA_THR. The
threshold value can be programmed in
steps of 1 dB. A CCA hysteresis can also
be
programmed
in
the
MDMCTRL0.CCA_HYST control bits.
All 3 CCA modes specified by [1] are
implemented in CC2420. They are set in
MDMCTRL0.CCA_MODE, as can be seen in
the register description. The different
modes are:
0
Reserved
1
Clear channel when received energy is below
threshold.
2
Clear channel when not receiving valid IEEE
802.15.4 data.
3
Clear channel when energy is below threshold
and not receiving valid IEEE 802.15.4 data
Clear channel assessment is available on
the CCA output pin. CCA is active high, but
the polarity may be changed by setting the
IOCFG0.CCA_POLARITY control bit.
Implementing CSMA-CA may easiest be
done by using the STXONCCA command
strobe, as described in the Radio control
state machine section on page 43.
Transmission will then only start if the
channel is clear. The TX_ACTIVE status
bit (see Table 5) may be used to detect
the result of the CCA.
26 Frequency and Channel Programming
The operating frequency is set by
programming the 10 bit frequency word
located in FSCTRL.FREQ[9:0]. The
operating frequency FC in MHz is given by:
IEEE 802.15.4 specifies 16 channels
within the 2.4 GHz band, in 5 MHz steps,
numbered 11 through 26. The RF
frequency of channel k is given by [1]:
FC = 2048 + FSCTRL.FREQ[9:0] MHz
FC = 2405 + 5 (k-11) MHz, k=11, 12, ..., 26
The frequency can be programmed with 1
MHz resolution. In receive mode the
actual LO frequency is FC – 2 MHz, since
a 2 MHz IF is used. Direct conversion is
used for transmission, so here the LO
frequency equals FC. The 2 MHz IF is
automatically set by CC2420, so the
frequency programming is equal for RX
and TX.
For operation in channel k, the
FSCTRL.FREQ register should therefore
be set to:
FSCTRL.FREQ = 357 + 5 (k-11)
SWRS041B
Page 50 of 89
CC2420
27 VCO and PLL Self-Calibration
In order to ensure reliable operation the
VCO’s bias current and tuning range are
automatically calibrated every time the RX
mode or TX mode is enabled, i.e. in the
RX_CALIBRATE, TX_CALIBRATE and
TX_ACK_CALIBRATE control states in
Figure 25 on page 44.
27.1 VCO
The VCO is completely integrated and
operates at 4800 – 4966 MHz. The VCO
frequency is divided by 2 to generate
frequencies in the desired band (24002483.5 MHz).
27.2 PLL self-calibration
The VCO's characteristics will vary with
temperature, changes in supply voltages,
and the desired operating frequency.
28 Output Power Programming
The RF output power of the device is
programmable and is controlled by the
TXCTRL.PA_LEVEL register. Table 9
shows the output power for different
settings,
including
the
complete
programming of the TXCTRL control
register. The typical current consumption
is also shown.
PA_LEVEL
TXCTRL register
Output Power [dBm]
Current Consumption [mA]
31
0xA0FF
0
17.4
27
0xA0FB
-1
16.5
23
0xA0F7
-3
15.2
19
0xA0F3
-5
13.9
15
0xA0EF
-7
12.5
11
0xA0EB
-10
11.2
7
0xA0E7
-15
9.9
3
0xA0E3
-25
8.5
Table 9. Output power settings and typical current consumption @ 2.45 GHz
29 Voltage Regulator
CC2420 includes a low drop-out voltage
regulator. This is used to provide a 1.8 V
power supply to the CC2420 power
supplies. The voltage regulator should not
be used to provide power to other circuits
because of limited power sourcing
capability and noise considerations.
The voltage regulator input pin VREG_IN
is connected to the unregulated 2.1 to 3.6
V power supply. The voltage regulator is
enabled / disabled using the active high
voltage regulator enable pin VREG_EN.
The regulated 1.8 V voltage output is
available on the VREG_OUT
simplified schematic of the
regulator is shown in Figure 28.
pin. A
voltage
The voltage regulator requires external
components as described in the
Application Circuit section on page 19.
When disabling the voltage regulator, note
that register and RAM programming will
be lost as leakage current reduces the
output voltage on the VREG_OUT pin below
1.6 V. CC2420 should then be reset before
the voltage regulator is disabled.
SWRS041B
Page 51 of 89
CC2420
In applications where the internal voltage
regulator is not used, connect VREG_EN
and VREG_IN to ground. VREG_OUT shall
be left open. Note that the battery monitor
will not work when the voltage regulator is
not used.
VREG_EN
VREG_IN
Regulator
Enable / disable
Internal
bandgap
voltage
reference
1.25 V
VREG_OUT
Figure 28. Voltage regulator, simplified schematic
30 Battery Monitor
The on-chip battery monitor enables
monitoring the unregulated voltage on the
VREG_IN pin. It gives status information
on the voltage being above or below a
BATTMON.BATTMON_EN
Internal
bandgap
voltage
reference
programmable threshold. A simplified
schematic of the battery monitor is shown
in Figure 29.
VREG_IN
1.25 V
BATTMON.BATTMON_OK
BATTMON.BATTMON_VOLTAGE[4:0]
Figure 29. Battery monitor, simplified schematic
SWRS041B
Page 52 of 89
CC2420
The battery monitor is controlled through
the BATTMON control register. The battery
monitor is enabled and disabled using the
BATTMON.BATTMON_EN control bit. The
voltage regulator must also be enabled
when using the battery monitor.
Alternatively, for a desired toggle voltage,
BATTMON_VOLTAGE
should
be
set
according to:
The battery monitor status bit is available
in the BATTMON.BATTMON_OK status bit.
This bit is high when the VREG_IN input
voltage is higher than the toggle voltage
Vtoggle.
The voltage regulator must be enabled for
at least 100 µs before the first
measurement. After being enabled, the
BATTMON_OK status bit needs 2 µs to
settle for each new toggle voltage
programmed.
The battery monitor toggle voltage is set in
the 5-bit BATTMON.BATTMON_VOLTAGE
control bits. BATTMON_VOLTAGE is an
unsigned, positive number from 0 to 31.
The toggle voltage is given by:
V
toggle
= 1.25 V ⋅
BATTMON_VOLTAGE = 72 − 27 ⋅
V
toggle
1.25 V
The main performance characteristics of
the battery monitor is shown in the
Electrical Specifications section on page
9.
72 − BATTMON_VOLTAGE
27
31 Crystal Oscillator
An external clock signal or the internal
crystal oscillator can be used as main
frequency reference. The reference
frequency must be 16 MHz. Because the
crystal frequency is used as reference for
the data rate as well as other internal
signal
processing
functions,
other
frequencies cannot be used.
If an external clock signal is used this
should be connected to XOSC16_Q1, while
XOSC16_Q2 should be left open. The
MAIN.XOSC16M_BYPASS bit must be set
when an external clock signal is used.
Using the internal crystal oscillator, the
crystal must be connected between the
XOSC16_Q1 and XOSC16_Q2 pins. The
oscillator is designed for parallel mode
operation of the crystal. In addition,
loading capacitors (C381 and C391) for the
crystal are required. The loading capacitor
values depend on the total load
capacitance, CL, specified for the crystal.
The total load capacitance seen between
the crystal terminals should equal CL for
the crystal to oscillate at the specified
frequency.
CL =
1
1
1
+
C381 C391
+ C parasitic
The parasitic capacitance is constituted by
pin input capacitance and PCB stray
capacitance.
The
total
parasitic
capacitance is typically 2 pF - 5 pF.
The crystal oscillator circuit is shown in
Figure 30. Typical component values for
different values of CL are given in Table
10.
The crystal oscillator is amplitude
regulated. This means that a high current
is used to start up the oscillations. When
the amplitude builds up, the current is
reduced to what is necessary to maintain
a stable oscillation. This ensures a fast
start-up and keeps the drive level to a
minimum. The ESR of the crystal must be
within the specification in order to ensure
a reliable start-up (see the Electrical
Specifications section).
SWRS041B
Page 53 of 89
CC2420
XOSC16_Q1
XOSC16_Q2
XTAL
C391
C381
Figure 30. Crystal oscillator circuit
Item
CL= 16 pF
C381
27 pF
C391
27 pF
Table 10. Crystal oscillator component values
32 Input / Output Matching
The RF input / output is differential (RF_N
and RF_P). In addition there is supply
switch output pin (TXRX_SWITCH) that
must have an external DC path to RF_N
and RF_P.
In RX mode the TXRX_SWITCH pin is at
ground and will bias the LNA. In TX mode
the TXRX_SWITCH pin is at supply rail
voltage and will properly bias the internal
PA.
The RF output and DC bias can be done
using different topologies. Some are
shown in Figure 4 and Figure 5.
Component values are given in Table 2.
Using a differential antenna, no balun is
required.
If a single ended output is required (for a
single ended connector or a single ended
antenna), a balun should be used for
optimum performance.
The balun adds the signals from the RF_N
and RF_P. This is achieved having two
paths with equal amplitude response, but
180
degrees
phase
difference.
33 Transmitter Test Modes
CC2420 can be set into different transmit
test modes for performance evaluation.
The test mode descriptions in the following
sections requires that the chip is first
reset, the crystal oscillator is enabled
using the SXOSCON command strobe and
that the crystal oscillator has stabilised.
0x1800 to the DACTST register and issue
a STXON command strobe. The transmitter
is then enabled while the transmitter I/Q
DACs are overridden to static values. An
unmodulated carrier will then be available
on the RF output pins.
A plot of the single carrier output spectrum
from CC2420 is shown in Figure 31 below.
33.1 Unmodulated carrier
An
unmodulated
carrier
may
be
transmitted
by
setting
MDMCTRL1.TX_MODE to 2 or 3, writing
SWRS041B
Page 54 of 89
CC2420
RBW
10 kHz
Ref Lvl
VBW
10 kHz
3 dBm
SWT
50 ms
RF Att
Unit
30 dB
dBm
3
0
A
-10
-20
-30 1AVG
1SA
-40
-50
-60
-70
-80
-90
-97
Center 2.45 GHz
Date:
23.OCT.2003
200 kHz/
Span 2 MHz
21:38:33
Figure 31. Single carrier output
33.2 Modulated spectrum
The CC2420 has a built-in test pattern
generator that can generate pseudo
random sequence using the CRC
generator. This is enabled by setting
MDMCTRL1.TX_MODE to 3 and issues an
STXON command strobe. The modulated
spectrum is then available on the RF pins.
The low byte of the CRC word is
transmitted and the CRC is updated with
0xFF for each new byte. The length of the
transmitted data sequence is 65535 bits.
The transmitted data-sequence is then:
[Synchronisation header] [0x00, 0x78,
0xb8, 0x4b, 0x99, 0xc3, 0xe9, …]
sequence for bit error testing. Please note
CC2420
requires
symbol
that
synchronisation,
not
only
bit
synchronisation, for correct reception.
Packet error rate is therefore a better
measurement
for
the
true
RF
performance.
Another option to generate a modulated
spectrum is to fill the TXFIFO with pseudorandom
data
and
set
MDMCTRL1.TX_MODE to 2. CC2420 will
then transmit data from the FIFO
disregarding a TXFIFO underflow. The
length of the transmitted data sequence is
then 1024 bits (128 bytes).
A plot of the modulated spectrum from
Since a synchronisation header (preamble
and SFD) is transmitted in all TX modes,
this test mode may also be used to
transmit a known pseudorandom bit
CC2420 is shown in Figure 32. Note that to
find the output power from the modulated
spectrum, the RBW must be set to 3 MHz
or higher.
SWRS041B
Page 55 of 89
CC2420
RBW
100 kHz
Ref Lvl
VBW
100 kHz
0 dBm
SWT
5 ms
RF Att
Unit
30 dB
dBm
0
A
-10
-20
-30
1AVG
1SA
-40
-50
-60
-70
-80
-90
-100
Center 2.45 GHz
Date:
23.OCT.2003
1 MHz/
Span 10 MHz
21:34:19
Figure 32. Modulated spectrum plot
SWRS041B
Page 56 of 89
CC2420
34 System Considerations and Guidelines
SRD regulations
34.3 Crystal accuracy and drift
International regulations and national laws
regulate the use of radio receivers and
transmitters. SRDs (Short Range Devices)
for license free operation are allowed to
operate in the 2.4 GHz band worldwide.
The most important regulations are ETSI
EN 300 328 and EN 300 440 (Europe),
FCC CFR-47 part 15.247 and 15.249
(USA), and ARIB STD-T66 (Japan).
34.1 Frequency hopping and multichannel systems
The 2.4 GHz band is shared by many
systems both in industrial, office and home
CC2420
uses
direct
environments.
sequence spread spectrum (DSSS) as
defined by [1] to spread the output power,
thereby making the communication link
more robust even in a noisy environment.
With CC2420 it is also possible to combine
both DSSS and FHSS (frequency hopping
spread spectrum) in a proprietary nonIEEE 802.15.4 system. This is achieved
by reprogramming the operating frequency
(see the Frequency and Channel
Programming section on page 50) before
enabling RX or TX. A frequency
synchronisation scheme must then be
implemented within the proprietary MAC
layer to make the transmitter and receiver
operate on the same RF channel.
34.2 Data burst transmissions
The data buffering in CC2420 lets the user
have a lower data rate link between the
microcontroller and the RF device than the
RF bit rate of 250 kbps. This allows the
microcontroller to buffer data at its own
speed, reducing the workload and timing
requirements.
The relatively high data rate of CC2420
also reduces the average power
consumption compared to the 868 / 915
MHz bands defined by [1], where only 20 /
40 kbps are available. CC2420 may be
powered up a smaller portion of the time,
so that the average power consumption is
reduced for a given amount of data to be
transferred.
A crystal accuracy of ±40 ppm is required
for compliance with IEEE 802.15.4 [1].
This accuracy must also take ageing and
temperature drift into consideration.
A crystal with low temperature drift and
low aging could be used without further
compensation. A trimmer capacitor in the
crystal oscillator circuit (in parallel with C7)
could be used to set the initial frequency
accurately.
For non-IEEE 802.15.4 systems, the
robust demodulator in CC2420 allows up to
120 ppm total frequency offset between
the transmitter and receiver. This could
e.g. relax the accuracy requirement to 60
ppm for each of the devices.
Optionally in a star network topology, the
FFD could be equipped with a more
accurate crystal thereby relaxing the
requirement on the RFD. This can make
sense in systems where the RFDs ship in
higher volumes than the FFDs.
34.4 Communication robustness
CC2420 provides very good adjacent,
alternate and co channel rejection, image
frequency suppression and blocking
properties. The CC2420 performance is
significantly better than the requirements
imposed by [1]. These are highly important
parameters for reliable operation in the 2.4
GHz band, since an increasing number of
devices/systems are using this license
free frequency band.
34.5 Communication security
The
hardware
encryption
and
authentication operations in CC2420
enable secure communication, which is
required for many applications. Security
operations require a lot of data
processing, which is costly in an 8-bit
microcontroller system. The hardware
support within CC2420 enables a high level
of security even with a low-cost 8 bit
controller.
SWRS041B
Page 57 of 89
CC2420
required
to
synchronisation.
34.6 Low-cost systems
As the CC2420 provides 250 kbps multichannel performance without any external
filters, a very low-cost system can be
made.
A differential antenna will eliminate the
need for a balun, and the DC biasing can
be achieved in the antenna topology.
34.7 Battery operated systems
In low power applications, the CC2420
should be powered down when not being
active. Extremely low power consumption
may be achieved when disabling also the
voltage regulator. This will require
reprogramming of the register and RAM
configuration.
In an IEEE 802.15.4 system, all
communication is based on packets. The
sensitivity limit specified by [1] is based on
Packet Error Rate (PER) measurements
instead of BER. This is a more accurate
measurement of the true RF performance
since it mirrors the way the actual system
operates.
It is recommended to perform PER
measurements
instead
of
BER
measurements
to
evaluate
the
performance of IEEE 802.15.4 systems.
To do PER measurements, the following
may be used as a guideline:
•
A valid preamble, SFD and length
field must be used for each
packet.
•
The PSDU (see Figure 17 on
page 36) length should be 20
bytes for sensitivity measurements
as specified by [1].
•
The sensitivity limit specified by [1]
is the RF level resulting in a 1%
PER. The packet sample space
for a given measurement must
then be >> 100 to have a
sufficiently large sample space.
E.g. at least 1000 packets should
be used to measure the
sensitivity.
•
The data transmitted over air must
be spread according to [1] and the
description on page 24. Pregenerated packets may be used,
although [1] requires that the PER
is averaged over random PSDU
data.
•
The CC2420 receive FIFO may be
used to buffer data received
during PER measurements, since
it is able to buffer up to 128 bytes.
•
The
MDMCTRL1.CORR_THR
control register is by default set to
20,
as
described
in
the
Demodulator,
Symbol
Synchroniser and Data Decision
section.
34.8 BER / PER measurements
CC2420 includes test modes where data is
received infinitely and output to pins
(RX_MODE 2, see page 40). This mode
may be used for Bit Error Rate (BER)
measurements. However, the following
actions must be taken to do such a
measurement:
•
•
•
re-gain
A preamble and SFD sequence
must be used, even if pseudo
random data is transmitted, since
receiving the DSSS modulated
signal
requires
symbol
synchronisation,
not
bit
synchronisation like e.g. in 2FSK
systems. The SYNCWORD may be
set to another value to fit to the
measurement setup if necessary.
The data transmitted over air must
be spread according to [1] and the
description on page 24. This
means that the transmitter used
during measurements must be
able to do spreading of the bit
data to chip data. Remember that
the chip sequence transmitted by
the test setup is not the same as
the bit sequence, which is output
by CC2420.
When operating at or below the
sensitivity limit, CC2420 may loose
symbol synchronisation in infinite
receive mode. A new SFD and
restart of the receiver may be
SWRS041B
Page 58 of 89
CC2420
•
The
RXCTRL1.RXBPF_LOCUR
control bit should be set to 1.
signal has the same phase shifts as the OQPSK sequence previously defined.
The simplest way of making a PER
measurement will be to use another
CC2420 as the reference transmitter.
However, this makes it difficult to measure
the exact receiver performance.
For a desired symbol sequence s0, s1, … ,
sn-1 of length n symbols, the desired chip
sequence c0, c1, c2, …, c32n-1 of length 32n
is found using table lookup from Table 3
on page 24. It can be seen from
comparing the phase shifts of the O-QPSK
signal with the frequency of a MSK signal
that the MSK chip sequence is generated
as:
Using a signal generator, this may either
be set up as O-QPSK with half-sine
shaping or as MSK. If using O-QPSK, the
phases must be selected according to [1].
If using MSK, the chip sequence must be
modified such that the modulated MSK
(c0 xnor c1), (c1 xor c2), (c2 xnor c3), … ,
(c32n-1 xor c32n) where c32n may be
arbitrarily selected.
35 PCB Layout Recommendations
Following Texas Instruments’s reference
design is highly recommended.
separate vias. Supply power filtering is
very important.
In our reference design, the top layer is
used for signal routing, and the open
areas are filled with metallisation
connected to ground using several vias.
Layer 2 has not been used in our CC2420
reference designs. Layer 3 is used for
power routing and the bottom layer serves
as ground plane with a little routing.
The external components should be as
small as possible (0402 is recommended)
and surface mount devices must be used.
Caution should be used when placing the
microcontroller
in
order
to
avoid
interference with the RF circuitry.
The area under the chip is used for
grounding and must be well connected to
the ground plane with several vias.
A Development Kit with a fully assembled
Evaluation Module is available. It is
strongly advised that this reference layout
is followed very closely in order to get the
best performance.
The ground pins should be connected to
ground as close as possible to the
package pin using individual vias. The decoupling capacitors should also be placed
as close as possible to the supply pins
and connected to the ground plane by
The schematic, BOM and layout Gerber
files for the reference designs are all
available from the Texas Instruments
website.
36 Antenna Considerations
CC2420 can be used together with various
types of antennas. A differential antenna
like a dipole would be the easiest to
interface not needing a balun (balanced to
un-balanced transformation network).
The length of the λ/2-dipole antenna is
given by:
L = 14250 / f
where f is in MHz, giving the length in cm.
An antenna for 2450 MHz should be 5.8
cm. Each arm is therefore 2.9 cm.
Other commonly used antennas for shortrange communication are monopole,
helical and loop antennas. The singleended monopole and helical would require
a balun network between the differential
output and the antenna.
Monopole
antennas
are
resonant
antennas with a length corresponding to
one quarter of the electrical wavelength
SWRS041B
Page 59 of 89
CC2420
(λ/4). They are very easy to design and
can be implemented simply as a “piece of
wire” or even integrated into the PCB.
The length of the λ/4-monopole antenna is
given by:
L = 7125 / f
where f is in MHz, giving the length in cm.
An antenna for 2450 MHz should be 2.9
cm.
of the antenna. Many vendors offer such
antennas intended for PCB mounting.
Helical antennas can be thought of as a
combination of a monopole and a loop
antenna. They are a good compromise in
size critical applications. Helical antennas
tend to be more difficult to optimize than
the simple monopole.
Loop antennas are easy to integrate into
the PCB, but are less effective due to
difficult impedance matching because of
their very low radiation resistance.
For low power applications the differential
antenna is recommended giving the best
range and because of its simplicity.
Non-resonant monopole antennas shorter
than λ/4 can also be used, but at the
expense of range. In size and cost critical
applications such an antenna may very
well be integrated into the PCB.
Enclosing the antenna in high dielectric
constant material reduces the overall size
The antenna should be connected as
close as possible to the IC. If the antenna
is located away from the RF pins the
antenna should be matched to the feeding
transmission line (50 Ω).
SWRS041B
Page 60 of 89
CC2420
37 Configuration Registers
The configuration of CC2420 is done by
programming the 16-bit configuration
registers. Complete descriptions of the
registers are given in the following tables.
After chip reset (from the RESETn pin or
programmable through the MAIN.RESETn
configuration bit), all the registers have
default values as shown in the tables.
Note that the MAIN register is only reset
by using the pin reset RESETn. When
writing to this register, all bits will get the
value written, not the default value. This
also means that the MAIN.RESETn bit
must be written both low and then high to
perform a chip reset through the serial
interface.
15 registers are Strobe Command
Registers, listed first in Table 11 below.
Accessing these registers will initiate the
change of an internal state or mode. There
are 33 normal 16-bits registers, also listed
in Table 11. Many of these registers are
for test purposes only, and need not be
accessed for normal operation of CC2420.
The FIFOs are accessed through two 8-bit
registers, TXFIFO and RXFIFO. The
TXFIFO register is write only. Data may
still be read out of the TXFIFO through
regular RAM access (see section RAM
access section on page 29), but data is
then not removed from the FIFO. Note that
the crystal oscillator must be active for all
FIFO and RAM access.
During address transfer, and while data is
being written to the TXFIFO, a status byte
is returned on the serial data output pin
SO. This status byte is described in Table
5 on page 29.
All configuration and status registers are
described in the tables following Table 11.
Address
Register
Register type
Description
0x00
SNOP
S
No Operation (has no other effect than reading out status-bits)
0x01
SXOSCON
S
Turn on the crystal oscillator (set XOSC16M_PD = 0 and
BIAS_PD = 0)
0x02
STXCAL
S
Enable and calibrate frequency synthesizer for TX;
Go from RX / TX to a wait state where only the synthesizer is
running.
0x03
SRXON
S
Enable RX
0x04
STXON
S
Enable TX after calibration (if not already performed)
Start TX in-line encryption if SPI_SEC_MODE ≠ 0
0x05
STXONCCA
S
If CCA indicates a clear channel:
Enable calibration, then TX.
Start in-line encryption if SPI_SEC_MODE ≠ 0
else
do nothing
0x06
SRFOFF
S
Disable RX/TX and frequency synthesizer
0x07
SXOSCOFF
S
Turn off the crystal oscillator and RF
0x08
SFLUSHRX
S
Flush the RX FIFO buffer and reset the demodulator. Always
read at least one byte from the RXFIFO before issuing the
SFLUSHRX command strobe
0x09
SFLUSHTX
S
Flush the TX FIFO buffer
0x0A
SACK
S
Send acknowledge frame, with pending field cleared.
0x0B
SACKPEND
S
Send acknowledge frame, with pending field set.
0x0C
SRXDEC
S
Start RXFIFO in-line decryption / authentication (as set by
SPI_SEC_MODE)
0x0D
STXENC
S
Start TXFIFO in-line encryption / authentication (as set by
SPI_SEC_MODE), without starting TX.
SWRS041B
Page 61 of 89
CC2420
Address
Register
Register type
Description
0x0E
SAES
S
AES Stand alone encryption strobe. SPI_SEC_MODE is not
required to be 0, but the encryption module must be idle. If not,
the strobe is ignored.
0x0F
-
-
Not used
0x10
MAIN
R/W
Main Control Register
0x11
MDMCTRL0
R/W
Modem Control Register 0
0x12
MDMCTRL1
R/W
Modem Control Register 1
0x13
RSSI
R/W
RSSI and CCA Status and Control register
0x14
SYNCWORD
R/W
Synchronisation word control register
0x15
TXCTRL
R/W
Transmit Control Register
0x16
RXCTRL0
R/W
Receive Control Register 0
0x17
RXCTRL1
R/W
Receive Control Register 1
0x18
FSCTRL
R/W
Frequency Synthesizer Control and Status Register
0x19
SECCTRL0
R/W
Security Control Register 0
0x1A
SECCTRL1
R/W
Security Control Register 1
0x1B
BATTMON
R/W
Battery Monitor Control and Status Register
0x1C
IOCFG0
R/W
Input / Output Control Register 0
0x1D
IOCFG1
R/W
Input / Output Control Register 1
0x1E
MANFIDL
R/W
Manufacturer ID, Low 16 bits
0x1F
MANFIDH
R/W
Manufacturer ID, High 16 bits
0x20
FSMTC
R/W
Finite State Machine Time Constants
0x21
MANAND
R/W
Manual signal AND override register
0x22
MANOR
R/W
Manual signal OR override register
0x23
AGCCTRL
R/W
AGC Control Register
0x24
AGCTST0
R/W
AGC Test Register 0
0x25
AGCTST1
R/W
AGC Test Register 1
0x26
AGCTST2
R/W
AGC Test Register 2
0x27
FSTST0
R/W
Frequency Synthesizer Test Register 0
0x28
FSTST1
R/W
Frequency Synthesizer Test Register 1
0x29
FSTST2
R/W
Frequency Synthesizer Test Register 2
0x2A
FSTST3
R/W
Frequency Synthesizer Test Register 3
0x2B
RXBPFTST
R/W
Receiver Bandpass Filter Test Register
0x2C
FSMSTATE
R
Finite State Machine State Status Register
0x2D
ADCTST
R/W
ADC Test Register
0x2E
DACTST
R/W
DAC Test Register
0x2F
TOPTST
R/W
Top Level Test Register
0x30
RESERVED
R/W
Reserved for future use control / status register
0x310x3D
-
-
0x3E
TXFIFO
W
Transmit FIFO Byte Register
0x3F
RXFIFO
R/W
Receiver FIFO Byte Register
Not used
R/W - Read/write (control/status), R - Read only, W – Write only, S – Command Strobe (perform action upon access)
Table 11. Configuration registers overview
SWRS041B
Page 62 of 89
CC2420
MAIN (0x10) - Main Control Register
Bit
Field Name
Reset
R/W
Description
15
RESETn
1
R/W
Active low reset of the entire circuit should be applied before
doing anything else. Equivalent to using the RESETn reset pin.
14
ENC_RESETn
1
R/W
Active low reset of the encryption module. (Test purposes only)
13
DEMOD_RESETn
1
R/W
Active low reset of the demodulator module. (Test purposes
only)
12
MOD_RESETn
1
R/W
Active low reset of the modulator module. (Test purposes only)
11
FS_RESETn
1
R/W
Active low reset of the frequency synthesizer module. (Test
purposes only)
10:1
-
0
W0
Reserved, write as 0
0
XOSC16M_BYPASS
0
R/W
Bypasses the crystal oscillator and uses a buffered version of the
signal on Q1 directly. This can be used to apply an external railrail clock signal to the Q1 pin.
SWRS041B
Page 63 of 89
CC2420
MDMCTRL0 (0x11) - Modem Control Register 0
Bit
Field Name
Reset
R/W
Description
15:14
-
0
W0
Reserved, write as 0
13
RESERVED_FRAME_MODE
0
R/W
Mode for accepting reserved IEE 802.15.4 frame types when
address recognition is enabled (MDMCTRL0.ADR_DECODE = 1).
0 : Reserved frame types (100, 101, 110, 111) are rejected by
address recognition.
1 : Reserved frame types (100, 101, 110, 111) are always
accepted by address recognition. No further address decoding is
done.
When address recognition is disabled (MDMCTRL0.ADR_DECODE =
0), all frames are received and RESERVED_FRAME_MODE is don’t
care.
12
PAN_COORDINATOR
0
R/W
Should be set high when the device is a PAN Coordinator. Used
for filtering packets with no destination address, as specified in
section 7.5.6.2 in 802.15.4, D18
11
ADR_DECODE
1
R/W
Hardware Address decode enable.
0 : Address decoding is disabled
1 : Address decoding is enabled
10:8
CCA_HYST[2:0]
2
R/W
CCA Hysteresis in dB, values 0 through 7 dB
7:6
CCA_MODE[1:0]
3
R/W
0 : Reserved
1 : CCA=1 when RSSI_VAL < CCA_THR - CCA_HYST
CCA=0 when RSSI_VAL ≥ CCA_THR
2 : CCA=1 when not receiving valid IEEE 802.15.4 data,
CCA=0 otherwise
3 : CCA=1 when RSSI_VAL < CCA_THR - CCA_HYST and not
receiving valid IEEE 802.15.4 data.
CCA=0 when RSSI_VAL ≥ CCA_THR or receiving a packet
5
AUTOCRC
1
R/W
In packet mode a CRC-16 (ITU-T) is calculated and is
transmitted after the last data byte in TX. In RX CRC is
calculated and checked for validity.
4
AUTOACK
0
R/W
If AUTOACK is set, all packets accepted by address recognition
with the acknowledge request flag set and a valid CRC are
acknowledged 12 symbol periods after being received.
3:0
PREAMBLE_LENGTH
[3:0]
2
R/W
The number of preamble bytes (2 zero-symbols) to be sent in TX
mode prior to the SYNCWORD, encoded in steps of 2. The reset
th
value of 2 is compliant with IEEE 802.15.4, since the 4 zero
byte is included in the SYNCWORD.
0 : 1 leading zero bytes (not recommended)
1 : 2 leading zero bytes (not recommended)
2 : 3 leading zero bytes (IEEE 802.15.4 compliant)
3 : 4 leading zero bytes
…
15 : 16 leading zero bytes
SWRS041B
Page 64 of 89
CC2420
MDMCTRL1 (0x12)– Modem Control Register 1
Bit
Field Name
Reset
R/W
Description
15:11
-
0
W0
Reserved, write as 0.
10:6
CORR_THR[4:0]
20
R/W
Demodulator correlator threshold value, required before SFD
search. Note that on early CC2420 versions the reset value was
0.
5
DEMOD_AVG_MODE
0
R/W
Frequency offset average filter behaviour.
0 : Lock frequency offset filter after preamble match
1 : Continuously update frequency offset filter.
4
MODULATION_MODE
0
R/W
Set one of two RF modulation modes for RX / TX
0 : IEEE 802.15.4 compliant mode
1 : Reversed phase, non-IEEE compliant (could be used to set
up a system which will not receive 802.15.4 packets)
3:2
TX_MODE[1:0]
0
R/W
Set test modes for TX
0 : Buffered mode, use TXFIFO (normal operation)
1 : Serial mode, use transmit data on serial interface, infinite
transmission. For lab testing only.
2 : TXFIFO looping ignore underflow in TXFIFO and read cyclic,
infinite transmission. For lab testing only.
3 : Send random data from CRC, infinite transmission. For lab
testing only.
1:0
RX_MODE[1:0]
0
R/W
Set test mode of RX
0 : Buffered mode, use RXFIFO (normal operation)
1 : Receive serial mode, output received data on pins. Infinite
RX. For lab testing only.
2 : RXFIFO looping ignore overflow in RXFIFO and write cyclic,
infinite reception. For lab testing only.
3 : Reserved
RSSI (0x13) - RSSI and CCA Status and Control Register
Bit
15:8
Field Name
Reset
R/W
Description
CCA_THR[7:0]
-32
R/W
Clear Channel Assessment threshold value, signed number on
2’s complement for comparison with the RSSI.
The unit is 1 dB, offset is the same as for RSSI_VAL. The CCA
signal goes active when the received signal is below this value.
The CCA signal is available on the CCA pin.
The reset value is approximately -77 dBm.
7:0
RSSI_VAL[7:0]
-128
R
RSSI estimate on a logarithmic scale, signed number on 2’s
complement.
Unit is 1 dB, offset is described in the RSSI / Energy Detection
section on page 48.
The RSSI_VAL value is averaged over 8 symbol periods. The
RSSI_VALID status bit may be checked to verify that the
receiver has been enabled for at least 8 symbol periods.
The reset value of –128 also indicates that the RSSI_VAL value
is invalid.
SWRS041B
Page 65 of 89
CC2420
SYNCWORD (0x14) - Sync Word
Bit
15:0
Field Name
Reset
R/W
Description
SYNCWORD[15:0]
0xA70F
R/W
Synchronisation word. The SYNCWORD is processed from the
least significant nibble (F at reset) to the most significant nibble
(A at reset).
SYNCWORD is used both during modulation (where 0xF’s are
replaced with 0x0’s) and during demodulation (where 0xF’s are
not required for frame synchronisation). In reception an implicit
zero is required before the first symbol required by SYNCWORD.
The reset value is compliant with IEEE 802.15.4.
TXCTRL (0x15) - Transmit Control Register
Bit
15:14
Field Name
Reset
R/W
Description
TXMIXBUF_CUR[1:0]
2
R/W
TX mixer buffer bias current.
0: 690uA
1: 980uA
2: 1.16mA (nominal)
3: 1.44mA
13
TX_TURNAROUND
1
R/W
Sets the wait time after STXON before transmission is started.
0 : 8 symbol periods (128 us)
1 : 12 symbol periods (192 us)
12:11
TXMIX_CAP_ARRAY[1:0]
0
R/W
Selects varactor array settings in the transmit mixers.
10:9
TXMIX_CURRENT[1:0]
0
R/W
Transmit mixers current:
0: 1.72 mA
1: 1.88 mA
2: 2.05 mA
3: 2.21 mA
8:6
PA_CURRENT[2:0]
3
R/W
Current programming of the PA
0: -3 current adjustment
1: -2 current adjustment
2: -1 current adjustment
3: Nominal setting
4: +1 current adjustment
5: +2 current adjustment
6: +3 current adjustment
7: +4 current adjustment
5
-
1
W1
Reserved, write as 1.
4:0
PA_LEVEL[4:0]
31
R/W
Output PA level. (~0 dBm)
SWRS041B
Page 66 of 89
CC2420
RXCTRL0 (0x16) – Receive control register 0
Bit
Field Name
Reset
R/W
Description
15:14
-
0
W0
Reserved, write as 0.
13:12
RXMIXBUF_CUR[1:0]
1
R/W
RX mixer buffer bias current.
0: 690uA
1: 980uA (nominal)
2: 1.16mA
3: 1.44mA
11:10
HIGH_LNA_GAIN[1:0]
0
R/W
Controls current in the LNA gain compensation branch in AGC
High gain mode.
0: Compensation disabled
1: 100 µA compensation current
2: 300 µA compensation current (Nominal)
3: 1000 µA compensation current
9:8
MED_LNA_GAIN[1:0]
2
R/W
Controls current in the LNA gain compensation branch in AGC
Med gain mode.
7:6
LOW_LNA_GAIN[1:0]
3
R/W
Controls current in the LNA gain compensation branch in AGC
Low gain mode
5:4
HIGH_LNA_CURRENT[1:0]
2
R/W
Controls main current in the LNA in AGC High gain mode
0: 240 µA LNA current (x2)
1: 480 µA LNA current (x2)
2: 640 µA LNA current (x2)
3: 1280 µA LNA current (x2)
3:2
MED_LNA_CURRENT[1:0]
1
R/W
Controls main current in the LNA in AGC Med gain mode
1:0
LOW_LNA_CURRENT[1:0]
1
R/W
Controls main current in the LNA in AGC Low gain mode
SWRS041B
Page 67 of 89
CC2420
RXCTRL1 (0x17) - Receive control register 1
Bit
Field Name
Reset
R/W
Description
15:14
-
0
W0
Reserved, write as 0.
13
RXBPF_LOCUR
0
R/W
Controls reference bias current to RX bandpass filters:
0: 4 uA (Reset value) Use 1 instead
1: 3 uA Note: Recommended setting
12
RXBPF_MIDCUR
0
R/W
Controls reference bias current to RX bandpass filters:
0: 4 uA (Default)
1: 3.5 uA
11
LOW_LOWGAIN
1
R/W
LNA low gain mode setting in AGC low gain mode.
10
MED_LOWGAIN
0
R/W
LNA low gain mode setting in AGC medium gain mode.
9
HIGH_HGM
1
R/W
RX Mixers high gain mode setting in AGC high gain mode.
8
MED_HGM
0
R/W
RX Mixers high gain mode setting in AGC medium gain mode.
7:6
LNA_CAP_ARRAY[1:0]
1
R/W
Selects varactor array setting in the LNA
0: OFF
1: 0.1pF (x2) (Nominal)
2: 0.2pF (x2)
3: 0.3pF (x2)
5:4
RXMIX_TAIL[1:0]
1
R/W
Control of the receiver mixers output current.
0: 12 µA
1: 16 µA (Nominal)
2: 20 µA
3: 24 µA
3:2
RXMIX_VCM[1:0]
1
R/W
Controls VCM level in the mixer feedback loop
0: 8 µA mixer current
1: 12 µA mixer current (Nominal)
2: 16 µA mixer current
3: 20 µA mixer current
1:0
RXMIX_CURRENT[1:0]
2
R/W
Controls current in the mixer
0: 360 µA mixer current (x2)
1: 720 µA mixer current (x2)
2: 900 µA mixer current (x2) (Nominal)
3: 1260 µA mixer current (x2)
SWRS041B
Page 68 of 89
CC2420
FSCTRL (0x18) - Frequency Synthesizer Control and Status
Bit
15:14
Field Name
Reset
R/W
Description
LOCK_THR[1:0]
1
R/W
Number of consecutive reference clock periods with successful
synchronisation windows required to indicate lock:
0: 64
1: 128 (recommended)
2: 256
3: 512
13
CAL_DONE
0
R
Calibration has been performed since the last time the frequency
synthesizer was turned on.
12
CAL_RUNNING
0
R
Calibration status, '1' when calibration in progress and ‘0’
otherwise.
11
LOCK_LENGTH
0
R/W
Synchronisation window pulse width:
0: 2 prescaler clock periods (recommended)
1: 4 prescaler clock periods
10
LOCK_STATUS
0
R
Frequency synthesizer lock status:
0 : Frequency synthesizer is out of lock
1 : Frequency synthesizer is in lock
9:0
FREQ[9:0]
357
(2405
MHz)
R/W
Frequency control word, controlling the RF operating frequency
FC. In transmit mode, the local oscillator (LO) frequency equals
FC. In receive mode, the LO frequency is 2 MHz below FC.
FC = 2048 + FREQ[9:0] MHz
See the Frequency and Channel Programming section on page
50 for further information.
SWRS041B
Page 69 of 89
CC2420
SECCTRL0 (0x19) - Security Control Register
Bit
Field Name
Reset
R/W
Description
15:10
-
0
W0
Reserved, write as 0
9
RXFIFO_PROTECTION
1
R/W
Protection enable of the RXFIFO, see description in the RXFIFO
overflow section on page 33. Should be cleared if MAC level
security is not used or is implemented outside CC2420.
8
SEC_CBC_HEAD
1
R/W
Defines what to use for the first byte in CBC-MAC (does not
apply to CBC-MAC part of CCM):
0 : Use the first data byte as the first byte into CBC-MAC
1 : Use the length of the data to be authenticated (calculated as
(the packet length field – SEC_TXL – 2) for TX or using SEC_RXL
for RX) as the first byte into CBC-MAC (before the first data
byte).
This bit should be set high for CBC-MAC 802.15.4 inline security.
7
SEC_SAKEYSEL
1
R/W
Stand Alone Key select
0 : Key 0 is used
1 : Key 1 is used
6
SEC_TXKEYSEL
1
R/W
TX Key select
0 : Key 0 is used
1 : Key 1 is used
5
SEC_RXKEYSEL
0
R/W
RX Key select
0 : Key 0 is used
1 : Key 1 is used
4:2
SEC_M[2:0]
1
R/W
Number of bytes in authentication field for CBC-MAC, encoded
as (M-2)/2
0 : Reserved
1:4
2:6
3:8
4 : 10
5 : 12
6 : 14
7 : 16
1:0
SEC_MODE[1:0]
0
R/W
Security mode
0 : In-line security is disabled
1 : CBC-MAC
2 : CTR
3 : CCM
SWRS041B
Page 70 of 89
CC2420
SECCTRL1 (0x1A) - Security Control Register
Bit
Field Name
Reset
R/W
Description
15
-
0
W0
Reserved, write as 0
14:8
SEC_TXL
0
R/W
Multi-purpose length byte for TX in-line security operations:
CTR : Number of cleartext bytes between length byte and the
first byte to be encrypted
CBC/MAC : Number of cleartext bytes between length byte and
the first byte to be authenticated
CCM : l(a), defining the number of bytes to be authenticated but
not encrypted
Stand-alone : SEC_TXL has no effect
7
-
0
W0
Reserved, write as 0
6:0
SEC_RXL
0
R/W
Multi-purpose length byte for RX in-line security operations:
CTR : Number of cleartext bytes between length byte and the
first byte to be decrypted
CBC/MAC : Number of cleartext bytes between length byte and
the first byte to be authenticated
CCM : l(a), defining the number of bytes to be authenticated but
not decrypted
Stand-alone : SEC_RXL has no effect
BATTMON (0x1B) – Battery Monitor Control register
Bit
Field Name
Reset
R/W
Description
15:7
-
0
W0
Reserved, write as 0
6
BATTMON_OK
1
R
Battery monitor comparator output, read only. BATT_OK is valid
5 us after BATTMON_EN has been asserted and
BATTMON_VOLTAGE has been programmed.
0 : Power supply < Toggle Voltage
1 : Power supply > Toggle Voltage
5
BATTMON_EN
0
R/W
Battery monitor enable
0 : Battery monitor is disabled
1 : Battery monitor is enabled
4:0
BATTMON_VOLTAGE
[4:0]
0
R/W
Battery monitor toggle voltage. The toggle voltage is given by:
V
SWRS041B
toggle
= 1.25 V ⋅
72 − BATTMON_VOLTAGE
27
Page 71 of 89
CC2420
IOCFG0 (0x1C) – I/O Configuration Register 0
Bit
Field Name
Reset
R/W
Description
15:12
-
0
W0
Reserved, write as 0
11
BCN_ACCEPT
0
R/W
Accept all beacon frames when address recognition is enabled.
This bit should be set when the PAN identifier programmed into
CC2420 RAM is equal to 0xFFFF and cleared otherwise. This bit
is don't care when MDMCTRL0.ADR_DECODE = 0.
0 : Only accept beacons with a source PAN identifier which
matches the PAN identifier programmed into CC2420 RAM
1 : Accept all beacons regardless of the source PAN identifier
10
FIFO_POLARITY
0
R/W
Polarity of the output signal FIFO.
0 : Polarity is active high
1 : Polarity is active low
9
FIFOP_POLARITY
0
R/W
Polarity of the output signal FIFOP.
0 : Polarity is active high
1 : Polarity is active low
8
SFD_POLARITY
0
R/W
Polarity of the SFD pin.
0 : Polarity is active high
1 : Polarity is active low
7
CCA_POLARITY
0
R/W
Polarity of the CCA pin.
0 : Polarity is active high
1 : Polarity is active low
6:0
FIFOP_THR[6:0]
64
R/W
FIFOP_THR sets the threshold in number of bytes in the
RXFIFO for FIFOP to go active.
IOCFG1 (0x1D) – I/O Configuration Register 1
Bit
Field Name
Reset
R/W
Description
15:13
-
0
W0
Reserved, write as 0
12:10
HSSD_SRC[2:0]
0
R/W
The HSSD module is used as follows:
0: Off.
1: Output AGC status (gain setting / peak detector status /
accumulator value)
2: Output ADC I and Q values.
3: Output I/Q after digital down mix and channel filtering.
4: Reserved
5: Reserved
6: Input ADC I and Q values
7: Input DAC I and Q values.
The HSSD module requires that the FS is up and running as it
uses CLK_PRE (~150 MHZ) to produce its ~37.5 MHz data clock
and serialize its output words.
9:5
SFDMUX[4:0]
0
R/W
Multiplexer setting for the SFD pin.
4:0
CCAMUX[4:0]
0
R/W
Multiplexer setting for the CCA pin.
MANFIDL (0x1E) - Manufacturer ID, Lower 16 Bit
Bit
Field Name
Reset
R/W
Description
15:12
PARTNUM[3:0]
2
R
The device part number. CC2420 has part number 0x002.
11:0
MANFID[11:0]
0x33D
R
Gives the JEDEC manufacturer ID. The actual manufacturer ID
can be found in MANIFID[7:1], the number of continuation bytes
in MANFID[11:8] and MANFID[0]=1.
Chipcon's JEDEC manufacturer ID is 0x7F 0x7F 0x7F 0x9E
(0x1E preceded by three continuation bytes.)
SWRS041B
Page 72 of 89
CC2420
MANFIDH (0x1F) - Manufacturer ID, Upper 16 Bit
Bit
Field Name
Reset
R/W
Description
15:12
VERSION[3:0]
3
R
Version number. Current version is 3.
Note that previous CC2420 versions will have lower reset values.
11:0
PARTNUM[15:4]
0
R
The device part number. CC2420 has part number 0x002.
FSMTC (0x20) - Finite state machine time constants
Bit
Field Name
Reset
R/W
Description
15:13
TC_RXCHAIN2RX[2:0]
3
R/W
The time in 5 us steps between the time the RX chain is enabled
and the demodulator and AGC is enabled. The RX chain is
started when the bandpass filter has been calibrated (after 6.5
symbol periods).
12:10
TC_SWITCH2TX[2:0]
6
R/W
The time in advance the RXTX switch is set high, before
enabling TX. In µs.
9:6
TC_PAON2TX[3:0]
10
R/W
The time in advance the PA is powered up before enabling TX.
In µs.
5:3
TC_TXEND2SWITCH[2:0]
2
R/W
The time after the last chip in the packet is sent, and the TXRX
switch is disabled. In µs.
2:0
TC_TXEND2PAOFF[2:0]
4
R/W
The time after the last chip in the packet is sent, and the PA is
set in power-down. Also the time at which the modulator is
disabled. In µs.
SWRS041B
Page 73 of 89
CC2420
MANAND (0x21) - Manual signal AND override register1
Bit
Field Name
Reset
R/W
Description
15
VGA_RESET_N
1
R/W
The VGA_RESET_N signal is used to reset the peak detectors in
the VGA in the RX chain.
14
BIAS_PD
1
R/W
Global bias power down (1)
13
BALUN_CTRL
1
R/W
The BALUN_CTRL signal controls whether the PA should
receive its required external biasing (1) or not (0) by controlling
the RX/TX output switch.
12
RXTX
1
R/W
RXTX signal: controls whether the LO buffers (0) or PA buffers
(1) should be used.
11
PRE_PD
1
R/W
Powerdown of prescaler.
10
PA_N_PD
1
R/W
Powerdown of PA (negative path).
9
PA_P_PD
1
R/W
Powerdown of PA (positive path). When PA_N_PD=1 and
PA_P_PD=1 the up-conversion mixers are in powerdown.
8
DAC_LPF_PD
1
R/W
Powerdown of TX DACs.
7
XOSC16M_PD
1
R/W
6
RXBPF_CAL_PD
1
R/W
Powerdown control of complex bandpass receive filter calibration
oscillator.
5
CHP_PD
1
R/W
Powerdown control of charge pump.
4
FS_PD
1
R/W
Powerdown control of VCO, I/Q generator, LO buffers.
3
ADC_PD
1
R/W
Powerdown control of the ADCs.
2
VGA_PD
1
R/W
Powerdown control of the VGA.
1
RXBPF_PD
1
R/W
Powerdown control of complex bandpass receive filter.
0
LNAMIX_PD
1
R/W
Powerdown control of LNA, down-conversion mixers and frontend bias.
1
For some important signals the value used by analog and digital modules can be overridden manually. This is done
as follows for the hypothetical important signal IS:
IS_USED = (IS * IS_AND_MASK) + IS_OR_MASK,
using boolean notation.
The AND-mask and OR-mask for the important signals listed resides in the MANAND and MANOR registers,
respectively.
Examples:
•
Writing 0xFFFE to MANAND and 0x0000 to MANOR will force LNAMIX_PD≡0 whereas all other signals will be
unaffected.
•
Writing 0xFFFF to MANAND and 0x0001 to MANOR will force LNAMIX_PD≡1 whereas all other signals will be
unaffected.
SWRS041B
Page 74 of 89
CC2420
MANOR (0x22) - Manual signal OR override register
Bit
Field Name
Reset
R/W
Description
15
VGA_RESET_N
0
R/W
The VGA_RESET_N signal is used to reset the peak detectors in
the VGA in the RX chain.
14
BIAS_PD
0
R/W
Global Bias power down (1)
13
BALUN_CTRL
0
R/W
The BALUN_CTRL signal controls whether the PA should receive
its required external biasing (1) or not (0) by controlling the
RX/TX output switch.
12
RXTX
0
R/W
RXTX signal: controls whether the LO buffers (0) or PA buffers
(1) should be used.
11
PRE_PD
0
R/W
Powerdown of prescaler.
10
PA_N_PD
0
R/W
Powerdown of PA (negative path).
9
PA_P_PD
0
R/W
Powerdown of PA (positive path). When PA_N_PD=1 and
PA_P_PD=1 the up-conversion mixers are in powerdown.
8
DAC_LPF_PD
0
R/W
Powerdown of TX DACs.
7
XOSC16M_PD
0
6
RXBPF_CAL_PD
0
R/W
Powerdown control of complex bandpass receive filter calibration
oscillator.
5
CHP_PD
0
R/W
Powerdown control of charge pump.
4
FS_PD
0
R/W
Powerdown control of VCO, I/Q generator, LO buffers.
3
ADC_PD
0
R/W
Powerdown control of the ADCs.
2
VGA_PD
0
R/W
Powerdown control of the VGA.
1
RXBPF_PD
0
R/W
Powerdown control of complex bandpass receive filter.
0
LNAMIX_PD
0
R/W
Powerdown control of LNA, down-conversion mixers and frontend bias.
Field Name
Reset
R/W
Description
15:12
-
0
W0
Reserved, write as 0
11
VGA_GAIN_OE
0
R/W
Use the VGA_GAIN value during RX instead of the AGC value.
10:4
VGA_GAIN [6:0]
0x7F
R/W
When written, VGA manual gain override value; when read, the
currently used VGA gain setting.
3:2
LNAMIX_GAINMODE_O
[1:0]
0
R/W
LNA / Mixer Gain mode override setting
LNAMIX_GAINMODE
[1:0]
3
AGCCTRL (0x23) - AGC Control
Bit
1:0
0 : Gain mode is set by AGC algorithm
1 : Gain mode is always low-gain
2 : Gain mode is always med-gain
3 : Gain mode is always high-gain
R
Status bit, defining the currently selected gain mode selected by
the AGC or overridden by the LNAMIX_GAINMODE_O setting.
SWRS041B
Page 75 of 89
CC2420
AGCTST0 (0x24) - AGC Test Register 0
Bit
Field Name
Reset
R/W
Description
15:12
LNAMIX_HYST[3:0]
3
R/W
Hysteresis on the switching between different RF front-end
gain modes, defined in 2 dB steps
11:6
LNAMIX_THR_H[5:0]
25
R/W
Threshold for switching between medium and high RF frontend gain mode, defined in 2 dB steps
5:0
LNAMIX_THR_L[5:0]
9
R/W
Threshold for switching between low and medium RF front-end
gain mode, defined in 2 dB steps
AGCTST1 (0x25) - AGC Test Register 1
Bit
Field Name
Reset
R/W
Description
15
-
0
W0
Reserved, write as 0
14
AGC_BLANK_MODE
0
R/W
Set the VGA blanking mode when switching out a gain stage
When VGA_GAIN_OE = 0:
0 : Blanking is performed when the AGC algorithm switches
out one or more 14dB gain stages.
1 : Blanking is never performed.
When VGA_GAIN_OE = 1:
Blanking is performed when AGC_BLANK_MODE=1
13
PEAKDET_CUR_BOOST
0
R/W
Doubles the bias current in the peak-detectors in-between the
VGA stages when set.
12:11
AGC_SETTLE_WAIT[1:0]
1
R/W
Timing for AGC to wait for analog gain to settle.
10:8
AGC_PEAK_DET_MODE
[2:0]
0
R/W
Sets the AGC mode for use of the VGA peak detectors:
AGC_WIN_SIZE[1:0]
1
7:6
Bit 2 : Digital ADC peak detector enable / disable
Bit 1 : Analog fixed stages peak detector enable /
disable
Bit 0 : Analog variable gain stage peak detector enable /
disable
R/W
Window size for the accumulate and dump function in the
AGC.
0 : 8 samples
1 : 16 samples
2 : 32 samples
3 : 64 samples
5:0
AGC_REF[5:0]
20
R/W
Target value for the AGC control loop, given in 2 dB steps.
Reset value corresponds to approximately 25% of the ADC
dynamic range in reception.
AGCTST2 (0x26) - AGC Test Register 2
Bit
Field Name
Reset
R/W
Description
15:10
-
0
W0
Reserved, write as 0
9:5
MED2HIGHGAIN[4:0]
9
R/W
MED2HIGHGAIN sets the difference in the receiver
LNA/MIXER gain from medium gain mode to high gain mode,
used by the AGC for setting the correct front-end gain mode.
4:0
LOW2MEDGAIN[4:0]
10
R/W
LOW2MEDGAIN sets the difference in the receiver
LNA/MIXER gain from low gain mode to medium gain mode,
used by the AGC for setting the correct front-end gain mode.
SWRS041B
Page 76 of 89
CC2420
FSTST0 (0x27) - Frequency Synthesizer Test Register 0
Bit
Field Name
Reset
R/W
Description
15:12
-
0
W0
Reserved, write as 0
11
VCO_ARRAY_SETTLE_LONG
0
R/W
When '1' this control bit doubles the time allowed for VCO
settling during VCO calibration.
10
VCO_ARRAY_OE
0
R/W
VCO array manual override enable.
9:5
VCO_ARRAY_O[4:0]
16
R/W
VCO array override value.
4:0
VCO_ARRAY_RES[4:0]
16
R
The VCO array result holds the register content of the most
recent calibration.
FSTST1 (0x28) - Frequency Synthesizer Test Register 1
Bit
Field Name
Reset
R/W
Description
15
VCO_TX_NOCAL
0
R/W
0 : VCO calibration is always performed when going to RX or
when going to TX.
1 : VCO calibration is only performed when going to RX or when
using the STXCAL command strobe
14
VCO_ARRAY_CAL_LONG
1
R/W
When ‘1’ this control bit doubles the time allowed for VCO
frequency measurements during VCO calibration.
0 : PLL Calibration time is 37 us
1 : PLL Calibration time is 57 us
13:10
VCO_CURRENT_REF[3:0]
4
R/W
The value of the reference current calibrated against during VCO
calibration.
9:4
VCO_CURRENT_K[5:0]
0
R/W
VCO current calibration constant. (Current B override value
when FSTST2.VCO_CURRENT_OE=1.)
3
VC_DAC_EN
0
R/W
Controls the source of the VCO VC node in normal operation
(TOPTST.VC_IN_TEST_EN=0):
0: Loop filter (closed loop PLL)
1: VC DAC (open loop PLL)
2:0
VC_DAC_VAL[2:0]
2
R/W
VC DAC output value
FSTST2 (0x29) - Frequency Synthesizer Test Register 2
Bit
Field Name
Reset
R/W
Description
15
-
0
W0
Reserved, write as 0.
14:13
VCO_CURCAL_SPEED[1:0]
0
R/W
VCO current calibration speed:
0: Normal
1: Double speed
2: Half speed
3: Undefined.
12
VCO_CURRENT_OE
0
R/W
VCO current manual override enable.
11:6
VCO_CURRENT_O[5:0]
24
R/W
VCO current override value (current A).
5:0
VCO_CURRENT_RES[5:0]
32
R
The VCO current result holds the register content of the most
recent calibration.
SWRS041B
Page 77 of 89
CC2420
FSTST3 (0x2A) - Frequency Synthesizer Test Register 3
Bit
Field Name
Reset
R/W
Description
15
CHP_CAL_DISABLE
1
R/W
Disable charge pump during VCO calibration when set.
14
CHP_CURRENT_OE
0
R/W
Charge pump current override enable
0 : Charge pump current set by calibration
1 : Charge pump current set by START_CHP_CURRENT
13
CHP_TEST_UP
0
R/W
Forces the CHP to output "up" current when set
12
CHP_TEST_DN
0
R/W
Forces the CHP to output "down" current when set
11
CHP_DISABLE
0
R/W
Set to manually disable charge pump by masking the up and
down pulses from the phase-detector.
10
PD_DELAY
0
R/W
Selects short or long reset delay in phase detector:
0: Short reset delay
1: Long reset delay
9:8
CHP_STEP_PERIOD[1:0]
2
R/W
The charge pump current value step period:
0: 0.25 us
1: 0.5 us
2: 1 us
3: 4 us
7:4
STOP_CHP_CURRENT[3:0]
13
R/W
The charge pump current to stop at after the current is stepped
down from START_CHP_CURRENT after VCO calibration is
complete. The current is stepped down periodically with intervals
as defined in CHP_STEP_PERIOD.
3:0
START_CHP_CURRENT[3:0]
13
R/W
The charge pump current to start with after VCO calibration is
complete. The current is then stepped down periodically to the
value STOP_CHP_CURRENT with intervals as defined in
CHP_STEP_PERIOD.
Also used for overriding the charge pump current when
CHP_CURRENT_OE=’1’
RXBPFTST (0x2B) - Receiver Bandpass Filters Test Register
Bit
Field Name
Reset
R/W
Description
15
-
0
W0
Reserved, write as 0.
14
RXBPF_CAP_OE
0
R/W
RX bandpass filter capacitance calibration override enable.
13:7
RXBPF_CAP_O[6:0]
0
R/W
RX bandpass filter capacitance calibration override value.
6:0
RXBPF_CAP_RES[6:0]
0
R
RX bandpass filter capacitance calibration result.
0: Minimum capacitance in the feedback.
1: Second smallest capacitance setting.
…
127: Maximum capacitance in the feedback.
FSMSTATE (0x2C) - Finite state machine information
Bit
Field Name
Reset
R/W
Description
15:6
-
0
W0
Reserved, write as 0.
5:0
FSM_CUR_STATE[5:0]
0
R
Provides the current state of the FIFO and Frame Control
(FFCTRL) finite state machine. See the Radio control state
machine section on page 43 for details.
SWRS041B
Page 78 of 89
CC2420
ADCTST (0x2D) - ADC Test Register
Bit
15
Field Name
Reset
R/W
Description
ADC_CLOCK_DISABLE
0
R/W
ADC Clock Disable
0 : Clock enabled when ADC enabled
1 : Clock disabled, even if ADC is enabled
14:8
ADC_I[6:0]
0
R
Read the current ADC I-branch value.
7
-
0
W0
Reserved, write as 0.
6:0
ADC_Q[6:0]
0
R
Read the current ADC Q-branch value.
DACTST (0x2E) - DAC Test Register
Field Name
Reset
R/W
Description
15
-
0
W0
Reserved, write as 0.
14:12
DAC_SRC[2:0]
0
R/W
The TX DACs data source is selected by DAC_SRC according
to:
Bit
0: Normal operation (from modulator).
1: The DAC_I_O and DAC_Q_O override values below.2: From ADC, most significant bits
3: I/Q after digital down mixing and channel filtering.
4: Full-spectrum White Noise (from CRC)
5: From ADC, least significant bits
6: RSSI / Cordic Magnitude Output
7: HSSD module.
This feature will often require the DACs to be manually turned on
in MANOR and TOPTST.ATESTMOD_MODE=4.
11:6
DAC_I_O[5:0]
0
R/W
I-branch DAC override value.
5:0
DAC_Q_O[5:0]
0
R/W
Q-branch DAC override value.
SWRS041B
Page 79 of 89
CC2420
TOPTST (0x2F) - Top Level Test Register
Bit
Field Name
Reset
R/W
Description
15:8
-
0
W0
Reserved, write as 0.
7
RAM_BIST_RUN
0
R/W
Enable BIST of the RAM
0 : RAM BIST disabled, normal operation
1 : RAM BIST Enabled. Result output to pin, as set in IOCFG1.
6
TEST_BATTMON_EN
0
R/W
Enable test output of the battery monitor.
5
VC_IN_TEST_EN
0
R/W
When ATESTMOD_MODE=7 this controls whether the ATEST2
in is used to output the VC node voltage (0) or to control the VC
node voltage (1).
4
ATESTMOD_PD
1
R/W
Powerdown of analog test module.
0 : Power up
1 : Power down
3:0
ATESTMOD_MODE[3:0]
When ATESTMOD_PD=0, the function of the analog test module
is as follows:
0
0: Outputs “I” (ATEST1) and “Q” (ATEST2) from RxMIX.
1: Inputs “I” (ATEST2) and “Q” (ATEST1) to BPF.
2: Outputs “I” (ATEST1) and “Q” (ATEST2) from VGA.
3: Inputs “I” (ATEST2) and “Q” (ATEST1) to ADC.
4: Outputs “I” (ATEST1) and “Q” (ATEST2) from LPF.
5: Inputs “I” (ATEST2) and “Q” (ATEST1) to TxMIX.
6: Outputs “P” (ATEST1) and “N” (ATEST2) from Prescaler. Must
be terminated externally.
7: Connects TX IF to RX IF and simultaneously the ATEST1 pin
to the internal VC node (see VC_IN_TEST_EN).
8. Connect ATEST1 (input) to ATEST2 (output) through
single2diff and diff2single buffers, used for measurements on the
test-interface
RESERVED (0x30) - Reserved register containing spare control and status bits
Bit
15:0
Field Name
Reset
R/W
Description
RES[15:0]
0
R/W
Reserved for future use
TXFIFO (0x3E) – Transmit FIFO Byte register
Bit
7:0
Field Name
Reset
R/W
Description
TXFIFO[7:0]
0
W
Transmit FIFO byte register, write only. Reading the TXFIFO is
only possible using RAM read. Note that the crystal oscillator
must be running for writing to the TXFIFO.
RXFIFO (0x3F) – Receive FIFO Byte register
Bit
7:0
Field Name
Reset
R/W
Description
RXFIFO[7:0]
0
R/W
Receive FIFO byte register, read / write. Note that the crystal
oscillator must be running for accessing the RXFIFO.
SWRS041B
Page 80 of 89
CC2420
38 Test Output Signals
The two digital output pins CCA and SFD,
can be set up to output test signals
defined
by
IOCFG1.CCAMUX
and
IOCFG1.SFDMUX. This is summarized in
Table 12 and Table 13 below.
CCAMUX
Signal output on CCA pin
Description
0
CCA
Normal operation
1
ADC_Q[0]
ADC, Q-branch, LSB used for random number generation
2
DEMOD_RESYNC_LATE
High one 16 MHz clock cycle each time the demodulator
resynchronises late
3
LOCK_STATUS
Lock status, same as FSCTRL.LOCK_STATUS
4
MOD_CHIPCLK
Chip rate clock signal during transmission
5
MOD_SERIAL_CLK
Bit rate clock signal during transmission
6
FFCTRL_FS_PD
Frequency synthesizer power down, active high
7
FFCTRL_ADC_PD
ADC power down, active high
8
FFCTRL_VGA_PD
VGA power down, active high
9
FFCTRL_RXBPF_PD
Receiver bandpass filter power down, active high
10
FFCTRL_LNAMIX_PD
Receiver LNA / Mixer power down, active high
11
FFCTRL_PA_P_PD
Power amplifier power down, active high
12
AGC_UPDATE
High one 16 MHz clock cycle each time the AGC updates its gain
setting
13
VGA_PEAK_DET[1]
VGA Peak detector, gain stage 1
14
VGA_PEAK_DET[3]
VGA Peak detector, gain stage 3
15
AGC_LNAMIX_GAINMODE[1]
RF receiver front-end gain mode, bit 1
16
AGC_VGA_GAIN[1]
VGA gain setting, bit 1
17
VGA_RESET_N
VGA peak-detector reset sign, active low.
18
-
Reserved
19
-
Reserved
20
-
Reserved
21
-
Reserved
22
-
Reserved
23
CLK_8M
8 MHz clock signal output
24
XOSC16M_STABLE
16 MHz crystal oscillator stabilised, same as the status bit in Table
5
25
FSDIG_FREF
Frequency synthesizer, 4 MHz reference signal
26
FSDIG_FPLL
Frequency synthesizer, 4 MHz divided signal
27
FSDIG_LOCK_WINDOW
Frequency synthesizer, lock window
28
WINDOW_SYNC
Frequency synthesizer, synchronized lock window
29
CLK_ADC
ADC clock signal 1
30
ZERO
Low
31
ONE
High
Table 12. CCA test signal select table
SWRS041B
Page 81 of 89
CC2420
SFDMUX
Signal output on SFD pin
Description
0
SFD
Normal operation
1
ADC_I[0]
ADC, I-branch, LSB used for random number generation
2
DEMOD_RESYNCH_EARLY
High one 16 MHz clock cycle each time the demodulator
resynchronises early
3
LOCK_STATUS
Lock status, same as FSCTRL.LOCK_STATUS
4
MOD_CHIP
Chip rate data signal during transmission
5
MOD_SERIAL_DATA_OUT
Bit rate data signal during transmission
6
FFCTRL_FS_PD
Frequency synthesizer power down, active high
7
FFCTRL_ADC_PD
ADC power down, active high
8
FFCTRL_VGA_PD
VGA power down, active high
9
FFCTRL_RXBPF_PD
Receiver bandpass filter power down, active high
10
FFCTRL_LNAMIX_PD
Receiver LNA / Mixer power down, active high
11
FFCTRL_PA_P_PD
Power amplifier power down, active high
12
VGA_PEAK_DET[0]
VGA Peak detector, gain stage 0
13
VGA_PEAK_DET[2]
VGA Peak detector, gain stage 2
14
VGA_PEAK_DET[4]
VGA Peak detector, gain stage 4
15
AGC_LNAMIX_GAINMODE[0]
RF receiver front-end gain mode, bit 0
16
AGC_VGA_GAIN[0]
VGA gain setting, bit 0
17
RXBPF_CAL_CLK
Receiver bandpass filter calibration clock
18
-
Reserved
19
-
Reserved
20
-
Reserved
21
-
Reserved
22
-
Reserved
23
-
Reserved
24
PD_F_COMP
Frequency synthesizer frequency comparator value
25
FSDIG_FREF
Frequency synthesizer, 4 MHz reference signal
26
FSDIG_FPLL
Frequency synthesizer, 4 MHz divided signal
27
FSDIG_LOCK_WINDOW
Frequency synthesizer, lock window
28
WINDOW_SYNC
Frequency synthesizer, synchronized lock window
29
CLK_ADC_DIG
ADC clock signal 2
30
ZERO
Low
31
ONE
High
Table 13. SFD test signal select table
SWRS041B
Page 82 of 89
CC2420
39 Package Description (QLP 48)
Note: The figure is an illustration only and not to scale.
Quad Leadless Package (QLP)
QLP 48
Min
Max
D
D1
E
E1
6.9
6.65
6.9
6.65
7.0
6.75
7.0
6.75
7.1
6.85
7.1
6.85
e
b
L
D2
E2
0.18
0.3
5.05
5.05
0.4
5.10
5.10
0.5
5.15
5.15
0.5
0.30
The overall packet height is 0.85 +/- 0.05
All dimensions in mm
The package is compliant to JEDEC standard MO-220.
SWRS041B
Page 83 of 89
CC2420
40 Recommended layout for package (QLP 48)
Note: The figure is an illustration only and not to scale. There are nine 14 mil diameter via
holes distributed symmetrically in the ground pad under the package. See also the CC2420
EM reference design.
40.1 Package thermal properties
Thermal resistance
Air velocity [m/s]
0
Rth,j-a [K/W]
25.6
40.2 Soldering information
Recommended soldering profile is according to IPC/JEDEC J-STD-020C.
SWRS041B
Page 84 of 89
CC2420
40.3 Plastic tube specification
QLP 7x7mm antistatic tube.
Tube Specification
Package
Tube Width
Tube Height
Tube Length
Units per Tube
QLP 48
8.5 ± 0.2 mm
2.2 +0.2/-0.1 mm
315 ± 1.25 mm
43
40.4 Carrier tape and reel specification
Carrier tape and reel is in accordance with EIA Specification 481.
Tape and Reel Specification
Package
Tape Width
Component
Pitch
Hole
Pitch
Reel
Diameter
Units per Reel
QLP 48
16 mm
12 mm
4 mm
13 inch
4000
41 Ordering Information
Chipcon Part
Number
TI Part Number
Description
Minimum Order
Quantity (MOQ)
CC2420-RTB1
CC2420RTC
Single-chip RF Transceiver. CC2420, QLP48 package, RoHS
compliant Pb-free assembly in tubes with 43 pcs per tube.
43 (tube)
CC2420-RTR1
CC2420RTCR
Single-chip RF Transceiver.. CC2420, QLP48 package, RoHS
compliant Pb-free assembly, T&R with 4000 pcs per reel.
4000 (tape and reel)
CC2420Z-RTB1
CC2420ZRTC
Single-chip RF Transceiver including royalty for using TI’s
ZigBee Software Stack, Z-Stack™, in an end product. CC2420,
QLP48 package, RoHS compliant Pb-free assembly in tubes
with 43 pcs per tube.
43 (tube)
CC2420Z-RTR1
CC2420ZRTCR
Single-chip RF Transceiver including royalty for using TI’s
ZigBee Software Stack, Z-Stack™, in an end product. CC2420,
QLP48 package, RoHS compliant Pb-free assembly, T&R with
4000 pcs per reel
4000 (tape and reel)
CC2420ZDK
CC2420ZDK
CC2420ZDK ZigBee Development Kit
1
CC2420ZDK-Pro
CC2420ZDK-Pro
CC2420ZDK-Pro ZigBee Development Kit Pro
1
CC2420DBK
CC2420DBK
CC2420DBK Demonstration Board Kit
1
CC2420DK
CC2420DK
CC2420DK Development Kit
1
CC2420EMK
CC2420EMK
CC2420DBK Evaluation Module Kit
1
SWRS041B
Page 85 of 89
CC2420
42 General Information
42.1 Document History
Revision
Date
Description/Changes
SWRS041b
2007-03-19
Slightly changed optimum load impedance on Page 9 and 19 to better describe the
Application circuit.
SWRS041a
2006-12-18
Updated ordering information.
Updated address information.
Typical data latency changed from 2 to 3 us.
Updates reflecting the programmable polarity of FIFO, FIFOP, SFD and CCA pins.
Clarification relating to VREG_EN as digital input.
BATT_OK changed to BATTMON_OK for consistency.
MANFIDH.VERSION register, reset value changed to ”current version is 3”.
Added reset values for several registers.
Some typographical changes.
Removed Chipcon specific Disclaimer, Trademarks and Life Support Policy sections.
SWRS041
2006-04-06
Ordering part number changed from CC2420-RTB2 and CC2420-RTR2 to CC2420ZRTB1 and CC2420Z-RTR1 respectively.
2005-10-03
Important: New recommended setting for RXBPF_LOCUR in RXCTRL1 (0x17) use 1
instead of reset value 0.
Updated address information.
Added new balun circuit with transmission lines in section Application Circuit.
Updated electrical specifications with measured data on CC2420 EM with new balun.
Updated values and figure for suggested application circuit with folded dipole
antenna.
Corrected values for capacitors in Table 2, discrete balun.
Added data latency figure in receiver specification.
Updated crystal oscillator start up time.
Updated PLL loop filter bandwidth.
Updated adjacent channel rejection figures.
Updated current consumption for RX mode.
Typographical errors corrected in text and figures.
Removed comment about tuning capacitor for crystal oscillator.
Added statement that RAM access shall not be used for FIFO access.
Added more details about RSSI.
Clarified the interpretation of a programmed synchronisation word.
Updated purchasing information.
Updated soldering standard.
Added chapter numbering and split table for electrical specifications for readability.
Gathered and added information related to pin configurations in section 13.
Included TX_UNDERFLOW and RX_UNDERFLOW in state diagram.
TM
Disclaimer updated to include Z-stack information.
Product status changed to “Full Production”.
(1.4)
1.3
SWRS041B
Page 86 of 89
CC2420
Revision
Date
Description/Changes
1.2
2004-06-09
Output power range: 24 dB (was 40 dB).
Deleted option for single ended external PA.
Adjacent channel rejection corrected to 46 dB for + 5MHz (was 39 dB), 39 dB for –5
MHz (was 46 dB) 58 dB for +10 MHz (was 53 dB) and 55 dB for-10 MHz (was 57 dB).
“image channel” deleted in text for In band spurious reception.
Revision for reference [1] updated.
CSMA-CA added to abbreviations.
Schematic view of the IEEE 802.15.4 Frame Format corrected, address field 0 to 20
bits.
Changed blocking specifications to relate to EN 300 440 class 2.
Updated addresses for Chipcon offices.
Added section Operating Conditions.
Section RAM access: A6:0 (LSB).
IOCFG0.BCN_ACCEPT bit added and described in section Address recognition and
the IOCFG0 register.
The previous IDLE mode has been renamed to power down to be consistent with
other Chipcon data sheets. Three power modes defined: Voltage regulator off (OFF),
Power down (PD) (Voltage regulator enabled), IDLE (XOSC running) and used
throughout the document.
Default TXMIXBUF_CUR[1:0] in table for TXCTRL set to 2.
Added information: compliance with EN 300 328 og EN 300 440 (Class 2).
Added more information about FIFOP in section Receive mode.
Removed text about SO programmable pull up from entire document.
In Voltage regulator section of Electrical Specifications: voltage regulator may only
supply CC2420.
MANFIDH.VERSION register, changed to ”current version is 2”.
Included package height in package drawing.
Included layout drawing for package.
Power supply pins defined clearer in Absolute maximum ratings.
Third harmonic level corrected to –51dBm in Electrical specifications, second
harmonic to –37dBm.
Table with Crystal oscillator component values corrected.
Link to reference [3] corrected.
Corrected spelling grammar and references to tables and figures.
Figure showing SmartRF Studio user interface included.
Added figure to describe pin activity during RXFIFO read out.
Added description on how to connect pins when not using internal regulator.
1.1
2004-03-22
Application circuits: Pin 20 and pin 37 connected to 1.8 V from VREG_OUT.
IOCFG0.SO_PULLUP deleted.
Added document history table.
1.0
2003-11-17
Initial release.
42.2 Product Status Definitions
Data Sheet Identification
Product Status
Definition
Advance Information
Planned or Under
Development
This data sheet contains the design specifications for
product development. Specifications may change in
any manner without notice.
Preliminary
Engineering Samples
and First Production
This data sheet contains preliminary data, and
supplementary data will be published at a later date.
Chipcon reserves the right to make changes at any
time without notice in order to improve design and
supply the best possible product.
No Identification Noted
Full Production
This data sheet contains the final specifications.
Chipcon reserves the right to make changes at any
time without notice in order to improve design and
supply the best possible product.
Obsolete
Not In Production
This data sheet contains specifications on a product
that has been discontinued by Chipcon. The data
sheet is printed for reference information only.
SWRS041B
Page 87 of 89
CC2420
43 Address Information
Texas Instruments Norway AS
Gaustadalléen 21
N-0349 Oslo
NORWAY
Tel: +47 22 95 85 44
Fax: +47 22 95 85 46
Web site: http://www.ti.com/lpwrf
44 TI Worldwide Technical Support
Internet
TI Semiconductor Product Information Center Home Page:
TI Semiconductor KnowledgeBase Home Page:
support.ti.com
support.ti.com/sc/knowledgebase
Product Information Centers
Americas
Phone:
+1(972) 644-5580
Fax:
+1(972) 927-6377
Internet/Email:
support.ti.com/sc/pic/americas.htm
Europe, Middle East and Africa
Phone:
Belgium (English)
Finland (English)
France
Germany
Israel (English)
Italy
Netherlands (English)
Russia
Spain
Sweden (English)
United Kingdom
+32 (0) 27 45 54 32
+358 (0) 9 25173948
+33 (0) 1 30 70 11 64
+49 (0) 8161 80 33 11
180 949 0107
800 79 11 37
+31 (0) 546 87 95 45
+7 (0) 95 363 4824
+34 902 35 40 28
+46 (0) 8587 555 22
+44 (0) 1604 66 33 99
Fax:
+49 (0) 8161 80 2045
Internet:
support.ti.com/sc/pic/euro.htm
Japan
Fax
International
Domestic
+81-3-3344-5317
0120-81-0036
Internet/Email
International
Domestic
support.ti.com/sc/pic/japan.htm
www.tij.co.jp/pic
SWRS041B
Page 88 of 89
CC2420
Asia
Phone
International
Domestic
Australia
China
Hong Kong
India
Indonesia
Korea
Malaysia
New Zealand
Philippines
Singapore
Taiwan
Thailand
+886-2-23786800
Toll-Free Number
1-800-999-084
800-820-8682
800-96-5941
+91-80-51381665 (Toll)
001-803-8861-1006
080-551-2804
1-800-80-3973
0800-446-934
1-800-765-7404
800-886-1028
0800-006800
001-800-886-0010
Fax
+886-2-2378-6808
Email
[email protected] or [email protected]
Internet
support.ti.com/sc/pic/asia.htm
© 2007, Texas Instruments. All rights reserved.
SWRS041B
Page 89 of 89
PACKAGE MATERIALS INFORMATION
www.ti.com
16-Feb-2012
TAPE AND REEL INFORMATION
*All dimensions are nominal
Device
CC2420RTCR
Package Package Pins
Type Drawing
VQFN
RTC
48
SPQ
Reel
Reel
A0
Diameter Width (mm)
(mm) W1 (mm)
2500
330.0
16.4
Pack Materials-Page 1
7.3
B0
(mm)
K0
(mm)
P1
(mm)
W
Pin1
(mm) Quadrant
7.3
1.5
12.0
16.0
Q2
PACKAGE MATERIALS INFORMATION
www.ti.com
16-Feb-2012
*All dimensions are nominal
Device
Package Type
Package Drawing
Pins
SPQ
Length (mm)
Width (mm)
Height (mm)
CC2420RTCR
VQFN
RTC
48
2500
336.6
336.6
28.6
Pack Materials-Page 2
IMPORTANT NOTICE
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, improvements,
and other changes to its products and services at any time and to discontinue any product or service without notice. Customers should
obtain the latest relevant information before placing orders and should verify that such information is current and complete. All products are
sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment.
TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI’s standard
warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where
mandated by government requirements, testing of all parameters of each product is not necessarily performed.
TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and
applications using TI components. To minimize the risks associated with customer products and applications, customers should provide
adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask work right,
or other TI intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information
published by TI regarding third-party products or services does not constitute a license from TI to use such products or services or a
warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual
property of the third party, or a license from TI under the patents or other intellectual property of TI.
Reproduction of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied
by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair and deceptive
business practice. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional
restrictions.
Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service voids all
express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice. TI is not
responsible or liable for any such statements.
TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product would reasonably
be expected to cause severe personal injury or death, unless officers of the parties have executed an agreement specifically governing
such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramifications of their applications, and
acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related requirements concerning their products
and any use of TI products in such safety-critical applications, notwithstanding any applications-related information or support that may be
provided by TI. Further, Buyers must fully indemnify TI and its representatives against any damages arising out of the use of TI products in
such safety-critical applications.
TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products are
specifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet military
specifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade is solely at
the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in connection with such use.
TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI products are
designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any non-designated
products in automotive applications, TI will not be responsible for any failure to meet such requirements.
Following are URLs where you can obtain information on other Texas Instruments products and application solutions:
Products
Applications
Audio
www.ti.com/audio
Automotive and Transportation www.ti.com/automotive
Amplifiers
amplifier.ti.com
Communications and Telecom www.ti.com/communications
Data Converters
dataconverter.ti.com
Computers and Peripherals
www.ti.com/computers
DLP® Products
www.dlp.com
Consumer Electronics
www.ti.com/consumer-apps
DSP
dsp.ti.com
Energy and Lighting
www.ti.com/energy
Clocks and Timers
www.ti.com/clocks
Industrial
www.ti.com/industrial
Interface
interface.ti.com
Medical
www.ti.com/medical
Logic
logic.ti.com
Security
www.ti.com/security
Power Mgmt
power.ti.com
Space, Avionics and Defense
www.ti.com/space-avionics-defense
Microcontrollers
microcontroller.ti.com
Video and Imaging
www.ti.com/video
RFID
www.ti-rfid.com
OMAP Mobile Processors
www.ti.com/omap
Wireless Connectivity
www.ti.com/wirelessconnectivity
TI E2E Community Home Page
e2e.ti.com
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2012, Texas Instruments Incorporated