Mihai GALOS - ICECS 2010 1 Dynamic reconfiguration in Wireless Sensor Networks Mihai GALOS, Fabien Mieyeville, David Navarro Lyon Institute of Nanotechnology.

Slides:



Advertisements
Similar presentations
Reconfigurable Sensor Networks with SOS Chih-Chieh Han, Ram Kumar Rengaswamy, Roy Shea and Mani Srivastava UCLA Networked and Embedded Systems Laboratory.
Advertisements

Decentralized Reactive Clustering in Sensor Networks Yingyue Xu April 26, 2015.
Lecture 1: Overview of Computers & Programming
Run-Time Dynamic Linking for Reprogramming Wireless Sensor Networks
What is a Wireless Sensor Network (WSN)? An autonomous, ad hoc system consisting of a collective of networked sensor nodes designed to intercommunicate.
Mica: A Wireless Platform for Deeply Embedded Networks Jason Hill and David Culler Presented by Arsalan Tavakoli.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Incremental Network Programming for Wireless Sensors IEEE SECON 2004 Jaein Jeong and David Culler UC Berkeley, EECS.
Introduction to ARM Architecture, Programmer’s Model and Assembler Embedded Systems Programming.
Generic Sensor Platform for Networked Sensors Haywood Ho.
A New Household Security Robot System Based on Wireless Sensor Network Reporter :Wei-Qin Du.
Reference Book: Modern Compiler Design by Grune, Bal, Jacobs and Langendoen Wiley 2000.
Data Structure and Algorithm 1 Yingcai Xiao. You Me The Course (
Chapter 2: Impact of Machine Architectures What is the Relationship Between Programs, Programming Languages, and Computers.
SPINS: Security Protocols for Sensor Networks Adrian Perrig, Robert Szewczyk, Victor Wen, David Culler, and J.D. Tygar – University of California, Berkeley.
ARM C Language & Assembler. Using C instead of Java (or Python, or your other favorite language)? C is the de facto standard for embedded systems because.
1.3 Executing Programs. How is Computer Code Transformed into an Executable? Interpreters Compilers Hybrid systems.
CCSA 221 Programming in C CHAPTER 2 SOME FUNDAMENTALS 1 ALHANOUF ALAMR.
Alternate Version of STARTING OUT WITH C++ 4 th Edition Chapter 1 Introduction to Computers and Programming.
Chapter Introduction to Computers and Programming 1.
MICA: A Wireless Platform for Deeply Embedded Networks
Invitation to Computer Science 5th Edition
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
A System Architecture for Networked Sensors Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, Kris Pister
Shahin Farshchi, Member, IEEE, Aleksey Pesterev, Paul Nuyujukian, Eric Guenterberg, Istvan Mody, and Jack W. Judy, Senior Member, IEEE, ” Structure of.
An Introduction Table Of Context Sensor Network PreviewRouting in Sensor NetworksMobility in Sensor Networks Structure and characteristics of nodes and.
Chapter 1: Introduction to Computers and Programming.
Chapter 1. Introduction.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Chapter 1 Introduction Dr. Frank Lee. 1.1 Why Study Compiler? To write more efficient code in a high-level language To provide solid foundation in parsing.
CISC105 General Computer Science Class 1 – 6/5/2006.
Institut for Technical Informatics 1 Thomas Trathnigg Towards Runtime Support for Energy Awareness in WSNs Towards Runtime Support for Energy Awareness.
MATSEC Past Papers May 2010 Paper 1 Paper 2A. What is the difference between each of the following pairs of items? Syntax Error Caused by forgetting certain.
Introduction to Wireless Sensor Networks
CST320 - Lec 11 Why study compilers? n n Ties lots of things you know together: –Theory (finite automata, grammars) –Data structures –Modularization –Utilization.
IntroductionRelated work 2 Contents Publish/Subscribe middleware Conclusion and Future works.
Embedded Runtime Reconfigurable Nodes for wireless sensor networks applications Chris Morales Kaz Onishi 1.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Wireless Sensor Network Wireless Sensor Network Based.
System Architecture Directions for Networked Sensors Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, Kris Pister Presented by Yang Zhao.
Unit-1 Introduction Prepared by: Prof. Harish I Rathod
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
A wireless sensor network (WSN) essentially ad hoc networks consists of spatially distributed autonomous sensors to monitor physical or environmental conditions,
TinySec: A Link Layer Security Architecture for Wireless Sensor Networks Chris Karlof :: Naveen Sastry :: David Wagner Presented by Roh, Yohan October.
Using Polynomial Approximation as Compression and Aggregation Technique in Wireless Sensor Networks Bouabdellah KECHAR Oran University.
COP 4620 / 5625 Programming Language Translation / Compiler Writing Fall 2003 Lecture 1, 08/28/03 Prof. Roy Levow.
Introduction to Compilers. Related Area Programming languages Machine architecture Language theory Algorithms Data structures Operating systems Software.
1 Compiler Design (40-414)  Main Text Book: Compilers: Principles, Techniques & Tools, 2 nd ed., Aho, Lam, Sethi, and Ullman, 2007  Evaluation:  Midterm.
Chapter 1 Introduction Study Goals: Master: the phases of a compiler Understand: what is a compiler Know: interpreter,compiler structure.
System Architecture Directions for Networked Sensors Jason Hill, Robert Szewczyk, Alec Woo, Seth Hollar, David Culler, Kris Pister Presenter: James.
Compiler Introduction 1 Kavita Patel. Outlines 2  1.1 What Do Compilers Do?  1.2 The Structure of a Compiler  1.3 Compilation Process  1.4 Phases.
Chapter 1 : Overview of Computer and Programming By Suraya Alias
A Dynamic Operating System for Sensor Nodes Chih-Chieh Han, Ram Kumar, Roy Shea, Eddie Kohler, Mani, Srivastava, MobiSys ‘05 Oct., 2009 발표자 : 김영선, 윤상열.
A.Abhari CPS1251 Topic 1: Introduction to Computers Computer Hardware Computer components Connecting Computers Computer Software Operating System (OS)
 Fall Chart 2  Translators and Compilers  Textbook o Programming Language Processors in Java, Authors: David A. Watts & Deryck F. Brown, 2000,
Elements of Computing Systems, Nisan & Schocken, MIT Press, Chapter 6: Assembler slide 1www.nand2tetris.org Building a Modern Computer.
Introduction to Wireless Sensor Networks
ICS312 Introduction to Compilers Set 23. What is a Compiler? A compiler is software (a program) that translates a high-level programming language to machine.
COP4020 Programming Languages Introduction Prof. Robert van Engelen (modified by Prof. Em. Chris Lacher)
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Wireless Sensor Network: A Promising Approach for Distributed Sensing Tasks.
Software Architecture of Sensors. Hardware - Sensor Nodes Sensing: sensor --a transducer that converts a physical, chemical, or biological parameter into.
- Pritam Kumat - TE(2) 1.  Introduction  Architecture  Routing Techniques  Node Components  Hardware Specification  Application 2.
Department of Communication Systems Engineering Ben-Gurion University of the Negev SimpliciTI RF Network for M2M Connection Presenters: Assaf Matalon Guy.
BASIC PROGRAMMING C SCP1103 (02)
Advanced Computer Systems
Chapter 1 Introduction.
BASIC PROGRAMMING C SCP1103 (02)
Chapter 1 Introduction.
COP4020 Programming Languages
Compiler design.
Presentation transcript:

Mihai GALOS - ICECS Dynamic reconfiguration in Wireless Sensor Networks Mihai GALOS, Fabien Mieyeville, David Navarro Lyon Institute of Nanotechnology (INL) Lyon, France

Mihai GALOS - ICECS Outline  Introduction to WSN (Wireless Sensor Networks)  Dynamic Reconfiguration  Existing solutions  Motivation  Our solution  Supported Architectures  Results  Conclusion and Perspecitves

Mihai GALOS - ICECS WSN - Introduction Wireless sensor networks (WSNs) are composed of resource-constrained sensor nodes that can cooperatively monitor physical or environmental conditions, such as temperature, pressure, acceleration, …  Applications: –environmental data collection –security or health monitoring –Vehicles –…  Network standards: –IEEE –ZigBee

Mihai GALOS - ICECS WSN - Node  Small size  Low cost  Low energy consumption  Low processing power commercial " l ab assembled"  Some existing platforms:

Mihai GALOS - ICECS WSN Dynamic Reconfiguration  Node, typical application: –Sensing of an analog value –Processing of the read value –Sending it via RF  Dynamic Reconfiguration (firmware update): add, modify or remove functionalities after deployment  Reasons for Dynamic Reconfiguration: –Fine-tuning of algorithms (i.e. : compensating for meteorological conditions) –Adding / remove algorithms –Replacing a failing node

Mihai GALOS - ICECS Existing Solutions for Dynamic Reconfiguration  Operating Systems  Virtual Machines

Mihai GALOS - ICECS Existing solutions : Operating systems Fall into two categories –Monolithic (whole firmware image has to be sent over RF to reconfigure a node) –Modular (only the functionality in question is transmitted) NameTypeUpdate Cost Running Costs Heterogeneity support Update Type TinyOSMonolithicHigh LowLimitedMachine Code MantisOS ModularMedium NanoRK SOS

Mihai GALOS - ICECS Existing solutions: Virtual Machines Again, two categories –ASVM (Application-specific virtual machines) –General-purpose virtual machines NameTypeUpdate Cost Running Costs Heterogeneity Support Update Type MatéASVM LowMedium to HighYes Virtual Machine specific Bytecode DarjeelingGPVM VMSTARGPVM

Mihai GALOS - ICECS Desired solution

Mihai GALOS - ICECS Our approach: In situ Compilation  Goal: implement solution to dynamically reconfigure a WSN, with the following requirements: –Running Cost: Low –Updade Cost: Low –Support for Heterogenity: Yes –Modularity: Yes  Specifications –Hardware –8 or 16 bit CPU architecture running on the node –Less than 128kB of Flash –Less than 20Mhz of CPU speed –Less than 16kB or RAM –Lack of a Memory Management Unit –Software –Size of RAM poses limitations on input file for compilation High-level language, small bytecount + compilation Execution in Native format

Mihai GALOS - ICECS A new High-level language: MinTax Name: Minimal Syntax, inspired from C Small syntax means less radio time to transmit functionality Strongly typed high-level language Each clause is delimited from others with the ’;’ delimiter Functions do not have explicit return types NameSupported? Identifiers Yes, 2 bytes wide Data types Yes signed/unsigned 8bit or 16bit Arithmetic operations Yes, (+, -, /, * and %) For and While loopsYes If and Switch-Case clausesYes NestingYes StructuresYes PointersExperimental Digital I/O operationsYes ADCYes Preprocessor directivesNo TypedefinitionsNo

Mihai GALOS - ICECS MinTax: an example 1.aUk{ 2.^i=A2; 3.^j=8; 4.^u=i; 5. Wi<99 6. Wj>0 7. Pi,j; j- 10. # 11. i+ 12. # 13. }u; 1.Uint8_t a (uint16_t k){ 2.Uint8_t i = read_analog_pin(pin2); 3.Uint8_t j = 8; 4.Uint8_t u = i; 5.While(i<99){ 6. While(j>0){ 7. Pwm_output(i,j); 8. u=delay(k); 9. j - -; 10. } 11. i++; 12.} 13.return u;}

Mihai GALOS - ICECS The MinTax Compiler  Analysis Stage –Lexical Analysis: splitting the input file into atoms or tokens – Implemented, generated with re2c –Syntactical Analysis: validation that the input file corresponds to the language’s formal grammar – Not Needed –Semantical Analysis: context evaluation of symbols (Symbol Table) – Implemented, merged with Lexical Analysis to make single-pass compilation  Synthesis Stage - Implemented  Variables are allocated to internal registers  Small functionalities  Faster execution, less energy used when executing generated code  Position independent Code

Mihai GALOS - ICECS The MinTax Compiler: Supported WSN Nodes  The WSN world usually comprises solutions around microcontrollers from Atmel and Texas Instruments  Mica2  Z1  AVRRaven

Mihai GALOS - ICECS Results  Sending of a “Blink” application, Mica2 platform:  Compile, and reprogram:

Mihai GALOS - ICECS Conclusion and perspectives  Conclusion –High-level language (MinTax) coupled with in-situ compilation –Energy-efficient solution for dynamic reconfiguration  Perspectives –Heterogeneous network validation –Multi-OS Integration

Mihai GALOS - ICECS Thank you !

Mihai GALOS - ICECS