[发明专利]一种基于FPGA的高带宽以太网IP核有效
申请号: | 201410158047.0 | 申请日: | 2014-04-18 |
公开(公告)号: | CN103916252B | 公开(公告)日: | 2017-05-03 |
发明(设计)人: | 刘广森;赵晓冬;周祚峰;刘庆;边河;郭惠楠;张辉;郭云曾;常三三 | 申请(专利权)人: | 中国科学院西安光学精密机械研究所 |
主分类号: | H04L12/02 | 分类号: | H04L12/02 |
代理公司: | 西安智邦专利商标代理有限公司61211 | 代理人: | 胡乐 |
地址: | 710119 陕西省西*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fpga 带宽 以太网 ip | ||
技术领域
本发明属于网络通信技术领域,涉及一种基于FPGA的高带宽以太网IP核的设计与开发。
技术背景
目前,基于以太网的数据传输通信已经广泛应用,但是这些应用大多依靠计算机与网卡组合来实现。对于一些嵌入式系统领域的数据传输要求来说,这样的实现方法不合适。
在嵌入式系统开发中,普遍采用ARM或者DSP这些微处理器来实现网络传输通信的方法,但是由于微处理器是运行其内部程序来进行数据处理,具有分时多任务处理的特点,不能在同一时刻同时并行处理多个任务,这就导致了其网络传输速率峰值不高的缺陷。在商业嵌入式应用领域中,采用ARM或者DSP进行千兆以太网数据通信时,其通信均值速率一般在400Mbps以下,只能适用于较一般情况下的以太网实时通信,无法满足大批量数据高带宽实时通信的需求。
现阶段,商业上主流的FPGA生产厂家Altera和Xilinx都开发出了千兆以太网IP核,但是其使用都需要支付相当昂贵的授权费用,且其提供的以太网IP核后端一般都与其内部软核相连,从而导致其整体架构上通信均值速率不高,通信均值低于600Mbps。
综上所述,在一些高清无损图像传输领域,或者大数据量高带宽的传输、实时性的要求高、成本研发有限的情况下,上述嵌入式系统开发的千兆以太网实时处理性能无法满足要求,所以有必要研制一套能够胜任低成本、高实时性、高带宽的千兆以太网嵌入式逻辑接口。
发明内容
本发明针对现有技术的不足,开发设计出了一种基于FPGA的以太网IP核,解决了嵌入式应用领域中千兆以太网实时数据传输过程中通信速率均值不高的问题,使其能够更加方便地应用在大数据量高带宽的以太网传输通信领域。
本发明的基本解决方案如下:
基于FPGA的高带宽以太网IP核,其中FPGA采用RGMII接口与一物理层PHY芯片通信连接,物理层以上的协议全部在FPGA内部实现;其特殊之处在于,该以太网IP核包括:
接收模块,用于接收网络数据,实时检测以太网帧头起始字节,在确认接收到以太网帧头后,开始接收整个以太网帧,并对接收到的以太网帧的协议类型进行判别,将接收到的以太网帧分为ARP数据帧和以太网数据帧,分别放在两个不同的缓存区,记为ARP_RX_RAM和ETHENT_RX_RAM;
ARP帧处理模块,用于对所述ARP数据帧进行处理;(具体处理方式可以参照现有技术,即:按照ARP数据帧的格式,判别接收到的ARP数据帧为请求帧或应答帧,若为应答帧则丢弃该帧,若为请求帧,则判别请求帧内的目的IP地址与IP核自身的IP地址是否一致,如果一致则进行ARP请求帧的响应回复,如果不一致则丢弃该帧)
以太网数据帧处理模块,用于对所述以太网数据帧进行处理,即判别其协议具体类型和整帧长度,进行以太网数据帧头校验位和帧尾部CRC校验位的计算,若计算得出帧头校验位或者CRC校验位错误,则丢弃该数据帧,否则将该帧存入缓存区ETHENT_REC_RAM;
发送模块,设置有多个双端口的FIFO,用以分别缓存不同接口发来的数据,其中至少一个接口对应于所述ARP帧处理模块回复的响应帧;然后判别各个双端口的FIFO的状态以及是否写入完毕,按照写入完毕的顺序依次发送各个双端口的FIFO中的数据;通过以太网接口(RJ45)向外发送以太网帧时,采用流水线作业的编程机制,分别进行待发送以太网帧的帧头的校验计算、UDP帧校验的计算,以及CRC校验码的计算,在CRC校验的计算中,采用CRC32的循环校验码计算模块生成每个待发送以太网帧的CRC校验码在每个待发送以太网帧的帧尾部输出。
基于上述基本解决方案,本发明还作如下优化限定或改进:
所述发送模块还设置有一缓存区,该缓存区采用CAM查询表方式存入以太网络上已知的IP及其对应MAC地址并实时更新;若待发送以太网帧的目的IP及其对应的MAC地址能够在CAM查询表中查找到,则直接按照CAM查询表记录的地址发送。(若在CAM查询表没有对应的记录,则可以参照现有技术发送一包ARP请求帧,然后将返回的ARP应答帧中的IP及其对应MAC地址提取出来存入CAM查询表,同时按照该地址发送以太网帧)
所述接收模块还通过实时检测每秒以太网接入时钟上升沿的个数以确定接入的以太网速率,从而动态调整RGMII接口时钟频率(即可实现100Mbps或者1000Mbps以太网连接的自动切换)。
以太网IP核内部主时钟为100MHZ,16位数据并行运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院西安光学精密机械研究所,未经中国科学院西安光学精密机械研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410158047.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种农用联合机械用三路阀体的铸造方法
- 下一篇:风道装置