[发明专利]基于FPGA的网络数据卡及数据传输方法在审
申请号: | 201310665448.0 | 申请日: | 2013-12-09 |
公开(公告)号: | CN103701776A | 公开(公告)日: | 2014-04-02 |
发明(设计)人: | 袁宝弟;王永忠;陆翰;金睿 | 申请(专利权)人: | 无锡市同威科技有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 无锡市大为专利商标事务所 32104 | 代理人: | 殷红梅 |
地址: | 214072 江苏省无锡市滨*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 fpga 网络 数据 数据传输 方法 | ||
技术领域
本发明涉及一种数据卡及数据传输方法,尤其是一种基于FPGA的网络数据卡及数据传输方法,具体地说是利用FPGA传输基于IPV4/IPV6协议的网络数据卡及数据传输方法。
背景技术
IPV4(Internet Protocol version 4)是目前的全球因特网所采用的协议族是TCP/IP协议族。IP是TCP/IP协议族中网络层的协议,是TCP/IP协议族的核心协议。IPV6(Internet Protocol Version 6)是IETF(互联网工程任务组,Internet Engineering Task Force)设计的用于替代现行版本IP协议(IPV4)的下一代IP协议。
双栈是指一个基站语音和上网使用两个不同的协议栈,双协议栈技术(DualStack)是在设备上(如一个主机或一个路由器)同时启用IPV4协议和IPV6协议的协议栈。
现有的网络数据传输均是在上位机内完成,在发送数据时,采用同时组建IPV4和IPV6数据包,再依次发送,若发送成功,则立即返回发送初始状态。若两种数据包均发送不通,则可判断为网络故障。现有的网络数据传输方法在实际验证中可行,在目标服务器支持IPV4协议的情况下能立即发送出数据,在IPV4协议不能通信的情况下,则一般需要延迟50ms发送出基于IPV6协议的数据包。
在IPV4协议情况下,若数据包为64位,则4个时钟周期(每个时钟周期4纳秒)可完成发送。若数据包较大,则每增加8个字节,需要多两个时钟周期来完成数据发送。
数据接收时,先判断数据头的协议号,再根据协议号进入不同的状态机解析接收到的数据。然后接收算法能对接收到的数据立即做出处理,提高了接收速度。一般一个64位的数据包在2个时钟周期(每个周期4纳秒)即可接收完成,若数据包较大,则每4个字节,需要多一个时钟周期来接收。
因此,现有的数据传输方法需要占据上位机的处理工作量及处理速度,不能适应现在网络数据传输的要求。
发明内容
本发明的目的是克服现有技术中存在的不足,提供一种基于FPGA的网络数据卡及数据传输方法,其结构紧凑,能实现对IPV4/IPV6网络数据的传输,提高传输效率,适应范围广,安全可靠。
按照本发明提供的技术方案,所述基于FPGA的网络数据卡,包括卡板,所述卡板上设有FPGA芯片,所述FPGA芯片内设有IPV4-IPV6协议解析模块;所述IPV4-IPV6协议解析模块通过FPGA芯片内的发送缓存、接收缓存分别与卡板上的PCIE X8总线接口、TEMAC管理模块连接,所述TEMAC管理模块与RJ45接口连接。
所述发送缓存包括第一发送缓存及第二发送缓存,所述接收缓存包括第一接收缓存及第二接收缓存,IPV4-IPV6协议解析模块通过第一发送缓存、第二接收缓存与PCIE X8总线接口连接,且IPV4-IPV6协议解析模块通过第二发送缓存、第一接收缓存与TEMAC管理模块连接。
所述PCIE X8总线接口与Socket端口连接。
一种基于FPGA的网络数据卡数据传输方法,所述FPGA芯片与PCIE X8总线接口及TEMAC管理模块连接,FPGA芯片利用PCIE X8总线接口接收发送数据,对接收发送数据组包后通过TEMAC管理模块发送;
FPGA芯片用TEMAC管理模块接收输入数据,对接收输入数据解析后通过PCIE X8总线接口进行数据传输。
所述FPGA芯片利用PCIE X8总线接口接收发送数据,对接收的发送数据组包通过TEMAC管理模块发送过程包括如下步骤:
a1、PCIE X8总线接口与Socket端口,并将待发送的数据写入Socket端口;
a2、PCIE X8总线接口读取写入Socket端口的待发送数据,并传送到FPGA芯片内的第一发送缓存内且清空第二发送缓存;
a3、IPV4-IPV6协议解析模块根据第一发送缓存内的数据解析出发送的目标地址;当待发送数据完全存进第一发送缓存内,读取并统计第一发送缓存内的字节数;
a4、IPV4-IPV6协议解析模块将第一发送缓存内的数据组包为IPV4格式的数据包以及IPV6格式的数据包;FPGA芯片将IPV4-IPV6协议解析模块内IPV4格式的数据包存入第二发送缓存内,TEMAC管理模块将第二发送缓存内的IPV4格式的数据包向外发送;当TEMAC管理模块发送IPV4格式的数据包失败时,进入步骤a5;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡市同威科技有限公司,未经无锡市同威科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310665448.0/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置