基于fpga的pcie总线接口的dma控制器的设计

基于fpga的pcie总线接口的dma控制器的设计

ID:20603087

大小:70.50 KB

页数:4页

时间:2018-10-14

基于fpga的pcie总线接口的dma控制器的设计_第1页
基于fpga的pcie总线接口的dma控制器的设计_第2页
基于fpga的pcie总线接口的dma控制器的设计_第3页
基于fpga的pcie总线接口的dma控制器的设计_第4页
资源描述:

《基于fpga的pcie总线接口的dma控制器的设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于FPGA的PCIe总线接口的DMA控制器的设计通信技术的不断发展,对数据传输系统的速度与数据传送质量的要求也在不断提高。由Intel在2001年提出的第三代I/O总线技术——PCIExpress总线技术,采用高速差分串行的方式进行数据传输,具有高带宽、高可靠性、高拓展性等优点,很好地弥补了PCI、PCI-X总线的不足。本文基于PCIe2.0协议,利用AlteraTransceiverPHYIP、SynopsysPCIeCoreIP和AXI总线,提出了一种DMA控制器,并搭建了一个在FPGA端和PC之间的高速数据传输系统。实现了寄存器读写操作(单字读写)和DMA读写操作

2、,并利用SynopsysVIP环境不进行的系统仿真和上位机软件进行观察并验证了数据读写的正确性。1设计方案1.1基础模块1.1.1AlteraStratixVGX系列FPGA与PCIePHYIP本设计使用StratixVGX系列卜的5SGXEA7K2F40C2NFPGA芯片,该芯片内部集成了PCIePHYIP硬核模块。PCIePHYIP硬核包括三个部分,如阁1,PHYIPCoreforPCIExpress(PIPE)集成了PCIe总线的物理层。TransceiverReconfigurationControllerIPCore可以动态重新配置模拟参数。Transceive

3、rPHYResetControllerIPCore作为收发器的复位模块,确保了PCIe链路的初始化。1.1.2SynopsysIP与VIPVIP顾名思义就是验证IP(VerificationIP),它为一些标准的接口提供标准的总线行为模型。Synopsys公司提供了PCIe总线的ControllerIP,实现了PCIe总线数据链路层和事务层的功能,并内置了DMA,同时也提供了针对PCIe总线的VIP,为PCIe总线提供了标准的总线行为模型,模拟了上位机的功能[8]。1.1.3AX■总线AXI(AdvancedextensibleInterface)总线是一种高性能、高带宽

4、、低延迟的总线协议,有一个显著的特点,地址/控制和数据通道是分开的,共有5个单向通道,分别为readaddresschannel,writeaddresschannel,readdatachannel,writedatachannel,writeresponsechannel191,减少丫延时,提高了DMA的效率。1.2总体方案设计本设计采用的整体架构如阁2所示,为AlteraPHYIP+SynopsysPCIeCoreIP+AXI总线+Application。为了利用Synopsys的PCIeVIP环境,采用了SynopsysPCIeCoreIP。在PCIe事务层和应用

5、侧之间釆用了AXI总线接1_1,可以在以后的设计中进行方便的拓展和替换。应用侧设计实现丫PCIeDMA控制器的功能,并集成Y两块RAM,—块大小为128DW,用来存储寄存器读写的数据;另一块大小为512DW,用来存储DMA读写的数据。2DMA控制器的设计与实现2.1应用端DMA操作流程应用端发起的DMA操作流程如图3所示,最终DMA读操作实现的结果为将主机侧的数据以DMA的方式写入到应用端的内存中。DMA写操作实现的结果为将应用端的数据以DMA的方式写入到主机侧的内存中。图3为应用端发起的DMA操作具体的流程。(1)主机侧通过寄存器写的方式,将DMA读写标志、DMA长度、

6、DMA源和目的内存地址写入到应用端的寄存器中;(2)应用端中的Slave模块将这些命令发送给Master模块;(3)Master模快按照SynopsysPCIeCoreIP自定义的Dbi总线的方式,再将这些命令传送给PCIeCoreIP内部的寄存器;(4)PCIeCoreIP接收DMA读写指令,并持续操作Master接口以实现后续操作:(5)当为DMA读时,PCIeCoreIP的内置DMA从主机侧的“源内存地址”中读取到目标数据;当为DMA写时,PCIeCoreIP的Master接口通过AXI总线以读的方式从u源内存地址”读取到0标数据;⑹当为DMA读吋,PCIeCore

7、IP的Master获得DMA读取到的S标数据,并通过AXI总线,以写的方式写入到应用端的“目的内存地址”中;当为DMA写时,Master获得FI标数据后,内置DMA将数据发送到主机侧的“A的内存地址”中;(7)当DMA操作完成,PCIeCoreIP会通知应用端的中断模块;(8)应用端的屮断模块会向主机侧提交屮断。2.2应用端DMA控制状态机应用端只需将主机侧写入的DMA读写标志、DMA长度、DMA源和目的内存地址以及DMA启动信号写入到PCIeCoreIP中的内部寄存器,并等待DMA操作的完成,给出中断信号。下面为应用端详细的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。