CN105471551A - 一种基于数字电路的sof、crc及eof错误注入方法 - Google Patents
一种基于数字电路的sof、crc及eof错误注入方法 Download PDFInfo
- Publication number
- CN105471551A CN105471551A CN201510889897.2A CN201510889897A CN105471551A CN 105471551 A CN105471551 A CN 105471551A CN 201510889897 A CN201510889897 A CN 201510889897A CN 105471551 A CN105471551 A CN 105471551A
- Authority
- CN
- China
- Prior art keywords
- sof
- crc
- eof
- mux
- index signal
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0015—Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
-
- 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)
- Quality & Reliability (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本发明属于计算机通信领域,提出了一种基于数字电路的SOF、CRC及EOF错误注入方法,包括配置寄存器和错误注入模块,其中,配置寄存器组用来储存需要注入的SOF、CRC及EOF的值,由主机进行配置;错误注入模块检查发送数据,并使用配置寄存器中的值替换发送数据中的相应字段。本发明通过在正常的发送通道中***处理电路,实现对SOF、CRC及EOF的错误注入,进而达到实现简单,使用灵活,降低成本的目的。
Description
技术领域
本发明涉及一种SOF、CRC及EOF错误注入方法,特别涉及一种基于数字电路的SOF、CRC及EOF错误注入方法。
背景技术
在计算机通信领域,节点间的通信数据按照某一固定的数据帧格式组织,目前主流通信协议定义的数据帧格式均以SOF开始,以CRC和EOF结束,而且大部分经过验证的MAC电路只能发送正确的SOF、CRC及EOF,若要注入相应的错误数据来验证网络的功能是否正确,则必须购买专用的测试设备,这样一来不仅耗时耗力而且增加成本。
发明内容
本发明的目的是提供一种基于数字电路的SOF、CRC及EOF错误注入方法,通过在正常的发送通道中***处理电路,实现对SOF、CRC及EOF的错误注入,进而达到实现简单,使用灵活,降低成本的目的。
为达到以上目的,本发明是采取如下技术方案予以实现的:
一种基于数字电路的SOF、CRC及EOF错误注入方法,包括以下步骤:
1)主机写配置寄存器组,配置寄存器组包括与SOF、CRC和EOF对应的3个寄存器;
2)延时单元将发送数据延时输出至多路选择器;
数据检测单元检查发送数据:
当检查到SOF时,数据检测单元产生SOF***指示信号,并将该***指示信号送给多路选择器;
当检查到CRC时,数据检测单元产生CRC***指示信号,并将该***指示信号送给多路选择器;
当检查到EOF时,数据检测单元产生EOF***指示信号,并将该***指示信号送给多路选择器;
3)若多路选择器收到***指示信号,多路选择器将与***指示信号对应的寄存器值输出;
否则多路选择器将收到的发送数据输出。
上述延时单元由两组32位的寄存器组构成,将发送数据延时两个时钟周期输出至多路选择器。
上述数据检测单元由两个32位同或门、两个1位2选1选择器及3个1位寄存器组成。
与SOF、CRC和EOF对应的3个寄存器分别为SOF注入值寄存器、CRC注入值寄存器和EOF注入值寄存器,均为32位宽,主机可读可写。
步骤3)中“若多路选择器收到***指示信号,多路选择器将与***指示信号对应的寄存器值输出”的具体方法如下:
当SOF***指示信号有效,多路选择器输出SOF注入值寄存器的值;
或,
当CRC***指示信号有效,多路选择器输出CRC注入值寄存器的值;
或,
当EOF***指示信号有效,多路选择器输出EOF注入值寄存器的值。
上述多路选择器位宽32位。
本发明的有益效果是:
a)本发明能够根据主机的配置,控制每一个发送帧的SOF、CRC及EOF的填充值,可以通过对已有发送电路的简单更改实现SOF、CRC及EOF错误注入的功能;
b)支持FPGA等集成电路的使用,易于实现;
c)可以通过对已有电路进行简单更改实现,成本低;
d)使用方便,操作灵活。
附图说明
图1是本发明的结构示意图;
图2是本发明的工作流程图;
图3是延时单元电路示意图;
图4是数据检测单元电路示意图;
图5是多路选择器工作流程示意图。
具体实施方式
本发明提出了一种基于数字电路的SOF、CRC及EOF错误注入方法,包括配置寄存器组和错误注入模块,错误注入模块包括延时单元、数据检测单元和多路选择器,其中,配置寄存器组用来储存需要注入的SOF、CRC及EOF的值,由主机进行配置;数据检测单元检查发送数据,多路选择器根据收到的***指示信号使用配置寄存器组中对应的寄存器的值替换发送数据中的相应字段。
本发明的具体步骤如下:
1)主机写配置寄存器组,配置寄存器组包括与SOF、CRC和EOF对应的3个寄存器;
2)延时单元将发送数据延时输出至多路选择器;
数据检测单元检查发送数据:
当检查到SOF时,数据检测单元产生SOF***指示信号,并将该***指示信号送给多路选择器;
当检查到CRC时,数据检测单元产生CRC***指示信号,并将该***指示信号送给多路选择器;
当检查到EOF时,数据检测单元产生EOF***指示信号,并将该***指示信号送给多路选择器;
3)若多路选择器收到***指示信号,多路选择器将与***指示信号对应的寄存器值输出;
否则多路选择器将收到的发送数据输出。
下面结合附图及具体实例对本发明做进一步的详细说明。
如图1所示,一种基于数字电路的SOF、CRC及EOF错误注入方法,包括:
1)配置寄存器组
配置寄存器组包括分别与SOF、CRC和EOF对应的寄存器;配置寄存器组的定义和说明如表1所示。
表1配置寄存器组说明
寄存器名称 | 复位值 | 偏移地址 | 操作方式 | 位宽 | 备注 |
err_sof_reg | 0 | 0x0000 | 读写 | 32 | SOF注入值寄存器 |
err_crc_reg | 0 | 0x0004 | 读写 | 32 | CRC注入值寄存器 |
err_eof_reg | 0 | 0x0008 | 读写 | 32 | EOF注入值寄存器 |
2)错误注入模块
错误注入模块包括延时单元、数据检测单元和多路选择器三部分,其实现方式分别如下所述。
a)延时单元
延时单元由两组32位的寄存器组构成,将发送数据延时两个时钟周期输出至多路选择器,具体电路如图3所示。
b)数据检测单元
数据检测单元由两个32位同或门、两个1位2选1选择器及3个1位寄存器组成,在检测到发送数据的SOF、CRC及EOF字段时分别输出SOF***指示信号、CRC***指示信号及EOF***指示信号,具体电路如图4所示。
c)多路选择器
多路选择器位宽32位,在SOF、CRC及EOF***指示信号的控制下,输出配置寄存器组中对应的寄存器值。工作流程如图5所示,具体说明如下:
a)当SOF***指示信号为1时,输出SOF注入值寄存器的值;
b)当CRC***指示信号为1时,输出CRC注入值寄存器的值;
c)当EOF***指示信号为1时,输出EOF注入值寄存器的值;
否则将收到的发送数据输出。
Claims (6)
1.一种基于数字电路的SOF、CRC及EOF错误注入方法,其特征在于,包括以下步骤:
1)主机写配置寄存器组,配置寄存器组包括与SOF、CRC和EOF对应的3个寄存器;
2)延时单元将发送数据延时输出至多路选择器;
数据检测单元检查发送数据:
a)当检查到SOF时,数据检测单元产生SOF***指示信号,并将该***指示信号送给多路选择器;
b)当检查到CRC时,数据检测单元产生CRC***指示信号,并将该***指示信号送给多路选择器;
c)当检查到EOF时,数据检测单元产生EOF***指示信号,并将该***指示信号送给多路选择器;
3)若多路选择器收到***指示信号,多路选择器将与***指示信号对应的寄存器值输出;
否则多路选择器将收到的发送数据输出。
2.根据权利要求1所述的基于数字电路的SOF、CRC及EOF错误注入方法,其特征在于,所述延时单元由两组32位的寄存器组构成,将发送数据延时两个时钟周期输出至多路选择器。
3.根据权利要求2所述的基于数字电路的SOF、CRC及EOF错误注入方法,其特征在于,所述数据检测单元由两个32位同或门、两个1位2选1选择器及3个1位寄存器组成。
4.根据权利要求1或2或3所述的基于数字电路的SOF、CRC及EOF错误注入方法,其特征在于,与SOF、CRC和EOF对应的3个寄存器分别为SOF注入值寄存器、CRC注入值寄存器和EOF注入值寄存器,均为32位宽,主机可读可写。
5.根据权利要求4所述的基于数字电路的SOF、CRC及EOF错误注入方法,其特征在于,步骤3)中“若多路选择器收到***指示信号,多路选择器将与***指示信号对应的寄存器值输出”的具体方法如下:
当SOF***指示信号有效,多路选择器输出SOF注入值寄存器的值;
或,
当CRC***指示信号有效,多路选择器输出CRC注入值寄存器的值;
或,
当EOF***指示信号有效,多路选择器输出EOF注入值寄存器的值。
6.根据权利要求5所述的基于数字电路的SOF、CRC及EOF错误注入方法,其特征在于,多路选择器位宽32位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510889897.2A CN105471551A (zh) | 2015-12-07 | 2015-12-07 | 一种基于数字电路的sof、crc及eof错误注入方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510889897.2A CN105471551A (zh) | 2015-12-07 | 2015-12-07 | 一种基于数字电路的sof、crc及eof错误注入方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105471551A true CN105471551A (zh) | 2016-04-06 |
Family
ID=55608900
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510889897.2A Pending CN105471551A (zh) | 2015-12-07 | 2015-12-07 | 一种基于数字电路的sof、crc及eof错误注入方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105471551A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106392794A (zh) * | 2016-11-11 | 2017-02-15 | 广东利迅达机器人***股份有限公司 | 一种高效水槽打磨***及使用其的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0336638A2 (en) * | 1988-04-04 | 1989-10-11 | Raytheon Company | Transient and intermittent fault insertion |
US6233073B1 (en) * | 1998-07-30 | 2001-05-15 | International Business Machines Corporation | Diagnostic injection of transmission errors in fiber optic networks |
US7827445B2 (en) * | 2007-12-19 | 2010-11-02 | International Business Machines Corporation | Fault injection in dynamic random access memory modules for performing built-in self-tests |
CN103198868A (zh) * | 2013-04-16 | 2013-07-10 | 西北核技术研究所 | 一种用于单粒子翻转的故障模拟***及分析方法 |
US20150121323A1 (en) * | 2013-10-24 | 2015-04-30 | International Business Machines Corporation | Determining a quality parameter for a verification environment |
CN104657247A (zh) * | 2015-02-10 | 2015-05-27 | 上海创景计算机***有限公司 | 基于jtag调试方式实现通用型故障注入***和故障注入方法 |
-
2015
- 2015-12-07 CN CN201510889897.2A patent/CN105471551A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0336638A2 (en) * | 1988-04-04 | 1989-10-11 | Raytheon Company | Transient and intermittent fault insertion |
US6233073B1 (en) * | 1998-07-30 | 2001-05-15 | International Business Machines Corporation | Diagnostic injection of transmission errors in fiber optic networks |
US7827445B2 (en) * | 2007-12-19 | 2010-11-02 | International Business Machines Corporation | Fault injection in dynamic random access memory modules for performing built-in self-tests |
CN103198868A (zh) * | 2013-04-16 | 2013-07-10 | 西北核技术研究所 | 一种用于单粒子翻转的故障模拟***及分析方法 |
US20150121323A1 (en) * | 2013-10-24 | 2015-04-30 | International Business Machines Corporation | Determining a quality parameter for a verification environment |
CN104657247A (zh) * | 2015-02-10 | 2015-05-27 | 上海创景计算机***有限公司 | 基于jtag调试方式实现通用型故障注入***和故障注入方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106392794A (zh) * | 2016-11-11 | 2017-02-15 | 广东利迅达机器人***股份有限公司 | 一种高效水槽打磨***及使用其的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105573239A (zh) | 一种高速背板总线通讯控制装置及方法 | |
CN100555235C (zh) | N模冗余表决*** | |
CN107968756A (zh) | 高性能互连链路层 | |
CN104579313A (zh) | 一种基于配置帧的在轨sram型fpga故障检测与修复方法 | |
CN101702639A (zh) | 循环冗余校验的校验值计算方法及装置 | |
CN102801744A (zh) | 一种通信总线协议及包括该协议的*** | |
CN104320317A (zh) | 一种以太网物理层芯片状态的传送方法和装置 | |
CN102866967B (zh) | I2c设备管理方法及复杂可编程逻辑器件cpld | |
CN105471551A (zh) | 一种基于数字电路的sof、crc及eof错误注入方法 | |
US20120317380A1 (en) | Device and method for a half-rate clock elasticity fifo | |
CN108270508A (zh) | 一种循环冗余校验crc实现方法、装置及网络设备 | |
US9246491B2 (en) | Method and apparatus for performing pipelined operations on parallel input data with feedback | |
CN101442380B (zh) | 基于高速串行接口编码方式的误码率测试方法与装置 | |
CN103731130A (zh) | 通用的容错纠错电路及其应用的译码器和三模冗余电路 | |
CN104471888B (zh) | 突发数据块中的空闲块idle的处理方法、设备及*** | |
CN105550089A (zh) | 一种基于数字电路的fc网络帧头数据错误注入方法 | |
CN103427945A (zh) | 同步串行通信接口的通信方法及该同步串行通信接口 | |
CN105068417A (zh) | SpaceWire网络授时与校时的方法 | |
CN101848055A (zh) | 一种数据修正方法和装置 | |
CN103561360A (zh) | 串行处理光传送网开销的装置及方法 | |
CN105005511A (zh) | 一种串行通信数据校验方法 | |
CN105653390A (zh) | 一种SoC***的校验方法 | |
CN101902436A (zh) | 板间通信方法、装置及*** | |
CN103413003A (zh) | 一种序列传输、接收装置及方法 | |
CN101630997A (zh) | 一种环形总线数据报文crc校验字的动态修正方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160406 |
|
RJ01 | Rejection of invention patent application after publication |