Top Banner
Institute for Software Integrated Systems Vanderbilt University Applying Multiple Modeling Languages to Large Scale Real-Time Systems Development Sandeep Neema, Ted Bapty Shweta Shetty, Steve Nordstrom, Di Yao, Shikha Ahuja Vanderbilt Univ.
22

Vanderbilt University Applying Multiple Modeling Languages to

Feb 03, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Vanderbilt University Applying Multiple Modeling Languages to

Institute for Software Integrated SystemsVanderbilt University

Applying Multiple Modeling Languages

to Large Scale Real-Time Systems Development

Sandeep Neema, Ted BaptyShweta Shetty, Steve Nordstrom, Di

Yao, Shikha AhujaVanderbilt Univ.

Page 2: Vanderbilt University Applying Multiple Modeling Languages to

Outline

• Problem Domain

• Motivation/Challenges

• Proposed Solution

• Conclusions/Future Work

Page 3: Vanderbilt University Applying Multiple Modeling Languages to

High Energy Physics

FermiLab Accelerator

BTeV Experiment

Page 4: Vanderbilt University Applying Multiple Modeling Languages to

The Trigger0 12 m

pp

DipoleRICH

EM

Cal

Had

ron

A

bsor

ber

Muo

n

Toro

id

± 30

0 m

rad

Magnet

Forward tracker provides:•Momentum measurement•Pattern recognition for tracks born in decays

downstream of vertex detector•Projection of tracks into particle ID devices

Detector Grids

Problem: -Determine the set of particle trajectories-Decide if it is interesting, keep or toss-Massive amounts of data (Terabytes/Sec)-Hardware => 2500 DSP’s + 2500 PC’s-Never Fail (ok to degrade)

Page 5: Vanderbilt University Applying Multiple Modeling Languages to

BTeV RTES CollaborationNSF/ITR

• Fermilab– Building BTeV Trigger Hardware– Domain Experts, Define Goals, Constraints, etc.

• Vanderbilt– RTES Lead (Physics)– Design Environment, System Synthesis, System

Integration, Prototype Hardware

• UIUC– ARMOR, Fault Tolerant Middleware– Domain Expertise

• Syracuse & Pitt– Very Lightweight Agents, Diagnostics

Page 6: Vanderbilt University Applying Multiple Modeling Languages to

Analysis

Local Oper.Manager

LocalFaultMgr

TrigAlgo.

ARMOR/RTOS

TrigAlgo.TrigAlgo.Trig

Algo.

Logical C

ontrol Netw

ork

L1/DSP

Local Oper.Manager

LocalFaultMgr

TrigAlgo.

ARMOR/RTOS

TrigAlgo.TrigAlgo.Trig

Algo.

Logi

cal D

ata

Net

DSPLocal OperManager

LocalFaultMgr

TrigAlgo.

ARMOR/Linux

TrigAlgo.Trig

Algo.TrigAlgo.

Logi

cal D

ata

Net

Logical Control N

etwork

RISC

Local OperManager

LocalFaultMgr

TrigAlgo.

ARMOR/Linux

TrigAlgo.Trig

Algo.TrigAlgo.

L2,3/RISC

Region Operations Mgr

RegionFault Mgr

Runtime

Designand

Analysis

Reconfig Behavior

Algorithm Fault Behavior

Resource

Synt

hesi

s

PerformanceSimulation

DiagnosabilityAnalysis

ReliabilityAnalysis

SystemModels

Soft Real-Time Hard

ExperimentInterface

Synthesis

Feed

back

Model Integrated Computing

Logical C

ontrol Netw

ork

Global Operations

Manager

Global Fault Manager

Page 7: Vanderbilt University Applying Multiple Modeling Languages to

Design Issues

• Complex System– Thousands of Processors– High Data Rates– Real-Time Constraints

• User-Defined Behaviors– Domain-Specific Design Tool– System-Specific Implementation

• Run-Time Implementation– Heterogeneous Architecture– Real-Time - Execution & Mitigation– Fault-Tolerant

Page 8: Vanderbilt University Applying Multiple Modeling Languages to

A First Cut MIC-based Solution

• Design a domain-specific modeling language– Provision concepts for all the different aspects of

the system– Express their interactions– A “super” system-wide modeling language

• Implement a suite of translators– Generate fault-mitigation behaviors– Generate system build configurations– Link with user code/libraries

Page 9: Vanderbilt University Applying Multiple Modeling Languages to

A First Cut Solution

Processing & Data Flow

Concepts:Processes, streams, data channels, Functions, data types,communication

Hardware Resources

Concepts:Processors, Memory,Topology, Reliability,Failure Modes,…

Full

Recov.Mode 1

RecovMode 3

Recov.Mode 2

Concepts:Recovery Strategies, Modesof Operation, goals/importance

Hierarchical Fault Management

Page 10: Vanderbilt University Applying Multiple Modeling Languages to

Problems/Challenges

• A single model file for the entire system• Can not support multiple developers for different

aspects• A minor change in a small portion of the entire model

– A completely new version– Need to regenerate the whole system– No partial validation due to the tight coupling– Extended build times due to unnecessary compiles

• Lack of modularity in design artifacts• Where do the models fit in the versioning system?

– What are the dependencies?– Should the generated code be archived in the build system?– Should the code-generators be part of the versioning

system?

Page 11: Vanderbilt University Applying Multiple Modeling Languages to

Outline

• Problem Domain

• Motivation/Challenges

• Proposed Solution

• Conclusions/Future Work

Page 12: Vanderbilt University Applying Multiple Modeling Languages to

Learn from Textual Programming Techniques

• Modularization with multiple files for storing multiple artifacts

• “import” or “include” for referencing/external linkages• Back-end tools “pre-processors”, “linkers” for

merging, validating linkages

Page 13: Vanderbilt University Applying Multiple Modeling Languages to

“Include” applied to MIC

• Multiple “narrowly focused” domain-specific modeling languages– System Integration Modeling Language (SIML)– Data-Types Modeling Language (DTML)– GUI Config Modeling Language (GML)– Run Control Modeling Language (RCML)– Fault Mitigation Modeling Language (FMML)

• Allow expression of cross-linkages between models in different modeling languages– Overlapping concepts derived from a “Link” type– Attributes of “Link” type capture linkage specification i.e.

type of linked object, location of linked object

Page 14: Vanderbilt University Applying Multiple Modeling Languages to

“Include” applied to MIC (2)

• Plug-ins developed to facilitate link creation as well as link navigation

• Model interpreters, transformers evolved to navigate the links during synthesis

Page 15: Vanderbilt University Applying Multiple Modeling Languages to

Data-Type Modeling Language (DTML)

•Modeling of Data Types and Structures

•GME supported sub-typing to model type hierarchies

•Configure marshalling-demarshalling interfaces for communication

Page 16: Vanderbilt University Applying Multiple Modeling Languages to

Run Control Modeling Language (RCML)

•Modeling of Experiment Run Control•System startup, shutdown, and run states,•Transition thru System States and associated Actions

Page 17: Vanderbilt University Applying Multiple Modeling Languages to

GUI Config Modeling Language (GML)

DataType Link

Page 18: Vanderbilt University Applying Multiple Modeling Languages to

System Integration Modeling Language (SIML)

• Model Component Hierarchy and Interactions

• Loosely specified model of computation

• Model information relevant for system configuration

Page 19: Vanderbilt University Applying Multiple Modeling Languages to

SIML Model

GUI Component Link

Page 20: Vanderbilt University Applying Multiple Modeling Languages to

Versioning/Build System

• An equivalent XML representation of GME models is stored in the CVS tree– UdmCopy provides forward and backward translation from

MGA to XML• Model transformers developed with UDM

– Can be built for Windows and Linux platforms– Transformer code is also stored in CVS

• Build system is hosted in Linux– Multi-stage build1. Compiles model transformers2. Makefiles invoke model transformers upon the stored

models and generates code artifacts (behavior/config code)3. Generated codes are compiled, and linked to produce the

binaries

Page 21: Vanderbilt University Applying Multiple Modeling Languages to

Other solutions

• Model Library– Matlab Simulink

• Model containers must specifically be constructed as libraries

– GME• Libraries are inserted completely in the model• Updates are user demanded

• Multi-User Capability– GME

• Domain-independent • Database backend• Stores models in separate files

Page 22: Vanderbilt University Applying Multiple Modeling Languages to

Conclusions/Future Work

• Addressed scalability and versioning problems with MIC

• A prototype system in place experimenting with the developed concepts

• Good experience with respect to multi-user editing/maintenance of models

• Scalability concepts need to be generalized and formally structured to be applicable for a wider audience

• Consistency is weakly enforced