The invention discloses a domestic FPGA Ethernet switching system and method based on system comprises a network interface physical layer module, field programmable logic devices, FPGA microprocessor and external SRAM memory; wherein, the network port physical layer module is used for connecting the web interface and network interface physical layer data processing, and then transmit the data to the field programmable logic device FPGA; the field programmable logic device FPGA for the completion of the two / three layer layer forwarding process buffer and network packet network port MAC; the microprocessor for the realization of the FPGA internal register space configuration and status query function, and it can be used for Ethernet packet processing; the external SRAM memory used for temporary storage of network packet forwarding. By setting up the corresponding registers of FPGA, the invention can realize the setup of Ethernet switch, and provide the interface of CPU software to process Ethernet data, which can conveniently and flexibly support the business process of commonly used Ethernet switching.
【技术实现步骤摘要】
一种基于国产FPGA的实现以太网交换功能系统及方法
本专利技术涉及电子信息通信
,尤其涉及一种基于国产FPGA的实现以太网交换功能系统及方法。
技术介绍
以太网接口的物理/电气特性的规范符合802.3协议,是目前国际上普遍采用的标准通信接口。在通信设备的机箱中常使用的以太网接口为千兆速率的1000Base-T,其物理速率为1000Mbps。以太网接口作为OSI七层协议中物理层的一种实现方式,得到了广泛的应用。MAC即MediaAccessControl,即媒体访问控制子层协议,该协议位于OSI七层协议中数据链路层的下半部分,主要负责控制与连接物理层的物理介质。在发送数据的时候,MAC协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;在接收数据的时候,MAC协议首先判断输入的信息是否发生传输错误,如果没有错误,则去掉控制信息发送至LLC层。该层协议是以太网MAC由IEEE-802.3以太网标准定义。由于以太网交换技术实现上的复杂性,现实设备中往往只能针对某项特定使用方式提供功能,采用专用的以太网交换芯片实现网络交换的业务处理,缺乏灵活性更强的、适应各种用途的和具备高扩展性的设计模块。同时,由于组网功能的协议仍在快速演进,特别是SDN(软件定义网络)技术的发展,使得固定功能的交换芯片难以满足未来不断发展的要求。为了使网络交换体制适应组网功能发展的需求,支持灵活的功能裁剪和扩展,急需一种设计技术用以实现较强的自主性和可编程性。因此,为了使以太网交换设备可以在同一种硬件平台上,支持灵活可变 ...
【技术保护点】
一种基于国产FPGA的实现以太网交换功能系统,其特征在于,包括依次连接的网口物理层模块、现场可编程逻辑FPGA器件、微处理器和外置SRAM存储器;其中所述网口物理层模块用于连接网口和处理网口物理层的数据,并将数据传输至所述现场可编程逻辑FPGA器件;所述现场可编程逻辑FPGA器件用于完成网口MAC的缓冲及网络包的二层/三层转发处理过程;所述微处理器用于实现对FPGA内部寄存器空间的配置和状态查询功能,并可对以太网数据包进行处理;所述外置SRAM存储器用于用于临时存储转发的网络包。
【技术特征摘要】
1.一种基于国产FPGA的实现以太网交换功能系统,其特征在于,包括依次连接的网口物理层模块、现场可编程逻辑FPGA器件、微处理器和外置SRAM存储器;其中所述网口物理层模块用于连接网口和处理网口物理层的数据,并将数据传输至所述现场可编程逻辑FPGA器件;所述现场可编程逻辑FPGA器件用于完成网口MAC的缓冲及网络包的二层/三层转发处理过程;所述微处理器用于实现对FPGA内部寄存器空间的配置和状态查询功能,并可对以太网数据包进行处理;所述外置SRAM存储器用于用于临时存储转发的网络包。2.如权利要求1所述的一种基于国产FPGA的实现以太网交换功能系统,其特征在于,所述网口物理层模块通过GMII接口或RGMII接口连接所述现场可编程逻辑FPGA器件;所述现场可编程逻辑FPGA器件通过SPI接口连接所述微处理器。3.如权利要求1或2所述的一种基于国产FPGA的实现以太网交换功能系统,其特征在于,所述网口物理层模块包括若干以太网隔离变压器和若干以太网PHY芯片;所述以太网隔离变压器一端外接网口、另一端连接所述以太网PHY芯片,所述以太网PHY芯片通过GMII接口或RGMII接口连接现场可编程逻辑FPGA器件。4.如权利要求1所述的一种基于国产FPGA的实现以太网交换功能系统,其特征在于,所述现场可编程逻辑FPGA器件包括网络交换处理单元、SRAM控制器、SPI控制器和DMA控制器,所述网络交换处理单元连接所述网口物理层模块,所述SRAM控制器、SPI控制器和DMA控制器均连接所述网络交换处理单元;所述网络交换处理单元用于完成网口MAC的接入、网络数据包的二层/三层转发处理及配置管理功能,所述SRAM控制器用于完成外部SRAM器件的读写访问接口,所述SPI控制器用于完成微处理器的SPI接口的适配处理以及提供微处理器到所述现场可编程逻辑FPGA器件内部数据空间操作处理的功能,所述DMA控制器用于完成四路虚拟DMA通道的数据队列处理以及提供微处理器与所述现场可编程逻辑FPGA器件之间的高速DMA通道。5.如权利要求4所述的一种基于国产FPGA的实现以太网交换功能系统,其特征在于,所述网络交换处理单元包括若干MACRxQ模块、输入队列调度模块、输出端口查找模块、输出队列调度模块、若干MACTxQ模块、配置管理寄存器模块以及网络交换引擎,所述网络交换引擎包括输入调度模块和输出队列调度模块;所述MACRxQ模块均连接所述网口物理层模块和所述输出队列调度模块,所述输出队列调度模块连接所述输出端口查找模块和所述DMA控制器,所述输出端口查找模块连接所述输出队列调度模块,所述输出队列调度模块连接是MACTxQ模块和所述SRAM控制器;其中所述MACRxQ模块用于完成网口接收数据的MAC层处理,并通过内部FIFO对接收数据进行缓存后,将数据继续送往网络交换引擎的输入调度模块;所述输入队列调度模块用于接收MAC层收到的以太网数据包和微处理器的DMA数据,完成调度接收处理;所述输出端口查找模块用于决定网络数据包的转发路径,过程包括进行网络数据包的分析/处理、检查数据包内容、过滤各种错误的数据包、根据目的MAC或目的IP地址查找对应的转发表、确定数据包的下一跳设备和输出端口以及最后根据需要对数据包进行修改和封装、将数据包发往输出队列调度模块;所述输出队列调度模块用于接收输出端口查找模块处理完成的数据包,并将数据包放入所述SRAM控制器的SRAM缓存区,根据数据包的控制信息将数据包分别送入相应的MAC层发送模块和微处理器的DMA数据通道;所述MACTxQ模块用于通过其内部FIFO对输出队列调度模块送来的网口发送数据进行缓存,并完成MAC层处理,将发送数据送往以太网PHY芯片,完成以太网数据包的转发;所述配置管理寄存器模块用于完成网络交换处理单元的上述各模块功能的配置;所述网络交换引擎、输入调度模块和输出队列调度模块负责输入输出队列...
【专利技术属性】
技术研发人员:胡国浩,伍思廉,李牧,马超,
申请(专利权)人:广州海格通信集团股份有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。