掌桥专利:专业的专利平台
掌桥专利
首页

一种基于FPGA及光交换矩阵的SRIO数据传输系统及方法

文献发布时间:2024-04-18 20:01:30


一种基于FPGA及光交换矩阵的SRIO数据传输系统及方法

技术领域

本发明涉及数据交换网络技术领域,更具体地,涉及一种基于FPGA及光交换矩阵的SRIO数据传输系统及方法。

背景技术

现在主流通讯设备大多采用光通讯方式进行数据传输,SRIO总线由于存在连线少、传输速度高等优点,使用较为广泛。现有技术中存在采用RapidIO交换机作为不同用户数据交互的中转的SRIO数据传输系统,该系统虽然可以实现不同用户间的数据交互,但RapidIO交换机在某一时刻只能进行单通道数据通讯,且其本身处理数据及转发也存在一定的时间延迟。

发明内容

针对现有技术的至少一个缺陷或改进需求,本发明提供了一种基于FPGA及光交换矩阵的SRIO数据传输系统及方法,无需采用RapidIO交换机,没有交换延迟,提高了数据传输效率,同时光交换矩阵可以同时进行多个通道的数据交互,大大提高了数据传输带宽。

为实现上述目的,按照本发明的第一个方面,提供了一种基于FPGA及光交换矩阵的SRIO数据传输系统,包括:

至少一个包含ARM核心的FPGA,以及光交换矩阵模块;所述FPGA包括DMA接口模块、MHAL模块、数据处理模块、SRIO接口模块;

所述DMA接口模块用于从ARM核心获取以MHAL协议组帧的控制数据和第一业务数据,并发送至所述MHAL模块;

所述MHAL模块用于将所述DMA接口模块发送的所述控制数据和所述第一业务数据以MHAL协议解析,并发送至所述数据处理模块;

所述数据处理模块用于接收并存储所述MHAL模块发送的所述第一业务数据,还用于接收并解析所述MHAL模块发送的所述控制数据,并将所述控制数据通过串口发送至光交换矩阵模块的控制单元;

所述SRIO接口模块用于读取所述数据处理模块中存储的所述第一业务数据,并以SRIO接口协议组帧后发送至所述光交换矩阵模块;

所述光交换矩阵模块用于根据其控制单元中接收到的控制数据,选择数据通道,将所述第一业务数据发送至对应的外接设备。

进一步地,上述基于FPGA及光交换矩阵的SRIO数据传输系统还包括:

所述SRIO接口模块还用于在接收到外接设备发送的第一业务数据时,根据SRIO接口协议解析第二业务数据,并将所述第二业务数据发送至所述数据处理模块;

所述数据处理模块还用于接收并存储所述SRIO接口模块传来的所述第二业务数据,以及将所述第二业务数据发送至MHAL模块;

所述MHAL模块还用于将所述业务处理模块发送来的所述第二业务数据以MHAL协议组帧后发送至DMA接口模块;

所述DMA接口模块还用于将所述MHAL模块发来的所述第二业务数据根据MHAL协议解析后发送至用户界面。

进一步地,上述基于FPGA及光交换矩阵的SRIO数据传输系统还包括:

所述DMA接口模块和所述MHAL模块中,通过不同的LD以区分所述控制数据和所述第一业务数据。

进一步地,上述基于FPGA及光交换矩阵的SRIO数据传输系统还包括:

所述SRIO接口模块还用于在读取所述第一业务数据后,配置SRIO接口参数。

进一步地,上述基于FPGA及光交换矩阵的SRIO数据传输系统还包括:

所述SRIO接口模块通过光模块与所述光交换矩阵相连,所述光模块用于将所述第一业务数据由电信号转换为光信号,并通过光纤将所述第一业务数据发送至所述光交换矩阵。

按照本发明的第二个方面,还提供了一种基于FPGA及光交换矩阵的SRIO数据传输方法,应用于包含ARM核心的FPGA上,包括:

DMA接口模块从ARM核心获取以MHAL协议组帧的控制数据和第一业务数据,并发送至所述MHAL模块;

所述MHAL模块将所述DMA接口模块发送的所述控制数据和所述第一业务数据以MHAL协议解析,并发送至数据处理模块;

所述数据处理模块接收并存储所述MHAL模块发送的所述第一业务数据,还接收并解析所述MHAL模块发送的所述控制数据,并将所述控制数据通过串口发送至光交换矩阵模块的控制单元;

SRIO接口模块读取所述数据处理模块中存储的所述第一业务数据,并以SRIO接口协议组帧后发送至所述光交换矩阵模块;

所述光交换矩阵模块根据其控制单元中接收到的控制数据,选择数据通道,将所述第一业务数据发送至对应的外接设备。

进一步地,上述基于FPGA及光交换矩阵的SRIO数据传输方法还包括:

所述SRIO接口模块在接收到外接设备发送的第一业务数据时,根据SRIO接口协议解析第二业务数据,并将所述第二业务数据发送至所述数据处理模块;

所述数据处理模块接收并存储所述SRIO接口模块传来的所述第二业务数据,以及将所述第二业务数据发送至MHAL模块;

所述MHAL模块将所述业务处理模块发送来的所述第二业务数据以MHAL协议组帧后发送至DMA接口模块;

所述DMA接口模块将所述MHAL模块发来的所述第二业务数据根据MHAL协议解析后发送至用户界面。

进一步地,上述基于FPGA及光交换矩阵的SRIO数据传输方法还包括:

所述DMA接口模块和所述MHAL模块中,通过不同的LD以区分所述控制数据和所述第一业务数据。

进一步地,上述基于FPGA及光交换矩阵的SRIO数据传输方法还包括:

所述SRIO接口模块在读取所述第一业务数据后,配置SRIO接口参数。

进一步地,上述基于FPGA及光交换矩阵的SRIO数据传输方法还包括:

所述SRIO接口模块通过光模块与所述光交换矩阵相连,所述光模块将所述第一业务数据由电信号转换为光信号,并通过光纤将所述第一业务数据发送至所述光交换矩阵。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:

本发明提供的一种基于FPGA及光交换矩阵的SRIO数据传输系统及方法,无需采用RapidIO交换机,没有交换延迟,提高了数据传输效率,同时光交换矩阵可以同时进行多个通道的数据交互,大大提高了数据传输带宽。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种基于FPGA及光交换矩阵的SRIO数据传输系统示意图;

图2为本发明实施例提供的一种基于ZYNQ及4X4光交换矩阵的SRIO数据传输系统示意图;

图3为本发明实施例提供的MHAL协议结构图;

图4位本发明实施例提供的4X4光交换矩阵结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。

如图1所示,作为本发明的第一实施例,提供了一种基于FPGA及光交换矩阵的SRIO数据传输系统。该系统包括FPGA以及一个4X4光交换矩阵模块,其中,FPGA模块包括ARM核心。

如图2所示,在本实施例中,采用ZYNQ模块作为包括ARM核心的FPGA以实现该数据传输系统。ZYNQ模块中包括PS和PL部分,PS部分是ARM处理部分,PL部分为可编程逻辑部分。

本实施例中的数据传输系统,设置DMA接口模块作为PS和PL之间数据交互的桥梁,通过DMA接口模块,PS可以将数据发送至PL。在本实施例中,PS主要发送的数据分为两类,第一类为向外接设备发送的业务数据,被定义为第一业务数据;第二类为配置光交换矩阵的控制数据;为便于数据后续传输及处理,PS会将这两类数据以MHAL协议进行组帧后再发送至PL。

另一方面,FPGA也可以通过该数据传输系统接收来自其他外接设备(例如其他FPGA)发送的业务数据,接收到的业务数据被定义为第二业务数据,当接收到外接设备发送来的第二业务数据时,DMA接口模块会根据MHAL协议将有效数据解析出来,该接口具备全双工功能。

本实施例中的MHAL模块,会将PS通过DMA接口发生至PL的数据以MHAL接口协议进行解析,包括控制数据和第一业务数据;另一方面,MHAL模块在接收到数据处理模块传输至此模块的第二业务数据时,会对第二数据按MHAL协议进行组帧再传输至DMA接口模块。MHAL协议组帧方式可以参见附图3,其中包括了数据标识和数据长度部分。数据标识,即LD,用于标识控制数据和第一业务数据。

本实施例中还包括数据处理模块,数据处理模块包括数据缓冲区。该模块的主要作用是将经过MHAL模块解析后的第一业务数据存储至数据缓冲区,该缓冲区可以使用FIFO(先入先出数据缓存器)构建,也可以使用RAM构建,同时解析出光交换矩阵的控制数据,并将该数据通过串口发送至4X4交换矩阵的控制单元中。另一方面,当接收到SRIO接口模块传来的第二业务数据时会将第二业务数据存储至数据缓冲区后再向MHAL模块转发。

本实施例中还包括SRIO接口模块,该模块会读取存储在数据处理模块的数据缓冲区中的第一业务数据,根据第一业务数据的长度,业务类型及外接设备ID等,配置SRIO接口协议中的数据长度,初始地址,目的ID,数据门铃值等接口参数,并将第一业务数据按SRIO接口协议通过光模块以光纤为媒介发送至4X4交换矩阵中。另一方面,SRIO接口模块接收到第二业务数据时,该模块会根据SRIO接口协议解析出有效数据及数据门铃值等信息,将其传输至数据处理模块中。SRIO接口模块至少包括光模块,光模块的作用是将电信号转换为光信号,便于使用光纤进行传输,SRIO接口模块具备全双工功能。

如图4所示,4X4交换矩阵具有4路光纤输入及4路光纤输出接口,输入输出接口可以同时进行数据的收发工作具备全双工功能,其会根据控制单元中通道选通的控制字配置发送通道的使能状态,将数据通过转发至不同的外接设备中,亦可从外部设备接收数据后转发至本系统中。

本领域技术人员容易得知,本发明采用包含ARM核心的FPGA,并不限于本实施例中的ZYNQ,采用的光交换矩阵也不限于本实施例中的4路输入,4路输出的4X4光纤矩阵,可以根据需要选择其他实现上述功能的FPGA和/或光交换矩阵。

作为本发明的第二实施例,还提供了一种基于FPGA及光交换矩阵的SRIO数据传输方法,应用于包含ARM核心的FPGA上,包括:

DMA接口模块从ARM核心获取以MHAL协议组帧的控制数据和第一业务数据,并发送至MHAL模块;

MHAL模块将DMA接口模块发送的控制数据和第一业务数据以MHAL协议解析,并发送至数据处理模块;

数据处理模块接收并存储MHAL模块发送的第一业务数据,还接收并解析MHAL模块发送的控制数据,并将控制数据通过串口发送至光交换矩阵模块的控制单元;

SRIO接口模块读取数据处理模块中存储的第一业务数据,并以SRIO接口协议组帧后发送至光交换矩阵模块;

光交换矩阵模块根据其控制单元中接收到的控制数据,选择数据通道,将第一业务数据发送至对应的外接设备。

进一步地,本实施例还包括:

SRIO接口模块在接收到外接设备发送的第一业务数据时,根据SRIO接口协议解析第二业务数据,并将第二业务数据发送至数据处理模块;

数据处理模块接收并存储SRIO接口模块传来的第二业务数据,以及将第二业务数据发送至MHAL模块;

MHAL模块将业务处理模块发送来的第二业务数据以MHAL协议组帧后发送至DMA接口模块;

DMA接口模块将MHAL模块发来的第二业务数据根据MHAL协议解析后发送至用户界面。

进一步地,本实施例还包括:

DMA接口模块和MHAL模块中,通过不同的LD以区分控制数据和第一业务数据。

进一步地,本实施例还包括:

SRIO接口模块在读取第一业务数据后,配置SRIO接口参数。

进一步地,本实施例还包括:

SRIO接口模块通过光模块与光交换矩阵相连,光模块将第一业务数据由电信号转换为光信号,并通过光纤将第一业务数据发送至光交换矩阵。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种双螺杆连续式的塑料挤出机
  • 一种双螺杆连续式的塑料挤出机
技术分类

06120116560954