串行RapidIO技术简要介绍1、基本概念1.1产生背景及什么是RapidIO技术?嵌入式系统简洁,高效,专用的特点得到了计算机,通信和信息产业的广泛认可。目前,嵌入式系统已成为通信和消费类产品的共同发展方向。RapidIO针对高性能嵌入式系统芯片间和板间互连而设计,是未来十几年中嵌入式系统互连的最佳选择之一。图1展示了RapidIO互连在嵌入式系统中的应用。随着高性能嵌入式系统的不断发展,芯片间及板间互连对带宽、成本、灵活性及可靠性的要求越来越高,传统的互连方式,如处理器总线、PCI总线和以太网,都难以满足新的需求。图1RapidIO互连在嵌入式系统中的应用1.1.1嵌入式系统市场需求市场需求:更高带宽更低成本模块化设计、可重用性更好高速设备(芯片、板、卡及机箱)间标准互连的需求(多主机、对等通信、多个不同操作系统互连)具备分布式处理能力更简单的协议栈(软件开销更少、打包效率更高)1.1.2什么是RapidIO技术?RapidIO技术是目前世界上第一个、也是惟一的嵌入式系统互连国际标准(iso/iec18372)。因此,ATCA、AMC、UTCA、VXS、VPX等机械标准规范都已引入RapidIO技术作为板卡间的标准互连技术。目前各厂商主要支持的是2002—2004年间完成的1.2版规范,部分新发布芯片已开始支持2005年6月完成的1.3版规范。1.2发展历史1.3RTA(RapidIO行业协会)成员1.4分类根据物理层接口标准,可分为并行RapidIO(8/16bits)技术和串行RapidIO(1x/4x)技术1.4.1并行RapidIO(8/16bits)技术并行RapidIO8/16LP-LVDS技术采用并行物理层。其在并行物理层采用IEEE标准LVDS技术同时发送或接收8/16bits数据、时钟和帧信号。8位接口需要40个信号引脚,16位接口需要76个信号引脚,其传输速率为0.5~2Gbps/link,主要适合于板级互连。并行RapidIO8/16LP-LVDS技术互连图1.4.2串行RapidIO(1x/4x)技术串行RapidIO(1x/4x)技术采用串行物理层。其在串行物理层采用每个方向上支持一个或四个差分对信号线进行数据传输。1x接口需要4个信号引脚,4x接口需要16个信号引脚,其传输速率每通道为1.25Gbps、2.5Gbps和3.125Gbps,主要适合于芯片级、和背板级互连。串行RapidIO(1x/4x)技术互连图2、与传统互连技术的比较2.1与以太网技术和4xPCIExpress技术的比较主要从协议数据传输效率,有效带宽等方面进行比较表1总结比较了的三种带宽能达到10Gb/s的互连技术:以太网、PCIExpress和串行RapidIO。可以看出串行RapidIO最适合高性能嵌入式系统应用。3、RapidIO协议概述3.1分层的RapidIO结构与OSI参考模型的对应关系3.2RapidIO协议分层结构及包格式为了满足灵活性和可扩展性的要求,RapidIO协议分为三层:逻辑层、传输层和物理层,如图2所示。逻辑层定义了操作协议和包格式;传输层定义了包交换、路由和寻址机制;物理层定义了电气特性、链路控制和纠错重传等。像以太网一样,RapidIO也是基于包交换的互连技术。如图所示,RapidIO包由包头、可选的载荷数据和16位CRC校验组成。包头的长度因为包类型不同可能是十几到二十几字节。每包的载荷数据长度不超过256字节,这有利于减少传输时延,简化硬件实现。上述包格式定义兼顾了包效率及组包/解包的简单性。RapidIO交换器件仅需解析前后16位,以及源/目地器件ID,这简化了交换器件的实现。3.2.1逻辑层逻辑层定义了操作协议和相应的包格式。RapidIO支持的逻辑层业务主要是直接IO/DMA(DirectIO/DirectMemoryAccess)和消息传递(MessagePassing)。直接IO/DMA模式是最简单实用的传输方式,其前提是主设备知道被访问端的存储器映射。在这种模式下,主设备可以直接读写从设备的存储器。直接IO/DMA在被访问端的功能往往完全由硬件实现,所以被访问的器件不会有任何软件负担。从功能上讲,这一特点和TIDSP的传统的主机接口(HPI)类似。但和HPI口相比,SRIO带宽大、引脚少,传输方式更灵活。消息传递模式则类似于以太网的传输方式,它不要求主设备知道被访问设备的存储器状况。数据在被访问设备中的位置则由邮箱号(类似于以太网协议中的端口号)确定。从设备根据接收到的包的邮箱号把数据保存到对应的缓冲区,这一过程往往无法完全由硬件实现,而需要软件协助,所以会带来一些软件负担。3.2.2传输层RapidIO是基于包交换的互连技术,传输层定义了包交换的路由和寻址机制。RapidIO网络主要由终端器件(EndPoint)和交换器件(Switch)组成。终端器件是数据包的源或目的地,不同的终端器件以器件ID来区分。RapidIO支持8位或16位器件ID,因此一个RapidIO网络最多可容纳256或65536个终端器件。与以太网类似,RapidIO也支持广播或组播,每个终端器件除了独有的器件ID外,还可配置广播或组播ID。交换器件根据包的目地器件ID进行包的转发,交换器件本身没有器件ID。RapidIO的互连拓扑结构非常灵活,除了通过交换器件外,两个终端器件也可直接互连。RapidIO支持灵活多样的拓扑结构3.2.3物理层RapidIO1.x协议定义了以下两种物理层接口标准:8/16并行LVDS协议和1x/4x串行协议(SRIO)。并行RapidIO由于信号线较多(40~76)难以得到广泛的应用,而1x/4x串行RapidIO仅4或16个信号线,逐渐成为主流。串行RapidIO基于现在已广泛用于背板互连的SerDes技术,它采用差分交流耦合信号。差分交流耦合信号具有抗干扰强、速率高、传输距离较远等优点。差分交流耦合信号的质量不是由传统的时序参数来衡量,而是通过眼图来衡量,眼图中的“眼睛”张得越开则信号质量越好。下图是一个典型的串行RapidIO信号眼图。串行RapidIO信号眼图为了支持全双工传输,串行RapidIO收发信号是独立的,所以每一个串行RapidIO口由4根信号线组成。标准的1x/4x串行RapidIO接口支持4个口,共16根信号线。这4个口可被用作独立的接口传输不同的数据;也可合并在一起当作一个接口使用,以提高单一接口的吞吐量。发送时,逻辑层和传输层将组好的包经过CRC编码后被送到物理层的FIFO中,“8b/10b编码”模块将每8位数据编码成10位数据,“并/串转换”模块将10位并行数据转换成串行位,发送模块把数字位转换成差分交流耦合信号在信号线上发送出去。接收的过程则正好相反。8b/10b编码是目前许多高速串行总线采用的编码机制,如1394b、SerialATA、PCIExpress、Infini-band、FiberChannel、RapidIO等总线或网络,都是8b/10b编码的拥护者。8b/10b编码方式早在1983年就被提出,现在则成为主流传输标准选用的编码技术。“8B/10B编码”的用途:(1)保证有足够多的正负电压转换,以保证串行传输能从数据流中恢复时钟;(2)使传输的0和1的平均数目相等,以保证数据链路上的直流分量为零;(3)根据一套已建立的规则,使每个8比特字节所映射的10比特字符中的0和1维持不均等性;(4)较大的编码空间允许包含控制字符;(5)独特的编码模式用于同步和数据对齐。3.3包与控制符号RapidIO操作是基于请求和相应事务的。包是系统中端点器件间的基本通信单元。控制符号用于管理物理层互连的事务流,也用于包确认、流量控制信息和维护功能。在RapidIO交换结构上传送事务4、应用无线基础设施如基站、媒体网关等,是典型的高性能嵌入式通信系统,它们对互连的带宽、时延、复杂度、灵活性和可靠性都有非常高的要求。而串行RapidIO正是满足这些要求的最佳选择。4.1FreescaleFreescale在MPC8540/8560通信处理器中采用并行RapidIO。在其下一代通信处理器批注[d1]:其涵义就是指10个位中位0与位1出现次数的差。换句话说,8b/10b编码的“Disparity”就仅有“+2”(4个位0与6个位1)、“+0”(5个位0与5个位1)以及“-2”(6个位0与4个位1)三种状况。MPC8548和双核处理器MPC8641D中采用串行RapidIO。4.2Ti以TI的TMS320C6455DSP为例,它有4个3.125G的SRIO口,可支持的拓扑结构如图所示。TMS320C6455集成了1x/4xSRIO接口在传统的基站中,DSP与ASIC或FPGA之间的互连一般用外部存储器接口(EMIF);DSP之间或DSP与主机之间一般用HPI或PCI互连。它们的主要缺点是:带宽小、信号线多、主从模式接口、不支持对等传输。另外,DSP不能直接进行背板传输。使用SRIO则可有效的解决这些问题,大大提高无线基站的互连性能。图8显示了一种无线基站基带互连框图。在这里,SRIO实现了大部分器件之间的互连,甚至可支持DSP进行直接背板传输。通过SRIO交换器件互连可以进一步提高基带处理的灵活性,图9显示了一种基带SRIO交换互连的框图。这种互连有利于实现先进的基带处理资源池架构,数据可被送到任何一个通过SRIO交换器互连的处理器中,从而达到各个处理器的负载均衡,更加有效的利用系统的整体处理能力。综上所述,对嵌入式系统尤其是无线基础设施,串行RapidIO是最佳的互连技术。高达10Gb/s的带宽、低时延和低软件复杂度满足了飞速发展的通信技术对性能的苛刻需求;串行差分模拟信号技术满足了系统对引脚数量的限制,及对背板传输的需求;灵活的点对点对等互连、交换互连,和可选的1.25G/2.5G/3.125G三种速度能满足多种不同应用的需求。4.3Thalescomputers在VME(VersaModuleEurocard)嵌入式系统中,前面板端口和背板都采用RapidIO进行连接。CablesandConnectorsVXSConnectorSerialLinkRearP0connector参考文献:(1)《TP_RAPIDIO_INTRODUCTION.pdf》;(2)《RapidIO_Overview-Apps_v07.pdf》;(3)《今日电子--串行RapidIO高性能嵌入式互连技术(图).htm》