CN103780322B - 低成本高可靠性的高速网络通讯芯片测试方法与电路 - Google Patents
低成本高可靠性的高速网络通讯芯片测试方法与电路 Download PDFInfo
- Publication number
- CN103780322B CN103780322B CN201410038737.2A CN201410038737A CN103780322B CN 103780322 B CN103780322 B CN 103780322B CN 201410038737 A CN201410038737 A CN 201410038737A CN 103780322 B CN103780322 B CN 103780322B
- Authority
- CN
- China
- Prior art keywords
- packet
- data
- crc
- circuit
- payload
- 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
Landscapes
- Maintenance And Management Of Digital Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种低成本高可靠性的高速网络通讯芯片测试方法与电路,本发明由数据包有效载荷生成电路生成所需的发送有效载荷数据,数据包检测电路对接收数据包进行数据包包头及数据包包尾检测,第二循环冗余校验码生成电路生成第二CRC校验码,比较电路对第二CRC校验码与预设CRC码比较,通过接收数据包CRC错误计数器对比较的结果进行计数,通过读取发送数据计数器、发送数据包字节数计数器、接收数据包计数器、接收数据包字节数计数器及接收数据包CRC错误计数器内的计数值判断测试结果,操作方便,提高测试效率及精度,可以不依赖于专业仪器和其他任何测试装置而对高速网络通讯芯片进行测试,降低测试成本,提高测试效率,安全可靠。
Description
技术领域
本发明涉及一种测试方法与测试电路,尤其是一种低成本高可靠性的高速网络通讯芯片测试方法与电路,属于高速网络通讯芯片测试的技术领域。
背景技术
高速网络通讯芯片检测的最重要部分就是检测数据包在芯片内传递的正确性,例如有无数据包的丢失,有无数据内容的变化。传统的测试方法是在芯片外部,在PCB板上制作产生和接收数据包的测试电路,将产生的数据送入待测芯片中,并检测从待测芯片中环回出来的数据。或者依赖于专业测试仪器厂商提供的测试设备向芯片内部发送数据,接收并检测由芯片环回出来数据。这种方法的风险就在于,一旦芯片在I/O或者其他某些逻辑上出现问题,而导致外部的测试数据根本无法进入芯片内部,或者芯片内部发送出的数据无法送到芯片外部。这样也就无法得知芯片内部逻辑的实际工作情况,造成芯片无法测试而浪费资源。
而且随着网络通讯类芯片的数据传输速率向10Gbps及至100Gbps不断提高,专业的高速芯片测试设备变得极为昂贵而难以负担。如果没有测试设备,而需要在芯片外部单独设计测试装置,对如此高速(大于10Gbps)的装置而言,设计难度极大。
目前常见的CRC(Cyclic Redundancy Check)检测方法只对接收到的数据包的有效载荷进行CRC计算,将计算得出的CRC值与接收到的,跟在数据包有效载荷后的CRC值进行比较,从而判断所接收数据包的对错,但这种检测方法无法检测出数据包有效载荷后有无多‘0’或者少‘0’的情况发生,从而影响数据包检测的正确性。为了避免这种情况,有些CRC检测方法会在数据包的有效载荷中再附加一些特定的信息,除了检查数据包末尾的CRC外,还检测数据包有效载荷中的附加信息来确定数据包的正确性。但此种方法提高了检测的复杂度,也增加了额外的计算开销,影响检测效率。
发明内容
本发明的目的是克服现有技术中存在的不足,提供一种低成本高可靠性的高速网络通讯芯片测试方法与电路,其结构紧凑,操作方便,提高测试效率及精度,成本低,适应范围广,安全可靠。
按照本发明提供的技术方案,一种低成本高可靠性的高速网络通讯芯片测试方法,所述高速网络通讯芯片测试方法包括如下步骤:
a、对发送数据包计数器、发送数据包字节计数器、接收数据包计数器、接收数据包字节数计数器及接收数据包CRC错误计数器进行清零,并通过控制电路设置数据包有效载荷生成电路所需的有效载荷初始值;
b、控制电路控制数据包有效载荷生成电路根据有效载荷初始值生成所需的发送有效载荷数据,数据包有效载荷生成电路将生成的发送有效载荷数据传输到数据包生成电路内;
c、数据包生成电路将发送有效载荷数据传输到第一循环冗余校验码生成电路内,以使得第一循环冗余校验码生成电路根据有效载荷数据生成所需的第一CRC校验码;数据包生成电路将第一CRC校验码及发送有效载荷数据封装成符合高速网络通讯芯片通信规范的测试数据包,并将测试数据包发送到高速网络通讯芯片内,且数据包生成电路将测试数据包内包含的数据包数量以及字节数量分别存储至发送数据包计数器及发送数据包字节计数器内;
d、数据包检测电路接收经过高速网络通讯芯片环回的接收数据包,控制电路控制数据包检测电路对接收数据包的检测,数据包检测电路将接收数据包内包含的接收有效载荷数据包数量及接收有效载荷字节数量分别存储至接收数据包计数器及接收数据包字节数计数器内;
e、控制电路控制第二循环冗余校验码生成电路根据数据包检测电路检测接收数据包内的接收有效载荷数据生成第二CRC校验码,第二循环冗余校验码生成电路将生成的第二CRC校验码传输至比较电路内;
f、比较电路将第二CRC校验码与所述比较电路内的预设CRC冗余校验码进行比较,当第二CRC校验码与预设CRC冗余校验码不匹配时,比较电路驱动接收数据包CRC错误计数器对错误码的个数进行计数;
g、通过对发送数据包计数器内的计数值与接收数据包计数器内的计数值、发送数据包字节计数器内的计数值与接收数据包字节数计数器内的计数值分别进行比较,并根据接收数据包CRC错误计数器的计数值判断并输出测试结果。
所述第二循环冗余校验码生成电路内CRC生成多项式与第一循环冗余校验码生成电路内CRC生成多项式相同。
所述第一循环冗余校验码生成电路及第二循环冗余校验码生成电路内的CRC生成多项式通过控制电路进行设定。
所述步骤g中,当发送数据包计数器内的计数值与接收数据包计数器内的计数值对应一致、发送数据包字节计数器内的计数值与接收数据包字节数计数器内的计数值对应一致,且接收数据包CRC错误计数器内的计数值为零时,判断并输出数据传输一致信息,否则,判断并输出数据传输错误信息。
所述控制电路控制数据包有效载荷生成电路根据有效载荷初始值进行逻辑运算生成所需的发送有效载荷数据,所述数据包有效载荷生成电路对有效载荷初始值进行的逻辑运算包括所有字节相同、每字节累加、每字节累减、每字节取反、左移一个比特、右移一个比特或并行PRBS-31序列。
所述第一循环冗余校验码生成电路根据发送有效载荷数据计算得到初始CRC校验码,第一循环冗余校验码生成电路对初始CRC校验码进行按位逆序并再逆序后全部取反,以得到所需的第一CRC校验码。
所述数据包生成电路对第一CRC校验码及发送有效载荷数据的封装包括添加所需的数据包包头及数据包包尾,将第一CRC校验码附在发送有效载荷数据内,数据包包头插在发送有效载荷数据包之前,数据包包尾添加在第一CRC校验码后以形成测试数据包。
所述数据包检测电路对接收数据包的检测包括对接收数据包内的数据包包头及数据包包尾的检测,数据包检测电路将检测的数据包包头及数据包包尾去除,以得到接收数据包内的接收有效载荷数据。
一种低成本高可靠性的高速网络通信芯片测试电路,包括
数据包有效载荷生成电路,与控制电路及数据包生成电路连接,接收控制电路设置的有效载荷初始值,并根据控制电路的数据类型信息及有效载荷初始值向数据包生成电路内传输发送有效载荷数据;
数据包生成电路,与控制电路、发送数据包计数器、发送数据包字节计数器、第一循环冗余校验码生成电路及数据包有效载荷生成电路连接;接收数据包有效载荷生成电路传输的发送有效载荷数据,并将所述发送有效载荷数据传输至第一循环冗余校验码生成电路内,以使得第一循环冗余校验码生成电路生成第一CRC校验码,控制电路控制数据包生成电路将第一CRC校验码及发送有效载荷数据封装成所需的测试数据包,数据包生成电路将测试数据包内包含的数据包数量以及字节数量分别存储至发送数据包计数器及发送数据包字节计数器内;
数据包检测电路,与控制电路、第二循环冗余校验码生成电路、接收数据包计数器及接收数据包字节计数器连接;根据控制电路的接收数据检测信号对接收数据包进行检测,将检测后接收数据包内的接收有效载荷数据传输至第二循环冗余校验码生成电路内,并将接收数据包内包含的接收有效载荷数据包数量及有效载荷字节数量分别存储至接收数据包计数器及接收数据包字节数计数器内;
第二循环冗余校验码生成电路,与数据包检测电路及比较电路连接,根据控制电路内设置的CRC生成多项式对接收数据包内的有效载荷数据包生成第二CRC校验码,并将所述第二CRC校验码传输至比较电路内;
比较电路,与第二循环冗余校验码生成电路及接收数据包CRC错误计数器连接,将第二循环冗余校验码生成电路传输的第二CRC校验码与比较电路内预设CRC冗余校验码比较,当第二CRC校验码与预设CRC冗余校验码不匹配时,比较电路驱动接收数据包CRC错误计数器对错误码的个数进行计数。
当发送数据包计数器内的计数值与接收数据包计数器内的计数值对应一致、发送数据包字节计数器内的计数值与接收数据包字节数计数器内的计数值对应一致,且接收数据包CRC错误计数器内的计数值为零时,判断并输出数据传输一致信息,否则,判断并输出数据传输错误信息。
所述数据包有效载荷生成电路包括用于接收有效载荷初始值并对所述有效载荷初始值进行逻辑运行的载荷生成寄存器,所述载荷生成寄存器的输出端与第一选择器的输入端连接,第一选择器根据控制电路输出的数据类型信息选择载荷生成寄存器的输出,以得到发送有效载荷数据。
所述载荷生成寄存器对有效载荷初始值进行的逻辑运算包括所有字节相同、每字节累加、每字节累减、每字节取反、左移一个比特、右移一个比特或并行PRBS-31序列。
所述数据包生成电路包括用于接收并统计发送有效载荷数据的有效载荷字节数寄存器及数据包数量寄存器;有效载荷字节数寄存器及数据包数量寄存器对发送有效载荷数据统计后将发送有效载荷数据传输至第一循环冗余校验码生成电路;数据包生成电路内的插入数据包包头运算电路将数据包包头插在发送有效载荷数据之前,数据包生成电路内的插入数据包包尾运算电路将数据包包尾插在第一CRC校验码之后,以将发送有效载荷数据及第一CRC校验码封装得到符合高速网络通讯芯片通信规范的测试数据包。
所述控制电路内包括第一初始值寄存器、第二初始值寄存器、数据产生类型寄存器、随机数量数据包及字节数寄存器、空闲字节数寄存器、固定数量产生寄存器、插入数据包包头寄存器、插入数据包包尾寄存器、第一生成多项式寄存器、检测并去除数据包包头寄存器、检测并去除数据包包尾寄存器及第二生成多项式寄存器;
第一初始值寄存器、第二初始值寄存器及数据产生类型寄存器与数据包有效载荷生成电路连接,通过第一初始值寄存器及第二初始值寄存器设置有效载荷初始值,通过数据产生类型寄存器确定根据有效载荷初始值生成的发送有效载荷数据;
随机数量数据包及字节数寄存器、空闲字节数寄存器、固定数量产生寄存器、插入数据包包头寄存器及插入数据包包尾寄存器与数据包生成电路连接;
第一生成多项式寄存器与第一循环冗余校验码生成电路连接,第二生成多项式寄存器与第二循环冗余校验码生成电路连接,第一生成多项式寄存器及第二生成多项式寄存器内设置相同的CRC生成多项式;
检测并去除数据包包头寄存器及检测并去除数据包包尾寄存器与数据包检测电路连接。
本发明的优点:由数据包有效载荷生成电路生成所需的发送有效载荷数据,数据包生成电路对有效载荷数据及第一CRC校验码封装得到测试数据包,数据包检测电路对接收数据包进行数据包包头及数据包包尾检测,第二循环冗余校验码生成电路根据去除数据包包头及数据包包尾的接收有效载荷数据生成第二CRC校验码,比较电路对第二CRC校验码与预设CRC码比较,通过接收数据包CRC错误计数器对比较的结果进行计数,通过读取发送数据计数器、发送数据包字节数计数器、接收数据包计数器、接收数据包字节数计数器及接收数据包CRC错误计数器内的计数值判断测试结果,操作方便,提高测试效率及精度,可以不依赖于专业仪器和其他任何测试装置而对高速网络通讯芯片进行测试,降低测试成本,提高测试效率,适应范围广,安全可靠。
附图说明
图1为本发明的结构框图。
图2为本发明数据包有效载荷生成电路的结构框图。
图3为本发明数据包生成电路的连接图。
图4为本发明控制电路的结构框图。
图5为本发明测试数据包的格式示意图。
图6为本发明第一循环冗余校验码生成电路及第二循环冗余校验码生成电路的示意图。
图7为本发明的测试电路在高速网络通讯芯片内的布局及位置示意图。
图8为本发明进行测试时的一种实施示意图。
图9为本发明进行测试时的另一种实施示意图。
附图标记说明:100-控制电路、101-数据包生成电路、102-发送数据包计数器、103-发送数据包字节计数器、104-数据包有效载荷生成电路、105-第一循环冗余校验码生成电路、106-数据包检测电路、107-第二循环冗余校验码生成电路、108-接收数据包字节数计数器、109-比较电路、110-接收数据包CRC错误计数器、111-载荷生成寄存器、112-选择器、113-有效载荷字节数寄存器、114-数据包数量寄存器、115-插入数据包包头运算电路、116-插入数据包包尾运算电路、117-第一初始值寄存器、118-第二初始值寄存器、119-数据产生类型寄存器、120-随机数量数据包及字节数寄存器、121-空闲字节数寄存器、122-固定数量产生寄存器、123-插入数据包包头寄存器、124-插入数据包包尾寄存器、125-第一生成多项式寄存器、126-检测并去除数据包包头寄存器、127-检测并去除数据包包尾寄存器、128-第二生成多项式寄存器、129-CRC生成器、130-第一CRC计算电路、131-第二CRC计算电路、132-第三CRC计算电路及132-第四CRC计算电路与134-接收数据包计数器。
具体实施方式
下面结合具体附图和实施例对本发明作进一步说明。
为了能够实现对高速网络通讯芯片进行低成本高可靠性的测试,本发明所述高速网络通讯芯片测试方法包括如下步骤:
a、对发送数据包计数器102、发送数据包字节计数器103、接收数据包计数器134、接收数据包字节数计数器108及接收数据包CRC错误计数器110进行清零,并通过控制电路100设置数据包有效载荷生成电路104所需的有效载荷初始值;
本发明实施例中,控制电路100产生清零信号,以对发送数据包计数器102、发送数据包字节计数器103、接收数据包计数器134、接收数据包字节数计数器108及接收数据包CRC错误计数器110进行清零,对上述计数器进行清零后便于后续的计数。
b、控制电路100控制数据包有效载荷生成电路104根据有效载荷初始值生成所需的发送有效载荷数据,数据包有效载荷生成电路104将生成的发送有效载荷数据传输到数据包生成电路101内;
所述控制电路100控制数据包有效载荷生成电路104根据有效载荷初始值进行逻辑运算生成所需的发送有效载荷数据,所述数据包有效载荷生成电路104对有效载荷初始值进行的逻辑运算包括所有字节相同、每字节累加、每字节累减、每字节取反、左移一个比特、右移一个比特或并行PRBS-31序列。
c、数据包生成电路101将发送有效载荷数据传输到第一循环冗余校验码生成电路105内,以使得第一循环冗余校验码生成电路105根据有效载荷数据生成所需的第一CRC校验码;数据包生成电路101将第一CRC校验码及发送有效载荷数据封装成符合高速网络通讯芯片通信规范的测试数据包,并将测试数据包发送到高速网络通讯芯片内,且数据包生成电路101将测试数据包内包含的数据包数量以及字节数量分别存储至发送数据包计数器102及发送数据包字节计数器103内;
所述第一循环冗余校验码生成电路105根据发送有效载荷数据计算得到初始CRC校验码,第一循环冗余校验码生成电路105对初始CRC校验码进行按位逆序并再逆序后全部取反,以得到所需的第一CRC校验码。本发明实施例中,第一循环冗余校验码生成电路105根据发送有效载荷数据生成初始CRC校验码为本技术领域常规的技术手段,此处不再赘述。将初始CRC校验码进行按位逆序并将逆序后的码值全部取反得到第一CRC校验码,是为了确保下述第二CRC校验码与预设CRC间对比可靠性。
所述数据包生成电路101对第一CRC校验码及发送有效载荷数据的封装包括添加所需的数据包包头及数据包包尾,将第一CRC校验码附在发送有效载荷数据内,数据包包头插在发送有效载荷数据包之前,数据包包尾添加在第一CRC校验码后以形成测试数据包。数据包生成电路101添加的数据包包头及数据包包尾可以通过控制电路100进行设置。
d、数据包检测电路106接收经过高速网络通讯芯片环回的接收数据包,控制电路100控制数据包检测电路106对接收数据包的检测,数据包检测电路106将接收数据包内包含的接收有效载荷数据包数量及接收有效载荷字节数量分别存储至接收数据包计数器134及接收数据包字节数计数器108内;
所述数据包检测电路106对接收数据包的检测包括对接收数据包内的数据包包头及数据包包尾的检测,数据包检测电路106将检测的数据包包头及数据包包尾去除,以得到接收数据包内的接收有效载荷数据。数据包检测电路106检测数据包包头及数据包包尾,以及去除上述数据包包头及数据包包尾的设置可以在控制电路100内设置。
e、控制电路100控制第二循环冗余校验码生成电路107根据数据包检测电路106检测接收数据包内的接收有效载荷数据生成第二CRC校验码,第二循环冗余校验码生成电路107将生成的第二CRC校验码传输至比较电路109内;
所述第二循环冗余校验码生成电路107内CRC生成多项式与第一循环冗余校验码生成电路105内CRC生成多项式相同,所述CRC生成多项式可以根据需要任意设定。所述第一循环冗余校验码生成电路105及第二循环冗余校验码生成电路107内的CRC生成多项式通过控制电路100进行设定。
f、比较电路109将第二CRC校验码与所述比较电路109内的预设CRC冗余校验码进行比较,当第二CRC校验码与预设CRC冗余校验码不匹配时,比较电路109驱动接收数据包CRC错误计数器110对错误码的个数进行计数;
本发明实施例中,比较电路109采用本技术领域常用的电路结构,比较电路109内的预设CRC冗余校验码可以根据对第一循环冗余校验码生成电路105、第二循环冗余校验码生成电路107内的CRC多项式进行确定。第二CRC校验码与预设CRC冗余校验码间的匹配是指第二CRC校验码与预设CRC冗余校验码完全相同。
g、通过对发送数据包计数器102内的计数值与接收数据包计数器134内的计数值、发送数据包字节计数器103内的计数值与接收数据包字节数计数器108内的计数值分别进行比较,并根据接收数据包CRC错误计数器110的计数值判断并输出测试结果。
具体地,测试结束后,当发送数据包计数器102内的计数值与接收数据包计数器134内的计数值对应一致、发送数据包字节计数器103内的计数值与接收数据包字节数计数器108内的计数值对应一致,且接收数据包CRC错误计数器110内的计数值为零时,判断并输出数据传输一致信息,否则,判断并输出数据传输错误信息。
如图1所示:为了能实现上述测试方法,一种低成本高可靠性的高速网络通信芯片测试电路,包括
数据包有效载荷生成电路104,与控制电路100及数据包生成电路101连接,接收控制电路100设置的有效载荷初始值,并根据控制电路100的数据类型信息及有效载荷初始值向数据包生成电路101内传输发送有效载荷数据;
数据包生成电路101,与控制电路100、发送数据包计数器102、发送数据包字节计数器103、第一循环冗余校验码生成电路105及数据包有效载荷生成电路104连接;接收数据包有效载荷生成电路104传输的发送有效载荷数据,并将所述发送有效载荷数据传输至第一循环冗余校验码生成电路105内,以使得第一循环冗余校验码生成电路105生成第一CRC校验码,控制电路100控制数据包生成电路101将第一CRC校验码及发送有效载荷数据封装成所需的测试数据包,数据包生成电路101将测试数据包内包含的数据包数量以及字节数量分别存储至发送数据包计数器102及发送数据包字节计数器103内;
数据包检测电路106,与控制电路100、第二循环冗余校验码生成电路107、接收数据包计数器134及接收数据包字节计数器108连接;根据控制电路100的接收数据检测信号对接收数据包进行检测,将检测后接收数据包内的接收有效载荷数据传输至第二循环冗余校验码生成电路107内,并将接收数据包内包含的接收有效载荷数据包数量及有效载荷字节数量分别存储至接收数据包计数器134及接收数据包字节数计数器108内;
第二循环冗余校验码生成电路107,与数据包检测电路106及比较电路109连接,根据控制电路100内设置的CRC生成多项式对接收数据包内的有效载荷数据包生成第二CRC校验码,并将所述第二CRC校验码传输至比较电路109内;
比较电路109,与第二循环冗余校验码生成电路107及接收数据包CRC错误计数器110连接,将第二循环冗余校验码生成电路107传输的第二CRC校验码与比较电路109内预设CRC冗余校验码比较,当第二CRC校验码与预设CRC冗余校验码不匹配时,比较电路109驱动接收数据包CRC错误计数器110对错误码的个数进行计数。
具体地,为了获得测试的结构,需要对发送数据包计数器102内的计算值与接收数据包计数器134内的计数值是否一致进行判断,并对发送数据包字节计数器103内的计数值与接收数据包字节数计数器108内的计数值是否一致进行判断,同时,还要判断接收数据包CRC错误计数器110内的计数值是否为零进行判断。当发送数据包计数器102内的计数值与接收数据包计数器134内的计数值对应一致、发送数据包字节计数器103内的计数值与接收数据包字节数计数器108内的计数值对应一致,且接收数据包CRC错误计数器110内的计数值为零时,判断并输出数据传输一致信息,否则,判断并输出数据传输错误信息。即当接收数据包CRC错误计数器110内的计数值不为零,或发送数据包计数器102内的计数值与接收数据包计数器134内的计数值不一致,或发送数据包字节计数器103内的计数值与接收数据包字节数计数器108内的计数值不一致时,就可以判断高速网络通讯芯片对测试数据包的传输存在错误的结论。
如图2所示,所述数据包有效载荷生成电路104包括用于接收有效载荷初始值并对所述有效载荷初始值进行逻辑运行的载荷生成寄存器111,所述载荷生成寄存器111的输出端与第一选择器112的输入端连接,第一选择器112根据控制电路100输出的数据类型信息选择载荷生成寄存器111的输出,以得到发送有效载荷数据。
所述载荷生成寄存器111对有效载荷初始值进行的逻辑运算包括所有字节相同、每字节累加、每字节累减、每字节取反、左移一个比特、右移一个比特或并行PRBS(Pseudo-RandomBinarySequence)-31序列。载荷生成寄存器111对有效载荷的初始值进行上述逻辑运算为本技术领域常规的技术手段,当控制电路100向载荷生成寄存器111产生使能信号时,载荷生成寄存器111进行上述逻辑运算,通过输入选择器112选择控制端的数据类型信息能够选择经过上述逻辑运算的运算结果,所述运算结果即为发送有效载荷数据。
如图3所示,所述数据包生成电路101包括用于接收并统计发送有效载荷数据的有效载荷字节数寄存器113及数据包数量寄存器114;有效载荷字节数寄存器113及数据包数量寄存器114对发送有效载荷数据统计后将发送有效载荷数据传输至第一循环冗余校验码生成电路105;数据包生成电路101内的插入数据包包头运算电路115将数据包包头插在发送有效载荷数据之前,数据包生成电路101内的插入数据包包尾运算电路116将数据包包尾插在第一CRC校验码之后,以将发送有效载荷数据及第一CRC校验码封装得到符合高速网络通讯芯片通信规范的测试数据包。
如图4所述,所述控制电路100内包括第一初始值寄存器117、第二初始值寄存器118、数据产生类型寄存器119、随机数量数据包及字节数寄存器120、空闲字节数寄存器121、固定数量产生寄存器122、插入数据包包头寄存器123、插入数据包包尾寄存器124、第一生成多项式寄存器125、检测并去除数据包包头寄存器126、检测并去除数据包包尾寄存器127及第二生成多项式寄存器128;
第一初始值寄存器117、第二初始值寄存器118及数据产生类型寄存器119与数据包有效载荷生成电路104连接,通过第一初始值寄存器117及第二初始值寄存器118设置有效载荷初始值,通过数据产生类型寄存器119确定根据有效载荷初始值生成的发送有效载荷数据;在上述第一初始值寄存器117及第二初始值寄存器118内设置任意初始值,以满足测试过程中对连续多个“0”或连续多个“1”的极端测试要求。进一步地,控制电路100内还可以设置有数据包有效载荷长度寄存器及数据包有效载荷随机长度寄存器,通过数据包有效载荷长度寄存器可以设置产生固定长度的发送有效载荷数据字节数,通过数据包有效载荷随机长度寄存器可以设置产生随机长度的发送有效载荷数据字节数。
随机数量数据包及字节数寄存器120、空闲字节数寄存器121、固定数量产生寄存器122、插入数据包包头寄存器123及插入数据包包尾寄存器124与数据包生成电路105连接;本发明实施例中,通过随机数量数据包及字节数寄存器120能使得数据包生成电路101产生随机数量的测试数据包,通过固定数量产生寄存器122能使得数据包生成电路101产生固定数量的测试数据包,通过空闲字节数寄存器121可以设置每个测试数据包之间的空闲字节数。通过插入数据包包头寄存器123可以设置插入数据包包头的具体内容,通过插入数据包包尾寄存器124可以设置插入数据包包尾的具体内容。发送有效载荷数据及第一CRC校验码添加数据包包头及数据包包尾后封装成测试数据包,如图5所示,为对10Gbps以太网物理层芯片进行测试为例,测试数据包必须符合10Gbps独立于媒体的接口XGMII(10Gigabit Media Independent Interface)的格式要求。
第一生成多项式寄存器125与第一循环冗余校验码生成电路105连接,第二生成多项式寄存器128与第二循环冗余校验码生成电路107连接,第一生成多项式寄存器125及第二生成多项式寄存器128内设置相同的CRC生成多项式;
检测并去除数据包包头寄存器126及检测并去除数据包包尾寄存器127与数据包检测电路106连接。通过检测并去除数据包包头寄存器126设置数据包检测电路106检测接收数据包内数据包包头的标志位,并在检测后去除所述数据包包头,通过检测并去除数据包包尾寄存器127设置数据包检测电路106检测接收数据包包尾的标志位,并在检测后去除所述数据包包尾。
本发明实施例中,第一循环冗余校验码生成电路105生成的CRC多项式与第二循环冗余校验码生成第二循环冗余校验码生成电路107生成的第二CRC校验码与比较电路109内的预设CRC冗余校验码比较以作为测试比较的依据,具体地,循环冗余检验将要发送的数据比特序列当作一个信息多项式u(x)的系数,发送时去除以约定的生成多项式g(x),得到一个余数多项式v(x),余数多项式经过处理加到信息多项式之后发送到接收端,接收端同样用g(x)去除接收到的接收多项式,然后把计算结果与由生成多项式g(x)决定的固定序列比较,来检测传输是否出现错误。设定g(x)是r阶生成多项式。
发送端无差错传输为:(u(x)xr+v(x))modg(x)=0。接收端接收的余数多项式是经过v(x)对1取反处理,则接收端接收到完整的多项式为:;用多项式取模得到,,则接收端无差错传输的检验和为((xr-1+xr-2+Λ+1)xr)modg(x)。对于给定的生成多项式g(x),上式是一个常数,以CRC-32为例,余数多项式为:
x31+x30+x26+x25+x24+x18+x15+x14+x12+x11+x10+x8+x6+x5+x4+x3+x+1,该多项式用十六进制表示为0xC704DD7B。
本发明实施例中,以插入8字节的数据包包头和1字节的数据包包尾为例,设定数据包检测电路106中要检测的数据包包头和数据包包尾的具体内容,要检测的数据包包头和数据包包尾同样设为8字节和1字节。
设定第一循环冗余校验码电路105和第二循环冗余校验码电路106的CRC-32生成多项式。本发明实施例中,CRC-32的生成多项式为g(x)=x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1,十六进制的值为0x04C11DB7。
控制电路100产生数据包有效载荷生成电路104的使能信号,控制数据包有效载荷生成电路104何时开始产生有效载荷数据。控制电路100产生数据包检测电路106的使能信号,控制数据包检测电路106何时开始检测接收数据包内数据包包头。数据包有效载荷生成电路104根据第一初始值寄存器117及第二初始值寄存器118确定32-bit的初始值,根据数据产生类型寄存器119的值确定产生有效载荷数据的类型。
数据包有效载荷生成电路104产生的发送有效载荷数据分为四个通道输出,至数据包生成电路101。第一循环冗余校验码生成电路105产生四字节的第一CRC校验码。
向第一循环冗余校验码生成电路105内输入的发送有效载荷数据的数量可能不是4的整数倍,存在4n(n为时钟周期),4n+1,4n+2,4n+3这4种情况,分布到4个通道以后,每个通道的数据数量可能不同,在计算其的CRC校验码时也要分为4种情况如图6所示;其中,第一CRC计算电路130、第二CRC计算电路131、第三CRC计算电路132及第四CRC计算电路133分别与CRC生成器129的输入端,CRC生成器129可以采用多路选择器,上述CRC计算电路可以采用现有的电路结构,即第一循环冗余校验码生成电路105及第二循环冗余校验码生成电路107生成CRC校验码采用本技术领域常规的技术手段,具体过程及原理此处不再赘述。
发送有效载荷数据的数量为4n时,每个通道上的数据数量相等。第一循环冗余校验码生成电路105根据输入的4字节有效载荷数据和上个时钟周期计算得到的4字节的CRC冗余校验码重新计算出一个新的4字节CRC冗余校验码,等到下一个周期和新输入的4字节有效载荷数据再经过第一循环冗余校验码生成电路105计算,如此循环,当所有的发送有效载荷数据都经过计算以后,得到最终的4字节的CRC校验码。
发送有效载荷数据的数量为4n+1时,每个通道上的数据数量不相等,通道0会多一个字节的数据,前面4n的有效载荷数据的CRC冗余校验码的计算参考上述过程,得到的4字节的CRC冗余校验码。此时,第一循环冗余校验码生成电路105的数据输入变成最后的1个字节和4n数据计算得到的CRC冗余校验码,重新计算后得到最终的4字节的CRC校验码。
发送有效载荷数据的数量为4n+2时,每个通道上的数据数量不相等,通道0和通道1上分别多一个字节的数据,前面4n的有效载荷数据的CRC冗余校验码的计算参考上述情况,得到的4字节的CRC冗余校验码。此时,第一循环冗余校验码生成电路105的数据输入变成最后的2个字节和4n数据计算得到的CRC冗余校验码,重新计算后得到最终的4字节的CRC校验码。
发送有效载荷数据的数量为4n+3时,每个通道上的数据数量不相等,通道0、通道1和通道2上分别多一个字节的数据,前面4n的有效载荷数据的CRC冗余校验码的计算参考上述整4n字节的情况,得到的4字节的CRC冗余校验码。此时,第一循环冗余校验码生成电路105的数据输入变成最后的3个字节和4n数据计算得到的CRC冗余校验码,重新计算后得到最终的4字节的CRC校验码。
第一循环冗余校验码生成电路105产生的4字节长度的冗余校验码经过反转和取反后得到第一CRC校验码,将第一CRC校验码加载到发送有效载荷数据之后,作为数据包的一部分参与数据包的传输。
4字节的第一CRC校验码加载到发送有效载荷数据后面,因此,根据发送有效载荷数据的数量也分为4种情况:4n,4n+1,4n+2,4n+3。
发送有效载荷数据的数量为4n时,4字节的第一CRC校验码从通道0到通道3依次加载一个字节。
发送有效载荷数据的数量为4n+1时,4字节的第一CRC校验码按照通道1、通道2、通道3和通道0的顺序依次加载一个字节。
发送有效载荷数据的数量为4n+2时,4字节的第一CRC校验码按照通道2、通道3、通道0和通道1的顺序依次加载一个字节。
发送有效载荷数据的数量为4n+3时,4字节的第一CRC校验码按照通道3、通道0、通道1和通道2的顺序依次加载一个字节。
数据包生成电路101在添加数据包包尾时,存在4种情况:
发送有效载荷数据的数量为4n时,1字节的数据包包尾加载到通道0。
发送有效载荷数据的数量为4n+1时,1字节的数据包包尾加载到通道1。
发送有效载荷数据的数量为4n+2时,1字节的数据包包尾加载到通道2。
发送有效载荷数据的数量为4n+3时,1字节的数据包包尾加载到通道3。
数据包生成电路101的最终输出通过32-bit的数据发送通道TXD[31:0]和4-bit的发送通道控制信号TXC[3:0]。TXC=0时,表示TXD上传输的是数据;TXC=1时,表示TXD上传输的是控制字符。TXC[3:0]分别对应通道3数据的TXD[31:24]、通道2的数据TXD[23:16]、通道1的数据TXD[15:8]和通道0的数据TXD[7:0]。
当TXD上传输的是发送有效载荷数据和第一CRC校验码时,对应的TXC为零;当TXD上传输的是加载的数据包包头时,通道0对应的TXC[0]为1;当TXD上传输的是加载的数据包包尾时,根据数据包包尾加载的位置,对应通道的TXC置1。数据包生成电路101生成的测试数据包直接输出到线路以进入高速网络通讯芯片内,输出后由外部的电路环回到输入信道,检测接收到的数据包是否正确。
数据包生成电路101中插入的数据包包头的值,依次分布在通道0到通道3中,在接收端,数据包检测电路106对接收的接收数据包进行数据包包头的检测:在通道0到通道3中依次找到包头的值,并且与通道0相对应的控制信号TXC[0]的值为1,此时产生数据包开始标志位,说明数据包第一个数据开始接收。
数据包检测电路106去除数据包包尾,由于发送端装载的有效载荷数据数量的不同,存在4种情况。
接收数据包的接收有效载荷数据的数量为4n时,在通道0中检测1字节数据包包尾的值,并且与通道0对应的TXC[0]的值为1,产生在通道0数据包结束标志位。
接收有效载荷数据的数量为4n+1时,在通道1中检测1字节数据包包尾的值,并且与通道1对应的TXC[1]的值为1,产生在通道1数据包结束标志位。
接收有效载荷数据的数量为4n+2时,在通道2中检测1字节数据包包尾的值,并且与通道2对应的TXC[2]的值为1,产生在通道2数据包结束标志位。
接收有效载荷数据的数量为4n+3时,在通道3中检测1字节数据包包尾的值,并且与通道3对应的TXC[3]的值为1,产生在通道3数据包结束标志位。
数据包检测电路106检测到数据包包头和数据包包尾时,产生一个脉冲信号,此时接收数据包计数器134内的计数值累加1。数据包检测电路106检测到数据包包头和数据包包尾的具体位置时,确定接收数据包字节数计数器108的值。
接收数据包经过数据包检测电路106去除数据包包头和数据包包尾后的接收有效载荷数据作为第二循环冗余校验码生成电路107的数据包输入。第二循环冗余校验码生成电路107输入的接收有效载荷数据和第一循环冗余校验码生成电路105产生4字节的第一CRC校验码的数量可能不是4的整数倍,存在4n,4n+1,4n+2,4n+3这4种情况,分布到4个通道以后,每个通道的数据数量可能不同,在计算其的CRC冗余校验码时也要分为4种情况。
第二循环冗余校验码生成电路107输入接收有效载荷数据的数量为4n时,每个通道上的数据包数量相等。第二循环冗余校验码生成电路107根据输入的4字节数据包和上个时钟周期计算得到的4字节的CRC冗余校验码重新计算出一个新的4字节CRC冗余校验码,等到下一个周期和新输入的4字节有效载荷数据再经过第二循环冗余校验码生成电路107计算,如此循环,当所有数据包都经过计算以后,得到最终的4字节的第二CRC校验码。
第二循环冗余校验码生成电路107输入接收有效载荷数据的数量为4n+1时,每个通道上的数据数量不相等,通道0会多一个字节的数据,前面4n的接收有效载荷数据的CRC冗余校验码的计算参考上述情况,得到的4字节的CRC冗余校验码。此时,第二循环冗余校验码生成电路107的数据输入变成最后的1个字节和4n数据计算得到的CRC冗余校验码,重新计算后得到最终的4字节的第二CRC校验码。
第二循环冗余校验码生成电路107输入接收有效载荷数据的数量为4n+2时,每个通道上的数据数量不相等,通道0和通道1会分别多一个字节的数据,前面4n的有效载荷数据的CRC冗余校验码的计算参考上述情况,得到的4字节的CRC冗余校验码。此时,第二循环冗余校验码生成电路107的数据输入变成最后的2个字节和4n数据计算得到的CRC冗余校验码,重新计算后得到最终的4字节的第二CRC校验码。
第二循环冗余校验码生成电路107输入接收有效载荷数据的数量为4n+3时,每个通道上的数据数量不相等,通道0、通道1和通道2会分别多一个字节的数据,前面4n的有效载荷数据的CRC冗余校验码的计算参考上述情况,得到的4字节的CRC冗余校验码。此时,第二循环冗余校验码生成电路107的数据输入变成最后的3个字节和4n数据计算得到的CRC冗余校验码,重新计算后得到最终的4字节的第二CRC校验码。
第二循环冗余校验码生成电路107每一个数据包计算的最终4字节长度的第二CRC校验码和十六进制的固定值0xC704DD7B比较,如果相等,说明数据包在传送过程中没有丢失或损坏,否则比较电路109使得接收数据包CRC错误计数器110内的计数值累加一。
本发明检测电路在以太网物理层芯片内部的布局及位置如图7所示,测试电路发送数据包经过数据发送端后,可以回环到数据接收端,然后进去到测试电路检测。在以太网物理层芯片外部,按如下方式连接测试电路和线路:
如图8所示,测试电路产生的数据包通过功能逻辑输出后由外部电路环回到输入信道,测试电路数据包接收和检测装置再对环回的输入数据进行是否丢失或损坏的判断,进行CRC冗余校验码的生成和比较。
如图9所示,测试电路产生的数据包输出到远端接收设备,由远端设备的测试电路再对输入的数据包进行是否丢失或损坏的判断,进行CRC冗余校验码的生成和比较。
本发明由数据包有效载荷生成电路104生成所需的发送有效载荷数据,数据包生成电路101对有效载荷数据及第一CRC校验码封装得到测试数据包,数据包检测电路106对接收数据包进行数据包包头及数据包包尾检测,第二循环冗余校验码生成电路107根据去除数据包包头及数据包包尾的接收有效载荷数据生成第二CRC校验码,比较电路109对第二CRC校验码与预设CRC码比较,通过接收数据包CRC错误计数器110对比较的结果进行计数,通过读取发送数据计数器102、发送数据包字节数计数器103、接收数据包计数器134、接收数据包字节数计数器108及接收数据包CRC错误计数器110内的计数值判断测试结果,操作方便,提高测试效率及精度,可以不依赖于专业仪器和其他任何测试装置而对高速网络通讯芯片进行测试,降低测试成本,提高测试效率,适应范围广,安全可靠。
必要时,本文所述的不同功能可以按照不同顺序执行。此外,必要时,上述功能中的一个或者多个功能可以是可选的,或者可以进行组合
虽然在权利要求书中阐明了本发明的各个方面,但本发明的其它方面包括来自所述实施方式或具有独立权利要求特征的从属权利要求的其它组合,而不仅仅包括权利要求中明确阐明的组合。
还应注意的是,尽管上面描述了本发明的示例性实施方式,但在本发明技术方案范围内进行的变化,修改和替换,以及在不同于本发明所述的应用环境中使用,都应包含于本发明的保护范围内。
Claims (13)
1. 一种低成本高可靠性的高速网络通讯芯片测试方法,其特征是,所述高速网络通讯芯片测试方法包括如下步骤:
(a)、对发送数据包计数器(102)、发送数据包字节计数器(103)、接收数据包计数器(134)、接收数据包字节数计数器(108)及接收数据包CRC错误计数器(110)进行清零,并通过控制电路(100)设置数据包有效载荷生成电路(104)所需的有效载荷初始值;
(b)、控制电路(100)控制数据包有效载荷生成电路(104)根据有效载荷初始值生成所需的发送有效载荷数据,数据包有效载荷生成电路(104)将生成的发送有效载荷数据传输到数据包生成电路(101)内;
(c)、数据包生成电路(101)将发送有效载荷数据传输到第一循环冗余校验码生成电路(105)内,以使得第一循环冗余校验码生成电路(105)根据有效载荷数据生成所需的第一CRC校验码;数据包生成电路(101)将第一CRC校验码及发送有效载荷数据封装成符合高速网络通讯芯片通信规范的测试数据包,并将测试数据包发送到高速网络通讯芯片内,且数据包生成电路(101)将测试数据包内包含的数据包数量以及字节数量分别存储至发送数据包计数器(102)及发送数据包字节计数器(103)内;
(d)、数据包检测电路(106)接收经过高速网络通讯芯片环回的接收数据包,控制电路(100)控制数据包检测电路(106)对接收数据包的检测,数据包检测电路(106)将接收数据包内包含的接收有效载荷数据包数量及接收有效载荷字节数量分别存储至接收数据包计数器(134)及接收数据包字节数计数器(108)内;
(e)、控制电路(100)控制第二循环冗余校验码生成电路(107)根据数据包检测电路(106)检测接收数据包内的接收有效载荷数据生成第二CRC校验码,第二循环冗余校验码生成电路(107)将生成的第二CRC校验码传输至比较电路(109)内;
(f)、比较电路(109)将第二CRC校验码与所述比较电路(109)内的预设CRC冗余校验码进行比较,当第二CRC校验码与预设CRC冗余校验码不匹配时,比较电路(109)驱动接收数据包CRC错误计数器(110)对错误码的个数进行计数;
(g)、通过对发送数据包计数器(102)内的计数值与接收数据包计数器(134)内的计数值、发送数据包字节计数器(103)内的计数值与接收数据包字节数计数器(108)内的计数值分别进行比较,并根据接收数据包CRC错误计数器(110)的计数值判断并输出测试结果;
所述步骤(g)中,当发送数据包计数器(102)内的计数值与接收数据包计数器(134)内的计数值对应一致、发送数据包字节计数器(103)内的计数值与接收数据包字节数计数器(108)内的计数值对应一致,且接收数据包CRC错误计数器(110)内的计数值为零时,判断并输出数据传输一致信息,否则,判断并输出数据传输错误信息。
2.根据权利要求1所述的低成本高可靠性的高速网络通讯芯片测试方法,其特征是:所述第二循环冗余校验码生成电路(107)内CRC生成多项式与第一循环冗余校验码生成电路(105)内CRC生成多项式相同。
3.根据权利要求2所述的低成本高可靠性的高速网络通讯芯片测试方法,其特征是:所述第一循环冗余校验码生成电路(105)及第二循环冗余校验码生成电路(107)内的CRC生成多项式通过控制电路(100)进行设定。
4.根据权利要求1所述的低成本高可靠性的高速网络通讯芯片测试方法,其特征是:所述控制电路(100)控制数据包有效载荷生成电路(104)根据有效载荷初始值进行逻辑运算生成所需的发送有效载荷数据,所述数据包有效载荷生成电路(104)对有效载荷初始值进行的逻辑运算包括所有字节相同、每字节累加、每字节累减、每字节取反、左移一个比特、右移一个比特或并行PRBS-31序列。
5.根据权利要求1所述的低成本高可靠性的高速网络通讯芯片测试方法,其特征是:所述第一循环冗余校验码生成电路(105)根据发送有效载荷数据计算得到初始CRC校验码,第一循环冗余校验码生成电路(105)对初始CRC校验码进行按位逆序并再逆序后全部取反,以得到所需的第一CRC校验码。
6.根据权利要求1所述的低成本高可靠性的高速网络通讯芯片测试方法,其特征是:所述数据包生成电路(101)对第一CRC校验码及发送有效载荷数据的封装包括添加所需的数据包包头及数据包包尾,将第一CRC校验码附在发送有效载荷数据内,数据包包头插在发送有效载荷数据包之前,数据包包尾添加在第一CRC校验码后以形成测试数据包。
7.根据权利要求1所述的低成本高可靠性的高速网络通讯芯片测试方法,其特征是:所述数据包检测电路(106)对接收数据包的检测包括对接收数据包内的数据包包头及数据包包尾的检测,数据包检测电路(106)将检测的数据包包头及数据包包尾去除,以得到接收数据包内的接收有效载荷数据。
8.一种低成本高可靠性的高速网络通信芯片测试电路,其特征是,包括
数据包有效载荷生成电路(104),与控制电路(100)及数据包生成电路(101)连接,接收控制电路(100)设置的有效载荷初始值,并根据控制电路(100)的数据类型信息及有效载荷初始值向数据包生成电路(101)内传输发送有效载荷数据;
数据包生成电路(101),与控制电路(100)、发送数据包计数器(102)、发送数据包字节计数器(103)、第一循环冗余校验码生成电路(105)及数据包有效载荷生成电路(104)连接;接收数据包有效载荷生成电路(104)传输的发送有效载荷数据,并将所述发送有效载荷数据传输至第一循环冗余校验码生成电路(105)内,以使得第一循环冗余校验码生成电路(105)生成第一CRC校验码,控制电路(100)控制数据包生成电路(101)将第一CRC校验码及发送有效载荷数据封装成所需的测试数据包,数据包生成电路(101)将测试数据包内包含的数据包数量以及字节数量分别存储至发送数据包计数器(102)及发送数据包字节计数器(103)内;
数据包检测电路(106),与控制电路(100)、第二循环冗余校验码生成电路(107)、接收数据包计数器(134)及接收数据包字节计数器(108)连接;根据控制电路(100)的接收数据检测信号对接收数据包进行检测,将检测后接收数据包内的接收有效载荷数据传输至第二循环冗余校验码生成电路(107)内,并将接收数据包内包含的接收有效载荷数据包数量及有效载荷字节数量分别存储至接收数据包计数器(134)及接收数据包字节数计数器(108)内;
第二循环冗余校验码生成电路(107),与数据包检测电路(106)及比较电路(109)连接,根据控制电路(100)内设置的CRC生成多项式对接收数据包内的有效载荷数据包生成第二CRC校验码,并将所述第二CRC校验码传输至比较电路(109)内;
比较电路(109),与第二循环冗余校验码生成电路(107)及接收数据包CRC错误计数器(110)连接,将第二循环冗余校验码生成电路(107)传输的第二CRC校验码与比较电路(109)内预设CRC冗余校验码比较,当第二CRC校验码与预设CRC冗余校验码不匹配时,比较电路(109)驱动接收数据包CRC错误计数器(110)对错误码的个数进行计数。
9.根据权利要求8所述低成本高可靠性的高速网络通信芯片测试电路,其特征是:当发送数据包计数器(102)内的计数值与接收数据包计数器(134)内的计数值对应一致、发送数据包字节计数器(103)内的计数值与接收数据包字节数计数器(108)内的计数值对应一致,且接收数据包CRC错误计数器(110)内的计数值为零时,判断并输出数据传输一致信息,否则,判断并输出数据传输错误信息。
10.根据权利要求8所述低成本高可靠性的高速网络通信芯片测试电路,其特征是:所述数据包有效载荷生成电路(104)包括用于接收有效载荷初始值并对所述有效载荷初始值进行逻辑运行的载荷生成寄存器(111),所述载荷生成寄存器(111)的输出端与第一选择器(112)的输入端连接,第一选择器(112)根据控制电路(100)输出的数据类型信息选择载荷生成寄存器(111)的输出,以得到发送有效载荷数据。
11.根据权利要求10所述低成本高可靠性的高速网络通信芯片测试电路,其特征是:所述载荷生成寄存器(111)对有效载荷初始值进行的逻辑运算包括所有字节相同、每字节累加、每字节累减、每字节取反、左移一个比特、右移一个比特或并行PRBS-31序列。
12.根据权利要求8所述低成本高可靠性的高速网络通信芯片测试电路,其特征是:所述数据包生成电路(101)包括用于接收并统计发送有效载荷数据的有效载荷字节数寄存器(113)及数据包数量寄存器(114);有效载荷字节数寄存器(113)及数据包数量寄存器(114)对发送有效载荷数据统计后将发送有效载荷数据传输至第一循环冗余校验码生成电路(105);数据包生成电路(101)内的插入数据包包头运算电路(115)将数据包包头插在发送有效载荷数据之前,数据包生成电路(101)内的插入数据包包尾运算电路(116)将数据包包尾插在第一CRC校验码之后,以将发送有效载荷数据及第一CRC校验码封装得到符合高速网络通讯芯片通信规范的测试数据包。
13.根据权利要求8所述低成本高可靠性的高速网络通信芯片测试电路,其特征是:所述控制电路(100)内包括第一初始值寄存器(117)、第二初始值寄存器(118)、数据产生类型寄存器(119)、随机数量数据包及字节数寄存器(120)、空闲字节数寄存器(121)、固定数量产生寄存器(122)、插入数据包包头寄存器(123)、插入数据包包尾寄存器(124)、第一生成多项式寄存器(125)、检测并去除数据包包头寄存器(126)、检测并去除数据包包尾寄存器(127)及第二生成多项式寄存器(128);
第一初始值寄存器(117)、第二初始值寄存器(118)及数据产生类型寄存器(119)与数据包有效载荷生成电路(104)连接,通过第一初始值寄存器(117)及第二初始值寄存器(118)设置有效载荷初始值,通过数据产生类型寄存器(119)确定根据有效载荷初始值生成的发送有效载荷数据;
随机数量数据包及字节数寄存器(120)、空闲字节数寄存器(121)、固定数量产生寄存器(122)、插入数据包包头寄存器(123)及插入数据包包尾寄存器(124)与数据包生成电路(105)连接;
第一生成多项式寄存器(125)与第一循环冗余校验码生成电路(105)连接,第二生成多项式寄存器(128)与第二循环冗余校验码生成电路(107)连接,第一生成多项式寄存器(125)及第二生成多项式寄存器(128)内设置相同的CRC生成多项式;
检测并去除数据包包头寄存器(126)及检测并去除数据包包尾寄存器(127)与数据包检测电路(106)连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410038737.2A CN103780322B (zh) | 2014-01-26 | 2014-01-26 | 低成本高可靠性的高速网络通讯芯片测试方法与电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410038737.2A CN103780322B (zh) | 2014-01-26 | 2014-01-26 | 低成本高可靠性的高速网络通讯芯片测试方法与电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103780322A CN103780322A (zh) | 2014-05-07 |
CN103780322B true CN103780322B (zh) | 2015-09-09 |
Family
ID=50572214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410038737.2A Active CN103780322B (zh) | 2014-01-26 | 2014-01-26 | 低成本高可靠性的高速网络通讯芯片测试方法与电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103780322B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104363147A (zh) * | 2014-12-05 | 2015-02-18 | 成都思邦力克科技有限公司 | 滤波网络测试装置 |
CN104394542A (zh) * | 2014-12-05 | 2015-03-04 | 成都思邦力克科技有限公司 | 无线网络测试装置 |
CN104394035A (zh) * | 2014-12-05 | 2015-03-04 | 成都思邦力克科技有限公司 | 网络测试装置 |
CN104393942A (zh) * | 2014-12-05 | 2015-03-04 | 成都思邦力克科技有限公司 | 有效检波网络测试装置 |
DE102019106410A1 (de) * | 2019-03-13 | 2020-09-17 | Liebherr-Aerospace Lindenberg Gmbh | Vorrichtung und Verfahren zur Datenübertragung |
CN110519116B (zh) * | 2019-07-12 | 2021-01-22 | 中国人民解放军战略支援部队信息工程大学 | 循环冗余校验码存储比较模块及交换设备性能测试系统 |
CN112698782A (zh) * | 2019-10-22 | 2021-04-23 | 中电智能科技有限公司 | 基于存储器数据加载的实现装置及方法 |
CN111337820A (zh) * | 2020-04-24 | 2020-06-26 | 江西联智集成电路有限公司 | 数字芯片扫描链测试方法、装置、设备及介质 |
CN113824626B (zh) * | 2021-09-24 | 2023-12-22 | 广东科瑞德电气科技有限公司 | 一种防止信息交互丢失的通讯管理方法 |
CN115242681A (zh) * | 2022-09-20 | 2022-10-25 | 苏州浪潮智能科技有限公司 | 一种芯片内通信模块的测试系统、方法、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557598A (zh) * | 2008-04-07 | 2009-10-14 | 中兴通讯股份有限公司 | 一种基站侧无线基带芯片测试装置及方法 |
CN103077343A (zh) * | 2012-12-26 | 2013-05-01 | 北京华大信安科技有限公司 | 安全芯片的测试方法及装置 |
-
2014
- 2014-01-26 CN CN201410038737.2A patent/CN103780322B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557598A (zh) * | 2008-04-07 | 2009-10-14 | 中兴通讯股份有限公司 | 一种基站侧无线基带芯片测试装置及方法 |
CN103077343A (zh) * | 2012-12-26 | 2013-05-01 | 北京华大信安科技有限公司 | 安全芯片的测试方法及装置 |
Non-Patent Citations (1)
Title |
---|
一个超大规模集成电路芯片功能测试的系统方案_刘星洋;刘星洋;《电脑知识与技术》;20131231;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103780322A (zh) | 2014-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103780322B (zh) | 低成本高可靠性的高速网络通讯芯片测试方法与电路 | |
CN203761409U (zh) | 低成本高可靠性的高速网络通讯芯片测试电路 | |
US4809273A (en) | Device for verifying operation of a checking code generator | |
US5321704A (en) | Error detection structure and method using partial polynomial check | |
US10567123B2 (en) | Methods, systems and computer readable media for evaluating link or component quality using synthetic forward error correction (FEC) | |
CN103701566A (zh) | 一种校验方法和装置 | |
US8443256B2 (en) | Method and apparatus for determining a cyclic redundancy check (CRC) for a data message | |
CN111177060B (zh) | 串口数据发送方法、接收方法、相应装置及终端设备 | |
US9685979B2 (en) | Circuitry and method for generating cyclic redundancy check signatures | |
CN105827476A (zh) | 高速PING实现方法和Ping测试方法 | |
CN108011692A (zh) | 一种用于单片机的数据通信方法 | |
US9471416B2 (en) | Partitioned error code computation | |
CN108337069B (zh) | 一种改进的降低误码率的末端并行分组crc校验系统 | |
CN107294814A (zh) | 一种片上网络的测试方法及装置 | |
CN107733568B (zh) | 基于fpga实现crc并行计算的方法及装置 | |
WO2002039593A2 (en) | Apparatus and method for applying multiple crc generators to crc calculation | |
US20060067365A1 (en) | Initialization seed to allow data padding for cyclic redundancy code calculation | |
CN108233944A (zh) | 一种循环冗余校验方法、设备及存储介质 | |
CN107682126B (zh) | 一种以太网网络传输性能测试装置 | |
CN114978960A (zh) | 以太网帧头触发器 | |
CN114301991B (zh) | 通信方法、设备、系统及计算机可读存储介质 | |
JP3554715B2 (ja) | 誤り検出装置 | |
El-Medany | FPGA implementation of CRC with error correction | |
CN104753640B (zh) | 一种基于网络传输链路的适配方法及装置 | |
JP5761944B2 (ja) | エラーチェック回路及びエラーチェック方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |