一种基于数字电路的SOF、CRC及EOF错误注入方法技术

技术编号:13130963 阅读:263 留言:0更新日期:2016-04-06 16:09
本发明专利技术属于计算机通信领域,提出了一种基于数字电路的SOF、CRC及EOF错误注入方法,包括配置寄存器和错误注入模块,其中,配置寄存器组用来储存需要注入的SOF、CRC及EOF的值,由主机进行配置;错误注入模块检查发送数据,并使用配置寄存器中的值替换发送数据中的相应字段。本发明专利技术通过在正常的发送通道中插入处理电路,实现对SOF、CRC及EOF的错误注入,进而达到实现简单,使用灵活,降低成本的目的。

【技术实现步骤摘要】

本专利技术涉及一种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_reg00x0000读写32SOF注入值寄存器err_crc_reg00x0004读写32CRC注入值寄存器err_eof_reg00x0008读写32EOF注入值寄存器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注入值寄存器的值;否则将收到的发送数据输出。本文档来自技高网...

【技术保护点】
一种基于数字电路的SOF、CRC及EOF错误注入方法,其特征在于,包括以下步骤:1)主机写配置寄存器组,配置寄存器组包括与SOF、CRC和EOF对应的3个寄存器;2)延时单元将发送数据延时输出至多路选择器;数据检测单元检查发送数据:a)当检查到SOF时,数据检测单元产生SOF插入指示信号,并将该插入指示信号送给多路选择器;b)当检查到CRC时,数据检测单元产生CRC插入指示信号,并将该插入指示信号送给多路选择器;c)当检查到EOF时,数据检测单元产生EOF插入指示信号,并将该插入指示信号送给多路选择器;3)若多路选择器收到插入指示信号,多路选择器将与插入指示信号对应的寄存器值输出;否则多路选择器将收到的发送数据输出。

【技术特征摘要】
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所述的基于数字电路的SO...

【专利技术属性】
技术研发人员:蒲恺王世奎李大鹏武华雷宇宏焦龙
申请(专利权)人:中国航空工业集团公司西安航空计算技术研究所
类型:发明
国别省市:陕西;61

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

1