一种fpga加速卡高速存储系统的制作方法

文档序号:9471318阅读:360来源:国知局
一种fpga加速卡高速存储系统的制作方法
【技术领域】
[0001]本发明涉及FPGA加速卡高速存储系统技术领域,特别是涉及一种FPGA加速卡高速存储系统。
【背景技术】
[0002]高速数据采集、视频图像处理、卫星遥感测量等领域中,对高速大容量数据的传输及存储提出了更高的要求,从早期传输速度以KB/s为单位到现在以GB/s为单位,整个存储速度发生了质的飞跃。
[0003]目前对高速存储系统的研究主要分为三个方面:(I)基于SATA技术的高速存储系统;(2)基于PCI/PC1-X总线的高速存储系统;(3)基于PCIe总线的高速存储系统。PCIe作为第三代高速互联总线技术,不仅向下兼容PCI总线,而且还解决了 PCI体系结构中存在带宽、数据传送质量和流量控制上的缺陷。PCIe总线由于采用串行差分总线进行数据传输,因此能够减小硬件设计的成本和复杂性,同时系统的数据带宽和稳定性也有很大提高。PCIe总线时钟频率可以做到2.5GHz,在V3.0协议中更是高达5.0GHz,如此高的总线频率使得PCIe总线具备极高的数据传输带宽。目前V2.0协议、X16的PCIe总线峰值带宽可以达到 80GT/s。
[0004]鉴于此,本发明提供了一种FPGA加速卡高速存储系统,以提高数据传输的带宽以及性能。

【发明内容】

[0005]本发明的目的是提供一种FPGA加速卡高速存储系统,目的在于提高数据传输的带宽以及性能。
[0006]为解决上述技术问题,本发明提供一种FPGA加速卡高速存储系统,包括PCIe硬核模块、FPGA模块以及DDR3存储模块;
[0007]其中,所述FPGA模块用于将待存储数据进行同步缓存与格式转换,并将所述待存储数据存入至所述DDR3存储模块,所述DDR3存储模块为高速大容量缓存;
[0008]所述PCIe硬核模块通过1接口与所述DDR3存储模块的接口相连,用于以直接内存访问的方式将所述待存储数据高速上传到系统内存中,以进行后续处理。
[0009]可选地,还包括:
[0010]所述PCIe硬核模块将硬盘中待读取数据导入到系统内存,再通过所述直接内存访问的方式将所述待读取数据高速存入到所述DDR3存储模块中。
[0011]可选地,所述PCIe硬核模块包括:发送引擎状态机、接收引擎状态机、DMA控制状态寄存器以及中断控制模块;
[0012]其中,所述发送引擎状态机用于发起以PCIe板卡为主的直接内存访问的读写请求;
[0013]所述接收引擎状态机用于接收计算机为主发起的存储器读写请求;
[0014]所述DMA控制状态寄存器用于对直接内存访问的传输信息进行保存;
[0015]所述中断控制模块用于对直接内存访问的中断进行控制。
[0016]可选地,所述DDR3存储模块包括:
[0017]上下行FIFO缓存单元、DDR控制器以及控制状态机。
[0018]可选地,所述DDR3存储模块传输数据的带宽大于所述PCIe硬核模块传输数据的带宽。
[0019]可选地,所述DDR3存储模块以及所述PCIe硬核模块之间进行传输时对数据位宽进行变换。
[0020]可选地,采用异步FIFO的方法将所述PCIe硬核模块的数据缓存至上行或下行FIFO 中。
[0021]本发明所提供的FPGA加速卡高速存储系统,由FPGA模块将待存储数据进行同步缓存与格式转换,并将待存储数据存入至高速大容量缓存DDR3存储模块中,PCIe硬核模块以直接内存访问的方式将所述待存储数据高速上传到系统内存中,以进行后续处理。可见,本发明通过FPGA作为控制中心,以FPGA中提供的PCIe硬核实现高速DMA读写,同时以DDR3作为大容量缓存,具有较高的数据带宽和良好的性能。
【附图说明】
[0022]图1为本发明所提供的FPGA加速卡高速存储系统的一种【具体实施方式】的结构框图;
[0023]图2为本发明所提供的FPGA加速卡高速存储系统的另一种【具体实施方式】的硬件结构框图;
[0024]图3为本发明所提供的FPGA加速卡高速存储系统的另一种【具体实施方式】中DDR3存储模块的结构框图;
[0025]图4为本发明所提供的FPGA加速卡高速存储系统的另一种【具体实施方式】中PCIe硬核模块的结构框图。
【具体实施方式】
[0026]为了使本技术领域的人员更好地理解本发明方案,下面结合附图和【具体实施方式】对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0027]本发明所提供的FPGA加速卡高速存储系统的一种【具体实施方式】的结构框图如图1所示,该系统包括PCIe硬核模块1、FPGA模块2以及DDR3存储模块3。
[0028]其中,所述FPGA模块2用于将待存储数据进行同步缓存与格式转换,并将所述待存储数据存入至所述DDR3存储模块3,所述DDR3存储模块3为高速大容量缓存;
[0029]所述PCIe硬核模块2通过1接口与所述DDR3存储模块3的接口相连,用于以直接内存访问的方式将所述待存储数据高速上传到系统内存中,以进行后续处理。
[0030]上一实施例的基础上,本发明所提供的FPGA加速卡高速存储系统还可以进一步包括:
[0031]PCIe硬核模块将硬盘中待读取数据导入到系统内存,再通过所述直接内存访问的方式将所述待读取数据高速存入到所述DDR3存储模块中。
[0032]本发明所提供的FPGA加速卡高速存储系统,由FPGA模块将待存储数据进行同步缓存与格式转换,并将待存储数据存入至高速大容量缓存DDR3存储模块中,PCIe硬核模块以直接内存访问的方式将所述待存储数据高速上传到系统内存中,以进行后续处理。可见,本发明通过FPGA作为控制中心,以FPGA中提供的PCIe硬核实现高速DMA读写,同时以DDR3作为大容量缓存,具有较高的数据带宽和良好的性能。
[0033]本发明所提供的FPGA加速卡高速存储系统的另一种【具体实施方式】的硬件结构框图如图2所示,该系统主要由FPGA模块、PCIe硬核模块、DDR3存储模块构成。
[0034]具体地,PCIe接收控制板通过1接口与板上的DDR3存储器的接口连接,将数据送入FPGA中进行同步缓存与格式转换,然后通过FPGA控制将数据存入DDR3,最后PCIe以DMA写的方式将数据高速上传到系统内存中并进行后续处理。PCIe发送控制板将硬盘数据导入系统内存,通过PCIe以DMA读的方式将数据高速的存入DDR3,然后对数据缓存及格式转换,最后通过1接口发送出去。
[0035]同步缓存与数据格式转换通过调用FIFO IP核与部分逻辑实现;DDR3控制逻辑通过调用DDR3控制器,并设计上下行FIFO和控制状态机实现;PCIe系统逻辑通过设计发送引擎状态机、接收引擎状态机、DMA控制状态寄存器和中断控制模块实现。
[0036]DDR3存储模块的结构框图如图3所示,主要由三部分组成:上下行异步FIFO缓存单元、DDR3控制器和控制状态机。
[0037]DDR3与PCIe之间存在跨时钟域问题,采用异步FIFO来完成同步设计。DDR3的数据位宽大于PCIe的数据位宽,需要进行数据位宽变换。
[0038]PCIe数据缓存在上行FIFO中的方法是:将PCIe系统时钟作为写入时钟,写入PCIe数据位宽,在上行FIFO不满的情况
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1