论文部分内容阅读
近年来,随着物联网等新概念的提出和计算机技术的进步,嵌入式系统正以前所未有的速度发展,各种新型的嵌入式设备不断涌现;而且这些新出现的设备对智能化和实时性的要求越来越高,因此需要的运算量也越来越大。但是,传统的嵌入式处理器由于受性能、频率等方面的限制,单个的处理器已经在很大程度上没法满足需求。如果采用多个嵌入式处理器来提高处理速度,其功耗必将会大大增加,对能量有限的嵌入式设备而言,这也是不合适的。在这种情况下,现场可编程逻辑门阵列(Field Programmable Gate Array, FPGA)加嵌入式处理器的异构体系架构成为了解决上述问题的一个理想方案之一。目前基于FPGA的并行加速模型可谓多种多样,针对具体的算法采用FPGA作为协处理器进行并行加速研究也是学术界的热点之一。但是通常,将算法采用FPGA进行并行加速后,多采用仿真和分析得到加速效果,缺少实际的板级测试,这主要是因为算法测试中需要与主控制器之间进行大量而且快速的数据交换,但是目前尚缺少这样的数据交换平台,因此急需这样一个可以进行高速数据交换的并行加速实验平台,用于加速效果的板级测试。本文设计了一个并行加速实验平台原型。为达到数据交换速度要求,该平台采用PCI Express总线与主控制器进行数据交换,为加速数据传输,采用了DMA传输的方式。文中给出了实验平台的总体设计及实现步骤和方法。采用自上而下的模块化设计模式,将平台分为了PCI Express端点控制器模块、PCI Express事物层报文处理及DMA控制模块、存储控制器模块、并行加速实验模块和并行加速模块与存储器控制器之间的接口模块。作为整个平台的核心模块,PCI Express事务层报文处理及DMA控制器模块逻辑复杂,子模块众多,本文中重点介绍了该模块的详细设计和实现过程,将其划分为发送部件、接收部件、DMA控制器、读请求封装器、发送数据仲裁及准备模块、接收数据分发模块、DMA与存储器控制器接口模块和DMA与并行加速模块接口等子模块分别实现。同时也给出了其他模块的设计实现过程。然后以排序算法为例,介绍了并行排序加速器的实现,以此为基础,设计实现了并行加速模块,从而完成了整个实验平台的设计实现。本文最后对上述设计实现的平台进行了测试,给出了平台的实际资源占用、最大交换速度及实际加速效果等数据。通过实验证明,该平台满足并行加速实验的要求,可以进行算法并行加速的板级测试和实验。