《通信工程毕业设计(论文)基于FGPA的万兆以太网驱动实现.doc》由会员分享,可在线阅读,更多相关《通信工程毕业设计(论文)基于FGPA的万兆以太网驱动实现.doc(80页珍藏版)》请在三一办公上搜索。
1、基于FGPA的万兆以太网驱动实现学 生: 学 号: 指导老师: 专 业: 通信工程 完成年月:2012年06月 目录摘要4Abstract5第一章 研究背景6第二章 研究现状与研究内容72.1 研究现状72.2 研究内容9第三章 系统原理113.1 SFP光模块113.2 SFI总线133.3 AEL2005万兆以太网芯片173.3.1 AEL2005的介绍173.3.2 AEL2005的应用173.3.3 AEL2005功能介绍183.3.4 片上微型控制器193.3.5 时钟模式213.4 XGMII万兆以太网接口243.4.1 MII接口243.4.2 GMII接口253.4.3 SGM
2、II与XGMII接口263.5 MDIO总线273.6 Wishbone总线283.6.1背景介绍283.6.2 Wishbone总线的整体结构293.6.3 Wishbone的信号30第四章 FPGA设计平台344.1 FPGA的概述344.2 FPGA发展背景344.3 FPGA的基本特点354.4 FPGA的应用364.5 Xilinx公司ISE10.1软件介绍37第五章 万兆以太网驱动设计405.1 XAUI IP 设计405.1.1 XAUI IP介绍405.1.2 Xilinx XAUI IP 生成445.2 MDIO 接口设计455.2.1 MDIO接口框图455.2.2 Wis
3、hbone接口信号定义465.2.3 MDIO接口定义(外部接口)475.2.4 MDIO内部寄存器定义475.2.5 MDIO访问方式495.2.6 MDIO接口工作流程505.3 AEL2005驱动编写515.3.1 AEL2005芯片MDIO初始化515.3.2 AEL2005控制逻辑54第六章 实验结果仿真与测试576.1 MDIO接口仿真576.1.1 编写testbench文件576.1.2 MDIO寄存器操作时序576.2 ChipScope数据收发测试59第七章 总结与展望617.1 本文总结617.2 研究展望61致谢63参考文献64附录65附录一 文献翻译65英文原文65中
4、文翻译72摘要自从世界上最早的计算机与1946年诞生于美国宾夕法尼亚大学,至今已有65年的历史。伴随着电脑行业蓬勃发展的是对于网络需求的迅猛增长,网络的概念应运而生,而以太网则是网络运用的重中之重。以太网包括标准的以太网(10Mbit/s)、快速以太网(100Mbit/s)和10G(10Gbit/s)以太网,采用的是CSMA/CD访问控制法,它们都符合IEEE802.3。随着计算机数量的逐年增长,以及网络应用服务的不断多样化,用户对于网络带宽的需求不断地提高。早期的标准以太网和所谓的快速以太网早已不能满足用户对于网络带宽的要求。因此,我们需要拥有更高数据传送能力的网络来满足与日俱增的用户需求,
5、万兆以太网技术就是解决这个难题的网络技术。万兆以太网提供了更加丰富的带宽和处理能力,能够有效地节约用户在链路上的投资,并保持以太网一贯的兼容性、简单易用和升级容易的特点。由于万兆以太网是网络发展的必然的发展方向,所以对于万兆以太网络的研究是必不可少的。为了改善信号的传输能力以及加大信道的信道容量,所以在整个实验系统中首先使用了SFP光模块,为了对光模块转换过来的数字信号进行处理接着又使用了AEL2005这样一块支持万兆传输的以太网芯片进行一系列的数字编码。为了向MAC(Media Access Control)传送数据,我们在MAC这一端使用了XGMII这样的一个10Gb独立于媒体的接口。然而
6、为了使AEL2005这块万兆以太网芯片可以正常的运行,就必须要对它进行必要的初始化设置和一些控制。为了达到对AEL2005的有效初始化和控制,系统中使用了MDIO(Management Data InputOutput)管理数据输入输出这样的一种控制信号。系统实现的方法是使用了FPGA(FieldProgrammable Gate Array),即现场可编程门阵列。在后期的实验成果验证的过程中,实验对FPGA代码进行了仿真,以及对整个系统进行了包收发的效率测试。通过对于系统整体的测试,基本实现了万兆以太网的驱动。关键词:万兆以太网、FPGA、MDIO控制数据输入输出、驱动AbstractEth
7、ernet is a local-area network (LAN) architecture developed by Xerox Corporation in cooperation with DEC and Intel in 1976. Ethernet uses a bus or star topology and supports data transfer rates of 10 Mbps. The Ethernet specification served as the basis for the IEEE 802.3 standard, which specifies the
8、 physical and lower software layers. Ethernet uses the CSMA/CD access method to handle simultaneous demands. It is one of the most widely implemented LAN standards. As to design a 10 G Ethernet, the system use a 10G Ethernet chip called AEL2005. So next, there is a problem that how to drive the 10G
9、Ethernet chip. As to drive the chip, the system uses a management data inputoutput signal. Management Data Input/Output, or MDIO, is a bus structure defined for the Ethernet protocol. MDIO is defined to connect Media Access Control (MAC) devices with PHY devices, providing a standardized access meth
10、od to internal registers of PHY devices. As to design the MDIO signal, all the systems design was based on FPGA. In order to test and verify, simulation and packet sand/receive test were been done. In the end the system makes the 10G Ethernet a truth.Key words: 10G Ethernet, MDIO, FPGA, AEL2005, dri
11、ver第一章 研究背景 世界上的第一台电脑是在1946年,诞生于美国宾夕法尼亚大学。至今已经有了65年的历史。随着晶体管技术的迅速发展,电脑的体积逐年减小。65年的时间,从一个国家只有几台超级计算机的曾经到几乎是每个人都有一台电脑的如今,电脑的普及改变了全世界。有了电脑,于是人们便想要将电脑互联,网络的概念由此而生。现在的世界又被称之为数字的世界,随着与日俱增的数字流量以及日新月异的网络服务,人们对于网络质量的要求越来愈高。近几年来,随着网络电视、网络游戏的兴起,在网络需求中,首当其冲的便是网络的带宽以及网络的传输速度。在1980年,以太网的概念首先由Xerox(施乐)公司提出,由DEC、In
12、tel和Xerox三家公司联合开发成为一个标准。以太网是应用最为广泛的局域网,包括标准的以太网(10Mb/s)、快速以太网(100Mb/s)和10G(10Gbit/s)以太网,采用的是CSMA/CD访问控制法,它们都符合IEEE802.3。以太网不是一种具体的网络,而是一种技术规范。该标准定义了在局域网(LAN)中采用的电缆类型和信号处理方法。以太网在互联设备之间以10-100Mbps的速率传送信息包,双绞线电缆10 Base T以太网由于其低成本、高可靠性以及10Mbps的速率而成为应用最为广泛的以太网技术。直扩的无线以太网可达11Mbps,许多制造供应商提供的产品都能采用通用的软件协议进行
13、通信,开放性最好。1987年,我们中国第一封“跨越长城,走向世界”的电子邮件发出。1994年4月20日,我们正式介入国际互联网,但是介入的一条线是有Sprint公司提供的一台64k的数据线。现状,我们的出口带狂已经在53个G以上,应该说这个数量已经有了百万倍的增长。现在CN域名的数量已经超过60万个,当时我们的CN域名服务器还放在联邦德国的卡尔斯莫大学,因为我们但是没有自己的域名服务器,后来才把服务器搬回国内。现在我们的IP 地址总量已经超过了5000万。从数据上我们可以看到,网络用户如此之多,对应的网络数据也是非常之巨大,这对于网络的带宽已经网络数据的传输速率都是一种挑战。因此,对于万兆以太
14、网的研究势在必行。第二章 研究现状与研究内容2.1 研究现状 当今世界科技技术的前提下,万兆以太网的技术十分适用于企业和电信运营商网络建立交换机到交换机连接(园区网Local aero network),最近万兆以太网将支持交换机与服务器之间的互连(数据中心data center)。思科、华为等公司提出的万兆以太网解决方案可以通过利用现在已经拥有的光纤网络基本设备来施保护客户的投资,扩大网络的覆盖范围,并且建立端到端以太网连接。由于万兆以太网能够与10/100M或千兆位以太网进行没有缝隙的集成,因而万兆以太网符合当今网络使用的基本设计准则。 由此我们可以看出现在的万兆以太网已经拥有了具体的应用
15、,然而它所运用的基础网络基本上还是光纤网络,也就是说,现在已经布置的光纤网络能够非常容易的过渡到万兆以太网网络来进行应用。随着2004年3月基于同轴电缆传输的万兆以太网标准IEEE802.3ak的推出,基于此标准的网络设备和应用已然被开发出来。但时这个应用受其传输距离和介质的限制,此应用主要为机房内距离不超过15米的以太网交换机和服务器提供服务。距离大规模应用有还有一定的距离。对于万兆以太网的研究,由于人们对于网络带宽和传输速率的要求,在许多年前已经兴起。而国内外的研究方式也各有不同:10G以太网于2002年7月在IEEE通过。10G以太网包括10GBASEX、10GBASER、10GBASE
16、W以及基于铜缆的10GBASET等(2006年通过)。10GBASEX使用一种特紧凑包装,含有1个较简单的WDM器件、4个接收器和4个在1300nm波长附近以大约25nm为间隔工作的激光器,每一对发送器/接收器在3.125Gbit/s速度(数据流速度为2.5Gbit/s)下工作。10GBASER是一种使用64B/66B编码(不是在千兆以太网中所用的8B/10B)的串行接口,数据流为10.000Gbit/s,因而产生的时钟速率为10.3Gbit/s。成都电子科技大学在基于FPGA 的万兆以太网接口的设计与实现一文中介绍了IEEE802.3ae 标准中万兆以太网物理层及媒质接入控制子层的相关协议。
17、以10GBASE-R 应用物理环境为例,阐述了万兆以太网接口各个单元模块的功能和设计实现方法。FPGA仿真结果表明,该万兆以太网接口可以实现以太网之间的万兆接入,对以太网的应用空间和性能提升有着重大的意义1。 现在流行的万兆以太网口是符合IEEE802.3ae协议规定的10Gb/s的以太网接口模块,它涉及到了10GE的MAC层和PHY层,并通过媒质接入控制器(MAC) 实现了数据链路层和物理层之间的数据交换及路由器到万兆以太网的物理连接。 图1 万兆以太网接口总体框图2.2 研究内容 本论文是在基于FPGA的万兆以太网驱动实现设计之后而编写的。首先整个万兆以太网系统是基于ML605这一块实验板
18、而实现的。系统框架如下图所示: 图2 系统框架注:1. FPGA 通过XAUI接口与AEL2005模块相连。 2. 系统需要逻辑及8051核软硬件结合控制实现三种自环的操作:Line Loop、PHY XS Line Loop及FPGA XGMII Loop。 3. 上图中FMC_HPC模块对应ML605的J64模块,且需要的时钟频率为156.25MHz。与之相对应的实物图如下所示:图3 系统实物图注:其中采用的是两根多模光纤与Smartbits数据通信测试仪的XFP模块相连。FMC_HPC配置的是GTX Bank112中GTXE1_X0Y0、GTXE1_X0Y1、GTXE1_X0Y2、GTX
19、E1_X0Y3,并由管脚MGTREFCLK0P_112、MGTREFCLK0N_112提供156.25MHz的时钟频率: 图4 本系统中Virtex-6 GTX的配置 第三章 系统原理3.1 SFP光模块SFP既Small Form Pluggable,SFP的封装为热插拔小封装模块,现在的科技水平可以使SFP的最高传输速率达到10G,多采用LC光纤接口。从简单意义上来说SFP是GBIC( Gigabit Interface Converter)的升级版本。SFP模块的体积比GBIC模块的体积减小了一半,同时SFP模块可以实现:在相同的面板上,配置多出一倍、甚至一倍以上的端口数量。SFP模块的
20、其他功能基本和GBIC一致。因此,有些交换机厂商称SFP模块为小型化的GBIC(MINI-GBIC) SFP光模块的构成有: 激光器(包括发射器TOSA跟接收器ROSA)和线路板 IC 及外部配件构成,外部配件则有外壳、底座、PCBA、拉环、卡扣、解锁件、橡胶塞组成,为了辨认方便一般以拉环的颜色辨别模块的参数类型。 GBIC图样 SFP图样图5 GBIC与SFP图样10G模块经历了从300Pin,XENPAK,X2,XFP的发展,最终实现了可以使用用与SFP模块一样尺寸大小的器件来传输10G的信号,这就是SFP+。SFP凭借其小型化、低成本等优势,满足了数据传送设备对于光模块高密度的需求。自从
21、2002年推行了SFP模块标准以来,到了2010年,SFP光模块已经取代了XFP,并成为10G 市场的主流。 以下是SFP以及SFP+光模块的特点:SFP+光模块优点: 1、SFP+具有比X2和XFP封装更紧凑的外形尺寸(与SFP尺寸相同); 2、可以和同类型的XFP,X2,XENPAK直接连接; 3、成本比XFP,X2,XENPAK产品低。 SFP+和SFP的区别: 1、 SFP 和SFP+ 外观尺寸相同; 2、 SFP协议规范:IEEE802.3、SFF-8472 ; 3、 SFP+ 协议规范:IEEE 802.3ae、SFF-8431、SFF-8432。SFP+ 和XFP 的区别: 1、
22、 SFP+和XFP 都是10G 的光纤模块,且与其它类型的10G模块可以互通; 2、 SFP+比XFP 外观尺寸更小; 3、 因为体积更小SFP+将信号调制功能,串行/解串器、MAC、时钟和数据恢复 (CDR),以及电子色散补偿(EDC)功能从模块移到主板卡上; 4、 XFP 遵从的协议:XFP MSA协议; 5、 SFP+遵从的协议:IEEE 802.3ae、SFF-8431、SFF-8432; 6、 SFP+是更主流的设计。 在本实验系统中,使用了SFP光模块,主要的作用是实现了光电转换。该模块由光电子器件、功能电路和光接口等组成,光电子器包括发射和接受两部分。发射部分是: 输入一定码率的
23、电信号经内部的驱动芯片处理后驱动半导体激光器 (LD)或发光二极管(LED)发射出相应速率的调制光信号,其内部带 有光功率自动控制电路,使输出的光信号功率保持稳定。接收部分是: 一定码率的光信号输入模块后由光探测二极管转换为电信号。经前置 放大器后输出相应码率的电信号,输出的信号一般为PECL电平。同时 在输入光功率小于一定值后会输出一个告警信号。由此,将输入的光 信号转换成数字信号,通过SFI总线送入AEL2005芯片。 图6 SFP收发模块3.2 SFI总线SFI5即SerDes Framer Interface Level 5的意思。它的物理结构入下图: 图7 SFI物理结构SFI5的特
24、点:1. 支持SONET OC-768和SDH STM-256,最大带宽50Gbps,最大有效带宽40Gbps。(包含 25% FEC头部载荷)2. SFI拥有16bit总线宽度,单线的最大速率为3.125Gbps。3. SFI拥有独立的Deskew(自动偏移校正)通道。SFI5总线结构如下图所示 图8 SFI总线结构各个接口信号如下所示:1. RXDATA15:0:数据接收通道。16位宽度,采用CML差分电平,每个通道的最小数据 速率为2.488Gbps,最大数据速率为3.125Gbps。RXDATA15:0采用循环传送方式, RXDATA15上接收到是第一个字节,RXDATA0上收到的是最
25、后一个字节。2. RXDSC:接收通道Deskew测试信号。采用CML差分电平,每个通道的最小数据速率为 2.488Gbps,最大数据速率为3.125Gbps。3. RXDCK:接收通道随路时钟。为RXDATA和RXDSC信号提供参考时钟。最小时钟频率为 数据通道波特率的四分之一。驱动器必须提供该信号,接收测器件可以不使用。4. RXREFCK:接收参考时钟,为接收端口提供参考时序。频率为数据通道波特率的四分之 对于SerDes和FEC器件,此信号是必须的,但是对于FRAMER器件,可以没有此时钟。 5. RXS:接收状态指示信号。RXS=”0”表示空闲;RXS=”1”表示告警;RXS为LVC
26、MOS异 步信号。告警时表示光器件没有RXDCK和RXDATA输出。6. TXDATA15:0:数据发送通道。16位宽度,采用CML差分电平,每个通道的最小数据 速率为2.488Gbps,最大数据速率为3.125Gbps。TXDATA15:0采用循环传送方式, TXDATA15上发送的是第一个字节,TXDATA0上发送的是最后一个字节。7. TXDSC:发送通道Deskew测试信号。采用CML差分电平,每个通道的最小数据速率为 2.488Gbps,最大数据速率为3.125Gbps。8. TXDCK:发送通道随路时钟。为TXDATA和TXDSC信号提供参考时钟。最小时钟频率为 数据通道波特率的四
27、分之一。驱动器侧必须提供该信号,接收测器件可以不使用。9. TXCKSRC:发送通道时钟源信号。为TXDATA,TXDSC和TXDCK提供时序参考。频率与TXDCK 相同。TXCKSRC由TXREFCK生成。如果接收侧没有提供TXCKSRC信号,驱动侧的该信号 必须接外部时钟源。10. TXREFCK:发送通道参考时钟。为FRAMER、FEC、SERDES器件提哦能够提供参考时钟。 时钟频率与TXDCK相同。发送链路中必须有一个器件的TXREFCK管脚接外部同步时钟。SFI目前有两种规格,处理流程大同小异。以目前使用最多的支持10 Gb/s数据带宽的SFI-4为例来说明SFI的原理。SFI-4
28、,分为接收端和发送端,是点对点通信。下面分别说明基本协议以及收发数据的处理过程。 1基本协议 (1) 收发两个数据方向完全独立。 (2) 16位数据总线。数据为SDR模式,电平为LVDS IO标准,属于源同步时钟 设计。 (3) 时钟沿对齐同一方向的数据沿。 图9 SFI模型2数据处理 对于数据通道来说,时钟沿与数据沿对齐,这对相位的调整有至关重要的影响。在SFL-4接口中,数据处理相对来说比较简单。在接收方向,首先调整好数据和时钟的相位关系,使时钟上升沿位于数据有效窗口的中间位置即可;而在发送方向,根据对接芯片的相位要求,送出时钟沿对齐同一方向的数据沿,这就是SFI-4原理。值得注意的是,S
29、FI-4协议的所有信息都在时钟沿对齐同一方向的数据沿中。在应用中,数据和时钟是源同步且沿对齐的,下图所示为时钟上升沿对齐收发数据沿的情况。 图10 SFI-4接口数据和时钟上升沿对齐数据沿的情况3.3 AEL2005万兆以太网芯片3.3.1 AEL2005的介绍AEL2005是一个双向通道的万兆以太网光模块收发器,它包含有集成的Electronic Dispersion Compensation(电子色散补偿电路),该电路应用在10GBASE-LRM光模块中。该器件还拥有一个特殊的SGMII模式,这个模式允许对SFP模块进行数据传输速率为1GBPS的操作。同时,AEL2005光模块将高性能和低
30、功耗两者完美的结合起来。AEL2005光模块的收发器接收器与发送器功能模块和电子色散补偿电路模块,集成时钟驱动器,多回路和信号的侧线路、侧系统都集成在一块芯片之上了。AEL2005的高速度、高集成使之成为基于XAUI传输的系统设计的不二之选。它拥有一个灵活的片内时钟的综合能力,这个标准可以用于操作156.25兆赫或159.275兆赫的晶体振荡器,或者系统的时钟可以来源于一个低成本的50兆赫的LVPECL或者一个CMOS时钟源。CML串口支持一个数据速率为10.3125Gbps 用来数据通信和一个数据速率为10.51875Gbps的接口用来数据存储。3.3.2 AEL2005的应用AEL2005
31、适合应用于高速万兆多模光纤和XAUI或SFP+模块的线路卡上。AEL2005的应用不需要一个电子色散补偿电路,当LAN/WAN的请求可以到达AEL2005时,它可以自行提供一个有效的解决方案。 图11 SFP使用在AEL2005上的图示 图12 AEL2005使用在光模块之中3.3.3 AEL2005功能介绍如下图所示是AEL2005的顶层视图,它列出了AEL2005的一些基本接口。高速数据通道(包括10Gbps的光模块接口和XAUI MAC接口)显示在顶层视图上的虚线之上,调试接口显示在虚线之下。图13 AEL2005传输接口如下图所示,是AEL2005的总的程序流程图,其中传送通路包括四个
32、数据传输速率为3.125Gbps的接收器、编码反编码逻辑模块、一个FIFO接口、一个输出编码器和一个10Gbps的传输时钟驱动。接受通路包括EDC(电子色散补偿电路)模块、10Gbps接收器,反编码逻辑模块,FIFO接口、平行输出编码逻辑模块和4个数据传输速率为3.125Gbps的发送器。同时AEL2005还涵盖了一个MDIO(管理数据输入输出)接口用于控制和调试AEL2005、一个I2C总线接口用来与存储器的通信以及一个用于数据接口的环回模式。与此同时,AEL2005也可以实现多种环回路径,一次用于测试。图14 AEL2005模块示意图3.3.4 片上微型控制器片上控制器包含一个专用的微型控
33、制器(简称uC),它是用于芯片内部的管理任务并且一般来说它是不能用于用户请求的。如下图所示为UC的模块示意图,图15 内置微型控制器如图所示,微型控制器包括一个启动内存和一个除了程序寄存器文件以外的嵌入式存储器。启动内存包含一个硬件启动程序,这个程序只要一旦打开电源,AEL2005便可以配置为自动的从外部寄存器加载额外的固件到嵌入式的随机存储器。这个新加载的固件随后马上执行SRAM,这个启动寄存器可以作为一个临时堆栈空间来使用。同时,16个程序寄存器可供该固件使用。微型控制器中的所有状态信息都可以从AEL2005芯片的MDIO端口来进行访问。这个操作包括检查和改变引导程序、SRAM内的内容和所
34、有微型控制器中的程序寄存器。微控模块中的芯片可以到达访问包括I2C总线在内的每一个SPI和MDIO寄存器。正因为如此,微控芯片可以用于执行以下各种任务,如:1. 修补配置寄存器(超出C000-C07F范围)2. 监视状态寄存器,并且采取纠正措施(如EDC参数优化)由微型控制器发出的所有MDIO/SPI/I2C访问都通过一个仲裁模块,以此来确保他们可以同时进行MDIO/SPI端口,而不会给未来的访问造成任何的冲突。那么,微型控制器是如何进行器件配置的呢?在默认情况下,高电平复位后,微型控制器开始工作。它接下来的操作时:由两个配置寄存器(映射到MDIO寄存器1.CO4A和1.CO4B)这两个寄存器
35、可能会被通过I2C总线或通过MDIO的写操作来改变。为了启动微型控制器1.C04A.15 应该被置为 0 这个操作将会初始化启动步骤。同时,硬件的启动程序会通过使用跳接参数1.C04B、1.C04A.7:4从外部EEPROM上获取额外的指令写入它的片上SRAM。当这些程序都结束了,程序流将会转移到新的加载程序。所有的片上微型控制器的内部状态都可以通过MDIO寄存器来达到。但是,这些寄存器只有在uC可用(1.C04A.15)时才可达。AEL2005的程序寄存器包含单签的指令指针。当微型控制器正在运行,且正在通过MDIO接口进行读操作的时候,程序寄存器的值应该定期的做更改。PAUSE和SSTEP位
36、可以被用来将微型控制器设置为一个但不操作模式。当暂停位被置为1的时候,停止执行固件。随后,用户可以通过将整数n写到SSTEP寄存器来进行更多的指令操作。一旦程序停止执行了,PAUSED位就会被置为1。为了达到调试的目的,微型控制器也可以被配置为立即进入单步(暂停)模式。这是通过在启动微型控制器之前,将寄存器1.C04A.141设置为1,从而来实现的。在AEL2005芯片上的微型控制器的固件也可以从MDIO接口或者利用在外部微型控制器上的SPI接口直接地下载到驱动之中。3.3.5 时钟模式AEL2005芯片可以支持多种不同的时钟模式,以此来使LAN/SAN或LAN模块可以得以实现。同时AEL20
37、05也允许使用一个低成本的50MHz晶体振荡器。1. 基本的LAN时钟 AEL2005局域网的基本时钟配置如下图所示。它所有的主要模块包括CDR电路模块以及提供数据传输速率为10Gbps和XAUI接口的发射器,同时主要模块的主频是由外部时钟CMU_REF来提供的。在核心逻辑功能中的频率调整功能可以添加或删除IEEE802.3aeI特性来兼容数据和参考时钟频率略有差异的情况。在频率为159.375兆赫的万兆光纤通信频道中,CMU_ERF应该被提供156.25MHz的频率来实现万兆通信或者执行SNA操作。图16 基本的局域网时钟模式2. 基本的SAN时钟在AEL2005芯片上的板载时钟合成器可以用
38、于实现双万兆以太网或者是万兆光纤通道光模块。在这种情况下,时钟合成器将要在两个时钟频率(156.25MHz到159.375Mhz之间)转换时占用2%的时钟频率差。图17 基本的SAN时钟模式图18 启用时钟同步的SAN时钟模式3. 50MHz时钟频率在AEL2005芯片上的板载时钟合成器也可以用于实现万兆以太网或是以一个低成本50MHz晶体振荡器为基础的万兆光纤通道模块。下面的图片为50MHz频率下的LAN,SAN和SGMII操作示意图。图19 50MHz局域网时钟模式图20 50MHz的存储域网络时钟模式图21 50MHz千兆以太网接口时钟模式 3.4 XGMII万兆以太网接口 3.4.1
39、MII接口MII即媒体独立接口,也叫介质无关接口。它是IEEE-802.3定义的以太网行业标准。它包括一个数据接口,以及一个MAC和PHY之间的管理接口(图22)。数据接口包括分别用于发送器和接收器的两条独立信道。每条信道都有自己的数据、时钟和控制信号。MII数据接口总共需16个信号。管理接口是个双信号接口:一个是时钟信号,另一个是数据信号。通过管理接口,上层能监视和控制PHY。图22 XGMII接口示意图MII标准接口 用于连接Fast Ethernet MAC-block与PHY。“介质无关”的意义在于不需要对MAC硬件重新设计或替换的情况下,任何类型的PHY设备都可以正常工作。在其他速率
40、下工作的与 MII等效的接口有:AUI(10M以太网)、GMII(Gigabit以太网)和XAUI(10-Gigabit以太网)。MII总线在IEEE802.3中规定的MII总线是一种用于将不同类型的PHY与相同网络控制器(MAC)相连接的通用总线。同样,网络控制器可以用同样的硬件接口与任何PHY(物理层)设备。3.4.2 GMII接口GMII (Gigabit MII)GMII是8bit并行同步收发接口,采用8位接口数据,工作时钟125MHz,因此传输速率可达1000Mbps。同时兼容MII所规定的10/100 Mbps工作方式。GMII接口数据结构符合IEEE以太网标准。该接口定义见IEE
41、E 802.3-2000。发送器:GTXCLK吉比特TX.信号的时钟信号(125MHz)TXCLK10/100M信号时钟TXD7.0被发送数据TXEN发送器使能信号TXER发送器错误(用于破坏一个数据包)注:在千兆速率下,向PHY提供GTXCLK信号,TXD、TXEN、TXER信号与此时钟信号同步。否则,在10/100M速率下,PHY提供 TXCLK时钟信号,其它信号与此信号同步。其工作频率为25MHz(100M网络)或2.5MHz(10M网络)。接收器:RXCLK接收时钟信号(从收到的数据中提取,因此与GTXCLK无关联)RXD7.0接收数据RXDV接收数据有效指示RXER接收数据出错指示C
42、OL冲突检测(仅用于半双工状态)管理配置MDC配置接口时钟MDIO配置接口I/O注:管理配置接口控制PHY的特性。该接口有32个寄存器地址,每个地址16位。其中前16个已经在“IEEE 802.3,2000-22.2.4 Management Functions”中规定了用途,其余的则由各器件自己指定。 3.4.3 SGMII与XGMII接口SGMII即Serial Gigabit Media Independent Interface,SGMII是PHY与MAC之间的接口,类似与GMII,只不过GMII是并行的,而且需要随路时钟,PCB布线相对麻烦,而且不适应背板应用。而SGMII是串行的,
43、不需要提供另外的时钟,MAC和PHY都需要CDR去恢复时钟。另外SGMII是有8B/10b编码的,速率是1.25GXGMII即10 Gigabit Media Independent Interface ,是“10Gb独立于媒体的接口”,X对应罗马数字10 。SGMII和XGMII为串行吉比特媒体独立接口,SGMII 提供了速率为 10/100/1000 Mbps 的全双工 BASE-T 功能。在光传输里,应用在以太网板上。如果把SGMII PHY单独做成一个模块。3.5 MDIO总线MDIO(Management Data Input/Output),即管理数据输入输出。它是一个为了以太网协
44、议而开发出来的总线结构。MDIO被设计用于连接MAC(Media Access Control)和PHY物理层设备,同时MDIO提供了一个访问PHY物理层设备的标准方法。这些内部的MDIO寄存器给物理层器件提供了调试信息。同时,MDIO总线允许用户在对物理层设备进行操作的时候修改调制信息,比如在MDIO读取PHY物理层设备状态的时候。MDIO是一个符合IEEE802.3标准的专用总线。MDIO接口有两个管脚,一个是管理数据传输管脚(MDIO),另一个是控制数据时钟管脚(MDC)。这一个标准可以用于所有速度的以太网络。MDIO接口可以访问32个不同物理设备中的32个寄存器。启动MDIO总线的器件
45、称为站管理实体(STA),由站管理实体管理的设备被称为MDIO 的可管理设备(MMD)。在启动MDIO总线的时候,STA也启动了管理数据时钟总线(MDC)。它初始化管理命令为MDIO格式,同时提供一个目标寄存器。在一个写操作的命令时,STA也会提供所要传输的数据。在读操作的命令下,可管理的设备(MMD)接管总线,并向STA提供数据。图23 MDIO应用范例3.6 Wishbone总线3.6.1背景介绍随着以IP核复用为基础的SoC设计技术的发展,工业界及研究组织积极从事相关IP互联标准方案的制定工作,从目前的研究和发展看,影响力较大的有IBM公司的CoreConnect、ARM公司的AMBA 和Silicore Corp公司的Wishbone。Wishbone现在由OpenCores组织维护,是OpenCores建议的片上总线标准,目前已有大量开源的IP Core使用Wishbone总线作为互连标准。Wishbone总线只定义了信号和信号间的时序关系,因此可用于软核、固核和硬核,对硬件描述语言、综合工具和实现手段没有特殊要求。与其他片上总线相比,Wishbone总