一种用于芯片串行接口的测试方法、装置和芯片转让专利

申请号 : CN202111298088.6

文献号 : CN113986600B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 宁振海李德建谭浪贺龙龙张彦欣黎金旺

申请人 : 北京智芯微电子科技有限公司国网信息通信产业集团有限公司国网江苏省电力有限公司信息通信分公司国家电网有限公司

摘要 :

本发明实施例提供一种用于芯片串行接口的测试方法、装置和芯片,该方法包括设置错误时序,通过该错误时序发送数据至待测芯片上;根据该待测芯片的回复数据确定该待测芯片串行接口的稳定性。本发明通过模拟各种错误的时序场景,增加芯片的容错测试,能够更广范围地验证芯片串行接口的稳定性。

权利要求 :

1.一种用于芯片串行接口的测试方法,其特征在于,包括设置错误时序,通过该错误时序发送数据至待测芯片;

根据该待测芯片的回复数据确定该待测芯片串行接口的稳定性;

所述错误时序为位宽调节、采样点数据调节、位翻转中的至少一种;

根据待测芯片的容错阈值范围设置所述错误时序;

所述根据该待测芯片的回复数据验证该待测芯片串行接口的稳定性,包括:所述待测芯片的回复数据与发送的数据相同,则该待测芯片稳定;

所述待测芯片的回复数据与发送的数据不同,则该待测芯片不稳定;

所述位宽调节包括增加和/或减少时序中至少一位的位宽;

所述采样点数据调节包括更改采样沿附近的数据线。

2.根据权利要求1所述的测试方法,其特征在于,所述位翻转包括时序中至少一位从0置1或从1置0。

3.根据权利要求1所述的测试方法,其特征在于,所述错误时序通过芯片串行接口发送数据至待测芯片,所述芯片串行接口为I2C、UART、SPI、CAN、USB中的一种。

4.根据权利要求1所述的测试方法,其特征在于,所述待测芯片的回复数据包括回复的数据值、回复的数据量。

5.一种用于芯片串行接口的测试装置,其特征在于,包括根据权利要求1‑4中任一项权利要求所述的用于芯片串行接口的测试方法进行测试的测试模块,及主控机;

所述测试模块至少包括核心板卡;

所述主控机用于发送指示给所述测试模块;

所述测试模块用于根据所述指示测试待测芯片串行接口的稳定性;

所述核心板卡用于根据所述主控机的指示生成错误时序;

所述错误时序为位宽调节、采样点数据调节、位翻转中的至少一种;

根据待测芯片的容错阈值范围设置所述错误时序。

6.根据权利要求5所述的测试装置,其特征在于,所述测试模块还包括不少于一种子板卡及验证板;

待测芯片置于所述验证板上,所述核心板卡通过子板卡与所述验证板的待测芯片进行通信。

7.根据权利要求6所述的测试装置,其特征在于,所述核心板卡还用于控制子板卡的通信方式。

8.一种芯片,其特征在于,包括:根据权利要求1‑4中任一项权利要求所述的用于芯片串行接口的测试方法得到的稳定芯片。

说明书 :

一种用于芯片串行接口的测试方法、装置和芯片

技术领域

[0001] 本发明涉及芯片领域,具体地涉及一种用于芯片串行接口的测试方法、装置和芯片。

背景技术

[0002] 芯片串行接口验证一般采用单一芯片串行接口对接测试,每个芯片串行接口需要对应特定的辅助测试装置,且多数情况下物理串行接口不能统一,只能采用飞线方式完成被测和辅测设备之间的连接,干扰较大,无法完成芯片串行接口的性能测试。另外,现有芯片串行接口验证时仅能对正确功能做正确的验证测试,无法测试芯片串行接口的稳定性。
[0003] CN104699576B公开了一种串行通信测试装置、包括该装置的系统及其方法,为一种允许主控芯片(例如,驱动半导体)和从控芯片确定串行外围串行接口(SPI)通信中的错误的有无,从而提高数据通信的准确性和可靠性的技术,其为对通信数据的验证,并不能验证关于通信过程中外界干扰导致的时序错误下的芯片串行接口的稳定性。
[0004] CN106357462B公开了一种故障注入方法、芯片和设备,在开始通信系统的性能测试之前,将故障注入设备接入待测试的通信系统,即故障注入设备可以接入待测试通信系统的任意两个在通信过程中相邻的通信节点之间,如故障注入设备可以与待测试通信系统的网络控制器相连,也可以与待测试通信系统的交换机、网络终端、协议桥设备、甚至是ODN(OpticalDistribution Network,光分配网)设备等相连,故障配置信息的设置需囊括基于FC‑AE通信总线的通信系统在工作过程中的各个阶段,以实现对通信系统更全面的性能测试。该方法需要设定故障注入设备,故障配置信息包括原语故障信息和/或,报文故障信息,二者均为通信数据,该申请用于验证整个通信系统的稳定性,并没有验证芯片接口在时序错误下的稳定性。

发明内容

[0005] 本发明实施例的目的是提供一种用于芯片串行接口的测试方法、装置和芯片,该方法模拟各种错误(或边缘值)的串行时序场景,能够更广范围地验证芯片串行接口的稳定性。
[0006] 现有芯片测试方法仅能对正确功能做正确的验证测试,无法完成芯片串行接口的容错测试,即无法测试芯片串行接口的稳定性。
[0007] 为了解决上述问题,本发明实施例的芯片测试方法包括设置错误时序,通过该错误时序发送数据至待测芯片;根据该待测芯片的回复数据确定该待测芯片串行接口的稳定性。
[0008] 可选的,根据待测芯片的容错阈值范围设置所述错误时序。
[0009] 可选的,所述错误时序为位宽调节、采样点数据调节、位翻转中的至少一种。
[0010] 可选的,所述位宽调节包括增加和/或减少时序中至少一位的位宽。
[0011] 可选的,所述采样点数据调节包括更改采样沿附近的数据线。
[0012] 可选的,所述位翻转包括时序中至少一位从0置1或从1置0。
[0013] 可选的,所述错误时序通过芯片串行接口发送数据至待测芯片,所述芯片串行接口为I2C、UART、SPI、CAN、USB中的一种。
[0014] 可选的,所述根据该待测芯片的回复数据验证该待测芯片串行接口的稳定性,包括所述待测芯片的回复数据与发送的数据相同,则该待测芯片稳定;所述待测芯片的回复数据与发送的数据不同,则该待测芯片不稳定;所述待测芯片的回复数据包括回复的数据值、回复的数据量。
[0015] 相应的,本发明实施例还提供一种用于芯片串行接口的测试装置,包括根据上述所述的用于芯片串行接口的测试方法进行测试的测试模块,及主控机;
[0016] 所述主控机用于发送指示给所述测试模块;
[0017] 所述测试模块用于根据所述指示测试待测芯片串行接口的稳定性。
[0018] 可选的,所述测试模块包括核心板卡和不少于一种子板卡及验证板;待测芯片置于所述验证板上,所述核心板卡通过子板卡与所述验证板的待测芯片进行通信。
[0019] 可选的,所述核心板卡用于根据所述主控机的指示生成错误时序;所述核心板卡还用于控制子板卡的通信方式。
[0020] 相应的,本发明实施例还提供一种芯片,包括:根据本发明的芯片测试方法得到的稳定芯片。
[0021] 通过上述技术方案,本发明实施例提供的芯片测试方法通过模拟各种错误(或边缘值)的串行时序场景,增加了验证测试容错测试,能够更广范围地验证芯片串行接口的稳定性。
[0022] 本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

[0023] 附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
[0024] 图1是本发明的一种用于芯片串行接口的测试方法的流程示意图;
[0025] 图2是本发明的一种用于芯片串行接口的测试装置的具体实施示意图;
[0026] 图3、4、5是本发明的一种用于芯片串行接口的测试方法错误注入方式的示意图;
[0027] 图6是本发明的一种用于芯片串行接口的测试装置的流程图。

具体实施方式

[0028] 以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
[0029] 图1是本发明的一种用于芯片串行接口的测试方法的流程示意图,如图1所示,步骤S101为设置错误时序,根据待测芯片的容错阈值范围设置所述错误时序,该错误时序为所述阈值范围内的错误时序,包括位宽调节、采样点数据调节、位翻转中的至少一种。所述位宽调节包括增加和/或减少时序中至少一位的位宽。所述采样点数据调节包括更改采样沿附近的数据线。所述位翻转包括时序中至少一位可从0置1,或从1置0。不同芯片的容错阈值范围是不同,所述芯片的容错阈值范围与该芯片自身的工艺和性能指标等有关,对于确定的稳定性良好的芯片,接收阈值范围内的错误时序对应的数据后是能正常响应的。本发明可以通过工作人员在PC端设置错误时序,具体的可以通过相关界面软件实现。
[0030] 步骤S102为通过该错误时序发送数据至待测芯片上。测试端接收到PC端发来的设置错误时序的指令后,其测试端芯片生成该错误时序,通过该错误时序发送数据至待测芯片上。所述错误时序通过芯片串行接口发送数据至待测芯片上,所述芯片串行接口为I2C、UART、SPI、CAN、USB中的一种。不同的芯片串行接口其通信方式是不同的,例如UART为两线(TX,RX),可以全双工通信,数据是异步传输的,对双方的时序要求比较严格;SPI相比UART多了一条同步时钟线,属于同步串行口;USB2.0属于半双工异步通信方式,USB3.0属于全双工。
[0031] 对不同芯片串行接口注入的错误时序是有差异的,例如包括:
[0032] 如图3所示,对于异步串行传输,每一位均可调整bit的位宽,图3左半部分为增加n bit的位宽,右半部分为减小n bit的位宽,增加和减小的位宽范围需要满足待测芯片的容错阈值范围。
[0033] 如图4所示,对于同步串行传输,每一位均可在采样沿附近更改数据线的变化,改变了n‑1时序和n时序的采样沿,作为获取数据时有一定偏差,其调整的跳变点也需满足待测芯片的容错阈值范围。
[0034] 如图5所示,对于芯片串行接口中的每一位均可对数据线上的bit做翻转操作。所述错误时序是模拟芯片在正常工作过程中由于各种干扰导致的错误时序,为接近芯片正常工作的错误注入,所述错误时序满足待测芯片的容错阈值范围,该容错阈值范围根据待测芯片的规定稳定性确定。
[0035] 步骤S103为根据该待测芯片的回复数据确定该待测芯片串行接口的稳定性,包括所述待测芯片的回复数据与发送的数据相同,则该待测芯片稳定;所述待测芯片的回复数据与发送的数据不同,则该待测芯片不稳定;所述待测芯片的回复数据包括回复的数据值、回复的数据量。所述待测芯片的回复数据的具体内容与该芯片串行接口的通信协议有关。如果对于确定的芯片串行接口稳定性良好的芯片,在容错阈值范围内的错误时序下,接收发送数据后是能正常回复的。
[0036] 本发明的芯片通用串行串行接口的测试方法还用于确定芯片的容错阈值范围。通过构造出超出容错阈值范围外的错误时序,测试芯片在标定的范围外还能承受的程度。具体的,由于不同芯片上测试出的结果都是不一样的。所以对芯片验证时候需要对芯片做摸底容错范围测试。例如:待测芯片的容错阈值范围为一个时序可改变最多两个采样沿,设置错误时序为改变三个采样沿(超出该芯片的容错阈值范围),通过该错误时序发送数据至待测芯片,如果该芯片的回复数据正确,则该待测芯片稳定,该芯片的容错阈值范围为一个时序可改变最多三个采样沿。该测试方法需要多样品芯片、多实验测定。
[0037] 图2是本发明的一种用于芯片串行接口的测试装置的具体实施示意图,如图2所示,所述芯片测试装置包括根据上述所述的用于芯片串行接口的测试方法进行测试的测试模块,及主控机;所述主控机用于发送指示给所述测试模块;所述测试模块用于根据所述指示测试待测芯片串行接口的稳定性。所述测试模块包括核心板卡和不少于一种子板卡及验证板;待测芯片置于所述验证板上,所述核心板卡通过子板卡与所述验证板的待测芯片进行通信。其中所述主控机优选为PC机,该PC机与测试模块通过USB口通信连接,用于下发指令。所述测试模块包括核心板卡和不少于一种子板卡,所述待测芯片置于芯片验证板上,子板卡置于核心板卡和芯片验证板之间,作为他们通信的桥梁。核心板卡主要负责与PC通信、逻辑控制、芯片串行接口的软件实现,子板卡通过不同的物理串行接口形态连接在核心板卡和被测芯片验证板之间,与核心板卡一起完成芯片芯片串行接口的辅助测试,每个子板卡对应不同的芯片串行接口。核心板卡通过电源控制模块控制被测芯片验证板的供电,通过识别模块判断接入的子板卡对应的芯片串行接口测试类型,通过控制芯片串行接口完成与被测芯片验证板的指令通信,通过被测芯片串行接口完成芯片串行接口的辅助验证测试。本发明的芯片测试装置可提高芯片串行接口的验证测试效率,并可有效的减少测试中由于各种干扰带来的其他问题。
[0038] 图6是本发明的一种用于芯片串行接口的测试装置的流程图,如图6所示,芯片串行接口验证过程具体为:核心板和子板卡连接,子板卡连接芯片验证板,核心板卡通过子板卡的连接识别判断当前需要验证的芯片串行接口类型,反馈信息到PC,提示当前测试串口类型,进行芯片串行接口的自检,确保连接无误,并等待操作指令。待准备就绪,通过PC下发指令控制电源模块,提供电源给芯片验证板;同时通过控制芯片串行接口下发相应的测试固件到芯片验证板中,并复位芯片验证板,准备进行测试CASE的执行。根据不同芯片串行接口不同模式CASE执行相应的验证测试。
[0039] 具体包括:所述PC用于发送指示给所述核心板,所述核心板用于根据所述指示生成错误时序,通过该错误时序发送数据至芯片验证板上的待测芯片上,并根据该待测芯片的回复数据确定该待测芯片串行接口的稳定性。所述错误时序满足待测芯片的容错阈值范围,该容错阈值范围根据待测芯片的规定稳定性确定。所述错误时序为位宽调节、采样点数据调节、位翻转中的至少一种。所述位宽调节包括增加和/或减少时序中至少一位的位宽。所述采样点数据调节包括更改采样沿附近的数据线。所述位翻转包括时序中至少一位置1或置0。所述错误时序通过芯片串行接口发送数据至待测芯片上,所述芯片串行接口为I2C、UART、SPI、CAN、USB中的一种。所述根据该待测芯片的回复数据验证该待测芯片串行接口的稳定性,包括所述待测芯片的回复数据与所述发送的数据相同,则该待测芯片稳定;所述待测芯片的回复数据与所述发送的数据不同,则该待测芯片不稳定;所述待测芯片的回复数据包括回复的数据值、回复的数据量。
[0040] 本发明实施例还提供一种芯片,包括:根据上述芯片测试方法得到的稳定芯片。
[0041] 通过上述技术方案,本发明实施例提供的一种用于芯片通用芯片串行接口的测试方法包括设置错误时序,通过该错误时序发送数据至待测芯片上;根据该待测芯片的回复数据确定该待测芯片串行接口的稳定性。通过模拟各种错误(或边缘值)的串行时序场景,增加了验证测试容错测试,更广范围的验证了芯片串行接口的稳定性。
[0042] 以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
[0043] 另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
[0044] 此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。