03.07.2014 Views

nRF240x ShockBurst™ technology - SemiconductorStore.com

nRF240x ShockBurst™ technology - SemiconductorStore.com

nRF240x ShockBurst™ technology - SemiconductorStore.com

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

:+,7(3$3(5<br />

<strong>nRF240x</strong> ShockBurst <strong>technology</strong><br />

<br />

'HVFULSWLRQRIWKH6KRFN%XUVWŒWHFKQRORJ\<br />

The <strong>nRF240x</strong> family from Nordic VLSI ASA has two different modes of operation,<br />

direct mode and ShockBurst mode. This document will describe the ShockBurst<br />

mode to clarify how the ShockBurst <strong>technology</strong> works and explain the advantages<br />

of its use.<br />

The whole idea with the ShockBurst <strong>technology</strong> is to put as much low level<br />

protocol handling into the nRF chip as possible without removing any flexibility from<br />

the user.<br />

<br />

6KRFN%XUVWŒDGYDQWDJHV<br />

8VHRIORZFRVWPLFURFRQWUROOHUV<br />

Even if the <strong>nRF240x</strong> devices uses a bit rate of 1Mbit/s on the air, is it possible for a<br />

low cost micro-controller to handle and operate a RF system based on these devices.<br />

A low cost micro-controller can look at the <strong>nRF240x</strong> device as a “advanced register”<br />

where data that shall be transmitted just has to be clocked in at a speed set by the<br />

micro-controller it self.<br />

In receive mode it is even simpler, the micro-controller will be notified by the<br />

nRF2401 when a valid packet has arrived, and can then clock out the data at its own<br />

speed. In both cases there are no need for precise timing or high speed operation. This<br />

will give the user the possibility to utilise a low cost micro-controller with a internal<br />

RC oscillator, removing the need for an external crystal on the micro-controller.<br />

Since the nRF2401 is doing all the low level protocol handling, like bit sampling,<br />

address checking and checksum calculation the micro-controller will not be loaded<br />

with this kind of work. This will again lead to the fact that the micro-controller can<br />

run on a even lower speed to perform its duties, making it possible to choose among<br />

the cheapest micro-controllers there is.<br />

/RZFXUUHQWFRQVXPSWLRQ<br />

Lets imagine that a micro-controller is limited to clock data in and out at a speed of<br />

10kbit/s. Put this micro-controller in a design together with a transparent radio. Lets<br />

also imagine that this radio has a current consumption of 8mA when transmitting.<br />

Lets then calculate the energy per transmitted bit that this system uses:<br />

8mA/10kbit/s=0.8uAs/bit.<br />

Lets then look at the same micro-controller used together with a <strong>nRF240x</strong> device in<br />

ShockBurst mode: The <strong>nRF240x</strong> has a speed of 1Mbit/s on air. Since the <strong>nRF240x</strong><br />

stays in sleep mode when the packet is clocked into its Data Out Register, it will only<br />

Nordic VLSI ASA - Vestre Rosten 81, N-7075 Tiller, Norway - Phone +4772898900 - Fax +4772898989<br />

3DJHÃÃRIÃ February 2003


WHITE PAPER<br />

use current when transmitting the packet. The <strong>nRF240x</strong> device uses 8mA in transmit<br />

mode, but since the bit rate on air is 1Mbit/s it will use only 8mA/1Mbit/s=8nAs/bit,<br />

that is 1/100 times the energy used by the first design. This means that the design with<br />

the <strong>nRF240x</strong> device will be able to use a given battery 100 times longer than the other<br />

design, transmitting the same amount of data.<br />

In addition to the fact that the <strong>nRF240x</strong> will use very little energy per transmitted bit,<br />

current will also be saved due to the fact that the micro-controller can hibernate when<br />

the <strong>nRF240x</strong> is receiving or transmitting data. This is not possible without the<br />

ShockBurst <strong>technology</strong>.<br />

9HU\ORZV\VWHPFRVW<br />

Since the ShockBurst <strong>technology</strong> makes it possible to use a low cost microcontroller<br />

with just a internal RC oscillator, the need for external <strong>com</strong>ponents around<br />

the micro-controller will be kept to a minimum. The <strong>nRF240x</strong> it self has also very few<br />

external <strong>com</strong>ponents, so the total bill of material will be extremely low. The low<br />

energy per transmitted bit will open for use of less expensive battery <strong>technology</strong>.<br />

<br />

3K\VLFDOFRQQHFWLRQ<br />

nRF2401<br />

Chip Enable (CE)<br />

Chip Select (CS)<br />

Data Ready (DR1)<br />

Clock (Clk)<br />

Data<br />

Low-Cost<br />

8-bit uC<br />

Figure 1: Physical connection of a nRF2401 and a low-cost uC.<br />

A micro-controller that is going to operate the nRF2401 in ShockBurst mode has to<br />

use five general I/O pins for interfacing the nRF2401. The five signals it has to<br />

operate are shown in Figure 1. A more detailed description of how to use these signals<br />

can be found in the nRF2401 data sheet.<br />

Before operating the <strong>nRF240x</strong> in ShockBurst mode, it has to be configured. Please<br />

refer to the nRF2401 data sheet for description on how this is done.<br />

Nordic VLSI ASA - Vestre Rosten 81, N-7075 Tiller, Norway - Phone +4772898900 - Fax +4772898989<br />

3DJHÃÃRIÃ February 2003


WHITE PAPER<br />

<br />

7KH6KRFN%XUVWŒWHFKQRORJ\WUDQVPLWPRGH<br />

Inside the nRF2401 we have the ShockBurst Engine (SBE.)<br />

nRF2401/2402 ShockBurst Engine<br />

Chip Enable<br />

CRC<br />

Calculator<br />

7RÃPRGXODWRU<br />

Data Out Register<br />

Clock<br />

Data<br />

Figure 2: The ShockBurst Engine in transmit mode.<br />

In transmit mode the ShockBurst Engine works like this:<br />

1. The external low cost micro-controller will first of all configure the nRF device to<br />

use the right channel, output power and if it is going to use Cyclic Redundant<br />

Check (CRC) or not.<br />

2. The micro-controller decides that it will transmit a packet via the <strong>nRF240x</strong> device,<br />

and pulls the Chip Enable signal high.<br />

3. The micro-controller clocks its packet into the Data Out Register, using the Clock<br />

and Data pin on the <strong>nRF240x</strong>. The packet contains receivers address and the<br />

payload.<br />

4. If CRC is enabled, the SBE will calculate the CRC of the data that is being<br />

clocked in, and the result will be attached to the transmitted packet.<br />

5. Transmission of the packet will start 202us after the Chip Enable signal has been<br />

pulled low by the micro-controller.<br />

Nordic VLSI ASA - Vestre Rosten 81, N-7075 Tiller, Norway - Phone +4772898900 - Fax +4772898989<br />

3DJHÃÃRIÃ February 2003


WHITE PAPER<br />

<br />

7KH6KRFN%XUVWŒWHFKQRORJ\UHFHLYHPRGH<br />

%LWÃUHFRYHU\<br />

FON<br />

)URP<br />

'HPRG<br />

nRF2401 ShockBurst Engine<br />

256 bit FIFO<br />

CRC<br />

Calculator<br />

Own Address<br />

(up to 40 bits)<br />

Data Ready<br />

(DR1)<br />

Clock<br />

Data Out Register<br />

Data<br />

Figure 3: The ShockBurst Engine in receive mode<br />

This is how the ShockBurst Engine works in receive mode:<br />

1. The external low cost micro-controller will before operation configure the<br />

nRF2401. During this configuration the nRF2401 will be told what is its own<br />

address, what packet length it shall receive, what bit rate (250kbit/s or 1Mbit/s) it<br />

shall use on air and if it shall perform CRC or not. In this case we assume that<br />

own address is N bits wide, the packet is P long and it shall perform CRC. After<br />

configuration of the nRF2401, the low cost micro-controller can go into<br />

hibernation.<br />

2. At this moment a transmitter starts to transmit a packet to this receiver.<br />

3. From the nRF2401 demodulator the bits are clocked into a 256 bit wide First In<br />

First Out (FIFO) register at the same bit rate that is used on air.<br />

4. Every time a new bit is clocked into the FIFO register from the demodulator, the<br />

N first bits in the FIFO will be <strong>com</strong>pared with own address.<br />

5. If the bits match the CRC calculator will calculate the checksum of the whole<br />

packet and <strong>com</strong>pare if the result is equal to the CRC bits in the received packet. If<br />

the CRC does not match, the SBE will continue to <strong>com</strong>pare in<strong>com</strong>ing bits with<br />

own address until a new match is found, and then repeat the CRC calculation.<br />

6. If both address and CRC match, the payload part of the packet, that is the whole<br />

packet except the N address bits and the CRC bits, will be copied into the Data<br />

Out Register. At the same time the Data Ready (DR1) signal will be set high.<br />

7. The external low cost micro-controller with the DR1 signal connected to one of its<br />

interrupt I/O pins can now wake up from its hibernating state, knowing that a new<br />

packet of data has arrived.<br />

8. The micro-controller can now generate a clock signal on the clock pin on the<br />

nRF2401, and the received payload will be clocked out from the Data Out<br />

Register. When the whole payload is clocked out, the DR1 signal will go low. The<br />

Nordic VLSI ASA - Vestre Rosten 81, N-7075 Tiller, Norway - Phone +4772898900 - Fax +4772898989<br />

3DJHÃÃRIÃ February 2003


WHITE PAPER<br />

low cost micro-controller can do this clocking at its own speed making it possible<br />

to use a micro-controller with a slow internal RC oscillator.<br />

Nordic VLSI ASA - Vestre Rosten 81, N-7075 Tiller, Norway - Phone +4772898900 - Fax +4772898989<br />

3DJHÃÃRIÃ February 2003


WHITE PAPER<br />

/,$%,/,7


WHITE PAPER<br />


WHITE PAPER<br />

1RUGLF9/6,:RUOG:LGH'LVWULEXWRU<br />

)RU

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

Saved successfully!

Ooh no, something went wrong!