基于灰盒的CPU在线测试方法技术

技术编号:9568917 阅读:163 留言:0更新日期:2014-01-16 02:30
本发明专利技术公开了一种基于灰盒的CPU在线测试方法;包括以下步骤:设定安全计算机语言代码规则;提取CPU功能相关的最小语言子集;产生CPU功能测试用例;生成目标代码;在所测试的CPU上运行,产生测试结果;在另一个CPU上比较结果;在另一个CPU上存储所期望的结果;判断测试结果与所期望的结果是否一致;如一致则判定CPU功能正常,继续运行;如不一致则判定系统故障处理。本发明专利技术使用高级计算机语言实现对CPU功能的在线检查,提高测试代码的可移植性与可读性;兼顾了CPU功能层,以及所真实使用到的指令和寄存器的全面覆盖;不需要关闭中断,不需要在自检前后保存和恢复CPU内部状态,不会对CPU当前状态造成破坏。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种基于灰盒的CPU在线测试方法;包括以下步骤:设定安全计算机语言代码规则;提取CPU功能相关的最小语言子集;产生CPU功能测试用例;生成目标代码;在所测试的CPU上运行,产生测试结果;在另一个CPU上比较结果;在另一个CPU上存储所期望的结果;判断测试结果与所期望的结果是否一致;如一致则判定CPU功能正常,继续运行;如不一致则判定系统故障处理。本专利技术使用高级计算机语言实现对CPU功能的在线检查,提高测试代码的可移植性与可读性;兼顾了CPU功能层,以及所真实使用到的指令和寄存器的全面覆盖;不需要关闭中断,不需要在自检前后保存和恢复CPU内部状态,不会对CPU当前状态造成破坏。【专利说明】基于灰盒的CPU在线测试方法
本专利技术属于软件算法领域,用于在线检测CPU执行功能的正确性。
技术介绍
在工业控制系统和安全信号系统(应用于航空电子、铁路信号、核电等行业)中,中央处理器CPU确立了核心控制地位,对于保证系统的安全可靠有着极其重要的作用。为了确保CPU能正确执行功能任务,必须对CPU进行周期性监控。当有异常发现时,要启动故障管理机制,及时采取安全措施以避免更为严重的事故发生。安全领域对于CPU检测一直是业界的难点,通常的做法如图1所示。现有的方法是对CPU的内部资源做检测,比如寄存器组,算术逻辑单元等。但这种方法缺点如下:1.由于目前CPU的集成度越来越高,内部结构越发复杂,对CPU内部做操作可能带来不可预测的风险.2.在系统运行过程中对于CPU做测试常常需要关闭中断,影响安全系统正常的工作和实时响应能力。3.CPU自己对本身的检测结果不可信,如果CPU本身发生故障,测试结果需要自己判断,这有不可预测性。4.CPU测试用例通常会用底层汇编代码实现,由于需要考虑不同架构的CPU,可移植性差,在不同的CPU上需要写不同的测试程序。
技术实现思路
本专利技术所要解决的技术问题是提供一种基于灰盒的CPU在线测试方法,它可以使用高级计算机语言实现对CPU功能的在线检查,提高测试代码的可移植性与可读性。为了解决以上技术问题,本专利技术提供了一种基于灰盒的CPU在线测试方法;包括以下步骤:设定安全计算机语言代码规则;提取CPU功能相关的最小语言子集;产生CPU功能测试用例;生成目标代码;在所测试的CPU上运行,产生测试结果;在另一个CPU上比较结果;在另一个CPU上存储所期望的结果;判断测试结果与所期望的结果是否一致;如一致则判定CPU功能正常,继续运行;如不一致则判定系统故障处理。本专利技术的有益效果在于:使用高级计算机语言实现对CPU功能的在线检查,提高测试代码的可移植性与可读性;兼顾了 CPU功能层,以及所真实使用到的指令和寄存器的全面覆盖;不需要关闭中断,不需要在自检前后保存和恢复CPU内部状态,不会对CPU当前状态造成破坏。优选的,首先针对CPU功能错误进行分类,选取相应的在线测试集合。优选的,可以在两个CPU之间相互执行在线测试。【专利附图】【附图说明】下面结合附图和【具体实施方式】对本专利技术作进一步详细说明。图1是现有检测CPU执行功能的示意图;图2是本专利技术所述方法的示意图;图3是本专利技术所述对CPU功能在线测试过程与结果监控的示意图。图4是本专利技术所述方法在二取二表决模型安全计算机中的典型应用示意图。【具体实施方式】本专利技术提供一种基于灰盒测试的CPU在线测试方法,该算法能够应用于包括但并不局限于安全信号系统、工业控制系统等领域。本专利技术对上述算法做了更高层次的算法改进,克服了现有技术的缺点,又能达到覆盖CPU功能故障的目的。灰盒(Gray Box)是一种程序或系统上的工作过程被局部认知的装置。灰盒测试,也称作灰盒分析,是基于对程序内部细节有限认知上的软件调试方法。测试者可能知道系统组件之间是如何互相作用的,但缺乏对内部程序功能和运作的详细了解。对于内部过程,灰盒测试把程序看作一个必须从外面进行分析的黑盒。灰盒测试由于不需要测试者接触源代码,因此灰盒测试不存在侵略性和偏见。开发者和测试者间有明显的区别,人事冲突的风险减到最小。然而,灰盒测试相对白盒测试更加难以发现并解决潜在问题,尤其在一个单一的应用中,白盒测试的内部细节可以完全掌握。灰盒测试结合了白盒测试盒黑盒测试的要素。它考虑了用户端、特定的系统知识和操作环境。它在系统组件的协同性环境中评价应用软件的设计。灰盒测试由方法和工具组成,这些方法和工具取材于应用程序的内部知识盒与之交互的环境,能够用于黑盒测试以增强测试效率、错误发现和错误分析的效率。灰盒测试涉及输入和输出,但使用关于代码和程序操作等通常在测试人员视野之外的信息设计测试。本专利技术整个算法如下图2所示。具体算法可以分三个阶段:第一阶段是针对CPU功能错误进行分类,选取相应的高级计算机语言中的在线测试集合;第二阶段是对CPU功能在线测试过程与结果监控的方法。第三阶段是对CPU功能在线测试用例覆盖率的确定与补充。阶段一:CPU通用功能错误如下:【权利要求】1.一种基于灰盒的CPU在线测试方法;其特征在于,包括以下步骤: 设定安全计算机语言代码规则; 提取CPU功能相关的最小语目子集; 产生CPU功能测试用例; 生成目标代码; 在所测试的CPU上运行,产生测试结果; 在另一个CPU上比较结果; 在另一个CPU上存储所期望的结果; 判断测试结果与所期望的结果是否一致; 如一致则判定CPU功能正常,继续运行; 如不一致则判定系统故障处理。2.如权利要求1所述的基于灰盒的CPU在线测试方法;其特征在于,首先针对CPU功能错误进行分类,选取相应的在线测试集合。3.如权利要求1所述的基于灰盒的CPU在线测试方法;其特征在于,在两个CPU之间相互执行在线测试。【文档编号】G06F11/36GK103514094SQ201310473086【公开日】2014年1月15日 申请日期:2013年10月11日 优先权日:2013年10月11日 【专利技术者】袁跃峰, 张小林, 林先贤, 赵磊, 严文煜 申请人:上海富欣智能交通控制有限公司本文档来自技高网
...
基于灰盒的CPU在线测试方法

【技术保护点】
一种基于灰盒的CPU在线测试方法;其特征在于,包括以下步骤:设定安全计算机语言代码规则;提取CPU功能相关的最小语言子集;产生CPU功能测试用例;生成目标代码;在所测试的CPU上运行,产生测试结果;在另一个CPU上比较结果;在另一个CPU上存储所期望的结果;判断测试结果与所期望的结果是否一致;如一致则判定CPU功能正常,继续运行;如不一致则判定系统故障处理。

【技术特征摘要】

【专利技术属性】
技术研发人员:袁跃峰张小林林先贤赵磊严文煜
申请(专利权)人:上海富欣智能交通控制有限公司
类型:发明
国别省市:

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

1