浮点运算单元测试方法、装置、集控设备以及存储介质
技术领域
本发明涉及数据测试领域,特别涉及一种浮点运算单元测试方法、装置、集控设备以及计算机可读存储介质。
背景技术
现代CPU(central processing unit,中央处理器)、GPU(graphics processingunit,图形处理器)或FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)等硬件设计中,一般都包含FPU(Float Point Unit,浮点运算单元)。FPU提供了浮点加法、减法、乘法或除法等浮点运算功能。在FPU硬件设计完成之后,通常会对FPU进行测试。
相关技术中,公布了一种测试方法,利用软件工具包,基于浮点运算IEEE(电气和电子工程师协会)标准,通过命令行方式,对FPU进行测试,以获得FPU的测试结果。
但是,采用现有的测试方法,对FPU进行测试时,测试操作复杂,使得测试效率较低。
发明内容
本发明的主要目的是提供一种浮点运算单元测试方法、装置、集控设备以及计算机可读存储介质,旨在解决现有技术中采用现有的测试方法,对FPU进行测试时,测试操作复杂,使得测试效率较低的技术问题。
为实现上述目的,本发明提出一种浮点运算单元测试方法,用于集控设备,所述集控设备与待测试浮点运算单元连接,所述方法包括以下步骤:
接收用户发送的第一目标配置参数和目标测试用例数量;
基于所述第一目标配置参数和所述目标测试用例数量,利用预设测试包集合,生成目标测试用例;
将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果;
接收所述待测试浮点运算单元返回的所述测试结果。
可选的,所述集控设备具有控制区,所述控制区具有模式按钮;所述接收用户发送的第一目标配置参数和目标测试用例数量的步骤之前,所述方法还包括:
接收用户针对所述模式按钮的测试模式选择框的第一选择操作;
基于所述第一选择操作,进入测试模式;
所述接收用户发送的第一目标配置参数和目标测试用例数量的步骤,包括:
在所述集控设备处于所述测试模式时,接收用户发送的第一目标配置参数和目标测试用例数量。
可选的,所述集控设备具有显示区;所述接收所述待测试浮点运算单元返回的所述测试结果的步骤之后,所述方法还包括:
接收用户针对所述模式按钮的计算模式选择框的第二选择操作;
基于所述第二选择操作,进入计算模式;
接收用户发送的第二目标配置参数和目标浮点数;
基于所述第二目标配置参数,利用预设测试包集合,对所述目标浮点数进行运算,以获得结果数据;
在所述显示区输出所述结果数据和所述目标浮点数。
可选的,所述控制区还具有生成按钮,所述第一目标配置参数包括目标运算精度、目标运算类型、目标舍入模式和目标极小模式;所述基于所述第目标配置参数和所述目标测试用例数量,利用预设测试包集合,生成目标测试用例的步骤,包括:
在接收到用户针对所述生成按钮的第一确定操作时,基于所述第一确定操作、所述目标运算精度、所述目标运算类型、所述目标舍入模式、所述目标极小模式和所述目标测试用例数量,利用所述预设测试包集合中的运算精度配置软件、运算类型配置软件、舍入模式配置软件、极小模式配置软件、测试用例数量配置软件和测试用例生成软件,生成所述目标测试用例。
可选的,所述控制区还具有运算精度按钮、运算类型按钮、舍入模式按钮、极小模式按钮以及随机生成数量按钮;所述接收用户发送的第一目标配置参数和目标测试用例数量的步骤,包括:
接收用户针对所述运算精度按钮的第三选择操作,并基于所述第三选择操作,获得所述第一目标运算精度;
接收用户针对所述运算类型按钮的第四选择操作,并基于所述第四选择操作,获得所述第一目标运算类型;
接收用户针对所述舍入模式按钮的第五选择操作,并基于所述第五选择操作,获得所述第一目标舍入模式;
接收用户针对所述极小模式按钮的第六选择操作,并基于所述第六选择操作,获得所述第一目标极小模式;
接收用户针对所述随机生成数量按钮的第七选择操作,并基于所述第七选择操作,获得所述目标测试用例数量。
可选的,所述结果数据包括结果浮点数、所述结果浮点数对应的第一符号段、所述结果浮点数对应的第一尾数段、所述结果浮点数对应的第一指数段和所述结果浮点数对应的异常段;所述在所述集控设备的显示区输出所述结果数据和所述目标浮点数的步骤之前,所述方法还包括:
基于所述目标浮点数,获得所述目标浮点数对应的第二符号段、所述目标浮点数对应的第二尾数段和所述目标浮点数对应的第二指数段;
基于所述目标浮点数的个数,在所述显示区中确定出第一区域和第二区域;
所述在所述集控设备的显示区输出所述结果数据和所述目标浮点数的步骤,包括:
在所述第一区域输出所述结果浮点数、所述第一符号段、所述第一尾数段、所述第一指数段和所述异常段;
在所述第二区域输出所述目标浮点数、所述第二符号段、所述第二尾数段和所述第二指数段。
可选的,所述控制区还具有开始按钮;所述将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果的步骤,包括:
在接收到用户针对所述开始按钮的第二确定操作时,将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果。
可选的,所述控制区还具有校验按钮;所述接收所述待测试浮点运算单元返回的所述测试结果的步骤之后,所述方法还包括:
在所述显示区输出所述测试结果;
在接收到用户针对所述校验按钮的第三确定操作时,对输出状态的所述测试结果进行校验,以获得校验结果;
在所述显示区输出所述校验结果。
可选的,所述控制区还具有保存按钮;所述在所述显示区输出所述校验结果的步骤之后,所述方法还包括:
在接收到用户针对所述保存按钮的第四确定操作时,存储所述校验结果和所述测试结果。
可选的,
所述运算精度按钮具有半精度选择框、单精度选择框、双精度选择框、扩展双精度选择框和四精度选择框;
所述运算类型按钮具有加选择框、减选择框、乘选择框、除选择框、平方选择框、乘加选择框、求余选择框、类型转换选择框、等于选择框、小于选择框和大于选择框;其中,所述类型转换选择框还具有浮点转浮点子选择框、浮点转整型子选择开和整型转浮点子选择框;
所述舍入模式按钮具有向最近舍入选择框、向0舍入选择框、向负无穷大舍入选择框、向正无穷大舍入选择看和向最近舍入选择框;
所述极小模式按钮具有舍入前选择框和舍入后选择框。
此外,为实现上述目的,本发明还提出了一种浮点运算单元测试装置,用于集控设备,所述集控设备与待测试浮点运算单元连接,所述装置包括:
第一接收模块,用于接收用户发送的第一目标配置参数和目标测试用例数量;
生成模块,用于基于所述第一目标配置参数和所述目标测试用例数量,利用预设测试包集合,生成目标测试用例;
发送模块,用于将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果;
第二接收模块,用于接收所述待测试浮点运算单元返回的所述测试结果。
此外,为实现上述目的,本发明还提出了一种集控设备,所述集控设备包括:存储器、处理器及存储在所述存储器上并在所述处理器上运行浮点运算单元测试程序,所述浮点运算单元测试程序被所述处理器执行时实现如上述任一项所述的浮点运算单元测试方法的步骤。
此外,为实现上述目的,本发明还提出了一种计算机可读存储介质,所述计算机可读存储介质上存储有浮点运算单元测试程序,所述浮点运算单元测试程序被处理器执行时实现如上述任一项所述的浮点运算单元测试方法的步骤。
本发明技术方案提出了一种浮点运算单元测试方法,用于集控设备,所述集控设备与待测试浮点运算单元连接,通过接收用户发送的第一目标配置参数和目标测试用例数量;基于所述第一目标配置参数和所述目标测试用例数量,利用预设测试包集合,生成目标测试用例;将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果;接收所述待测试浮点运算单元返回的所述测试结果。
现有的方法中,通过命令行方式,对待测试浮点运算单元进行测试,需要用户花费较大的时间和精力手动配置大量的命令行,测试操作复杂,使得测试效率较低。而本申请中,基于所述第一目标配置参数和所述目标测试用例数量,直接利用预设测试包集合,生成目标测试用例,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果,并不需要用户手动配置大量的命令行,使得测试操作简单快速,提高了测试效率。所以,利用本发明的方法,提高了待测试浮点运算单元的测试效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明实施例方案涉及的硬件运行环境的集控设备结构示意图;
图2为本发明浮点运算单元测试方法第一实施例的流程示意图;
图3为本发明集控设备的功能框图;
图4为本发明集控设备处于计算模式下显示区的示意图;
图5为本发明浮点运算单元测试装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的集控设备结构示意图。
集控设备可以是移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(PDA)、平板电脑(PAD)等用户设备(User Equipment,UE)、手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备、移动台(Mobile station,MS)等。集控设备可能被称为用户终端、便携式终端、台式终端等。
通常,集控设备包括:至少一个处理器301、存储器302以及存储在所述存储器上并可在所述处理器上运行的浮点运算单元测试程序,所述浮点运算单元测试程序配置为实现如前所述的浮点运算单元测试方法的步骤。
处理器301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(CentralProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。处理器301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关浮点运算单元测试方法操作,使得浮点运算单元测试方法模型可以自主训练学习,提高效率和准确度。
存储器302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器301所执行以实现本申请中方法实施例提供的浮点运算单元测试方法。
在一些实施例中,终端还可选包括有:通信接口303和至少一个外围设备。处理器301、存储器302和通信接口303之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与通信接口303相连。具体地,外围设备包括:射频电路304、显示屏305和电源306中的至少一种。
通信接口303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器301和存储器302。在一些实施例中,处理器301、存储器302和通信接口303被集成在同一芯片或电路板上;在一些其他实施例中,处理器301、存储器302和通信接口303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏305用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏305是触摸显示屏时,显示屏305还具有采集在显示屏305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器301进行处理。此时,显示屏305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏305可以为一个,电子设备的前面板;在另一些实施例中,显示屏305可以为至少两个,分别设置在电子设备的不同表面或呈折叠设计;在再一些实施例中,显示屏305可以是柔性显示屏,设置在电子设备的弯曲表面上或折叠面上。甚至,显示屏305还可以设置成非矩形的不规则图形,也即异形屏。显示屏305可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
电源306用于为电子设备中的各个组件进行供电。电源306可以是交流电、直流电、一次性电池或可充电电池。当电源306包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。本领域技术人员可以理解,图1中示出的结构并不构成对集控设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有浮点运算单元测试程序,所述浮点运算单元测试程序被处理器执行时实现如上文所述的浮点运算单元测试方法的步骤。因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。确定为示例,程序指令可被部署为在一个集控设备上执行,或者在位于一个地点的多个集控设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个集控设备备上执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的计算机可读存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
基于上述硬件结构,提出本发明浮点运算单元测试方法的实施例。
参照图2,图2为本发明浮点运算单元测试方法第一实施例的流程示意图,所述方法用于集控设备,所述方法包括以下步骤:
步骤S11:接收用户发送的第一目标配置参数和目标测试用例数量。
需要说明的是,本发明的执行主体是集控设备,集控设备安装有浮点运算单元测试程序,集控设备结构参照上文描述,集控设备执行浮点运算单元测试程序时,实现本发明的浮点运算单元测试方法的步骤。
具体的,所述第一目标配置参数包括目标运算精度、目标运算类型、目标舍入模式和目标极小模式,其中,目标运算精度为半精度(16bit)、单精度(32bit)、双精度(64bit)、扩展双精度(80bit)或四精度(64bit)中的一种,不同精度下,对应的计算模式(本申请涉及测试模式和计算模式,下文具体描述)的符号段、尾数段以及指数段的参数参照表1,表1如下:
表1
符号段
尾数段
指数段
半精度(16bit)
1bit
10bit
5bit
单精度(32bit)
1bit
23bit
8bit
双精度(64bit)
1bit
52bit
11bit
扩展双精度(80bit)
1bit
64bit
15bit
四精度(128bit)
1bit
112bit
15bit
目标运算类型为加、减、乘、除、平方、乘加、求余、类型转换、等于、小于或大于;其中,所述涉及类型转换还具有浮点转浮点、浮点转整型或整型转浮点,浮点有5种类型,即16bit、32bit、64bit、80bit和128bit,整型有4种类型,即无符号32bit、无符号64bit、有符号32bit和有符号64bit,类型转换涉及所有类型的组合,例如浮点(16bit)转浮点(32bit),浮点(128bit)转整型(有符号32bit),本发明不做一一列举。
目标舍入模式为最近舍入(偶数优先)、向0舍入、向负无穷大舍入、向正无穷大舍入选择看或向最近舍入(最大值优先)中的一种。
目标极小模式为舍入前或舍入后中的一种,即处理舍入配置和极小配置的先后顺序。
目标测试用例数量是指需要生成的测试用例的数量,测试用例是用于浮点运算单元进行测试的。
具体应用中,可以是用户手动输入的第一目标配置参数和目标测试用例数量,可以是通过集控设备的键盘输入模块或语音输入模块输入的,本发明不做限制。
进一步的,所述集控设备具有控制区,所述控制区具有模式按钮;所述接收用户发送的第一目标配置参数和目标测试用例数量的步骤之前,所述方法还包括:接收用户针对所述模式按钮的测试模式选择框的第一选择操作;基于所述第一选择操作,进入测试模式;所述接收用户发送的第一目标配置参数和目标测试用例数量的步骤,包括:在所述集控设备处于所述测试模式时,接收用户发送的第一目标配置参数和目标测试用例数量。
参照图3,图3为本发明集控设备的功能框图,集控设备通过硬件适配器与硬件FPU(浮点运算单元)连接,集控设备可以通过API接口调用预设测试包集合,预设测试包集合可以是集控设备预存的。硬件适配器负责测试集控设备和硬件设计(待测试FPU,即图4中的硬件FPU)的交互工作。集控设备生成目标测试用例后,适配器负责将目标测试用例发送给硬件设计接口;硬件设计计算完成后,适配器负责将测试结果返回到集控设备。不同的硬件设计逻辑需要不同的适配器。
图3中,控制区包括模式按钮、运算精度按钮、运算类型按钮、舍入模式按钮、极小模式按钮、随机生成数量按钮、生成按钮、校验按钮以及保存按钮。其中,模式按钮包括计算模式选择框和测试模式选择框,用户可以通过对测试模式选择框发送第一选择操作,即选择测试模式,使得集控设备进入测试模式,在集控设备处于测试模式时,方可发送第一目标配置参数和目标测试用例数量。可以理解的是,控制区可以集控设备的显示屏中一部分区域,此时,上述按钮均为虚拟按钮;控制区也可以是集控设备的非显示屏中的一部分区域,此时,上述按钮可以为实体按钮。
具体的,参照图3,所述控制区还具有运算精度按钮、运算类型按钮、舍入模式按钮、极小模式按钮以及随机生成数量按钮;接收用户针对所述运算精度按钮的第三选择操作,并基于所述第三选择操作,获得所述第一目标运算精度;接收用户针对所述运算类型按钮的第四选择操作,并基于所述第四选择操作,获得所述第一目标运算类型;接收用户针对所述舍入模式按钮的第五选择操作,并基于所述第五选择操作,获得所述第一目标舍入模式;接收用户针对所述极小模式按钮的第六选择操作,并基于所述第六选择操作,获得所述第一目标极小模式;接收用户针对所述随机生成数量按钮的第七选择操作,并基于所述第七选择操作,获得所述目标测试用例数量。
其中,所述运算精度按钮具有半精度选择框、单精度选择框、双精度选择框、扩展双精度选择框和四精度选择框;所述运算类型按钮具有加选择框、减选择框、乘选择框、除选择框、平方选择框、乘加选择框、求余选择框、类型转换选择框、等于选择框、小于选择框和大于选择框;其中,所述类型转换选择框还具有浮点转浮点子选择框、浮点转整型子选择开和整型转浮点子选择框,对于类型转换中的每一个选择框,还包括不同浮点类型和整点类型的全部组合结果,例如,浮点转浮点子选择框涉及全部浮点类型的组合,全部浮点类型参照上文描述,包括5中,同时,全部整点类型包括4终;所述舍入模式按钮具有向最近舍入选择框、向0舍入选择框、向负无穷大舍入选择框、向正无穷大舍入选择看和向最近舍入选择框;所述极小模式按钮具有舍入前选择框和舍入后选择框。
可以理解的是,第三选择操作为对运算精度按钮涉及的全部选择框中的任一选择框的选择操作,例如,第三选择操作为选择运算精度为半精度选择框,此时目标运算精度即为半精度;同理,第四选择操作、第五选择操作、第六选择操作均是涉及的多个选择框中选择其中一个选项。对于随机生成数量按钮的第七选择操作,即是点击随机生成数量按钮,机会获得随机数,即所述目标测试用例数量,比如500个或10万个等。
可以理解的是,在上述涉及的全部按钮和选择框可以是实体按钮,也可以是集控设备显示屏输出的虚拟按钮,虚拟按钮显示于显示设备的显示屏的控制区。即,在本发明中,控制区可以是实体按钮对应的操作区,控制区也可以是集控设备的显示屏中虚拟按钮对应的操作区。显示区即为集控设备的显示屏的部分区域(控制区为虚拟按钮对应的显示屏的一部分区域)或全部区域(控制区为实体按钮对应的区域)。
步骤S13:基于所述第一目标配置参数和所述目标测试用例数量,利用预设测试包集合,生成目标测试用例。
通过获得所述第一目标配置参数和所述目标测试用例数量,集控设备通过API接口,调用预存的预设测试包集合,生成目标测试用例,目标测试用例的数量即为所述目标测试用例数量。
进一步的,参照图3,所述控制区还具有生成按钮,所述基于所述第目标配置参数和所述目标测试用例数量,利用预设测试包集合,生成目标测试用例的步骤,包括:在接收到用户针对所述生成按钮的第一确定操作时,基于所述第一确定操作、所述目标运算精度、所述目标运算类型、所述目标舍入模式、所述目标极小模式和所述目标测试用例数量,利用所述预设测试包集合中的运算精度配置软件、运算类型配置软件、舍入模式配置软件、极小模式配置软件、测试用例数量配置软件和测试用例生成软件,生成所述目标测试用例。
可以理解的是,第一确定操作即为点击生成按钮。同时,在预设测试包集合中,具有多种软件,可以包括运算精度配置软件、运算类型配置软件、舍入模式配置软件、极小模式配置软件、测试用例数量配置软件和测试用例生成软件等,用于利用所述目标运算精度、所述目标运算类型、所述目标舍入模式、所述目标极小模式和所述目标测试用例数量,分别对运算精、运算类型、舍入模式配置、极小模式和测试用例数量进行配置,并在配置完成之后,基于配置后的各个参数,利用测试用例生成软件,生成目标测试用例。
步骤S13:所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果;
步骤S14:接收所述待测试浮点运算单元返回的所述测试结果。
需要说明的是,生成目标测试用例之后,即可利用目标测试用例对待测试浮点运算单元进行测试,以获得测试结果。
进一步的,参照图3,所述控制区还具有开始按钮;所述将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果的步骤,包括:
在接收到用户针对所述开始按钮的第二确定操作时,将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果。
进一步的,参照图3,所述控制区还具有校验按钮;所述接收所述待测试浮点运算单元返回的所述测试结果的步骤之后,所述方法还包括:在所述显示区输出所述测试结果;在接收到用户针对所述校验按钮的第三确定操作时,对输出状态的所述测试结果进行校验,以获得校验结果;在所述显示区输出所述校验结果。
在接收所述待测试浮点运算单元返回的所述测试结果之后,继续由集控设备对测试结果进行校验,以获得校验结果,校验结果即为所述测试结果是否通过校验,通过校验即测试结果有效,未通过校验,测试结果无效。
进一步的,在校验结果为校验成功时,即测试结果有效,可以对测试结果进行分析,以获得FPU的硬件测试信息等。
参照图3,在集控设备处于测试模式下,可以是点击开始按钮以开始执行步骤S13,并在执行完S13之后,接收到所述待测试浮点运算单元反馈的所述测试结果时,显示屏显示测试结果,并在继续点击校验按钮后,对所述测试结果进行校验,以获得校验结果。
进一步的,参照图3,所述控制区还具有保存按钮;所述在所述显示区输出所述校验结果的步骤之后,所述方法还包括:在接收到用户针对所述保存按钮的第四确定操作时,存储所述校验结果和所述测试结果。
在获得校验结果后,还可以点击存储按钮,以将本次的测试结果和校验结果存储于集控设备。
在另一些实施例中,在测试模式下进行上述步骤过程中,集控设备的显示屏的显示区可以滚屏动态显示交互信息。例如,生成目标测试用例成功后,显示“已成功生成测试用例xx个”,并且显示生成的目标测试用例的具体数据信息,如果生成测试用例失败了,显示“警告!生成测试用例失败!”等。
进一步的,参照图3,所述集控设备具有显示区;所述接收所述待测试浮点运算单元返回的所述测试结果的步骤之后,所述方法还包括:接收用户针对所述模式按钮的计算模式选择框的第二选择操作;基于所述第二选择操作,进入计算模式;接收用户发送的第二目标配置参数和目标浮点数;基于所述第二目标配置参数,利用预设测试包集合,对所述目标浮点数进行运算,以获得结果数据;在所述显示区输出所述结果数据和所述目标浮点数。
具体的,所述结果数据包括结果浮点数、所述结果浮点数对应的第一符号段、所述结果浮点数对应的第一尾数段、所述结果浮点数对应的第一指数段和所述结果浮点数对应的异常段;所述在所述集控设备的显示区输出所述结果数据和所述目标浮点数的步骤之前,所述方法还包括:基于所述目标浮点数,获得所述目标浮点数对应的第二符号段、所述目标浮点数对应的第二尾数段和所述目标浮点数对应的第二指数段;基于所述目标浮点数的个数,在所述显示区中确定出第一区域和第二区域;所述在所述集控设备的显示区输出所述结果数据和所述目标浮点数的步骤,包括:在所述第一区域输出所述结果浮点数、所述第一符号段、所述第一尾数段、所述第一指数段和所述异常段;在所述第二区域输出所述目标浮点数、所述第二符号段、所述第二尾数段和所述第二指数段。
需要说明的是,第二选择操作即是对计算模式选择框的选择操作,用于集控设备进入计算模式,同理,第二目标参数的获得方式参照上文第一目标参数的获得方式,此处不再赘述。另外,目标浮点数即为进行计算操作的浮点数,可以是多个也可以是一个,目标浮点数可以是在显示屏的显示区输入的,即,在计算模式时,显示区首先输出目标浮点数的输入框,用于键入目标浮点数。
可以理解的是,所述基于所述第二目标配置参数,利用预设测试包集合,对所述目标浮点数进行运算,以获得结果数据的步骤,包括:在接收到用户针对所述开始按钮的第五确定操作时,基于所述第五确定操作和所述第二目标配置参数,利用预设测试包集合,对所述目标浮点数进行运算,以获得结果数据。其中,第五确定操作即为点击所述开始按钮。
可以理解的是,在获得第二目标配置参数和目标浮点数时,点击生成开始,即可获得对应的结果数据。集控设备利用第二目标配置参数和目标浮点数,通过API接口,调用预设测试包集合中的各个测试包(上文所述的多种测试包),对目标浮点数进行运算,以获得结果数据。
参照图4,图4为本发明集控设备处于计算模式下显示区的示意图。在图4中,目标浮点数为3个,第二区域分成了三部分,分别用于显示3个目标浮点数的相关值。可以理解的是,目标浮点数的数量不同,显示区的显示情况不同,例如,目标浮点数为1个,则第一区域和第二区域可以是高度相同的两个区域,目标浮点数为2个时,第二区域包括两个目标浮点数的相关值,第二区域的高度可能是第一区域的2倍。
可以理解的是,图4中的显示区、第一区域和第二区域并不构成本发明的限定,用户可以基于需求设定其他的显示方式,只要是实现显示区显示的具体值包括所述结果浮点数、所述第一符号段、所述第一尾数段、所述第一指数段、所述异常段、所述目标浮点数、所述第二符号段、所述第二尾数段和所述第二指数段等均可。
本发明技术方案提出了一种浮点运算单元测试方法,用于集控设备,所述集控设备与待测试浮点运算单元连接,通过接收用户发送的第一目标配置参数和目标测试用例数量;基于所述第一目标配置参数和所述目标测试用例数量,利用预设测试包集合,生成目标测试用例;将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果;接收所述待测试浮点运算单元返回的所述测试结果。
现有的方法中,通过命令行方式,对待测试浮点运算单元进行测试,需要用户花费较大的时间和精力手动配置大量的命令行,测试操作复杂,使得测试效率较低。而本申请中,基于所述第一目标配置参数和所述目标测试用例数量,直接利用预设测试包集合,生成目标测试用例,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果,并不需要用户手动配置大量的命令行,使得测试操作简单快速,提高了测试效率。所以,利用本发明的方法,提高了待测试浮点运算单元的测试效率。
参照图5,图5为本发明浮点运算单元测试装置第一实施例的结构框图,装置用于集控设备,所述装置包括:
第一接收模块10,用于接收用户发送的第一目标配置参数和目标测试用例数量;
生成模块20,用于基于所述第一目标配置参数和所述目标测试用例数量,利用预设测试包集合,生成目标测试用例;
发送模块30,用于将所述目标测试用例发送至所述待测试浮点运算单元,以使所述待测试浮点运算单元利用所述目标测试用例进行测试,以获得测试结果;
第二接收模块40,用于接收所述待测试浮点运算单元返回的所述测试结果。
以上所述仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。