I have raised the subject of embedded device power consumption before and I will again, as this is becoming more and more of a hot topic [no pun intended]. As I have touched upon on a previous occasion, power consumption is no longer purely a hardware - the software can have a significant effect. There are obvious ways that software has an influence: code efficiency, control of system voltage and clock frequency, de-activation of currently unused sub-systems [like displays, wireless etc.], good use of sleep modes … The list goes on.
Designing code for power efficiency is a big challenge, even with an OS that has facilities to assist. Verifying the implementation is another matter …
There are numerous challenges with verifying the control of device power, but it is possible to visualize a tool that would get the job done. Here are a few things that it would need to do:
- Monitor power consumption and track to current code execution.
- Perform such tracing on complex, multicore systems, which may use multiple operating systems.
- Be able to work with multiple hardware representations from simulation through to final hardware [as the software optimization for power must start long before final hardware is available].
Does such a tool exist? Or is it really an integrated set of tools? Watch this space.
Just bear in mind that there is only one embedded software company that has strong roots in the hardware design world, but is not owned by a chip vendor. And there is only one EDA company who have made a really significant investment in embedded software …