TMSVL实时系统建模方法技术方案

技术编号:7843480 阅读:323 留言:0更新日期:2012-10-13 01:51
本发明专利技术公开了一种TMSVL实时系统建模方法,属形式化建模与验证领域,本发明专利技术通过扩展MSVL,得到的TMSVL可在同一逻辑框架下对实时系统进行建模和验证。TMSVL实时系统建模方法的步骤包括初始化系统时钟、建立系统的TMSVL模型和对TMSVL模型的化简。本发明专利技术用时间变量显式定义系统时钟,并依此定义了TMSVL基本语句和实时系统中常用的延时、超时和中断的概念,给出了TMSVL操作语义。用TMSVL语句描述实时系统后,操作语义通过对TMSVL语句的化简构造出系统的实际模型。本发明专利技术由MSVL扩展而来,具有MSVL的全部优点且能够表示相对和绝对时间约束,适应于实时系统的建模、仿真与验证。

【技术实现步骤摘要】

本专利技术属于系统形式化建模与验证
,主要涉及用形式化的方法对实时系统进行建模、仿真与验证,具体是一种TMSVL实时系统建模方法,可用于各种实时系统的建模与仿真,以保障实时系统的安全性、活性和稳定性。
技术介绍
实时控制在现代工业领域、科学研究和社会生活中发挥着重要作用,并且越来越多地被应用于军事、航天以及交通控制等安全相关的领域。实际应用中对这种实时控制的 可靠性有很高的要求,若一定的时间性限制没有被满足,则会出错甚至导致重大事故。因此,保障实时控制的正确性成为关键性问题,而实时控制的正确性是应用实时控制的实时系统可靠性的根本保证。在大多数的工程实践中,软件的可靠性主要是通过测试、仿真和反复试用来保证的,而对于应用实时控制的实时系统来说,它的运行往往与外部环境有关,其执行存在诸多不确定因素,这对其测试带来了极大的困难。并且,测试只能用于发现错误,并不能保证无错。例如,近期俄罗斯联邦航天署公布的火星探测器事故的调查结果,认为事故主因可能是机载计算系统的程序出错,而在最近一年以来,俄罗斯共遭遇的六次发射事故无一不与航天器的设计生产环节有关,火星探测器的发射系统属于典型的实时系统,而且系统在时间上有严格的要求,这也表明仅依赖测试难以保证此类系统的正确性。因此,利用具有严格数学基础的形式化方法建模和验证是解决实时系统的安全性和可靠性的根本方法之一,它可以在程序或系统实际运行或应用以前对其建模并严格验证其性质,用这种严密的形式化方法保证其可靠性。时序逻辑来描述系统是形式化方法的一种,因为本身具有时序概念,因此可以作为描述实时系统的方法。时序逻辑作为一种系统建模与验证工具已广泛应用于软件工程、数字电路设计等 领域。时序逻辑主要有三大分支线性时序逻辑(ITL),分支时序逻辑(CTL)以及区间时序逻辑(ITL)。投影时序逻辑(PTL)对ITL进行了扩展,时序逻辑语言MSVL是PTL的一个可执行子集,是一个集建模(Modeling)、仿真(Simulation)和验证(Verification)为一体的时序逻辑程序设计语言,它将系统的建模与性质的描述统一于同一逻辑框架内,通过模型检测技术验证系统的性质。MSVL作为一种形式化的工具可以被考虑用于实时系统的建模与验证。而PTL缺乏量化时间的描述,因此MSVL无法应用于实际实时系统的建模与验证。有三种方法可以对时序逻辑进行实时扩展1、界定时序算子时序操作符用时间界定,引入实时约束;2、冻结量化冻结绑定与时间相关的变量;3、显式时钟变量使用动态的时钟变量。三种方法的表达能力越来越强,采用显式时钟变量几乎可以描述所有有关实时系统的性质。但采用显式时钟变量导致逻辑的抽象能力降低,因而在描述系统和性质时过于复杂。有很多时序逻辑语言已经将时序逻辑扩展到了实时范畴,有Alur的TPTL(Timed Propositional TemporalLogic)和Koymans的MTL (Metric Temporal Logic)等,但这些实时扩展的时序逻辑大都被用于实时性质的规约,而对于实时系统的建模则采用时间自动机和时间变迁系统等其他形式,这使得实时系统建模方法和验证方发分开实施,在验证时往往要对系统模型或性质规约进行转化后才可以进行验证,这样不但过程复杂而且容易出错,给系统的性质验证带来了很大障碍。也有一些用于描述系统的扩充的时序逻辑。XYZ/RE采用界定算子扩充时序逻辑,表达时间约束比较直观,但仅能描述相对时间,而且它的逻辑基础是非实时的LTL,因此对顺序语句、循环语句的表达比较复杂。TLA+使用变量now来显式定义当前实际时间据此可以描述期望动作的时间特性。TLA+中的模块RealTime可以简化时间约束的表示方式,但是缺乏对相对时间的描述,不能刻画一个动作的持续时间,也不能刻画两个动作之间的时间间隔。到目前为止,工程实践中尚无一种建模和验证在同一逻辑框架下,既能描述相对时间又能描述绝对时间的实时系统建模、仿真和验证方法。本专利技术项目组对国内外专利文献和公开发表的期刊论文检索,尚未发现与本专利技术密切相关和一样的报道或文献
技术实现思路
本专利技术的目的在于克服现有实时系统建模和验证方法逻辑框架不统一以及可靠性差的缺点,提供了一种与验证方法在同一逻辑下形式化建模的方法,既能描述相对时间又能描述绝对时间,且简单易行的TMSVL实时系统建模方法,以满足实时系统严格的安全性和可靠性要求。—种TMSVL实时系统建模方法,用形式化方法对实时系统进行建模,构造出系统的实际模型,其特征在于在MSVL的语法基础上扩展了时间变量和时间约束区间,使其在语义上支持量化时间建模,其中时间是由时间变量模拟,时间控制由时间约束区间实现;利用该语法语义来描述需要建模的实时系统,得到系统的TMSVL模型;再利用TMSVL语言的操作语义对这个TMSVL模型化简得到系统的实际模型;TMSVL对实时系统建模的流程包括有步骤I、选取适当的时钟起始时间和时间间隔,用TMSVL语言建模实时系统的时钟模块并对系统的时钟进行初始化,用变量T模拟系统当前状态的时间,变量Ts表示时间间隔,用于产生系统时钟,TMSVL建模实时系统的时钟模块TPtl如下TP0 E T = eT 八 Ts = eTs 八 frame (Ts)八 keep (OT = T+Ts)eT和eTs是两个时间表达式,eT用来初始化T的值,eTs用来初始化Ts的值;操作符“八”表示“相与”,用于连接同时发生的语句;因为TMSVL的底层逻辑是时序逻辑,在时序逻辑中,后一状态的值不会自动继承前一状态的值,因此采用MSVL的框架技术frame声明变量,Ts被声明为frame变量后,在下一状态如果Ts未被赋值则自动继承Ts前一状态的值;keep表示除了终止状态之外的每个状态都要执行后面括号中的语句,keep ( O T = T+Ts)表示在每个状态,其下一状态的时间值,即〇T,都等于本状态的时间值T加本状态的时间间隔值Ts。步骤2、根据初始化后的系统时钟模块,用定义的TMSVL语言描述实时系统,得到系统的TMSVL模型;在描述过程中先描述实时系统中各个时间约束下的子模块,为子模块添加相应的时间约束,之后连接有关系的子模块形成新的子模块,经过反复的连接和添加时间约束最终得到整个系统的描述TP1,系统的TMSVL模型为TPtl A TP10步骤3、利用TMSVL的操作语义化简步骤2中得到的TMSVL模型,构造出系统所有的实际模型;系统的每一个实际模型是一个由一组状态序列构成的区间,每个状态有一个时间戳T代表本状态的时间,并包含一组为所有状态变量赋值的命题,这些状态变量及其赋值刻画系统的一个状态,一系列的状态序列模拟出系统动态的运作过程,一系列的状态序列就是由TMSVL模型化简出的一个区间;如果系统的每个模型都是安全的或满足某个实时性要求,系统就是安全的或满足这个实时性要求的;步骤4、构造出了实时系统所有的实际模型,实时系统建模结束。本专利技术主要涉及用形式化的方法对实时系统的建模与验证,对实时系统的模型构造主要包括对实时系统的TMSVL模型建立和模型化简两个部分。建模过程,针对实时系统的实际需要定义合理的初始时间和时间间隔,实现了对时间的初始化并为系统的每个状态生成时间采本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种TMSVL实时系统建模方法,用形式化方法对实时系统进行建模,构造出系统的实际模型,其特征在于在MSVL的语法基础上扩展了时间变量和时间约束区间,使其在语义上支持量化时间建模,其中时间是由时间变量模拟,时间控制由时间约束区间实现;利用该语法语义来描述需要建模的实时系统,得到系统的TMSVL模型;再利用TMSVL语言的操作语义对这个TMSVL模型化简得到系统的实际模型;TMSVL对实时系统建模的流程包括有 步骤I、选取适当的时钟起始时间和时间间隔,用TMSVL语言建模实时系统的时钟模块并对系统的时钟进行初始化,用变量T模拟系统当前状态的时间,变量Ts表示时间间隔,用于产生系统时钟,TMSVL建模实时系统的时钟模块TPtl如下TP0 E T = eT 八 Ts = eTs 八 frame (Ts)八 keep (OT = T+Ts)eT和eTs是两个时间表达式,eT用来初始化T的值,eTs用来初始化Ts的值;操作符“八”表示“相与”,用于连接同时发生的语句;因为TMSVL的底层逻辑是时序逻辑,在时序逻辑中,后一状态的值不会自动继承前一状态的值,因此采用MSVL的框架技术frame声明变量,Ts声明为frame变量后,在下一状态如果Ts未被赋值则自动继承Ts前一状态的值;ke印表示除了终止状态之外的每个状态都要执行后面括号中的语句,keep ( O T = T+Ts)表示在每个状态,其下一状态的时间值,即〇T,都等于本状态的时间值T加本状态的时间间隔值Ts ; 步骤2、根据初始化后的系统时钟模块,用定义的TMSVL语言描述实时系统,得到系统的TMSVL模型;在描述过程中先描述实时系统中各个时间约束下的子模块,为子模块添加相应的时间约束,之后连接有关系的子模块形成新的子模块,经过反复的连接和添加时间约束最终得到整个系统的描述TP1,系统的TMSVL模型为TPtl A TP1 ; 步骤3、利用TMSVL的操作语义化简步骤2中得到的TMSVL模型,构造出系统所有的实际模型;系统的每一个实际模型是一个由一组状态序列构成的区间,每个状态有一个时间戳T代表本状态的时间,并包含一组为所有状态变量赋值的命题,这些状态变量及其赋值刻画系统的一个状态,一系列的状态序列模拟出系统动态的运作过程,一系列的状态序列就是由TMSVL模型化简出的一个区间;如果系统的每个模型都是安全的或满足某个实时性要求,系统就是安全的或满足这个实时性要求的; 步骤4、构造出了实时系统所有的实际模型,实时系统建模结束。2.根据权利要求I所述的TMSVL实时系统建模方法,其特征在于时间表达式的语法定义为 t: : = n I X I X I function 110 op | T O T end (T) op: : = +1 -1 X I mod n表示正整数,x表示变量x在当前状态的取值, X表示变量X在前一状态的取值,function表示函数返回值,h op h表示两个时间表达式h和h经过算术运算得到的取值,op表示时间表达式h和可以进行的算数运算,包括加法,减法,乘法以及取模运算,T表示当前状态的时间值,O T表示下一状态的时间,只能出现在时间约束区间中起始时间的位置,如果时间约束为(〇T,t:), 是一个时间表达式,这个时间约束区间表示其约束下的语句从下一状态开始执行,end(T)表示T在语句执行结束时的时间,只能出现在时间约束区间中结束时间的位置,如果时间约束为U1, end(T)), h是一个时间表达式,这个时间约束区间对其约束下语句的结束时间不加限制,语义合法的时间表达式t化简之后的取值为非负整数。3.根据权利要求2所述的TMSVL实时系统建模方法,其特征在于在TMSVL中,用于描述被建模实时系统的最基本语句是在需要限定的语句P前添加了一个时间约束区间U1,t2),形成TMSVL中基本简单语句(tn t2)p的形式,其中时间表达式I1用来限定这个语句开始执行的时间,表达式t2用来限定这个语句结束的时间,时间约束下的语句P必须严格按照时间约束执行。4.根据权利要求3所述的TMSVL实时系统建模方法,其特征在于若p,tp分别表不MSVL和TMSVL语句,用于描述实时系统的TMSVL基本语句有如下形式 (I).Originalp(2). Time limie (t1 t2) tp (3). Conjunction tpx A tp2(4). Selection tpx V tp2 (5). Sequential tpx ;tp2(6). Point( e)tp(7).Projection (tp1 . . . , tpjprj tp (8).Conditional if b then tp else tq =f {b -> tp) a(-i6 -> tq) (9).While loop while b do tp =f (tp ab)* a{3(empty -> -\b) (10).Parallel tp || tq =f tp a (tq; true) vtq a (tp; true) (II).Forloop for 0 times do tp =f emptydeffor n + 1 times do tp = {for n times do tp)',tp (12). Re...

【专利技术属性】
技术研发人员:段振华韩萌王小兵田聪
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1