CN102609260A - Tasm2uppaal模型转换方法 - Google Patents
Tasm2uppaal模型转换方法 Download PDFInfo
- Publication number
- CN102609260A CN102609260A CN201210027759XA CN201210027759A CN102609260A CN 102609260 A CN102609260 A CN 102609260A CN 201210027759X A CN201210027759X A CN 201210027759XA CN 201210027759 A CN201210027759 A CN 201210027759A CN 102609260 A CN102609260 A CN 102609260A
- Authority
- CN
- China
- Prior art keywords
- definition
- time
- uppaal
- rule
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
本发明涉及一种模型转换方法,用于将TASM模型转换为UPPAAL模型,使用KM3描述目标语言UPPAAL的元模型;针对TASM模型的环境变量与抽象机,执行规则语法元素,使用环境变量的转换方法和主抽象机与执行规则的转换方法,将TASM模型转换为UPPAAL模型。
Description
技术领域
本发明涉及一种模型转换方法,尤其涉及将TASM模型转换为UPPAAL模型的方法。
背景技术
嵌入式实时系统是一种需要在满足实时计算约束条件下实现特定功能的计算控制系统。其广泛应用于航空电子、航天器、汽车控制等领域,这些系统具有资源受限、实时响应、容错、专用硬件等特点,对强实时性、可靠性等性质有较高的要求。由于软硬件规模及复杂度的增大以及计算精度、实时响应的要求的提高,这类系统变得越来越复杂,学术界和工业界一直在深入地研究如何在开发时间与成本受限的条件下更好地设计、实现高质量的复杂嵌入式实时系统并对其功能进行验证。
抽象状态机(Abstract State Machines,ASMs)是由Yuri Gurevich在1980年代提出的一种用于系统工程形式建模的一种形式化方法。在此方法的基础上又产生了XASM(eXtensible Abstract State Machine)、AsmL(AbstractState Machine Language)等语言和工具上的扩展。但是ASMs和这些扩展并没有提及如何考虑时间和资源等非功能属性。针对这一问题,麻省理工学院的Martin Ouimet等人于2006提出了时间抽象状态机(Timed AbstractState Machine,下文简称为TASM)语言。TASM语言是一种用来对于嵌入式实时系统的行为进行规范化和仿真的建模语言。它是ASMs的一个扩展。TASM能够支持时间、资源、同步、并发等多种功能及非功能属性进行描述,具有语义描述简洁、可读性好等特点。
UPPAAL是由瑞典Uppsala大学和丹麦Aazborg大学联合开发的模型检测工具。它以R.Alur和Dill提出的时间自动机(Timed Automata)作为形式化理论基础,可以对以时间自动机网络为模型的实时系统进行模拟和模型检测。
时间自动机在有穷状态机的基础上增加了时钟变量,它采用了连续时间模型并且所有时钟变量是同步前进的。在UPPAAL中,实时系统被建模为并发执行的时间自动机网络模型。有界整型变量被引入到时间自动机的概念中,它们的值可以被读取也可以被修改以及被用于计算。状态在时间自动机网络中被定义为所有时间自动机所处位置,时钟约束和普通变量的值的组合。通过自动机位置间的迁移或与其它自动机的同步,模型从当前状态迁移到新的状态。
由于TASM工具TASM toolset对于逻辑行为、时间行为的验证能力偏弱,我们选择利用UPPAAL模型检测工具对其功能正确性(有无死锁)、非功能正确性(时间等约束条件)进行进一步的形式化验证。为此,本发明研究一种从TASM子集到UPPAAL的模型转换方法实现两种模型的自动转换。
发明内容
一种模型转换方法,用于将TASM模型转换为UPPAAL模型,其特征在于:
使用KM3描述目标语言UPPAAL的元模型;
针对TASM模型的环境变量与抽象机,执行规则语法元素,使用环境变量的转换方法和主抽象机与执行规则的转换方法,将TASM模型转换为UPPAAL模型。
所述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:
在时间自动机的元模型定义中,时间自动机位置(location)上的属性以及状态转换(transition)上的条件(guard)、赋值(assignment)、同步(synchronization)都在元模型中的label节点中被描述。
其中将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。
其中所述主抽象机(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 !”的时间自动机。
附图说明
图1:模型转换的总体框架
图2:UPPAAL元模型结构图
具体实施方式
下面将结合附图对本发明作进一步的说明:
本发明涉及到一个TASM2UPPAAL模型转换工具,该模型转换工具对任意TASM模型,都能自动将其转换到相应的UPPAAL模型。该模型转换工具的源语言TASM是一种广泛应用于软、硬件系统设计的形式化描述语言,它支持嵌入式实时系统的功能行为、时间属性以及资源消耗的描述和验证。该模型转换工具的目标模型UPPAAL是由瑞典Uppsala大学和丹麦Aazborg大学联合开发的模型检测工具。它以R.Alur和Dill提出的时间自动机(Timed Automata)作为形式化理论基础,可以对以时间自动机网络为模型的实时系统进行模拟和模型检测。
1)工具总体概述
该模型转换工具,基于ATL模型转换技术,要完成该模型转换工具,定义源语言TASM与目标UPPAAL的元模型,元模型是以面向对象的思想描述一种语言的语法结构,从而使模型转换时,能根据其相应的语法元素,进行相对应的转换。针对模型转换的特点,使用了KM3重新描述了UPPAAL的元模型(语法结构)。模型转换的总体框架如图1所示。
2)UPPAAL元模型
根据模型转换工具特性,使用KM3对其进行了描述,如图2是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
在时间自动机的元模型定义中,时间自动机位置(location)上的属性以及状态转换(transition)上的条件(guard)、赋值(assignment)、同步(synchronization)都在元模型中的label节点中被描述。
3)模型转换方法
研究TASM中各语法元素到UPPAAL的模型转换方法,其中包括,环境变量的转换方法,主抽象机与执行规则的转换方法。
3.1)环境变量的转换方法:
TASM拥有更丰富的数据类型,包括整型、浮点型、布尔型以及用户自定义类型等。而UPPAAL模型中只有有界整型一种数据类型。由于浮点型是无法转换的,所以待转换的TASM模型是不能包含浮点类型变量的定义的。而布尔型和用户自定义类型的变量则可以被转换为等价的有界整型变量。映射方式如下表1所示。
表1TASM和UPPAAL数据类型映射关系
整型变量映射为UPPAAL中的int,布尔类型的变量可以映射到UPPAAL中的类型为int[0,1]即取值范围为0或1的整型变量;拥有n个取值e1到en的用户自定义变量可以被映射到UPPAAL中的类型为int[0,n-1]即取值范围为0到n-1的整型变量,e1被映射到0,en被映射到n-1。
3.2)主抽象机与执行规则的转换方法:
一个TASM模型可以包含多个主抽象机(main machine,下文简称抽象机),这些抽象机在执行时是并发执行的。这与时间自动机网络的执行模型十分相似。在建立映射规则时,每一个抽象机都对应一个时间自动机。抽象机的并发执行模型就对应于时间自动机网络的并发执行模型。而TASM中每一次规则的执行(即一次状态变迁)的效果在其作用于环境之前是需要消耗时间的,这与时间自动机在状态变迁中不消耗时间的语义是不同的,而这两种时间表示方法的表达能力是相同的。在建立映射规则时,我们可以为每一个时间自动机定义一个中心位置pivot以及时钟变量c,中心位置被定义为紧急位置(urgent location),表示在此位置上不消耗时间;在时间自动机上为与其对应抽象机的每一条规则定义一个中间位置,时间将在中间位置上消耗时间直到可以进行状态变迁。每一条规则的执行可以被映射为UPPAAL时间自动机中的两个状态变迁。
抽象机的每一条规则与时间自动机的映射规则(即一般规则到UPPAAL的转换)如下表2所示。
设一般规则为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的转换
UPPAAL中的Ri位置为定义的中间位置,当抽象机的规则Ri的约束条件被满足时,对应时间自动机从pivot变迁到位置Ri,同时时钟被重置,在位置Ri上,时间向前流动,当时钟值c满足tmin≤c≤tmax即对应于规则Ri的执行时间时,可以从中间位置Ri回到初始位置pivot表示Ri执行完,同时Ei被作用于环境。这样,主抽象机的一条规则Ri的执行就被等价映射到UPPAAL模型中了。
当Ei中包含同步通信时(即带有同步的一般规则到UPPAAL的转换),根据TASM模型的语义其映射规则如表3所示。
设带有同步的一般规则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带有同步的一般规则到UPPAAL的转换
TASM语义中,当动作执行中含有同步通信语句是,首先执行除同步通信以外的其他语句,执行完成后,再执行同步通信语句以发送或接收同步信号。
在TASM中,还有一种特殊的else规则(else rule),else规则没有设定约束条件,当处于同一抽象机的其他规则的约束条件都不被满足时,将执行else规则。并且,else规则常常与时间表示方法“t:=next”组合一起使用,表示的语义为抽象机将一直处于等待状态直到抽象机的任意一条规则的约束条件被满足。在为“else规则+t:=next”建立到UPPAAL映射时,方法与一般规则比较相似,都需要建立一个中间位置,通过从pivot位置与此中间位置之间的状态变迁表示规则的执行。但不同的是,由于不再需要定义时间约束条件以及中间位置的时间不变量,需要添加一个用于同步的紧急同步信道(urgent synchronization channel),以保证当其他规则的约束条件被满足时,能够从中间位置回到pivot位置,为此我们还需要添加一个用于发送紧急同步信号的时间自动机。
设抽象机m拥有n个一般规则Ri到Rn(Ri=<Gi,t,Ei>),同时拥有else规则Re,其执行时间表示为“t:=next”。“else规则+t:=next”到UPPAAL的映射规则(即带有t:=next时间结构和else规则到UPPAAL的转换)如表4所示。
设规则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带有t:=next时间结构的而else规则到UPPAAL的转换
当抽象机的其它规则的约束条件G1到Gn都不满足时,时间自动机从中心位置pivot变迁到位置Re。当处于位置Re时,如果G1到Gn有一条约束条件被满足,Re规则的动作被执行,并且回到初始位置pivot。由于时间约束被设定为“t:=next”,为了保证在满足约束条件的情况下,能够从位置Re回到位置pivot,添加了紧急同步信道cElse以及用于发送同步信号的辅助时间自动机。
在else规则拥有一般的执行时间表示时,其到UPPAAL的映射规则(带有一般执行时间表示的else规则到UPPAAL的转换)如表5所示。
设规则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带有一般执行时间表示的else规则到UPPAAL的转换
当一般规则的Ri的时间表示为时间结构“t:=next”时,其到UPPAAL的映射规则(带有t:=next时间结构的一般规则到UPPAAL的转换)如表6所示。
设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!的时间自动机。
表6带有t:=next时间结构的一般规则到UPPAAL的转换
当规则Ri的规则的约束条件Gi被满足时,时间自动机从中心位置pivot迁移到Ri,由于其执行时间表示为“t:=next”,我们需要在从Ri到中心位置pivot的迁移上增加紧急同步信道urgentC,同时此迁移的约束条件被设定为除Ri本身的约束条件以外其它任意一个规则的约束条件被满足。当约束条件被满足的同时收到同步信号urgentC,发生从Ri到中心位置pivot的状态迁移,Ei被执行。
Claims (4)
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!”的时间自动机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210027759.XA CN102609260B (zh) | 2012-02-08 | 2012-02-08 | Tasm2uppaal模型转换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210027759.XA CN102609260B (zh) | 2012-02-08 | 2012-02-08 | Tasm2uppaal模型转换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102609260A true CN102609260A (zh) | 2012-07-25 |
CN102609260B CN102609260B (zh) | 2014-11-19 |
Family
ID=46526659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210027759.XA Active CN102609260B (zh) | 2012-02-08 | 2012-02-08 | Tasm2uppaal模型转换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102609260B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335161A (zh) * | 2015-11-13 | 2016-02-17 | 华中师范大学 | 一种从tasm时间抽象状态机到扩展nta自动机的转换方法 |
CN109725890A (zh) * | 2018-12-28 | 2019-05-07 | 中国人民解放军火箭军工程大学 | 复杂软件系统Event-B模型到时间自动机网络的转换工具及方法 |
CN109739740A (zh) * | 2018-11-22 | 2019-05-10 | 南京航空航天大学 | 一种aadl模型组合形式化验证方法 |
CN112163343A (zh) * | 2020-10-10 | 2021-01-01 | 首都师范大学 | 一种基于模型翻译的Ptolemy离散事件模型形式化验证方法 |
-
2012
- 2012-02-08 CN CN201210027759.XA patent/CN102609260B/zh active Active
Non-Patent Citations (3)
Title |
---|
刘倩等: "基于UPPAAL的AADL模型可调度性验证", 《计算机应用》 * |
杨志斌等: "Formal semantics and verification of AADL modes Timed Abstract State", 《IEEE INTERNATIONAL CONFERENCE ON》 * |
郑建华等: "用于计算机数控系统模型层验证的模型转换", 《华南理工大学学报(自然科学版)》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335161A (zh) * | 2015-11-13 | 2016-02-17 | 华中师范大学 | 一种从tasm时间抽象状态机到扩展nta自动机的转换方法 |
CN105335161B (zh) * | 2015-11-13 | 2018-08-24 | 华中师范大学 | 一种从tasm时间抽象状态机到扩展nta自动机的转换方法 |
CN109739740A (zh) * | 2018-11-22 | 2019-05-10 | 南京航空航天大学 | 一种aadl模型组合形式化验证方法 |
CN109725890A (zh) * | 2018-12-28 | 2019-05-07 | 中国人民解放军火箭军工程大学 | 复杂软件系统Event-B模型到时间自动机网络的转换工具及方法 |
CN112163343A (zh) * | 2020-10-10 | 2021-01-01 | 首都师范大学 | 一种基于模型翻译的Ptolemy离散事件模型形式化验证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102609260B (zh) | 2014-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102314349B (zh) | 空间信息功能插件工作流搭建方法 | |
CN102609260B (zh) | Tasm2uppaal模型转换方法 | |
CN104408222A (zh) | 实时分布式仿真平台可重构方法 | |
CN107633125B (zh) | 一种基于带权有向图的仿真系统并行性识别方法 | |
CN105608247A (zh) | 面向ima资源安全性分析的aadl到ecpn模型转换方法 | |
CN101533262A (zh) | 一种基于服务的机械与控制系统联合仿真实现的方法 | |
CN106951575B (zh) | 一种基于cosim的多学科虚拟试验仿真方法 | |
CN103713940A (zh) | 一种基于rtx-hla-反射内存卡的可重构分布式实时仿真方法 | |
CN105528476A (zh) | 一种飞行控制系统数字化设计方法 | |
KR20170121553A (ko) | 항공기 비행제어법칙 시뮬레이션 방법 및 장치 | |
Ebeid et al. | Model-driven design of network aspects of distributed embedded systems | |
CN102981827A (zh) | 一种基于中间件的显示界面数据处理方法及平台 | |
CN104424026A (zh) | 一种指令调度方法及装置 | |
Hu et al. | Modeling and analysis of cyber–physical system based on object-oriente generalized stochastic Petri net | |
Redell et al. | The AIDA toolset for design and implementation analysis of distributed real-time control systems | |
Sinha et al. | Virtual traffic lights+ a robust, practical, and functionally safe intelligent transportation system | |
Li et al. | Smart simulation cloud (simulation cloud 2.0)—the newly development of simulation cloud | |
Radosevic et al. | Distributed building performance simulation—a novel approach to overcome legacy code limitations | |
CN106647411B (zh) | 信息物理融合系统CPS的Agent构造方法及装置 | |
CN106897120B (zh) | 双层动态分布式仿真平台 | |
Grichi et al. | ROCL: New extensions to OCL for useful verification of flexible software systems | |
Man et al. | Comparison of optimized multi-stage clock gating with structural gating approach | |
CN102722602A (zh) | 多粒度多方面数控建模方法 | |
CN103473389A (zh) | 一种应用于hla分布式仿真技术的通用模型 | |
Gamatié et al. | A modeling paradigm for integrated modular avionics design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210916 Address after: No.8, Shibo Road, Panlong District, Kunming City, Yunnan Province, 650233 Patentee after: Yunnan Institute of innovation Beijing University of Aeronautics and Astronautics Address before: 100191 No. 37, Haidian District, Beijing, Xueyuan Road Patentee before: BEIHANG University |