Embedded real-time systems span a wide range of application domains including consumer electronics, motion and transportation control, automotive systems, building control, process control, industrial automation, aerospace and defense, and network elements. For example, a modern automobile has tens of microcontrollers, which must coordinate and control actuators in real-time. Failure to act on time can lead to damage to property and even loss of life. Hence, these systems must often satisfy multiple requirements: timeliness, jitter, fault-tolerance, safety, security and dynamic modalities. However, the bulk of the development of these systems continues to be at a low level of abstraction. Policies dealing with concurrency, end-to-end timing requirements, jitter constraints, exception-handling, failure management, safety issues and security concerns are hardwired into the architecture. Subsequently, the system implementation is directly coupled with the details of underlying run-time environments including OS interfaces, communication protocols adopted and programming languages used. The end-result is the creation of stove-pipe architectures and implementations that are very hard, a posteriori, to understand, analyze, validate, modify and maintain. Model-based development of embedded real-time systems is aimed at elevating the level of abstraction at which these systems are designed, analyzed, validated, coded and tested. The use of a holistic and coherent multi-dimensional model across all behaviors enables model-based design to generate systems that are correct by construction. It thus offers the promise of representing necessary functional and para-functional (sometimes called non-functional) behaviors at a level that is easy to understand, reuse, analyze formally, validate rigorously, and significantly easier to modify and maintain. This project is developing a model-based design and development toolset called SysWeaver that (i) models in an integrated fashion functional and para-functional concerns along with hardware configurations of distributed real-time systems, (ii) validates functional and para-functional behaviors at the modeling level, (iii) generates complete runtime code for these systems, (iv) helps collect run-time measurements to provide richer annotations of the models required for (say) worst-case timing analysis. The software tools are made available for free download and use.

Project Report

SysWeaver is a design and analysis tool intended for use in the design and development of distributed real-time systems. Nuclear power plant control, avionics on airplanes that enable features like "fly-by-wire" and auto-pilot, automated manufacturing plants, aerospace systems like satellites and rockets, automotive systems with features like adaptive cruise control, defense systems, process control (like chemical plants) and medical devices are examples of distributed real-time systems. In such systems, computations and communications must be carried out in "real-time" such that appropriate actions can be taken on a timely basis. If actions are not taken in timely fashion, damage to life and/or property can result. SysWeaver adopts an approach that is referred to as "model-based design" (MBD). MBD allows system designs to occur at a relatively higher-level of abstraction (instead of being specified, designed and analyzed at the level of programming languages like C or C++). SysWeaver also permits the separation of the logical architecture of the system software from the architecture of the underlying hardware platform. This separation enables the ease of porting the software architecture across a wide variety of hardware platforms. SysWeaver also allows the software to choose different communication media and protocols as necessary. It can perform allocation of software components to hardware components, and timing analysis to ensure that all timeliness constraints in the system will be satisfied. SysWeaver enables the timely, reliable and safe operation of distributed real-time systems at high levels of productivity and future portability.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Network Systems (CNS)
Application #
0720527
Program Officer
D. Helen Gill
Project Start
Project End
Budget Start
2007-09-01
Budget End
2012-08-31
Support Year
Fiscal Year
2007
Total Cost
$180,000
Indirect Cost
Name
Carnegie-Mellon University
Department
Type
DUNS #
City
Pittsburgh
State
PA
Country
United States
Zip Code
15213