基于可视化测试软件平台GTEST的ATLAS翻译器的研究与实现

来源 :西安电子科技大学 | 被引量 : 0次 | 上传用户:codemachine
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
ATLAS是一种广泛应用于军事装备和航空电子领域的测试语言规范,目前国内尚没有完全自主知识产权的ATLAS编译器类的软件产品。ATLAS编译器构造的工作量非常大,是构造常规的高级编程语言编译器工作量的数倍。本文着力研究从ATLAS语言到标准C语言翻译器的构造,讨论了ATLAS翻译器构造的方法以及构造过程中的一些关键技术。主要的研究工作及创新点包括以下几个方面: 一、本文解决的是工程问题,通过将ATLAS语言翻译为标准C语言,解决了完全自主知识产权的自动测试系统ATS组建过程中,ATLAS测试程序的实现问题。 二、目前国外已有的ATLAS编译器的实现中,将ATLAS语言翻译为该编译器系统自身的中间代码,然后再按照其指定格式完成实际资源的分配和语义实现。本文中提出将ATLAS语言翻译为通用的标准C语言。以标准C语言作为ATLAS语言翻译后的中间代码,使得ATLAS语言实现过程的语义翻译和资源分配具有可移植性和易操作性。 三、本研究工作的第一部分中,在对自动测试系统特性进行研究的基础上,提出将UML引入自动测试系统的建模过程中,通过UML的扩展机制为自动测试系统的框架开发提供获取该领域知识的方法。 四、本研究工作的第二部分提出:对ATLAS语言繁杂的关键字进行分类,并引入常规语言编译器构造时的符号表技术解决ATLAS语言中的大量关键字所造成的超出词法分析工具LEX的容量限制的问题;以及大量ATLAS关键字所引起的语法分析文件中单词数量超出语法分析工具YACC所认可的单词数量的问题。该方法不仅解决了词法分析工具处理ATLAS语言关键字时所遇到的工具容量受限制的问题,而且对解决ATLAS语言的扩展语句的词法分析也提供了切实可行的解决方案。 五、本研究工作的第三部分集中于解决语法分析工具YACC对ATLAS语言进行语法分析时所产生的冲突问题的处理。针对ATLAS语言本身的特点,结合LEX/YACC工具的特性,本文对使用YACC工具进行ATLAS语言语法分析过程中出现的大量冲突进行了详细的分类讨论与研究,给出了实现过程中出现的主要冲突类型及相应解决方案:文法符号的不断自身循环产生的移进/归约冲突,采用修改文法的方法:同等表示的重叠所造成的大量归约/归约冲突,采用替换法、拆解法或者拆解加语义函数的方法;构建表达式语法树时由循环嵌套造成的移进/归约冲突,采用消除其中的外部循环和内部循环之一的方法;对于其它符合ATLAS文法的冲突,则由YACC工具按照默认规则去处理。上述解决冲突的方法应用在.ATLAS翻译器构建项目中的语法分析过程中,成功完成了项目要求。 六、本研究工作的第四部分,也是整个研究项目中最重要的一部分,针对不同类型的ATLAS语句,按照其与C语言语句相应的对照关系,本文给出了实现不同类型ATLAS语句到标准C语言语句翻译的相应方案及实现。 ATLAS是一种特殊的面向信号的编程语言规范,其语句构造类似于自然语言。ATLAS测试程序与具体的测试仪器无关,只包含一些与测试要求相关的语句,像信号语句、总线语句等,这些语句只有等信号或总线事件准备好后才能执行。与标准C语言不同的是,ATLAS测试规范中包含一些与测试设备、仪器以及被测对象UUT紧密相关的信息,而这些信息是ATLAS测试程序有别于标准C语言的关键元素。在对ATLAS测试程序的处理中,我们将ATLAS语句分成与设备相关和与设备无关的两部分。前者由描述测试特性的信号语句组成,包含ATE及其资源、限制条件以及与UUT接口的相关信息。后者与常规的高级语言语句一样,与仪器无关。 对所有语句的语义分析方法都采用语法制导方法,该方法将语义函数插入到相应语句的产生式后面。在将ATLAS测试程序翻译为标准C程序的过程中,对于与仪器无关的语句直接翻译成标准C语言源代码,将ATLAS的程序结构转化为标准C语言的结构;对于与仪器相关的语句,首先要由ATLAS信号语句确定测试所需虚拟资源的相关信息,然后由GTEST开发平台按照虚拟资源相关信息需求从平台所包含的仪器数据库中选择符合条件的实际资源供翻译过程使用。根据实际资源信息翻译生成的标准c代码可以调用平台提供的真实仪器资源完成相关ATLAS测试程序的功能;最后将这两种情况得到的结果综合,就能生成完整的标准C代码。 本论文首先讨论了常规情况下ATLAS测试程序所使用的大环境——自动测试系统ATS的体系结构,提出利用UML的扩展机制获取自动测试系统ATS的领域知识的方法实例,然后按照ATLAS翻译器构造的顺序,依次阐述了ATLAS翻译器构造中的词法、语法分析中所遇到的问题及相应解决方案;ATLAS翻译器构造中的语义翻译如何实现的问题;在GTEST自动测试系统平台中ATLAS测试程序的包装及调用问题;另外还介绍了本论文所讨论的ATLAS翻译器在GTEST平台上针对“125电台”和“任务计算机”的ATLAS测试程序的运行分析,通过和PAWS软件平台上的运行结果对比,验证了ATLAS翻译器的性能及语义翻译含义的正确性;最后,通过本翻译器的构建,作者提出了构建整体的ATLAS升级版本(ATLAS2K)翻译器(或编译器)产品的一些构想和展望,指出构建类似产品时可能会遇到的相关问题及解决方案。
其他文献
学位
本文对基于ARM的嵌入式TCP/IP协议栈的实现进行了研究。文章设计的嵌入式TCP/IP协议栈是在遵循标准的TCP/IP协议的基础下进行的。在本协议栈的设计中充分使用了实时操作系统
对于人体肠道疾病的检查目前主要有内窥镜检查和CT图像检查,这两种方式都是基于对肠道图像的研究,已经广泛应用于实际的检查中,但是由于这两种检查方法对图像的成像质量有较大的
在泵站供水工程中,由于人工操作失误、事故停机、自然灾害等原因,使得水力过渡过程现象(即水锤现象)频繁发生,造成泵站供水停止、机组机房损坏、甚至人员伤亡等事故。水锤对泵站
舰船装备鉴定试验的主要目的是考核舰船的综合性能,常常要用到测试平台。过去常使用固定式桩基测试平台,这种平台初始投资大,且不便于维护保养。相比较而言,移动试验平台投资费用
请下载后查看,本文暂不支持在线获取查看简介。 Please download to view, this article does not support online access to view profile.
电网的安全运行针对电力系统的稳定运行而言十分重要.因为电网系统需要不断地改善,在为社会带来便利的前提下,却同时面临着一定的风险.本文首先介绍了电网运行方式中的风险管
一个油田的勘探装备的状况,很大程度上反映了这个油田的勘探水平。我国目前的地震勘探在陆上大部分地区仍主要采用在井中用炸药进行爆炸的激发方式,炸药震源的主要缺点是不安
现代潜艇减振降噪静音技术快速发展,使其高频辐射噪声级大大降低,基于低频/甚低频波段被动声特征成为针对安静型潜艇的有效探测手段,但其潜能尚未充分挖掘。水下目标激发的低
在能源日益紧张的今天,节能已成为人们所关注的焦点问题。船舶节能的根本问题在于船舶的阻力。对于内河分节顶推船队来讲,推船阻力占有相当大的比重,可以超过30%,推船阻力的