一种测试装置及方法
文献发布时间:2024-04-18 19:58:21
技术领域
本发明涉及系统芯片测试技术领域,具体涉及一种测试装置及方法。
背景技术
随着芯片设计复杂度的提高,芯片的自动测试设备(ATE)测试成为越来越重的环节。同时SOC芯片跟ASIC芯片不同,SOC芯片一般都由很多IP(Intellectual Property,在集成电路设计行业中指已验证、可重复利用、具有某种确定功能的芯片设计模块)以及总线组成,所以对SOC芯片的测试需要很多不同的配置来验证不同的IP。目前常用的测试方式有以下几种:通过片外电路以及数据接口进行测试;通过自定通信协议实现ATE测试。
通过片外电路以及数据接口进行测试时,片外电路可以是片外FLASH等存储器,也可以是FPGA等片外板级电路,片外电路通过一些数据接口,比如SPI、JTAG、USB等将测试程序进行加载,然后完成SOC芯片测试。
通过自定通信协议实现ATE测试时,通过ATE基台发送测试指令给MCU,MCU接受到相应指令后进行测试。
发明内容
本发明提供了一种测试装置及方法,用于实现对SOC芯片的测试。
本发明的一方面提供了一种测试装置,应用于对SOC芯片的测试,包括配置有第一测试协议及检测模块的自动检测机台、配置有转换桥和APB总线的待测芯片、配置为所述自动检测机台与所述转换桥之间进行数据传输的测试总线;其中,所述转换桥具有与所述测试总线连接的第一接口以及与所述APB总线连接的第二接口,所述自动检测机台、测试线路及第一接口配置为遵循第一测试协议;所述第二接口与APB总线配置为遵循第二测试协议;所述待测芯片还包括与APB总线连接的若干IP,所述APB总线存储有所述若干IP的地址,所述转换桥存储有所述APB总线中存储的地址;自动检测机台,用于向转换桥发送测试主控时钟和第一测试指令以选定测试目标及测试种类,发送选定的所述测试目标的地址以找到待测试IP地址,并与所述测试目标的地址进行对应测试种类的测试;所述检测模块,用于检测是否完成所述测试目标的地址的发送及是否完成测试。
根据本发明一实施例,所述测试总线包括:
时钟测试总线,用于作为发送测试主控时钟的传输线路;
命令测试总线,用于作为发送测试指令的传输线路;
数据测试总线,用于发送和接收测试数据的双向传输线路;
所述时钟测试总线和命令测试总线为自动检测机台至所述转换桥方向的单向传输总线。
本发明的另一方面提供了一种测试方法,应用于对SOC芯片的测试,包括如下步骤:
自动检测机台发送测试主控时钟和第一测试指令,用于选择测试目标及测试种类;
根据确定的所述测试目标及所述测试种类,自动检测机台发送所述测试目标的地址,检测模块检测是否完成所述测试目标的地址的发送;
自动检测机台与所述测试目标的地址进行数据的传输以实现对应测试种类的测试;检测模块检测是否完成测试。
根据本发明一实施例,所述测试目标包括:转换桥、APB总线;所述测试种类包括:读测试、写测试;所述测试目标的地址包括若干IP的地址。
根据本发明一实施例,所述自动检测机台向转换桥发送测试主控时钟和第一测试指令前还包括如下步骤:
使用测试总线连接自动检测机台与待测芯片,并进行初始化;
将所述待测芯片转为测试模式。
根据本发明一实施例,所述根据选定的所述测试目标及所述测试种类,自动检测机台发送所述测试目标的地址,用于找到待测试IP地址还包括检测步骤如下:
根据所述测试目标的地址位宽及所述测试目标的位宽,计算待发送次数;
检测所述自动测试机台发送次数,当所述自动测试机台发送次数达到计算的所述发送次数,则停止继续传输数据,完成所述测试目标的地址的发送;
自动检测机台与所述测试目标的地址进行数据的传输以实现对应测试种类的测试还包括检测步骤如下:
根据需要传输的所述数据的位宽及所述测试目标的位宽,计算待发送次数;
检测所述自动测试机台发送次数,当所述自动测试机台发送次数达到计算的所述待发送次数,则停止继续传输数据,完成所述所述测试。
根据本发明一实施例,自动检测机台发送测试主控时钟和写APB总线指令;
下一个时钟,自动检测机台发送需要写入数据的APB总线中存储的对应的IP的地址;
下一个时钟,自动检测机台向所述对应的IP的地址发送需要写入的数据,进行APB总线写动作的测试。
根据本发明一实施例,自动检测机台向转换桥发送测试主控时钟和写APB总线指令;
下一个时钟,自动检测机台发送需要读出数据的APB总线中存储的对应的IP的地址;
下一个时钟,自动检测机台自所述对应的IP的地址接收需要读出的数据,进行APB总线写动作的测试。
根据本发明一实施例,自动检测机台发送测试主控时钟和写APB总线指令;
下一个时钟,自动检测机台发送需要写入数据的转换桥中存储的对应的IP的地址;
下一个时钟,自动检测机台向所述对应的IP的地址发送需要写入的数据,进行测试总线写动作的测试。
根据本发明一实施例,自动检测机台发送测试主控时钟和写APB总线指令;
下一个时钟,自动检测机台发送需要读出数据的转换桥中存储的对应的IP的地址;
下一个时钟,自动检测机台自所述对应的IP的地址接收需要读出的数据,进行测试总线写动作的测试。
与现有技术相比,本发明具有如下的有益效果:
本发明通过公开一种用于测试SOC芯片的测试装置及方法,通过在自动检测机台配置测试协议及检测模块、在待测芯片配置转换桥和与转换桥连接的APB总线以及与APB总线连接的若干IP,通过测试总线直接连接自动测试机台及待测芯片的转换桥,直接通过测试总线与APB总线的数据交互,实现芯片内部各模块数据的访问,从而实现了对转换桥和APB总线读和写操作的检测,减少了人工操作,减少了数据接口和芯片引脚。测试总线包括:时钟测试总线、命令测试总线、数据测试总线实现数据的并行传输以提高数据的处理效率,使得服务器在单位时间内所能够处理数据的吞吐量更大,从而避免造成数据拥塞宕机,提升了服务器的稳定性。
附图说明
图1根据本发明实施例,示出了一种用于测试SOC芯片的测试装置的结构示意图;
图2根据本发明实施例,示出了一种用于测试SOC芯片的测试方法的方法流程图;
图3根据本发明实施例,示出了一种用于测试SOC芯片之前的初始化方法流程图;
图4根据本发明实施例,示出了一种完成测试目标地址的发送的检测方法流程图;
图5根据本发明实施例,示出了一种完成测试的检测方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”,本文中使用的术语“阈值”表示“消融阈值”,下文还可能包括其他明确的和隐含的定义。
本文所述IP在集成电路设计行业中指已验证、可重复利用、具有某种确定功能的芯片设计模块,可以划分为CPU、GPU、DSP、VPU、总线、接口等6个类别,也可按软核、固核、硬核分类。本文所述SOC芯片表示系统级芯片,包含完整系统并有嵌入软件的全部内容。同时它又是一种技术,用以实现从确定系统功能开始,到软/硬件划分,并完成设计的整个过程。本文所述时钟测试总线又为CLK测试总线,命令测试总线又为CMD测试总线,数据测试总线又为DATA测试总线。
随着芯片设计复杂度的提高,芯片的自动测试机台(ATE)测试成为越来越重的环节。同时SOC芯片跟ASIC芯片不同,SOC芯片一般都由很多IP以及总线组成,所以对SOC芯片的测试需要很多不同的配置来验证不同的IP。目前常用的测试方式有以下几种:通过片外电路以及数据接口进行测试;通过自定通信协议实现ATE测试。其中,通过片外电路以及数据接口进行测试时,片外电路可以是片外FLASH等存储器,也可以是FPGA等片外板级电路,片外电路通过一些数据接口,比如SPI、JTAG、USB等将测试程序进行加载,然后完成SOC芯片测试。通过自定通信协议实现ATE测试时,通过ATE基台发送测试指令给MCU,MCU接受到相应指令后进行测试。
但是通过片外电路以及数据接口进行测试时,因为需要增加大量的片外电路来进行测试程序加载,所以需要大量的外部电路;同时因为片外电路需要一些操作程序,以及数据接口也需要连接,最后测试数据也需要进行分析,因此需要人工介入测试;因为增加了数据接口也就增加了芯片引脚,且要更换数据接口的连接,测试时间较长,不适用于量产测试;第三芯片引脚增多,芯片设计复杂度及面积都会提高。
通过自定通信协议实现ATE测试时,由于协议指令都是针对MCU,同时IP的测试需要MCU的介入,因此需要唤醒MCU,一旦MCU唤醒不成功,后续的指令和测试都无效;同时由于测试接口是串行接口,因此指令也只能串行发送,串行发送和唤醒MCU都增加了测试时间。
针对上述技术问题,本发明公开的测试装置及方法,通过在自动检测机台配置第一测试协议及检测模块、在待测芯片配置转换桥和与转换桥连接的APB总线以及与APB总线连接的若干IP,通过测试总线直接连接自动测试机台及待测芯片的转换桥,直接通过测试总线与APB总线的数据交互,实现芯片内部各模块数据的访问,减少了人工操作,减少了数据接口和芯片引脚。测试总线包括:时钟测试总线、命令测试总线、数据测试总线实现数据的并行传输以提高数据的处理效率,使得服务器在单位时间内所能够处理数据的吞吐量更大,从而避免造成数据拥塞宕机,提升了服务器的稳定性。
本发明的实施例一提供了测试装置的一种具体实施方式,应用于对SOC芯片的测试,参见图1,该测试装置具体包括如下内容:配置有第一测试协议及检测模块的自动检测机台、配置有转换桥和APB总线的待测芯片、配置为自动检测机台与转换桥之间进行数据传输的测试总线;其中,转换桥具有与测试总线连接的第一接口以及与APB总线连接的第二接口,自动检测机台、测试线路及第一接口配置为遵循第一测试协议;第二接口与APB总线配置为遵循第二测试协议;待测芯片还包括与APB总线连接的若干IP,如图1所示的IP1、IP2、……、IPn,APB总线存储有若干IP的地址,转换桥存储有APB总线中存储的地址;自动检测机台,用于向转换桥发送测试主控时钟和第一测试指令以选定测试目标及测试种类,发送选定的测试目标的地址以找到待测试IP地址,并与测试目标的地址进行对应测试种类的测试;检测模块,用于检测是否完成测试目标的地址的发送及是否完成测试。
其中,测试总线包括:时钟测试总线,用于作为发送测试主控时钟的传输线路;命令测试总线,用于作为发送测试指令的传输线路;数据测试总线,用于发送和接收测试数据的双向传输线路;时钟测试总线和命令测试总线为自动检测机台至转换桥方向的单向传输总线。
其中,直接连接APB总线,不用经过AHB总线,先去激活MCU,因此减少了测试时间。
本发明的实施例二提供了测试方法的一种具体实施方式,应用于对SOC芯片的测试,参见图2-图5,该测试方法具体包括如下步骤:
S300:自动检测机台发送测试主控时钟和第一测试指令,用于选择测试目标及测试种类。其中,测试目标包括:转换桥、APB总线;测试种类包括:读测试、写测试;测试目标的地址包括若干IP的地址。
S400:根据选定的测试目标及测试种类,自动检测机台发送测试目标的地址,检测模块检测是否完成测试目标的地址的发送。
S500:自动检测机台与测试目标的地址进行数据的传输以实现对应测试种类的测试;检测模块检测是否完成测试。
具体的,自动检测机台发送测试主控时钟和写APB总线指令;
下一个时钟,自动检测机台发送需要写入数据的APB总线中存储的对应的IP的地址;
下一个时钟,自动检测机台向对应的IP的地址发送需要写入的数据,进行APB总线写动作的测试。
具体的,自动检测机台向转换桥发送测试主控时钟和写APB总线指令;
下一个时钟,自动检测机台发送需要读出数据的APB总线中存储的对应的IP的地址;
下一个时钟,自动检测机台自对应的IP的地址接收需要读出的数据,进行APB总线写动作的测试。
具体的,自动检测机台发送测试主控时钟和写APB总线指令;
下一个时钟,自动检测机台发送需要写入数据的转换桥中存储的对应的IP的地址;
下一个时钟,自动检测机台向对应的IP的地址发送需要写入的数据,进行测试总线写动作的测试。
具体的,自动检测机台发送测试主控时钟和写APB总线指令;
下一个时钟,自动检测机台发送需要读出数据的转换桥中存储的对应的IP的地址;
下一个时钟,自动检测机台自所述对应的IP的地址接收需要读出的数据,进行测试总线写动作的测试。
其中,步骤S300前还包括如下步骤:
S100:使用测试总线连接自动检测机台与待测芯片,并进行初始化;
S200:将待测芯片转为测试模式。
其中,步骤S400中检测模块检测是否完成测试目标的地址的发送具体包括如下步骤:
S410:根据测试目标的地址位宽及测试目标的位宽,计算待发送次数;
S420:检测自动测试机台发送次数,当自动测试机台发送次数达到计算的发送次数,则停止继续传输数据,完成测试目标的地址的发送;
其中,步骤S500中检测模块检测是否完成测试具体包括如下步骤:
S510:根据需要传输的数据的位宽及测试目标的位宽,计算待发送次数;
S520:检测自动测试机台发送次数,当自动测试机台发送次数达到计算的待发送次数,则停止继续传输数据,完成测试。
示例性的,将自动测试机台与待测芯片连接,然后将整套系统初始化,待测芯片切换到测试模式。自动检测机台发送测试主控时钟和第一测试指令,该第一测试指令包括发送写APB总线指令、发送读APB总线指令、发送写测试总线指令及发送读测试总线指令。当第一测试指令为发送写APB总线指令时,自动测试机台在发送完第一测试指令后的下一个时钟,发送需要写入数据的APB总线地址,示例性的,APB总线地址为32bit位宽,则需要8拍时钟才能发送完APB总线地址,因此需要检测模块检测是否完成需要写入数据的APB总线地址的发送,当检测到自动测试机台发送次数达到计算的8次发送次数,则停止继续传输数据,完成测试目标的地址的发送。发送完地址后的下一拍时钟,自动测试机台向APB总线地址发送需要写入的数据,示例性的,数据为32bit位宽,则需要8拍时钟才能发送完数据,因此需要检测模块检测是否完成数据的的传输,从而完成测试,当检测到自动测试机台发送次数达到计算的8次发送次数,则停止继续传输数据,完成测试。当自动测试机台发送完成地址和数据后,待测芯片会根据地址将相应数据写入APB总线对应的地址中。自动测试机台根据程序判断配置是否完成,如果完成则测试结束,如果未完成,则继续重复上述操作。
当第一测试指令为发送读APB总线指令时,自动测试机台在发送完第一测试指令后的下一个时钟,发送需要读出数据的APB总线地址,示例性的,APB总线地址为32bit位宽,则需要8拍时钟才能发送完APB总线地址,因此需要检测模块检测是否完成需要读出数据的APB总线地址的发送,当检测到自动测试机台发送次数达到计算的8次发送次数,则停止继续传输数据,完成测试目标的地址的发送。发送完地址后的下一拍时钟,待测芯片根据地址将相应数据从APB总线对应的地址中读取到测试总线上,然后自动测试机台从测试总线上将数据读出。自动测试机台根据程序判断配置是否完成,如果完成则测试结束,如果未完成,则继续重复上述操作。
当第一测试指令为发送写测试总线指令时,自动测试机台在发送完第一测试指令后的下一个时钟,发送需要写入数据的测试总线地址,示例性的,测试总线地址为4bit位宽,则需要1拍时钟能发送完测试总线地址,因此需要检测模块检测是否完成需要写入数据的测试总线地址的发送,当检测到自动测试机台发送次数达到计算的1次发送次数,则停止继续传输数据,完成测试目标的地址的发送。发送完地址后的下一拍时钟,自动测试机台向测试总线地址发送需要写入的数据,示例性的,数据为4bit位宽,则需要1拍时钟能发送完数据,因此需要检测模块检测是否完成数据的的传输,从而完成测试,当检测到自动测试机台发送次数达到计算的1次发送次数,则停止继续传输数据,完成测试。当自动测试机台发送完成地址和数据后,待测芯片会根据地址将相应数据写入测试总线对应的地址中。自动测试机台根据程序判断配置是否完成,如果完成则测试结束,如果未完成,则继续重复上述操作。
当第一测试指令为发送读测试总线指令时,自动测试机台在发送完第一测试指令后的下一个时钟,发送需要读出数据的测试总线地址,示例性的,测试总线地址为4bit位宽,则需要1拍时钟能发送完测试总线地址,因此需要检测模块检测是否完成需要读出数据的测试总线地址的发送,当检测到自动测试机台发送次数达到计算的1次发送次数,则停止继续传输数据,完成测试目标的地址的发送。发送完地址后的下一拍时钟,待测芯片根据地址将相应数据从测试总线对应的地址中读取到测试总线上,然后自动测试机台从测试总线上将数据读出。自动测试机台根据程序判断配置是否完成,如果完成则测试结束,如果未完成,则继续重复上述操作。
综上所述,通过本发明提出的技术方案,通过在自动检测机台配置测试协议及检测模块、在待测芯片配置转换桥和与转换桥连接的APB总线以及与APB总线连接的若干IP,通过测试总线直接连接自动测试机台及待测芯片的转换桥,直接通过测试总线与APB总线的数据交互,实现芯片内部各模块数据的访问,减少了人工操作,减少了数据接口和芯片引脚。测试总线包括:时钟测试总线、命令测试总线、数据测试总线实现数据的并行传输以提高数据的处理效率,使得服务器在单位时间内所能够处理数据的吞吐量更大,从而避免造成数据拥塞宕机,提升了服务器的稳定性。
上述描述仅是对本发明技术方案较佳实施例的描述,并非对本发明技术方案范围的任何限定,本发明技术方案领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。
- 一种DCS系统连接故障的测试装置和一种测试方法
- 一种软件测试范围确定方法、软件测试方法和装置
- 一种管芯参数测试方法、适配装置及该装置的安装方法
- 一种用于测试导热硅胶垫导热率的测试装置及测试方法
- 一种套管射孔水平井产液剖面测试装置、生产测试一体管柱及测试方法
- 用于测试包括处理单元和程序和/或数据存储器的被测装置的自动化测试设备和包括测试控制器、与被测装置的一个或多个接口、共享存储器的自动化测试设备以及用于测试被测装置的方法
- 芯片测试器、用于提供定时信息的方法、测试夹具套装、用于对传输延迟信息进行后处理的装置、用于对延迟信息进行后处理的方法、用于测试待测试器件的芯片测试设施和方法