CN221768064U - 一种基于FPGA实现PCIE与RapidIO协议互联的系统 - Google Patents

一种基于FPGA实现PCIE与RapidIO协议互联的系统 Download PDF

Info

Publication number
CN221768064U
CN221768064U CN202420248991.4U CN202420248991U CN221768064U CN 221768064 U CN221768064 U CN 221768064U CN 202420248991 U CN202420248991 U CN 202420248991U CN 221768064 U CN221768064 U CN 221768064U
Authority
CN
China
Prior art keywords
rapidio
pcie
fpga
data
interfaces
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202420248991.4U
Other languages
English (en)
Inventor
陈昭林
李寿阳
郑宇�
齐永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jiangsu Huachuang Micro System Co ltd
Original Assignee
Jiangsu Huachuang Micro System Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiangsu Huachuang Micro System Co ltd filed Critical Jiangsu Huachuang Micro System Co ltd
Priority to CN202420248991.4U priority Critical patent/CN221768064U/zh
Application granted granted Critical
Publication of CN221768064U publication Critical patent/CN221768064U/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本实用新型公开了一种基于FPGA实现PCIE与RapidIO协议互联的系统,包括依次连接的RapidIO交换机、FPGA和CPU,RapidIO交换机通过RapidIO X4插槽与FPGA连接,CPU通过PCIE X4插槽与FPGA连接,FPGA包括数据流控制器、bram、多个RapidIO接口和多个PCIE接口;数据流控制器与bram相连;数据流控制器和bram均连接RapidIO X4插槽和PCIE X4插槽。本实用新型用分层结构的bram为缓存,省略了DDR3的使用,有效降低成本,还将主要传输任务放在FPGA内部,简化对CPU的架构要求,拓宽使用场景。

Description

一种基于FPGA实现PCIE与RapidIO协议互联的系统
技术领域
本实用新型涉及通信高速互联技术领域,具体涉及一种基于FPGA实现PCIE与RapidIO协议互联的系统。
背景技术
RapidIO技术主要面向高性能嵌入式系统的互联通信,它采用高性能LVDS技术,可以在4对差分线上实现高速传输。由于在路由、交换、容错纠错、使用方便性上有较完善的考虑,可以实现基于硬件的高性能可靠数据传输,因此在嵌入式系统、移动通信、高性能数字信号处理系统中广泛应用。
PCIE是一种高速双通道串行总线技术,用于替代旧的PCI总线,其连接的系统分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及服务质量等功能。较以前的标准有许多改进,包括更高的最大系统总线吞吐量,更低的I/O引脚数量和更小的物理尺寸,更好的总线系统性能缩放、错误监测和报告机制。
在很多高性能数字信号处理系统中,兼有PCIE互联总线和RapidIO互联总线,如何在系统中实现两种协议数据的互相高速传输,是必须解决的一个问题,例如美国IDT公司设计生产的TSI721专用芯片,实现基于硬件的PCIE 2.0到RapidIO 2的协议互联,但现有的方法存在以下两种问题:1)采用了较多的DDR3等大容量数据缓存,消耗的硬件资源较多;2)主要的传输转换工作在CPU中进行,占用过多CPU资源,并且对CPU的性能、操作系统和架构也有较高要求,使用场景非常受限。
实用新型内容
本实用新型所要解决的技术问题是:在利用FPGA对CPU与RapidIO高速互联时,简化对CPU的要求,拓宽使用场景,并且减少硬件资源的消耗,从而降低成本。
针对上述技术问题,提出一种;通过以下技术方案实现的:
一种基于FPGA实现PCIE与RapidIO协议互联的系统,该系统包括依次连接的RapidIO交换机、FPGA和CPU,RapidIO交换机通过RapidIO X4插槽与FPGA连接,CPU通过PCIEX4插槽与FPGA连接,FPGA包括数据流控制器、bram、多个RapidIO接口和多个PCIE接口;
其中,数据流控制器与bram相连,多个RapidIO接口包括RapidIO枚举接口、Nread接口和Nwrite接口,多个PCIE接口包括IO低速读写接口、中断接口和memory高速读写接口;数据流控制器通过RapidIO枚举接口与RapidIO X4插槽相连,数据流控制器还通过并行的IO低速读写接口和中断接口连接PCIE X4插槽;bram通过并行的Nread接口和Nwrite接口连接RapidIO X4插槽,bram还通过memory高速读写接口与PCIE X4插槽相连。
本实用新型将主要的协议转换工作在FPGA中完成,占用的CPU资源少,对CPU的规格和架构要求非常低,并且CPU采用的是PCIE X4插槽,仅需支持PCIE标准协议IO读写,结构要求也比较简单,有效的拓宽了使用场景;此外,本实用新型无需使用DDR3等大容量数据缓存,仅仅使用内部bram实现缓存功能,简化了硬件架构,也有效降低了器件成本。
优选地,FPGA中还设置有门铃触发器,门铃触发器的第一端连接bram,门铃触发器的第二端通过RapidIO X4插槽连接RapidIO交换机。门铃触发器可以有效的实时监控传输过程,管理传输转换过程中各资源的使用。
优选地,数据流控制器包括数据处理模块、中断控制模块、数据收发状态模块和RapidIO路由表模块;中断控制模块安装有单向控制信道,并利用单向控制信道并行连接数据处理模块、数据收发状态模块和RapidIO路由表模块。数据流控制器是FPGA进行传输转换时所用的主要处理器,利用中断控制模块能够有效的控制传输状态,特别是在传输出现错误时,及时中断对应的传输,保证传输的准确性和有效性。
优选地,IO低速读写接口通过第一双向传输信道并行连接数据处理模块、数据收发状态模块和RapidIO路由表模块;中断接口通过第二双向传输信道并行连接数据处理模块、数据收发状态模块和RapidIO路由表模块。IO低速读写接口与数据流控制器采用双向传输信道,满足传输数据的收发要求,再加上中断接口也与数据流控制器采用双向传输信道,可以根据双向数据及时的进行中断;此外,IO低速读写接口兼容性高、成本低,也拓宽了适用的场景。
优选地,RapidIO路由表模块中安装有轮询控制器。利用轮询控制器可以将任意路的RapidIO数据与任意路的PCIE数据映射对应,还能够满足定制化需求,根据实际需要定制映射关系,使得适用的使用场景更多。
优选地,bram中安装有CRC校验模块。利用CRC校验模块,可以对bram中的传输过程进行检验,保证传输的准确性。
优选地,bram采用分层结构,bram中包括主存储层、次存储层和备份存储层。本实用新型未使用DDR3等大容量缓存,只是用内部的bram作为缓存,需要对bram的结构进行有效的划分,保证bram能够支持传输过程的各种数据存储与转换。
本实用新型与现有技术相比具有的有益效果是:
本实用新型将主要的传输转换工作在FPGA中完成,占用CPU资源少、对CPU的规格和架构要求低,使得能够满足要求的CPU数量大大提升,再加上能够定制数据映射的轮询控制器,大大拓宽了使用场景;此外,本实用新型无需使用DDR3等大容量数据缓存,仅仅使用内部bram实现缓存功能,简化了硬件架构,有效的降低了器件成本。
附图说明
图1为一种基于FPGA实现PCIE与RapidIO协议互联的系统的结构示意图。
具体实施方式
下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行详细的描述,显然,所描述的实施例仅仅是本实用新型一部分实施例,而不是全部的实施例。基于本实用新型中实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都为本实用新型保护的范围。
实施例
如图1所示,是一种基于FPGA实现PCIE与RapidIO协议互联的系统的结构示意图,该系统是RapidIO交换机、FPGA和CPU依次连接,在FPGA中完成PCIE与RapidIO协议互联。
结合图1所示,该系统中的RapidIO交换机和CPU均可采用国产器件,例如,RapidIO交换机采用NRS1800JIAO交换机,CPU采用飞腾的FT2000,本系统可以实现全国产化;此外,也可以采用非国产的器件,例如采用常用的x86架构英特尔CPU等,具体可以根据实际需要进行选择。
RapidIO交换机通过RapidIO X4插槽与FPGA连接,CPU通过PCIE X4插槽与FPGA连接,此处的两个X4均是表示4个物理信道,可以同时传输4个独立的数据流,具备较高的带宽和容错能力,能够满足高速、大量数据的同时传输,保证传输的效率,并且在需要传输的数据较少时,还可以选择4个物理信道中的1个作为备用或监测信道,保证传输的可靠性。对CPU而言,使用PCIE X4插槽时,该插槽支持PCIE标准协议,就能够与RapidIO X4插槽的RapidIO协议进行转换,至于CPU中需要具备使用什么操作系统、架构如何,不进行特别限制,大大提升了适用的CPU数量,适用场景也相应提升。
在FPGA中,存在数据流控制器、bram、多个RapidIO接口和多个PCIE接口。数据流控制器与bram通过一个双向物理信道相连,从而能够互相进行数据传输。多个RapidIO接口包括RapidIO枚举接口、Nread接口和Nwrite接口,多个PCIE接口包括IO低速读写接口、中断接口和memory高速读写接口,每个接口均占用4个物理信道,与CPU的插槽和RapidIO交换机的插槽的规格相符。数据流控制器包括数据处理模块、中断控制模块、数据收发状态模块和RapidIO路由表模块,数据处理模块具体分为数据发送命令处理单元、数据接收命令处理单元,这两个单元会依据数据收发状态控制模块、RapidIO路由表模块、IO低速读写接口中的数据或指令,控制数据处理模块处理发送命令或者处理接收命令;也可以依据中断控制模块、中断接口中的数据或指令,及时中断当前执行的任务。bram通过并行的Nread接口和Nwrite接口连接RapidIO X4插槽,bram还通过memory高速读写接口与PCIE X4插槽相连,bram会存入数据,也会发出数据,所以与bram连接的每一个装置都是通过双向物理信道进行连接,根据需要随时切换传输方向。
需要说明的是,RapidIO枚举接口的作用是进行整个网络的数据枚举,枚举是一种用于发现和配置网络的过程。当RapidIO交换机启动的时候,往往需要获取网络中其他设备的信息,例如ID、地址范围、功能、需求等,这些信息需要通过枚举过程来实现,所以RapidIO枚举接口是必不可少的,通过枚举过程,RapidIO交换机能够建立起对CPU的认识,并分配好必要的资源和配置,这样可以确保两个设备能够正确通信、协同工作,并实现所需的数据传输和转换操作。
RapidIO枚举接口可以实现静态枚举,过程如下:CPU通过IO低速读写接口将RapidIO交换机所需的RapidIO路由表信息写入RapidIO路由表模块,并在RapidIO路由表模块中进行解析,将解析后的路由表信息通过RapidIO枚举接口发送到RapidIO交换机,实现了从CPU到RapidIO交换机整个网络的枚举。
本实施例中,FPGA的收数流程为:RapidIO交换机对Nwrite接口发送数据,写入bram进行存储,在bram中根据数据的目的地址等信息将数据转换为对应的PCIE的地址空间,并在转换后将PCIE的地址空间和数据作为一个数据包,通过memory高速读写接口发送到CPU中。
本实施例中,由于只使用bram,而没有增设的DDR3等大容量缓存,所以需要对bram进行较为详细的划分。bram采用分层结构,第一层为主存储层,是bram的最高层,用于存储经常访问或当前操作的数据组包,访存数据的速度最快;第二层为次存储层,位于主存储层之下,用于存储不经常访问但仍需保留的数据组包,访存数据的速度较慢;第三层为备份存储层,也是bram的最底层,用于存储不经常访问且不重要的数据组包,访存的速度最慢,但能提供足够的存储空间。
本实施例,FPGA中还设置有门铃触发器,门铃触发器的第一端连接bram,门铃触发器的第二端通过RapidIO X4插槽连接RapidIO交换机,可以有效的实时监控传输过程,管理传输转换过程中各资源的使用。接收门铃流程如下:RapidIO交换机作为发送源,将需要传输或转换的数据中的目的地址、目的ID等信息作为门铃信息,发送到门铃触发器,再经由bram传输到数据流控制器中,数据流控制器将门铃信息及发送源的ID转换为PCIE中断信息,通过中断接口发送到CPU中。发送门铃流程为:将CPU输入数据中的目的地址、目的ID等信息指令通过IO低速读写接口传输到数据流控制器中,由数据流控制器解析信息指令,完成一次门铃发送操作,将PCIE中断信息通过中断接口发送回CPU,通知CPU已完成此次门铃发送操作。
本实施例,IO低速读写接口通过第一双向传输信道并行连接数据处理模块、数据收发状态模块和RapidIO路由表模块;中断接口通过第二双向传输信道并行连接数据处理模块、数据收发状态模块和RapidIO路由表模块。IO低速读写接口与数据流控制器采用双向传输信道,满足传输数据的收发要求,再加上中断接口也与数据流控制器采用双向传输信道,可以根据双向数据及时的进行中断;此外,IO低速读写接口兼容性高、成本低,也拓宽了适用的场景。
本实施例,在RapidIO路由表中还增加了轮询表,对应的RapidIO路由表模块中也安装了轮询控制器,轮询控制器的一端连接RapidIO枚举接口,接收RapidIO交换机的数据或者向RapidIO交换机传输数据;轮询控制器的另一端连接IO低速读写接口和中断接口,用于接收CPU中的数据或者向CPU传输数据。利用轮询控制器可以将任意路的RapidIO数据与任意路的PCIE数据映射对应,还能够满足定制化需求,例如,在P有多路PCIE数据和多路RapidIO数据时,利用轮询控制器将多路PCIE数据对应一路RapidIO数据,或者将一路PCIE数据对应多路RapidIO数据等,如此,可以定制化的设置协议转换时的数据对应关系,实用性大大增加,有效拓宽了实际使用场景。
本实施例,为了保证数据的准确性,可以利用bram中的一小部分空间安装一个CRC校验模块,对bram转存的数据进行校验检查;另外,CRC校验模块中还可以增加一个CRC控制器,控制CRC校验的开关,例如,bram在常规的转存数据时,关闭CRC校验,以加快处理速度,而在bram中存储到一部分非常重要的数据时,就开启CRC校验,保证重要数据的准确性。
具体应用实例:
一个RapidIO交换机通过FPGA和龙腾FT2000(CPU)进行协议互联时,FPGA用于连接RapidIO交换机的每个接口都是RapidIO Gen2 X4规格,该规格是RapidIO第二代标准规格,FPGA用于连接CPU的每个接口都是PCIE Gen3 X4规格,该规格是PCIE第三代标准规格,两个规格均要求每个接口采用4个物理信道。
FPGA中分为RapidIO端、内部端和PCIE端,RapidIO端布设有RapidIO枚举接口、Nread接口、Nwrite接口和门铃触发器,内部端布设有bram和数据流控制器,数据流控制器内布设有数据处理模块、中断控制模块、数据收发状态模块和RapidIO路由表模块,PCIE端布设有IO低俗读写接口、中断接口和memory高速读写接口。每个接口均占用4个物理信道,门铃触发器也占用4个物理信道。
CPU通过PCIE端发送数据时,将数据长度、PCIE源地址和RapidIO目的地址、目的ID等信息指令通过IO低速读写接口写到数据流控制器中;在RapidIO路由表模块利用该模块内部的轮询控制器从信息中解析出路由表信息,经由RapidIO枚举接口发送到RapidIO交换机,进行数据枚举和映射对应;在数据处理模块解析成PCIE DMA描述符并借此组建链式PCIE memory read TLP数据包。Bram分成主存储层、次存储层和备份存储层,将上述数据包先存储在主存储层中,并在主存储层中开启CRC校验,对该数据包进行校验检测,将校验后的数据作为指示信息,通过bram和Nwrite接口将该指示信息发给RapdiIO交换机,指示出需要由RapdiIO交换机发送的数据。Bram在发送完该指示信息后,将PCIE memory read TLP数据包及其经过CRC校验过后的指示信息改存入备份存储层,留出主存储层的空位,并关闭CRC校验。
RapdiIO交换机接收到该指示后,通过Nread接口将CPU需要的数据写入内部的bram,在本bram中整理重排数据;然后再利用memory高速读写接口,将上面数据包指定的RapdiIO交换机目的ID节点、目的地址等信息将对应数据发送到CPU中;在数据发送完成后,RapidIO交换机通过门铃触发器-bram-memory高速读写接口,发送PCIE_MSI中断的门铃信息到CPU,通知CPU已完成本次数据互联。
CPU通过PCIE端读数据时,将要读取的RapidIO交换机目的地址、目的ID、读回数据后存放的PCIE地址空间通过IO低速读写接口写到数据流控制器中;在RapidIO路由表模块中解析出路由表,利用轮询控制器将该路由表信息经由RapidIO枚举接口发送到RapidIO交换机,确定两个设备的数据映射关系;在数据处理模块内解析出指示信息,存储到bram的主存储层中,并打开CRC校验进行检测纠错;然后,在RapidIO交换机和RapdiIO端采样相同的操作,区别是RapdiIO端利用的接口为Nread接口,数据读回到bram中后,再转换为PCIEmemory write TLP数据包,按照上面CPU发送的指示信息将数据包写入bram内部的指定地址空间,并由memory高速读写接口进行读取、发送回CPU;最后,再由RapdiIO交换机经由门铃触发器-bram-memory高速读写接口发送PCIE_MSI中断门铃信息到CPU,通知CPU已完成本次数据互联。
综上所述,本实用新型将主要的传输转换工作在FPGA中完成,占用CPU资源少、对CPU的规格和架构要求低,使得能够满足要求的CPU数量大大提升,再加上能够定制数据映射的轮询控制器,大大拓宽了使用场景;此外,本实用新型无需使用DDR3等大容量数据缓存,仅仅使用内部bram实现缓存功能,简化了硬件架构,有效的降低了器件成本,具有显著的进步性。
以上实施例仅为说明本实用新型的技术思想,不能以此限定本实用新型的保护范围,凡是按照本实用新型提出的技术思想,在技术方案基础上所做的任何改动,均落入本实用新型保护范围之内。

Claims (7)

1.一种基于FPGA实现PCIE与RapidIO协议互联的系统,其特征在于,包括依次连接的RapidIO交换机、FPGA和CPU,RapidIO交换机通过RapidIO X4插槽与FPGA连接,CPU通过PCIEX4插槽与FPGA连接,FPGA包括数据流控制器、bram、多个RapidIO接口和多个PCIE接口;
其中,数据流控制器与bram相连,多个RapidIO接口包括RapidIO枚举接口、Nread接口和Nwrite接口,多个PCIE接口包括IO低速读写接口、中断接口和memory高速读写接口;数据流控制器通过RapidIO枚举接口与RapidIO X4插槽相连,数据流控制器还通过并行的IO低速读写接口和中断接口连接PCIE X4插槽;bram通过并行的Nread接口和Nwrite接口连接RapidIO X4插槽,bram还通过memory高速读写接口与PCIE X4插槽相连。
2.根据权利要求1所述的一种基于FPGA实现PCIE与RapidIO协议互联的系统,其特征在于,FPGA中设置有门铃触发器,门铃触发器的第一端连接bram,门铃触发器的第二端通过RapidIO X4插槽连接RapidIO交换机。
3.根据权利要求1所述的一种基于FPGA实现PCIE与RapidIO协议互联的系统,其特征在于,数据流控制器包括数据处理模块、中断控制模块、数据收发状态模块和RapidIO路由表模块;所述中断控制模块安装有单向控制信道,并利用单向控制信道并行连接数据处理模块、数据收发状态模块和RapidIO路由表模块。
4.根据权利要求1所述的一种基于FPGA实现PCIE与RapidIO协议互联的系统,其特征在于,IO低速读写接口通过第一双向传输信道并行连接数据处理模块、数据收发状态模块和RapidIO路由表模块;中断接口通过第二双向传输信道并行连接数据处理模块、数据收发状态模块和RapidIO路由表模块。
5.根据权利要求1所述的一种基于FPGA实现PCIE与RapidIO协议互联的系统,其特征在于,RapidIO路由表模块中安装有轮询控制器。
6.根据权利要求1所述的一种基于FPGA实现PCIE与RapidIO协议互联的系统,其特征在于,bram中安装有CRC校验模块。
7.根据权利要求1所述的一种基于FPGA实现PCIE与RapidIO协议互联的系统,其特征在于,bram采用分层结构,bram中包括主存储层、次存储层和备份存储层。
CN202420248991.4U 2024-02-01 2024-02-01 一种基于FPGA实现PCIE与RapidIO协议互联的系统 Active CN221768064U (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202420248991.4U CN221768064U (zh) 2024-02-01 2024-02-01 一种基于FPGA实现PCIE与RapidIO协议互联的系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202420248991.4U CN221768064U (zh) 2024-02-01 2024-02-01 一种基于FPGA实现PCIE与RapidIO协议互联的系统

Publications (1)

Publication Number Publication Date
CN221768064U true CN221768064U (zh) 2024-09-24

Family

ID=92780055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202420248991.4U Active CN221768064U (zh) 2024-02-01 2024-02-01 一种基于FPGA实现PCIE与RapidIO协议互联的系统

Country Status (1)

Country Link
CN (1) CN221768064U (zh)

Similar Documents

Publication Publication Date Title
CN105406998A (zh) 基于fpga的双冗余千兆以太网介质访问控制器ip核
JP4477906B2 (ja) ストレージシステム
CN101799795B (zh) 一种1553b总线监控器及具有该监控器的总线系统
US10970237B2 (en) Storage system
CN114168520B (zh) 光纤通信总线装置、设备和系统
US6850998B2 (en) Disk array system and a method for controlling the disk array system
MX2012005934A (es) Disco de estado solido (ssd) multi-interfaz, metodo de procesamiento y sistema del mismo.
CN114546913B (zh) 一种基于pcie接口的多主机之间数据高速交互的方法和装置
CN110109872B (zh) 一种遥感卫星异构数据统一存储管理装置
CN107861893B (zh) I3c验证从设备、主从设备的通信验证系统及方法
CN114385534B (zh) 一种数据处理的方法及装置
US20200409706A1 (en) Apparatuses and methods involving selective disablement of side effects caused by accessing register sets
CN110635985A (zh) 一种FlexRay-CPCIe通信模块
CN112148651B (zh) 一种增强型rapidio互联装置及设备
US7035956B2 (en) Transmission control circuit, reception control circuit, communications control circuit, and communications control unit
CN110798479B (zh) 动态可重构高速串行总线与以太网的互操作装置与方法
CN117806553A (zh) 一种多源异构分布式系统、内存访问方法和存储介质
Kwon et al. Gen-z memory pool system architecture
CN204390227U (zh) 计算设备扩展装置、以及可扩展的计算系统
CN221768064U (zh) 一种基于FPGA实现PCIE与RapidIO协议互联的系统
CN104598404A (zh) 计算设备扩展方法和装置、以及可扩展的计算系统
CN110765046A (zh) 一种动态可重构高速串行总线的dma传输装置与方法
JP2006072634A (ja) ディスク装置
CN114238156A (zh) 处理系统以及操作处理系统的方法
JP4432388B2 (ja) 入出力制御装置

Legal Events

Date Code Title Description
GR01 Patent grant
GR01 Patent grant