基于FPGA的千兆以太网设计.doc
《基于FPGA的千兆以太网设计.doc》由会员分享,可在线阅读,更多相关《基于FPGA的千兆以太网设计.doc(58页珍藏版)》请在三一办公上搜索。
1、精选优质文档-倾情为你奉上摘 要随着信息技术的快速发展,以太网嵌入式设备的应用越来越广泛。为了让以太网各设备之间能公平有效地共享通信媒介,对以太网MAC层数据处理系统的研究显得尤为重要。为此,本文首先分析了以太网及其相关协议的基本内涵,解剖了以太网MAC层通信机制、帧的特性与格式、PHY接口协议、ARP协议以及I2C协议。同时通过对FPGA芯片的了解,确定了基于88E1111芯片和XC3S400FPGA芯片相结合的系统设计方案,支持1000Base-T标准以太网的接入,完成了系统的硬件电路设计。系统设计中,88E1111完成PHY层数据的处理,FPGA则完成MAC层数据的处理,主要包含接收MA
2、C数据帧的校验和解封、待发送数据帧的封装、MAC地址滤波、IP数据包的提取、ARP地址映射等,是系统的核心。在FPGA设计中,遵循自上而下的设计思想,对顶层模块以及PHY接口、MAC核心处理、用户配置、用户数据各功能子模块依次进行设计。关键词:以太网 MAC层 FPGAABSTRACTWith the rapid development of IT,the embedded devices of accessing to Ethernet are used more and more widely.In order to make each device enjoy a fair and ef
3、fective shared communications medium, it is particularly important to research the data processing system of the Ethernet MAC layer.To this end,it is firstly done to analyze the basic connotation of Ethernet and the related agreements,and to dissect the communication mechanisms of the Ethernet MAC l
4、ayer,the characteristics and format of the frame,the PHY interface protocol,the ARP protocol,I2C protocol in the paper.According to the characteristics and working principle of the FPGA chip ,the system design, which supports the accessing of the 1000Base-T Ethernet,is determined based on the combin
5、ation of the 88E1111 PHY chip and XC3S400-4fg456C FPGA chip of Xilinx.Then the hardware circuit design is accomplished by the Cadence development tool.In this system, 88E1111 and FPGA respectively completes the data processing of PHY layer and the data processing of the MAC layer,which mainly consis
6、ts of the calibration and dearchive of the receiving data frames, the encapsulation of the data frames,the MAC address filtering, the extraction of the IP packet,The ARP address mapping,and so on. So FPGA is the core of the system. Following the top-down design conception,the design of FPGA successi
7、vely includes the top-level module,and the submodule of the PHY interface,the MAC core processing,the user configuration,the user data interface.Keywords: Ethernet the MAC layer FPGA专心-专注-专业目 录第一章 绪论1.1研究背景及意义当今,随着互联网技术的迅速发展,采用以太网实现数据采集和控制方面的应用,成为了电子系统设计的热点。以太网具有价格低廉、稳定可靠、传输速度快、传输距离远等特点,以太网技术发展成熟,具有
8、很高的性价比。采用以太网技术的设备,可以通过协议进行数据的传输,不需要进行传输协议转换,使用和维护设备简单。随着技术的发展和各类应用的需求,出现了各种以太网的标准,包括标准以太网(10Mbit/s)、百兆以太网(100Mbit/s)、千兆以太网(1000Mbit/s)和10G(10Gbit/s)以太网1。不同类型的以太网有其各自需要遵循的标准,同时其所用的传输介质以及数据吞吐量也各不相同。千兆以太网技术作为新一代的高速以太网技术,它可以提供1Gbps的通信带宽,采用和传统10M、100M以太网同样的CSMA/CD协议、帧格式和帧长、全/半双工工作方式、流控模式以及布线系统,给用户带来了提高核心
9、网络的有效解决方案,这种解决方案的最大优点是继承了传统以太网技术价格便宜的特点。同时随着电子技术的发展,系统设备正向小型化、集成化、网络化发展。FPGA(Field Programmable GateArray,现场可编程门阵列)以其高密度、大容量、低成本和微功耗等特点,被广泛的应用于各种电子系统的设计和开发中,面向各种技术的应用也越来越广泛2。在其内部加入处理器系统,不仅能够实现一般的逻辑功能设计,同时能够实现一般单片机功能,通过内部逻辑功能连接可以使整体获得优异的性能,并大大减少设计工作。目前,在FPGA中嵌入了许多专用功能的IP Core,还增加了许多硬件核,如存储器、时钟管理和算法功能
10、核,甚至包括了DSP核和嵌入式处理器核等,即能在FPGA中进行DSP和嵌入式处理等关键领域的开发,使得FPGA可实现的功能越来越强。比如世界第一大FPGA生产厂商Xilinx公司推出的最新器件Zynq-7000系列甚至将业界标准ARM双核Cortex-A9 MP Core处理系统嵌入到了可编程芯片中,不但能够实现FPGA的高度灵活性和可扩展性,同时为利用FPGA进行嵌入式开发带来了可能。目前,以PC机平台的千兆以太网的开发已经相对成熟,而近些年来随着FPGA、DSP和ARM等嵌入式芯片的处理能力的提升,基于这些芯片的千兆以太网的开发则处于起步阶段3。在这类系统的实现中,千兆以太网的MAC子层作
11、为硬核集成在芯片中通过编程来实现,不仅有效降低了系统的成本,实现高效的传输性能,而且可以缩小PCB制板的大小。因此研究基于FPGA的千兆以太网技术,在大吞吐量数据传输通道、实时数据服务和实时信号处理等方面都将有着广泛的应用前景和潜在的经济价值,更进一步地对于千兆以太网在嵌入式系统中的应用,都具有很好的推进作用和实际意义。1.2国内外研究现状近些年来,根据一些国内外公开发表的文献,在基于FPGA的千兆以太网的数据传输的研究与应用方面,国内外的各机构已经有了一定的研究成果。南京信息工程大学王胜杰和王建的基于千兆以太网的PC机与FPGA的高速数据传输,使用WinPcap自定义通信帧格式,实现一种PC
12、机与FPGA之间双向高速数据传输的方法。但该研究绕过了TCP协议和IP协议,只涉及到链路层和物理层,与标准的千兆以太网接入系统无法很好的结合,只能面向特殊的应用。在Xilinx官方公布的文档xapp1043中,Xilinx公司与Treck公司合作,实现了高效的Treck商业化以太网协议栈,可以实现目前以太网上常用的几乎所有的协议4。其文档测试的结果表明,在扩展的MTU大小达到9000Byte的模式下,可以实现惊人的922Mbps的纯网络速度。但该实现是基于Treck商业版的TCP/IP协议栈,且目前Xilinx公司已经去掉与Treck的合作,并不适合普通以太网的应用。尽管Altera公司现在能
13、提供关键通信协议的FPGA IP支持,但是集成以太网协议的IP核只可以在Altera的一些高端FPGA上实现,如Stratix系列5。对于低端的FPGA,如FLEX系列仍然不能实现。尽管作为Altera IP核合作伙伴之一的IXXAT提供工业以太网开发套件,但费用是相当高的,近乎上百万美元。因此,自行开发出合理的协议堆栈、MAC、TCP/IP协议堆栈以及接口应用将具有很重大的意义和经济价值。综上所述,目前国内外实现的千兆以太网主要以单芯片或单系统环境,趋向于以底层链路层以下的协议为基本设计起点完成千兆以太网的数据传输功能,且很多研究与应用都是面向专用的场合,并不适合普通用户的开发。面对FPGA
14、的快速发展,在基于片内处理器的千兆以太网高速数据传输还很少,且使用处理器实现网络传输的TCP/IP协议正好与目前大量使用的以太网网络能快速兼容地结合,可以很容易用于商业产品的生成。因此,本课题的研究,对于千兆以太网在嵌入式高速数据网络通信技术的实际应用,以及进一步在其他嵌入式系统中的应用,都具有很好的应用前景和潜在的经济价值。1.3论文内容和论文组织结构安排本文在章节上一共分为五章,论文的组织结构安排如下:第一章为绪论部分,主要介绍了FPGA中接入千兆以太网技术的研究背景以及目前国内外的研究现状,以及本论文的研究内容和论文安排。第二章主要阐述了以太网基础理论的研究第三章主要阐述以太网数据传输硬
15、件部分设计与实现。第四章主要阐述以太网数据传输软件部分设计与实现。第五章主要阐述了本文的总结和研究展望,对本文进行总结,并在设计方法和性能提升上提出一些改进的方法。第二章 千兆以太网理论基础本章首先介绍了以太网的发展历程和千兆以太网的标准内容,按照标准的分层原理介绍了其MAC层、GMII接口层和PHY层的实现原理,然后提出了一种基于FPGA的嵌入式千兆以太网的实现架构,以使用底层PHY硬件芯片实现MAC功能和使用LwIP嵌入式网络协议栈实现上层TCP/IP通信协议的构想来说明实现千兆以太网的通信系统平台的基本架构。2.1千兆以太网标准千兆以太网是建立在以太网标准基础之上的技术,它和现在已经大量
16、使用的标准以太网(10Mbps)以及百兆以太网(100Mbps)技术一样,都使用以太网所定义的技术规范,比如:CSMA/CD协议、以太网帧、全双工、流量控制以及IEEE802.3标准中所定义的管理对象等6。同时,千兆以太网作为以太网络的一个组成部分,还支持流量管理技术,使得它提供的服务质量能得到保证,这些技术规范包括IEEE802.1P第二层优先级、第三层优先级的QoS编码位、特别服务和资源预留协议(RSVP)。目前,千兆以太网已经发展成为主流网络技术,大量的网络工作人员和普通用户从中受益不浅.以太网的官方标准为IEEE802.3,IEEE802.3工作组有数百名工作人员从事千兆以太网标准的制
17、定,他们来自十几家生产网络产品的公司,力图将以太网的速度提高到1000Mbps以上。1996年7月,IEEE成立了802.3z千兆以太网特别工作组,这一工作组负责开发1000Mbps千兆以太网标准。1997年1月,通过了IEEE802.3z第一版草案;1997年2月3日,IEEE确定了千兆以太网的核心技术,1998年6月正式通过千兆以太网标准IEEE802.3z。1999年6月,正式通过了IEEE802.3ab标准(即1000Base-T),至此可以将平常使用的双绞线用于千兆以太网中。图2.1给出了IEEE802.3z中千兆位技术层次模型和OSI7层模型之间的相互关系。图2.1 802.3z1
18、0/100/1000MbpsDTE层次模型IEEE802.3z标准任务组的首要目标之一就是保持与现在的10Mbps和100Mbps标准的兼容性。从图2.1可以看出,在结构上百/千兆以太网的差别并不大,仅从百兆以太网的4位并行MII接口变为8位并行的GMII接口;二者的自动协商接口有所不同,百兆以太网中的协商功能位于PMD子层之下,而千兆以太网则融合在PCS子层之中;与十兆以太网相比,百/千兆以太网都使用并行的介质无关接口取代十兆以太网的串行AUI接口7。另外,千兆以太网物理介质接入子层PMA的上下界面分别为10比特的并行和串行接口,因此PMA需完成串/并接口间的转换。根据千兆以太网标准的定义,
19、千兆以太网可以支持多种连接媒体和大范围的连接距离。按照传输介质的不同,千兆以太网可分为以下4种:1. 1000BASE-LX:基于1300nm的单模光纤标准,使用8B/10B编解码方式,最大传输距离为5000米。2. 1000BASE-SX:基于780nm的多模光纤标准,使用8B/10B编解码方式,最大传输距离为300米到500米。3. 1000BASE-CX:基于铜缆的标准,使用8B/10B编解码方式,最大传输距离为25米。4. 1000BASE-T:使用非屏蔽双绞线,使用1000BASE-T铜物理层Copper PHY编码解码方式,最大传输距离为100米。2.2介质访问控制(MAC)2.2
20、.1半双工MAC传统以太网总是使用半双工MAC。半双工系统双向通信的效率受到半双工信道上通信方向快速变化的影响。在以太网环境中,每个站可以迅速判断是否可以发送帧,即半双工LAN利用了每个站的分布处理能力。然而,将以太网MAC算法扩展到支持千兆速率会阻碍半双工模式下的有效操作。当仲裁时间(最坏情况下等于往返延时)达到或超过一个典型帧的传送时间时,算法的效率就有问题了。MAC算法的目的是为了使站能够确定谁能在一个共享物理信道上传送数据8。以太网使用了一个分布式算法称为载波侦听、带冲突检测的多路访问(CSMA/CD:Carrier Sense,Multiple Access/Collision De
21、tect)。图2.2显示了该算法的一个简化流程图。图2.2以太网MAC流程(传统半双工操作)半双工模式下的帧传送:在发送数据前,它首先要监听物理信道是否处于忙状态,只有侦听到信道上没有其他的站在使用时,才会发送帧。每次传送结束后,站必须等待一段时间(一个帧间隙,Interframe Gap),使物理信道有一段稳定时间后,站才开始其传送。如果同时有多个站的队列中有待发帧,在经过载波侦听和帧间隙后,每个站都试图发送,结果就会产生冲突。当发生冲突时,所有相关的站都继续发送一段时间以保证让所有的站都能发现冲突,这个过程叫堵塞。堵塞后,每个站需要等待一个随机时间,这个过程叫后退。后退以后,站从头开始处理
22、并尝试重新发送帧。但是,在千兆以太网中会碰到一个问题。在10Mbps和100Mbps以太网系统中,最小帧长度被设置成等于网络最大往返传播延时,即最小帧长和时隙是相同的值:512比特(64字节),不包括前导码和物理层负载9。由于512比特时间是51.2s,根据10Mbps以太网使用的电缆类型,其布线长度可以达到2到3km这一量级。如果保持512比特最小帧长而不做其他算法改变的话,将速率从10Mbps提高到100Mbps再到1000Mbps,为了使CSMA/CD正常工作,网络的覆盖范围将下降到200m(100Mbps)和20m(1000Mbps)的量级。这仅仅能在一个配线间内互连设备,对于实际应用
23、的这种网络尺寸是不切实际的。由于升级到千兆网络以太网需要支持可实用的网络规模,同时出于维持最小帧长向后兼容性的考虑,必须对MAC算法做出改进。在IEEE802.3z标准中引入了载波扩展和帧突发的概念用来解决这个问题,这个解决方案有如下三个基本内容:(1) 从软件接口(设备驱动)角度看,仍保持512比特最小的帧。在移植到千兆速率时,这可避免修改驱动程序设计和现有的协议栈。(2) 修改MAC算法,使用一个称为载波扩展的机制,从物理信道角度看帧已被人为扩展了,短帧看起来变长了。这使千兆以太网能继续支持相同的布线拓扑(从配线间起半径100m),而不增加帧数据部分的最小长度。(3) 为短帧传送方提供可供
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 千兆 以太网 设计

链接地址:https://www.31ppt.com/p-2767946.html