Download presentation
Presentation is loading. Please wait.
Published byElwin Warren Modified over 9 years ago
1
November 21, 2005 Center for Hybrid and Embedded Software Systems Tivadar Szemethy, Institute for Software Integrated Systems, Vanderbilt University A Declarative Language for Platform Modeling Formal Platform Models enable the construction of analysis automata for verification Implementation M C Component interaction model for analysis Component-Based Design Model M P Component interaction model using platform implementation model “Kernel” component interactions component interactions implemented by platform Based on the component interaction Model of Computation Modeling the platform’s specific implementation of the MoC The formal semantics for the Model of Computation is well known, thus the interaction analysis model M C can be built. Less known is how to build M P according to a specific platform. The Platform Modeling Language (PML) is a declarative formalism to capture platform entity → analysis automaton structure mappings Filter Conditions (patterns) for element selection and local context designation. DFK :RootFolder System :System Dataflow :Dataflow Capacity: integer IF :RootFolder system_decl :system_decl DFDataflow variable_decl :variable_decl _type: String=“integer” _scope: String=“public” Dfvar_decl Match all Dataflow Objects (in DFK/System) with no variable_decl associated, and match all system_decls in IF Cardinality= 0 Dataflow :Dataflow Capacity: integer Dst: Node Input: Port system_decl :system_decl variable_decl :variable_decl _type: String=“integer” _scope: String=“public” Dfvar_decl Src: Node Output: Port SrcDst DFDataflow Create a new variable_decl in system_decl and associate it with Dataflow variable_decl.name = Dataflow.name Hierarchical Blocks for organization Actions to create elements and manipulate attributes Cross-model Associations and temporary objects PML uses UML notation, based on source and target metamodel entities PML Semantics Match Action 2 Match while exists i such that GFC(Action i ) == true Execute Action i end Action 1 Global Filter Condition for Action 1 Global Filter Condition for Action 2 Block hierarchy to process DFK nodes Match all Nodes in a System and the DFK DFK :RootFolder System :System IF :RootFolder system_decl :system_decl Node: Node Sub-Block to map Methods within a node DFK :process_decl _initInstances: integer=0 DFK._initInstances = 1 system_decl :system_decl RunNode :state DFK :process_decl _initInstances: integer=0 Node_proc :process_decl _initInstances: integer=0 Node: Node Node_proc.name = Node.name Node: Node Node_proc :process_decl _initInstances: integer=0 Method :Method Match Methods within the Node matched previously Method :Method Node: Node NodeProc Node Proc RunMethod :state RM Method Idle :state goIdle :transition Idle :state Match Action 1 Action 2 PML Example Actions within the block can refer to the objects matched by the Filter condition. Matches are propagated to sub-blocks. The concepts of PML have been tested in the GME modeling environment by mapping a PML model onto an equivalent graph transformation specification using the GReAT graph transformation engine.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.