[发明专利]处理器程序的测试方法和装置有效
申请号: | 201610620616.8 | 申请日: | 2016-07-29 |
公开(公告)号: | CN107665169B | 公开(公告)日: | 2020-07-28 |
发明(设计)人: | 陈博文 | 申请(专利权)人: | 龙芯中科技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 宋扬;刘芳 |
地址: | 100095 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理器 程序 测试 方法 装置 | ||
1.一种处理器程序的测试方法,其特征在于,用于获取对处理器程序进行测试的测试指令序列以及所述测试指令序列的预期结果序列,所述测试指令序列存储于处理器的内存空间,该方法包括:
获取当前指令地址,所述当前指令地址为所述内存中的地址;
判断所述当前指令地址是否为已存储任一测试指令的已存储指令地址,所述测试指令为待测试的处理器程序所支持的指令;
若所述当前指令地址为所述已存储指令地址,则执行所述当前指令地址中存储的测试指令,并将所述当前指令地址中存储的测试指令的执行结果加入所述预期结果序列;所述存储的测试指令包含有用于重复执行的指令和跳转指令,并将所述跳转指令的跳转地址设置为存储所述测试指令的地址。
2.根据权利要求1所述的测试方法,其特征在于,所述方法还包括:
若所述当前指令地址不是所述已存储指令地址,则
随机生成测试指令,并将所述随机生成的测试指令存储在所述当前指令地址指向的内存空间中;
执行所述当前指令地址中存储的测试指令,并将所述当前指令地址中存储的测试指令的执行结果加入所述预期结果序列。
3.根据权利要求1或2所述的测试方法,其特征在于,所述获取当前指令地址包括:
将随机生成的一个指令地址作为获取的当前指令地址;或者,
获取下一指令地址,将所述下一指令地址作为获取的当前指令地址;或者,
将当前地址递增一个指令长度的地址作为获取的当前指令地址。
4.根据权利要求3所述的测试方法,其特征在于,所述当前指令地址中存储的测试指令为跳转指令;则所述获取下一指令地址包括:
将所述跳转指令指向的下一条待执行指令的地址作为所述下一指令地址。
5.根据权利要求1所述的测试方法,其特征在于,所述方法还包括:
判断所述当前指令地址中存储的测试指令是否会出现不确定结果;
若所述当前指令地址中存储的测试指令会出现不确定结果,则生成修复指令;
将所述修复指令的执行结果加入所述预期结果序列,所述修复指令用于将所述当前指令地址中存储的测试指令的执行结果重置为确定结果。
6.一种处理器程序的测试装置,其特征在于,用于获取对处理器程序进行测试的测试指令序列以及所述测试指令序列的预期结果序列,所述测试指令序列存储于处理器的内存空间,包括:
获取模块,用于获取当前指令地址,所述当前指令地址为所述内存中的地址;
判断模块,用于判断当前指令地址是否为已存储任一测试指令的已存储指令地址,所述测试指令为待测试的处理器程序所支持的指令;
处理模块,用于若所述当前指令地址为所述已存储指令地址,则执行所述当前指令地址中存储的测试指令,并将所述当前指令地址中存储的测试指令的执行结果加入所述预期结果序列;所述存储的测试指令包含有用于重复执行的指令以及跳转指令,并将所述跳转指令的跳转地址设置为存储所述测试指令的地址。
7.根据权利要求6所述的测试装置,其特征在于,所述处理模块还用于:
若所述当前指令地址不是所述已存储指令地址,则
随机生成测试指令,并将所述随机生成的测试指令存储在所述当前指令地址指向的内存空间中;执行所述当前指令地址中存储的测试指令,并将所述当前指令地址中存储的测试指令的执行结果加入所述预期结果序列。
8.根据权利要求6或7所述的测试装置,其特征在于,所述获取模块还用于:
将随机生成的一个指令地址作为获取的当前指令地址;或者,
获取下一指令地址,将所述下一指令地址作为获取的当前指令地址;或者,
将当前地址递增一个指令长度的地址作为获取的当前指令地址。
9.根据权利要求8所述的测试装置,其特征在于,所述获取模块,还用于:
在所述当前指令地址中存储的测试指令为跳转指令时,将所述跳转指令指向的下一条待执行指令的地址作为所述下一指令地址。
10.根据权利要求6所述的测试装置,其特征在于,所述判断模块还用于判断所述当前指令地址中存储的测试指令是否会出现不确定结果;
所述处理模块,还用于若所述当前指令地址中存储的测试指令会出现不确定结果,则生成修复指令,将所述修复指令的执行结果加入所述预期结果序列,所述修复指令用于将所述当前指令地址中存储的测试指令的执行结果重置为确定结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于龙芯中科技术有限公司,未经龙芯中科技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610620616.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种嵌入式软件GUI自动化测试设备
- 下一篇:一种流程测试方法及装置