CN108600047B - 串行传输芯片及serdes电路测试方法 - Google Patents
串行传输芯片及serdes电路测试方法 Download PDFInfo
- Publication number
- CN108600047B CN108600047B CN201810304171.1A CN201810304171A CN108600047B CN 108600047 B CN108600047 B CN 108600047B CN 201810304171 A CN201810304171 A CN 201810304171A CN 108600047 B CN108600047 B CN 108600047B
- Authority
- CN
- China
- Prior art keywords
- data
- test data
- comparison
- test
- error
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0847—Transmission error
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明提供了一种串行传输芯片及SERDES电路测试方法,所述串行传输芯片中,测试数据生成模块向SERDES电路发送第一测试数据;比较数据生成模块在接收到SERDES电路发送的指示信号时,向错误数据注入模块发送第二测试数据;错误数据注入模块根据错误注入控制信号向数据比较模块的第一输入端发送第二测试数据,或者,发送在对第二测试数据按照预设方式注入错误信息后得到的第三测试数据;数据比较模块用于接收SERDES电路的输出数据,将输出数据分别与第二测试数据和第三测试数据比较,得到测试结果,达到对测试过程注入可控的错误信息,分别在错误信息注入前和错误信息注入后校验并确定测试结果,提高故障芯片的检出率。
Description
技术领域
本发明涉及串行器测试技术领域,尤其是涉及一种串行传输芯片及SERDES电路测试方法。
背景技术
串行器(serdes)是一种主流的时分多路复用(TDM)、点对点(P2P)的串行通信技术。即在发送端多路低速并行信号被转换成高速串行信号,经过传输媒体(光缆或铜线),最后在接收端高速串行信号重新转换成低速并行信号。
为了保证能够保证串行器在进行串并转换以及并串转换后数据能够正确输出,需要在串行器出厂前对串行器的发送端和接收端进行测试。首先通过载板将串行器的发送端和接收端连接,在利用测试模块对串行器的测试过程中,利用测试模块向串行器发送测试数据,当串行器的发送端或者接收端存在缺陷时,测试模块将无法接收到期望的接收数据,测试模块在接收到错误的接收数据时,输出错误计数信号,并且输出错误提示。
然而,上述测试模块自身也可能会存在故障,例如,输出错误计数信号的模块故障,输出错误提示的模块故障以及测试过程出现错误等等,导致故障的串行器被当做是正常的串行器出厂,导致用户在使用串行器传输数据时出现错误,降低用户使用效率。
发明内容
有鉴于此,本发明的目的在于提供一种串行传输芯片及SERDES电路测试方法,以缓解现有技术中存在的故障的串行器被当做是正常的串行器出厂,导致的用户在使用串行器传输数据时出现错误的技术问题。
第一方面,本发明实施例提供了一种串行传输芯片,包括:测试数据生成模块、比较数据生成模块、错误数据注入模块和数据比较模块;
所述测试数据生成模块的输出端与所述SERDES电路的输入端连接,用于向SERDES电路发送第一测试数据;
所述比较数据生成模块的输入端与所述SERDES电路的输出端连接,所述比较数据生成模块的输出端与所述错误数据注入模块的第一输入端连接,用于在接收到所述SERDES电路发送的指示信号时,向所述错误数据注入模块发送第二测试数据;
所述错误数据注入模块的第二输入端接入错误注入控制信号,用于根据所述错误注入控制信号向所述数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据;
所述数据比较模块的第二输入端与所述SERDES电路的输出端连接,用于接收所述SERDES电路的输出数据,将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述按照预设方式注入错误信息后得到的第三测试数据与所述第二测试数据不同,所述预设方式包括:对所述第二测试数据中的至少一位数据取反,对所述第二测试数据平移至少一位,或者,对所述第二测试数据插入预设位数的数据。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述错误数据注入模块包括:错误注入单元和选择单元;
所述错误注入单元的输入端与所述比较数据生成模块的输出端连接,用于对所述比较数据生成模块注入错误信息,得到第三测试数据;
所述选择单元的其中一个输入端与所述比较数据生成模块连接,用于接收第二测试数据,所述选择单元的另一个输入端与所述错误注入单元的输出端连接,用于接收所述第三测试数据;所述选择单元的输出端与所述数据比较模块的第二输入端连接,用于根据接入的所述错误注入控制信号向所述数据比较模块发送第二测试数据或者第三测试数据。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述选择单元,还用于:
当接收到错误注入控制信号为使能信号时,向所述数据比较模块发送第三测试数据;
当接收到错误注入控制信号为非使能信号时,向所述数据比较模块发送第二测试数据。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述数据比较模块,还用于:
将所述输出数据与所述第二测试数据比较,得到第一比较值;
将所述输出数据与所述第三测试数据比较,得到第二比较值;
当所述第一比较值和所述第二比较值中的至少一个与其对应的预设参考值不同时,确定测试结果为所述SERDES电路故障;当所述第一比较值与其对应的预设参考值相同,且所述第二比较值与其对应的预设参考值相同,确定测试结果为所述SERDES电路正常。
第二方面,本发明实施例还提供一种SERDES电路测试方法,包括:
由测试数据生成模块向SERDES电路发送第一测试数据;
当接收到所述SERDES电路发送的指示信号时,由比较数据生成模块生成第二测试数据,所述指示信号是所述SERDES电路在接收到所述第一测试数据后发送的,向错误数据注入模块发送第二测试数据;
当接收到错误注入控制信号时,由错误数据注入模块根据所述错误注入控制信号向所述数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据;
当接收到所述SERDES电路的输出数据时,由数据比较模块将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,所述按照预设方式注入错误信息后得到的第三测试数据与所述第二测试数据不同,所述预设方式包括:对所述第二测试数据中的至少一位数据取反,对所述第二测试数据平移至少一位,或者,对所述第二测试数据插入预设位数的数据。
结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述由错误数据注入模块根据所述错误注入控制信号向所述数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据,包括:
由错误数据注入模块对所述比较数据生成模块注入错误信息,得到第三测试数据;
当接收到错误注入控制信号为使能信号时,向所述数据比较模块发送第三测试数据;
当接收到错误注入控制信号为非使能信号时,向所述数据比较模块发送第二测试数据。
结合第二方面,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述由数据比较模块将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果,包括:
由数据比较模块将所述输出数据与所述第二测试数据比较,得到第一比较值;
将所述输出数据与所述第三测试数据比较,得到第二比较值;
当所述第一比较值和所述第二比较值中的至少一个与其对应的预设参考值不同时,确定测试结果为所述SERDES电路故障;
当所述第一比较值与其对应的预设参考值相同,且所述第二比较值与其对应的预设参考值相同,确定测试结果为所述SERDES电路正常。
第三方面,本发明实施例还提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行所述第二方面所述的方法。
本发明实施例带来了以下有益效果:本发明实施例通过利用测试数据生成模块的输出端与所述SERDES电路的输入端连接,用于向SERDES电路发送第一测试数据;利用比较数据生成模块的输入端与所述SERDES电路的输出端连接,比较数据生成模块的输出端与所述错误数据注入模块的第一输入端连接,用于在接收到所述SERDES电路发送的指示信号时,向所述错误数据注入模块发送第二测试数据;利用错误数据注入模块的第二输入端接入错误注入控制信号,用于根据所述错误注入控制信号向所述数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据;数据比较模块的第二输入端与所述SERDES电路的输出端连接,用于接收所述SERDES电路的输出数据,将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果。
本发明实施例在对SERDES电路的测试过程中,可以对测试过程注入可控的错误信息,在错误信息注入前后,测试结果会发生翻转,避免通过测试和不通过测试时测试结果保持不变带来的弊端,分别在错误信息注入前和错误信息注入后校验并确定测试结果,能够提高故障芯片的检出率,进而避免LPBK通路有问题的芯片被错误的当作好芯片而流入到客户手中。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的现有技术中对串行器进行LPBK测试的原理示意图;
图2为本发明实施例提供的串行传输芯片的一种结构图;
图3为本发明实施例提供的串行传输芯片的另一种结构图;
图4为本发明实施例提供的SERDES电路测试方法的一种流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前各种serdes EPHY(electrical physical layer)(如USB2、USB3、PCIE、SATA和Rapid IO等)的测试普遍采用如图1的LPBK(loop back)测试方法。图1中串行器的TX通道包括:CM驱动器和DT驱动器模块、PISO(parallel data in,serial data out,并行数据入,串行数据出)模块,RX通道包括:SIPO(serial data in,parallel data out,串行数据入,并行数据出)和CDR(clock and data recovery,时钟数据恢复模块)模块,以及均衡器模块。一般来说,对于固定码型的LPBK测试,在设计(design)中应包括如下几个部分:
1)测试数据生成模块01:用于产生固定码型的并行数据,此并行数据PTNGEN_TXD经过TX通道的PISO并串转换后,由TX端口以差分信号的形式通过载板向RX端口输出串行高速信号;
2)比较数据生成模块02:当收到来自RX通道的compare_init(用于指示数据开始比较的信号)后,此模块开始产生用于比较的并行数据PTNCMP_TXD。PTNCMP_TXD和PTNGEN_TXD在数据格式上是一致的,可以简单的认为PTNCMP_TXD是PTNGEN_TXD经过一段时间延迟后得到的数据;
3)数据比较模块03:接收来自LPBK的Rx_data,并把这个Rx_data和比较数据生成模块02产生的PTNCMP_TXD数据进行比较,当Rx_data和PTNCMP_TXD相等时,ERR_CNT和BISTER都等于“0”;当Rx_data和PTNCMP_TXD不相等时,表明收到了错误数据,ERR_CNT开始计数,并且使BISTER拉高指示有错误发生。
然而,发明人在实际应用中发现,现有技术在进行LPBK测试时,假如EPHY的TX或者RX部分存在缺陷,使得RX部分无法收到期望的数据,既Rx_data和PTNCMP_TXD不相等,这时ERR_CNT应该开始计数,BISTER从初始的低电平拉高到“1”指示有错误发生,当通过Jtag总线对BISTER读出时可以判断这颗芯片是否通过测试。但如果实际芯片中出现如下三种情况之一,都会使有问题的芯片通过测试,被误认为是好芯片。
1)实际芯片中的ERR_CNT计数部分硬件电路出现故障,使得Rx_data和PTNCMP_TXD无论是否相等,ERR_CNT的输出都是“0”,在这种情况下就会使有问题的芯片通过测试,这种情况是我们必须要避免的。
2)ERR_CNT计数正确,但BISTER信号的输出路径上出现了固定0故障,而这颗芯片本身TX通道或者RX通道存在缺陷,也会使得这颗芯片读出的BISTER值是“0”,使得坏芯片被误认为是好芯片。
3)对LPBK测试的控制信号进行配置时,如果配置通路出现问题或者配置错误,就会导致LPBK没有正确进行。在这种情况下,BISTER信号的初始值又是“0”,就会导致错误的认为LPBK没有问题,芯片通过测试。
基于以上,本发明实施例提供的一种串行传输芯片及SERDES电路测试方法,可以在对SERDES电路的测试过程中,可以对测试过程注入可控的错误信息,在错误信息注入前后,测试结果会发生翻转,避免通过测试和不通过测试时测试结果保持不变带来的弊端,分别在错误信息注入前和错误信息注入后校验并确定测试结果,能够提高故障芯片的检出率,进而避免LPBK通路有问题的芯片被错误的当作好芯片而流入到客户手中。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种串行传输芯片进行详细介绍,在实际应用中,应当将串行传输芯片中被测的SERDES电路的RX通道的RX端口和TX通道的TX端口利用载板等进行连接,以使SERDES电路的接收端能够接收到发送端从外部接收到的测试数据;串行传输芯片是在逻辑物理层(logic physical layer,LPHY)实现的数字电路,如图2所示,串行传输芯片包括:测试数据生成模块11、比较数据生成模块12、错误数据注入模块13和数据比较模块14,在实际应用中,测试数据生成模块11、比较数据生成模块12、错误数据注入模块13和数据比较模块14可以指由verilog代码编写的功能模块,并且由同一时钟信号控制。
所述测试数据生成模块11的输出端与SERDES电路00的输入端连接,用于向SERDES电路00发送第一测试数据,在本发明实施例中,SERDES电路00的输入端可以指SERDES电路00接收测试数据的端口,所述SERDES电路00的输入端是SERDES电路00内部TX通道的输入端。
第一测试数据可以为固定码型的并行数据等,第一测试数据经过TX端口的并行输入串行输出(parallel-in serial-out,PISO)并串转换后,TX端口以差分信号的形式向RX端口输送串行高速信号。在本发明实施例中,SERDES电路可以指串行器等。
所述比较数据生成模块12的输入端与所述SERDES电路00的输出端连接(所述SERDES电路00的输出端可以指SERDES电路00发送指示信号的端口,所述SERDES电路00的输出端是SERDES电路00内部RX通道的输出端),所述比较数据生成模块12的输出端与所述错误数据注入模块13的第一输入端连接,用于在接收到所述SERDES电路00发送的指示信号时,向所述错误数据注入模块13发送第二测试数据。
在本发明实施例中,RX在接收到串行高速信号后可以产生指示信号,并发送给比较数据生成模块。指示信号的作用是指示比较数据生成模块生成第二测试数据。比较数据生成模块在接收到所述SERDES电路00发送的指示信号时,向所述错误数据注入模块发送第二测试数据,第二测试数据可以与第一测试数据在数据格式上相同,可以认为第二测试数据和第一测试数据是预先在测试数据生成模块11和比较数据生成模块12中预先存储的。
所述错误数据注入模块13的第二输入端接入错误注入控制信号,用于根据所述错误注入控制信号向所述数据比较模块14的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据。
所述按照预设方式注入错误信息后得到的第三测试数据与所述第二测试数据不同,所述预设方式可以包括:对所述第二测试数据中的至少一位数据取反,即可以对第二测试数据中的任意N位取反,N大于或者等于1,且小于等于第二测试数据的位数。假设第二测试数据为20位,可以将任一位取反,例如:最高位(第19位)取反,也可以将第18位取反,……,还可以将第1位取反等;假设第二测试数据为20位,也可以将任两位取反,取反的两位可以相邻也可以不相邻,例如:将第19位取反且将第18位取反,将第18位取反且将第10位取反等等;还可以将任意三位取反;还可以将高十位取反,低十位不变等等,具体取反具体可以根据实际需要设定,本发明不做限定。
所述预设方式还可以包括:对所述第二测试数据平移至少一位,或者,对所述第二测试数据插入预设位数的数据(该数据应当与第二测试数据不同)等,在实际应用中,能够使注入错误信息前的第二测试数据和注入错误信息后的第三测试数据不同,即可认为是进行错误注入。
在本发明实施例中,如图3所示,所述错误数据注入模块13包括:错误注入单元13.1和选择单元13.2。
所述错误注入单元13.1的输入端与所述比较数据生成模块12的输出端连接,用于对所述比较数据生成模块注入错误信息;
所述选择单元13.2的其中一个输入端与所述比较数据生成模块12连接,用于接收第二测试数据,所述选择单元13.2的另一个输入端与所述错误注入单元13.1的输出端连接,用于根据所述错误注入控制信号向所述数据比较模块14发送第二测试数据或者第三测试数据。
所述选择单元13.2,还用于:当接收到错误注入控制信号为使能信号时,向所述数据比较模块发送第三测试数据;当接收到错误注入控制信号为非使能信号时,向所述数据比较模块发送第二测试数据。
错误注入控制信号可以来自于与串行传输芯片的管脚连接的寄存器(register),寄存器发出的错误注入控制信号为使能信号或者是非使能信号,因此可以实现通过外部接口对串行传输芯片进行配置。
所述数据比较模块14的第二输入端与所述SERDES电路00的输出端连接,用于接收所述SERDES电路00的输出数据,将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果。
SERDES电路的RX端口在接收到通过载板传输的串行高速信号后,RX端口对串行高速信号进行串行输入并行输出(serial-in parallel-out,SIPO)的串并转换,得到输出数据。
在实际应用中,所述数据比较模块14将所述输出数据与所述第二测试数据比较,得到第一比较值;将所述输出数据与所述第三测试数据比较,得到第二比较值;当所述第一比较值和所述第二比较值中的至少一个与其对应的预设参考值不同时,确定测试结果为所述SERDES电路故障;当所述第一比较值与其对应的预设参考值相同,且所述第二比较值与其对应的预设参考值相同,确定测试结果为所述SERDES电路正常。
在实际应用中,数据比较模块14还可以将所述输出数据与所述第二测试数据比较,得到第一比较值;将所述输出数据与所述第三测试数据比较,得到第二比较值;然后外部设备通过Jtag总线读取第一比较值和第二比较值,外部设备判断所述第一比较值和所述第二比较值中是否存在至少一个与其对应的预设参考值不同,当所述第一比较值和所述第二比较值中的至少一个与其对应的预设参考值不同时,确定测试结果为所述SERDES电路故障;当所述第一比较值与其对应的预设参考值相同,且所述第二比较值与其对应的预设参考值相同,确定测试结果为所述SERDES电路正常。
在本发明实施例中,在对SERDES电路进行测试前,把错误注入控制信号配置为非使能信号,然后再开始测试,等待一段时间后,可以第一次利用Jtag总线读取第一比较值和第二比较值。
可以利用外部设备通过Jtag总线读取数据比较模块14在将第一比较值和第二比较值之后得到测试结果,具体可以采用以下方式:
假设对于SERDES电路内部没有缺陷的SERDES电路,第一比较值应当为0,第二比较值应当为1;在实际操作过程中,假设得到的第一比较值为1,则由于1与期望的第一比较值0不相符,所以认为SERDES电路为故障;假设得到的第一比较值为0,第二比较值也为0,由于第二比较值与期望的第二比较值不符,所以也认为SERDES电路故障。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对步骤、数字表达式和数值并不限制本发明的范围。
另外,本领域技术人员应当理解的是,逻辑物理层中不仅可以包括用于测试SERDES电路的测试数据生成模块11、比较数据生成模块12、错误数据注入模块13和数据比较模块14等,还可以包括在非测试模式下控制所述SERDES电路的电路等。
本发明实施例通过利用测试数据生成模块的输出端与所述SERDES电路的输入端连接,用于向SERDES电路发送第一测试数据;利用比较数据生成模块的输入端与所述SERDES电路的输出端连接,比较数据生成模块的输出端与所述错误数据注入模块的第一输入端连接,用于在接收到所述SERDES电路发送的指示信号时,向所述错误数据注入模块发送第二测试数据;利用错误数据注入模块的第二输入端接入错误注入控制信号,用于根据所述错误注入控制信号向所述数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据;数据比较模块的第二输入端与所述SERDES电路的输出端连接,用于接收所述SERDES电路的输出数据,将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果。
本发明实施例在对SERDES电路的测试过程中,可以对测试过程注入可控的错误信息,在错误信息注入前后,测试结果会发生翻转,避免通过测试和不通过测试时测试结果保持不变带来的弊端,分别在错误信息注入前和错误信息注入后校验并确定测试结果,能够提高故障芯片的检出率,进而避免LPBK通路有问题的芯片被错误的当作好芯片而流入到客户手中。
在本发明的又一实施例中,如图4所示,还提供一种SERDES电路测试方法,本发明实施例所提供的方法,其实现原理及产生的技术效果和前述装置实施例相同,为简要描述,方法实施例部分未提及之处,可参考前述装置实施例中相应内容。所述方法可以包括以下步骤。
在步骤S101中,由测试数据生成模块向SERDES电路发送第一测试数据。
在步骤S102中,当接收到所述SERDES电路发送的指示信号时,由比较数据生成模块生成第二测试数据,所述指示信号是所述SERDES电路在接收到所述第一测试数据后发送的,向错误数据注入模块发送第二测试数据;
在步骤S103中,当接收到错误注入控制信号时,由错误数据注入模块根据所述错误注入控制信号向所述数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据;
在本发明实施例中,所述按照预设方式注入错误信息后得到的第三测试数据与所述第二测试数据不同。所述预设方式包括:对所述第二测试数据中的至少一位数据取反,对所述第二测试数据平移至少一位,或者,对所述第二测试数据插入预设位数的数据。
在该步骤中,由错误数据注入模块对所述比较数据生成模块注入错误信息,得到第三测试数据;当接收到错误注入控制信号为使能信号时,向所述数据比较模块发送第三测试数据;当接收到错误注入控制信号为非使能信号时,向所述数据比较模块发送第二测试数据。
在步骤S104中,当接收到所述SERDES电路的输出数据时,由数据比较模块将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果。
如图4所示,在本发明实施例中,所述步骤S104可以包括以下步骤。
在步骤S201中,由数据比较模块将所述输出数据与所述第二测试数据比较,得到第一比较值;
在步骤S202中,将所述输出数据与所述第三测试数据比较,得到第二比较值;
在步骤S203中,当所述第一比较值和所述第二比较值中的至少一个与其对应的预设参考值不同时,确定测试结果为所述SERDES电路故障;
在步骤S204中,当所述第一比较值与其对应的预设参考值相同,且所述第二比较值与其对应的预设参考值相同,确定测试结果为所述SERDES电路正常。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在本发明的又一实施例中,还一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行所述方法实施例所述的方法。
本发明实施例所提供的串行测试方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (5)
1.一种串行传输芯片,其特征在于,包括:SERDES电路、测试数据生成模块、比较数据生成模块、错误数据注入模块和数据比较模块;
所述测试数据生成模块的输出端与所述SERDES电路的输入端连接,用于向SERDES电路发送第一测试数据;
所述比较数据生成模块的输入端与所述SERDES电路的输出端连接,所述比较数据生成模块的输出端与所述错误数据注入模块的第一输入端连接,用于在接收到所述SERDES电路发送的指示信号时,向所述错误数据注入模块发送第二测试数据;
所述错误数据注入模块的第二输入端接入错误注入控制信号,用于根据所述错误注入控制信号向所述数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据;
所述数据比较模块的第二输入端与所述SERDES电路的输出端连接,用于接收所述SERDES电路的输出数据,将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果;
所述错误数据注入模块包括:错误注入单元和选择单元;
所述错误注入单元的输入端与所述比较数据生成模块的输出端连接,用于对所述比较数据生成模块注入错误信息,得到第三测试数据;
所述选择单元的其中一个输入端与所述比较数据生成模块连接,用于接收第二测试数据,所述选择单元的另一个输入端与所述错误注入单元的输出端连接,用于接收所述第三测试数据;所述选择单元的输出端与所述数据比较模块的第二输入端连接,用于根据接入的所述错误注入控制信号向所述数据比较模块发送第二测试数据或者第三测试数据;
所述选择单元,还用于:当接收到错误注入控制信号为使能信号时,向所述数据比较模块发送第三测试数据;当接收到错误注入控制信号为非使能信号时,向所述数据比较模块发送第二测试数据;
所述数据比较模块,还用于:
将所述输出数据与所述第二测试数据比较,得到第一比较值;
将所述输出数据与所述第三测试数据比较,得到第二比较值;
当所述第一比较值和所述第二比较值中的至少一个与其对应的预设参考值不同时,确定测试结果为所述SERDES电路故障;当所述第一比较值与其对应的预设参考值相同,且所述第二比较值与其对应的预设参考值相同,确定测试结果为所述SERDES电路正常。
2.根据权利要求1所述的串行传输芯片,其特征在于,所述按照预设方式注入错误信息后得到的第三测试数据与所述第二测试数据不同,所述预设方式包括:对所述第二测试数据中的至少一位数据取反,对所述第二测试数据平移至少一位,或者,对所述第二测试数据插入预设位数的数据。
3.一种SERDES电路测试方法,其特征在于,包括:
由测试数据生成模块向SERDES电路发送第一测试数据;
当接收到所述SERDES电路发送的指示信号时,由比较数据生成模块生成第二测试数据,所述指示信号是所述SERDES电路在接收到所述第一测试数据后发送的,向错误数据注入模块发送第二测试数据;
当接收到错误注入控制信号时,由错误数据注入模块根据所述错误注入控制信号向数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据;
当接收到所述SERDES电路的输出数据时,由所述数据比较模块将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果;
所述由错误数据注入模块根据所述错误注入控制信号向所述数据比较模块的第一输入端发送第二测试数据,或者,发送在对所述第二测试数据按照预设方式注入错误信息后得到的第三测试数据,包括:由错误数据注入模块对所述比较数据生成模块注入错误信息,得到第三测试数据;当接收到错误注入控制信号为使能信号时,向所述数据比较模块发送第三测试数据;当接收到错误注入控制信号为非使能信号时,向所述数据比较模块发送第二测试数据;
所述由所述数据比较模块将所述输出数据分别与所述第二测试数据和所述第三测试数据比较,得到测试结果,包括:
由数据比较模块将所述输出数据与所述第二测试数据比较,得到第一比较值;
将所述输出数据与所述第三测试数据比较,得到第二比较值;
当所述第一比较值和所述第二比较值中的至少一个与其对应的预设参考值不同时,确定测试结果为所述SERDES电路故障;
当所述第一比较值与其对应的预设参考值相同,且所述第二比较值与其对应的预设参考值相同,确定测试结果为所述SERDES电路正常。
4.根据权利要求3所述的SERDES电路测试方法,其特征在于,所述按照预设方式注入错误信息后得到的第三测试数据与所述第二测试数据不同,所述预设方式包括:对所述第二测试数据中的至少一位数据取反,对所述第二测试数据平移至少一位,或者,对所述第二测试数据插入预设位数的数据。
5.一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行所述权利要求3-4任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810304171.1A CN108600047B (zh) | 2018-04-04 | 2018-04-04 | 串行传输芯片及serdes电路测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810304171.1A CN108600047B (zh) | 2018-04-04 | 2018-04-04 | 串行传输芯片及serdes电路测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108600047A CN108600047A (zh) | 2018-09-28 |
CN108600047B true CN108600047B (zh) | 2021-04-27 |
Family
ID=63624591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810304171.1A Active CN108600047B (zh) | 2018-04-04 | 2018-04-04 | 串行传输芯片及serdes电路测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108600047B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110299975A (zh) * | 2019-06-28 | 2019-10-01 | 苏州浪潮智能科技有限公司 | 一种fpga芯片互连并行接口的验证系统及设备 |
CN112506730B (zh) * | 2020-11-10 | 2022-11-01 | 中国人民解放军战略支援部队信息工程大学 | 适用于网络交换芯片ecc功能验证的验证平台及验证方法 |
CN113295943B (zh) * | 2021-04-30 | 2023-03-24 | 地平线征程(杭州)人工智能科技有限公司 | 待测试模块的测试电路、方法及装置 |
CN113656230B (zh) * | 2021-08-20 | 2023-06-16 | 地平线(上海)人工智能技术有限公司 | 故障诊断电路、方法、装置及计算机可读存储介质 |
CN114039877B (zh) * | 2021-10-12 | 2023-06-30 | 深圳市紫光同创电子有限公司 | 环回测试电路、并串行与串并行转换器及环回测试方法 |
CN115102882A (zh) * | 2022-06-29 | 2022-09-23 | 龙芯中科(北京)信息技术有限公司 | 物理收发器的测试模块、测试装置和测试方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009488A (zh) * | 2006-01-10 | 2007-08-01 | 恩益禧电子股份有限公司 | 时钟和数据恢复电路及serdes电路 |
CN103246582A (zh) * | 2012-02-07 | 2013-08-14 | 鼎桥通信技术有限公司 | 一种fpga故障检测方法和装置 |
CN103744009A (zh) * | 2013-12-17 | 2014-04-23 | 记忆科技(深圳)有限公司 | 一种串行传输芯片测试方法、系统及集成芯片 |
CN105182207A (zh) * | 2014-05-30 | 2015-12-23 | 国民技术股份有限公司 | 一种芯片错误注入测试方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101916306A (zh) * | 2010-07-16 | 2010-12-15 | 北京航空航天大学 | 一种用于fpga芯片敏感区域定位的系统及其方法 |
JP5803821B2 (ja) * | 2012-06-15 | 2015-11-04 | 富士ゼロックス株式会社 | 制御装置、第1制御部、第2制御部、及び画像形成装置 |
-
2018
- 2018-04-04 CN CN201810304171.1A patent/CN108600047B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101009488A (zh) * | 2006-01-10 | 2007-08-01 | 恩益禧电子股份有限公司 | 时钟和数据恢复电路及serdes电路 |
CN103246582A (zh) * | 2012-02-07 | 2013-08-14 | 鼎桥通信技术有限公司 | 一种fpga故障检测方法和装置 |
CN103744009A (zh) * | 2013-12-17 | 2014-04-23 | 记忆科技(深圳)有限公司 | 一种串行传输芯片测试方法、系统及集成芯片 |
CN105182207A (zh) * | 2014-05-30 | 2015-12-23 | 国民技术股份有限公司 | 一种芯片错误注入测试方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108600047A (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108600047B (zh) | 串行传输芯片及serdes电路测试方法 | |
KR101714630B1 (ko) | 컴퓨터 메모리 테스트 구조 | |
US7082556B2 (en) | System and method of detecting a bit processing error | |
CN103399254B (zh) | 板卡在位的检测方法及装置 | |
US20070204204A1 (en) | Concurrent code checker and hardware efficient high-speed I/O having built-in self-test and debug features | |
CN109426636B (zh) | 一种fpga片间高位宽数据传输的方法及装置 | |
US20120326738A1 (en) | Pattern synthesis apparatus and semiconductor test system having the same | |
JP2014174131A (ja) | 受信回路、半導体集積回路及び試験方法 | |
US11255906B2 (en) | Test device and method with built-in self-test logic | |
CN113032319A (zh) | 基于fpga的车载系统数据传输方法及同步高速串行总线结构 | |
US8065571B2 (en) | Storage area network (SAN) link integrity tester | |
CN117558331B (zh) | 一种用于高密度测试芯片地址稳定性的检测方法及装置 | |
EP1814234B1 (en) | Concurrent code checker and hardware efficient high- speed I/O having built- in self- test and debug features | |
CN110646723B (zh) | 总线接口测试电路和方法 | |
CN113055247B (zh) | 一种fpga的多通道高速收发器环回测试方法和装置 | |
US20050086563A1 (en) | Channel-based testing of communication link | |
US8687681B2 (en) | Receiver and signal testing method thereof | |
US7979756B2 (en) | Apparatus, system and method for a go/no go link integrity tester | |
CN111861858A (zh) | 一种启动图像压缩功能验证的方法、装置及相关设备 | |
CN111198833B (zh) | 串行通用输入/输出系统 | |
US20030101020A1 (en) | Devices connected to fiber channels and margin test method for the devices, and method for specifying problems in system having devices connected to fiber channels | |
CN115827304A (zh) | 一种片内高速总线数据的校验系统及校验方法 | |
CN112350785B (zh) | 一种检验serdes通信链路性能的方法及系统 | |
CN108155979B (zh) | 一种检测设备 | |
JP6725692B2 (ja) | 非同期フィードバックトレーニング |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |