本发明专利技术涉及计算机技术领域,公开了一种随机测试程序、芯片检测方法及装置,包括随机上下文、头部控制代码、测试指令序列、尾部控制代码,随机上下文中包含多个随机值;头部控制代码用于将随机值存入目标芯片的寄存器中;测试指令序列中包含多个测试指令,测试指令是根据目标指令集、回调函数和ARM指令集编码随机生成的,测试指令序列用于对寄存器中的随机值进行运算,得到测试结果;尾部控制代码用于在执行测试指令序列后,返回目标芯片的目标地址,本发明专利技术可以满足特殊指令的测试需求,提高测试程序的功能测试的有效性。
【技术实现步骤摘要】
本专利技术涉及处理器,具体涉及一种随机测试程序、芯片检测方法及装置。
技术介绍
1、在设计处理器芯片的过程中,需要对所设计的处理器芯片进行验证,以确定所设计的处理器芯片的功能是否正常,是否存在设计缺陷或生产缺陷等。
2、现有技术中,通过模版定义架构和指令集生成测试程序中的指令序列,预定义模版可配置的约束种类有限,无法满足部分指令的特殊测试需求,降低了随机测试的有效性。
技术实现思路
1、有鉴于此,本专利技术提供了一种随机测试程序、芯片检测方法及装置,以解决测试程序有效性的问题。
2、第一方面,本专利技术提供了一种随机测试程序,该程序包括随机上下文、头部控制代码、测试指令序列、尾部控制代码,随机上下文中包含多个随机值;头部控制代码用于将所述随机上下文存入目标芯片的寄存器中;测试指令序列中包含多个测试指令,测试指令是根据目标指令集、回调函数和arm指令集编码随机生成的,测试指令序列用于对寄存器中的随机值进行运算,得到测试结果;尾部控制代码用于在执行测试指令序列后,返回所述目标芯片的目标地址。
3、本专利技术中的随机测试程序,将随机上下文中存入目标芯片的寄存器中,并将生成的测试指令序列对随机值进行运算后获得测试结果,根据测试结果判定目标芯片的功能正确性;根据目标指令集、回调函数和arm指令集编码随机生成的测试指令可以满足特殊指令的测试需求,提高测试程序的功能测试的有效性。
4、在一种可选的实施方式中,测试程序中还包括文件头,包括:
<
p>5、当存储有随机测试程序的存储空间中存储有参考结果时,文件头中包含结果比对标记,参考结果为在参考平台执行随机测试程序的结果。6、本专利技术中结果比对标记用于记录存储有随机测试程序的存储空间是否存储有参考结果,如果存储有结果比对标记,则在目标芯片中调用随机测试程序,得到测试结果。
7、在一种可选的实施方式中,文件头中还包含随机种子、指令数,包括:
8、随机上下文中的随机值是根据随机种子生成的;指令数用于指定测试指令序列中测试指令的个数。
9、本专利技术中随机种子生成随机值,使得生成的随机测试程序更具随机性,随机种子用于生成随机上下文中的随机值,随机上下文在被调用时对目标芯片的寄存器进行初始化,指令数用于指定生成测试指令序列中测试指令的个数,灵活制订测试指令序列,可以满足不同的测试需求。
10、在一种可选的实施方式中,测试指令是通过如下步骤得到的:
11、根据目标指令集随机生成指令;根据arm指令集编码中的编码模式,判断指令是否在合法区间内;若指令在合法区间内,调用指令约束回调函数,以使指令约束回调函数判断指令是否满足约束条件;若指令满足约束条件,将指令作为测试指令加入测试指令序列。
12、本专利技术中判断指令是否属于arm指令集编码中的编码模式中的非法指令区间,若指令在合法区间中,调用指令约束回调函数进行约束,回调函数随机约束能力强,通过为每条指令定义一个回调函数的方式进行约束,避免配置模版有限而导致约束能力不足的问题,效率较高。
13、在一种可选的实施方式中,若指令不在合法区间内,或,指令不满足约束条件,判断指令是否开展异常测试;若开展异常测试,将指令作为测试指令加入测试指令序列;若不开展异常测试,舍弃指令。
14、本专利技术中若指令不在合法区间内,或,指令不满足约束条件,并开展异常测试时,将该指令作为测试指令加入测试指令序列,用于提高随机测试程序的稳定性和容错性,异常测试可以发现由于系统异常、依赖服务器、应用本身异常等原因引起的性能瓶颈,异常测试可以保障随机测试程序的稳定性。
15、第二方面,本专利技术提供了一种芯片检测方法,该方法包括:
16、在目标芯片中调用上述第一方面或其对应的任一实施方式的随机测试程序,得到测试结果;若根据随机测试程序确定存储有随机测试程序的存储空间中存储有参考结果;获取参考结果;根据参考结果与测试结果的比较结果确定目标芯片的异常检测结果。
17、本专利技术中调用随机测试程序得到测试结果,根据参考结果与测试结果的比较结果确定目标芯片的异常检测结果的方法对目标芯片的异常检测更具准确性。
18、在一种可选的实施方式中,若随机测试程序中包含文件头,且文件头中包含结果比对标记,判定存储有随机测试程序的存储空间中存储有参考结果。
19、本专利技术中若文件头中包含结果比对标记,表明存储有随机测试程序的存储空间中存储有参考结果,则无需在参考平台调用随机测试程序,若文件头中不包含结果比对标记,表明存储有随机测试程序的存储空间中没有参考结果。
20、第三方面,本专利技术提供了一种芯片检测装置,该装置包括:
21、调用模块,用于在目标芯片中调用上述第一方面或其对应的任一实施方式的随机测试程序,得到测试结果;
22、第一判定模块,用于根据随机测试程序确定存储有随机测试程序的存储空间中存储有参考结果;
23、参考结果获取模块,用于获取参考结果;
24、结果比较模块,用于根据参考结果与测试结果的比较结果确定目标芯片的异常检测结果。
25、本专利技术中通过调用随机测试程序的测试结果确定目标芯片的异常检测结果,异常检测结果具有准确性。
26、第四方面,本专利技术提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而上述第一方面或其对应的任一实施方式的随机测试程序,或,执行上述第二方面或其对应的任一实施方式的芯片检测方法。
27、第五方面,本专利技术提供了一种计算机可读存储介质,该计算机可读存储介质上存储有上述第一方面或其对应的任一实施方式的随机测试程序,或,计算机指令,计算机指令用于使计算机执行上述第二方面或其对应的任一实施方式的芯片检测方法。
本文档来自技高网...
【技术保护点】
1.一种随机测试程序,其特征在于,包括随机上下文、头部控制代码、测试指令序列、尾部控制代码,
2.根据权利要求1所述的程序,其特征在于,所述随机测试程序中还包括文件头,包括:
3.根据权利要求2所述的程序,其特征在于,所述文件头中还包含随机种子、指令数,包括:
4.根据权利要求1所述的程序,其特征在于,所述测试指令是通过如下步骤得到的:
5.根据权利要求4所述的程序,其特征在于,包括:
6.一种芯片检测方法,其特征在于,包括:
7.根据权利要求6所述的方法,其特征在于,包括:
8.一种芯片检测装置,其特征在于,所述装置包括:
9.一种计算机设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有权利要求1-5中任一项所述的随机测试程序,或,计算机指令,所述计算机指令用于使计算机执行权利要求6或7所述的芯片检测方法。
【技术特征摘要】
1.一种随机测试程序,其特征在于,包括随机上下文、头部控制代码、测试指令序列、尾部控制代码,
2.根据权利要求1所述的程序,其特征在于,所述随机测试程序中还包括文件头,包括:
3.根据权利要求2所述的程序,其特征在于,所述文件头中还包含随机种子、指令数,包括:
4.根据权利要求1所述的程序,其特征在于,所述测试指令是通过如下步骤得到的:
5.根据权利要求4所述的程序,其特征在于,包括:<...
【专利技术属性】
技术研发人员:周文,
申请(专利权)人:杭州鸿钧微电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。