




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于FPGA的SPI4.2接口设计摘要:本文介绍了一种 FPGA和 IPX2805之间的 SPI4.2接口模块设计的方法,对硬件设计进行了说明,着重阐述了 FPGA内部 SPI4.2接口模块设计。该设计简单、高效,解决了商用芯片不能满足高速转发的系统要求的问题。方案在 Altera的 Stratix II器件上得到了验证。1引言SPI-4.2(System Packet Interface)是 OIF(Optical Internetworking Forum)定义的局部高速总线标准,用于 PHY层芯片到链路层芯片的 10Gbps信号传输。主要应用有 OC-192 ATM、Packet over SONET/SDH(POS)、10Gbps以太网等。SPI4.2接口分为数据通道和状态通道。数据通道最多分成 256个逻辑通道,16bit位宽,采用 LVDS信号电平,按照 cell格式传送数据,cell的长度为 16字节的整数倍,可随意配置,根据网上流量的分析,一般配置成 128字节。每个 cell都是以控制字开始的,控制字一共16bit,包含逻辑端口号、报文起始标志位、报文结束标志位、控制字交验等信息。状态通道传输对端反馈的逻辑通道接收 FIFO的状态,2bit位宽,LVTTL或者 LVDS信号电平,一般采用 LVTTL信号电平。状态通道的数据结构为 Calendar0:n,n最大为256,长度一般与逻辑通道数对应,Calendarn表示逻辑通道 n的接收FIFO状态。数据通道根据状态通道提供的信息控制数据的发送过程。状态通道有四种状态信息,如表 1所示:在实际的系统设计中,商用芯片不一定能够满足需要,因此需要使用 FPGA(Field Programmable Gate Array)。本设计采用 Altera的 Stratix II系列 FPGA和 RMI公司的多核处理器 XLR732,Intel公司的网络处理器 2805实现 SPI4.2接口。22805简介 2805是 Intel推出的高端 NP(Network Prosser),能够处理 10Gbps线速转发的以太网、POS、ATM等数据流量,能够实现分类、NAT、ACL、多播、流量管理等功能。 2805内部集成一个32-bit、RISC内核、高性能的 XScale处理器,用于系统的配置管理和路由表项的维护,最高工作主频750MHz;16个可编程的、有 8K代码空间的微引擎,每个微引擎含有多个硬件线程,用来处理通信系统中的数据转发,最高工作主频 1.5GHz。外部集成了 PCI接口,可以工作在 64bit/66MHz模式;SPI4.2接口,工作频率为 311MHz500MHz;3个LA-1接口,工作频率为250MHz;4个 RDRAM接口,工作频率为 800MHz1200MHz。3FPGA和 2805之间的 SPI4.2接口电路设计图 1描述了 FPGA和 2805之间的 SPI4.2接口的硬件连接框图,信号定义以 2805为参考点。其中 TX_DATA15:0 、TX_CTL、TX_CLK和 RX_DATA15:0 、RX_CTL、RX_CLK是 LVDS信号电平,工作在 350MHz;TX_SDATA1:0 、TX_SCLK和 RX_SDATA15:0 、 RX_SCLK是 LVTTL信号电平,工作在 87.5MHz,四分之一于数据通道时钟频率。具体信号定义如下所示:TX_DATA15:0:发送数据, 16bit位宽, burst方式传输数据, DDR工作模式(时钟上升沿和下降沿都采样);TX_CTL:传输控制信号,高电平表示 TX_DATA15:0传输的是控制信息,低电平表示 TX_DATA15:0传输的是数据;TX_CLK:发送时钟,随路,是发送数据的参考时钟。接受方向的信号定义与发送方向的信号定义完全相同,但是方向相反。4FPGA的 SPI4.2接口模块设计Stratix II器件具有 152个接收器和 156个发送器通道,支持源同步信号进行高达 1 Gbps的数据传送。它的内部含有 DPA电路,能够不断地将输入数据和采样时钟对齐,消除了时钟至通道和通道至通道偏移要求。它还集成了丰富的存储器资源、先进的锁相环( PLL)技术和双数据率( DDR)I/O等特性,结合先进的差分 I/O能力,使其满足 SPI4.2规范的物理信号定义。图 2为 FPGA的接收通道逻辑框图,上半部分是数据通道,下半部分是状态通道。由于 SPI4.2接口的数据传输是 DDR模式的,rdclk经过 FPGA内部的 PLL模块做倍频处理,然后送给 Rx_data_phy模块,该模块根据时钟采样 rdat 15:0上的数据。Rx_data_proc模块将接收的数据按照 cell头中的逻辑端口号,分别放入不同的 Rx_fifo中。一个 Rx_fifo对应一个逻辑通道,每个 Rx_fifo都会生成一个状态信号,标示其“空”状态或者“满”状态, Rx_stat_calc模块根据各个 Rx_fifo的状态信号生成 Calendar信息,由状态通路发送出去,用来流控 2805的发送过程。Calendar也可以由软件设置,通过 Rx_stat_proc_ref下发给 Rx_stat_calc。发送模块与接收模块不同,如图 3所示,发送模块的 Tx_fifo只有一个,即所有的逻辑通道公用一个发送缓存区。这主要是由于 FPGA内部的布线资源和 RAM资源有限,同时这种发送端共享 FIFO、接收端分通道 FIFO模式不影响使用,能够实现分端口的反压。发送端通过 Tx_stat_phy模块接收 Calender信息,经过 Tx_stat_proc模块和Tx_stat_proc_sync模块处理,送给 Tx_sched调度模块,Tx_sched解析出各个逻辑通道的反压情况,然后将各个通道的数据发送到 Tx_fifo中,然后经过 Tx_data_proc模块和Tx_data_phy模块发送出去。5结果 本设计在 Altera的 Stratix II系列FPGA,EPM2S90上得到验证,与 Intel的 2805配合共同完成某通信设备的高速转发单板的设计。6结束语本文介绍了 SPI4.2接口在可编程逻辑器件 FPGA上的实现方法,并通过实际电路验证FPGA与 IPX2805之间通过 SPI4.2接口互通的功能。由于商业芯片的限制,有时只有 FPGA才能满足系统设计的要求。相对于开发ASIC,使用 FPGA使整个设计电路简单、灵活、成本低、方便调试和修改, 大大缩短开发周期。当电信运营商和有线电视业务提供商开始向客户推出决定性的举措和VoD服务时,原始设备制造商正全力开发基于IP(Internet协议)的系统,包括PON、CMTS、IP DSLAM以及其他的接入和最后一英里设备。普通的基础物理层对此使用的是无处不在的以太网技术,目前与高级的QoS覆盖结合在一起。工程师正投入更多的努力把交换以太网背板连接到系统线卡,特别是网络处理器。系统设计师常选择以太网交换机和有独立特性的网络处理器,而很少考虑把这两者互联所带来的挑战。工程师仅需要面临开发桥、整合解决方案和节约成本实现设计的挑战。由于接口以很高的速率运行,所以还必须关注功耗。典型的基于以太网的系统结构由以太网交换机所组成,依次由几个连接到一连串的基于网络处理器的线卡的10Gbps链路组成。参见图1。在交换10Gpbs系统,以太网交换机结构提供一系列XAUI端口。每个XAUI端口有4个3.125Gbps的SERDES。这些串行端口通过背板或者中间结构完美地连接到线卡。有些以太网交换机包括端?换、流量控制或者用于服务质量要求的地址信息,在原来的以太网标准中没有服务质量要求的内容。为了保持10G线速,这些XAUI端口的运行速率要高于指定的每个通道3.125Gbps的速率。运行在3.75Gbps的Broadcom HiGig+协议就是一个例子。运行这些所有权协议时,额外的开销允许客户开发自定义的应用交换,通过网络智能地传递通信量。此外,针对基于IP的应用,这些交换堆栈协议具有无约束的可量测性。拥有网络处理器的线卡常用SPI4.2接口。SPI4.2是流行的运行速率可以超过10Gbps的高速并行接口,用于网络处理器、通信流量管理器、媒体接入控制(MAC)等。SPI4.2使用并行的16位宽的LVDS发送和接收源同步接口。为了处理流量控制,在状态通道有额外的电路。在SPI4.2链路上发送的数据作为一个包,或者猝发的多个包,并拥有控制头描述每个猝发。每个包控制头还识别与猝发数据相关的SPI4.2通道。这些位可用来把整个链路分割成各种通道。SPI4.2规范支持每个链路多达256个通道。很明显在SPI4.2和XAUI之间存在着很大的物理和协议差异。由于这个原因,SPI4.2接口必须桥接到XAUI链路。图1 :基于以太网的系统结构。 为了将XAUI(或者更快时钟的XUAI)链路连接到SPI4.2接口,要构建一个能够引导数据通过4个主要单元的桥。针对XAUI至SPI4.2桥,主要单元为:(1)XAUI SERDES终端;(2)10G MAC;(3)协议转换逻辑;(4)SPI4.2接口。此外还要有微处理器接口,用来配置每个桥的单元。参见图2。图2:连接到SPI4.2接口的XAUI(或者更快时钟的XUAI)链路。 低功耗、完整特性的XAUI端口XAUI SERDES块必须连接到4个3.125Gbps数据通道。这个逻辑只需要4个接收和4个发送信号,运行速度非常快但消耗相当大的功率。需要谨慎选择每个通道消耗大约100mW功率的SERDES。4个SERDES通道中的每一个都要对齐,以保证跨越所有通道的数据同步,获得聚集为10Gbps的波特率。这由XAUI状态机来处理。在与SERDES混合的许多器件的物理编码子层(PCS)中,这个逻辑是很普通的。从4个通道中提取10Gbps的数据后,必须以XGMII接口格式化。这是针对10Gbps以156Mhz运行的6?位总线,或者针对12Gbps以187Mhz运行。XGMII是802.3ae标准,用于格式化源于物理层到10G MAC的10Gbps数据。利用含有SERDES后紧跟PCS块的FPGA是理想的,采用这种结构可以直接格式化XAUI数据至XGMII。这样节省了逻辑并减少了功耗。低功耗、工程预制的10GbE MAC10G MAC逻辑接收XGMII数据并提取以太网的帧。首先由10G MAC识别Packet SOP的起始和Packet EOP头的结束。由于以太网的数据以可变大小的包发送,MAC必须能够处理各种大小的包,包括8K长度的超长包。一旦恢复了数据,进行CRC校验保证数据的完整性。数据进入MAC时,在接收端做这项工作。如果CRC校验失败,丢弃坏的帧并建立错误标志。在发送端MAC必须产生CRC码。MAC还需要保持对数据的统计,支持管理信息数据库。此外,10G MAC还有对接收到的包进行地址过滤的功能。可以有几个过滤选择,取决于终端用户的应用。允许通过桥的数据包,从MAC流出,不经过滤,写入6?位宽的FIFO,再送至协议转换逻辑。尽管在FPGA中可以实现10G MAC,它们要消耗4千多个LUT,因此消耗许多功率。作为选择的方法,相对基于FPGA的实现,用ASIC工艺的嵌入式10G MAC功率减少50%,这样就有充裕的FPGA门实现用户逻辑。通过SPI4.2桥接到网络处理器以太网包通过10G MAC的地址过滤标准,进入6?位FIFO之后,协议逻辑转换6?位宽的FIFO逻辑并在通过它到达SPI4.2接口前把它转换为128位字。在协议逻辑中的这些FIFO用来控制接收和发送方向的数据流。如果通信发生拥堵,10G MAC与协议逻辑一起保证数据帧停止。还有一个微处理器接口,可通过各种控制寄存器调整流量控制。经过标准的Ethernet X_ON和X_OFF流控制命令,协议逻辑控制至10G MAC的流量。于是协议逻辑间接地转换流量控制到基于SPI4.2的状态命令。SPI4.2有两个方案在一个链路里实现流量控制。第一个是基于credit的流程。对每个通道,credit在链路的每一方进行交换。如果接收方信道很拥堵的话,它将不再给予发送方credit,直到拥堵被清除。第二个流量控制方案是基于状态。在此模式,报告排队的状态,比如starved或者satisfied,队列中充满数据时停止传送。基于状态的流量控制用得较多,因为它易于实现。例如莱迪思的SPI4.2至XAUI桥的IP使用基于状态的流量控制。这里是一个流量控制的例子,进入方向是从网络处理器到以太网交换机。网络处理器完成它的包时,它询问其状态通道的状态。可能的状态是starved/hungry,或者satisfied,这是由桥内的入口FIFO的级和电路板上微处理器接口的流量控制寄存器来决定。倘若不要求流量控制,网络处理器初始化传输,并传送包到桥的SPI4.2接收接口。当包进入桥时,进行128到6?位数据宽度转换,数据写入入口FIFO,具有用户可编程阈值支持存储、发送和切入操作。一旦超过了用户可编程传送阈值,将会告知10G MAC一个包有效。于是10G MAC校验XAUI接口流量控制的状态,如果无效的话,传送这个包。在出口方向的流量控制有相似的数据流,但是需要将出口FIFO阈值设置到较高,以便提供SPI4.2通过XAUI的较高带宽。例如运行HiGig+产生12Gbps的带宽。然而SPI4.2接口经常运行400-500MHz DDR,提供12.8?C16Gbps。因为流量控制逻辑是用FPGA门,以及内置存储器块来实现的,因此可以提供更加复杂的方案。聚集多个以太网通道上面讨论了协议转换逻辑,其中假设10Gbps源于单个10G管道。这对于许多到以太网交换机的网络处理器来说是足够了。然而某些设计中,10Gbps或者12Gbps管道需要分成多个通道。例如如果一个以太网交换聚合12个1Gbps以太网线,也许要求协议转换逻辑将12Gbps管道分割成12个通道。另外一个例子是线速率超负荷。如果24个链路的总带宽小于12Gbps聚合带宽,那么或许要分割24个通道。这些额外的通道需要更多的FIFO和逻辑来管理它们。桥的设计需要考虑配置的类型。无论用一个或者多个通道,数据必须通过协议逻辑先到SPI4.2接口,然后再到网络处理器。SPI4.2功耗与动态对齐SPI4.2从FIFO读数据或者写数据至FIFO,于是经16位源同步SPI4.2线猝发数据。为了达到很高的可靠的SPI4.2速度,大多数高性能网络处理器进行动态对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 培训传授知识成语课件
- 气象水文观测课件
- 2025年住院医师规培-甘肃-甘肃住院医师规培(口腔内科)历年参考题库含答案解析(5套)
- 医学生面试指导题目与答案
- 2025年住院医师规培-湖北-湖北住院医师规培(精神科)历年参考题库典型考点含答案解析
- 2025年住院医师规培-湖北-湖北住院医师规培(口腔病理科)历年参考题库含答案解析
- 2025年住院医师规培-浙江-浙江住院医师规培(放射肿瘤科)历年参考题库典型考点含答案解析
- 2025年住院医师规培-河南-河南住院医师规培(核医学科)历年参考题库典型考点含答案解析
- 2025年住院医师规培-江苏-江苏住院医师规培(烧伤整形科)历年参考题库含答案解析(5套)
- 2025年住院医师规培-江苏-江苏住院医师规培(口腔正畸科)历年参考题库典型考点含答案解析
- 医院安保课件
- 文印员考试题库及答案
- 2025年涂料行业研究报告及未来发展趋势预测
- 2025河北唐山某国有企业单位招聘劳务派遣工作人员44人笔试参考题库附带答案详解(10套)
- 留疆战士考试题库及答案
- 班主任与家长沟通课件
- 2025年安庆怀宁县事业单位招聘考试试题【答案】
- 预防残疾知识讲座课件
- 浪漫七夕领证活动方案
- 北师大版数学四年级下册全册教案设计
- 汉语拼音发音表(适合初学者和老年人)
评论
0/150
提交评论