一种基于FPGA的千兆网口自协商装置及方法制造方法及图纸

技术编号:20855204 阅读:44 留言:0更新日期:2019-04-13 10:49
本发明专利技术涉及一种基于FPGA的千兆网口自协商装置及方法,其装置包括GTP Transceiver模块、数据接收分析模块、自协商控制模块和数据发送执行模块;GTP Transceiver模块中配设有GTP_RX子模块和GTP_TX子模块;GTP_RX子模块用于将通过千兆网口收到的串行数据码流进行串并转换,得到并行数据码流;数据接收分析模块用于分析和统计所述并行数据码流,生成状态信号;自协商控制模块用于根据所述状态信号向数据发送执行模块发送自协商信息;数据发送执行模块根据所述自协商信息向GTP_TX子模块发送相应的自协商并行数据码流;GTP_TX子模块用于对自协商并行数据码流进行并串转换,得到自协商串行数据码流,并通过千兆网口发送出去。本发明专利技术既满足了高带宽需求,又保留了百兆网口功能。

【技术实现步骤摘要】
一种基于FPGA的千兆网口自协商装置及方法
本专利技术涉及网口通讯领域,具体涉及一种基于FPGA的千兆网口自协商装置及方法。
技术介绍
以太网从10M开始发展,经历几多的变迁,发展到现在的千兆以太网。千兆以太网以高效、高速、高性能为特点,已经广泛应用在金融、商业、教育、政府机关及电力等行业。当以太网发展到快速以太网100Mb/s时,为了实现与10Mb/s以太网设备混合通讯,提出了自协商概念。自协商运行两个站点,即使在以太网设备不同时,能自动以最优性能来通信,包括速率(10/100Mb/s)和双工模式(半/全双工)。发展到当前的千兆以太网,以太网设备支持的通信容量更是多种多样,自协商的协商内容也随之增加。为了实现对智能电网自动化设备的检测、测试和控制,需要使用具备光网口的光数字测试设备,根据智能变电站实际测试情况,需要几百兆甚至上千兆的SV报文分析和解析,一些手持装置因为体积小的约束,无法做到大于8个百兆口的要求;另外,多网口的光数字测试仪器,电路运用太多PHY芯片,造成硬件电路的复杂和功耗大,且成本高;因此如何解决高带宽需求,且保留原有百兆口的功能,是目前亟待解决的问题。
技术实现思路
本专利技术所要解决的技术问题是提供一种基于FPGA的千兆网口自协商装置及方法,既满足了高带宽需求,又保留了百兆网口功能,而且能省PHY芯片,使得硬件电路简单高效和低功耗。本专利技术解决上述技术问题的技术方案如下:一种基于FPGA的千兆网口自协商装置,包括GTPTransceiver模块、数据接收分析模块、自协商控制模块和数据发送执行模块;所述GTPTransceiver模块是基于FPGA的Spartan6器件集成的RocketIO收发模块,所述GTPTransceiver模块中配设有GTP_RX子模块和GTP_TX子模块;所述GTP_RX子模块用于将通过千兆网口收到的串行数据码流进行串并转换,得到并行数据码流;所述数据接收分析模块用于分析和统计所述并行数据码流,生成状态信号;所述自协商控制模块用于根据所述状态信号向所述数据发送执行模块发送自协商信息;所述数据发送执行模块根据所述自协商信息向所述GTP_TX子模块发送相应的自协商并行数据码流;所述GTP_TX子模块用于对所述自协商并行数据码流进行并串转换,得到自协商串行数据码流,并通过千兆网口发送出去。本专利技术的有益效果是:本专利技术一种基于FPGA的千兆网口自协商装置基于FPGA芯片来实现,所以具有扩展性和运算实时性好、结构简单、功耗低和开发周期短、开发成本低的优点,既满足了高带宽需求,又保留了百兆网口功能;另外,节省了PHY芯片,节省了围绕PHY芯片搭建的硬件电路,让千兆网口模块直接与FPGA连接通讯,既简化了硬件电路,也省了一些中间信号。在上述技术方案的基础上,本专利技术还可以做如下改进。进一步,还包括上层收包模块、上层发包模块和CPU模块;所述GTPTransceiver模块用于通过所述GTP_RX子模块接收网络数据包并进行解码,得到包文数据;所述数据接收分析模块还用于将所述包文数据传递给所述上层收包模块;所述上层收包模块用于在所述自协商控制模块的控制下,将所述包文数据进行包解析,得到数据包;所述CPU模块用于对所述数据包进行分析和统计,并生成发包内容;所述上层发包模块用于在所述自协商控制模块的控制下,将所述CPU模块生成的发包内容进行预处理,且计算出包文并进行存储;所述数据发送执行模块还用于读取所述上层发包模块中存储的所述包文,并发送给所述GTP_TX子模块;所述GTPTransceiver模块还用于对所述包文进行打包并通过所述GTP_TX子模块发送出去。采用上述进一步方案的有益效果是:本专利技术一种基于FPGA的千兆网口自协商装置可对收到的包文数据进行解包操作,提取包文内容并存储下来,供CPU来读取并进行分析和统计;同时本端装置的CPU可组织包文内容,然后FPGA对数据进行打包后进行发送。基于上述一种基于FPGA的千兆网口自协商装置,本专利技术还提供一种基于FPGA的千兆网口自协商方法。一种基于FPGA的千兆网口自协商方法,本端装置和对端装置之间进行网口自协商,且所述本端装置和所述对端装置均处于自协商模式,所述本端装置和所述对端装置均为上述所述的一种基于FPGA的千兆网口自协商装置,所述网口自协商方法包括以下步骤,S1,所述本端装置在第一预设时间持续的向所述对端装置发送第一并行数据码流;S2,在持续第一预设时间后,所述对端装置向所述本端装置发送第二并行数据码流;S3,所述本端装置对所述第二并行数据码流进行分析和判断,若所述第二并行数据码流有效时,则执行S4,否者跳转至所述S1;S4,所述本端装置按先后顺序向所述对端装置发送第三并行数据码流和第四并行数据码流;S5,所述对端装置接收到所述第四并行数据码流后,向所述本端装置发送第五并行数据码流;S6,所述本端装置对所述第五并行数据码流进行分析和判断,若所述第五并行数据码流有效时,则所述本端装置与所述对端装置CFG交互通讯握手成功,并执行S7,否则跳转至所述S5;S7,在所述本端装置与所述对端装置CFG交互通讯握手持续第二预设时间后,所述本端装置向所述对端装置发送第六并行数据码流;S8,所述对端装置接收到所述第六并行数据码流后,向所述本端装置发送第七并行数据码流;S9,所述本端装置对所述第七并行数据码流进行分析和判断,当所述第七并行数据码流有效时,则所述本端装置与所述对端装置进入IDLE状态,并执行S10,否则跳转至所述S8;S10,在所述本端装置与所述对端装置进入IDLE状态持续第三预设时间后,所述本端装置与所述对端装置之间进入可收发包状态。本专利技术的有益效果是:本专利技术一种基于FPGA的千兆网口自协商方法基于FPGA实现,具备802.3标准里的1000BASE-X的自协商功能,完成了PHY芯片同等的千兆自协商过程,既满足了高带宽需求,又保留了百兆网口功能。在上述技术方案的基础上,本专利技术还可以做如下改进。进一步,所述第一并行数据码流为配置内容为0的CFG码字;有效的所述第二并行数据码流为连续多个配置内容相同且非0的CFG码字;所述第三并行数据码流为连续多个配置内容相同的CFG码字;所述第四并行数据码流为连续多个配置内容相同且带ACK的CFG码字;有效的所述第五并行数据码流为连续多个配置内容相同且带ACK的CFG码字;所述第六并行数据码流为连续多个配置内容相同的IDLE码字;有效的所述第七并行数据码流为连续多个配置内容相同的IDLE码字。进一步,所述本端装置发送预设并行数据码流的具体过程为,本端装置内置的FPGA内部资源RocketIO收发模块将所述预设并行数据码流进行并串转换后形成串行数据码流,并由本端网口发出;所述对端装置接收所述预设并行数据码流的具体过程为,所述对端装置通过所述对端网口接收所述串行数据码流,并通过所述对端装置内置的FPGA内部资源RocketIO收发模块对所述串行数据码流进行串并转换后形成所述预设并行数据码流。进一步,在所述S10中,当所述本端装置与所述对端装置之间进入可收发包状态后,所述本端装置与所述对端装置进行正常的网络通讯。进一步,所述本端装置与所述对端装置进行正常的网络通讯的具体过程为,所述本端装置将所述对端装本文档来自技高网...

【技术保护点】
1.一种基于FPGA的千兆网口自协商装置,其特征在于:包括GTPTransceiver模块、数据接收分析模块、自协商控制模块和数据发送执行模块;所述GTP Transceiver模块是基于FPGA的Spartan6器件集成的RocketIO收发模块,所述GTP Transceiver模块中配设有GTP_RX子模块和GTP_TX子模块;所述GTP_RX子模块用于将通过千兆网口收到的串行数据码流进行串并转换,得到并行数据码流;所述数据接收分析模块用于分析和统计所述并行数据码流,生成状态信号;所述自协商控制模块用于根据所述状态信号向所述数据发送执行模块发送自协商信息;所述数据发送执行模块根据所述自协商信息向所述GTP_TX子模块发送相应的自协商并行数据码流;所述GTP_TX子模块用于对所述自协商并行数据码流进行并串转换,得到自协商串行数据码流,并通过千兆网口发送出去。

【技术特征摘要】
1.一种基于FPGA的千兆网口自协商装置,其特征在于:包括GTPTransceiver模块、数据接收分析模块、自协商控制模块和数据发送执行模块;所述GTPTransceiver模块是基于FPGA的Spartan6器件集成的RocketIO收发模块,所述GTPTransceiver模块中配设有GTP_RX子模块和GTP_TX子模块;所述GTP_RX子模块用于将通过千兆网口收到的串行数据码流进行串并转换,得到并行数据码流;所述数据接收分析模块用于分析和统计所述并行数据码流,生成状态信号;所述自协商控制模块用于根据所述状态信号向所述数据发送执行模块发送自协商信息;所述数据发送执行模块根据所述自协商信息向所述GTP_TX子模块发送相应的自协商并行数据码流;所述GTP_TX子模块用于对所述自协商并行数据码流进行并串转换,得到自协商串行数据码流,并通过千兆网口发送出去。2.根据权利要求1所述的一种基于FPGA的千兆网口自协商装置,其特征在于:还包括上层收包模块、上层发包模块和CPU模块;所述GTPTransceiver模块用于通过所述GTP_RX子模块接收网络数据包并进行解码,得到包文数据;所述数据接收分析模块还用于将所述包文数据传递给所述上层收包模块;所述上层收包模块用于在所述自协商控制模块的控制下,将所述包文数据进行包解析,得到数据包;所述CPU模块用于对所述数据包进行分析和统计,并生成发包内容;所述上层发包模块用于在所述自协商控制模块的控制下,将所述CPU模块生成的发包内容进行预处理,且计算出包文并进行存储;所述数据发送执行模块还用于读取所述上层发包模块中存储的所述包文,并发送给所述GTP_TX子模块;所述GTPTransceiver模块还用于对所述包文进行打包并通过所述GTP_TX子模块发送出去。3.一种基于FPGA的千兆网口自协商方法,其特征在于:本端装置和对端装置之间进行网口自协商,且所述本端装置和所述对端装置均处于自协商模式,所述本端装置和所述对端装置均为上述权利要求1或2所述的一种基于FPGA的千兆网口自协商装置,所述网口自协商方法包括以下步骤,S1,所述本端装置在第一预设时间内持续的向所述对端装置发送第一并行数据码流;S2,在持续第一预设时间后,所述对端装置向所述本端装置发送第二并行数据码流;S3,所述本端装置对所述第二并行数据码流进行分析和判断,若所述第二并行数据码流有效时,则执行S4,否者跳转至所述S1;S4,所述本端装置按先后顺序向所述对端装置发送第三并行数据码流和第四并行数据码流;S5,所述对端装置接收到所述第四并行数据码流后,向所述本端装置发送第五并行数据码流;S6,所述本端装置对所述第五并行数据码流进行分析和判断,若所述第五并行数据码流有效时,则所述本端装置与所述对端装置CFG交互通讯握手成功,并执行S7,否则跳转至所述S5;S7,在所述本端装置与所述对端装置CFG交互通讯握手持续第二预设时间后,所述本端装置向所述对端装置发送第六...

【专利技术属性】
技术研发人员:王斐秦铆熊晶李杰
申请(专利权)人:中域高科武汉信息技术有限公司
类型:发明
国别省市:湖北,42

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

1