CN115410639A - 一种芯片测试装置和方法 - Google Patents
一种芯片测试装置和方法 Download PDFInfo
- Publication number
- CN115410639A CN115410639A CN202211055931.2A CN202211055931A CN115410639A CN 115410639 A CN115410639 A CN 115410639A CN 202211055931 A CN202211055931 A CN 202211055931A CN 115410639 A CN115410639 A CN 115410639A
- Authority
- CN
- China
- Prior art keywords
- chip
- tested
- test
- firmware
- chips
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/56—External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本申请公开了一种芯片测试装置和方法,应用于数字电路设计技术领域,包括:设置有N个槽位的芯片测试座;切换电路;存储介质;FPGA,用于接收主机下发的第一固件和第一测试程序并存储在存储介质中,当接收第一控制命令时进行切换电路的电路控制,以使第一控制命令所指定的k个待测芯片依次连接至FPGA的k个芯片固件接口,且进行芯片测试座的供电控制,以使k个待测芯片上电;当接收任一待测芯片发送的读取指令时,发送第一固件和第一测试程序至待测芯片;主机,用于在任一待测芯片进行第一测试程序的测试时,记录测试结果。应用本申请的方案,可以批量实现待测芯片的测试,刷写速度快,且自动完成,因此有效地提高了测试效率。
Description
技术领域
本发明涉及数字电路设计技术领域,特别是涉及一种芯片测试装置和方法。
背景技术
在SoC(System on Chip,系统级芯片)的设计开发过程中,完成芯片设计和流片之后,需要使用特定方法对芯片的基本功能进行验证,进而从生产出的大量SoC芯片中快速剔除功能不正常的芯片,筛选出基本可用的芯片以交付使用。
目前,在进行SoC芯片测试时,一般是将芯片固件和芯片需要运行的测试程序手动或自动烧写到外部存储介质中,例如烧写至QSPI(Quad Serial Peripheral Interface,6线串行外设接口)FLASH中,或者SD(Secure Digital,安全数码)卡中,然后手动或自动地控制待测SoC芯片上电。待测SoC芯片上电启动后,从QSPI FLASH或者SD卡中读取芯片固件以启动SoC系统,然后继续读取并执行测试程序,执行测试程序时主机可以通过串口进行观察,记录芯片测试结果。
在完成一片SoC芯片的测试后,可以手动或自动地更换另一片SoC芯片继续测试。如果需要更换待测固件和测试程序,则需要将新的固件数据和测试程序烧写到外部存储介质中,重复测试流程。
目前的方案中,由于一次仅测试一片SoC芯片,测试一次之后更换SoC芯片重复进行,导致无法应用在大批量测试的场合中,只能抽样测试。此外,进行不同的SoC芯片测试时,经常需要更换待测固件和测试程序,而目前,外部的QSPI FLASH或者SD卡都需要专用工具实现烧写,且烧写速度较慢,多次烧写也容易造成损坏,影响测试效率。
综上所述,如何有效地进行芯片测试,且提高测试效率,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种芯片测试装置和方法,以有效地进行芯片测试,且提高测试效率。
为解决上述技术问题,本发明提供如下技术方案:
一种芯片测试装置,包括:
设置有N个槽位的芯片测试座,用于放置至多N个待测芯片;
与所述芯片测试座连接的切换电路;
存储介质;
与所述存储介质连接的FPGA,用于接收主机下发的第一固件和第一测试程序并存储在所述存储介质中,当接收到所述主机发送的第一控制命令时,进行所述切换电路的电路控制,以使所述第一控制命令所指定的k个待测芯片通过所述切换电路依次连接至所述FPGA的k个芯片固件接口,且进行所述芯片测试座的供电控制,以使所述第一控制命令所指定的k个所述待测芯片上电;当接收到k个所述待测芯片中的任一待测芯片发送的读取指令时,发送所述第一固件和所述第一测试程序至所述待测芯片,以使所述待测芯片进行所述第一测试程序的测试;
与所述FPGA以及所述芯片测试座连接的主机,用于在任一待测芯片进行所述第一测试程序的测试时,记录测试结果;
其中,N为不小于2的正整数,k为正整数且k≤N。
优选的,所述FPGA设置有A种类型的芯片固件接口以支持A种接口协议;A为不小于2的正整数;
针对所述第一控制命令所指定的k个待测芯片中的任一待测芯片,所述FPGA进行所述切换电路的电路控制时,具体用于:通过控制所述切换电路,使得所述待测芯片连接至所述FPGA中的与所述待测芯片的接口协议相匹配的芯片固件接口。
优选的,所述FPGA至少设置有SPI接口和SD卡接口。
优选的,所述FPGA,具体用于:
接收主机下发的第一固件,第一测试程序,第二固件以及第二测试程序并存储在所述存储介质中,当接收到所述主机发送的第一控制命令和第二控制命令时,进行所述切换电路的电路控制,以使所述第一控制命令所指定的k个待测芯片通过所述切换电路依次连接至所述FPGA的k个芯片固件接口,使所述第二控制命令所指定的m个待测芯片通过所述切换电路依次连接至所述FPGA的m个芯片固件接口,且进行所述芯片测试座的供电控制,以使所述第一控制命令所指定的k个所述待测芯片上电,使所述第二控制命令所指定的m个所述待测芯片上电;当接收到k个所述待测芯片中的任一待测芯片发送的读取指令时,发送所述第一固件和所述第一测试程序至所述待测芯片,以使所述待测芯片进行所述第一测试程序的测试,当接收到m个所述待测芯片中的任一待测芯片发送的读取指令时,发送所述第二固件和所述第二测试程序至所述待测芯片,以使所述待测芯片进行所述第二测试程序的测试。
优选的,所述主机通过USB接口和/或以太网接口与所述FPGA连接。
优选的,所述存储介质包括第一存储装置和第二存储装置,所述存储介质利用所述第一存储装置和/或所述第二存储装置进行数据存储。
优选的,所述第一存储装置为默认的数据存储装置,当所述第一存储装置故障时,所述第二存储装置切换为默认的数据存储装置。
优选的,所述主机还用于:
在任一待测芯片进行所述第一测试程序的测试时,通过与所述待测芯片进行数据交互,进行所述待测芯片的内存测试。
优选的,所述主机还用于:
在任一待测芯片进行所述第一测试程序的测试时,通过与所述待测芯片进行数据交互,进行所述待测芯片的网络配置测试。
一种芯片测试方法,应用于FPGA中,所述FPGA与存储介质,切换电路,主机以及芯片测试座连接,所述芯片测试座设置有N个槽位以放置至多N个待测芯片,所述切换电路与所述芯片测试座连接,所述主机与所述FPGA以及所述芯片测试座连接,所述芯片测试方法包括:
接收所述主机下发的第一固件和第一测试程序并存储在所述存储介质中;
当接收到所述主机发送的第一控制命令时,进行所述切换电路的电路控制,以使所述第一控制命令所指定的k个待测芯片通过所述切换电路依次连接至所述FPGA的k个芯片固件接口,且进行所述芯片测试座的供电控制,以使所述第一控制命令所指定的k个所述待测芯片上电;
当接收到k个所述待测芯片中的任一待测芯片发送的读取指令时,发送所述第一固件和所述第一测试程序至所述待测芯片,以使所述待测芯片进行所述第一测试程序的测试;
其中,在任一待测芯片进行所述第一测试程序的测试时,所述主机记录测试结果;N为不小于2的正整数,k为正整数且k≤N。
应用本发明实施例所提供的技术方案,芯片测试座设置有N个槽位,因此,本申请在进行芯片测试时,一次能够至多进行N个待测芯片的测试,提高效率。具体的,FPGA可以用于接收主机下发的第一固件和第一测试程序并存储在存储介质中,当接收到主机发送的第一控制命令时,进行切换电路的电路控制,以使第一控制命令所指定的k个待测芯片通过切换电路依次连接至FPGA的k个芯片固件接口,且进行芯片测试座的供电控制,以使第一控制命令所指定的k个待测芯片上电;当接收到k个待测芯片中的任一待测芯片发送的读取指令时,发送第一固件和第一测试程序至待测芯片,以使待测芯片进行第一测试程序的测试。在任一待测芯片进行第一测试程序的测试时,主机可以记录测试结果。可以看出,主机发送的第一控制命令之后,便可以自动进行k个待测芯片的测试,有效地提高了本申请方案的测试效率。并且,本申请并不是如传统方案中由人工将第一固件和第一测试程序刷写至外部的存储介质中,而是可以由主机发送至FPGA,并且暂存至与FPGA连接的存储介质中,该过程速度很快,也不容易出现多次烧写造成损坏的情况,因此有利于进一步地提高测试效率。此外,本申请方案在主机发送的第一控制命令之后便可以自动完成,因此也有利于提高测试效率。
综上所述,本申请的方案可以批量实现待测芯片的测试,刷写速度快,且自动完成,因此有效地提高了测试效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中一种芯片测试装置的结构示意图;
图2为本发明一种具体实施方式中的芯片测试装置的结构示意图;
图3为本发明中一种芯片测试方法的实施流程图。
具体实施方式
本发明的核心是提供一种芯片测试装置,可以批量实现待测芯片的测试,刷写速度快,且自动完成,因此有效地提高了测试效率。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明中一种芯片测试装置的结构示意图,该芯片测试装置可以包括:
设置有N个槽位的芯片测试座10,用于放置至多N个待测芯片;
与芯片测试座10连接的切换电路20;
存储介质30;
与存储介质30连接的FPGA40,用于接收主机50下发的第一固件和第一测试程序并存储在存储介质30中,当接收到主机50发送的第一控制命令时,进行切换电路20的电路控制,以使第一控制命令所指定的k个待测芯片通过切换电路20依次连接至FPGA40的k个芯片固件接口,且进行芯片测试座10的供电控制,以使第一控制命令所指定的k个待测芯片上电;当接收到k个待测芯片中的任一待测芯片发送的读取指令时,发送第一固件和第一测试程序至待测芯片,以使待测芯片进行第一测试程序的测试;
与FPGA40以及芯片测试座10连接的主机50,用于在任一待测芯片进行第一测试程序的测试时,记录测试结果;
其中,N为不小于2的正整数,k为正整数且k≤N。
具体的,本申请的方案中,考虑到FPGA(Field Programmable GateArray,现场可编程门阵列)的可编程线和运行实时性,并且可以满足芯片固件接口的需求,因此,本申请是基于FPGA40实现芯片测试装置。
FPGA40的具体型号可以根据需要进行设定和选取,例如采用zynq FPGA芯片,zynqFPGA芯片一个可扩展处理平台SoC系列芯片,内置了FPGA以及ARM处理器。当然,其他场合中,可以采用其他类型的FPGA40,例如采用xilinx microblaze软核,或Intel nios软核的FPGA。
FPGA40需要与主机50通信连接以实现相应数据的传输,例如考虑到接口的通用性,FPGA40可以采用USB(Universal Serial Bus,通用串行总线)接口与主机50通信连接。进一步的,本申请考虑到,当主机50与FPGA40远程通信连接时,可以进一步提高方案的灵活性,因此,在本发明的一种具体实施方式中,主机50可以通过USB接口和/或以太网接口与FPGA40连接。例如图2的实施方式中,便设置了以太网接口实现主机50与FPGA40的通信连接,使得主机50可以放置在远端,对于测试环境的组织方式会更为灵活。
FPGA40可以接收主机50下发的第一固件和第一测试程序并存储在存储介质30中,为了保障刷写的高效性,存储介质30通常可以为挂载在FPGA40上的DDR(Double DataRate,双倍数据速率)存储器。此外,图2中的FPGA40还外挂了SD卡,例如可以用于存储FPGA40自身的固件以及操作系统镜像。
FPGA40中可以使用PS(Processing System,处理系统)部分运行操作系统,以实现以太网或者USB驱动,从而快速与主机50建立连接。而PL(Progarmmable Logic,可编程逻辑)部分则主要可以包括数据转发模块、芯片固件接口模块以及测试切换控制模块,用以实现本申请对于FPGA40的功能要求。
FPGA40可以接收主机50发送的第一控制命令,进而根据第一控制命令进行切换电路20的电路控制,以及芯片测试座10的供电控制。
具体的,第一控制命令可以指定k个待测芯片,例如具体指定的是芯片测试座10中的第1插槽的待测芯片,第3插槽的待测芯片以及第4插槽的待测芯片,即该例子中的k=3。
由于第一控制命令进行了k个待测芯片的指定,因此,FPGA40可以进行切换电路20的电路控制,例如图2的实施方式中,具体是通过测试切换控制模块进行切换电路20的电路控制,从而使得第一控制命令所指定的k个待测芯片通过切换电路20依次连接至FPGA40的k个芯片固件接口。
以芯片测试座10中的第1插槽的待测芯片为例,且例如FPGA40有10个芯片固件接口,且这10个芯片固件接口的接口协议均是相同的,且均与第1插槽的待测芯片的接口协议匹配,则可以将第1插槽的待测芯片通过切换电路20连接至FPGA40的这10个芯片固件接口中的任意1个芯片固件接口。
可以理解的是,在上述例子中,当FPGA40的各个芯片固件接口的接口协议均相同时,即FPGA40仅支持进行1种接口协议的待测芯片的测试,通常可以应用在待测芯片的接口协议较为单一的场合中。
除了进行切换电路20的电路控制,还需要进行芯片测试座10的供电控制。在上述例子中,测试切换控制模块便需要基于第一控制命令,控制芯片测试座10中的第1插槽的待测芯片,第3插槽的待测芯片以及第4插槽的待测芯片上电。
k个待测芯片中的任一待测芯片上电之后,由于已经通过切换电路20与FPGA40实现了电路连接,因此可以自动向FPGA40发送读取指令。当FPGA40接收到k个待测芯片中的任一待测芯片发送的读取指令时,便可以发送第一固件和第一测试程序至待测芯片。例如图2的场合中,主机50之前下发的第一固件和第一测试程序被暂存在DDR存储器中,则此时,FPGA40的PS部分便可以通过数据转发模块向PL部分中的芯片固件接口模块发送第一固件和第一测试程序。
芯片固件接口模块可以实现FPGA40的外部接口模型,可以将第一固件和第一测试程序发送给k个待测芯片。
芯片测试座10设置有N个槽位,因此可以放置至多N个待测芯片。可以理解的是,对于任意1个槽位的待测芯片而言,FPGA40可以进行该槽位的上电控制,并且,通过控制切换电路20,可以将该槽位的待测芯片连接至FPGA40的各个芯片固件接口中的任意1个芯片固件接口。
主机50与芯片测试座10连接,可以是直接连接,也可以通过切换电路20间接连接。例如图2的场合中通过切换电路20进行间接连接,且采用的连接方式是串口连接。在任一待测芯片进行第一测试程序的测试时,主机50可以观察,进而记录测试结果。
此外,在部分场合中,主机50还可以与待测芯片进行交互,实现其他测试,进一步地提高了方案的灵活性。例如,在本发明的一种具体实施方式中,主机50还可以用于:
在任一待测芯片进行第一测试程序的测试时,通过与待测芯片进行数据交互,进行待测芯片的内存测试。
具体的,例如在该待测芯片进行第一测试程序的测试的某个阶段,主机50可以通过串口向该待测芯片发送内存测试指令,进而进行相关数据的记录,得到待测芯片的内存测试结果。
该种实施方式中,考虑到内存是待测芯片的重要部分,因此通过主机50与待测芯片进行数据交互,在待测芯片进行第一测试程序的测试的同时,实现了待测芯片的内存测试,提高了方案的灵活性,也有利于保障出厂芯片的质量。
在本发明的一种具体实施方式中,主机50还可以用于:
在任一待测芯片进行第一测试程序的测试时,通过与待测芯片进行数据交互,进行待测芯片的网络配置测试。
具体的,例如在该待测芯片进行第一测试程序的测试的某个阶段,主机50可以通过串口向该待测芯片发送网络配置指令,进而进行相关数据的记录,得到待测芯片的网络配置测试结果。
该种实施方式中,考虑到与内存一样,网络也是待测芯片的重要部分,也容易出错,因此通过主机50与待测芯片进行数据交互,在待测芯片进行第一测试程序的测试的同时,实现了待测芯片的网络配置测试,提高了方案的灵活性,也有利于保障出厂芯片的质量。
在本发明的一种具体实施方式中,FPGA40可以设置有A种类型的芯片固件接口以支持A种接口协议;A为不小于2的正整数;
针对第一控制命令所指定的k个待测芯片中的任一待测芯片,FPGA40进行切换电路20的电路控制时,具体用于:通过控制切换电路20,使得待测芯片连接至FPGA40中的与待测芯片的接口协议相匹配的芯片固件接口。
在前述的一种实施方式中,FPGA40的各个芯片固件接口的接口协议均相同,即FPGA40仅支持进行1种接口协议的待测芯片的测试,通常可以应用在待测芯片的接口协议较为单一的场合中。
而该种实施方式考虑到,部分场合中,不同待测芯片采用的接口协议可能不同,因此,FPGA40可以设置有A种类型的芯片固件接口以支持A种接口协议;A为不小于2的正整数。
由于FPGA40设置有不同类型的芯片固件接口以支持不同的接口协议,因此,在控制切换电路20时,需要将待测芯片连接至FPGA40中的与待测芯片的接口协议相匹配的芯片固件接口。当然,插槽中当前的待测芯片具体支持什么样的接口协议,主机50应当明确,并反映在下发的第一控制命令中。
进一步的,考虑到待测芯片常用的接口为SPI接口和SD卡接口,因此,在本发明的一种具体实施方式中,FPGA40至少设置有SPI接口和SD卡接口。
SPI接口的具体类型也可以有多种,例如图2的实施方式中,便设置了QSPI模型以实现各个QSPI接口的管理,且设置了SD模型以实现各个SD卡接口的管理。
在本发明的一种具体实施方式中,FPGA40,具体用于:
接收主机50下发的第一固件,第一测试程序,第二固件以及第二测试程序并存储在存储介质30中,当接收到主机50发送的第一控制命令和第二控制命令时,进行切换电路20的电路控制,以使第一控制命令所指定的k个待测芯片通过切换电路20依次连接至FPGA40的k个芯片固件接口,使第二控制命令所指定的m个待测芯片通过切换电路20依次连接至FPGA40的m个芯片固件接口,且进行芯片测试座10的供电控制,以使第一控制命令所指定的k个待测芯片上电,使第二控制命令所指定的m个待测芯片上电;当接收到k个待测芯片中的任一待测芯片发送的读取指令时,发送第一固件和第一测试程序至待测芯片,以使待测芯片进行第一测试程序的测试,当接收到m个待测芯片中的任一待测芯片发送的读取指令时,发送第二固件和第二测试程序至待测芯片,以使待测芯片进行第二测试程序的测试。
对于不同的待测芯片,所需要的固件以及测试程序可能是相同的,也可能是不同的。在一些批量测试的场合中,可能较长时间才会需要进行固件以及测试程序的切换,则主机50可以发送第一固件和第一测试程序,进而通过FPGA40存储在存储介质30中,等待批量测试完毕之后,例如下一批待测芯片需要的是第三固件和第三测试程序,则主机50可以发送第三固件和第三测试程序,进而通过FPGA40存储在存储介质30中,例如还可以发送命令以将此前存储的第一固件和第一测试程序删除。
而该种实施方式中,考虑到部分场合中进行的是少量的待测芯片的测试,例如k=3,且这3个待测芯片需要第一固件和第一测试程序,m=5,且这5个待测芯片需要第二固件和第二测试程序。
则该种实施方式中,允许主机50同时将第一固件,第一测试程序,第二固件以及第二测试程序下发至FPGA40,FPGA40便可以将这些数据均存储在存储介质30中。后续进行切换电路20的电路控制时,可以基于各个待测芯片各自所支持的接口协议,将k+m个待测芯片均通过切换电路20连接至FPGA40的相应的芯片固件接口。同样的,在进行芯片测试座10的供电控制时,可以控制k+m个待测芯片均上电。
相应的,当接收到k个待测芯片中的任一待测芯片发送的读取指令时,发送的是第一固件和第一测试程序。当接收到m个待测芯片中的任一待测芯片发送的读取指令时,发送的是第二固件和第二测试程序。
可以看出,该种实施方式中,针对不同待测芯片需要不同固件和测试程序时,可以同时进行测试,当然,k+m的数量不能超过总槽位数量N,并且,FPGA40中需要设置有足够数量的芯片固件接口,以连接相应的待测芯片。
此外,部分场合中,针对不同待测芯片,当需要相同的固件不同的测试程序,或者需要相同的测试程序不同的固件时,同样可以应用该种实施方式的方案,相当于是第一固件可以与第二固件相同,第一测试程序与第二测试程序不同。也可以是第一固件与第二固件不相同,而第一测试程序与第二测试程序相同。换而言之,该种实施方式中,第一固件,第一测试程序,第二固件以及第二测试程序的具体内容,均可以根据需要进行设定。此外在部分场合中,为了保障测试的准确性,不容易出错,k个待测芯片和m个待测芯片通常选取的是支持同一种接口协议的待测芯片,即对于支持不同接口协议的待测芯片,可以分批测试而不是如该种实施方式中同一批测试。
此外可以理解的是,芯片测试座10的槽位数量N的具体取值可以根据需要进行设定,N设置地越大,一次可以放置越多的待测芯片,测试效率越高,但对于FPGA40的芯片固件接口的数量要求会更高,切换电路20以及芯片测试座10的结构也会更为复杂,成本就越高,因此可以根据实际业务设计N的取值。
图2中,还将FPGA40,切换电路20以及芯片测试座10均布置在同一测试版上,有利于提高集成度,降低体积。
在本发明的一种具体实施方式中,存储介质30包括第一存储装置和第二存储装置,存储介质30利用第一存储装置和/或第二存储装置进行数据存储。
如上文的描述,为了保障刷写的高效性,存储介质30通常可以为挂载在FPGA40上的DDR存储器。该种实施方式中,为了保障存储功能的冗余,存储介质30可以具体包括第一存储装置和第二存储装置。则存储介质30可以利用第一存储装置和/或第二存储装置进行数据存储。
例如第一存储装置和第二存储装置通常可以设置为主备冗余的方式,例如在本发明的一种具体实施方式中,第一存储装置为默认的数据存储装置,当第一存储装置故障时,第二存储装置切换为默认的数据存储装置。
也就是说,可以优先将固件以及测试程序存储在第一存储装置中,例如第一存储装置为DDR存储器。当第一存储装置故障时,第二存储装置例如为SD卡,会切换为默认的数据存储装置,使得本申请的存储介质30依然能够实现其功能。
当然,存储介质30在利用第一存储装置和/或第二存储装置进行数据存储时,还可以设置有其他规则。例如默认使用第一存储装置存储,当第一存储装置存储空间用尽时,也可以采用第二存储装置进行数据存储。又如,主机50下发固件以及测试程序之后,便可以同时在第一存储装置和第二存储装置中进行数据存储,在FPGA40需要使用时,比较二者存储的数据是否一致,来避免数据传输过程出错对于芯片测试造成的影响。
应用本发明实施例所提供的技术方案,芯片测试座10设置有N个槽位,因此,本申请在进行芯片测试时,一次能够至多进行N个待测芯片的测试,提高效率。具体的,FPGA40可以用于接收主机50下发的第一固件和第一测试程序并存储在存储介质30中,当接收到主机50发送的第一控制命令时,进行切换电路20的电路控制,以使第一控制命令所指定的k个待测芯片通过切换电路20依次连接至FPGA40的k个芯片固件接口,且进行芯片测试座10的供电控制,以使第一控制命令所指定的k个待测芯片上电;当接收到k个待测芯片中的任一待测芯片发送的读取指令时,发送第一固件和第一测试程序至待测芯片,以使待测芯片进行第一测试程序的测试。在任一待测芯片进行第一测试程序的测试时,主机50可以记录测试结果。可以看出,主机50发送的第一控制命令之后,便可以自动进行k个待测芯片的测试,有效地提高了本申请方案的测试效率。并且,本申请并不是如传统方案中由人工将第一固件和第一测试程序刷写至外部的存储介质30中,而是可以由主机50发送至FPGA40,并且暂存至与FPGA40连接的存储介质30中,该过程速度很快,也不容易出现多次烧写造成损坏的情况,因此有利于进一步地提高测试效率。此外,本申请方案在主机50发送的第一控制命令之后便可以自动完成,因此也有利于提高测试效率。
综上所述,本申请的方案可以批量实现待测芯片的测试,刷写速度快,且自动完成,因此有效地提高了测试效率。
相应于上面的芯片测试装置的实施例,本发明实施例还提供了一种芯片测试方法,可与上文相互对应参照。
参见图3所示,为一种芯片测试方法的实施流程图,应用于FPGA中,FPGA与存储介质,切换电路,主机以及芯片测试座连接,芯片测试座设置有N个槽位以放置至多N个待测芯片,切换电路与芯片测试座连接,主机与FPGA以及芯片测试座连接,芯片测试方法包括以下步骤:
步骤S301:接收主机下发的第一固件和第一测试程序并存储在存储介质中;
步骤S302:当接收到主机发送的第一控制命令时,进行切换电路的电路控制,以使第一控制命令所指定的k个待测芯片通过切换电路依次连接至FPGA的k个芯片固件接口,且进行芯片测试座的供电控制,以使第一控制命令所指定的k个待测芯片上电;
步骤S303:当接收到k个待测芯片中的任一待测芯片发送的读取指令时,发送第一固件和第一测试程序至待测芯片,以使待测芯片进行第一测试程序的测试;
其中,在任一待测芯片进行第一测试程序的测试时,主机记录测试结果;N为不小于2的正整数,k为正整数且k≤N。
在本发明的一种具体实施方式中,FPGA设置有A种类型的芯片固件接口以支持A种接口协议;A为不小于2的正整数;
针对第一控制命令所指定的k个待测芯片中的任一待测芯片,步骤S302中描述的进行切换电路的电路控制,包括:
通过控制切换电路,使得待测芯片连接至FPGA中的与待测芯片的接口协议相匹配的芯片固件接口。
在本发明的一种具体实施方式中,FPGA至少设置有SPI接口和SD卡接口。
在本发明的一种具体实施方式中,FPGA,具体用于:
接收主机下发的第一固件,第一测试程序,第二固件以及第二测试程序并存储在存储介质中,当接收到主机发送的第一控制命令和第二控制命令时,进行切换电路的电路控制,以使第一控制命令所指定的k个待测芯片通过切换电路依次连接至FPGA的k个芯片固件接口,使第二控制命令所指定的m个待测芯片通过切换电路依次连接至FPGA的m个芯片固件接口,且进行芯片测试座的供电控制,以使第一控制命令所指定的k个待测芯片上电,使第二控制命令所指定的m个待测芯片上电;当接收到k个待测芯片中的任一待测芯片发送的读取指令时,发送第一固件和第一测试程序至待测芯片,以使待测芯片进行第一测试程序的测试,当接收到m个待测芯片中的任一待测芯片发送的读取指令时,发送第二固件和第二测试程序至待测芯片,以使待测芯片进行第二测试程序的测试。
在本发明的一种具体实施方式中,主机通过USB接口和/或以太网接口与FPGA连接。
在本发明的一种具体实施方式中,存储介质包括第一存储装置和第二存储装置,存储介质利用第一存储装置和/或第二存储装置进行数据存储。
在本发明的一种具体实施方式中,第一存储装置为默认的数据存储装置,当第一存储装置故障时,第二存储装置切换为默认的数据存储装置。
在本发明的一种具体实施方式中,还包括:
主机在任一待测芯片进行第一测试程序的测试时,通过与待测芯片进行数据交互,进行待测芯片的内存测试。
在本发明的一种具体实施方式中,还包括:
主机在任一待测芯片进行第一测试程序的测试时,通过与待测芯片进行数据交互,进行待测芯片的网络配置测试。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明的保护范围内。
Claims (10)
1.一种芯片测试装置,其特征在于,包括:
设置有N个槽位的芯片测试座,用于放置至多N个待测芯片;
与所述芯片测试座连接的切换电路;
存储介质;
与所述存储介质连接的FPGA,用于接收主机下发的第一固件和第一测试程序并存储在所述存储介质中,当接收到所述主机发送的第一控制命令时,进行所述切换电路的电路控制,以使所述第一控制命令所指定的k个待测芯片通过所述切换电路依次连接至所述FPGA的k个芯片固件接口,且进行所述芯片测试座的供电控制,以使所述第一控制命令所指定的k个所述待测芯片上电;当接收到k个所述待测芯片中的任一待测芯片发送的读取指令时,发送所述第一固件和所述第一测试程序至所述待测芯片,以使所述待测芯片进行所述第一测试程序的测试;
与所述FPGA以及所述芯片测试座连接的主机,用于在任一待测芯片进行所述第一测试程序的测试时,记录测试结果;
其中,N为不小于2的正整数,k为正整数且k≤N。
2.根据权利要求1所述的芯片测试装置,其特征在于,所述FPGA设置有A种类型的芯片固件接口以支持A种接口协议;A为不小于2的正整数;
针对所述第一控制命令所指定的k个待测芯片中的任一待测芯片,所述FPGA进行所述切换电路的电路控制时,具体用于:通过控制所述切换电路,使得所述待测芯片连接至所述FPGA中的与所述待测芯片的接口协议相匹配的芯片固件接口。
3.根据权利要求2所述的芯片测试装置,其特征在于,所述FPGA至少设置有SPI接口和SD卡接口。
4.根据权利要求1所述的芯片测试装置,其特征在于,所述FPGA,具体用于:
接收主机下发的第一固件,第一测试程序,第二固件以及第二测试程序并存储在所述存储介质中,当接收到所述主机发送的第一控制命令和第二控制命令时,进行所述切换电路的电路控制,以使所述第一控制命令所指定的k个待测芯片通过所述切换电路依次连接至所述FPGA的k个芯片固件接口,使所述第二控制命令所指定的m个待测芯片通过所述切换电路依次连接至所述FPGA的m个芯片固件接口,且进行所述芯片测试座的供电控制,以使所述第一控制命令所指定的k个所述待测芯片上电,使所述第二控制命令所指定的m个所述待测芯片上电;当接收到k个所述待测芯片中的任一待测芯片发送的读取指令时,发送所述第一固件和所述第一测试程序至所述待测芯片,以使所述待测芯片进行所述第一测试程序的测试,当接收到m个所述待测芯片中的任一待测芯片发送的读取指令时,发送所述第二固件和所述第二测试程序至所述待测芯片,以使所述待测芯片进行所述第二测试程序的测试。
5.根据权利要求1所述的芯片测试装置,其特征在于,所述主机通过USB接口和/或以太网接口与所述FPGA连接。
6.根据权利要求1所述的芯片测试装置,其特征在于,所述存储介质包括第一存储装置和第二存储装置,所述存储介质利用所述第一存储装置和/或所述第二存储装置进行数据存储。
7.根据权利要求6所述的芯片测试装置,其特征在于,所述第一存储装置为默认的数据存储装置,当所述第一存储装置故障时,所述第二存储装置切换为默认的数据存储装置。
8.根据权利要求1至7任一项所述的芯片测试装置,其特征在于,所述主机还用于:
在任一待测芯片进行所述第一测试程序的测试时,通过与所述待测芯片进行数据交互,进行所述待测芯片的内存测试。
9.根据权利要求1至7任一项所述的芯片测试装置,其特征在于,所述主机还用于:
在任一待测芯片进行所述第一测试程序的测试时,通过与所述待测芯片进行数据交互,进行所述待测芯片的网络配置测试。
10.一种芯片测试方法,其特征在于,应用于FPGA中,所述FPGA与存储介质,切换电路,主机以及芯片测试座连接,所述芯片测试座设置有N个槽位以放置至多N个待测芯片,所述切换电路与所述芯片测试座连接,所述主机与所述FPGA以及所述芯片测试座连接,所述芯片测试方法包括:
接收所述主机下发的第一固件和第一测试程序并存储在所述存储介质中;
当接收到所述主机发送的第一控制命令时,进行所述切换电路的电路控制,以使所述第一控制命令所指定的k个待测芯片通过所述切换电路依次连接至所述FPGA的k个芯片固件接口,且进行所述芯片测试座的供电控制,以使所述第一控制命令所指定的k个所述待测芯片上电;
当接收到k个所述待测芯片中的任一待测芯片发送的读取指令时,发送所述第一固件和所述第一测试程序至所述待测芯片,以使所述待测芯片进行所述第一测试程序的测试;
其中,在任一待测芯片进行所述第一测试程序的测试时,所述主机记录测试结果;N为不小于2的正整数,k为正整数且k≤N。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211055931.2A CN115410639A (zh) | 2022-08-30 | 2022-08-30 | 一种芯片测试装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211055931.2A CN115410639A (zh) | 2022-08-30 | 2022-08-30 | 一种芯片测试装置和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115410639A true CN115410639A (zh) | 2022-11-29 |
Family
ID=84163719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211055931.2A Pending CN115410639A (zh) | 2022-08-30 | 2022-08-30 | 一种芯片测试装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115410639A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116106725A (zh) * | 2023-03-24 | 2023-05-12 | 大唐恩智浦半导体(徐州)有限公司 | 多芯片上电测试系统、方法、装置和电子设备 |
-
2022
- 2022-08-30 CN CN202211055931.2A patent/CN115410639A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116106725A (zh) * | 2023-03-24 | 2023-05-12 | 大唐恩智浦半导体(徐州)有限公司 | 多芯片上电测试系统、方法、装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1938200B1 (en) | Initialization of flash storage via an embedded controller | |
JP3030342B2 (ja) | カード | |
CN109596974B (zh) | 一种多层堆叠的3d-sip芯片测试方法 | |
US9405717B2 (en) | Memory device debugging on host platforms | |
US20090198770A1 (en) | System and method of updating codes in controller | |
CN112000351B (zh) | Bmc固件的更新方法、更新装置、更新设备及存储介质 | |
CN113553081A (zh) | 一种基于zynq芯片的fpga加载方法 | |
CN110619914A (zh) | 一种带PCIe接口量产器用于固态硬盘的量产方法 | |
CN115410639A (zh) | 一种芯片测试装置和方法 | |
CN113270137A (zh) | 一种基于fpga嵌入式软核的ddr2测试方法 | |
CN112231005A (zh) | 一种基于uboot管理fpga版本的方法 | |
CN111813432A (zh) | 一种fpga配置升级方法和fpga平台 | |
CN116450552A (zh) | 基于i2c总线异步批量读写寄存器的方法及系统 | |
US8015448B2 (en) | System and method for conducting BIST operations | |
US6851013B1 (en) | Fast program mode | |
CN112925569A (zh) | 一种固件数据处理方法、装置、设备及存储介质 | |
CN111708493A (zh) | 一种磁盘阵列raid配置系统、方法及存储介质 | |
CN111179996B (zh) | 数据校准装置及其校准数据存写方法 | |
CN111563056A (zh) | 一种fpga配置文件的下载装置 | |
CN215769714U (zh) | 一种程序升级电路 | |
US20030093642A1 (en) | Systems and methods for controlling communication with nonvolatile memory devices | |
TWI764342B (zh) | 啟動狀態偵測系統及其方法 | |
CN113626821B (zh) | 服务器mac地址无线刷录方法、系统、终端及存储介质 | |
CN117667554A (zh) | 一种通信模组同一物理串口智能切换的方法及系统 | |
CN113590153A (zh) | 一种cpld的固件升级方法、系统、设备以及介质 |
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 |