USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang...

30
USN-1.1 Development of USN Embedded Development of USN Embedded Software based on Model-Driven Software based on Model-Driven Approach Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008

Transcript of USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang...

Page 1: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.1

Development of USN Embedded Software Development of USN Embedded Software based on Model-Driven Approachbased on Model-Driven Approach

Lim, Dong-JinHanyang University

Feb. 14, 2008

Page 2: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.2

V-Development ProcessV-Development Process

Page 3: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.3

Model-Based / Model-Driven DesignModel-Based / Model-Driven Design

Model?

Page 4: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.4

Page 5: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.5

UML 2.0 Diagrams UML 2.0 Diagrams

Communication Diagrams

Sequence Diagrams

Interaction Diagrams

Class Diagrams

Deployment Diagrams

Component Diagrams

Object Diagrams

Structural Diagrams

State Machine Diagrams

Timing Diagrams

Activity Diagrams

Behavioral Diagrams

Use CaseDiagrams

PackageDiagramsStructure

Diagrams

Interaction Diagrams

Page 6: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.6

Use Case DiagramUse Case Diagram

This diagram shows what the system does and who uses it.

Page 7: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.7

Sequence DiagramSequence Diagram

Sequence Diagrams show how instances communicate over time.

Page 8: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.8

Class DiagramClass Diagram

Class diagrams show classes and relations between them.

Page 9: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.9

Object DiagramObject Diagram

Object Diagrams show instances of classes and show which ones are linked to others at run time.

Page 10: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.10

State Machine DiagramState Machine Diagram

State machines are used when we need to wait until something happens before going to a different state.

Page 11: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.11

Activity DiagramActivity Diagram

Activity diagrams are used to describe behavior for operations, classes or use cases. As soon as one activity finishes the next one starts.

Page 12: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.12

Timing DiagramTiming Diagram

Time

Sending::Low

Sending::High

Receving::Low

Receiving::High

Sending

Receiving

Idle

Coil Driver

Transceiver

transmit(value)

Tristate

Monitor

Initializing

Acquiring

Reporting

Idle

send(value)

send(value)

tm(bitTime)

{1 ms +/- 0.2ms}

{3 ms +/- 0.2ms}

evDone

A Timing Diagram shows the timing between objects.

Page 13: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.13

The Rhapsody framework is a collection of base classes that are used by the code generated from a user’s model.

There are two main parts to this framework:The Object eXecution Framework which is the part of the framework that will always be linked into the final generated code

The Animation and Tracing Framework, which is only used when animating or tracing and as such is less important to understand than the OXF.

The FrameworkThe Framework

CPU

Exte

rnal

Cod

e

RTOS

OXF Framework

RhapsodyGenerated Code

Page 14: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.14

The Object eXecution FrameworkThe Object eXecution Framework

There are three main parts to the Object eXecution framework:

1. Event Driven Framework

2. Container Classes

3. Operating System Adapter Layer

Event Driven Framework

Operating System Adapter Layer

ContainerClasses

CPU

Exte

rnal

Cod

e

RTOS

OXF Framework

RhapsodyGenerated Code

Page 15: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.15

Interrupt Driven FrameworkInterrupt Driven Framework

By using the Interrupt Driven Framework (IDF), it is possible to run Rhapsody in C without the need for an Operating System

The IDF can replace the OXF and RTOSIt generates smaller code. For example a simple stopwatch example takes 20K on an ARM7 (framework + libraries + generated code)

Requires just a periodic interrupt to be setup (so that timeouts can be used in Statecharts)

CPU

Exte

rnal

Cod

e

IDF Framework

RhapsodyGenerated Code

Page 16: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.16

IDF modelIDF model

Everything in this model is independent of the actual compiler and cpu used.

Everything that depends on the cpu and compiler is included in a separate “adapter” model

Page 17: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.17

IDF modelIDF model

Page 18: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.18

USN PlatformsUSN Platforms

Crossbow Micaz Atmega128L(128K Flash, 4K Ram)+Chipcon2420 S/W: UC Berkeley TinyOS 2.0 MoteView, MoteWorks

Page 19: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.19

USN PlatformsUSN Platforms

TI Chipcon CC2420DB ATmega128L+Chipcon2420 S/W: WinAVR, RF lib (source) ZigBee Stack: Z-Stack(IAR), TI MAC

Page 20: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.20

USN PlatformsUSN Platforms

TI Chipcon CC2420DB MSP430(16bit)+Chipcon2420 ZigBee Stack: Z-Stack(IAR), TI MAC

Page 21: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.21

USN PlatformsUSN Platforms

TI Chipcon CC2430DK SoC: 8051 core + CC2420 +8K Ram+32K/64K/128K Flash ZigBee Stack: Z-Stack(IAR), TI MAC

Page 22: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.22

USN PlatformsUSN Platforms

Radiopulse MG2400 MG2400(8051+Zigbee Tranceiver+4K Ram)+64K Flash S/W: Keil uVison2, ZigBee Full Stack HW(128K flash) & SW upgrade

Page 23: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.23

USN PlatformsUSN Platforms

Atmel AT86RF230 ATmega1281V(128K Flash, 8K RAM, 3.3V)+AT86RF230 ZigBee Stack: MeshNetics(AVR-GCC), MAC(IAR, AVR-

GCC)

Page 24: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.24

USN PlatformsUSN Platforms

Silicon Labs 8051(128K flash)+CC2420 ZigBee Stack: Keil 8051

Page 25: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.25

USN PlatformsUSN Platforms

RENESAS M16C(16bit)+CC2420 ZigBee Stack: HEW 3rd Party Compiler: IAR

Page 26: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.26

USN PlatformsUSN Platforms

K-mote(MSP430F1611+CC2420) : Crossbow TelosB compatible

ATmega128L+CC2420

Page 27: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.27

Development of FrameworkDevelopment of Framework

ATmega128L+CC2420, Z-Stack/MAC lib, IAR compiler ATmega1281V+AT86RF230, MAC source, IAR compiler MSP430+CC2420, Z-Stack/MAC lib, IAR compiler

Page 28: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.28

ATmega128+CC2420+TI Z-StackATmega128+CC2420+TI Z-Stack

Page 29: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.29

ATmega128+CC2420+TI Z-StackATmega128+CC2420+TI Z-Stack

Page 30: USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang University Feb. 14, 2008.

USN-1.30

ATmega128+CC2420+TI RF lib (source)ATmega128+CC2420+TI RF lib (source)