InitRech 2015/2016, sujet 18
Sommaire
Summary
This article deals with Energy Consumption of Networked Embedded Systems.
The Internet of Things is the system which allows the connection of devices to the traditionnal internet via wired or wireless connections. With the idea of using wireless connection came the idea of energy consumption which is now the main concern in the software development. But a problem also came with this idea: we use the traditionnal existing internet protocols that were designed without taking care of energy-efficiency, so these protocols are sometimes not really adapted to the software we use.
The first important thing that authors mention is that this consumption is caused by the radio transceiver.
Authors then talk about energy measurement methodology. If you use low-power wireless devices, it is difficult to mesaure the energy consumption, so you can only estimate it. There are three categories of measurement and estimation methods : the first one is the hardware based measurement. Like most of the techniques, it is based on the voltage drop over a shunt resistor which is a high precision resistor in series with the device used. We must use a digital oscilloscope or a dedicated board tesbed for timing and power consumption profiling. Some of hardware mesasurement platforms could be Embedded directly on the target device, giving this latter the possibility of measuring its own energy consumption inside. So it allows the device to perform energy-aware functionalities.
Software based techniques don't require any aditional materials to estimate energy drain of a device. There are powertrace presented in tracs system power states by measuring the time during which the device components(CPU, radio, Flash,...) are each power state (CPU Active/Sleep, Radio TX/RX,...). Device drivers must record a timestamp when a component enters a new state. Then when the components leave its state, the time difference is computed, then added to the global corresponding component time.
The last category is estimating device energy consumption by simulation so we can call them power simulator. PowerTOSSIM (power simulator that extends the traditionnal TOSSIM : event-driven simlation environment for tinyOS applications) instruments each peripheral components in each state, and emplys a code-transformation technique to estimate the number of CPU cycles executed by each node, avoiding the need to expensive instruction-based simulation. There is also E-Simu which is chosen to model device energy consumption by taking into account energy per instruction and per instruction switching. It also adds a characterization of several peripherals. This allows to model the energy profile of an entire Platform.
So we can say that power simulators represent good Tools for quick energy consumption estimation as they could easily be integrated in the development processes. However, they fail to provide fine-grained estimations of devices in real world execution conditions due to the unpredictable hardware energy activities and radio interférences to name only a few. This models exposed above are very difficult to construct, develop and validate.