《基于RocketIO接口的高速互连应用研究报告及实现.pdf》由会员分享,可在线阅读,更多相关《基于RocketIO接口的高速互连应用研究报告及实现.pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于基于 RocketIORocketIO 接口的高速互连应用研究与实现接口的高速互连应用研究与实现摘要: 在此立足于嵌入式应用的背景, 在理解 rapidio协议和fibrechannel 协议的根底上, 通过对嵌入在 fpga 内的 rocketio 高速串行收发器工作原理的研究, 结合*信号处理接口模块的实际应用, 在系统内实现 rapidio 接口功能, 在系统间实现 fibre channle接口功能,总结出基于 rocketio 接口的高速信号完整性设计的应用特点, 并进展简单的链路传输特性的测试,为高速互连系统的设计与研究提供了可靠的技术支撑。关键词:rocketio; rap
2、idio; fibre channel; 嵌入式应用引言近年来,多种新兴的高性能互连技术相继出现,如rapidio,pcie*press,fibre channel 和 infiniband 等,它们大都采用基于报文交换的点到点互连构造替代传统并行总线构造,提供了高带宽、低延迟、可扩展的 i/o 互连,很大程度上抑制了传统并行总线构造的种种弊端。其中 rapidio 属于系统内部互连技术,主要针对高性能嵌入式系统内部互连,它可以作为处理器总线、本地 i /o 总线,还可以跨越背板连接处理器、存储器和外部设备。rapidio 技术被定义为一种高性能,低引脚数,基于报文交换的互连体系构造,能广泛满
3、足嵌入式系统应用的需求,支持芯片到芯片和板到板之间的互连技术1 。光纤通道(fiber channel,fc)是一种高速串行传输协议,具有高带宽、高实时性、高可靠性、扩展性好、传输速率高、抗干.z-扰性强、拓扑构造和效劳类型灵活、支持多种上层协议和底层传输介质等特性,且可以在一路传输线上实现高达2.5 gb/s的速率,具有相对于万兆以太网,pcie 更高的传输速率2 。在嵌入式应用方面,主流的 fpga 中都已对差分信号提供了硬件支持,并且在片上集成了固化的 rocket io 模块,以提供高超高速的串行通信支持。 rocketio 位于数据传输协议的物理层,用以实现最根本的数据通信环境。本文
4、从*ilin*的virte*5系列fpga的rocketio高速串行收发器的工作原理入手,分别阐述了在一片 fpga 上利用 rapidio 协议和 fibrechannle 协议实现高速信号传输的方法,并分析了rocketio 接口在硬件设计上需要注意的问题。1rocketio 介绍rocketio 为 fpga 中内嵌的硬核资源, 是一种高速串行收发器, 采用两对差分线来进展数据的发送和接收,可以实现两个单工或一对全双工的数据传输,通信码率可以到达600 mb/s3.125 gb/s。rocketio 收发器发送和接收串行差分信号,工作于 2.5 v 的直流电压下,采用 cml(curre
5、nt mode logic)模式3 ,内部带有 50 或75 的匹配电阻,采用串行数据收发,可以在高频条件下很好地防止数据间的串扰。rocketio 收发器构造4如图 1 所示,主要包括 pma 和 pcs 两个子层,pma 子层中集成了 serdes,发送和接收缓冲,时钟发生器及时钟恢复电路。serdes 是一个串并转换器,负责 fpga 中本地的.z-32 位并行数据(也可以是 16 位或 8 位)与 rocket io接口的串行数据之间的转换。时钟发生器及时钟恢复电路用于将时钟与数据绑定发送及将时钟从接收到的数据流中恢复出来,从而防止了在高速传输条件下时钟与数据分开传输所带来的时钟抖动等
6、问题。pcs 子层负责 8 b/10 b编码解码和 crc 校验,并集成了负责通道绑定和时钟修正的弹性缓冲。8 b/10 b编码可以防止数据流中出现连 0 连 1 的情况,便于时钟的恢复。通道绑定通过在发送数据流中参加字符来将几个 rocketio 通道绑定成一个一致的并行通道, 从而来提高数据的吞吐率。弹性缓冲可以解决恢复的时钟与本地时钟不一致的问题,并进展数据率的匹配,从而使得通道绑定成为可能。图 1rocket io 构造框图 2rocketio 在高速信号互连中的应用以*信号处理模块 fc 接口板卡为例,该模块是一种高性能、 具有高速串行接口、采用统一互连网络的通用信号处理接口模块,信
7、号传输速率到达几千兆位每秒,这时就需要具有足够高传输速率的信号传输机制对信号进展转发。实现与主机板卡通信时,采用 rapidio 传输协议;实现系统网络间通信时,则可使用fibre channle光纤通信协议。 而rocketio对多种高速传输协议的支持,可以使得rapidio协议、fibre channle 协议在同一片 fpga 内实现,提高了系统的集成度,并使得信号的处理机制更加灵活。 在本文的设计中,以 *ilin*的 virte*5系列 fpga 为平台,采用了 rapidio 传输协议来实现与主机板卡的通信,采用 fibre channle 协议来实现系统网络间通信。本文涉及的接口
8、模块架构如图 2 所示。.z-图 2 接口模块架构 2.1 应用 rapidio 协议实现板间互连rapidio 是一种基于高性能包交换的开放式互连技术, 主要功能是完成系统内部芯片到芯片和板到板之间的高速传输数据,能够提供高带宽、低时延、软件独立和高容错性的数据传输解决方案1 。同时支持点对点或点对多点的通信、dma 操作、消息传递模式交换数据以及多种拓扑构造等功能。rapidio 采用 3 层分级体系构造1 ,分别为物理层、传输层、逻辑层。 物理层规*在整个分级构造的底部, 包括器件级接口的细节,如包传输机制、流量控制、电气特性和低级错误管理。传输层规*在中间层,定义 rapidio 地址
9、空间和在端点器件间传输包所需的路由信息。 逻辑层规*定义全部协议和包的格式, 它们为端点器件发起和完成事物提供必要的信息。rapidio 串行物理层,通常称为串行 rapidio,是针对板上或通过背板的器件间的电气连接。串行物理层定义器件间的全双工串行链路, 在每个方向上使用单向差分信号。 rapidio 串行物理层实现链路训练、链路初始化,支持 rapidio 器件间的包传送,包括包和控制符号的传送、 流量控制、 错误管理和其他器件到器件的功能。 rapidio物理层核与 rocketio 收发器连接逻辑构造框图如图 3 所示。图 3 物理层核与收发器连接逻辑构造框图由于 rapidio 逻
10、辑层包被定义为一连串的比特,并且与物理层实现无关,所以rapidio 协议在串行与并行接口,铜线与光纤介质下都能正确工作。.z-其中 rapidio 串行物理层有如下特征:1 采用 8 b/10 b 编码方案将发送时钟嵌入到数据中。2 在每个方向上支持一个串行差分对或支持 4 个并列的串行差分对。3 使用专用的 8 b/10 b码称为k 码来管理链路,管理流量控制、包定界和错误报告。4 支持每通道 1.25 gb/s, 2.5 gb/s和 3.125 gb/s波特率 数据速率分别为 1.0 gb/s,2.0 gb/s 和 2.5 gb/s的传送速率。2.2 应用 fibre channel 协
11、议实现系统间互连光纤通道技术是综合计算机通道和数据网络概念提出的一个不同于传统的通道和网络构造的互连方案,采用通道技术控制信号传输,使用仲裁或交换方式处理共享冲突,并采用了基于信用的流量控制策略。fibre channel 模型分为 5 层2 ,分别为:fc2,fc3 和 fc4 。fc0,fc1,fc0 层定义了连接的物理端口特性,包括介质和连接器、驱动器、接收机、发射机等的物理特性、电器特性和光特性、传输速率以及其他的一些连接端口特性。在本设计中,fc0 层处理由光电收发器实现光信号与电信号转换;fc1层是信号编码和解码层,fc1 层处理由 fpga 的 rocketio 完成串1 层使并
12、/并串转换、8 b/10 b编解码、有序集及位同步等; fc用 8 b/10 b 编码方式,这意味着每传输 10 b 数据,实际得到 8 b的有效数据,其他两位是冗余位。信号可以被编码成2 种字符集:.z-k 字符集特殊的控制信号和命令和 d 字符集普通数据 。fc2 层是帧协议层,是 fc 用来识别、解释和处理 fc 网络信息流的核心层。fc2 层规定信息单元的组成格式、原语序列协议、端口类型、效劳类型、数据的分段与重组、流量控制、过失恢复策略、节点初始化、节点的注册和节点的注销等功能。fcfc2 层这 3 层共同组成了 fc 物理层。fc0,fc1 和3 层是 fc 的公共效劳4:层,定义
13、了如带宽频率分片、搜索组和多播等通用效劳。fc该层是 fc 协议模型的最高层, 在本系统的设计中, 使用了匿名签署消息传输协议fcaeasm来满足系统中数据的传输需要。在 fc 核的嵌入式应用中,使用一个或 2 个 rocketio 收发器来提供 1 gb/s,2 gb/s 或 4 gb/s 的接口速率,利用 fpga 中的 8 b/10 b编解码器、crc 产生和校验单元以及接收弹性缓冲进展设计。fc 核内部提供了 32 b 宽的 client 接口,fc 帧数据采用 32 b/s。fc 核的时钟在配置时已固定,分别可采用 53.125 mhz 和 106.25 mhz。fc 核与 rock
14、etio 收发器连接逻辑构造框图5如图 4 所示。图 4fc 核与 rocketio 收发器连接逻辑构造框图 3rocketio 接口的信号完整性设计在实际应用中,参考时钟、 电源供电以及高速传输线路的设计与布局是影响数据传输效果的最重要因素。为了保证rocket io 能可靠工作,在 rocketio 接口设计过程中需要注意以下的问题6 :(1) 电源供电。 该系列 fpga 器件中每个 rocketio 高速串行收发器包括 5 类电源引脚, 分别为 mgtavccpll, mgtavcc, mgtavttr*,.z-mgtavttt*, mgtavttr*c,这些引脚对噪声的影响都非常敏感
15、,为了保证高速电路能够可靠工作,rocketio 需要和周围的噪声源进展隔离。因此需要对 rocketio 收发器进展专门的供电,且每个供电引脚必须有独立的 lc 滤波网络,其连接关系如图 5 所示。图 5lc 滤波电路(2) 高速信号。rocketio 高速串行收发器采用高速差分信号线,由于所传输的差分信号频率很高,高速差分对走线应当有最高的优先级,两根差分信号线必须在长度上尽量匹配,长度失配会产生共模噪声和辐射,严重的失配会产生时钟抖动和不可预知的时序问题,差分线必须尽量匹配,端接电阻50 和 75 可选, 50 用于芯片和芯片之间互连, 75 用于芯片和电缆之间互连;高速差分线不要打孔,
16、要布在电路板中同一层。(3) 参考时钟。rocketio 不能使用经过数字时钟管理模块(dcm)倍频的参考时钟,因为 dcm 倍频会引入过大的时钟抖动,在rocketio 的高速数据传输条件下会引起不必要的错误。rocketio 的时钟由差分时钟输入后,只经过一级 bufg,将时钟引入 fpga 的全局时钟树,然后直接连入到 rocketio 的参考时钟引脚上。4 测试验证在完成硬件设计后,可利用 chipscope proh 分析工具测试rocketio 的工作性能,通过内置在收发器内的误码率测试器,设置rocketio 为串行闭环方式,并运行软件进展测试即可得到实时的数据传输状态。如图6
17、所示可观察到链路上的传输特性,并可得误码率可到达 10-12,符合设计指标要求。.z-图 6 通信链路误码率测试结果 5 结语本文从 virte*5 系列 fpga 的 rocketio 高速串行收发器入手, 根据接口设计需要阐述了应用rapidio 协议和fc协议实现高速传输的设计思想及工作原理。并分析了高速传输在硬件设计过程需要注意的一些问题,为高速接口设计的研究奠定了根底,具有一定的科研价值和实践意义。参考文献1王勇.rapidio 嵌入式系统互连m.:电子工业,2006.2mike glass. test, simulation and integration of fiberchan
18、nel networked systems r. s.l.: mike glass, 2006.3 武荣伟,苏涛,梁中英.rocketio 在高速数据通信中的应用j.通信技术,2011(9):1013.4*ilin*. rocketiotm transceiver user guide, ug024 (v3.0)m. s.l.: *ilin*, 2007.5史卫民.基于 fpga 的 rapidio工程,2010(3):6567.fc 转接桥设计j.计算机6李键.新一代航空电子系统光纤通道及其节点机的研究与实现d.*:中国航空研究院 631 所,2008.7rapidio trade asso
19、ciation. rapidio interconnectspecification rev2.1 part 6:1*/4* lpserial physical layerspecification r. s.l.: rapidio trade association, 2009.z-8李江涛.rocketio 高速串行传输原理与实现j.雷达与对抗,2004(11):2527.9骆丽.嵌入式系统设计m.:航空航天大学,2004.10陈长林,邱兆坤.rocketio 及其在高速数据传输中的应用j.单片机与嵌入式系统应用,2010(8):1517.11万翔.chipscope pro 在 fpga 调试中的应用j.计算机与网络,2005(7):3842.12李聪玲.液氧/煤油发动机试验控制系统软件架构与设计j.火箭推进,2009,35(2):4653.13李建国,施健.一种双通道接收机的设计j.电子科技,2011(5):7879.14应涛,吴青锋,*小苗.一种超宽带可控波束切换电路的设计j.电子科技,2010(1):6870.z