发明内容
本发明实施例提供了一种芯片测试方法及装置,以至少解决现有技术中,芯片测试装置的兼容性较差的技术问题。
根据本发明实施例的一个方面,提供了一种芯片测试装置,包括:测试设备;芯片测试电路板;输入接口,设置在所述芯片测试电路板上,与所述测试设备相连接,用于在所述测试设备和所述芯片测试电路板之间进行数据传输;控制器,设置在所述芯片测试电路板上,与待测芯片和所述输入接口均相连接,所述控制器用于获取所述输入接口处的状态指令,并根据所述状态指令确定对应的测试向量;所述控制器还用于发送所述测试向量对应的工作模式至所述待测芯片,以使所述待测芯片运行所述工作模式;所述控制器还用于获取所述待测芯片运行所述工作模式后的工作状态,并根据所述工作状态确定所述待测芯片的检测结果。
进一步地,所述芯片测试装置还包括:现场可编程门阵列,设置在所述芯片测试电路板上,与所述控制器相连接,其中,所述控制器还用于通过所述现场可编程门阵列输出所述工作模式至所述待测芯片。
进一步地,所述芯片测试装置还包括:继电器,设置在所述芯片测试电路板上,其中,所述控制器还用于根据所述测试向量控制所述继电器吸合或者断开。
进一步地,所述芯片测试装置还包括:输出接口,设置在所述芯片测试电路板上,与所述控制器和所述测试设备均相连接,用于向所述测试设备输出所述检测结果。
进一步地,所述芯片测试装置还包括:上位机,与所述测试设备相连接,用于显示所述测试设备发送的所述检测结果。
根据本发明实施例的另一方面,还提供了一种芯片测试方法,通过上述任一种所述的芯片测试装置执行所述芯片测试方法,所述方法包括:控制器获取输入接口处的状态指令;所述控制器根据所述状态指令确定对应的测试向量;所述控制器发送所述测试向量对应的工作模式至所述待测芯片,以使所述待测芯片运行所述工作模式;所述控制器获取所述待测芯片运行所述工作模式后的工作状态,并根据所述工作状态确定所述待测芯片的检测结果。
进一步地,所述控制器根据所述状态指令确定对应的测试向量包括:所述控制器获取所述状态指令对应的检测模式,其中,所述控制器中存储有多种状态指令和多种检测模式,并存储有多种所述状态指令和多种所述检测模式之间的对应关系,所述状态指令和所述检测模式一一对应;所述控制器判断所述检测模式是否为待机模式;在判断出所述检测模式不是所述待机模式的情况下,所述控制器调取所述检测模式所对应的测试向量。
进一步地,在判断出所述检测模式是所述待机模式的情况下,所述方法还包括:所述控制器继续获取所述输入接口处的状态指令。
进一步地,根据所述工作状态确定所述待测芯片的检测结果包括:判断所述工作状态是否符合预期结果;在判断出所述工作状态符合所述预期结果的情况下,确定所述检测结果为通过;在判断出所述工作状态不符合所述预期结果的情况下,确定所述检测结果为失败。
进一步地,所述控制器发送所述测试向量对应的工作模式至所述待测芯片包括:所述控制器执行所述测试向量,并确定所述测试向量对应的所述工作模式;所述控制器通过现场可编程门阵列发送所述工作模式至所述待测芯片。
进一步地,在所述控制器根据所述状态指令确定对应的测试向量之后,所述方法包括:所述控制器根据所述测试向量控制继电器吸合或者断开。
进一步地,在所述控制器根据所述状态指令确定对应的测试向量之后,所述方法包括:所述控制器对所述待测芯片进行初始化。
在本发明实施例中,采用具有以下结构的芯片测试装置:测试设备;芯片测试电路板;输入接口,设置在所述芯片测试电路板上,与所述测试设备相连接,用于在所述测试设备和所述芯片测试电路板之间进行数据传输;控制器,设置在所述芯片测试电路板上,与待测芯片和所述输入接口均相连接,所述控制器用于获取所述输入接口处的状态指令,并根据所述状态指令确定对应的测试向量;所述控制器还用于发送所述测试向量对应的工作模式至所述待测芯片,以使所述待测芯片运行所述工作模式;所述控制器还用于获取所述待测芯片运行所述工作模式后的工作状态,并根据所述工作状态确定所述待测芯片的检测结果,通过控制器首先检测与测试设备连接的输入接口的状态指令,进而根据该状态指令确定相应的测试向量,然后将测试向量对应的工作模式发送至待测芯片,使待测芯片运行上述工作模式,最后根据待测芯片运行该工作模式后所处的状态即可得到该待测芯片的检测结果,与现有技术相比,无需每次测试都重新定位测试向量,只需改变输入接口处的状态指令即可得到测试芯片所需的工作模式,进而使待测芯片运行上述工作模式,从而得到该待测芯片的检测结果,达到了快速、且灵活的对芯片进行测试目的,从而实现了提高芯片测试装置的兼容性的技术效果,进而解决了现有技术中,芯片测试装置的兼容性较差的技术问题。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种芯片测试装置。图2是根据本发明实施例的一种芯片测试装置的示意图,如图2所示,该芯片测试装置包括:测试设备11、芯片测试电路板13、输入接口131和控制器132,其中:
输入接口131,设置在芯片测试电路板13上,与测试设备11相连接,输入接口131用于在测试设备和芯片测试电路板之间进行数据传输,也即,输入接口为测试设备和测试电路板之间的交互接口。
具体地,输入接口为通用输入接口,可以用“GPIO I nput”表示。输入接口处的状态指令由测试设备设置,状态指令以二进制形式表示。
需要说明的是,本实施例中的测试设备与现有技术中的测试设备相同,即,该测试设备上也设置有信号针,测试设备通过其上设置的信号针完成对输入接口处的状态指令的设置。
控制器132,设置在芯片测试电路板13上,与待测芯片(图中未示出)和输入接口131均相连接,控制器用于获取输入接口处的状态指令,并根据状态指令确定对应的测试向量;控制器还用于发送测试向量对应的工作模式至待测芯片,以使待测芯片运行工作模式;控制器还用于获取待测芯片运行工作模式后的工作状态,并根据工作状态确定待测芯片的检测结果。
具体地,控制器可以为ARM处理器,也可以是单片机(即,MCU)。待测芯片与控制器之间可以通过I2C或者SPI连接。
待测芯片的检测结果有两种,一种是通过,表示待测芯片通过检测,说明该待测芯片合格,另一种是失败,表示待测芯片未通过检测,说明该待测芯片不合格。
如果想要待测芯片运行哪种工作模式,只需通过测试设备设置输入接口处的状态指令即可,因此在对不同芯片进行测试时,无需多次设置测试向量。
在本发明实施例中,通过控制器首先检测与测试设备连接的输入接口的状态指令,进而根据该状态指令确定相应的测试向量,然后将测试向量对应的工作模式发送至待测芯片,使待测芯片运行上述工作模式,最后根据待测芯片运行该工作模式后所处的状态即可得到该待测芯片的检测结果,与现有技术相比,无需每次测试都重新定位测试向量,只需改变输入接口处的状态指令即可得到测试芯片所需的工作模式,进而使待测芯片运行上述工作模式,从而得到该待测芯片的检测结果,达到了快速、且灵活的对芯片进行测试目的,从而实现了提高芯片测试装置的兼容性的技术效果,进而解决了现有技术中,芯片测试装置的兼容性较差的技术问题。
参见图3,在本发明实施例中,芯片测试装置还包括:现场可编程门阵列(即,FPGA)133。现场可编程门阵列133,设置在芯片测试电路板13上,与控制器132相连接,其中,控制器还用于通过现场可编程门阵列输出工作模式至待测芯片。
由于芯片的测试需要一些特殊的工作模式,这样才可以覆盖芯片的极限状态,这些工作模式存储在FPGA中。当控制器获取到测试向量时,控制器会运行该测试向量,并控制FPGA输出相应的工作模式给待测芯片。
需要说明的是,设置FPGA的作用是为了可扩展性,以应对将来可能增加的测试项目和特殊的测试。
参见图3,在本发明实施例中,芯片测试装置还包括:继电器134。继电器134设置在芯片测试电路板上,其中,控制器还用于根据测试向量控制继电器吸合或者断开。
常规情况下,芯片测试电路板上会有很多继电器,以达到同时测试多颗芯片的目的,现有技术中都是由测试设备控制继电器吸合或者断开,而本方案中是使用控制器去控制继电器的吸合或者断开。
需要说明的是,如果继电器的数量多于控制器的IO脚,也可以通过FPGA去控制继电器的吸合或者断开。
参见图3,在本发明实施例中,芯片测试装置还包括:输出接口135。输出接口135,设置在芯片测试电路板13上,与控制器132和测试设备11均相连接,用于向测试设备输出检测结果。
同样的,该输出接口为通用输出接口,可以用“GPIO Output”表示,输出接口以二进制的形式输出检测结果。具体地,也可以由测试设备抓取输出接口输出的检测结果,从而达到输出接口向测试设备输出检测结果的目的。
参见图3,在本发明实施例中,芯片测试装置还包括:上位机15。上位机15与测试设备相连接,用于显示测试设备发送的检测结果。
具体地,检测结果可以通过文字等形式显示在上位机的屏幕中,这样可以方便检测人员较为直观的了解芯片的检测结果。上位机可以是计算机等设备。
在上位机显示检测结果前,需要先将二进制形式的检测结果进行转换,以得到较为直观的检测结果(如,文字形式的检测结果),转换操作可以由上位机进行,也可以由测试设备进行。下述表1中示出了二进制形式的检测结果以及转换后的检测结果(即,文字形式的检测结果)。
表1
二进制形式的检测结果 |
转换后的检测结果 |
0000 |
默认 |
0101 |
通过 |
1010 |
失败 |
需要说明的是,如果测试装置上电后,还未开始检测芯片,则输出接口输出的检测结果为“0000”,则转换后的检测结果为“默认”。
综上,本发明实施例所提供的芯片测试装置与现有技术中的芯片测试装置相比,存在下述表2所示的区别点。
表2
根据本发明实施例,还提供了一种芯片测试方法,该芯片测试方法可以通过上述任一实施例中的芯片测试装置执行。
图4是根据本发明实施例的一种芯片测试方法的流程图,如图4所示,该方法包括以下步骤:
步骤S302,控制器获取输入接口处的状态指令。
步骤S304,控制器根据状态指令确定对应的测试向量。
步骤S306,控制器发送测试向量对应的工作模式至待测芯片,以使待测芯片运行工作模式。
步骤S308,控制器获取待测芯片运行工作模式后的工作状态,并根据工作状态确定待测芯片的检测结果。
在本发明实施例中,通过首先检测与测试设备连接的输入接口的状态指令,进而根据该状态指令确定相应的测试向量,然后将测试向量对应的工作模式发送至待测芯片,使待测芯片运行上述工作模式,最后根据待测芯片运行该工作模式后所处的状态即可得到该待测芯片的检测结果,与现有技术相比,无需每次测试都重新定位测试向量,只需改变输入接口处的状态指令即可得到测试芯片所需的工作模式,进而使待测芯片运行上述工作模式,从而得到该待测芯片的检测结果,达到了快速、且灵活的对芯片进行测试目的,从而实现了提高芯片测试装置的兼容性的技术效果,进而解决了现有技术中,芯片测试装置的兼容性较差的技术问题。
可选地,控制器根据状态指令确定对应的测试向量包括:控制器获取状态指令对应的检测模式,其中,控制器中存储有多种状态指令和多种检测模式,并存储有多种状态指令和多种检测模式之间的对应关系,状态指令和检测模式一一对应;控制器判断检测模式是否为待机模式;在判断出检测模式不是待机模式的情况下,控制器调取检测模式所对应的测试向量。
具体地,每种状态指令所对应的检测模式可以由用户根据需求设置。控制器中不仅存储了状态指令和检测模式中的对应关系,还存储了检测模式与测试向量之间的对应关系。其中,状态指令与检测模式的对应关系可以参见下述表3。
表3
状态指令 |
检测模式 |
00000000 |
待机模式 |
00000001 |
芯片版本测试 |
00000010 |
视频CRC检验值计算 |
00000011 |
锁相环定检测 |
… |
… |
… |
… |
11111111 |
待定 |
可选地,在判断出检测模式是待机模式的情况下,方法还包括:控制器继续获取输入接口处的状态指令。
如果判断出检测模式是待机模式,则表示测试设备处于待机模式,说明还未启动芯片检测,也即,还未开始进行芯片检测,如果判断出检测模式不是待机模式,例如,为芯片版本测试,则说明已经开始进行芯片检测,这时,控制器会调取芯片版本测试对应的测试向量。
对控制器获取测试向量的过程说明如下:在芯片测试装置上电后,控制器首先会抓取输入接口的状态,也即,获取输入接口处的状态指令,然后根据其内存储的状态指令与检测模式之间的对应关系,确定获取到的状态指令对应的检测模式,最后判断获取到的检测模式是否为待机模式,如果是待机模式,则重新抓取输入接口的状态;如果不是待机模式,则调取上述检测模式对应的测试向量。
可选地,根据工作状态确定待测芯片的检测结果包括:判断工作状态是否符合预期结果;在判断出工作状态符合预期结果的情况下,确定检测结果为通过;在判断出工作状态不符合预期结果的情况下,确定检测结果为失败。
可选地,控制器发送测试向量对应的工作模式至待测芯片包括:控制器执行测试向量,并确定测试向量对应的工作模式;控制器通过现场可编程门阵列发送工作模式至待测芯片。
具体地,现场可编程门阵列中存储有多种工作模式,控制器会根据测试向量,控制现场可编程门阵列输出相应的工作模式给待测芯片。
可选地,在控制器根据状态指令确定对应的测试向量之后,方法包括:控制器根据测试向量控制继电器吸合或者断开。
可选地,在控制器根据状态指令确定对应的测试向量之后,方法包括:控制器对待测芯片进行初始化。
待测芯片需要进行初始化,配置相应的寄存器才能按照预期的模式(即,接收到的工作模式)工作。现有技术中,通常是由测试设备对待测芯片进行初始化操作,本方案中是由控制器对待测芯片进行初始化操作。
图5是根据本发明实施例的另一种芯片测试方法的流程图,如图5所示,该方法包括如下步骤:
步骤S402,开启电源,也即,给芯片测试装置上电。
步骤S404,检测输入接口的状态,该步骤同步骤S302,在此不再赘述。
步骤S406,判断是否处于待机模式。
具体地,根据输入接口的状态判断测试设备是否处于待机模式,该步骤同“控制器判断检测模式是否为待机模式”,在此不再重复说明。
其中,在判断出不处于待机模式的情况下,执行步骤S408,否则,返回步骤S404。
步骤S408,调取到对应的测试向量。
步骤S410,根据测试向量,控制继电器吸合或断开。
步骤S412,初始化待测芯片。
步骤S414,控制FPGA输出所需的模式,该步骤同“控制器通过现场可编程门阵列发送工作模式至待测芯片”,在此不再重复说明。
步骤S416,获取待测芯片的状态。
具体地,获取待测芯片运行FPGA输出的模式后的状态。
步骤S418,判断待测芯片的状态是否符合预期结果。
其中,如果符合预期结果,则执行步骤S420,否则,执行步骤S422。
步骤S420,通过,也即,检测结果为通过。
步骤S422,失败,也即,检测结果为失败。
步骤S424,控制输出接口输出检测结果。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。