芯片缓存的测试方法、装置、电子设备及存储介质制造方法及图纸

技术编号:37075446 阅读:13 留言:0更新日期:2023-03-29 19:52
本发明专利技术公开了一种芯片缓存的测试方法、装置、电子设备及存储介质,属于网络通信技术领域,所述方法包括使能芯片所有端口的内环配置,使端口将接收到的报文内环后转发;使能所有端口的入方向CRC检测功能,禁止所有端口出方向CRC更新功能;配置报文在芯片内部的转发逻辑;芯片内部发包模块向其中一个端口发送报文,并按配置的芯片转发逻辑向其它端口转发报文;检测每一端口上收到的报文是否存在CRC校验错误,并由此判断芯片的缓存是否存在异常,实现了芯片缓冲区异常的高效检测。实现了芯片缓冲区异常的高效检测。实现了芯片缓冲区异常的高效检测。

【技术实现步骤摘要】
芯片缓存的测试方法、装置、电子设备及存储介质


[0001]本专利技术涉及网络通信
,尤其涉及一种芯片缓存的测试方法、装置、电子设备及存储介质。

技术介绍

[0002]CRC(Cyclic Redundancy Check)即循环冗余校验码,是数据通信领域中最常用的一种查错校验码,基本思想是将传输的数据当做一个位数很长的数,将这个数除以另一个数(约定的多项式),得到的余数,将余数作为校验数据附加到原数据后面作为循环冗余校验码,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。其特征是信息字段和校验字段的长度可以任意选定。
[0003]当前以太网中,大部分场景下面使用的交换方式都是存储转发方式,即以太网设备收到报文之后,先保存到缓冲区(buffer),报文经过芯片查找及编辑之后,芯片又会从缓冲区里面取出对应报文,并将编辑的结果覆盖缓冲区里面的对应数据,同时和其他的数据做合并之后,将报文从芯片发送出去。缓冲区的存在可以有效避免芯片因出口处理不及时导致的丢包问题,同时,因缓冲区里面存储了完整的报文,因此可以对报文做CRC校验,即在报文入口可以基于收到的报文重新计算CRC,用来检测收到的报文是否正确,在报文出口可以重新计算CRC用于更新报文里面原始的CRC字段。
[0004]另一方面,如果缓冲区存在错误,常见的错误是缓冲区里面的某个比特(bit)固定为0或者1且不能被改写,会导致发出去的报文内容存在错误,轻则影响后续转发行为,重则会导致整个芯片异常。因实际组网时报文经常需要经过多个芯片才能达到实际的目的地,对于这种上游芯片缓冲区异常导致的下游转发出问题的问题,定位将会非常麻烦。
[0005]如图1所示的一种芯片缓存的测试方法,是通过使用发包测试工具来检测芯片的缓冲区是否异常,测试仪的端口A和B分别和芯片的端口0和1对接,芯片上配置转发逻辑将端口0收到的报文转发到端口1,同时端口1不重新计算CRC,对应的测试流程如下:
[0006]Step1.测试仪从端口A发送报文;
[0007]Step2.芯片端口0接收到测试仪发送的报文,将报文缓存到缓冲区里面,同时查转发表;
[0008]Step3.芯片端口1从缓冲区里面取缓存的报文内容并将对应的内容发送到测试仪的端口B上;
[0009]Step4.测试仪端口B接收到从芯片端口1发送过来的报文,通过查看测试仪端口B接收的报文是否存在CRC校验错误来判断芯片缓冲区是否存在问题。
[0010]这种检测方式虽然能检测出缓冲区是否处于正常状态,然其依赖于发包测试仪的检测才能实现,如果实际使用场景里面不存在辅助发包检测工具,则无法有效的检测缓冲区是否正常。

技术实现思路

[0011]本专利技术的目的在于提供一种芯片缓存的测试方法、装置、电子设备及存储介质,以克服现有技术中存在的一个或多个技术问题。
[0012]为实现上述目的,本专利技术提出一种芯片缓存的测试方法,包括:
[0013]使能芯片所有端口的内环配置,使端口将接收到的报文内环后转发;
[0014]使能所有端口的入方向CRC检测功能,禁止所有端口出方向CRC更新功能;
[0015]配置报文在芯片内部的转发逻辑;
[0016]芯片内部发包模块向其中一个端口发送报文,并按配置的芯片转发逻辑向其它端口转发报文;
[0017]检测每一端口上收到的报文是否存在CRC校验错误,并由此判断芯片的缓存是否存在异常。
[0018]优选地,所述配置报文在芯片内部的转发逻辑包括设置报文在芯片内部只进行不编辑的转发。
[0019]优选地,所述发包模块将报文发送至第一个端口入方向后,第一端口出方向接收该报文,并将报文内环回至第一端口入方向,同时报文被缓存到对应的缓冲区内。
[0020]优选地,除第一端口外的其他端口依次从所述缓冲区取出报文后,进行本端口的内环后依次转发。
[0021]优选地,如某一端口入方向在对报文进行CRC校验检测时出现与报文中存储的CRC不一致的CRC校验错误时,则由此判断出芯片缓存出现异常。
[0022]优选地,所述发包模块发送的报文格式包括:
[0023]报文所有字节全是0,
[0024]报文所有字节全是0xFF,
[0025]报文所有字节全是0xAA,或
[0026]报文所有字节全是0x55。
[0027]本专利技术还提出一种芯片缓存的测试装置,包括:
[0028]端口内环使能模块,用于使能芯片所有端口的内环配置,使端口将接收到的报文内环后转发;
[0029]CRC检测使能模块,用于使能所有端口的入方向CRC检测功能,并禁止所有端口出方向CRC更新功能;
[0030]报文转发逻辑配置模块,用于配置报文在芯片内部的转发逻辑;
[0031]发包模块,用于向芯片的其中一个端口发送报文,并由所述端口按配置的芯片转发逻辑向其他端口转发报文;
[0032]芯片缓存异常判断模块,用于根据检测到的每一端口上收到的报文是否存在CRC校验错误,并由此判断芯片的缓存是否存在异常。
[0033]优选地,所述发包模块用于将报文发送至第一个端口入方向,第一个端口入方向进行CRC校验后,由第一端口出方向将报文内环回至第一端口入方向,同时报文被缓存到对应的缓冲区内。
[0034]本专利技术还提出一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序时执行所述芯片缓存的测试方法。
[0035]本专利技术还提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述芯片缓存的测试方法。
[0036]与现有技术相比,本专利技术提出的芯片缓存的测试方法,在不借助外界测试仪的情况下,利用芯片内部自动发包引擎,通过构造不同的报文格式,使报文在芯片内部转发时不会被编辑即报文内容不变,在端口的出方向不重新计算CRC,同时在端口的入方向进行CRC检测,成功实现芯片缓冲区异常的检测,相对于传统使用测试仪的测试方式,可更高效的实现芯片缓冲区异常的检测。
附图说明
[0037]图1是现有的一种芯片缓存测试方法的流程框图;
[0038]图2是本专利技术芯片缓存测试方法一实施例的流程框图;
[0039]图3是本专利技术芯片缓存测试方法一实施例的流程图;
[0040]图4是本专利技术芯片缓存测试装置一实施例的示意框图。
具体实施方式
[0041]下面将结合本专利技术的附图,对本专利技术实施例的技术方案进行清楚、完整的描述。
[0042]结合图1、图2所示,本专利技术一实施例公开的芯片缓存的测试方法,其通过芯片内部自动发包引擎发送缓冲区测试报文,构造不同的报文格式,使报文在芯片内部转发时不会被编辑即报文内容不变,在端口的出方向不重新计算CRC,同时在端口的入方向进行CRC检测,从而实现芯片缓冲区异常的检测,具体来说,所述测试方法包括如下步骤:
[0043]S本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种芯片缓存的测试方法,其特征在于,包括:使能芯片所有端口的内环配置,使端口将接收到的报文内环后转发;使能所有端口的入方向CRC检测功能,禁止所有端口出方向CRC更新功能;配置报文在芯片内部的转发逻辑;芯片内部发包模块向其中一个端口发送报文,并按配置的芯片内部的转发逻辑向其它端口转发报文;检测每一端口上收到的报文是否存在CRC校验错误,并由此判断芯片的缓存是否存在异常。2.根据权利要求1所述的芯片缓存的测试方法,其特征在于,所述配置报文在芯片内部的转发逻辑包括设置报文在芯片内部进行不编辑的转发。3.根据权利要求1所述的芯片缓存的测试方法,其特征在于,所述发包模块将报文发送至第一个端口入方向后,第一端口出方向接收该报文,并将报文环回至第一端口入方向后,报文被缓存到设定的缓冲区内,同时通过查转发表准备转发至下一个端口。4.根据权利要求3所述的芯片缓存的测试方法,其特征在于,除第一端口外的其他端口依次接收所述缓冲区发送的报文后,进行本端口的内环后依次转发。5.根据权利要求1所述的芯片缓存的测试方法,其特征在于,如某一端口入方向在对报文进行CRC校验检测时出现与报文中的CRC不一致的CRC校验错误时,则由此判断出芯片缓存出现异常。6.根据权利要求1所述的芯片缓存的测试方法,其特征在于,所述发包模块发送的报文格式包括...

【专利技术属性】
技术研发人员:郭斌赵子苍赵仕中
申请(专利权)人:苏州盛科通信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1