图10-25 微带线边沿耦合差分对连接示意图 图10-26 带状线边沿耦合差分对
连接示意图
(3)AC、DC耦合
在收发器差分电压兼容时,必须使用AC耦合(在信号路径上使用DC阻塞电容),但是对于普通模式的电压就不需要了。此外,某些设计需要AC耦合以适用热插拔,和/或在不同收发器处有不同电源电压也都需要AC耦合。典型的AC耦合电路如图10-27所示。
图10-27 AC耦合电路示意图
在Rocket I/O收发器与其它Rocket I/O收发器或其它Mindspeed的收发器(该收发器有兼容的差分和普通模式电压规格)连接时,DC耦合更为可取。在使用DC耦合时,不需要额外的无源器件。典型的DC耦合电路如图10-28所示。
图10-28 DC耦合电路示意图
10.3.6 Rocket IO IP Core的使用
1.支持Rocket IO芯片族
如前所示,Rocket IO作为Xilinx FPGA芯片中内嵌的硬件模块,并不是任何一款FPGA都提供的,只有在Virtex 2 Pro以上的部分高端FPGA内部才具备。支持RocketIO的FPGA型号如表10-9所列。
表10-9 内嵌Rocket IO的FPGA芯片型号列表
2.Rocket IO IP Core的配置页面
Rocket IO和DCM模块、硬核乘法器、块RAM一样,属于FPGA内部的集成固件,可通过原语或者IP Core调用,其相关参数已在10.3.3、10.3.4节进行了详细说明。
该IP Core位于―FPGA Feature and Design‖ ―IO Intrerfaces‖目录下,后缀为.xaw,表明其属于FPGA底层基本组件单元。Rocket IO的IP Core有5个配置向导页面,分别如图10-29(a)~(e)所示。
(a) Rocket IO配置向导1 (b) Rocket IO配置向导2
(c) Rocket IO配置向导3 (d) Rocket IO配置向导4 (e) Rocket IO配置向导5
图10-29 Rocket I/O IP Core的用户配置界面
1)配置页面1——General Setup
本页面主要用于配置收发器工作模式、参考时钟以及终端阻抗。在―Select the transceiver‖栏下拉框的可选工作模式有:Aurora协议、Custom、Ethernet、FibreChannel、Infiniband以及XAUI等6种模式;Data Width下拉框可设定数据位宽,有1Byte、2Byte和4Byte等3种选择;选中Transmitter和Recevier复选栏,则表示在Rocket IO硬核中使能相应的组件,否则旁路掉相应的组件,默认值为都选中。
―Reference clock selection‖栏用于选择时钟,有CLKREF和BCLKREF两种选择,当收发器的工作频率高于2.5Gbps时,则必须选择BCLKREF时钟;选中Bypass PCS features(Uses SERDES with CDR Only)复选框,可旁路PCS功能;选中Half-rate Mode复选框,可启动半速率模式。―Termination impedence‖栏用于配置终端阻抗,有50欧姆和75欧姆两种选择。
2)配置页面2——Transmitter Setup
本页面主要配置发送端功能。―Encoding‖栏用于线路编码配置栏,有Disable encoding(旁路编码器)、Dynamic encoding control(动态控制编码器)以及Static encoding control(使能8B/10B编码)等3个选项。―Pre-emphasis‖栏为预加重控制栏,从弱到强,有10%、20%、25%、33%等4类强度。―Output Voltage swing‖为输出电压摆动功率设置栏,有400mW、500mW、600mW、700mW以及800mW等5级数值。―CRC‖栏用于配置发端校验编码器,选中―Use CRC for transmitter‖复选框后,才能配置相关参数;CRC Format栏用于选择校验模式,有User-Mode、Ethernet、FibreChannel以及Infiniband等4种模式;Start-Of-Packet K-Parameter用于选择起始包的K参数;End-Of-Packet K-Parameter用于选择结束包的K参数。
3)配置页面3——Receiver Setup
本页面主要配置接收端功能。―Decoding‖栏的参数和配置页面两种Encoding栏的选项是一致的,接收端选择的解码方式由输入数据在远端的编码方式决定,二者必须保持一致。―8B/10B
Synchronization‖栏用于设定检测同步头,选中Decet the loss on RXLOSSODSYNC复选框,可设定同步操作的有效步长以及门限值。同样,USE CRC for recevier复选框由输入数据决定,如果输入数据经过编码,则选中该复选框。
4)配置页面4——Recevier Clock Correction Setup
本页面用于配置接收机时钟修正参数。选中―Retain at least one clock Correction sequence‖可以启用至少保持一个时钟修正序列的功能。―The minimum number of RXUSERCLK without clock‖栏用于设定没有时钟时,最小的RXUSERCLK周期数。―Length of clock correctuion sequence(in Byte)‖栏用于设定时钟修正序列的长度,可选值有1、2、3和4,单位为Byte。―Define clock correction sequence(11-bit vector)‖栏用于设定时钟修正序列。
5)配置页面5——Summary
本页面主要显示用户定义Rocket IO的特性。―Feature Summary‖栏用于显示用户配置参数的主要特征,如参考时钟的配置。―Files To Be Generated‖栏用于显示即将生成的文件,如my_rocketio.xaw。―Block Attributes‖栏用于显示模块属性,如CRC起始包和结束包的K-字符、发送数据宽度等。―Show all modifiable attributes‖复选框用于显示所有可修改的属性。―Show only the modifiable attributes whose values differ form the default‖复选框只显示和缺省值不同的可修改属性。
配置完成后,可在工程管理区选中Rocket I/O,在过程管理区,点击―View HDL Instantiation Template‖命令,查看其例化代码,其在代码中的例化方法和一般IP Core的方法是一样的。
第4节 基于Xilinx FPGA的千兆以太网控制器的开发
10.4.1 千兆以太网技术
1.千兆以太网技术简介
以太网技术是当今应用广泛的网络技术,千兆以太网技术继承了以往以太网技术的许多优点,同时又具有许多新的特性,例如传输介质包括光纤和铜缆,使用8B/10B的编解码方案,采用载波扩展和分组突发技术等。正是因为具有良好的继承性和许多优秀的新特性,千兆以太网已经成为目前局域网的主流解决方案。
千兆以太网利用了原以太网标准所规定的全部技术规范,其中包括CSMA/CD协议、以太网帧、全双工、流量控制以及IEEE 802.3标准中所定义的管理对象。千兆以太网的关键技术是千兆以太网二层(MAC层)的交换与以太网接口的实现。随着多媒体应用的普及,千兆以太网必将成为各类以太网技术的主力军。
2.Xilinx的千兆以太网解决方案