APP下载

基于Tsi620的RapidIO交换技术应用研究

2015-05-15武华石海洋

电脑知识与技术 2015年8期

武华 石海洋

摘要:RapidIO作为一种高速率、低延迟的互连通信技术,在嵌入式系统中得到了广泛应用,为了能够更好的适应PCI总线系统,就需要提供一种RapidIO和PCI接口之间的桥接器。Tsi620芯片具有良好的RapidIO和PCI接口之间的转换功能。该文以Tsi620为基础,介绍了RapidIO和PCI接口之间转换的基本原理和RapidIO交换网络的配置方法。

关键词:RapidIO,Tsi620,交换技术

中图分类号:TP393.03 文献标识码:A 文章编号:1009-3044(2015)08-0032-02

Abstract: RapidIO as a high-speed and low-latency connection and communication technology, has been greatly applied in embedded system. In order to adjust to a lot of PCI bus system, it needs a RapidIO and PCI interface bridge. Tsi620 could convert RapidIO bus data to PCI bus data with great efficiency and speed. This paper introduced the basic principle of conversion between RapidIO and PCI interface, and displayed the methods of RapidIO network configuration.

Key words: RapidIO;Tsi620;Communicate technology

RapidIO技术为嵌入式系统提供了一种高速率、低延迟的互连通信技术,近些年被广泛应用[1]。但是在实际应用中,除了构建一个高速的RapidIO交换网络外,同时RapidIO交换网络还需要具备一定的兼容性,来适应当前大量使用的PCI接口系统,完成RapidIO和PCI接口之间的转换[2],这就需要一种既支持RapidIO交换,又支持RapidIO和PCI接口之间转换功能的芯片,Tsi620很好的满足上述需求,它不但能够实现RapidIO的交换,同时能够实现RpaidIO和PCI接口之间的转换。

1 Tsi620简介

Tsi620是一个RapidIO交换机,同时也是一个RapidIO到PCI的桥接器[3]。它不但具有RapidIO的交换功能,可以实现多个RapidIO系统之间的互联通信,而且可以实现从RapidIO到PCI,PCI到RapidIO的事务转换。Tsi620组织架构如图1所示。

从组成结构上划分,Tsi620主要有4个部分组成:RapidIO交换机,SREP(RapidIO端系统),Bridge,PCI接口[3]。下面分别介绍这4部分的组成以及基本功能。

RapidIO交换机:可以支持7个RapidIO设备,其中有6个支持4x/1x端口,第7个是FPGA接口,第8个接口是内部交换接口,面向PCI方向,连接SREP。它的主要功能是完成端口之间RapidIO的交换,在端口配置查找表,根据从端口进来的数据所携带的目标ID,将数据转发到目的端口,实现路由功能。

SREP:一个端口连接到RapidIO交换机的端口8上,另一边与Bridge连接。它的功能是可以将RapidIO交换机过来的事务转换成Bridge的事务,然后转交给Brideg去处理,同时也可以实现把Bridge事务转换成RapidIO事务,然后转交给RapidIO交换机处理。

Brideg: 连接着Tsi620的PCI接口和SREP,端口0连接SREP, 端口1连接PCI接口。支持PCI总线和RapidIO网络之间的非透明传输,提供了一个高速率、低延迟的通信。网络的PCI接口,允许其他PCI设备连接到此端口上,可以实现PCI总线和Bridge之间的数据传输。

2 Tsi620的工作原理

2.1 RapidIO 与PCI事务转换的基本原理

RapidIO 和PCI之间,有两个方向的事务需要转换:RapidIO-to-PCI,PCI-to-RapidIO。它们之间事务转换的基本原理是基于地址空间的映射。

其中RapidIO-to-PCI,需要两步转换:

步骤一:RapidIO-to-Bridge, 在SREP端,通过Bar空间和查找表将RapidIO事务转换为Bridge事务类型。

步骤二:Bridge-to-PCI, 在PCI接口有5个Bar空间,可以将Bridge事务转换为PCI总线事务,当Bridge事务地址空间落入相应的Bar空间,就将Bridge事务转换为相应的PCI总线事务类型,并且映射为PCI的地址空间。

同理PCI-to-RapidIO,需要两步转换:

步骤一:PCI-to-Bridge,在PCI接口,把PCI总线请求转换为Bridge的事务类型,通过BAR空间上的查找表把PCI地址空间映射为Bridge的地址空间;

步骤二:Bridge-to-RapidIO,在SREP端,把Bridge事务的请求映射为不同的RapidIO事务类型,同时转换为RapidIO的地址空间,并且报文信息中带有目标ID,HOP数,优先级等参数。

通过上述两个步骤可以实现从PCI-to-RapidIO的转换。

2.2 RapidIO交换的基本原理

RapidIO交换的基本原理是基于目的ID查找的交换方式。在每个端口都配置一个查找表,查找表的属性包括:目的ID和目的PORT[1]。RapidIO 交换原理示意如图2所示。

如图2所示,端口2配置了查找表,该表中包含了两条目录,当端口2接收到的数据所带的目的ID为0xAA, 然后通过查找表,目的ID 0xAA映射到了目的端口 8, 因此端口2就将此数据转发到端口8,完成交换。如果收到的数据的目的ID是0xAB,就将此数据转发到端口4,以此类推。

3 Tsi620的配置

3.1 RapidIO与PCI事务转换的配置

RapidIO与PCI之间转换的配置,需要在SREP和PCI接口分别进行两个方面的配置。在SREP需要完成R2I(RapidIO-to-PCI方向) 的配置、I2R( RapidIO-to-PCI方向) 的配置。在PCI接口需要配置由Bridge到PCI的转换,需要配置Bar地址, Remap地址以及Mask值,完成Bridge到PCI之间的映射。同理也要完成从PCI到Bridge之间的转换配置。

3.2 RapidIO交换机的配置

RapidIO交换机的配置,主要包括以下几个方面:端口模式、端口速率、交换路由。Tsi620对外提供了7个RapidIO接口,其中port 0、port2、port4支持4x或1x,port 1、port3、port5只支持1x模式。端口7接FPGA可以支持4x或1x。RapidIO链路速率支持:1.25G、2.5G、3.125G的波特率。可以通过软件进行端口速率配置。交换路由的配置,其中主要是给每个端口配置一个路由表,包括目的ID和目的PORT[4]。RapidIO报文根据端口路由表来进行报文的路由和转发。同时需要注意的是,需要配置两个方向的路由。在两个端口之间通信,需要在两个端口之间分别配置路由表映射到对方。

4 应用实例

在某航电系统技改升级过程中,为了适应原来系统中的PCI总线接口。在基于RapidIO高速总线为基础的系统中增加了Tsi620芯片,一方面把新设备之间通过RapidIO交换互联,实现了高速数据通信;另一方面将通信带宽要求不高的老设备通过PCI总线进行互联。很好的适应了新老设备之间的兼容以及改进升级,某航电系统升级系统交联示意图,如图3所示。

通过Tsi620芯片的应用,在新设备之间建立起了2.5Gbps带宽的RapidIO交换网络,很好的满足了新设备之间高带宽的要求,提高了航电系统的通信能力,并且在新老设备之间保持了基于PCI接口通信的要求,满足了系统改进升级的要求。

5 总结

本文以Tsi620为基础,介绍了RapidIO交换网络以及RapidIO和PCI接口之间转换的基本原理,并且详细描述了RapidIO交换网络以及RapidIO和PCI接口之间转换的配置过程,并且通过应用实例进行了验证说明,为RapidIO技术的广泛应用和Tsi620的配置提供一定的参考。

参考文献:

[1] Sam Fuller. RapidIO嵌入式系统互连[M]. 北京:电子工业出版社,2006.

[2] 聂新义,孙柯柯,马克杰. PCI转RapidIO桥的设计与实现[J].计算机工程,2010(8).

[3] Tundra. Tsi620? RapidIO Switch RapidIO-to-PCI Bridge User Manual. www.tundra.com.2007.10.

[4] 黄振中,柴小丽,黎想.基于Vxworks 的PCI-RapidIO桥驱动设计[J].计算机工程,2010(2).