[发明专利]TASM2UPPAAL模型转换方法有效
申请号: | 201210027759.X | 申请日: | 2012-02-08 |
公开(公告)号: | CN102609260A | 公开(公告)日: | 2012-07-25 |
发明(设计)人: | 胡凯;张腾;杨志斌;顾斌;蒋树;姜泮昌 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | tasm2uppaal 模型 转换 方法 | ||
1.一种模型转换方法,用于将TASM模型转换为UPPAAL模型,其特征在于:
使用KM3描述目标语言UPPAAL的元模型;
针对TASM模型的环境变量与抽象机,执行规则语法元素,使用环境变量的转换方法和主抽象机与执行规则的转换方法,将TASM模型转换为UPPAAL模型。
2.根据权利要求1所述的模型转换方法,其特征在于:所述UPPAAL的元模型包括:
(1)nta:
UPPAAL模型的根节点,下辖节点包括对UPPAAL模型定义的普通变量、时钟变量及同步通信信道进行声明的节点declaration,时间自动机模板集合的节点template,对时间自动机进行声明及实例化的节点system;
(2)declaration:
nta的下辖节点,放置用户定义的变量的声明及初始化定义;
(3)template
nta的下辖节点,定义时间自动机模板,其下辖以下节点:
●name:时间自动机的名字;
●declaration:时间自动机局部变量,时钟的声明;
●Parameters:时间自动机的输入参数,在实例化中使用;
●location:时间自动机中的位置,在位置上设置属性:紧急urgent、不变量invariant;
●transition:各个位置之间的迁移,包括迁移的起始位置source和目的位置target,上面设置转换条件guard,对变量的赋值update,时间自动机之间的同步sync;
●init:定义时间自动机的初始位置location;
(4)system:
nta的下辖节点,对UPPAAL模型的时间自动机模板进行声明及实例化;
(5)Label:
在时间自动机的元模型定义中,时间自动机位置(1ocation)上的属性以及状态转换(transition)上的条件(guard)、赋值(assignment)、同步(synchronization)都在元模型中的label节点中被描述。
3.根据权利要求1所述的模型转换方法,其特征在于:将TASM的整型、布尔型以及用户自定义类型的数据类型转换为UPPAAL模型中的有界整型一种数据类型,包含以下规则:
整型变量映射为UPPAAL中的int,布尔类型的变量boolean{False,True}映射到UPPAAL中的类型为int[0,1],即取值范围为0或1的整型变量;拥有n个取值e1到en的用户自定义变量User-defined type{e1,e2,....en}被映射到UPPAAL中的类型为int[0,n-1],即取值范围为0到n-1的整型变量,其中e1被映射到0,en被映射到n-1。
4.根据权利要求1所述的模型转换方法,其特征在于:所述主抽象机(main machine)与执行规则的转换方法包括以下规则:
主抽象机到UPPAAL时间自动机(automata)的转换:每一个主抽象机对应UPPAAL中的一个时间自动机,为每一个时间自动机定义一个中心紧急位置(urgent location)pivot以及时钟变量c;
主抽象机规则的转换方法:在时间自动机上为与其对应抽象机的每一条规则定义一个中间位置,时间将在中间位置上消耗时间直到进行状态变迁,每一条规则的执行被映射为UPPAAL时间自动机中的两个状态变迁,其中,各种类型规则所对应的转换方法为:
1)一般规则到UPPAAL的转换
设一般规则为Ri=<Gi,t,Ei>,其中,Gi为规则Ri的约束条件(guard),t为Ri的执行时间,被表示为t=[tmin,tmax],tmin≤tmax,Ei为规则的执行动作,对此规则,定义中间位置Ri,定义从pivot到Ri的状态变迁,约束条件为Gi,执行动作为重置时钟,在位置Ri上定义时间不变量c<=tmax,定义从Ri到pivot的状态变迁,约束条件定义为c>=tmin,执行动作为Ei;
2)带有同步的一般规则到UPPAAL的转换
设带有同步的一般规则Ri=<Gi,t,Ei>,其中,Gi为规则Ri的约束条件(guard),t为Ri的执行时间,被表示为t=[tmin,tmax],tmin≤tmax,Ei为下列语句:Update;Syn;其中Update为除同步通信以外的动作语句集合;Syn语句为同步通信语句,发送同步信号为“chan!”,接收同步信号为“chan?”,此规则,定义中间位置Ri,定义从pivot到Ri的状态变迁,约束条件为Gi,执行动作为重置时钟,在位置Ri上定义时间不变量c<=tmax,定义紧急位置U,定义从Ri到U的状态变迁,约束条件定义为c>=tmin,执行动作为Update,定义从位置U到pivot的状态变迁,执行动作为Syn;
3)带有t:=next时间结构和else规则到UPPAAL的转换设规则Re=<Ge,t,Ee>,其中,Ge为空;t:=next;Ee为规则Re的执行动作,对此规则,定义中间位置Re,定义从pivot到Re的状态变迁,设抽象机的其它规则的约束条件G1到Gn,定义状态变迁的约束条件为!(G1||G2...||Gn),定义从Re到pivot的状态变迁,约束条件是(G1||G2...||Gn),执行动作为Ee,定义从Re到pivot状态变迁上的紧急同步信道“cElse?”以及发送同步信号“cElse !”的时间自动机;
4)带有一般执行时间表示的else规则到UPPAAL的转换设规则Re=<Ge,t,Ee>,其中,Ge为空;t为Re的执行时间,被表示为t=[tmin,tmax],tmin≤tmax;Ee为规则Re的执行动作,对于此规则,定义中间位置Re,定义从pivot到Re的状态变迁,设抽象机的其它规则的约束条件G1到Gn,定义状态变迁的约束条件为!
(G1||G2...||Gn),执行动作为重置时钟,在Re上定义时间不变量c<=tmax,定义从Re到pivot的状态变迁,约束条件是c>=tmin,执行动作为Ee;
5)带有t:=next时间结构的一般规则到UPPAAL的转换设Ri=<Gi,t,Ei>,其中,Gi为规则Ri的约束条件(guard);t为Ri的执行施行时间被表示为t:=next;Ei为规则Ri的执行动作,对于此规则,定义中间位置Ri,定义pivot到Ri的状态变迁,约束条件是Gi,定义从Re到pivot的状态变迁,约束条件是(G1||G2...||Gn),执行动作为Ee,定义从Re到pivot状态变迁上的紧急同步信道“urgent?”以及发送同步信号“urgent!”的时间自动机。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210027759.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于真空炉的通电法兰
- 下一篇:一种新型高钴热喷涂粉末及其制备工艺