移动应用中多媒体内容的爆炸式增长孕育了无线网络的又一次进化。为了赶上日益增多的语音和数据通信量需求,就必须开发出高性能的系统。为了在竞争如此激烈的市场上保持领先,系统设计人员必须选择一种可扩展的互连标准,以提供更佳的性能、成本、功耗和可靠性。串行RapidIO(S-RIO)是唯一能够满足无线基带处理应用的特定需求的协议,不过万兆位以太网(10GE)有时也被看作一种替代性解决方案。
要理解10GE和S-RIO之间的差别,首先必须了解这两种标准的发展历史。以太网标准是专为大型局域网或广域网而设计的,其前提是网络上存在着功能强大的处理器,能够加强软件协议栈。这些种类的网络上的事务实际上通常都包含大量的数据通信流量,具有很高的数据承载量。但是,无线基带处理则具有与之不同的需求。在无线系统中,高性能处理部件都同时携带有控制面和数据面的通信量,并需要在彼此之间进行快速而可靠的通信。串行RapidIO就是为了支持这种类型的需求而量身设计的。
性能很重要
3G+与4G无线协议以及高级天线系统(AAS)架构都需要强大且可预知的系统性能。为了满足这种需求,在RapidIO标准中,延迟和协议效率被给予了特殊的关注。为了尽量缩短延迟,RapidIO的设计采用了较短的数据包报头以及基于目标ID(DestID)的简单路由选择架构。这种简单的传输层功能实现了100ns以内的直通交换机延迟。RapidIO提供了对传输中的数据包进行“stomp”的功能,从而使得交换机设备无须接收到整个数据包就能够将其转发(“stomp”是一种控制符号,在RapidIO协议中用于在遇到错误时取消已部分传输的数据包)。这种功能在不影响可靠性的前提下提高了系统的整体性能。如果在转发的数据包中检测到错误,RapidIO端口在无须软件干预的情况下就能够对传输中的数据包进行“stomp”处理。
相反,10GE数据包的报头要长得多,从而导致与其他处理部件进行通信的延迟增加。对于局域网与广域网而言,较长的数据包长度可以补偿较长的报头长度及相关开销所带来的影响。但是,与局域网/广域网模型中的通信量相比,无线应用中的通信量通常长度较短,而数量较多。对于这种承载量较小的通信量而言,10GE标准中较长的数据包报头就会给每次事务的效率带来不利影响,并降低系统的整体性能。10GE标准中第2层的交换机延迟也要比S-RIO中的延迟大得多,在最佳情况下也要远远超过200ns。以太网不能对传输中的数据包进行“stomp”处理。相反,它会“尽力”去传递数据包,并依赖第3或第4层的软件来验证数据包内容的完整性。