Presentation is loading. Please wait.

Presentation is loading. Please wait.

A GUI Based Aid for Generation of Code-Frameworks of TMOs

Similar presentations


Presentation on theme: "A GUI Based Aid for Generation of Code-Frameworks of TMOs"— Presentation transcript:

1 A GUI Based Aid for Generation of Code-Frameworks of TMOs
2/23/2019 A GUI Based Aid for Generation of Code-Frameworks of TMOs K. H. (Kane) Kim and S. J. Kang DREAM Lab. UC, Irvine {khkim, October 14th, 2001

2 2/23/2019 Contents Motivation Challenges in Design of Distributed Real-time Embedded- computing (DRE) Systems TMO (Time-triggered Message-triggered Object) Programming Scheme Overview TMO Network Design Methodology (TMONDeM) Visual Studio for TMO (ViSTMO) Summary February 23, 2019

3 2/23/2019 Motivation Most of DRE systems are complex and require high reliability. The system reliability and the design efficiency are of vital importance. The state of the art for design of DRE systems is inadequate for dealing with large-scale, complex, and highly reliable DRE applications. Requirements specifications are not rigorous. Specifying temporal behavior requirements is problematic . Based on the Low level programming style (using C or Assembly) Designers should concern about low level attributes (e.g. threads and priority) Can not meet the design efficiency and reliable system design requirements. February 23, 2019

4 Challenges in Design of DRE systems
2/23/2019 Challenges in Design of DRE systems How to establish “General-form design” of DRE systems based on the high-level programming scheme? General-form design : realizing DRE in a general manner not alienating the main-stream computing industry. How to guarantee timely service capabilities of subsystems? Two important requirements : Modular design including modular specification of timing properties of components Design-time analysis of timing behavior of implemented component How to integrate design tools and techniques seamlessly through multiple engineering phases? Key issue : The uniformity and the range of controlled accuracy in representation of various levels of system design evolving through multiple design phases. February 23, 2019

5 TMO Programming Scheme
2/23/2019 TMO Programming Scheme Established in early 1990's with a concrete syntactic structure and execution semantics for economical reliable design and implementation of RT systems. A natural easy- to- use extension of the C++/ Java technology into an RT distributed software component programming technology supports design of distributable Real Time (RT) objects and distributable non- RT objects within one general structure. A natural & syntactically small but semantically powerful extension of the conventional object structure February 23, 2019

6 2/23/2019 TMO Basic Structure Time-triggered (TT-) or spontaneous methods (SpM’s): Clearly separated from the conventional service methods (SvM’s) triggered by messages from clients Time-window imposed on each output action and method completion Connections to the network environment as possible data members: Programmable data-field-channels TMO access capabilities (possibly remote TMO's) Basic concurrency constraint (BCC): SpM executions not disturbed by SvM executions. Eases design-time guarantee of timely services of TMO’s February 23, 2019

7 Specification of Time-triggered action
2/23/2019 Specification of Time-triggered action Triggering times for SpM’s Must be fully specified as constants at design-time Appear in the first clause of the SpM specification called the autonomous activation condition (AAC) [ Example of AAC ] ab "AAC-begin" { [AAC name:] “for t = from 10am to 10:50am every 30min start-during (t, t+5 min) finish-by t+10min” }* ae "AAC-end " ==:: { "start-during (10am, 10:05am) finish-by 10:10am", "start-during (10:30am, 10:35am) finish-by 10:40am"} February 23, 2019

8 TMO Network Structured Application Execution Facilities
2/23/2019 TMO Network Structured Application Execution Facilities Real-Time Distributed Computing Applications H/W Kernel ( e.g. NT kernel ) NT service TMOSM FT support Middleware No concerns with - Processes & Threads - Object locations (except in avoiding overloaded nodes) - Low-level comm. protocols No specification of timing requirements in indirect terms (e. g., priorities) - Only start-windows and completion deadlines for object methods and - time-windows for output actions February 23, 2019

9 TMOSM (TMO Support Middleware)
2/23/2019 TMOSM (TMO Support Middleware) A middleware architecture supporting TMO execution Supports distributed, real-time programming on COTS platforms Allows programmers to express action timings flexibly and well-structured forms (at the level of 10 milliseconds with an implementation based on Windows NT) User-friendly C++ API, TMOSL (TMO support library) High portability and expandability Can be ported to most modern OS with small effort February 23, 2019

10 TMO Network Design Methodology : TMONDeM
2/23/2019 TMO Network Design Methodology : TMONDeM High-level program component (TMO) based design. TMO structuring is the most desirable building block structure for the DRE systems. Capable of dealing with non-RT and RT computing requirements in uniform manners. : General-form Design It is possible to realize non-RT computer systems by simply filling the time constraint specification part with unconstrained default values. Provides design-time guarantee for timely service capabilities. The designer can impose a guaranteed service time (GST) on every service method in a program component during design time. Using uniform structuring of all the way from the requirement specification to the final implementation February 23, 2019

11 Visual Studio for TMO (ViSTMO)
2/23/2019 Visual Studio for TMO (ViSTMO) A visual modeling tool supporting the TMONDeM . It provides a graphics-based design editor for TMO network application designs based on the TMO top-down and step-wise design method (TMONDeM) Automatic generation of C++ source code (class definitions only) It generates C++ source code (class definitions for TMO, ODSS, SpM, SvM) Increase programming efficiency and system reliability. Allowing smooth transition from design to coding. It can be integrated with C++ compiler (MS Visual studio) and will create a workspace and projects for the application. Minimize the gab between design and coding. Efficient management of design documents and source code. It will help TMO network application designers and programmers to manage design documents and source code => Increase productivity. February 23, 2019

12 ViSTMO : Major Components and Functionality
2/23/2019 ViSTMO : Major Components and Functionality Components and Functionality Graphics-based design editor Visual creation of TMO Defining TMO properties : ODSS, SpM, and SvM class TMO network Diagram Relations among the TMO’s : message types How the TMO’s evolve at each step. Code-framework Generator Creating C++ code for TMO definition : creates *.h and *.cpp files ODSS, SpM and SvM class Integration with Visual Studio Creates work space, projects and TMO config.ini files Supporting deployment of TMOs under distributed environment Creates separate main file and config.ini file for each node. February 23, 2019

13 ViSTMO : Major Components and Functionality (Cont.)
2/23/2019 ViSTMO : Major Components and Functionality (Cont.) - Property of each TMO Requirement analysis and Design ViSTMO Graphics-based design editor - TMO network diagram - Property of each TMO Code generation Code-framework Generator - C++ code for TMO class definitions - TMO config.ini files, Visual Studio work space, and projects files Other tools Compiler / Debugger (MS Visual Studio) Timing Analyzer - Method Implementation Coding and debugging Timing analysis February 23, 2019

14 ViSTMO : An Illustration
2/23/2019 ViSTMO : An Illustration Creating an SpM Add an SpM to a TMO Set ODSS access mode Specifying the timing constrain : AAC Remote SvM call February 23, 2019

15 Add an SpM to a TMO February 23, 2019

16 Set ODSS access mode February 23, 2019

17 Specifying the timing constrain : AAC
February 23, 2019

18 Remote SvM call February 23, 2019

19 2/23/2019 Summary The state of the art for design of DRE systems is inadequate for dealing with large-scale, complex, and highly reliable DRE applications. TMONDeM (TMO Network Design Methodology) is a “General-form timeliness-guaranteed design” that is the idealistic approach for the development of the complex and highly reliable DRE applications. In order to improve TMONDeM, we are working on a GUI tool for programming efficiency and system reliability. February 23, 2019

20 2/23/2019 THE END. Thank you.


Download ppt "A GUI Based Aid for Generation of Code-Frameworks of TMOs"

Similar presentations


Ads by Google