与传统嵌入互连方式的比较
图1展示了RapidIO互连在嵌入式系统中的应用。随着高性能嵌入式系统的不断发展,芯片间及板间互连对带宽、成本、灵活性及可靠性的要求越来越高,传统的互连方式,如处理器总线、PCI总线和以太网,都难以满足新的需求。
图1 RapidIO在嵌入式系统中的应用
表1总结比较了的三种带宽能达到10Gb/s的互连技术:以太网、PCI Express和串行RapidIO。可以看出串行RapidIO最适合高性能嵌入式系统应用。
串行RapidIO协议
RapidIO行业协会成立于2000年,其宗旨是为嵌入式系统开发可靠的、高性能、基于包交换的互连技术。串行RapidIO是物理层采用串行差分模拟信号传输的RapidIO标准。SRIO 1.x 标准支持的信号速率为1.25GHz、2.5GHz、3.125GHz;正在制定的RapidIO 2.0标准将支持5GHz和6.25GHz.
目前,几乎所有的嵌入式系统芯片及设备供应商都加入了RapidIO行业协会。以德州仪器(TI)为例,TI 2001年加入该组织,2003年成为领导委员会成员。2005年底,TI推出第一个集成SRIO的DSP,后来又陆续推出共5款支持SRIO的DSP,这使得RapidIO的应用全面启动。
RapidIO协议结构及包格式
为了满足灵活性和可扩展性的要求,RapidIO协议分为三层:逻辑层、传输层和物理层,如图2所示。逻辑层定义了操作协议;传输层定义了包交换、路由和寻址机制;物理层定义了电气特性、链路控制和纠错重传等。
图2 RapidIO协议分层结构
像以太网一样,RapidIO也是基于包交换的互连技术。如图3所示,RapidIO包由包头、可选的载荷数据和16位CRC校验组成。包头的长度因为包类型不同可能是十几到二十几字节。每包的载荷数据长度不超过256字节,这有利于减少传输时延,简化硬件实现。
图3 RapidIO包格式
上述包格式定义兼顾了包效率及组包/解包的简单性。RapidIO交换器件仅需解析前后16位,以及源/目地器件ID,这简化了交换器件的实现。
逻辑层协议
逻辑层定义了操作协议和相应的包格式。RapidIO支持的逻辑层业务主要是直接IO/DMA(Direct IO/ Direct Memory Access)和消息传递(Message Passing)。
直接IO/DMA模式是最简单实用的传输方式,其前提是主设备知道被访问端的存储器映射。在这种模式下,主设备可以直接读写从设备的存储器。直接IO/DMA在被访问端的功能往往完全由硬件实现,所以被访问的器件不会有任何软件负担。从功能上讲,这一特点和TI DSP的传统的主机接口(HPI)类似。但和HPI口相比,SRIO带宽大、引脚少,传输方式更灵活。
消息传递模式则类似于以太网的传输方式,它不要求主设备知道被访问设备的存储器状况。数据在被访问设备中的位置则由邮箱号(类似于以太网协议中的端口号)确定。从设备根据接收到的包的邮箱号把数据保存到对应的缓冲区,这一过程往往无法完全由硬件实现,而需要软件协助,所以会带来一些软件负担。
传输层协议
RapidIO是基于包交换的互连技术,传输层定义了包交换的路由和寻址机制。
RapidIO网络主要由终端器件(End Point)和交换器件(Switch)组成。终端器件是数据包的源或目的地,不同的终端器件以器件ID来区分。RapidIO支持8位或 16位器件ID,因此一个RapidIO网络最多可容纳256或65536个终端器件。与以太网类似,RapidIO也支持广播或组播,每个终端器件除了独有的器件ID外,还可配置广播或组播ID。交换器件根据包的目地器件ID进行包的转发,交换器件本身没有器件ID。
RapidIO的互连拓扑结构非常灵活,除了通过交换器件外,两个终端器件也可直接互连。以TI的TMS320C6455 DSP为例,它有4个3.125G的SRIO口,可支持的拓扑结构如图4所示。
图4 RapidIO支持灵活多样的拓补结构
物理层协议
RapidIO 1.x 协议定义了以下两种物理层接口标准:8/16 并行LVDS协议和1x/4x 串行协议 (SRIO)。
并行RapidIO由于信号线较多(40~76)难以得到广泛的应用,而1x/4x串行RapidIO仅4或16个信号线,逐渐成为主流。
串行RapidIO基于现在已广泛用于背板互连的SerDes技术,它采用差分交流耦合信号。差分交流耦合信号具有抗干扰强、速率高、传输距离较远等优点。差分交流耦合信号的质量不是由传统的时序参数来衡量,而是通过眼图来衡量,眼图中的“眼睛”张得越开则信号质量越好。图5是一个典型的串行RapidIO信号眼图。
图5 串行RapidIO信号眼图
为了支持全双工传输,串行RapidIO收发信号是独立的,所以每一个串行RapidIO口由4根信号线组成。标准的1x/4x 串行RapidIO接口支持4个口,共16根信号线。这4个口可被用作独立的接口传输不同的数据;也可合并在一起当作一个接口使用,以提高单一接口的吞吐量。
TI的TMS320C6455 DSP上集成了标准的1x/4x串行RapidIO接口,如图6所示。
图6 TMS320C6455集成了1x/4xSRIO接口
发送时,逻辑层和传输层将组好的包经过CRC编码后被送到物理层的FIFO中,“8b/10b编码”模块将每8位数据编码成10位数据,“并/串转换”模块将10位并行数据转换成串行位,发送模块把数字位转换成差分交流耦合信号在信号线上发送出去。接收的过程则正好相反。
串行RapidIO在无线基础设施上的应用
无线基础设施如基站、媒体网关等,是典型的高性能嵌入式通信系统,它们对互连的带宽、时延、复杂度、灵活性和可靠性都有非常高的要求。而串行RapidIO正是满足这些要求的最佳选择。
以无线基站为例,在SRIO出现之前,无线基站的基带处理的典型框图如图7所示。
图7 传统无线基站基带处理框图
在传统的基站中,DSP与ASIC或FPGA之间的互连一般用外部存储器接口(EMIF);DSP之间或DSP与主机之间一般用HPI或PCI互连。它们的主要缺点是:带宽小、信号线多、主从模式接口、不支持对等传输。另外,DSP不能直接进行背板传输。
使用SRIO则可有效的解决这些问题,大大提高无线基站的互连性能。图8显示了一种无线基站基带互连框图。在这里,SRIO实现了大部分器件之间的互连,甚至可支持DSP进行直接背板传输。
图8 SRIO提高无线基站互连性能
通过SRIO交换器件互连可以进一步提高基带处理的灵活性,图9显示了一种基带SRIO交换互连的框图。这种互连有利于实现先进的基带处理资源池架构,数据可被送到任何一个通过SRIO交换器互连的处理器中,从而达到各个处理器的负载均衡,更加有效的利用系统的整体处理能力。
图9 SRIO交换为无线基站基带处理提供更大的灵活性
综上所述,对嵌入式系统尤其是无线基础设施,串行RapidIO是最佳的互连技术。高达10Gb/s的带宽、低时延和低软件复杂度满足了飞速发展的通信技术对性能的苛刻需求;串行差分模拟信号技术满足了系统对引脚数量的限制,及对背板传输的需求;灵活的点对点对等互连、交换互连,和可选的1.25G/ 2.5G/3.125G三种速度能满足多种不同应用的需求。
文章评论(0条评论)
登录后参与讨论