SlideShare a Scribd company logo
ICC 2012 – E2NETS workshop
                                                              OTTAWA – CANADA – JUNE 10-15 2012




E2NETS Workshop
Energy Efficiency in Wireless Networks & Wireless Networks for Energy Efficiency



      Ultra-Low-Power Sensor Nodes
      Featuring a Virtual Runtime Environment

EMANUELE LATTANZI ALESSANDRO BOGLIOLO
DiSBeF University of Urbino & NeuNet




                                          1/25
                              alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                OTTAWA – CANADA – JUNE 10-15 2012




Agenda
•   Introduction
•   HW-SW platform
•   Power states
•   DPM issues and solutions
•   Experimental results



                            2/25
                alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                         OTTAWA – CANADA – JUNE 10-15 2012




Introduction
• Need for energy efficient wireless sensor nodes
   – Lifetime maximization
   – Compatibility with energy harvesters
• Attractiveness of runtime virtual environment
   – Development
   – Deployment
   – Re-use/Re-programming
• Availability of ultra-low-power micro controller units
  (MCUs) featuring
   –   16-bit RISC architectures clocked at tens of MHz
   –   16kbytes of main memory
   –   64kbytes of flash memory
   –   Voltage-frequency scaling
   –   Low-power modes with sub-ms wake-up time

                                     3/25
                         alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                   OTTAWA – CANADA – JUNE 10-15 2012




Objective
•   Ultra-low power sensor node
•   Java-compatible virtual run-time environment
•   Full exploitation of low-power modes
•   Off-the-shelf low-cost components
•   Open-hardware PCB
•   Open-source software stack




                               4/25
                   alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                OTTAWA – CANADA – JUNE 10-15 2012




Agenda
•   Introduction
•   HW-SW platform
•   Power states
•   DPM issues and solutions
•   Experimental results



                            5/25
                alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                             OTTAWA – CANADA – JUNE 10-15 2012




HW platform
• TI MSP430F54xxa MCU
  – 16-bit RISC
  – 8.9mA @ 25MHz
  – 6 LP modes
  – 0.1-73 uA
  – 5us wake-up




                         6/25
             alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                    OTTAWA – CANADA – JUNE 10-15 2012




SW stack Contiki OS
• Open-source real-time OS for sensor networks
  and networked embedded systems
  –   Portability
  –   Multi-tasking
  –   Memory efficiency
  –   Event-driven organization
  –   Elementary DPM which exploits the stand-by state of
      the MCU and wakes it up every 10ms to keep timing
      coherence


                                7/25
                    alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                    OTTAWA – CANADA – JUNE 10-15 2012




SW stack Darjeeling VM
• Open-source VM for extremely limited devices
  –   Java compatibility
  –   Limited requirements (10kbytes of RAM)
  –   Bytecode efficiency (infuser)
  –   Runs as a single process
  –   Supports multi-threading
  –   Preemptive round-robin scheduling




                                8/25
                    alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                OTTAWA – CANADA – JUNE 10-15 2012




Agenda
•   Introduction
•   HW-SW platform
•   Power states
•   DPM issues and solutions
•   Experimental results



                            9/25
                alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                          OTTAWA – CANADA – JUNE 10-15 2012




Power modes
                                              CPU         Clock Memory

Active mode                                                            1-10mW
         Self wake up [1-10us]

Standby mode                                                           1-100uW
           External interrupt [<1ms]

Sleep mode                                                                    1uW
Reboot at external interrupt [1-100ms]

Hibernation mode                                                            100nW

                                     10/25
                          alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                         OTTAWA – CANADA – JUNE 10-15 2012




SW-stack dimension
         OS     VM          Int          OS            VM
Active   boot   boot       hand          sch           sch
                                                                  Vtask




Standby


Sleep


Hibernation

                                  11/25
                       alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                             OTTAWA – CANADA – JUNE 10-15 2012




Wake-up transitions
         OS     VM          Int         OS             VM
Active   boot   boot       hand         sch            sch
                                                                    Vtask




Standby


Sleep


Hibernation

                                  12/25
                       alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                               OTTAWA – CANADA – JUNE 10-15 2012




Agenda
•   Introduction
•   HW-SW platform
•   Power states
•   DPM issues and solutions
•   Experimental results



                          13/25
               alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                            OTTAWA – CANADA – JUNE 10-15 2012




Standby mode
                           Int         OS             VM
ContikiOS schedules       hand         sch            sch
                                                                   Vtask
a self-wakeup
every 10ms

There are 3 cases:
a) The VM has no tasks to resume                                         a




                                 14/25
                      alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                            OTTAWA – CANADA – JUNE 10-15 2012




Standby mode
                           Int         OS             VM
ContikiOS schedules       hand         sch            sch
                                                                   Vtask
a self-wakeup
every 10ms

There are 3 cases:
a) The VM has no tasks to resume                                         a


a) The OS has no proc. to resume                                           b




                                 15/25
                      alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                            OTTAWA – CANADA – JUNE 10-15 2012




Standby mode
                           Int         OS             VM
ContikiOS schedules       hand         sch            sch
                                                                   Vtask
a self-wakeup
every 10ms

There are 3 cases:
a) The VM has no tasks to resume                                         a


a) The OS has no processes to resume                                       b

a) The VM has a task to resume                    Actual wake up

                                 16/25
                      alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                    OTTAWA – CANADA – JUNE 10-15 2012




Standby mode abstract state diagram
Active    1-10mW         Vtask
                     c                    Exploitation issues:
                                      a   The self-loop longer than 10ms
          1-10mW
                                          No power saving
Standby                              b    Not supported by the SW
          1-100uW                         stack (VM always active)

          1-10uW                          Not supported by Contiki OS
                                          Lack of timing info

Stanby mode is not compatible with the SW stack!

                               17/25
                    alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                    OTTAWA – CANADA – JUNE 10-15 2012




Standby mode improvements
• Modified Contiki OS to make it able to dynamically adjust
  the INTERVAL of timer interrupts

• Modified Darjeeling VM scheduler to make it able to set
  the OS timer and suspends the VM
  PROCESS_WAIT_EVENT_UNTIL()

• Implemented a timed standby mode with just-in-time
  predictive wake-up

• Mounted an external low-power (0.3uW) real-time clock
  (RTC) to preserve timing accuracy

                               18/25
                    alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                      OTTAWA – CANADA – JUNE 10-15 2012




Standby mode modified state diagram
  6.6mW                   Vtask



 4.5uW + 153.72uJ/T                      Standby.a(T)        Families of
                                                             low-power states
                                          Standby.b(T)       depending on T
 4.5uW + 0.33uJ/T

  4.5uW + 0.3uW                     Standby.t

  4.5uW                             Standby



                                 19/25
                      alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                   OTTAWA – CANADA – JUNE 10-15 2012




Sleep mode issues
• Unable to issue self-events
  – Wakup can only be triggered by external interrupts
  – Cannot be exploited if there are processes/tasks that
    need to resume at a given time (e.g., periodic
    monitoring tasks typical of many WSN applications)
• Lack of timing information
  – No information about the time elapsed since last shut
    down
  – No time stamps associated with external interrupts
Sleep mode can ony be exploited in case of time-
       independent reactive applications
                              20/25
                   alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                  OTTAWA – CANADA – JUNE 10-15 2012




Sleep mode improvements
• Implemented a timed sleep mode with just in
  time predictive wakeup based on the external
  RTC
• Used the external RTC to provide relative and
  absolute timing information at wake up

  1.5uW + 0.3uW                        Sleep.t

  1.5uW                                Sleep



                             21/25
                  alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                  OTTAWA – CANADA – JUNE 10-15 2012




Hibernation mode issues
• Unable to issue self-events
  – As for Sleep mode
• Lack of timing information
  – As for Sleep mode
• Lack of data retention
  – Requires a complete reboot
  – Impossible to resume a process/task

Hibernation mode can ony be exploited in case of
       memory-less reactive applications
                             22/25
                  alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                  OTTAWA – CANADA – JUNE 10-15 2012




Hibernation mode improvements
• Used the external RTC as for the Sleep mode
• Implemented a native method in the main of the
  VM to save and restore the heap of the VM in
  flash memory


  1.5uW + 0.3uW                        Hibernation.t

  1.5uW                                Hibernation



                             23/25
                  alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                OTTAWA – CANADA – JUNE 10-15 2012




Agenda
•   Introduction
•   HW-SW platform
•   Power states
•   DPM issues and solutions
•   Experimental results



                           24/25
                alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                   OTTAWA – CANADA – JUNE 10-15 2012




Characterization results




   Data refer to a MSP430F2618 MCU powered at 3V and clocked at 16MHz



                              25/25
                   alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                OTTAWA – CANADA – JUNE 10-15 2012




Experimental results
6.6mW




                           Average power consumption of the MCU
                           used to execute a periodic monitoring
110uW
                           task which keeps the CPU busy for 1s



6.9uW

              Once                    Once
              per hour                per day




                      26/25
           alessandro.bogliolo@uniurb.it
ICC 2012 – E2NETS workshop
                                                 OTTAWA – CANADA – JUNE 10-15 2012




Conclusions
• Ultra-low-power sensor node
• Java-compatible virtual runtime environment
• Power consumption ranging from 6.6mW to
  0.1uW (in Hibernation)
• Capable of reacting to external events and
  resume execution from any low-power state
• All low-power modes directly exploitable from
  the Java runtime environment
• Open-HW / Open-SW approach
                            27/25
                 alessandro.bogliolo@uniurb.it

More Related Content

PDF
2012 13 ieee projects jp infotech booklet
PDF
Battery Monitoring And Charging System
PDF
Resilience and Service Protection in EPON
PDF
SDN the network becomes the application
PPTX
Smart meter functionality for today and for the future
PDF
GESTURE-BASED SMART HAND GLOVES FOR DISABLED PERSONS
PDF
Power Saving Methods in EPON
PDF
Innovations in Switching
2012 13 ieee projects jp infotech booklet
Battery Monitoring And Charging System
Resilience and Service Protection in EPON
SDN the network becomes the application
Smart meter functionality for today and for the future
GESTURE-BASED SMART HAND GLOVES FOR DISABLED PERSONS
Power Saving Methods in EPON
Innovations in Switching

Similar to Ultra-Low-Power Wireless Sensor Node Programmable in Java (20)

PDF
Prezentáció: Alcatel-Lucent WiFi rendszerek és újdonságok
PPTX
Andon Applications with InduSoft Web Studio
PDF
Portfolio: ActionBase Fireworks, a Hardware-Software Complex
PPT
Powerp Sveto 2 Eng
PDF
OpenFlow experience in Transport Networks, iPOP'2013, Ping Pan
PDF
SDN Landscape and Challenges
PPTX
Software-Defined Networking
PPT
To_Infinity_and_Beyond_2012_Big_Data_Internet_Scale_Update_November_2012_v2_J...
PDF
Designing An Android Sensor Subsystem and Solving Common Sensor Problems
PPT
Light peak
PDF
iMinds the conference 2012: Marcel Mampaey
PDF
CSC Modular Datacenter
PPT
Presentation glyndwr ch stu 2
DOCX
Resume (1)
PDF
Otd Rs Sun Ot4900
PDF
Otd Rs Sun Ot4900
PDF
Otd Rs Sun Ot4900
PDF
Otd Rs Sun Ot4900
PDF
Otd Rs Sun Ot4900
Prezentáció: Alcatel-Lucent WiFi rendszerek és újdonságok
Andon Applications with InduSoft Web Studio
Portfolio: ActionBase Fireworks, a Hardware-Software Complex
Powerp Sveto 2 Eng
OpenFlow experience in Transport Networks, iPOP'2013, Ping Pan
SDN Landscape and Challenges
Software-Defined Networking
To_Infinity_and_Beyond_2012_Big_Data_Internet_Scale_Update_November_2012_v2_J...
Designing An Android Sensor Subsystem and Solving Common Sensor Problems
Light peak
iMinds the conference 2012: Marcel Mampaey
CSC Modular Datacenter
Presentation glyndwr ch stu 2
Resume (1)
Otd Rs Sun Ot4900
Otd Rs Sun Ot4900
Otd Rs Sun Ot4900
Otd Rs Sun Ot4900
Otd Rs Sun Ot4900
Ad

More from Alessandro Bogliolo (20)

PDF
AIXMOOC 2.6 - Come funzionano i Large Language Models
PDF
AIXMOOC 6.1 - Non sono un robot (Dom Holdaway)
PDF
AIXMOOC 5.3 - L'essere umano di fronte all'I.A. (Cristiano Maria Bellei)
PDF
AIXMOOC 4.3 - Geopolitica dell'intelligenza artificiale (Alessandro Aresu)
PDF
AIXMOOC 3.3 - Linguaggio e capacità cognitive (Gabriella Bottini)
PDF
AIXMOOC 3.2 - Linguaggio e memoria (Manuela Berlingeri)
PDF
AIXMOOC 4.2 - IA e informazione (Fabio Giglietto)
PDF
AIXMOOC 2.5 - CPU e GPU per Machine Learning (Luca Benini)
PDF
AIXMOOC 5.2 - IA generativa e creatività
PDF
AIXMOOC 3.1 - L'acquisizione del linguaggio (Mirta Vernice)
PPTX
AIXMOOC 4.1 - Comunicare con l'IA (Giovanni Boccia Artieri)
PDF
AIXMOOC 2.4 - Intelligenza artificiale generativa (Mirco Musolesi)
PDF
AIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramento
PDF
AIXMOOC 2.2 - Reti neurali e machine learning (Valerio Freschi)
PDF
AIXMOOC 2.1 - Il modello del neurone (Stefano Sartini)
PDF
AIXMOOC 1.4 - Macchine Calcolatrici e Intelligenza, di A. Turing
PDF
AIXMOOC 5.1 - EU AI Act - Il regolamento europeo (Lucilla Sioli)
PPTX
AIXMOOC 1.2 - Quando le macchine impararono a parlare
PDF
AIXMOOC 1.1 - L'esplosione dell'Intelligenza Artificiale - Introduzione
PDF
BIBMOOC 05.03 - Codici in biblioteca
AIXMOOC 2.6 - Come funzionano i Large Language Models
AIXMOOC 6.1 - Non sono un robot (Dom Holdaway)
AIXMOOC 5.3 - L'essere umano di fronte all'I.A. (Cristiano Maria Bellei)
AIXMOOC 4.3 - Geopolitica dell'intelligenza artificiale (Alessandro Aresu)
AIXMOOC 3.3 - Linguaggio e capacità cognitive (Gabriella Bottini)
AIXMOOC 3.2 - Linguaggio e memoria (Manuela Berlingeri)
AIXMOOC 4.2 - IA e informazione (Fabio Giglietto)
AIXMOOC 2.5 - CPU e GPU per Machine Learning (Luca Benini)
AIXMOOC 5.2 - IA generativa e creatività
AIXMOOC 3.1 - L'acquisizione del linguaggio (Mirta Vernice)
AIXMOOC 4.1 - Comunicare con l'IA (Giovanni Boccia Artieri)
AIXMOOC 2.4 - Intelligenza artificiale generativa (Mirco Musolesi)
AIXMOOC 2.3 - Modelli di reti neurali con esperimenti di addestramento
AIXMOOC 2.2 - Reti neurali e machine learning (Valerio Freschi)
AIXMOOC 2.1 - Il modello del neurone (Stefano Sartini)
AIXMOOC 1.4 - Macchine Calcolatrici e Intelligenza, di A. Turing
AIXMOOC 5.1 - EU AI Act - Il regolamento europeo (Lucilla Sioli)
AIXMOOC 1.2 - Quando le macchine impararono a parlare
AIXMOOC 1.1 - L'esplosione dell'Intelligenza Artificiale - Introduzione
BIBMOOC 05.03 - Codici in biblioteca
Ad

Recently uploaded (20)

PPTX
Programs and apps: productivity, graphics, security and other tools
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
KodekX | Application Modernization Development
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Cloud computing and distributed systems.
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Electronic commerce courselecture one. Pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Machine learning based COVID-19 study performance prediction
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Encapsulation theory and applications.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
Programs and apps: productivity, graphics, security and other tools
“AI and Expert System Decision Support & Business Intelligence Systems”
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
NewMind AI Weekly Chronicles - August'25 Week I
KodekX | Application Modernization Development
Per capita expenditure prediction using model stacking based on satellite ima...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Cloud computing and distributed systems.
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Electronic commerce courselecture one. Pdf
Unlocking AI with Model Context Protocol (MCP)
Machine learning based COVID-19 study performance prediction
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Digital-Transformation-Roadmap-for-Companies.pptx
Encapsulation theory and applications.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
The AUB Centre for AI in Media Proposal.docx
MIND Revenue Release Quarter 2 2025 Press Release

Ultra-Low-Power Wireless Sensor Node Programmable in Java

  • 1. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 E2NETS Workshop Energy Efficiency in Wireless Networks & Wireless Networks for Energy Efficiency Ultra-Low-Power Sensor Nodes Featuring a Virtual Runtime Environment EMANUELE LATTANZI ALESSANDRO BOGLIOLO DiSBeF University of Urbino & NeuNet 1/25 alessandro.bogliolo@uniurb.it
  • 2. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Agenda • Introduction • HW-SW platform • Power states • DPM issues and solutions • Experimental results 2/25 alessandro.bogliolo@uniurb.it
  • 3. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Introduction • Need for energy efficient wireless sensor nodes – Lifetime maximization – Compatibility with energy harvesters • Attractiveness of runtime virtual environment – Development – Deployment – Re-use/Re-programming • Availability of ultra-low-power micro controller units (MCUs) featuring – 16-bit RISC architectures clocked at tens of MHz – 16kbytes of main memory – 64kbytes of flash memory – Voltage-frequency scaling – Low-power modes with sub-ms wake-up time 3/25 alessandro.bogliolo@uniurb.it
  • 4. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Objective • Ultra-low power sensor node • Java-compatible virtual run-time environment • Full exploitation of low-power modes • Off-the-shelf low-cost components • Open-hardware PCB • Open-source software stack 4/25 alessandro.bogliolo@uniurb.it
  • 5. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Agenda • Introduction • HW-SW platform • Power states • DPM issues and solutions • Experimental results 5/25 alessandro.bogliolo@uniurb.it
  • 6. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 HW platform • TI MSP430F54xxa MCU – 16-bit RISC – 8.9mA @ 25MHz – 6 LP modes – 0.1-73 uA – 5us wake-up 6/25 alessandro.bogliolo@uniurb.it
  • 7. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 SW stack Contiki OS • Open-source real-time OS for sensor networks and networked embedded systems – Portability – Multi-tasking – Memory efficiency – Event-driven organization – Elementary DPM which exploits the stand-by state of the MCU and wakes it up every 10ms to keep timing coherence 7/25 alessandro.bogliolo@uniurb.it
  • 8. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 SW stack Darjeeling VM • Open-source VM for extremely limited devices – Java compatibility – Limited requirements (10kbytes of RAM) – Bytecode efficiency (infuser) – Runs as a single process – Supports multi-threading – Preemptive round-robin scheduling 8/25 alessandro.bogliolo@uniurb.it
  • 9. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Agenda • Introduction • HW-SW platform • Power states • DPM issues and solutions • Experimental results 9/25 alessandro.bogliolo@uniurb.it
  • 10. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Power modes CPU Clock Memory Active mode    1-10mW Self wake up [1-10us] Standby mode    1-100uW External interrupt [<1ms] Sleep mode    1uW Reboot at external interrupt [1-100ms] Hibernation mode    100nW 10/25 alessandro.bogliolo@uniurb.it
  • 11. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 SW-stack dimension OS VM Int OS VM Active boot boot hand sch sch Vtask Standby Sleep Hibernation 11/25 alessandro.bogliolo@uniurb.it
  • 12. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Wake-up transitions OS VM Int OS VM Active boot boot hand sch sch Vtask Standby Sleep Hibernation 12/25 alessandro.bogliolo@uniurb.it
  • 13. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Agenda • Introduction • HW-SW platform • Power states • DPM issues and solutions • Experimental results 13/25 alessandro.bogliolo@uniurb.it
  • 14. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Standby mode Int OS VM ContikiOS schedules hand sch sch Vtask a self-wakeup every 10ms There are 3 cases: a) The VM has no tasks to resume a 14/25 alessandro.bogliolo@uniurb.it
  • 15. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Standby mode Int OS VM ContikiOS schedules hand sch sch Vtask a self-wakeup every 10ms There are 3 cases: a) The VM has no tasks to resume a a) The OS has no proc. to resume b 15/25 alessandro.bogliolo@uniurb.it
  • 16. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Standby mode Int OS VM ContikiOS schedules hand sch sch Vtask a self-wakeup every 10ms There are 3 cases: a) The VM has no tasks to resume a a) The OS has no processes to resume b a) The VM has a task to resume Actual wake up 16/25 alessandro.bogliolo@uniurb.it
  • 17. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Standby mode abstract state diagram Active 1-10mW Vtask c Exploitation issues: a The self-loop longer than 10ms 1-10mW No power saving Standby b Not supported by the SW 1-100uW stack (VM always active) 1-10uW Not supported by Contiki OS Lack of timing info Stanby mode is not compatible with the SW stack! 17/25 alessandro.bogliolo@uniurb.it
  • 18. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Standby mode improvements • Modified Contiki OS to make it able to dynamically adjust the INTERVAL of timer interrupts • Modified Darjeeling VM scheduler to make it able to set the OS timer and suspends the VM PROCESS_WAIT_EVENT_UNTIL() • Implemented a timed standby mode with just-in-time predictive wake-up • Mounted an external low-power (0.3uW) real-time clock (RTC) to preserve timing accuracy 18/25 alessandro.bogliolo@uniurb.it
  • 19. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Standby mode modified state diagram 6.6mW Vtask 4.5uW + 153.72uJ/T Standby.a(T) Families of low-power states Standby.b(T) depending on T 4.5uW + 0.33uJ/T 4.5uW + 0.3uW Standby.t 4.5uW Standby 19/25 alessandro.bogliolo@uniurb.it
  • 20. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Sleep mode issues • Unable to issue self-events – Wakup can only be triggered by external interrupts – Cannot be exploited if there are processes/tasks that need to resume at a given time (e.g., periodic monitoring tasks typical of many WSN applications) • Lack of timing information – No information about the time elapsed since last shut down – No time stamps associated with external interrupts Sleep mode can ony be exploited in case of time- independent reactive applications 20/25 alessandro.bogliolo@uniurb.it
  • 21. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Sleep mode improvements • Implemented a timed sleep mode with just in time predictive wakeup based on the external RTC • Used the external RTC to provide relative and absolute timing information at wake up 1.5uW + 0.3uW Sleep.t 1.5uW Sleep 21/25 alessandro.bogliolo@uniurb.it
  • 22. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Hibernation mode issues • Unable to issue self-events – As for Sleep mode • Lack of timing information – As for Sleep mode • Lack of data retention – Requires a complete reboot – Impossible to resume a process/task Hibernation mode can ony be exploited in case of memory-less reactive applications 22/25 alessandro.bogliolo@uniurb.it
  • 23. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Hibernation mode improvements • Used the external RTC as for the Sleep mode • Implemented a native method in the main of the VM to save and restore the heap of the VM in flash memory 1.5uW + 0.3uW Hibernation.t 1.5uW Hibernation 23/25 alessandro.bogliolo@uniurb.it
  • 24. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Agenda • Introduction • HW-SW platform • Power states • DPM issues and solutions • Experimental results 24/25 alessandro.bogliolo@uniurb.it
  • 25. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Characterization results Data refer to a MSP430F2618 MCU powered at 3V and clocked at 16MHz 25/25 alessandro.bogliolo@uniurb.it
  • 26. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Experimental results 6.6mW Average power consumption of the MCU used to execute a periodic monitoring 110uW task which keeps the CPU busy for 1s 6.9uW Once Once per hour per day 26/25 alessandro.bogliolo@uniurb.it
  • 27. ICC 2012 – E2NETS workshop OTTAWA – CANADA – JUNE 10-15 2012 Conclusions • Ultra-low-power sensor node • Java-compatible virtual runtime environment • Power consumption ranging from 6.6mW to 0.1uW (in Hibernation) • Capable of reacting to external events and resume execution from any low-power state • All low-power modes directly exploitable from the Java runtime environment • Open-HW / Open-SW approach 27/25 alessandro.bogliolo@uniurb.it