CN115562959A - 分支预测功能的验证方法、装置、电子设备及存储介质 - Google Patents

分支预测功能的验证方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115562959A
CN115562959A CN202211061249.4A CN202211061249A CN115562959A CN 115562959 A CN115562959 A CN 115562959A CN 202211061249 A CN202211061249 A CN 202211061249A CN 115562959 A CN115562959 A CN 115562959A
Authority
CN
China
Prior art keywords
test
excitation
data
verified
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211061249.4A
Other languages
English (en)
Inventor
刘超
李孟
徐恒梅
张凡
高峰
张延飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peng Cheng Laboratory
Original Assignee
Peng Cheng Laboratory
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peng Cheng Laboratory filed Critical Peng Cheng Laboratory
Priority to CN202211061249.4A priority Critical patent/CN115562959A/zh
Publication of CN115562959A publication Critical patent/CN115562959A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing

Abstract

本申请公开了分支预测功能的验证方法、装置、电子设备及可读存储介质,应用于计算机技术领域,包括:若接收到针对于待验证处理器的验证指令,则在待验证处理器对应的测试激励数据包中选取激励关联数据;依据激励关联数据对应的激励测试信息,对待验证处理器进行分支测试,得到对应的分支测试结果;若接收到所述激励关联数据进行分支测试的测试完成指令,则依据激励测试信息,对待验证处理器进行分支预测,得到对应的分支预测结果;依据分支测试结果和分支预测结果共同对应的比对结果,对待验证处理器进行迭代验证,直至检测到验证后的待验证处理器具备预设验证效果。本申请解决了进行分支预测功能验证的验证准确性低的技术问题。

Description

分支预测功能的验证方法、装置、电子设备及存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种分支预测功能的验证方法、 装置、电子设备及可读存储介质。
背景技术
随着计算机技术的不断发展,处理器的运行性能变得尤为重要,因此, 在处理分支指令时,为了避免等待分支指令执行结果以决定分支方向的情况 发生,处理器通常会采用分支预测(Branch Prediction)技术,由于分支预测 左右着处理器的性能,所以一个准确度高的分支预测器是提升处理器运行性 能的关键部件,目前,通常通过分支预测验证平台运行随机性的仿真测试用 例,以验证处理器的分支预测功能,也即,通过比对模型运行随机性的仿真 测试用例输出测试结果,进而通过比对参考模型针对于仿真测试用例输出的 分支预测结果,以验证分支预测功能的准确性,但是,由于参考模型缺乏时 序信息,在面对存在耦合关系的测试激励数据时,参考模型通常依赖于比对 模型中的信号变化,例如在比对模型中抽样配置测试探针,但是,由于测试 探针的引入既增加了不确定因素,又无法完全反映分支测试过程,进而导致 参考模型过于依赖比对模型进行分支预测,所以,当前进行分支预测功能验 证的验证准确性低。
发明内容
本申请的主要目的在于提供一种分支预测功能的验证方法、装置、电子 设备及可读存储介质,旨在解决现有技术中进行分支预测功能验证的验证准 确性低的技术问题。
为实现上述目的,本申请提供一种分支预测功能的验证方法,应用于分 支预测功能验证平台,所述分支预测功能的验证方法包括:
若接收到针对于待验证处理器的验证指令,则在所述待验证处理器对应 的测试激励数据包中选取激励关联数据,其中,所述激励关联数据用于表征 所述测试激励数据包中的测试激励数据之间的耦合关系;
依据所述激励关联数据对应的激励测试信息,对所述待验证处理器进行 分支测试,得到对应的分支测试结果;
若接收到所述激励关联数据进行分支测试的测试完成指令,则依据所述 激励测试信息,对所述待验证处理器进行分支预测,得到对应的分支预测结 果;
依据所述分支测试结果和所述分支预测结果共同对应的比对结果,对所 述待验证处理器进行迭代验证,直至检测到验证后的待验证处理器具备预设 验证效果。
为实现上述目的,本申请还提供一种分支预测功能的验证装置,应用于 分支预测功能验证平台,所述分支预测功能的验证装置包括:
选取模块,用于若接收到针对于待验证处理器的验证指令,则在所述待 验证处理器对应的测试激励数据包中选取激励关联数据,其中,所述激励关 联数据用于表征所述测试激励数据包中的测试激励数据之间的耦合关系;
测试模块,用于依据所述激励关联数据对应的激励测试信息,对所述待 验证处理器进行分支测试,得到对应的分支测试结果;
预测模块,用于若接收到所述激励关联数据进行分支测试的测试完成指 令,则依据所述激励测试信息,对所述待验证处理器进行分支预测,得到对 应的分支预测结果;
验证模块,用于依据所述分支测试结果和所述分支预测结果共同对应的 比对结果,对所述待验证处理器进行迭代验证,直至检测到验证后的待验证 处理器具备预设验证效果。
本申请还提供一种电子设备,所述电子设备包括:存储器、处理器以及 存储在所述存储器上并可在所述处理器上运行的所述分支预测功能的验证方 法的程序,所述分支预测功能的验证方法的程序被处理器执行时可实现如上 述的分支预测功能的验证方法的步骤。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存 储有实现分支预测功能的验证方法的程序,所述分支预测功能的验证方法的 程序被处理器执行时实现如上述的分支预测功能的验证方法的步骤。
本申请还提供一种计算机程序产品,包括计算机程序,所述计算机程序 被处理器执行时实现如上述的分支预测功能的验证方法的步骤。
本申请提供了一种分支预测功能的验证方法、装置、电子设备及可读存 储介质,应用于分支预测功能验证平台,也即,若接收到针对于待验证处理 器的验证指令,则在所述待验证处理器对应的测试激励数据包中选取激励关 联数据,其中,所述激励关联数据用于表征所述测试激励数据包中的测试激 励数据之间的耦合关系;依据所述激励关联数据对应的激励测试信息,对所 述待验证处理器进行分支测试,得到对应的分支测试结果;若接收到所述激 励关联数据进行分支测试的测试完成指令,则依据所述激励测试信息,对所述待验证处理器进行分支预测,得到对应的分支预测结果;依据所述分支测 试结果和所述分支预测结果共同对应的比对结果,对所述待验证处理器进行 迭代验证,直至检测到验证后的待验证处理器具备预设验证效果。由于所述 激励关联数据用于表征所述测试激励数据包中的测试激励数据之间的耦合关 系,进而通过分支预测功能验证平台对存在耦合关系的测试激励数据分别进 行分支测试和分支预测,即可实现独立进行分支测试和分支预测的目的,而 非在进行分支预测时需依赖于测试激励数据的测试过程,所以克服了现有技术中通过采样测试过程中的信号变化,进而导致对分支预测功能进行验证过 于片面的技术缺陷,所以,提升了进行分支预测功能的验证准确性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申 请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实 施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于 本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这 些附图获得其他的附图。
图1为本申请分支预测功能的验证方法第一实施例的流程示意图;
图2为本申请分支预测功能的验证方法第二实施例的流程示意图;
图3为本申请分支预测功能的验证装置实施例的示意图;
图4为本申请实施例中分支预测功能的验证方法涉及的硬件运行环境的 设备结构示意图。
本申请目的实现、功能特点及优点将结合实施例,参照附图做进一步说 明。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本 发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。 显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。 基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提 下所获得的所有其它实施例,均属于本发明保护的范围。
实施例一
本申请实施例提供一种分支预测功能的验证方法,在本申请分支预测功 能的验证方法的第一实施例中,参照图1,所述分支预测功能的验证方法包括:
步骤S10,若接收到针对于待验证处理器的验证指令,则在所述待验证处 理器对应的测试激励数据包中选取激励关联数据,其中,所述激励关联数据 用于表征所述测试激励数据包中的测试激励数据之间的耦合关系;
在本实施例中,需要说明的是,现有对分支预测功能的通用验证方法通 常在验证过程通常采用随机测试程序,由于参考模型缺乏时序信息,并且是 在假设部分功能正确的前提下进行分支预测的,进而导致分支预测结果的准 确性低,例如,在一种可实施的方式中,假设某一数据由A发送至B,在实 际应用场景下,不同时间段的网络情况时不同的,例如,在网络不拥塞的情 况下需通过路径a将数据由A发送至B,而在网络拥塞的情况下需通过路径b 将数据由A发送至B,但是,由于参考模型缺乏时序信息,进而无法对不同 时间段的网络情况进行预测,也就无法预测数据由A发送至B的具体路径, 所以,目前通过在比对模型中加入假设条件或探针信号等方法去验证分支预 测功能的准确性低,所述分支预测功能验证平台用于验证待验证处理器的分 支预测功能,具体为验证所述待验证处理器的分支预测模块,可设置于测试 终端,所述待验证处理器为等待验证分支预测模块的处理器,所述待验证处 理器具体可安装于智能终端,所述智能终端具体可以为手机或电脑等。
另外地,需要说明的是,所述验证指令用于触发分支预测功能平台进行 分支预测功能的验证,具体可由用户向所述测试终端输入语音或文本等信息 触发,所述测试激励数据包由多个测试激励数据组成,所述测试激励数据用 于表征测试激励,由所述分支预测功能验证平台的激励生成器生成,例如, 在一种可实施的方式中,所述测试激励为基本指令,所述基本指令可以为分 支指令、空指令或跳转指令等,所述测试激励数据包为基本指令集X,所述 测试激励数据分别为x、y和z,所述激励关联数据可以为“x和y”、“x和 z”、“y和z”以及“x、y和z”,也即,测试激励数据x和测试激励数据y 存在耦合关系,测试激励数据x和测试激励数据z存在耦合关系等,由于激 励关联数据用于表征所述测试激励数据包中的测试激励数据之间的耦合关 系,也即,所述激励关联数据由两个或两个以上的测试激励数据组成,倘若 各所述测试激励数据间均不存在耦合关系,即任一测试激励数据执行结果均 不会影响其它测试激励数据的执行结果,则基于通用验证方法即可对分支预 测功能进行准确验证,而当所述测试激励数据间存在耦合关系,则表明前一 测试激励数据的执行结果,会影响后一测试激励数据的执行结果,进而通用 验证方法搭建的参考模型无法准确验证分支预测功能,而本申请实施例搭建 的分支预测功能验证平台正是为了准确验证分支预测功能。
另外地,需要说明的是,所述分支预测功能验证平台包括激励生成器、 被测逻辑模块、参考模型、监视器、比较器、分支测试采样模块以及分支预 测触发模块,其中,所述分支测试采样模块用于所述激励生成器采样激励关 联数据,并分别发送至所述参考模型和所述被测逻辑模块,被测逻辑模块用 于执行被测逻辑,也即比对模型,所述参考模型用于进行分支预测,输出分 支测试结果,所述监视器用于监控所述被测逻辑模块是否完成针对于所述激 励关联数据的分支测试,当监控到所述分支测试完成时,则通过参考模型进 行针对于所述激励关联数据的分支预测,输出分支预测结果,所述比较器用 于比较所述分支测试结果为分支预测结果,所述分支测试结果为实际输出结 果,其中,被测逻辑模块在接收到所述激励关联数据后便进行分支测试,参 考模型在接收到所述激励关联数据后将所述激励关联数据存储至预设存储空 间,并等待所述监控器触发分支预测,由于分支预测是分支测试完成时触发 的,进而可使得激励关联数据解耦合,当激励关联数据存在多个时,各激励 关联数据依次分别发送至被测逻辑模块和参考模型,则所述比较器对某一激 励关联数据对应的分支测试结果和分支预测结果进行比较的时间和其它激励 关联数据发送至被测逻辑模块和参考模型的时间可以相同或不同,例如,在 一种可实施的方式中,假设测试激励数据包中可选取的激励关联数据为A1、 A2、A3和A4,A1、A2、A3和A4根据用户选定的测试顺序依次进行分支测试, A1、A2、A3或A4的分支测试完成时会触发进行对应的分支预测,当A1、A2、A3和A4均通过比较器比对后方可认定该验证结束,当A1进行分支测试完成后, 则触发参考模型进行A1对应的分支预测,当通过比较器比较A1的实际输出结 果和分支预测时,可同步发送A2、A3或A4分别至被测逻辑模块和参考模型。
作为一种示例,步骤S10包括:若接收到用户针对于待验证处理器输入 的验证指令,则在所述待验证处理器对应的测试激励数据包中采样至少一个 激励关联数据,并在各所述激励关联数据中选取任一激励关联数据,在分支预 测功能验证平台进行验证前,需通过前期的检查工作,也即,验证各模块是 否根据指令触发预先设计的验证流程,当验证流程无误时,可指导验证平台 对整个设计代码的验证。
其中,所述在所述待验证处理器对应的测试激励数据包中选取激励关联 数据的步骤包括:
步骤A10,获取所述待验证处理器对应的测试激励数据包;
步骤A20,若接收到所述测试激励数据包对应的数据选取信息,则依据 所述选取信息,在所述测试激励数据包对应的至少一个测试激励数据组中选 取测试激励目标数据组;
步骤A30,将所述测试激励目标数据组中的至少一个测试激励数据作为 所述激励关联数据。
在本实施例中,需要说明的是,若人工一一选取激励关联数据,可能导 致验证效率过低,所以,所述数据选取信息用于定义至少一个激励关联数据 的选取策略,具体由用户根据实际需求进行设定,例如,在一种可实施的方 式中,假设所述激励关联数据包括B1、B2和B3,其中,各激励关联数据的测 试难度可以为B1>B2>B3,也可以为B1<B2<B3,则所述数据选取信息用于表征 依次由易至难选取B3、B2和B1或B1、B2和B3
另外地,需要说明的是,为减少人工干预,以进一步提升验证效率,可 在选取测试激励数据时根据所测试的逻辑设计的特征进行一一对应的分组, 也即,通过最少次数的测试以及无需人工干预实现对分支预测功能的完备性 验证,所以,所述测试激励数据组用于表征根据被测逻辑设计对测试激励数 据包进行分组后组成的测试激励数据,所述测试目标激励数据组用于表征当 前进行分支测试的测试激励数据组,其中,所述测试激励数据组的组数由逻 辑设计特性决定,各所述测试激励数据组中包括至少一个测试激励数据,各所述测试激励数据组中的测试激励数据可以相同或不同,各所述测试激励数 据组实现对所述测试激励数据包中的测试激励数据的遍历,例如,在一种可 实施的方式中,所述测试激励数据包括10个测试激励数据,各所述测试激励 数据组可根据需求自由组合至少一个测试激励数据,但是,所有测试激励数 据组一定遍历该10个测试激励数据。
作为一种示例,步骤A10至步骤A30包括:获取所述待验证处理器对应 的测试激励数据包;若接收到用户针对于所述测试激励数据包输入的数据选 取信息,则依据所述选取信息,在所述测试激励数据包对应的至少一个测试 激励数据组中选取测试激励目标数据组;将所述测试激励目标数据组中的至 少一个测试激励数据作为所述激励关联数据。
其中,所述数据选取信息包括数据分组信息和数据次序信息,所述在所 述测试激励数据包对应的至少一个测试激励数据组中选取测试激励目标数据 组的步骤包括:
步骤B10,依据所述数据分组信息,对所述测试激励数据包中的测试激 励数据进行穷尽分组,得到预设数量的测试激励数据组;
步骤B20,依据所述数据次序信息,在预设次序标识映射表查询对应的 目标数据组标识;
步骤B30,将各所述测试激励数据组中目标数据组标识对应的测试激励 数据组作为测试激励目标数据组。
在本实施例中,需要说明的是,若任一选取当前时刻的激励关联数据, 可能导致分支测试重复,进而导致分支测试功能的验证效率低,也即,假设 分支预测功能验证平台在进行某一激励关联数据的分支测试后,则默认该激 励关联数据不为后续采样中的激励关联数据,所以,所述数据选取信息包括 数据分组信息和数据次序信息,所述数据分组信息用于遍历分组所述测试激 励数据包,所述数据次序信息用于确定各测试激励数据组中的至少一个测试 激励数据的分支测试次序,也即,确定各测试激励数据组中的激励关联数据 的分支测试次序,所述预设次序标识映射表用于存储所述数据次序信息和所 述目标数据组标识的映射关系,基于所述目标数据组标识,可确定所述测试 激励目标数据组,其中,所述测试激励目标数据组中的至少一个测试激励数 据均为激励关联数据。
作为一种示例,步骤B10至步骤B30包括:依据所述数据分组信息,对 所述测试激励数据包中的测试激励数据进行穷尽分组,得到预设数量的测试 激励数据组;以所述数据次序信息为索引,在预设次序标识映射表查询对应 的目标数据组标识;将各所述测试激励数据组中目标数据组标识对应的测试 激励数据组作为测试激励目标数据组。
在一种可实施的方式中,若测试激励数据组的数量趋近于无穷,则可选 取具有特征性的测试激励数据组,以表征对所述测试激励数据包的遍历。
其中,在所述依据所述数据次序信息,在预设次序标识映射表查询对应 的目标数据组标识的步骤之前,所述分支预测功能的验证方法还包括:
步骤C10,获取各测试激励数据组对应的数据测试次序和对应的数据组 标识;
步骤C20,依据各所述数据测试次序和各所述数据组标识之间的一一对 应关系,建立所述预设次序标识映射表。
作为一种示例,步骤C10至步骤C20包括:获取各测试激励数据组对应 的数据测试次序和对应的数据组标识,其中,所述数据组标识用于区别标识 各所述测试激励数据组,所述数据测试次序用于表征各所述测试激励数据组 进行分支测试的次序;依据各所述数据测试次序和各所述数据组标识之间的 一一对应关系,建立所述预设次序标识映射表。
其中,在所述将所述测试激励数据组中的至少一个测试激励数据作为所 述激励关联数据的步骤之后,所述分支预测功能的验证方法还包括:
步骤D10,获取所述测试激励数据包对应的激励特征信息;
步骤D20,依据所述测试激励目标数据组对应的组别特征信息,对所述 激励特征信息进行更新,得到所述激励关联数据对应的激励测试信息。
在本实施例中,需要说明的是,所述激励特征信息用于表征所述测试激 励数据的至少一个测试激励数据均具备的激励特征,当在所述测试激励数据 包中分组各所述测试激励数据后,不同分组之间将存在组别差异,所以,所 述组别特征信息用于表征各所述测试激励数据组的组别配置,所述激励测试 信息用于解耦合分支测试与分支预测,也即,通过所述激励测试信息,可确 保所述分支测试与分支预测是在同一环境下针对于所述激励关联数据进行 的,所以,保证了进行分支测试结果和分支预测结果比对前的稳定性。
作为一种示例,步骤D10至步骤D20包括:获取所述测试激励数据包对 应的激励特征信息;依据所述测试激励目标数据组对应的组别特征信息,对 所述激励特征信息进行更新,得到所述激励关联数据对应的激励测试信息。
步骤S20,依据所述激励关联数据对应的激励测试信息,对所述待验证处 理器进行分支测试,得到对应的分支测试结果;
步骤S30,若接收到所述激励关联数据进行分支测试的测试完成指令,则 依据所述激励测试信息,对所述待验证处理器进行分支预测,得到对应的分 支预测结果;
步骤S40,依据所述分支测试结果和所述分支预测结果共同对应的比对结 果,对所述待验证处理器进行迭代验证,直至检测到验证后的待验证处理器 具备预设验证效果。
在本实施例中,需要说明的是,所述测试完成指令为所述激励关联数据 完成分支测试的指令,具体由用户通过在所述分支预测功能验证平台输入语 音或文本信息触发,当所述测试完成指令触发后,则可对分支预测模块进行 反向推导,以比较实际输出结果和分支预测结果是否一致,其中,所述测试 完成指令可以由用户在确认所述激励关联数据完全进行分支测试后输入,可 以由用户在确认所述激励关联数据部分进行分支测试后输入,例如,在一种 可实施的方式中,各所述激励关联数据进行分支测试的过程称之为不同轮次的测试激励,当每一轮测试激励在被测逻辑设计模块执行完成后,会产生断 点事件,进而监控器在监控到断点事件,且参考模型在得到每轮的中断时间 后,进行针对于该轮测试激励的分支预测,输出分支预测结果,所述迭代验 证即对每轮测试激励产生的分支测试结果和分支预测结果进行比对,所述比 对的内容可以为指令数或指令执行路径等。
另外地,需要说明的是,所述比对的方式可根据用户的比对需求进行设 置,具体可以为顺序比对、乱序比对或丢包比对等,以增加验证的完备性和 随机性,当所述激励关联数据为多个时,在进行任一激励关联数据对应的分 支测试结果和分支测试结果的比对后,便进行下一激励关联数据的分支测试, 直至达到预设验证效果,其中,所述预设验证效果可由用户根据验证需求进 行设置,例如,在一种可实施的方式中,当穷尽分组的各激励数据组均进行 分支测试结果和分支预测结果的比对后,则认定满足预设验证效果。
作为一种示例,步骤S20至步骤S40包括:依据所述激励关联数据对应 的激励测试信息,对所述待验证处理器进行分支测试,得到对应的分支测试 结果;若接收到用户针对于所述激励关联数据进行分支测试的测试完成指令, 则依据所述激励测试信息,对所述待验证处理器进行分支预测,得到对应的 分支预测结果;通过所述分支测试结果和所述分支预测结果是否一致,得到 所述分支测试结果和所述分支预测结果共同对应的比对结果,并返回执行步 骤:在所述待验证处理器对应的测试激励数据包中选取激励关联数据。
本申请实施例提供了一种分支预测功能的验证方法,应用于分支预测功 能验证平台,也即,若接收到针对于待验证处理器的验证指令,则在所述待 验证处理器对应的测试激励数据包中选取激励关联数据,其中,所述激励关 联数据用于表征所述测试激励数据包中的测试激励数据之间的耦合关系;依 据所述激励关联数据对应的激励测试信息,对所述待验证处理器进行分支测 试,得到对应的分支测试结果;若接收到所述激励关联数据进行分支测试的 测试完成指令,则依据所述激励测试信息,对所述待验证处理器进行分支预测,得到对应的分支预测结果;依据所述分支测试结果和所述分支预测结果 共同对应的比对结果,对所述待验证处理器进行迭代验证,直至检测到验证 后的待验证处理器具备预设验证效果。由于所述激励关联数据用于表征所述 测试激励数据包中的测试激励数据之间的耦合关系,进而通过分支预测功能 验证平台对存在耦合关系的测试激励数据分别进行分支测试和分支预测,即 可实现独立进行分支测试和分支预测的目的,而非在进行分支预测时需依赖 于测试激励数据的测试过程,所以克服了现有技术中通过采样测试过程中的信号变化,进而导致对分支预测功能进行验证过于片面的技术缺陷,所以, 提升了进行分支预测功能的验证准确性。
实施例二
进一步地,参照图2,在本申请另一实施例中,与上述实施例一相同或相 似的内容,可以参考上文介绍,后续不再赘述。在此基础上,所述预设验证 效果包括第一预设验证效果和第二预设验证效果,所述依据所述分支测试结 果和所述分支预测结果共同对应的比对结果,对所述待验证处理器进行迭代 验证,直至检测到验证后的待验证处理器具备预设验证效果的步骤包括:
步骤E10,通过比对所述分支测试结果和所述分支预测结果是否一致,得 到比对结果,其中,所述比对结果包括第一比对结果和第二比对结果;
步骤E20,若所述比对结果为所述第一比对结果,则依据所述激励关联数 据对应的数据测试次序,确定所述验证后的待验证处理器是否具备所述预设 第一验证效果;
步骤E30,若所述比对结果为所述第二比对结果,则确定所述验证后的待 验证处理器具备所述第二预设验证效果。
在本实施例中,需要说明的是,由于验证过程可能出现分支测试结果和 分支预测结果不一致的情况,倘若在出现分支测试结果和分支预测结果不一 致后继续对分支预测功能进行验证,则无法保证验证的准确性,进而在出现 分支测试结果和分支预测结果不一致后则确定验证后的待验证处理器具备预 设验证效果,以结束仿真测试,所以,所述第一比对结果用于表征所述分支 测试结果和所述分支预测结果一致,所述第二比对结果用于表征所述分支测 试结果和所述分支预测结果不一致,当所述比对结果一致时,则要根据当前 激励关联数据的数据测试次序,确定是否还存在未进行分支测试和分支预测 的激励关联数据。
作为一种示例,步骤E10至步骤E30包括:若所述分支测试结果和所述 分支预测结果一致,则所述比对结果为所述第一比对结果,若所述分支测试 结果和所述分支预测结果不一致,则所述比对结果为所述第二比对结果;若 所述比对结果为所述第一比对结果,则依据所述激励关联数据对应的数据测 试次序,确定所述验证后的待验证处理器是否具备所述预设第一验证效果; 若所述比对结果为所述第二比对结果,则确定所述验证后的待验证处理器具 备所述第二预设验证效果。
其中,所述依据所述激励关联数据对应的数据测试次序,确定所述验证 后的待验证处理器是否具备所述预设第一验证效果的步骤包括:
步骤F10,检测所述数据测试次序是否为预设测试终止次序;
步骤F20,若是,则确定所述验证后的待验证处理器具备所述预设第一验 证效果;
步骤F30,若否,则确定所述验证后的待验证处理器不具备所述预设第一 验证效果,并返回执行步骤:在所述待验证处理器对应的测试激励数据包中 选取激励关联数据。
在本实施例中,需要说明的是,所述预设测试终止次序用于表征分支预 测功能验证终止,具体可由用户根据需求设定,例如,倘若用户在进行若干 测试激励数据组中进行部分数据组的分支预测结果和分支测试结果的比对, 达到了自身需求,则可提前结束分支预测功能验证,也可以为若干组均已进 行分支预测结果和分支测试结果的比对,当某一激励关联数据对应的比对结 果不一致时,可在测试终端的预设显示界面输出报错信息,以供用户根据报 错信息进行下一步处理。
作为一种示例,步骤F10至步骤F30包括:检测所述数据测试次序是否 为预设测试终止次序;若所述数据测试次序为所述预设测试终止次序,则确 定所述验证后的待验证处理器具备预设第一验证效果;若所述数据测试次序 不为所述预设测试终止次序,则确定所述验证后的待验证处理器不具备所述 预设第一验证效果,并返回执行步骤:在所述待验证处理器对应的测试激励 数据包中选取激励关联数据。
本申请实施例提供了一种分支预测功能的验证结果检测方法,也即,通 过比对所述分支测试结果和所述分支预测结果是否一致,得到比对结果,其 中,所述比对结果包括第一比对结果和第二比对结果;若所述比对结果为所 述第一比对结果,则依据所述激励关联数据对应的数据测试次序,确定所述 验证后的待验证处理器是否具备所述预设第一验证效果;若所述比对结果为 所述第二比对结果,则确定所述验证后的待验证处理器具备所述第二预设验 证效果。相比于在分组后各组均进行自动化比对,以验证分支预测功能的验证方式,本申请实施例仅在当前激励关联数据对应的比对结果一致,且对应 的数据测试次序不为预设测试终止次序时进行自动化比对,实现了对激励关 联数据的分支预测结果和分支测试结果进行有效比对的目的,进而规避了当 激励关联数据的比对结果不一致后,仍进行测试关联数据的无效比对,进而 导致验证结果的参考性不足,所以,提升了分支预测功能验证的验证准确性。
实施例三
本申请实施例还提供一种分支预测功能的验证装置,参照图4,所述分支 预测功能的验证装置包括:
选取模块101,用于若接收到针对于待验证处理器的验证指令,则在所述 待验证处理器对应的测试激励数据包中选取激励关联数据,其中,所述激励 关联数据用于表征所述测试激励数据包中的测试激励数据之间的耦合关系;
测试模块102,用于依据所述激励关联数据对应的激励测试信息,对所述 待验证处理器进行分支测试,得到对应的分支测试结果;
预测模块103,用于若接收到所述激励关联数据进行分支测试的测试完成 指令,则依据所述激励测试信息,对所述待验证处理器进行分支预测,得到 对应的分支预测结果;
验证模块104,用于依据所述分支测试结果和所述分支预测结果共同对应 的比对结果,对所述待验证处理器进行迭代验证,直至检测到验证后的待验 证处理器具备预设验证效果。
可选地,所述选取模块101还用于:
获取所述待验证处理器对应的测试激励数据包;
若接收到所述测试激励数据包对应的数据选取信息,则依据所述选取信 息,在所述测试激励数据包对应的至少一个测试激励数据组中选取测试激励 目标数据组;
将所述测试激励目标数据组中的至少一个测试激励数据作为所述激励关 联数据。
可选地,所述数据选取信息包括数据分组信息和数据次序信息,所述选 取模块101还用于:
依据所述数据分组信息,对所述测试激励数据包中的测试激励数据进行 穷尽分组,得到预设数量的测试激励数据组;
依据所述数据次序信息,在预设次序标识映射表查询对应的目标数据组 标识;
将各所述测试激励数据组中目标数据组标识对应的测试激励数据组作为 测试激励目标数据组。
可选地,所述分支预测功能的验证装置还用于:
获取各测试激励数据组对应的数据测试次序和对应的数据组标识;
依据各所述数据测试次序和各所述数据组标识之间的一一对应关系,建 立所述预设次序标识映射表。
可选地,所述预设验证效果包括第一预设验证效果和第二预设验证效果, 所述选取模块101还用于:
通过比对所述分支测试结果和所述分支预测结果是否一致,得到比对结 果,其中,所述比对结果包括第一比对结果和第二比对结果;
若所述比对结果为所述第一比对结果,则依据所述激励关联数据对应的 数据测试次序,确定所述验证后的待验证处理器是否具备所述预设第一验证 效果;
若所述比对结果为所述第二比对结果,则确定所述验证后的待验证处理 器具备所述第二预设验证效果。
可选地,所述选取模块101还用于:
检测所述数据测试次序是否为预设测试终止次序;
若是,则确定所述验证后的待验证处理器具备所述预设第一验证效果;
若否,则确定所述验证后的待验证处理器不具备所述预设第一验证效果, 并返回执行步骤:在所述待验证处理器对应的测试激励数据包中选取激励关 联数据。
可选地,所述分支预测功能的验证装置还用于:
获取所述测试激励数据包对应的激励特征信息;
依据所述测试激励目标数据组对应的组别特征信息,对所述激励特征信 息进行更新,得到所述激励关联数据对应的激励测试信息。
本发明提供的分支预测功能的验证装置,采用上述实施例中的分支预测 功能的验证方法,解决了进行分支预测功能验证的验证准确性低的技术问题。 与现有技术相比,本发明实施例提供的分支预测功能的验证装置的有益效果 与上述实施例提供的分支预测功能的验证方法的有益效果相同,且该分支预 测功能的验证装置中的其他技术特征与上述实施例方法公开的特征相同,在 此不做赘述。
实施例四
本发明实施例提供一种电子设备,电子设备包括:至少一个处理器;以 及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一 个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能 够执行上述实施例一中的分支预测功能的验证方法。
下面参考图4,其示出了适于用来实现本公开实施例的电子设备的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图4示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图4所示,电子设备可以包括处理装置1001(例如中央处理器、图形处理器等),其可以根据存储在只读存储器(ROM)1002中的程序或者从存储装置1003加载到随机访问存储器(RAM)1004中的程序而执行各种适当的动作和处理。在RAM1004中,还存储有电子设备操作所需的各种程序和数据。处理装置1001、ROM1002以及RAM1004通过总线1005彼此相连。输入/输出(I/O)接口1006也连接至总线。
通常,以下系统可以连接至I/O接口1006:包括例如触摸屏、触摸板、 键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置1007; 包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1008;包括例 如磁带、硬盘等的存储装置1003;以及通信装置1009。通信装置可以允许电 子设备与其他设备进行无线或有线通信以交换数据。虽然图中示出了具有各 种系统的电子设备,但是应理解的是,并不要求实施或具备所有示出的系统。 可以替代地实施或具备更多或更少的系统。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现 为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包 括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程 图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信 装置1009从网络上被下载和安装,或者从存储装置1003被安装,或者从 ROM1002被安装。在该计算机程序被处理装置1001执行时,执行本公开实 施例的方法中限定的上述功能。
本发明提供的电子设备,采用上述实施例中的分支预测功能的验证方法, 解决了进行分支预测功能验证的验证准确性低的技术问题。与现有技术相比, 本发明实施例提供的电子设备的有益效果与上述实施例提供的分支预测功能 的验证方法的有益效果相同,且该电子设备中的其他技术特征与上述实施例 方法公开的特征相同,在此不做赘述。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实 现。在上述实施方式的描述中,具体特征、结构、材料或者特点可以在任何 的一个或多个实施例或示例中以合适的方式结合。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限 于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易 想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护 范围应以所述权利要求的保护范围为准。
实施例五
本实施例提供一种计算机可读存储介质,具有存储在其上的计算机可读 程序指令,计算机可读程序指令用于执行上述实施例中的分支预测功能的验 证方法。
本发明实施例提供的计算机可读存储介质例如可以是U盘,但不限于电、 磁、光、电磁、红外线、或半导体的系统、系统或器件,或者任意以上的组 合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多 个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只 读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、 便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者 上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包 含或存储程序的有形介质,该程序可以被指令执行系统、系统或者器件使用 或者与其结合使用。计算机可读存储介质上包含的程序代码可以用任何适当 的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任 意合适的组合。
上述计算机可读存储介质可以是电子设备中所包含的;也可以是单独存 在,而未装配入电子设备中。
上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多 个程序被电子设备执行时,使得电子设备:若接收到针对于待验证处理器的 验证指令,则在所述待验证处理器对应的测试激励数据包中选取激励关联数 据,其中,所述激励关联数据用于表征所述测试激励数据包中的测试激励数 据之间的耦合关系;依据所述激励关联数据对应的激励测试信息,对所述待 验证处理器进行分支测试,得到对应的分支测试结果;若接收到所述激励关 联数据进行分支测试的测试完成指令,则依据所述激励测试信息,对所述待 验证处理器进行分支预测,得到对应的分支预测结果;依据所述分支测试结 果和所述分支预测结果共同对应的比对结果,对所述待验证处理器进行迭代 验证,直至检测到验证后的待验证处理器具备预设验证效果。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作 的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如 Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言 或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地 在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部 分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远 程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机 (例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和 计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或 框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、 程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行 指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以 以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可 以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能 而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程 图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统 来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可 以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该单 元本身的限定。
本发明提供的计算机可读存储介质,存储有用于执行上述分支预测功能 的验证方法的计算机可读程序指令,解决了进行分支预测功能验证的验证准 确性低的技术问题。与现有技术相比,本发明实施例提供的计算机可读存储 介质的有益效果与上述实施例提供的分支预测功能的验证方法的有益效果相 同,在此不做赘述。
实施例六
本申请还提供一种计算机程序产品,包括计算机程序,所述计算机程序 被处理器执行时实现如上述的分支预测功能的验证方法的步骤。
本申请提供的计算机程序产品解决了进行分支预测功能验证的验证准确 性低的技术问题。与现有技术相比,本发明实施例提供的计算机程序产品的 有益效果与上述实施例提供的分支预测功能的验证方法的有益效果相同,在 此不做赘述。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是 利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间 接运用在其他相关的技术领域,均同理包括在本申请的专利处理范围内。

Claims (10)

1.一种分支预测功能的验证方法,其特征在于,应用于分支预测功能验证平台,所述分支预测功能的验证方法包括:
若接收到针对于待验证处理器的验证指令,则在所述待验证处理器对应的测试激励数据包中选取激励关联数据,其中,所述激励关联数据用于表征所述测试激励数据包中的测试激励数据之间的耦合关系;
依据所述激励关联数据对应的激励测试信息,对所述待验证处理器进行分支测试,得到对应的分支测试结果;
若接收到所述激励关联数据进行分支测试的测试完成指令,则依据所述激励测试信息,对所述待验证处理器进行分支预测,得到对应的分支预测结果;
依据所述分支测试结果和所述分支预测结果共同对应的比对结果,对所述待验证处理器进行迭代验证,直至检测到验证后的待验证处理器具备预设验证效果。
2.如权利要求1所述分支预测功能的验证方法,其特征在于,所述在所述待验证处理器对应的测试激励数据包中选取激励关联数据的步骤包括:
获取所述待验证处理器对应的测试激励数据包;
若接收到所述测试激励数据包对应的数据选取信息,则依据所述选取信息,在所述测试激励数据包对应的至少一个测试激励数据组中选取测试激励目标数据组;
将所述测试激励目标数据组中的至少一个测试激励数据作为所述激励关联数据。
3.如权利要求2所述分支预测功能的验证方法,其特征在于,所述数据选取信息包括数据分组信息和数据次序信息,
所述在所述测试激励数据包对应的至少一个测试激励数据组中选取测试激励目标数据组的步骤包括:
依据所述数据分组信息,对所述测试激励数据包中的测试激励数据进行穷尽分组,得到预设数量的测试激励数据组;
依据所述数据次序信息,在预设次序标识映射表查询对应的目标数据组标识;
将各所述测试激励数据组中目标数据组标识对应的测试激励数据组作为测试激励目标数据组。
4.如权利要求3所述分支预测功能的验证方法,其特征在于,在所述依据所述数据次序信息,在预设次序标识映射表查询对应的目标数据组标识的步骤之前,所述分支预测功能的验证方法还包括:
获取各测试激励数据组对应的数据测试次序和对应的数据组标识;
依据各所述数据测试次序和各所述数据组标识之间的一一对应关系,建立所述预设次序标识映射表。
5.如权利要求3所述分支预测功能的验证方法,其特征在于,所述预设验证效果包括第一预设验证效果和第二预设验证效果,
所述依据所述分支测试结果和所述分支预测结果共同对应的比对结果,对所述待验证处理器进行迭代验证,直至检测到验证后的待验证处理器具备预设验证效果的步骤包括:
通过比对所述分支测试结果和所述分支预测结果是否一致,得到比对结果,其中,所述比对结果包括第一比对结果和第二比对结果;
若所述比对结果为所述第一比对结果,则依据所述激励关联数据对应的数据测试次序,确定所述验证后的待验证处理器是否具备所述预设第一验证效果;
若所述比对结果为所述第二比对结果,则确定所述验证后的待验证处理器具备所述第二预设验证效果。
6.如权利要求5所述分支预测功能的验证方法,其特征在于,所述依据所述激励关联数据对应的数据测试次序,确定所述验证后的待验证处理器是否具备所述预设第一验证效果的步骤包括:
检测所述数据测试次序是否为预设测试终止次序;
若是,则确定所述验证后的待验证处理器具备所述预设第一验证效果;
若否,则确定所述验证后的待验证处理器不具备所述预设第一验证效果,并返回执行步骤:在所述待验证处理器对应的测试激励数据包中选取激励关联数据。
7.如权利要求6所述分支预测功能的验证方法,其特征在于,在所述将所述测试激励数据组中的至少一个测试激励数据作为所述激励关联数据的步骤之后,所述分支预测功能的验证方法还包括:
获取所述测试激励数据包对应的激励特征信息;
依据所述测试激励目标数据组对应的组别特征信息,对所述激励特征信息进行更新,得到所述激励关联数据对应的激励测试信息。
8.一种分支预测功能的验证装置,其特征在于,应用于分支预测功能验证平台,所述分支预测功能的验证装置包括:
选取模块,用于若接收到针对于待验证处理器的验证指令,则在所述待验证处理器对应的测试激励数据包中选取激励关联数据,其中,所述激励关联数据用于表征所述测试激励数据包中的测试激励数据之间的耦合关系;
测试模块,用于依据所述激励关联数据对应的激励测试信息,对所述待验证处理器进行分支测试,得到对应的分支测试结果;
预测模块,用于若接收到所述激励关联数据进行分支测试的测试完成指令,则依据所述激励测试信息,对所述待验证处理器进行分支预测,得到对应的分支预测结果;
验证模块,用于依据所述分支测试结果和所述分支预测结果共同对应的比对结果,对所述待验证处理器进行迭代验证,直至检测到验证后的待验证处理器具备预设验证效果。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7中任一项所述的分支预测功能的验证方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有实现分支预测功能的验证方法的程序,所述实现分支预测功能的验证方法的程序被处理器执行以实现如权利要求1至7中任一项所述分支预测功能的验证方法的步骤。
CN202211061249.4A 2022-08-31 2022-08-31 分支预测功能的验证方法、装置、电子设备及存储介质 Pending CN115562959A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211061249.4A CN115562959A (zh) 2022-08-31 2022-08-31 分支预测功能的验证方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211061249.4A CN115562959A (zh) 2022-08-31 2022-08-31 分支预测功能的验证方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115562959A true CN115562959A (zh) 2023-01-03

Family

ID=84738980

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211061249.4A Pending CN115562959A (zh) 2022-08-31 2022-08-31 分支预测功能的验证方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115562959A (zh)

Similar Documents

Publication Publication Date Title
CN110674047B (zh) 软件测试方法、装置及电子设备
WO2023273561A1 (zh) 一种测试方法、装置、电子设备及存储介质
CN111209202A (zh) 终端应用测试方法和装置
CN113392018B (zh) 流量分发方法、装置、存储介质及电子设备
CN116450511A (zh) 信息更新方法、装置、电子设备和计算机可读介质
CN115562959A (zh) 分支预测功能的验证方法、装置、电子设备及存储介质
CN112596966B (zh) 芯片验证方法、装置、设备、存储介质
CN112379967B (zh) 模拟器检测方法、装置、设备及介质
CN114595154A (zh) Xts失败项的测试方法、装置、电子设备及存储介质
CN114945188A (zh) 蓝牙设备测试方法、装置、电子设备及可读存储介质
CN116149978A (zh) 服务接口测试方法、装置、电子设备及存储介质
CN116932373A (zh) 测试用例筛选方法、设备、存储介质及程序产品
CN112965910A (zh) 自动化回归测试方法、装置、电子设备、存储介质
CN114116480A (zh) 应用程序测试覆盖率的确定方法、装置、介质及设备
CN110417461B (zh) 多故障点的光缆定位方法、装置及终端设备
CN111026651A (zh) 测试方法、装置、存储介质及电子设备
CN115237816B (zh) 系统功能验证方法、装置、电子设备及可读存储介质
CN110489341B (zh) 一种测试方法、装置、存储介质及电子设备
CN114519332B (zh) 一种基于断言的处理器验证方法、装置及电子设备
CN114510305B (zh) 模型训练方法、装置、存储介质及电子设备
CN116306409B (zh) 芯片验证方法、装置、设备及存储介质
CN114327475A (zh) 函数重名检查方法、装置、设备、可读存储介质及产品
CN117389877A (zh) 测试方法、装置、计算机可读介质及电子设备
CN117370302A (zh) 数据类测试方法、装置、设备及存储介质
CN117907809A (zh) 批量芯片测试方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination