SNAL Sensor Networks Application Language Alvise Bonivento Mentor: Prof. Sangiovanni-Vincentelli 290N project, Fall 04.

Slides:



Advertisements
Similar presentations
Construction process lasts until coding and testing is completed consists of design and implementation reasons for this phase –analysis model is not sufficiently.
Advertisements

Executional Architecture
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
Simulation Verification of Different Constraints in System Level Design in SystemC Piyush Ranjan Satapathy CS220 Class Project Presentation.
Page 1 Building Reliable Component-based Systems Chapter 16 - Component based embedded systems Chapter 16 Component based embedded systems.
Architecture Modeling and Analysis for Embedded Systems Oleg Sokolsky CIS700 Fall 2005.
Temporal Specification Chris Patel Vinay Viswanathan.
Chess Review May 11, 2005 Berkeley, CA Platform Based Design for Wireless Sensor Networks Alvise Bonivento Alberto Sangiovanni-Vincentelli U.C. Berkeley.
Methodologies for Wireless Sensor Networks Design Alvise Bonivento Alessandro Pinto Prof. Sangiovanni-Vincentelli U.C. Berkeley.
Architecture-driven Modeling and Analysis By David Garlan and Bradley Schmerl Presented by Charita Feldman.
Model Checking. Used in studying behaviors of reactive systems Typically involves three steps: Create a finite state model (FSM) of the system design.
Using different Models of Computation for distributed control: the Robot Diffusion Problem Sarah Bergbreiter Mentors: Bruno Sinopoli, Alessandro Pinto.
THE OBJECT-ORIENTED DESIGN WORKFLOW Interfaces & Subsystems.
Chess Review November 21, 2005 Berkeley, CA Edited and presented by Platform Based Design for Wireless Sensor Networks Alvise Bonivento UC Berkeley.
Lecture 23: Software Architectures
Design of Fault Tolerant Data Flow in Ptolemy II Mark McKelvin EE290 N, Fall 2004 Final Project.
Models of Computation for Embedded System Design Alvise Bonivento.
Copyright  1999 Daniel D. Gajski IP – Based Design Methodology Daniel D. Gajski University of California
Applying Ulysses to Bluetooth Alvise Bonivento Mentor: Marco Sgroi.
The new The new MONARC Simulation Framework Iosif Legrand  California Institute of Technology.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 PTIDES: A Programming Model for Time- Synchronized Distributed Real-time Systems Yang.
A Platform-based Design Flow for Kahn Process Networks Abhijit Davare Qi Zhu December 10, 2004.
November 18, 2004 Embedded System Design Flow Arkadeb Ghosal Alessandro Pinto Daniele Gasperini Alberto Sangiovanni-Vincentelli
Interface-based Design Donald Chai EE249. Outline Orthogonalization of concerns Formalisms Interface-based Design Example Cheetah Simulator Future Inroads.
5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 MESCAL Application Modeling and Mapping: Warpath Andrew Mihal and the MESCAL team UC Berkeley.
Models of Computation Reading Assignment: L. Lavagno, A.S. Vincentelli and E. Sentovich, “Models of computation for Embedded System Design”
UML for Embedded Systems Development--Revisited. table_05_00 * * * * *
UML for Embedded Systems Development— Extensions; Hardware-Software CoDesign.
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
IHP Im Technologiepark Frankfurt (Oder) Germany IHP Im Technologiepark Frankfurt (Oder) Germany ©
Cheng/Dillon-Software Engineering: Formal Methods Model Checking.
Chapter 10 Architectural Design
The Design Discipline.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Kaifei Chen, Siyuan He, Beidi Chen, John Kolb, Randy H. Katz, David E
DATABASE PROGRAMMING Lecture on 16 – 05 – PREVIOUS LECTURE QUIZ: - Some students were very creative in transforming 2NF to 3NF. Excellent! - Some.
 Applied Architectures and Styles Chapter 11, Part 2 Service-Oriented Architectures and Web Services Architectures from Specific Domains Robotics Wireless.
DEVS Namespace for Interoperable DEVS/SOA
1 H ardware D escription L anguages Modeling Digital Systems.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Fast Simulation Techniques for Design Space Exploration Daniel Knorreck, Ludovic Apvrille, Renaud Pacalet
IPower: An Energy Conservation System for Intelligent Buildings International Journal of Sensor Networks Yu-Chee Tseng, You-Chiun Wang, and Lun- Wu Yeh.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
- 1 - EE898_HW/SW Partitioning Hardware/software partitioning  Functionality to be implemented in software or in hardware? No need to consider special.
Models and Knowledge Representation. Outline  What are models? The language of models Models and human comprehension  What are models used for? Systems.
C. André, J. Boucaron, A. Coadou, J. DeAntoni,
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
Introduction to Semantic Web Service Architecture ► The vision of the Semantic Web ► Ontologies as the basic building block ► Semantic Web Service Architecture.
© 2005 Prentice Hall1-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
31 March 2009 MMI OntDev 1 Autonomous Mission Operations for Sensor Webs Al Underbrink, Sentar, Inc.
ECE-C662 Lecture 2 Prawat Nagvajara
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 3: Communication Dr. Michael R. Lyu Computer Science & Engineering.
1 Object Oriented Logic Programming as an Agent Building Infrastructure Oct 12, 2002 Copyright © 2002, Paul Tarau Paul Tarau University of North Texas.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
Lecture 13.  Failure mode: when team understands requirements but is unable to meet them.  To ensure that you are building the right system Continually.
Royal Institute of Technology System Specification Fundamentals Axel Jantsch, Royal Institute of Technology Stockholm, Sweden.
Structured Component Composition Frameworks for Embedded System Design Sandeep Shukla, Virginia Tech. Frederic Doucet, Rajesh Gupta University of California,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 5:Architectural Design l Establishing the overall structure of a software.
Lecture and laboratory No. 10 Modeling product as system Óbuda University John von Neumann Faculty of Informatics Institute of Applied Mathematics Master.
Hierarchical Architecture
#01 Client/Server Computing
Software Design Methodology
IP – Based Design Methodology
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
The Anatomy and The Physiology of the Grid
Design Yaodong Bi.
#01 Client/Server Computing
Presentation transcript:

SNAL Sensor Networks Application Language Alvise Bonivento Mentor: Prof. Sangiovanni-Vincentelli 290N project, Fall 04

Specs Synthesis Formal description of system requirements Platform Implementation Verification Formal description of hardware performance Refine constraints Abstract performance Meet in the middle Optimize MATHEMATICAL MODEL CLEAR SEMANTIC Describe Application Independent from network architecture Design Flow

Specs Synthesis Formal description of system requirements Platform Implementation Verification Formal description of hardware performance Refine constraints Abstract performance Meet in the middle Optimize MATHEMATICAL MODEL CLEAR SEMANTIC Describe Application Independent from network architecture

A Service-based Application Interface Application Interface (AI) AI Platform Application Space Architecture Space Platform Mapping Platform Design Export Application Instance Platform Instance Universal: independent on the Implementation on any present and future Sensor Network Platform Service-based: standard set of Services and Interface Primitives available to Applications Analogy with Internet Sockets

Query Parameters (temperature, light, sound...) Query Class (accuracy, resolution, maximum latency, tagging requirements, priority, quantifiers, operations, security) QueryID (descriptor) Response type (one-time, periodic, notification of events) Reliability Query Service Controller Query Service S1 S2 int QSRequestWrite int QSResponseRead QS allows a controller to obtain the state of a group of components Application Interface SNSP

Command Service Controller Command Service A1 A2 int CSRequestWrite int CSAckRead CS allows a controller to set the state of a group of components Application Interface SNSP

Concepts –Attributes (used for naming) –Regions (zone, neighborhood) –Organizations –Selectors, Logic operators, Quantifiers Concept Repository Service CRS maintains a repository containing the lists of capabilities of the network and the concepts that are supported Allows to maintain agreement on concepts also in dynamic network operation Network interoperability temperature, pressure… kitchen, hall, yard… PG&E, Police... C C

Design Flow Specs Synthesis Formal description of system requirements Platform Implementation Verification Formal description of hardware performance Refine constraints Abstract performance Meet in the middle Optimize MATHEMATICAL MODEL CLEAR SEMANTIC Describe Application Independent from network architecture

SNAL Sensor Network Application Language Goals Allow user to describe the network in terms of logical components queries and services Capture these specifications and produce a set of constraints Simulate WSN applications Whenever an abstraction of the protocol stack and the hardware platform is available Composition MoC Primitives Characteristics Publish/Subscribe Scenario Based Component Oriented

Components and Connections Three types of “Logical Components”: –Virtual Controller –Virtual Sensor –Virtual Actuator One “Service Component” –CRS: Concept Repository Service Connections –From VC to VC –From VC to VS –From VC to VA

Virtual Controller VS VC CRS VS

Virtual Controller VS VC CRS VS query

Virtual Controller VS VC CRS VS Causality

Virtual Sensor VS VC CRS

Virtual Sensor VS VC CRS

Virtual Sensor VS VC CRS Ask to CRS for interpretation

Virtual Sensor VS VC CRS

Virtual Sensor VS VC CRS Advance Sensing Satisfying Query Requirements

Virtual Sensor VS VC CRS Advance Sensing Satisfying Query Requirements

Virtual Sensor VS VC CRS VC 1.Humidity samples Rate R1 until T1 query1

Virtual Sensor VS VC CRS VC 1.Humidity samples Rate R1 until T1

Virtual Sensor VS VC CRS VC 1.Humidity samples Rate R1 until T1 query22.Humidity samples Rate R2 until T2

Virtual Sensor VS VC CRS VC Sensor keeps advancing 1.Humidity samples Rate R1 until T1 2.Humidity samples Rate R2 until T2

Virtual Sensor VS VC CRS VC 1.Humidity samples Rate R1 until T1 2.Humidity samples Rate R2 until T2 Query3 3.Humidity samples Rate R3 until T3 And R3>R2>R1 T2>T3>T1

Virtual Sensor VS VC CRS VC Too late !! Backtrack sensing BLOCK READ

Virtual Sensor VS VC CRS VC

Virtual Sensor VS VC CRS VC

Virtual Sensor VS VC CRS VC

Virtual Sensor VS VC CRS VC 1.Humidity samples Rate R1 until T1 3.Humidity samples Rate R3 until T3 And R3>R1 T3>T1

Virtual Sensor VS VC CRS VC 1.Humidity samples Rate R1 until T1 3.Humidity samples Rate R3 until T3 And R3>R1 T3>T1 Advance Sensing Conservatively Sense at R3 until T1 Intersection of Requirements

Virtual Sensor VS VC CRS VC 1.Humidity samples Rate R1 until T1 3.Humidity samples Rate R3 until T3 And R3>R1 T3>T1 Advance Sensing Conservatively Sense at R3 until T1 Intersection of Requirements

Virtual Sensor VS VC CRS VC

Virtual Sensor VS VC CRS VC

Virtual Sensor VS VC CRS VC What if there is no token coming? The VC does not need to query the VS anymore The VC never had to query the VS

Virtual Sensor VS VC CRS VC 1.The VC does not need to query the VS anymore:

Virtual Sensor VS VC CRS VC 1.The VC does not need to query the VS anymore: Meaning “any behavior from now on it’s ok”

Virtual Sensor VS VC CRS VC 1.The VC does not need to query the VS anymore: Meaning “any behavior from now on it’s ok” It is never consumed!!!

Virtual Sensor VS VC CRS VC 1.The VC does not need to query the VS anymore: Meaning “any behavior from now on it’s ok” It is never consumed!!! When all the input channel have the VS stops executing

Virtual Sensor VS VC CRS VC 2.The VC never needed to send a Query

Virtual Sensor VS VC CRS VC 2.The VC never needed to send a Query No need for this connection

Virtual Actuator Same as the Virtual Sensor !! –Commands instead of Queries –Responds with Acknowledgements (if required)

Implications of Block Read Block Read –Allows to capture all the scenarios correctly –Generates sensing requirements Overhead –Captures specifications, no communication overhead –No delay introduced Expressivity –Forces the logical architecture to have the VC as the Master and VS and VA as slaves. But that is what we wanted!!

Reactive Network VC1 VC2 VS1 VS2 Waits for the reply from VS2 to decide if sending a query to VS1 Waits for the reply from VS1 to decide if sending a query to VS2

Reactive Network VC1 VC2 VS1 VS2 Waits for the reply from VS2 to decide if sending a query to VS1 Waits for the reply from VS1 to decide if sending a query to VS2 Deadlock

Reactive Network VC1 VC2 VS1 VS2 Waits for the reply from VS2 to decide if sending a query to VS1 Waits for the reply from VS1 to decide if sending a query to VS2 Deadlock We need to capture this scenario

Reactive Network VC1 VC2 VS1 VS2 If (reply ==x) Then send Query to VS1 Else don’t send … If (reply ==x) Then send Query to VS2 Else don’t send …

Reactive Network VC1 VC2 VS1 VS2 If (reply ==x) Then send Query to VS1 Else don’t send … If (reply ==x) Then send Query to VS2 Else don’t send … Capture branching

Reactive Network VC1 VC2 VS1 VS2 If (reply ==x) Then send Query to VS1 Else don’t send … If (reply ==y) Then send Query to VS2 Else don’t send … Capture branching Extra connection to separate branches

Reactive Network VC1 VC2 VS1 VS2 If (reply ==x) Then send Query to VS1 Else don’t send … If (reply ==y) Then send Query to VS2 Else don’t send … Capture branching Extra connection to separate branches Eventually

Formulation Tiered MoC Complex tag system KPN flavor Publish/Subscribe Components as threaded processes Serving a Query … consuming a token TSM description

Refinement Task and Interface Process VC Task VC Intfc Orthogonalization of concerns: Computation vs. Communication Simplify synthesis

Conclusions MoC to support SNAL –Domain specific for WSN –Captures all scenarios introducing multiports –Publish/Subscribe –First step for synthesis Future Work –Integrating into Metropolis