现在的位置: 首页 > 综合 > 正文

关于RapidIO嵌入式系统互连协议的介绍(JJ)

2012年08月13日 ⁄ 综合 ⁄ 共 3718字 ⁄ 字号 评论关闭
 

RapidIO的简介

RapidIO互连架构是一个开放的标准,满足了嵌入式基础设施在应用方面的广泛需要。可行的应用包括连接多处理器、存储器、网络设备上的存储器映射I/O器件、存储子系统和通用计算平台。

RapidIO互连定义包括两类技术:面向高性能微处理器及系统互连的并行接口;面向串行背板、DSP和相关串行控制平面应用的串行接口。串行和并行RapidIO具有相同的编程模型、事务处理和寻址机制。

RapidIO支持的编程模型包括基本存储器映射I/O事务、基于端口的消息传递和基于硬件一致性的全局共享分布式存储器。RapidIO也提供各种错误检测机制,还提供定义良好的硬件和基于软件的架构以报告并纠正传输错误。

RapidIO互连被定义为分层结构,在保证后向兼容性的同时提供了可扩展性和未来增强的可能。

 

RapidIO互连技术

RapidIO采用三层分级体系结构。逻辑层规范位于最高层,定义全部协议和包的格式,它们为端点器件发起和完成事务提供必要的信息。传输层规范在中间层,定义RapidIO地址空间和在端点器件间传输所需的路由信息。物理层规范在整个分级结构层的底部,包括器件级接口的细节,如包传输机制、流量控制、电气特性和低级错误管理。

RapidIO技术主要面向高性能嵌入式系统的互连通信,它采用高性能LVDS技术,可以在4对差分线上实现10Gbps的有效传输速率,而且具有万兆以太网、PCI express更高的传输效率。由于RapidIO在路由、交换、容错纠错、使用方便性上有较完善的考虑,可以实现基于硬件的高性能可靠数据传输,所以必将在嵌入式系统、3G3G之后的Beyond3G4G移动通信基站、高性能数字信号处理系统等中得到广泛应用。

大多数电子系统实现三个基本功能:处理数据、来回移动数据和存储数据,即在处理和传输数据时,也在沿途不同的地方存储这些数据。开发RapidIO技术正是为了在嵌入式系统内提供以交换互连而非总线为基础的传输数据的标准方法,从而能够替代很多现有总线技术或基于交换的技术如PCIVMEUtopiaInfinibandEthernet(在系统内使用)或者SPI4

 

RapidIO的应用

RapidIO属于系统内部互连技术。目标应用是高性能的嵌入式设备市场中的系统内部互连。

RapidIO互连适用于多器件紧耦合的工作环境。RapidIO可以用于PCIPCI透明桥接,允许扁平结构并使用更少的引脚传输更远的距离。

RapidIO非常适合于热插拔应用,因为RapidIO的点到点拓扑结构可以使设备的抽离对相邻设备或子系统仅有非常少的电气影响,甚至没有影响。

 

RapidIO互连结构协议

RapidIO互连结构协议中,其主要针对以下几个方面进行了定义:

1.      输入输出(I/O)接口的逻辑操作规范

I/O逻辑操作支持RapidIO存储空间的基本读写。I/O操作可以通过使用请求、响应事务对来完成。请求和响应事务对穿越RapidIO交换结构运行,但当事务穿越交换结构时RapidIO交换结构并不跟踪该事务。

RapidIO体系结构中定义了6种基本的I/O操作,以及相应使用的事务。

1. 读操作,使用的事务是:NREADRESPONSE

2. 写操作,使用的事务是:NWRITE

3. 有响应写操作,使用的事务是:NWRITE_RRESPONSE

4. 流写操作,使用的事务是:SWRITE

5. Atomic(读-修改-写)操作,使用的事务是:ATOMICRESPONSE

6. 维护操作,使用的事务是:MAINTENANCE

 

2.      消息传递的逻辑操作规范

当数据必须被系统中的多个处理器共享时,必须有协议维护和管理多个器件对共享数据的临时占用。在“非共享”的系统中,需要一种机制把数据从一个处理器件传递到另一个器件。使用消息传递(Message Passing)和信箱(mailbox)可以实现这种机制。

RapidIO互连协议提供了一种有用的消息传递机制。RapidIO消息传递协议描述了支持信箱和门铃通信的事务。RapidIO信箱是一个端口,器件间可通过它发送消息。接收器件在消息到达后对其进行处理。RapidIO消息的长度从04096字节不等。一个接收器件有1~4个可寻址消息队列来捕获呼入的消息。

RapidIO消息传递逻辑规范定义了两种不同的包格式用于消息事务:

1.      10类包(门铃事务DOORBELL)格式用来发送非常短的16位数据载荷,门铃事务很适合发送处理器间的中断

2.      多事务消息用第11类包发送最多4096字节的数据载荷

RapidIO消息事务描述系统中用来在处理部件间通信的包。RapidIO行业协会既没有规定实际的发送和接收缓冲区的结构,也没有为消息结构定义标准软件API接口。

消息经常被写入或读出处理部件的本地存储器缓冲区。根据期望的消息负载,可能使用不同的结构来支持与发送和接收硬件相关的消息缓冲区的使用和再使用。

 

3.      公共传输规范

公共传输规范定义了一种标准的传输机制,这样做的目的是为了使头信息加进RapidIO的逻辑包,并且头信息可以通过交换结构来说明。RapidIO互连确定这一机制的执行过程,这个执行过程同样也需要RapidIO互连定义其物理层特性,比如I/O信号水平、互连的拓扑结构、物理层协议,以及错误检测。

在这一章节里,RapidIO逻辑规范定义了三个传输方式,传输方式将作为独立的结构,因此系统互连可以为任何特定的应用提供需要,而且,所以传输方式和它们的逻辑包都是以比特流的形式相互传递。这三种传输方式分别为:

1.      系统拓扑结构:RapidIO中,器件与器件间的通信时通过发送包含源和目的器件ID的包进行的。在使用器件ID作为系统级寻址方案的基础上,RapidIO几乎可以支持任何系统拓扑结构,主处理器必须复制所有器件的所有表并负责在路径故障事件发生前和发生后改变系统拓扑结构,也可以通过与系统中所有器件的交互和通过向系统中所有器件发送后期事件(post-event)来测试所有连接路径配置的正确性。

2.      基于交换的系统:基于RapidIO的处理器和交换产品建立的系统,交换机组成的互连结构通过翻译传输字段路由从一个处理器件发往另一个处理器件的包。由于请求经常要求响应,所有传输字段包含包的源器件ID和目的器件ID。源器件ID决定返回请求器件的路径。

3.      系统中包的路由:路由RapidIO包通过交换结构的最常用方法在交换机中使用路由表。互连交换结构中的每个交换机都有一个查询表,指示交换机怎样根据目的器件ID将每个包从输入端口路由到输出端口。具体采用哪一种路由方式取决于实际的应用。

 

4.      8/16位链路协议端点的物理层规范

8/16位链路协议端点规范(8/16 LP-LVDS)详细规定了使用IEEE标准LVDS信号技术时同时发送或接收8/16位数据、时钟和帧(FRAME)信号的方法。

8/16 LP-LVDS接口是一种源同步接口。这意味着时钟会与相关数据一起传送,也意味着在发送和接收时钟间不用定义相位关系,而且这两个时钟可以工作在不同频率。在较高频率使用源同步时钟可以进行更长距离的传输。16位接口可用两个时钟组成时钟对来帮助控制偏移(skew)现象。

LVDS是一种面向短距离印刷电路板应用的低摆幅恒流差分信号技术。LVDS是技术独立的,可以在CMOS上实现。差分信号改进了噪声容限,对外部产生的噪声、低程度电磁干扰具有免疫力,并减少了电源和地信号的引脚数。RapidIO规范建议在传输高频信号时附加源端匹配电阻来减小信号反射效应。

RapidIO并行物理层协议里,包和控制符号信息被分解到宽度为8位或者16位的接口中,而不是到单通道或者四通道的接口。并行接口使用IEEE LVDS(低电压差分信号)标准的差分电气信号,而串行接口使用基于IEEE XAUI标准的差分电气信号。

并行物理层的功能包括包传输、流量控制、错误管理以及其他的系统功能。

 

5.      全局共享存储器的逻辑操作规范

支持全局共享的分布式存储器系统是RapidIO协议的扩展功能之一。这意味着可以吧存储器放到系统中不同的物理位置上,可以正确的再不同处理器件间缓存。

尽管RapidIO协议主要是面向信息传递的编程模式,在RapidIO协议规范里,它同样支持全局分布式共享存储器(GSM)的模型。在全局分布式共享存储器编程模型中,首先选择的编程模型是现代通用多处理器计算机系统,而这需要得到硬件高速缓存一致性的支持。另外,在RapidIO协议中,额外增加的GSM能够使分布式I/O处理器件和多用途处理器件同时存在。

RapidIO制定了一种基于目录的一致性解决方案来支持这种方法。使用这种方法,每个存储器控制器都有责任跟踪每个数据元素的当前副本在系统中位于什么位置,为一致域中的每一器件维护一个目录,跟踪每个器件的修改、共享、位置(MSL)等简单的一致性状态。

对于一个基于RapidIO技术的计算系统,它是一个多重处理系统,通常使用RapidIO

抱歉!评论已关闭.