SystemC程序的形式化验证方法研究

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:q137301947
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
SystemC是一种软硬件协同设计语言,可以完成从系统级(System Level)到寄存器传输级(Register Transfer Level,RTL)的设计。相比软硬件使用不同语言的设计模式,使用SystemC进行系统设计可以大大缩短开发周期。近年来,随着嵌入式系统,尤其是片上系统(System on a Chip, SoC)的广泛应用,SystemC语言越来越受开发者的青睐。很多嵌入式系统都是安全攸关的,例如航空航天系统、医疗卫生系统、交通控制系统等等,这些系统失效将导致灾难性的后果,因此需要极高的可靠性。目前对嵌入式系统的验证仍大量依赖系统仿真,但仿真方法不能完全覆盖系统运行的所有情况,因而系统的可靠性难以得到有效的保障。形式化方法则可以覆盖系统运行的所有情况,其中模型检测方法以其自动化的特点最受欢迎。但是模型检测方法存在状态空间爆炸问题,验证的规模受到限制。本研究旨在为SystemC程序的验证提供形式化的理论和方法支持,以提高验证效率。  本论文的研究内容涉及SystemC寄存器传输级程序的验证和系统级程序的验证两个方面。在SystemC寄存器传输级程序验证方面,本文研究了基于通用符号轨迹求值(Generalized Symbolic Trajectory Evaluation,GSTE)的对称归约方法来提高程序验证效率。在SystemC系统级程序验证方面,本文首先研究了一个系统级SystemC子集的操作语义,然后基于此语义实现了SystemC源程序到卫迁移系统(Guarded Assignment System)的自动转换工具,并研究了基于符号化模型检测的偏序归约算法来提高程序验证效率。  本论文的成果和创新性贡献主要有以下几点.  一、针对寄存器传输级模型,提出了一种基于通用符号轨迹求值的对称归约方法。本方法是通用符号轨迹求值与对称归约方法结合的首个研究。对称归约的过程采用了定理证明的方法:首先,将性质的可满足性作为最终目标;其次,使用分解规则将最终目标替换成多个子目标,每个子目标存在对称关系。再次,调用GSTE方法验证其中一个子目标。最后,通过对称规则归约其他子目标。  二、用卫迁移系统定义了一个系统级SystemC子集的操作语义,并完成了SystemC系统级程序到卫迁移系统的自动转换工具SC2VVM,从而实现了用VERDS模型检测工具自动验证SystemC程序。我们定义了一个转换函数,将SystemC的语句映射到迁移的集合。基于迁移系统的特性,我们简化了SystemC调度器,将时间消耗改为递减的方式,并证明修改后的语义与原始语义等价。  三、针对SystemC系统级模型,提出了一种基于符号模型检测的偏序归约算法,根据并发系统中进程之间的依赖关系不同程度地提高验证效率。此算法也可用于验证一般的并发系统。SystemC进程由若干个不可中断的原子迁移块组成,我们基于这些原子迁移块,通过布尔公式的操作将偏序归约的条件应用到算法中。在一般的并发系统中,一条迁移就是一个原子操作,因此适用SystemC的算法。
其他文献
量子信息与量子计算是一门新兴的交叉学科,它涉及量子力学、计算机科学、信息学和应用数学。它主要研究的内容包括量子计算模型、量子算法、量子通讯以及量子密码等。对这个学
生物识别技术作为在线身份验证的底层技术,近年来正得到越来越广泛的关注.该文对生物识别技术的一个新兴的分支学科,掌纹识别做了比较深入的研究,并以掌纹识别研究为依托,对
为了更好的将Web和CORBA结合起来,在分析了远程教育系统的功能需求后,该文提出了基于CGI/CORBA和Applet/CORBA的两种方法,互相取长补短,来分别实现远程教育系统中客户端与服
作为一项新兴的短距离无线通信技术,Bluetooth以其强有力的技术背景和良好的市场预期,逐渐被业界所接受。服务发现协议是Bluetooth技术的核心协议之一,它提供了在Bluetooth网络
该论文首先对于数据挖掘技术的一些概况进行了介绍,并对于移动通信行业引入数据挖掘技术的必要性进行了分析.结合移动通信行业的特点和实际,提出了数据挖掘技术应用于移动通
学位
该课题以作者参与的江苏省计算机信息处理重点实验室开放课题:建立XML的应用示范项目为背景,在作者完成无锡开源集团有限公司所属中国汽车零部件网的复合查询系统设计与实现
学位
作者主要工作包括:给出了一个基于分布式系统的可并行循环动态识别算法.针对分布式环境下可抽取观察循环的不规则串行程序循环的动态依赖关系分析问题,我们提出了一个基于观
计算机支持的协同工作(CSCW,. Computer Supported Cooperative WOrk)是计算机技术中一个新兴的研究领域.它研究如何利用计算机及网络技术,支持地域分散的群体共同完成某项