目前高速存储技术现在已经成为大数据时代的关键技术,PCI Express总线具有极高的传输带宽,所以基于PC机PCI Express数据传输是大容量大带宽数据传输的有效
目前高速存储技术现在已经成为大数据时代的关键技术,PCI Express总线具有极高的传输带宽,所以基于PC机PCI Express数据传输是大容量大带宽数据传输的有效途径之一。本课题就是利用FPGA基于PCI Express开展数据传输和存储的开发,在FPGA侧利用IP生成PCI Express核实现大带宽的数据传输,上位机侧利用PCI Express的驱动实现大带宽数据的接收,并进行实测数据的传输验证与演示。
1.2 研究现状和发展
相关领域的快速发展对高速采集与存储技术提出了更高的要求。尤其是在流体动态测试、图像处理以及深空探测等对实时性要求比较高的研究领域,高速存储技术的重要性不言而喻[4]。近年来,高速采集与存储技术得到了很大发展,系统性能与各种功能被不断地加以完善。
目前高速存储技术主流的方法是使用SATA固态硬盘或是在计算机操作系统控制下,通过总线将数据传输到硬盘,其中使用PCI Express总线是常用方法。SATA是一种高速串行技术,使用Xilinx的Virtex系列FPGA可以很方便地实现,但是这种方法成本较高,不易控制,而PCI Express技术显得更灵活,更易实现,并且带宽极高,存储容量大[5],所以PCI Express总线技术是一种较理想的方法,在各领域得到了广泛的认可和应用。
1.3 PCI Express总线简介
PCI Express全称为Peripheral Component Interconnect Express,是由Intel公司开发的第三代I/O技术,被称为3GIO。
PCI Express标准是旧版PCI和PCI-X并行总线标准的下一代演进。 它是一种高性能,通用的互连架构,专为广泛的计算和通信平台而设计。 它是一个基于分组的点对点串行接口,向后兼容PCI和PCI-X配置,设备驱动程序和应用软件。 其更快的串行总线架构采用专用的双向I / O,代表了一种新颖的架构方法。 各种通道配置的带宽如表1-1所示。 由于协议使用的8B / 10B编码和解码的开销,有效带宽低于原始带宽[6]。
表1.1 各种通道配置的带宽
PCI Express系统中以链路进行两个设备的物理连接,每条链路中可以包含多个通道。目前的版本有PCI Express1.0、PCI Express2.0和PCI Express3.0。PCI Express可以配置成x1、x2、x4、x8、x16、x32模式进行数据传输,不同的链路宽度提供不同的传输性能。不同规范下的PCI Express传输速率不同,对于单通道的PCI Express而言,PCI Express1.0的传输速率为250MB/S,PCI Express2.0为500MB/s,PCI Express3.0为1000MB/s。Xilinx公司的Virtex系列FPGA对PCI Express提供了良好的协议支持[7]。
1.4 论文的研究内容和章节安排
本论文主要研究利用FPGA基于PCI Express开展数据传输和存储的开发,在FPGA侧利用IP生成PCI Express核实现大带宽的数据传输,上位机侧利用PCI Express的驱动实现大带宽数据的接收,并进行实测数据的传输验证与演示。本设计研究对象为系统的硬件部分,即用于数据传输和存储的电路板卡的模块化设计,利用PCI Express实现数据双向传输,并进行实物验证。
本论文主要分为五章,以下是本文具体内容安排:
第一章:绪论。主要介绍了高速数据传输与存储系统的研究背景及意义,研究的发展现状,简要介绍了PCI Express协议。
第二章:主要介绍了PCI Express的架构体系,论述了PCI Express的协议层次、逻辑层机构以及它的事物机制,
第三章:给出了硬件系统的设计方案,论述了硬件系统的结构设计以及各个模块的主要功能和设计方案,从系统的功能需求出发,分析系统各部分所需的参数指标,给出了硬件系统的设计方案,介绍了设计的主要流程。
第四章:数据传输与存储系统的FPGA实现,系统是基于FPGA实现的,使用了Verliog HDL对传输与存储系统的各个模块进行了程序开发,在ISE平台进行,介绍了IP核以及它的建立过程,DMA模块的原理及实现过程。