tinygals a programming model for event driven embedded systems
Download
Skip this Video
Download Presentation
TinyGALS: A Programming Model for Event-Driven Embedded Systems

Loading in 2 Seconds...

play fullscreen
1 / 11

TinyGALS: A Programming Model for Event-Driven Embedded Systems - PowerPoint PPT Presentation


  • 124 Views
  • Uploaded on

TinyGALS: A Programming Model for Event-Driven Embedded Systems. Elaine Cheong, Judy Liebman University of California, Berkeley Jie Liu, Feng Zhao Palo Alto Research Center. ACM Symposium on Applied Computing Melbourne, FL, March 9-12, 2003. Embedded software architecture tomorrow

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' TinyGALS: A Programming Model for Event-Driven Embedded Systems' - belden


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
tinygals a programming model for event driven embedded systems

TinyGALS: A Programming Model for Event-Driven Embedded Systems

Elaine Cheong, Judy Liebman

University of California, Berkeley

Jie Liu, Feng Zhao

Palo Alto Research Center

ACM Symposium on Applied Computing

Melbourne, FL, March 9-12, 2003

introduction

Embedded software architecture tomorrow

    • Reusable, reconfigurable components.
    • Easy to use.
    • Fast prototyping.
    • Software synthesis
Introduction
  • Embedded software architecture today
    • Inherited from writing device drivers and optimizing assembly code.
    • Poor scalability.
    • Poor common infrastructure.
    • Poor resource management.
motivation
Motivation
  • Application characteristics
    • Ad-hoc networked embedded systems
    • Low-power
    • Unstructured, unsynchronized events
    • Collaborative nodes
      • Local communication (peer-to-peer)
      • Global communication (ad-hoc routing)
example sensor networks
Example: Sensor Networks

Sensing

motes

Base

tinygals

global_nodedata;

global_parent_id;

sensing

clock

Get sensor data

Send local data

init

init

init

POT

PHOTO

GENERIC_COMM

Clock logic

receiving

start

CLOCK

Receive packets

Update local data

init

Update Routing Table

GENERIC_COMM

BLESS send

BLESS forward

Send BLESS mesg

Routing Table

GENERIC_COMM

BLESS receive

GENERIC_COMM

TinyGALS
tinygals architecture

Scheduler

Guarded Variable

Asynchronous

Write

Synchronous

Read

Event

Queue

Module A

Module B

TinyGUYS

local name

init

Component

___________________

___________________

___________________

___________________

___________________

___________________

Component

Component

start

outportA1

inportB1

Synchronous

Communication

Asynchronous

Communication

TinyGALS Architecture

Guarded Yet Synchronous

TinyGUYS

global name

Globally Asynchronous Locally Synchronous

software synthesis

PARAM_GET()

data structures

data structures

Event

Queue

PARAM_PUT()

Module A

Module B

app_init()

init

start

app_start()

A_out1()

BCOMP1_INPUT()

B_in1_put()

Software Synthesis

Scheduler

target tracking example before and after

global_nodedata;

global_parent_id;

sensing

MAIN

clock

Get sensor data

Send local data

Init

init

Init

Start

init

init

POT

PHOTO

GENERIC_COMM

TARGET_TRACKING

Clock logic

Send

done

Init

Init

Init

Clock

Send

receiving

Send

Get data

Fire event

Send done

Data ready

start

BLESS

Receive channel 8

CLOCK

Receive packets

Update local data

init

Send

On

Off

Update Routing Table

Send done

GENERIC_COMM

LEDS

CLOCK

PHOTO

Receive channel 7

BLESS send

BLESS forward

Send BLESS mesg

GENERIC_COMM

Routing Table

GENERIC_COMM

BLESS receive

GENERIC_COMM

Target Tracking Example:Before and After…

OS View (TinyOS)

TinyGALS View

conclusions
Conclusions
  • TinyGALS provides a globally asynchronous, locally synchronous model of computation for event-driven embedded software.
  • Allows reuse of software components.
  • TinyGUYS provides protected, quick access to global data.
  • Software synthesis tools created to generate communication and scheduling code.
future work
Future Work
  • Blocking write: retry when queue is full.
  • Priority scheduling algorithm with queue insertions.
  • Run-time reconfigurability of modules.
  • Heterarchy: distributed multi-tasking.
ad