1 of 14 1 Integrating Embedded System Design Tools in the Generic Modeling Environment Peter Tureby, Fredrik Wester Final Project at the Embedded Systems Lab Linköping University, Sweden
2 of 14 2 Work Packages WP1: SymTA/S model WP2: Interface to holistic analysis WP3: Worst-case scenario visualization : Can it be done in GME? WP4: Complex modeling Model to be received from Paul: WP5: Interface to Traian’s analysis tool WP6: Documentation Start latest on
3 of 14 3 Work Package #1 SymTA/S model Implement the SymTA/S model in GME Same entities and attributes Specify the architecture separately What are the constraints and how to write them? Examples Model Kai Richter’s RTSS example Model a more complex example
4 of 14 4 WP1 Model: Process Process Name (process name, or “identifier”) BCET (best case execution time on the resource it is mapped to, in milliseconds) WCET (worst case execution time on the resource it is mapped to, in milliseconds) Priority (process priority, natural number) Period (how often is the process executed, natural number) Jitter (optional; natural number) Offset (optional; natural number) Deadline (optional; natural number) Note See my thesis (page 144) for a definition of these terms
5 of 14 5 WP1 Model: Message and Resource Message Name Size (the size of the message, in bits) Resource Name
6 of 14 6 WP1 Model: Notes Notes: It is assumed that all processes and messages are scheduled using “Fixed-Priority Preemptive Scheduling” (FPS) Processes can be connected to each other in an application graph Processes can be connected through messages… For example, P1->m1->P2 …but also directly For example, P1->P2 The application graph should have no cycles Resources can be connected to each other For example, several CPUs are connected to a bus
7 of 14 7 Work Package #2 Interface to holistic analysis Holistic analysis implementation from MAST Decide which implementation to use Traian’s (C) Sorin’s (C) Integrate the analysis with WP1 How to pass the model to the analysis tool? How to send the results back to GME? Analyze the two examples from WP1
8 of 14 8 Work Package #3 Worst-case scenario visualization For a given process, visualize it’s worst-case scenario How should a worst-case scenario be depicted? See SymTA/S for an example Is it possible to use GME for the visualization, or do you have to build an external tool? Write by hand the worst-case scenario of a process in one of the examples from WP1 The worst-case scenario is produced by the analysis tool How to pass it to GME?
9 of 14 9 Work Package #4 Complex modeling Decide on a more complex model (responsible: Paul, Sorin, Traian) Extend the SymTA/S model to the complex model What are the constraints and how to write them? Three examples Model an example from Traian Hierarchical scheduling and FlexRay Model an example from Sorin Stochastic execution times Model an example from Paul Multi-cluster
10 of Work Package #5 Interface to Traian’s analysis tool Integrate Traian’s analysis tool in GME Complex modeling Traian’s example from WP4
11 of Work Package #6 Documentation The metamodels and the source code should be documented in English Report Preferably in English (Swedish is OK) Preferably written in LaTeX (Word, or FrameMaker is also fine) Presentation In English Presented in an ESLAB meeting Before the summer? Use this template in PowerPoint
12 of Action Points Discuss with Paul Clarify what has to be done for each WP Decide who does what work package Decide on milestones
13 of Report ToC Suggested Table of Contents Introduction Embedded systems design Modeling Analysis Motivation Analysis tools at ESLAB Related work SymTA/S interface Aires’ interface in GME MAST interface Modeling using GME Generic Modeling Environment Simple (SymTA/S) model Examples Complex model Examples Tool integration in GME Design choices ESLAB’s tools integration Examples Worst-case scenario visualization Examples Conclusions and future work References