MARTE 的模型示例 |
作者:俎涛 (火龙果软件工程) |
MARTE 的模型示例 |
作者:俎涛 (火龙果软件工程) |
|
|
什么是MARTE |
MARTE (Modelling and Analysis of Real-Time Embedded Systems) 是UML面向实时和嵌入式系统的建模扩展。支持基于模型的实时和嵌入式系统的开发的全过程:需求定义->设计->实现->确认和验证。MARTE 可以描述实时嵌入式系统的软件及其所运行的硬件设施,尤其关注性能和时序调度的建模。 使用MARTE可以获得的好处: |
为实时嵌入式系统开发的硬件和软件方面提供一种通用的建模方法,以改善开发人员之间的交流。
支持需求、设计、验证、代码生成等工具之间的互操作性。
可以建立同时兼顾硬件和软件特性的模型,该模型可用于对系统的实时和嵌入式特性进行定量预测。 |
MARTE关注2个方向的建模: |
实时和嵌入式系统
系统属性的分析的标记 |
如下是MARTE规范的内容图示:
|
|
图.MARTE 的架构 |
|
设计模型和分析模型都会使用一些基础概念,这些基础概念被放入基础包。基础包包括: |
NFP ,非功能属性
Time,增强的时间建模
GRM,通用的资源建模
GCM,通用组件模型
Alloc ,分配建模 |
MARTE 定义的全部扩展单元如下表.:
|
缩略语 |
英文 |
中文说明 |
NFP |
Non-Functional Properties |
非功能属性 |
Time |
Enhanced Time Modeling |
增强的时间建模 |
GRM |
Generic Resource Modeling |
通用的资源建模 |
Alloc |
Allocation Modeling |
分配建模 |
GCM |
Generic Component Model |
通用组件模型 |
HLAM |
High-Level Application Modeling |
高层应用模型 |
SRM |
Software Resource Modeling |
软件资源建模 |
HRM |
Hardware Resource Modeling |
硬件资源建模 |
RTM |
Real-Time objects Modeling (RTE MoCC) |
实施对象建模(RTE MoCC) |
GQAM |
Generic quantitative Analysis Modeling |
通用定量分析建模 |
SAM |
Schedulability Analysis Modeling |
时间分析建模 |
PAM |
Performance Analysis Modeling |
性能分析建模 |
VSL |
Value Specification Language |
数值描述语言 |
CHF |
Clock Handling Facilities |
时钟处理设施 |
RSM |
Repetitive Structure Modeling |
复用结构建模 |
|
扩展单元的层次关系如下所示: |
基础层包含:NFPs,Time,GRM,GCM,Alloc
设计模型:RTEMoCC,SRM,HRM
分析模型:GQAM,SAM,PAM
附加层:VSL,RSM,MARTE Model Library |
MARTE适用的场景如下: |
场景 |
MARTE提供的支持 |
软件建模 |
构建实时和嵌入式(RTE)软件应用程序及其非功能属性的建模. |
硬件建模 |
构建实时和嵌入式(RTE)系统的高级硬件建模,包括其NFP。 |
系统架构设计 |
包括前面提到的软件建模和硬件建模的适用场景,以及分配的扩展单元。 |
性能分析 |
它包括解决实时和嵌入式系统(RTES)性能评估所需的扩展单元。 |
调度性分析 |
它包括解决实时和嵌入式系统(RTES)可调度性分析所需的扩展单元。 |
基础设施供应商 |
它包括了解决平台特定服务(例如操作系统服务)的定义和/或使用所必需的扩展单元。这可以用于创建RTOS服务模型库,以及指定平台所需的服务,以支持更高级别的RT设计方法。 |
方法学家 |
符合当前适用案例的工具应支持其他适用案例所需的所有扩展单元,这实际上意味着支持MARTE的所有必要特性。 |
|
如下MARTE的一些模型示例 |
计时模型(Timing Model) |
关注时间有关的概念,例如:时间坐标,时钟,时间单位、时间约束,对时间的访问和使用。 如下的示例描述了 2种时钟类型: |
Chronometric : 精密计时时钟
Ideal Clock:理想的时钟 |
以及者2个时钟类型的多个实例。 |
|
通用资源建模-Generic Resource Modeling (GRM) |
用于建模实时嵌入式应用软件运行所需的资源,包括: |
软件平台, 例如 实时操作系统。
硬件平台,例如 内存单元或者通信网络。 |
如下是一个通用资源建模的示例: |
|
分配建模(Alloc Modeling) |
实时嵌入式系统设计的目标之一是把 具有功能的应用单元分配到有一定软件和硬件资源构成的执行平台上。分配的时候要同时考虑空间分布和时间调度,把各种功能分配到可用的计算和通信资源上。 |
下面的示例展示了机器人手臂应用 的分配模型,包括如下层次: |
应用层:包含了 Application_RobotArm的各个应用组件及其之间的关系。
Robot_ResourcesPlatform:机器人资源平台,包括2部分:
- √ 软件平台:作为中间层起到了应用层和硬件层隔离的作用。
- √ 硬件平台:提供系统运行所需要的硬件资源。
|
|
通用组件模型 -Generic Component Model (GCM) |
GeneralComponentModel提供了建模组件所需要的支持,包括 组件、端口、事件、触发器。如下是一个实例。其中也说明了 flow port的用法。 |
示例:说明flow port 使用的模型模式示例 |
|
图12.21 -例1,当传感器在其输入端口tick上收到更新消息时,传感器通过其流端口outData发送一个样本。 |
MARTE Library |
MARTE Library定义了一个MARTE基本类型的模型库,包括: |
下面的示例展示了机器人手臂应用 的分配模型,包括如下层次: |
初始类型
度量单位
MARTE数据类型
基本的非功能性属性的类型
数据类型
基本类型
时间库 |
|
下面是 Basic NFP_Types 包里面的类型定义: |
|
|
|
如上介绍的MARTE的模型样例已经发布,您可以通过如下链接访问:模型库 |
如果希望进一步学习MARTE,可以参考如下的资料。 |
文章:将MARTE UML配置文件映射到AADL
求知资料:MARTE
|
如果您希望了解更多信息:
欢迎访问建模者频道 http://modeler.org.cn/
也欢迎直接联系我们 zhgx@uml.net.cn ,010-62670969 |
|
4351 次浏览 21 次
|