微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 串行RapidIO交换技术

串行RapidIO交换技术

时间:10-23 来源:互联网 点击:

摘要 高性能嵌入式信号处理系统对芯片间及板间互联的带宽、成本、灵活性及可靠性的要求不断提高而传统的互联方式无法满足日益增长的性能要求。基于此背景,文中研究了当前嵌入式系统互联唯一的国际标准RapidIO的组网技术及交换原理,给出了一种基于Tsi578芯片的可重构分布式并行处理互联网络的组网方案。经验证,交换模块性能稳定,实现了动态和静态的可重构。
关键词 RapidIO协议;系统互联;实时信号处理;数据交换

当前,集成工艺水平的飞速发展使得现场可编程门阵列(Field Programmable Gate Array,FPGA)、数字信号处理器(Digital Signal Proeessor,DSP)以及专用集成电路(Application Specific Integrated Circuit,ASIC)等处理器内核性能得到了较大的提升,表征处理器处理能力的时钟频率呈指数增长。于此同时随着语音数字输入、图像处理和阵列雷达等需大量实时数据处理需求的出现,仅靠单个处理器无法满足大数据量的高速实时处理要求,分布式并行处理成为提高系统性能的有效解决途径,已广泛应用于高速实时信号处理领域。
影响分布式并行处理系统性能的因素主要包括:处理器的性能、处理单元的互联网络以及并行算法和任务的分配。在处理器性能得到保证以及并行算法和任务分配确定的前提下,处理单元之间的互联方式成为系统性能提升的瓶颈。传统并行总线由于其自身缺陷已无法满足系统的互联通信需求,新兴的高速串行传输方式取代并行成为互联通信的主流。其中,串行RapidIO(Serial RapidIO)以其低引脚数,基于报文
交换的互联体系结构,高带宽、低延时、高效率及高可靠性等优点成为嵌入式系统互联的国际标准,为高性能嵌入式系统互联提供了良好的解决方案。文中讨论的重点是分析RapidIO的交换原理并完成了一种基于IDT公司Tsi578芯片的基于交叉开关的可重构组网方案的设计。

1 RapidIO协议概述
RapidIO是一种开放的嵌入式互联标准,由RapidIO行业协会支持开发,并指导其构架的未来发展方向。RapidIO技术最初是由Freescale和Mercury共同研发的一项互连技术,既可作为处理器的前端总线,用与处理器之间的互连,还可作为系统级互连的高效前端总线而使用。19 99年完成第一个标准的制定,当前最新版本为Version2.0。RapidIO已经成为电信,通讯以及嵌入式系统内的芯片与芯片之间,板与板之间的背板互连技术的生力军。
RapidIO操作是基于请求和响应事物的。包是系统中端点器件间的基本通信单元。发起器件或主控器件产生一个请求事物,该事物被发送至目标器件。目标器件产生一个响应事物返回至发起器件来完成该次操作。RapidIO互联定义包括两类技术:面向高性能微处理器及系统互联的并行接口;面向串行背板、DSP和相关串行控制平面应用的串行接口。与以太网协议类似,RapidIO也采用分层结构,由逻辑层、传输层和物理层构成。图1所示为其协议的分层结构。逻辑层规范位于最高层,定义了协议和包的格式,为端点器件发起和完成事物提供必要的信息。传输层规范位于中间层,定义RapidIO地址空间和在端点器件间传输所需的路由信息。物理层规范在整个分层结构的底层,包括器件接口的细节,如包传输机制、流量控制、电气特性和低级错误管理等。

RapidIO最明显的一个特点就是采用了单一的公用传输层规范来相容、汇聚不同的逻辑层和物理层,单一的传输层实体增强了RapidIO的适应性,方便互联网络的设计。

2 RapidIO交换原理
RapidIO传输层的包格式被设计为独立于交换结构,如此系统互联就可以采用特定应用所需的任何技术。通常RapidIO是围绕交换机来组织的,除了交换机以外RapidIO网络的另一个基本结构是端点(Endpoints)。端点是数据包的发送者和接受者,交换机用来对端点之间传送数据包。RapidIO使用器件ID唯一地识别网络中的所有器件,几乎可以支持任何系统拓扑结构。器件ID内部不包含关于器件具体位置的信息。互联器件负责发现器件的具体位置并且通过目标器件ID转发包。在系统启动时的系统发现(System Discovery)阶段找到器件在系统中的位置。虽然交换机不知道器件在系统中的确切位置,但通过编程可以使交换机理解器件在系统中所处的方位。当器件位置改变时——可能发生热插拔(Hot Swap)或路径故障情况下,只需重新配置交换机就可以获得新的拓扑结构。
RapidIO中,器件与器件问的通信是通过发送包含源和目的器件ID包进行的。器件ID是位于包头的8位或16位字段,交换芯片通过器件ID将包转发到最终目的。交换芯片使用查找表保持器件ID和正确的输出端口问的关系。只要包给定了器件ID,交换芯片就能够为其找到输出端口。由于器件ID字段相对较小并且使用了哈希关键字来缩小查找表,所以交换机可以很快查找并且不会增加RapidIO包通过交换器件的传输延迟。
由于目的和源器件ID都包含在包头中,所以交换机和端点不仅知道包去向何处,而且知道包的来处。系统可以使用源器件ID来送回一个响应,表明正确的操作已经完成或出现一个错误条件。RapidIO仅通过硬件结构来得到可靠的信道,使得在有限信任系统中来回搬移数据的效率较高。

3 RapidIO交换功能方案设计
3.1 方案概述
在雷达信号处理、数字图像处理领域,海量数据高速实时处理至关重要。由于FPGA芯片在大数据量的底层算法处理上的优势及DSP芯片在复杂算法处理上的优势,DSP+FPGA的系统构架越来越广泛,这就使得FPGA与DSP芯片之间数据的实时通信至关重要。本方案正是基于这种需求,设计了一种基于串行RapidIO的交换模块。在保证系统中DSP与FPGA之间数据高速交换的同时,由于采用了Tsi578交换芯片,DSP与FPGA之间的互联网络可根据不同需要重新配置,既可在系统工作之前对互联网络进行配置,也可在运行过程中修改DSP于FPGA的互联,达到互联网络的静态和动态可重构。
3.2 Tsi578芯片及其交换功能实现
在串行RapidIO互联应用中,通常不直接将端点器件直接相连,而是利用交换结构构建可重构的动态网络,其中交换芯片作为组成交换结构核心部件。目前市面上专业的RapidIO芯片提供商包括IDT公司、PMC—Serial公司和Mercure公司,其中IDT公司在合并原来的Tundra公司后产品最全。设计选取的交换芯片为IDT公司的Tsi578芯片。该款交换芯片是聚合带宽达80Gbit·s-1的全双工串行RapidIO交换器,符合1.3版本的串行RapidIO规范,适用于网状、矩阵架构与集成系统的高度可扩展解决方案。该芯片可配置高达8个4×模式链接或16个1×模式链接单个链路支持1.25、2.5及3.125 Gbit·s-1的速率。有关端口完全独立,且交换器支持混合的速度及带宽配置。
Tsi578每个端口都有各自独立的查找表,各端口支持两种模式的操作:Flat mode和Hierachical mode。Flat mode是默认的模式,支持ID的范围为0~511,超出该范围的包将被路由到寄存器设置的默认端口。Hierarchical mode可寻址的最大范围为6 400。以Flatmode为例,如图2所示为一个典型的该模式的路由方式。Tsi578收到包后先进行完整性检查,例如CRC校验等,并通过物理层发送确认信号给源器件,再由逻辑端口定位到目的ID。如果ID256则查找本地查找表,如包A目的IDox12对应的输出端口为端口2,那么该包的输入端口将与端口2连通;若目的ID≥256而512则查找全局查找表,如包C目的IDox145对应的输出端口为端口9,那么该包的输入端口将与端口9连同;所有目的ID>512的包将被发送到默认端口14。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top