芯片测试方法、系统及可读存储介质与流程

专利2022-05-09  65


本发明涉及测试技术领域,具体涉及一种芯片测试方法、系统及可读存储介质。



背景技术:

随着电子技术的发展,诸如现场可编程门阵列(fpga)之类芯片的应用越来越广泛。并且,在芯片设计过程中,常常会将芯片的功能编写成代码烧录到芯片中验证芯片设计的功能完整性。但在现有的芯片设计功能验证中,由于不同类型芯片所具有的功能不同,导致用于测试的功能代码也不同;同时不同的代码编写人员,对于代码编写的方式也千差万别,难以互相兼容。如此一来,对于不同类型的新开发芯片,通常需要编写新的测试代码,导致耗费大量精力在代码编写上;并且,对不同类型芯片测试过程中的安装拆卸和记录操作,也需要耗费大量的时间精力,使得测试验证的耗时和工作量被大大增加。

因此,如何提供一种能够面对不同的芯片快速产生测试代码,降低芯片设计过程中测试验证的耗时和工作量,以快速实现不同类型芯片设计完整性验证成为本领域亟待解决的问题。



技术实现要素:

基于上述现状,本发明的主要目的在于提供一种芯片测试方法、系统及可读存储介质,以通过配置得到测试程序对下载不同功能程序形成不同类型的待测芯片进行测试,实现快速生成测试代码进行各类型芯片的完整性验证,提高测试验证的效率。

为实现上述目的,本发明采用的技术方案如下:

一种芯片测试方法,应用于芯片测试系统,所述芯片测试系统包括上位机和测试板,所述测试板上搭载有基础芯片;

所述芯片测试方法包括步骤:

s100,建立所述基础芯片与所述上位机之间的通信连接,并向所述基础芯片下载预定的功能程序,形成待测芯片;

s200,所述上位机在接收到对内核支持文件库中各文件和对测试验证程序库中各功能测试模块进行选择的选择指令时,根据所述选择指令选择配置对应的内核支持文件以及测试验证程序,并将所述内核支持文件和所述测试验证程序添加至固有程序模块,形成与所述待测芯片对应的测试程序;

s300,所述上位机在接收到下载指令时,将所述测试程序下发到所述待测芯片,并在接收到配置参数时,将所述配置参数生成为测试用例;

s400,所述待测芯片基于接收到的启动指令驱动所述测试程序和所述功能程序运行,并接收所述上位机下发的测试用例;

s500,所述待测芯片根据所述测试用例,启动所述测试程序内所述测试验证程序的测试任务,对所述待测芯片运行所述功能程序实现的功能进行测试。

优选地,所述选择指令包括用于选择内核支持文件的第一选择指令,所述步骤s200包括:

s210,所述上位机在接收到对内核支持文件库中各文件进行选择的第一选择指令时,查找所述内核支持文件库的各文件中是否存在与所述第一选择指令对应的内核支持文件,若是则执行步骤s220,若否则执行步骤s230;

s220,选择所述内核支持文件,并将选择的所述内核支持文件添加到所述固有程序模块;

s230,输出对所述内核支持文件库进行更新的第一提示信息。

优选地,所述选择指令包括用于选择测试验证程序的第二选择指令,所述步骤s200包括:

s240,所述上位机在接收到对测试验证程序库中各功能测试模块进行选择的第二选择指令时,查找所述测试验证程序库的配置文件中是否记录有与所述第二选择指令对应的选择信息,若是则执行步骤s250,若否则执行步骤s260;

s250,基于测试验证程序库的配置文件查找与所述第二选择指令对应的所有功能测试模块,将所述所有功能测试模块配置为所述测试验证程序,并将所述测试验证程序添加到所述固有程序模块;

s260,输出对所述测试验证程序库进行更新的第二提示信息。

优选地,在所述步骤s250中:

所述上位机接收对所述所有功能测试模块中任意一项功能测试模块的调整信息,根据所述调整信息对所述任意一项功能测试模块进行调整,并将调整后的所述功能测试模块配置为所述测试验证程序,其中,调整包括新增调整、删除调整和替换调整。

优选地,所述固有程序模块包括解析配置模块、打包上报模块、中央控制模块和测试任务模块。

优选地,所述步骤s500包括:

所述待测芯片基于所述解析配置模块对所述测试用例进行解析,获得所述测试用例中的待测任务类型和待测任务参数;

所述待测芯片基于所述中央控制模块控制所述测试验证程序中与所述待测任务类型对应的测试任务进行启动,并基于所述解析配置模块将所述待测任务参数加载到启动的所述测试任务中,以及基于所述测试任务模块执行所述测试任务,对所述待测芯片运行所述功能程序的功能进行测试。

优选地,所述步骤s500之后,所述方法还包括:

所述待测芯片基于所述打包上报模块将测试获得的测试结果上传到所述上位机;

所述上位机对所述测试结果进行解析,获得解析结果,并将所述配置参数中与所述解析结果对应的待测参数和所述解析结果一并保存。

本发明还提供一种芯片测试系统,包括上位机和测试板,所述测试板上搭载有基础芯片,所述基础芯片与所述上位机通信连接,所述基础芯片在下载预定的功能程序后,形成待测芯片;

所述上位机在接收到对内核支持文件库中各文件和对测试验证程序库中各功能测试模块进行选择的选择指令时,根据所述选择指令选择配置对应的内核支持文件以及测试验证程序,并将所述内核支持文件、所述测试验证程序添加至固有程序模块,形成与所述待测芯片对应的测试程序;

所述上位机在接收到下载指令时,将所述测试程序下发到所述待测芯片,并在接收到配置参数时,将所述配置参数生成为测试用例;

所述待测芯片基于接收到的启动指令驱动所述测试程序和所述功能程序运行,并接收所述上位机下发的测试用例;

所述待测芯片根据所述测试用例,启动所述测试程序内所述测试验证程序的测试任务,对所述待测芯片运行所述功能程序实现的功能进行测试。

优选地,所述选择指令包括用于选择内核支持文件的第一选择指令和用于选择测试验证程序的第二选择指令;

所述上位机在接收到对内核支持文件库中各文件进行选择的第一选择指令时,查找所述内核支持文件库的各文件中是否存在与所述第一选择指令对应的内核支持文件,若是则选择所述内核支持文件,并将选择的所述内核支持文件添加到所述固有程序模块,若否则输出对所述内核支持文件库进行更新的第一提示信息;

所述上位机在接收到对测试验证程序库中各功能测试模块进行选择的第二选择指令时,查找所述测试验证程序库的配置文件中是否记录有与所述第二选择指令对应的选择信息,若是则基于测试验证程序库的配置文件查找与所述第二选择指令对应的所有功能测试模块,将所述所有功能测试模块配置为所述测试验证程序,并将所述测试验证程序添加到所述固有程序模块,若否则输出对所述测试验证程序库进行更新的第二提示信息。

本发明还提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的芯片测试方法。

【有益效果】

通过设置包含上位机和测试板的芯片测试系统,对芯片进行测试。测试板上搭载有与上位机通信连接的基础芯片,基础芯片支持下载多种功能程序,且在下载预定的功能程序后形成具有测试需求的待测芯片。上位机内设置有内核支持文件库和测试验证程序库,通过选择指令,从其中分别选择配置出内核支持文件和测试验证程序,并将所选择配置的内核支持文件和测试验证程序添加到固有程序模块,形成用于对待测芯片进行测试的测试程序烧录待测芯片。同时,在上位机上配置生成测试用例下发到待测芯片。待测芯片驱动测试程序和功能程序运行,并根据接收的测试用例,启动测试程序内测试验证程序的测试任务,对待测芯片运行功能程序的功能进行测试。以此,通过将适用于各种类型芯片测试的内核支持文件和测试验证程序,分别形成为内核支持文件库和测试验证程序库;对于待测芯片,从其中选择配置出适用的内核支持文件和测试验证程序,添加到固有程序模块中形成测试程序,避免针对各种类型的芯片单独编写测试代码,提高了测试代码的生成效率。同时基础芯片下载不同的功能程序即可形成不同类型的待测芯片,通过配置生成各自适用的测试程序,并由配置所形成的测试用例,启动测试程序中的测试任务运行进行测试,避免不同类型芯片的安装拆卸和记录的人工测试操作,降低了芯片设计过程中测试验证的耗时和工作量。因而有利于快速实现芯片设计的完整性验证,提升了芯片设计的效率。

本发明的其他有益效果,将在具体实施方式中通过具体技术特征和技术方案的介绍来阐述,本领域技术人员通过这些技术特征和技术方案的介绍,应能理解这些技术特征和技术方案带来的有益技术效果。

附图说明

以下将参照附图对本发明的优选实施方式进行描述。图中:

图1是本发明实施例中芯片测试系统的架构示意图;

图2是本发明芯片测试方法一种实施例的流程图。

具体实施方式

需要说明的是,本发明中采用步骤编号(字母或数字编号)来指代某些具体的方法步骤,仅仅是出于描述方便和简洁的目的,而绝不是用字母或数字来限制这些方法步骤的顺序。本领域的技术人员能够明了,相关方法步骤的顺序,应由技术本身决定,不应因步骤编号的存在而被不适当地限制。

请参照图1,图1是本发明芯片测试方法所应用芯片测试系统的架构示意图。测试系统包括上位机100和测试板200,测试板200上搭载有基础芯片,基础芯片与上位机100之间通信连接。其中,基础芯片可以是cpld(complexprogramminglogicdevice,复杂可程式逻辑装置)芯片,也可以是fpga(fieldprogrammablegatearray,现场可编程逻辑门阵列)芯片,本实施例优选以fpga芯片加以说明。并且,作为基础芯片的fpga芯片支持下载多种实现不同功能的功能程序,如实现数据收发和交换功能的程序,或者实现数学运算功能的程序等。作为基础芯片的fpga芯片安装在测试板200后,通过下载功能程序形成专用于实现某一功能的专用芯片;并且,基础芯片通过下载不同的功能程序可形成不同类型的专用芯片,以避免对不同类型的芯片逐个进行安装和测试,有利于测试操作的简化,提升测试效率。同时,通过对上位机100内所具有的内核支持文件库110和测试验证程序库120的配置,形成测试程序130来实现对fpga芯片运行不同功能程序所实现的功能进行测试。

请参照图2,图2是本实施例芯片测试方法的流程图,该方法包括如下步骤。

步骤s100,建立所述基础芯片与所述上位机100之间的通信连接,并向所述基础芯片下载预定的功能程序,形成待测芯片210;

步骤s200,所述上位机100在接收到对内核支持文件库110中各文件和对测试验证程序库120中各功能测试模块进行选择的选择指令时,根据所述选择指令选择配置对应的内核支持文件131以及测试验证程序132,并将所述内核支持文件131和所述测试验证程序132添加至固有程序模块,形成与所述待测芯片210对应的测试程序130;

步骤s300,所述上位机100在接收到下载指令时,将所述测试程序130下发到所述待测芯片210,并在接收到配置参数时,将所述配置参数生成为测试用例;

步骤s400,所述待测芯片210基于接收到的启动指令驱动所述测试程序130和所述功能程序运行,并接收所述上位机100下发的测试用例;

步骤s500,所述待测芯片210根据所述测试用例,启动所述测试程序130内所述测试验证程序132的测试任务,对所述待测芯片210运行所述功能程序实现的功能进行测试。

本实施例通过将适用于各种类型芯片测试的内核支持文件131和测试验证程序132,分别形成为上位机100的内核支持文件库110和测试验证程序库120;对于待测芯片210,从其中选择配置出适用的内核支持文件131和测试验证程序132,添加到固有程序模块中形成测试程序130,避免针对各种类型的芯片单独编写测试代码,提高了测试代码的生成效率。同时基础芯片下载不同的功能程序即可形成不同类型的待测芯片210,通过配置生成各自适用的测试程序130,并由配置所形成的测试用例,启动测试程序130中的测试任务运行进行测试,避免不同类型芯片的安装拆卸和记录的人工测试操作,降低了芯片设计过程中测试验证的耗时和工作量。因而有利于快速实现芯片设计的完整性验证,提升了芯片设计的效率。

对于步骤s100,基础芯片上设置有用于通信的通信接口,通过该通信接口建立与上位机100之间的通信连接;并且,该通信接口可以是有线通信接口,如串口模块240,也可以是无线通信接口,如无线通信模块。对于有线通信接口,则与上位机100之间建立有线通信连接,对于无线通信接口,则与上位机100之间建立无线通信连接。

进一步地,通过上位机100向基础芯片下载预定的功能程序,不同功能程序用于实现不同的功能;基础芯片在下载某一款功能程序后,即形成一种类型的芯片。本实施例将下载某一预定功能程序后的基础芯片,形成为待测芯片210,并对其运行功能程序所实现的功能进行测试。

对于步骤s200,可理解地,对于下载不同功能程序所形成的不同待测芯片210,具有不同的内核kernel,需要不同的内核支持文件131;故为了适用于不同的待测芯片210的测试需求,预先将适用于不同类型待测芯片210的内核支持文件131集合形成为上位机100内的内核支持文件库110。同时,针对不同功能程序所实现的各项功能,预先设置对各项功能进行测试的功能测试模块,并将各个功能测试模块集合形成为上位机100内的测试验证程序库120。

进一步地,上位机100内对于内核支持文件库110和测试验证程序库120,还包含有各自的配置文件,用以配置内核支持文件库110中各内核支持文件131所适用的待测芯片210类型,以及配置测试验证程序库120中各功能测试模块所适用的功能。在向基础芯片下载预定的功能程序,形成为待测芯片210后,通过内核支持文件库110的配置文件选择适用于该待测芯片210的内核支持文件131;同时,通过测试验证程序库120的配置文件选择适用于该待测芯片210的功能测试模块,形成为测试验证程序132。将该类选择操作触发的指令,作为对上位机100中内核支持文件库110中各项文件和对测试验证程序库120中各项功能测试模块进行选择的选择指令。上位机100在接收到该类选择指令后,依据选择指令携带的表征所需要选择的内核支持文件131的信息和测试验证程序132的信息,分别选择出内核支持文件131和各个功能测试模块,并将各个功能测试模块配置为测试验证程序132;进而将所选择的内核支持文件131和测试验证程序132添加到固有程序模块中,共同形成为与待测芯片210对应的测试程序130,用以对当前待测芯片210中运行功能程序所实现的功能进行测试。其中,固有程序模块为预先设置于上位机100内,不同待测芯片210均共同适用的程序模块,如用于执行功能测试模块所形成测试任务的测试任务模块136,用于将测试结果打包上传的打包上报模块134等。

更进一步地,对于步骤s300,上位机100在通过选择指令形成用于对待测芯片210进行测试的测试程序130后,需要将该测试程序130下发到待测芯片210内,才能对待测芯片210所实现的功能进行测试。具体地,在上位机100上触发下载指令,上位机100在接收到该下载指令后,通过其中的pc测试控制模块140将测试程序130下发到待测芯片210。此外,上位机100还支持测试用例的生成,测试用例用于指示测试任务的类型,各类型测试任务的输入参数,以及输出参考结果等。通过在上位机100上输入表征该类需求的配置参数,由上位机100依据其生成为测试用例,用以指示此前下发到待测芯片210的测试程序130的测试验证程序132中测试任务的运行方式。

对于步骤s400,具体地,上位机100在将测试程序130下发到待测芯片210,并生成测试用例之后,测试人员则对待测芯片210进行上电启动操作。待测芯片210在接收到上电的启动指令后,对下载到其中的功能程序和测试程序130驱动运行。并且,上位机100在检测到待测芯片210的启动后,将生成的测试用例下发到待测芯片210。

需要说明地是,待测芯片210与上位机100之间的通信连接可以是单一通信通道的连接,也可以是多个通信通道的连接。对于单一通信通道,功能程序、测试程序130和测试用例均通过该单一通信通道下发到待测芯片210;对于多个通信通道,则功能程序、测试程序130和测试用例区分不同的通信通道下发到待测芯片210;此时,多个通信通道划分为专用于下载的下载通道,以及用于测试用例下发的传输通道;通过下载通道将功能程序和测试程序130下载到待测芯片210,由传输通道将测试用例下发到待测芯片210。并且,无论是多个通信通道还是单一通信通道,该通信通道可以是有线的串口通信,也可以是无线的传输通信,对于多个通信通道还可以是两者的混合,对此不做限制。

对于步骤s500,待测芯片210在接收到测试用例后,对测试用例解析,得到进行测试的任务类型,以及各个类型的输入参数等。进而依据测试用例中测试任务的类型,查找测试程序130的测试验证程序132中属于该类型的测试任务,并对查找到的测试任务进行启动执行,通过各项测试任务的启动执行,对待测芯片210内功能程序运行所实现的功能进行测试。

其中,形成测试程序130的固有程序模块包括解析配置模块133、打包上报模块134、中央控制模块135和测试任务模块136,通过该各个模块之间的配合实现待测芯片210的测试。具体地,步骤步骤s500包括:

步骤s510,所述待测芯片210基于所述解析配置模块133对所述测试用例进行解析,获得所述测试用例中的待测任务类型和待测任务参数;

步骤s520,所述待测芯片210基于所述中央控制模块135控制所述测试验证程序132中与所述待测任务类型对应的测试任务进行启动,并基于所述解析配置模块133将所述待测任务参数加载到启动的所述测试任务中,以及基于所述测试任务模块136执行所述测试任务,对所述待测芯片210运行所述功能程序的功能进行测试。

进一步地,固有程序模块中的中央控制模块135,可对其中的解析配置模块133、打包上报模块134和测试任务模块136进行调度,通过调度控制测试程序130的运行,实现待测芯片210的功能测试。具体地,解析配置模块133用于测试用例的解析和配置,待测芯片210在接收到测试用例后,通过其中运行的中央控制模块135调用解析配置模块133对测试用例进行解析,得到解析结果。该解析结果包含待测任务类型和待测任务参数,其中待测任务类型即体现所需要进行测试的任务,待测任务参数即为对测试任务进行测试所输入的输入参数。此后,中央控制模块135查找形成测试程序130的测试验证程序132中属于该待测任务类型的测试任务,并控制对查找到的测试任务进行启动。

更进一步地,解析配置模块133除了对测试用例进行解析外,还可对解析得到的待测任务参数进行配置。具体地,在查找到的测试任务运行时,通过解析配置模块133将待测任务参数加载到启动的测试任务中,作为测试任务的输入参数。此后,中央控制模块135调用测试任务模块136执行加载有输入参数的测试任务,获得执行结果,实现对待测芯片210运行功能程序的功能进行测试。并且,通过执行结果与测试用例解析所得到的输出参考结果之间的一致性,来判断当前所测试的功能是否通过;若两者一致则判定当前所测试的功能通过测试,反之若两者不一致则判定当前所测试的功能未通过测试。

可理解地,在对各项测试任务均执行完成,生成测试结果后,为了便于对测试结果的查看,本实施例设置有上传机制。具体地,在步骤s500之后,该方法还包括:

步骤s530,所述待测芯片210基于所述打包上报模块134将测试获得的测试结果上传到所述上位机100;

步骤s540,所述上位机100对所述测试结果进行解析,获得解析结果,并将所述配置参数中与所述解析结果对应的待测参数和所述解析结果一并保存。

进一步地,中央控制模块135对打包上报模块134进行调用,使得待测芯片210通过打包上报模块134将测试获得的测试结果,经由上位机100与待测芯片210之间的通信通道上传到上位机100。上位机100对该上传的测试结果接收并进行解析,获得解析结果,该解析结果中除了包含各项测试任务测试生成的结果外,还包括表征测试任务类型的标识。故为了体现各项测试任务所生成测试结果与测试任务输入参数、输出参考结果之间的对应关系,上位机100通过测试任务类型的标识查找配置参数中与解析结果对应的待测参数;进而将解析结果和该待测参数一并保存,体现对该待测参数所表征测试任务进行测试,所输入的参数、理论上应该输出的参考结果,以及实际上输出的结果,方便查看测试成功与否。

进一步地,提出本发明芯片测试方法另一实施例。

该芯片测试方法另一实施例与上述芯片测试方法的实施例的区别在于,所述选择指令包括用于选择内核支持文件131的第一选择指令,所述步骤s200包括:

s210,所述上位机100在接收到对内核支持文件库110中各文件进行选择的第一选择指令时,查找所述内核支持文件库110的各文件中是否存在与所述第一选择指令对应的内核支持文件131,若是则执行步骤s220,若否则执行步骤s230;

s220,选择所述内核支持文件131,并将选择的所述内核支持文件131添加到所述固有程序模块;

s230,输出对所述内核支持文件库110进行更新的第一提示信息。

本实施例中的选择指令包含对内核支持文件库110中各项文件进行选择的第一选择指令,通过第一选择指令从内核支持文件库110中选择出适用于待测芯片210的内核支持文件131,并在内核支持文件库110中不存在适用于待测芯片210的内核支持文件131时,提醒设置适用于待测芯片210的内核支持文件131添加到内核支持文件库110,以便将其添加到固有程序模块,与待测芯片210所适用的测试验证程序132,形成与待测芯片210对应的测试程序130,对待测芯片210进行测试,避免针对待测芯片210重新编写测试程序130,有利于快速生成对待测芯片210进行测试的测试程序130。

具体地,上位机100接收对内核支持文件库110中各文件进行选择的第一选择指令,该第一选择指令包含有选择操作所选择的内核支持文件131的信息,如文件编号或者文件标识等。上位机100依据该类信息对内核支持文件库110中包含的各文件进行查找,查找其中是否具有携带该类信息的内核支持文件131,若具有携带该类信息的内核支持文件131,则说明内核支持文件库110的各文件中中存在与第一选择指令对应的内核支持文件131,从而选择出该内核支持文件131,并将其添加到固有程序模块。反之,若经查找确定内核支持文件库110中不具有携带该类信息的内核支持文件131,则说明内核支持文件库110中不存在与第一选择指令对应的内核支持文件131。此时,输出对内核支持文件库110进行更新的第一提示信息,以提示设置与第一选择指令对应的内核支持文件131,并将设置的内核支持文件131添加到内核支持文件库110,以更新内核支持文件库110。该设置的内核支持文件131即为适用于待测芯片210的内核支持文件131,以便于结合固有程序模块,以及适用于待测芯片210的测试验证程序132形成测试程序130,对待测芯片210进行测试。

进一步地,选择指令中还包含有对测试验证程序库120中各功能测试模块进行选择的第二选择指令,通过第二选择指令从内核支持文件库110中选择出适用于待测芯片210的测试验证程序132,具体地,步骤s200包括:

s240,所述上位机100在接收到对测试验证程序库120中各功能测试模块进行选择的第二选择指令时,查找所述测试验证程序库120的配置文件中是否记录有与所述第二选择指令对应的选择信息,若是则执行步骤s250,若否则执行步骤s260;

s250,基于测试验证程序库120的配置文件查找与所述第二选择指令对应的所有功能测试模块,将所述所有功能测试模块配置为所述测试验证程序132,并将所述测试验证程序132添加到所述固有程序模块;

s260,输出对所述测试验证程序库120进行更新的第二提示信息。

本实施例测试验证程序库120中包含多个用于测试不同功能的功能测试模块,通过第二选择指令从各个功能测试模块中选择出适用于对待测芯片210进行测试的功能测试模块,配置为测试验证程序132的测试任务。并且,在通过第二选择指令选择功能测试模块的过程中,若判定测试验证程序库120中不存在对待测芯片210某一功能进行测试的功能测试模块,导致不能形成适用于待测芯片210的测试验证程序132,则提醒设置该功能测试模块添加到测试验证程序库120,以形成测试验证程序132添加到固有程序模块,与待测芯片210所适用的内核支持文件131,共同形成与待测芯片210对应的测试程序130,对待测芯片210进行测试,避免针对待测芯片210重新编写测试程序130,有利于快速生成对待测芯片210进行测试的测试程序130。

更进一步地,对于测试验证程序库120中所包含的用于测试不同功能的功能测试模块,由测试验证程序库120的配置文件进行记录设置。对于待测芯片210,其包含多项需要测试的功能,故而需要针对每一项测试功能选择对应的功能测试模块。在选择所有功能测试模块后触发第二选择指令,上位机100接收该对测试验证程序库120中各功能测试模块进行选择的第二选择指令,并依据其中携带的各个功能测试模块的信息对测试验证程序库120的配置文件进行查找,查找其中是否记录有所选择功能测试模块的选择信息。若记录有所选择功能测试模块的选择信息,则说明测试验证程序库120中存在与第二选择指令对应的测试验证程序132。此时,依据测试验证程序库120的配置文件,从测试验证文件库中查找出由第二选择指令所选择的各个功能测试模块,并将查找的功能测试模块依据各自的配置规则配置为测试验证程序132,一个功能测试模块形成测试验证程序132内的一个测试任务。进而将配置的测试验证程序132添加到固有程序模块,用以生成对待测芯片210进行测试的测试程序130。

进一步地,若经确定所选择功能测试模块中存在任意一项未在测试验证程序库120的配置文件中记录,则说明测试验证程序库120中不存在与第二选择指令对应的测试验证程序132。此时,输出对测试验证程序库120进行更新的第二提示信息,并且该第二提示信息中携带有测试验证程序库120中所缺少功能测试模块的信息。例如所选择功能测试模块包含m1、m2、m3,该m1、m2、m3即形成第二选择指令对应的选择信息,若经判定配置文件中记录有m1和m3的信息,不存在m2的信息,则将m2的信息生成为第二提示信息输出。通过输出的第二提示信息,提示设置由第二选择指令选择,且在测试验证程序库120中缺少的功能测试模块。并且,将设置的功能测试模块添加到测试验证程序库120,以对测试验证程序库120进行更新。通过更新的测试验证程序库120形成适用于待测芯片210的测试验证程序132,添加到固有程序模块,与适用于待测芯片210的内核支持文件131一并形成测试程序130,对待测芯片210进行测试。

更进一步地,上位机100在将内核支持文件131和测试验证程序132均添加到固有程序模块后,即可将内核支持文件131、测试验证程序132和固有程序模块共同形成为用于对待测芯片210进行测试的测试程序130,避免针对待测芯片210重新编写测试程序130,实现快速生成对待测芯片210进行测试的测试程序130。

需要说明的是,本实施例对于测试验证程序库120中缺少的功能测试模块,除了对测试验证程序库120进行更新外,还可依据所缺少功能测试模块与测试验证程序库120中所具有功能测试模块之间的相关性,形成所缺少的功能测试模块。若所缺少的功能测试模块与所具有的功能测试模块之间的相关性大,则可通过对所具有的功能测试模块进行调整修改形成;若所缺少的功能测试模块与所具有的功能测试模块之间的相关性小,则通过对测试验证程序库120重新设置功能测试模块形成。具体地,在步骤s250中:

所述上位机100接收对所述所有功能测试模块中任意一项功能测试模块的调整信息,根据所述调整信息对所述任意一项功能测试模块进行调整,并将调整后的所述功能测试模块配置为所述测试验证程序132,其中,调整包括新增调整、删除调整和替换调整。

更进一步地,在从测试验证程序库120中查找出第二选择指令所选择的所有功能测试模块后,若具有对其中任意一项功能测试模块的修改调整需求,则针对该项功能测试模块发送调整信息。上位机100接收该类调整信息,并依据其对具有调整需求的功能测试模块进行调整,该类调整操作包括但不限于新增调整、删除调整和替换调整。新增调整为在原有功能测试模块的基础上增加测试功能形成新的功能测试模块,删除调整则在原有功能测试模块的基础上删除部分测试功能形成新的功能测试模块,替换调整为对原有功能测试模块中的部分测试功能替换为其他测试功能,而形成新的功能测试模块。不同类型的调整,所对应的调整信息不同,在依据调整信息对功能测试模块调整完成后,将调整后的功能测试模块配置为测试验证程序132,形成测试验证程序132中的测试任务进行测试,满足待测芯片210的测试需求。并且,对于调整后的功能测试模块,与调整前原始的功能测试模块共同存储于测试验证程序库120,以便于后续依据不同的测试需求选择适用,避免重新设置功能测试模块,通过选择配置即可形成测试验证程序132,有利于测试测试程序130的快速生成。进而提升待测芯片210功能完整性验证的效率,缩短了芯片开发设计周期。

本发明还提供一种芯片测试系统,如图1所示,包括上位机100和测试板200,所述测试板200上搭载有基础芯片,所述基础芯片与所述上位机100通信连接,所述基础芯片在下载预定的功能程序后,形成待测芯片210;

所述上位机100在接收到对内核支持文件库110中各文件和对测试验证程序库120中各功能测试模块进行选择的选择指令时,根据所述选择指令选择配置对应的内核支持文件131以及测试验证程序132,并将所述内核支持文件131、所述测试验证程序132添加至固有程序模块,形成与所述待测芯片210对应的测试程序130;

所述上位机100在接收到下载指令时,将所述测试程序130下发到所述待测芯片210,并在接收到配置参数时,将所述配置参数生成为测试用例;

所述待测芯片210基于接收到的启动指令驱动所述测试程序130和所述功能程序运行,并接收所述上位机100下发的测试用例;

所述待测芯片210根据所述测试用例,启动所述测试程序130内所述测试验证程序132的测试任务,对所述待测芯片210运行所述功能程序实现的功能进行测试。

进一步地,所述选择指令包括用于选择内核支持文件131的第一选择指令和用于选择测试验证程序132的第二选择指令;

所述上位机100在接收到对内核支持文件库110中各文件进行选择的第一选择指令时,查找所述内核支持文件库110的各文件中是否存在与所述第一选择指令对应的内核支持文件131,若是则选择所述内核支持文件131,并将选择的所述内核支持文件131添加到所述固有程序模块,若否则输出对所述内核支持文件库110进行更新的第一提示信息;

所述上位机100在接收到对测试验证程序库120中各功能测试模块进行选择的第二选择指令时,查找所述测试验证程序库120的配置文件中是否记录有与所述第二选择指令对应的选择信息,若是则基于测试验证程序库120的配置文件查找与所述第二选择指令对应的所有功能测试模块,将所述所有功能测试模块配置为所述测试验证程序132,并将所述测试验证程序132添加到所述固有程序模块,若否则输出对所述测试验证程序库120进行更新的第二提示信息。

本发明芯片测试系统的具体实施方式与上述芯片测试方法各实施例基本相同,在此不再重复赘述。

本发明还提出一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上所述的芯片测试方法。

本发明可读存储介质优选为计算机可读存储介质,其具体实施方式与上述芯片测试方法各实施例基本相同,在此不再重复赘述。

本领域的技术人员能够理解的是,在不冲突的前提下,上述各优选方案可以自由地组合、叠加。

应当理解,上述的实施方式仅是示例性的,而非限制性的,在不偏离本发明的基本原理的情况下,本领域的技术人员可以针对上述细节做出的各种明显的或等同的修改或替换,都将包含于本发明的权利要求范围内。


技术特征:

1.一种芯片测试方法,其特征在于,应用于芯片测试系统,所述芯片测试系统包括上位机和测试板,所述测试板上搭载有基础芯片;

所述芯片测试方法包括步骤:

s100,建立所述基础芯片与所述上位机之间的通信连接,并向所述基础芯片下载预定的功能程序,形成待测芯片;

s200,所述上位机在接收到对内核支持文件库中各文件和对测试验证程序库中各功能测试模块进行选择的选择指令时,根据所述选择指令选择配置对应的内核支持文件以及测试验证程序,并将所述内核支持文件和所述测试验证程序添加至固有程序模块,形成与所述待测芯片对应的测试程序;

s300,所述上位机在接收到下载指令时,将所述测试程序下发到所述待测芯片,并在接收到配置参数时,将所述配置参数生成为测试用例;

s400,所述待测芯片基于接收到的启动指令驱动所述测试程序和所述功能程序运行,并接收所述上位机下发的测试用例;

s500,所述待测芯片根据所述测试用例,启动所述测试程序内所述测试验证程序的测试任务,对所述待测芯片运行所述功能程序实现的功能进行测试。

2.根据权利要求1所述的芯片测试方法,其特征在于,所述选择指令包括用于选择内核支持文件的第一选择指令,所述步骤s200包括:

s210,所述上位机在接收到对内核支持文件库中各文件进行选择的第一选择指令时,查找所述内核支持文件库的各文件中是否存在与所述第一选择指令对应的内核支持文件,若是则执行步骤s220,若否则执行步骤s230;

s220,选择所述内核支持文件,并将选择的所述内核支持文件添加到所述固有程序模块;

s230,输出对所述内核支持文件库进行更新的第一提示信息。

3.根据权利要求1所述的芯片测试方法,其特征在于,所述选择指令包括用于选择测试验证程序的第二选择指令,所述步骤s200包括:

s240,所述上位机在接收到对测试验证程序库中各功能测试模块进行选择的第二选择指令时,查找所述测试验证程序库的配置文件中是否记录有与所述第二选择指令对应的选择信息,若是则执行步骤s250,若否则执行步骤s260;

s250,基于测试验证程序库的配置文件查找与所述第二选择指令对应的所有功能测试模块,将所述所有功能测试模块配置为所述测试验证程序,并将所述测试验证程序添加到所述固有程序模块;

s260,输出对所述测试验证程序库进行更新的第二提示信息。

4.根据权利要求3所述的芯片测试方法,其特征在于,在所述步骤s250中:

所述上位机接收对所述所有功能测试模块中任意一项功能测试模块的调整信息,根据所述调整信息对所述任意一项功能测试模块进行调整,并将调整后的所述功能测试模块配置为所述测试验证程序,其中,调整包括新增调整、删除调整和替换调整。

5.根据权利要求1-4任一项所述的芯片测试方法,其特征在于,所述固有程序模块包括解析配置模块、打包上报模块、中央控制模块和测试任务模块。

6.根据权利要求5所述的芯片测试方法,其特征在于,所述步骤s500包括:

所述待测芯片基于所述解析配置模块对所述测试用例进行解析,获得所述测试用例中的待测任务类型和待测任务参数;

所述待测芯片基于所述中央控制模块控制所述测试验证程序中与所述待测任务类型对应的测试任务进行启动,并基于所述解析配置模块将所述待测任务参数加载到启动的所述测试任务中,以及基于所述测试任务模块执行所述测试任务,对所述待测芯片运行所述功能程序的功能进行测试。

7.根据权利要求5所述的芯片测试方法,其特征在于,所述步骤s500之后,所述方法还包括:

所述待测芯片基于所述打包上报模块将测试获得的测试结果上传到所述上位机;

所述上位机对所述测试结果进行解析,获得解析结果,并将所述配置参数中与所述解析结果对应的待测参数和所述解析结果一并保存。

8.一种芯片测试系统,其特征在于,包括上位机和测试板,所述测试板上搭载有基础芯片,所述基础芯片与所述上位机通信连接,所述基础芯片在下载预定的功能程序后,形成待测芯片;

所述上位机在接收到对内核支持文件库中各文件和对测试验证程序库中各功能测试模块进行选择的选择指令时,根据所述选择指令选择配置对应的内核支持文件以及测试验证程序,并将所述内核支持文件、所述测试验证程序添加至固有程序模块,形成与所述待测芯片对应的测试程序;

所述上位机在接收到下载指令时,将所述测试程序下发到所述待测芯片,并在接收到配置参数时,将所述配置参数生成为测试用例;

所述待测芯片基于接收到的启动指令驱动所述测试程序和所述功能程序运行,并接收所述上位机下发的测试用例;

所述待测芯片根据所述测试用例,启动所述测试程序内所述测试验证程序的测试任务,对所述待测芯片运行所述功能程序实现的功能进行测试。

9.根据权利要求8所述的芯片测试系统,其特征在于,所述选择指令包括用于选择内核支持文件的第一选择指令和用于选择测试验证程序的第二选择指令;

所述上位机在接收到对内核支持文件库中各文件进行选择的第一选择指令时,查找所述内核支持文件库的各文件中是否存在与所述第一选择指令对应的内核支持文件,若是则选择所述内核支持文件,并将选择的所述内核支持文件添加到所述固有程序模块,若否则输出对所述内核支持文件库进行更新的第一提示信息;

所述上位机在接收到对测试验证程序库中各功能测试模块进行选择的第二选择指令时,查找所述测试验证程序库的配置文件中是否记录有与所述第二选择指令对应的选择信息,若是则基于测试验证程序库的配置文件查找与所述第二选择指令对应的所有功能测试模块,将所述所有功能测试模块配置为所述测试验证程序,并将所述测试验证程序添加到所述固有程序模块,若否则输出对所述测试验证程序库进行更新的第二提示信息。

10.一种可读存储介质,所述可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的芯片测试方法。

技术总结
本发明提供一种芯片测试方法、系统及可读存储介质,系统包括上位机和测试板,测试板上搭载有基础芯片;方法包括:建立基础芯片与上位机之间的通信连接,并向基础芯片下载预定的功能程序,形成待测芯片;上位机将从内核支持文件库和测试验证程序库中选择配置的内核支持文件和测试验证程序,添加到固有程序模块,形成与待测芯片对应的测试程序下发到待测芯片,并在接收到配置参数时,将配置参数生成为测试用例;待测芯片驱动测试程序和功能程序运行,并根据上位机下发的测试用例,启动测试程序内测试验证程序的测试任务,对待测芯片运行功能程序实现的功能进行测试。本发明提高了测试代码的生成效率,有利于快速实现芯片设计的完整性验证。

技术研发人员:梁小江;连光;陆钺;蒲莉娟
受保护的技术使用者:江西创成微电子有限公司
技术研发日:2021.03.11
技术公布日:2021.08.03

转载请注明原文地址:https://doc.8miu.com/read-11126.html

最新回复(0)