论文部分内容阅读
摘要:目前,千兆以太网技术基本上发展成熟,并逐步应用到局域网当中,取得效果较为良好。针对于此,文章主要结合FPGA技术及相关内容,提出基于FPGA的8端口千兆以太网交换芯片的设计方案,并给出相关实践结果,以供参考。
关键词:FPGA;千兆以太网;交换芯片;设计方案
前言
以太网技术属于当前通信领域及信息领域的核心技术内容,其中,千兆以太网技术完美结合了以太网技术的应用优势,有效解决了传统以太网技术存在的不足之处。千兆以太网技术在原有基础上,对传输介质等组成物质进行了适当优化,如使用8B/10B的编解码方案、采用载波扩展技术以及分组突发技术等。随着千兆以太网技术的不断成熟与改进,以千兆以太网技术为代表的以太网技术俨然成为我国局域网的主流技术。为进一步强化千兆以太网技术的应用效果,研究人员结合FPGA技术及相关内容,对现有千兆以太网交换芯片进行充分优化,以达到提高千兆以太网使用性能的目的。
1千兆以太网交换芯片的工作原理分析
文章所介绍的千兆以太网交换芯片主要按照IEEE802.3标准对现有的8个独立千兆端口之间的MAC帧进行交换与处理。与此同时,该千兆以太网交换芯片可以同时兼容10Mb/s与100Mb/s的MAC帧交换要求。结合以往的经验来看,千兆以太网交换芯片的工作原理主要围绕“学习”与“转发”两个方面进行开展。一般来说,交换芯片内部包含一个MAC地址表,且每一个MAC地址表在存储单元方面,主要以保留比特、老化标志、端口编号、MAC地质以及有效标志等内容为主。根据实践证明,MAC地址表可以有效存储4096条关于MAC地址方面的索引信息。
端口在接收MAC帧之后,可以自动提取MAC帧的源地址。此时交换芯片可以自动找寻上述地址索引信息内容,如果没有找到,系统会自动将源地址与接收到帧端口编号融为一体,并自动形成一条全新的MAC地址索引信息。并在此基础上,自动存储到MAC地址索引内容当中。我們一般将这个过程中称为千兆以太网交换芯片的学习过程,交换芯片通过有效的学习可以及时明确主机地址与端口之间的内部联系,是否存在映射关系等。必要时,交换芯片还会自动记录VLAN与各端口之间的信息内容。
另外,交换芯片从某个端口处接收到转发MAC帧的要求之后,需要提取当前MAC帧的具体内容,如目的地址与信息源等方面的内容。与此同时,交换芯片可以从MAC地址表中寻求到与之相对应的条目信息。并在此基础上,可以顺利得到与目的地址相对应的端口信息以及位置。此时,系统会将MAC帧直接转发到对应的端口位置处。一般来说,我们将这一过程中成为“转发过程”。可以说,千兆网以太网交换芯片通过完成“学习”与“转发”过程,可以进一步提升交换芯片的工作效率,利于网络性能的有效提升。
2千兆以太网交换芯片的关键技术
千兆以太网交换芯片的关键技术在于实现MAC帧的帧头信息提取要求与MAC地址表管理要求。其中,帧头信息提取技术的关键要点在于合理判断所提取的是以太网帧还是802.3帧。另外,还有提取源地址、目的地址等。在此基础上,可以优先计算当前帧的信息内容,并根据具体处理结果,进行合理的协调处理。为进一步实现1000Mb/s的MAC帧交换要求,建议设计人员在实际设计过程中,必须满足千兆以太网的高吞吐量需求、MAC帧地址索引信息以及在特定周期内寻求到MAC地址对应端口号的需求。为进一步实现上述要求,建议设计人员可以选用HASH算法进行处理。
3基于FPGA的千兆以太网交换芯片的设计方案
基于FPGA的千兆以太网交换芯片的设计方案可以从交换芯片组成方面进行优化设计。一般来说,基于FPGA的千兆以太网交换芯片在具体设计过程中,主要以接口帧缓存、MAC帧处理模块、交换模块以及寄存器等成分为主。基于FPGA的千兆以太网交换芯片在双端口的选择方面,主要采用容量为108k字节的双端口SRAM的设计方式。目的在于可以及时接收到MAC帧内容,与此同时,内存管理模块可以利用SRAM存储空间的性能优势,如分配、释放等,进一步实现交换芯片的功能。可以说,通过利用这种交换功能,可以进一步强化以太网交换芯片的应用功能。
在芯片与用户接口处的设计方面,本方案主要采用RS232接口。通过利用RS232接口可以及时了解用户读取寄存器或者芯片的运行状态,能够进一步根据寄存器的运行状态调整芯片的工作模式。其中,MAC帧处理模块在功能方面多呈现出实现MAC帧接收与发送两个功能。其中,GMII/MII口在接收到MAC数据帧之后,MAC帧处理模块会优先处理端口接收到的数据内容,并将缓存到接口帧模块中的信息内容放置到FIFO当中。在此基础上,MAC帧处理模块可以根据内存管理模块,释放内部的缓存空间。再得到内存管理模块的回执命令之后,可以有效提取出帧头。
与此同时,帧头信息分析模块在接收到MAC帧处理模块返执回来的信息之后,会将优先级信息提取出来,如目的地址、源地址以及IP头信息。待提取完这些信息之后,分析模块可以将其转发到学习转发模块当中。待处理结束之后,内部系统可以参照帧头、帧尾等方面的信息内容或者相关指示信号,发送到端口记录模块当中。发送指示信号会根据端口记录信号回执的信息内容,完成信号处Nz作。并在此基础上,内存处理单元会结合信息的具体内容进行合理处理。此时,MAC帧处理单元会根据内存处理单元发来的指令要求释放信号,进一步优化基于FPGA千兆以太网交换芯片的应用功能。
结论:
通过本文的内容叙述,大致可以明确基于FPGA的千兆以太网交换芯片的方案具有一定的可行性。在具体设计过程中,通过利用千兆全双工模式,优化8个端口工作模式。并在此基础上,利用以太网测试仪对端口工作模式进行性能方面的测试。测试结果明确显示在10min中内,8个端口1000Mb/s老化测试的丢包率满足预期控制范围,均小于百万分之一。由此可以证明,基于FPGA的千兆以太网交换芯片可以投入正式使用。目前,基于FPGA的千兆以太网交换芯片已经得到广泛应用,效果显著。
关键词:FPGA;千兆以太网;交换芯片;设计方案
前言
以太网技术属于当前通信领域及信息领域的核心技术内容,其中,千兆以太网技术完美结合了以太网技术的应用优势,有效解决了传统以太网技术存在的不足之处。千兆以太网技术在原有基础上,对传输介质等组成物质进行了适当优化,如使用8B/10B的编解码方案、采用载波扩展技术以及分组突发技术等。随着千兆以太网技术的不断成熟与改进,以千兆以太网技术为代表的以太网技术俨然成为我国局域网的主流技术。为进一步强化千兆以太网技术的应用效果,研究人员结合FPGA技术及相关内容,对现有千兆以太网交换芯片进行充分优化,以达到提高千兆以太网使用性能的目的。
1千兆以太网交换芯片的工作原理分析
文章所介绍的千兆以太网交换芯片主要按照IEEE802.3标准对现有的8个独立千兆端口之间的MAC帧进行交换与处理。与此同时,该千兆以太网交换芯片可以同时兼容10Mb/s与100Mb/s的MAC帧交换要求。结合以往的经验来看,千兆以太网交换芯片的工作原理主要围绕“学习”与“转发”两个方面进行开展。一般来说,交换芯片内部包含一个MAC地址表,且每一个MAC地址表在存储单元方面,主要以保留比特、老化标志、端口编号、MAC地质以及有效标志等内容为主。根据实践证明,MAC地址表可以有效存储4096条关于MAC地址方面的索引信息。
端口在接收MAC帧之后,可以自动提取MAC帧的源地址。此时交换芯片可以自动找寻上述地址索引信息内容,如果没有找到,系统会自动将源地址与接收到帧端口编号融为一体,并自动形成一条全新的MAC地址索引信息。并在此基础上,自动存储到MAC地址索引内容当中。我們一般将这个过程中称为千兆以太网交换芯片的学习过程,交换芯片通过有效的学习可以及时明确主机地址与端口之间的内部联系,是否存在映射关系等。必要时,交换芯片还会自动记录VLAN与各端口之间的信息内容。
另外,交换芯片从某个端口处接收到转发MAC帧的要求之后,需要提取当前MAC帧的具体内容,如目的地址与信息源等方面的内容。与此同时,交换芯片可以从MAC地址表中寻求到与之相对应的条目信息。并在此基础上,可以顺利得到与目的地址相对应的端口信息以及位置。此时,系统会将MAC帧直接转发到对应的端口位置处。一般来说,我们将这一过程中成为“转发过程”。可以说,千兆网以太网交换芯片通过完成“学习”与“转发”过程,可以进一步提升交换芯片的工作效率,利于网络性能的有效提升。
2千兆以太网交换芯片的关键技术
千兆以太网交换芯片的关键技术在于实现MAC帧的帧头信息提取要求与MAC地址表管理要求。其中,帧头信息提取技术的关键要点在于合理判断所提取的是以太网帧还是802.3帧。另外,还有提取源地址、目的地址等。在此基础上,可以优先计算当前帧的信息内容,并根据具体处理结果,进行合理的协调处理。为进一步实现1000Mb/s的MAC帧交换要求,建议设计人员在实际设计过程中,必须满足千兆以太网的高吞吐量需求、MAC帧地址索引信息以及在特定周期内寻求到MAC地址对应端口号的需求。为进一步实现上述要求,建议设计人员可以选用HASH算法进行处理。
3基于FPGA的千兆以太网交换芯片的设计方案
基于FPGA的千兆以太网交换芯片的设计方案可以从交换芯片组成方面进行优化设计。一般来说,基于FPGA的千兆以太网交换芯片在具体设计过程中,主要以接口帧缓存、MAC帧处理模块、交换模块以及寄存器等成分为主。基于FPGA的千兆以太网交换芯片在双端口的选择方面,主要采用容量为108k字节的双端口SRAM的设计方式。目的在于可以及时接收到MAC帧内容,与此同时,内存管理模块可以利用SRAM存储空间的性能优势,如分配、释放等,进一步实现交换芯片的功能。可以说,通过利用这种交换功能,可以进一步强化以太网交换芯片的应用功能。
在芯片与用户接口处的设计方面,本方案主要采用RS232接口。通过利用RS232接口可以及时了解用户读取寄存器或者芯片的运行状态,能够进一步根据寄存器的运行状态调整芯片的工作模式。其中,MAC帧处理模块在功能方面多呈现出实现MAC帧接收与发送两个功能。其中,GMII/MII口在接收到MAC数据帧之后,MAC帧处理模块会优先处理端口接收到的数据内容,并将缓存到接口帧模块中的信息内容放置到FIFO当中。在此基础上,MAC帧处理模块可以根据内存管理模块,释放内部的缓存空间。再得到内存管理模块的回执命令之后,可以有效提取出帧头。
与此同时,帧头信息分析模块在接收到MAC帧处理模块返执回来的信息之后,会将优先级信息提取出来,如目的地址、源地址以及IP头信息。待提取完这些信息之后,分析模块可以将其转发到学习转发模块当中。待处理结束之后,内部系统可以参照帧头、帧尾等方面的信息内容或者相关指示信号,发送到端口记录模块当中。发送指示信号会根据端口记录信号回执的信息内容,完成信号处Nz作。并在此基础上,内存处理单元会结合信息的具体内容进行合理处理。此时,MAC帧处理单元会根据内存处理单元发来的指令要求释放信号,进一步优化基于FPGA千兆以太网交换芯片的应用功能。
结论:
通过本文的内容叙述,大致可以明确基于FPGA的千兆以太网交换芯片的方案具有一定的可行性。在具体设计过程中,通过利用千兆全双工模式,优化8个端口工作模式。并在此基础上,利用以太网测试仪对端口工作模式进行性能方面的测试。测试结果明确显示在10min中内,8个端口1000Mb/s老化测试的丢包率满足预期控制范围,均小于百万分之一。由此可以证明,基于FPGA的千兆以太网交换芯片可以投入正式使用。目前,基于FPGA的千兆以太网交换芯片已经得到广泛应用,效果显著。