Professional Documents
Culture Documents
Network ?
WSN consists of spatially
distributed autonomous
sensors to cooperatively
monitor physical or
environmental
conditions.
battlefield surveillance.
Now :
Healthcare applications
Traffic control.
Smartdust – An instance of
WSN
Is a hypothetical system of many tiny
microelectromechanical systems
(MEMS) such as sensors, robots, or
other devices, that can detect light,
temperature, vibration, magnetism or
chemicals.
Component has:
Frame (storage) Messaging Component
Int
er
nal
Tasks Internal Tasks St
at
(computation)
e
Command and
Commands Events
Event
nTo facilitate modularity, each component declares
Interface
the commands it uses and the events it signals.
nStatically allocated, fixed sized frames allow us to
know the memory requirements of a component
at compile time, and avoid the overhead
associated with dynamic allocation.
Tasks
Perform the primary computation work
AM_MSG_SEND_DONE
ACCEPTS{
char* data);
AM_INIT
AM_MSG_REC
char AM_INIT();
};
SIGNALS{
};
AM_SUB_INIT
AM_TX_PACKET
AM_RX_PACKET
USES{
_DONE
char AM_SUB_INIT();
};
Commands Events
Putting It All Together
Active Messages
packet
Radio Packet Serial Packet Temp
SW
byte
Radio byte UART I2C HW
Photo
bit
RFM Clocks
Ad hoc Routing
Base station periodically broadcasts route
updates
Any sensors in range of this broadcast record
the identity of the base station, and
rebroadcast the update
Each sensor remembers the first update
received in an era, and uses the source of the
update as the destination for routing data
2
back to the base station
1
3
Base 0
2
1
Evaluation: Small Physical Size
Component Name Code Size Data Size
nScheduler only Multihop router
(bytes)
88
(bytes)
0
occupies 178 bytes AM_dispatch
AM_temperature
40
78
0
32
nComplete application AM_light
AM
146
356
8
40
only requires 3 KB of Packet
Processor_init
RADIO_byte
334
172
810
40
30
8
instruction memory TinyOS
RFM
C
scheduler
runtime
178
310
82
16
1
0
and 226 bytes of data Photo
Temperature
84
64
1
1
(less than 50% of the Total
UART
UART_packet
3450
196
314
226
1
40
512 bytes available) I2C_bus 198 8
nOnly processor_init,
TinyOS scheduler,
and C runtime are
required
Evaluation: Concurrency Intensive
Operations
nLow overhead is Operations Cost Time Normalized to
essential for Byte copy
(cycles)
8
(µs)
2
byte copy
1
an event = cost
of copying 1
byte of data
n
nCost of posting a task or context switching is the
same as copying 6 bytes of data
nInterrupt handling requires saving and storing
registers
Efficient Modularity
Message Send Transition
Total propagation delay up the 5 layer radio
communication stack is about 80 instructions
Packet reception
Components work breakdown CPU Utilization Energy (nj/Bit)
AM 0.05% 0.20% 0.33
Packet 1.12% 0.51% 7.58
Radio handler 26.87% 12.16% 182.38
Radio decode thread 5.48% 2.48% 37.2
RFM 66.48% 30.08% 451.17
Radio Reception - - 1350
Idle - 54.75% -
Total 100.00% 100.00% 2028.66
Successfully demonstrated a system
with multiple flows of data running
through a single microcontroller
Evaluation: Diversity in Usage and
Robust Operation