USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang...
-
Upload
logan-cuthbert-white -
Category
Documents
-
view
216 -
download
0
Transcript of USN-1.1 Development of USN Embedded Software based on Model-Driven Approach Lim, Dong-Jin Hanyang...
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
USN-1.2
V-Development ProcessV-Development Process
USN-1.3
Model-Based / Model-Driven DesignModel-Based / Model-Driven Design
Model?
USN-1.4
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
USN-1.6
Use Case DiagramUse Case Diagram
This diagram shows what the system does and who uses it.
USN-1.7
Sequence DiagramSequence Diagram
Sequence Diagrams show how instances communicate over time.
USN-1.8
Class DiagramClass Diagram
Class diagrams show classes and relations between them.
USN-1.9
Object DiagramObject Diagram
Object Diagrams show instances of classes and show which ones are linked to others at run time.
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.
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.
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.
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
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
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
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
USN-1.17
IDF modelIDF model
USN-1.18
USN PlatformsUSN Platforms
Crossbow Micaz Atmega128L(128K Flash, 4K Ram)+Chipcon2420 S/W: UC Berkeley TinyOS 2.0 MoteView, MoteWorks
USN-1.19
USN PlatformsUSN Platforms
TI Chipcon CC2420DB ATmega128L+Chipcon2420 S/W: WinAVR, RF lib (source) ZigBee Stack: Z-Stack(IAR), TI MAC
USN-1.20
USN PlatformsUSN Platforms
TI Chipcon CC2420DB MSP430(16bit)+Chipcon2420 ZigBee Stack: Z-Stack(IAR), TI MAC
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
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
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)
USN-1.24
USN PlatformsUSN Platforms
Silicon Labs 8051(128K flash)+CC2420 ZigBee Stack: Keil 8051
USN-1.25
USN PlatformsUSN Platforms
RENESAS M16C(16bit)+CC2420 ZigBee Stack: HEW 3rd Party Compiler: IAR
USN-1.26
USN PlatformsUSN Platforms
K-mote(MSP430F1611+CC2420) : Crossbow TelosB compatible
ATmega128L+CC2420
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
USN-1.28
ATmega128+CC2420+TI Z-StackATmega128+CC2420+TI Z-Stack
USN-1.29
ATmega128+CC2420+TI Z-StackATmega128+CC2420+TI Z-Stack
USN-1.30
ATmega128+CC2420+TI RF lib (source)ATmega128+CC2420+TI RF lib (source)