FPGA实现AD采样高速接口比较:GPMC vs PCIe

需积分: 19 12 下载量 41 浏览量 更新于2024-09-09 1 收藏 714KB DOCX 举报
本文档详细介绍了在AD采样应用中,使用FPGA实现设计的两个关键接口:GPMC和PCIe,并针对它们进行了深入的分析。 首先,3.2节着重于GPMC接口。GPMC(General Purpose Memory Controller)是一种通用的外设内存接口,支持异步SRAM、异步/同步NORflash、NANDflash和P-SRAM等不同类型的存储器。为了追求高速数据传输,文中选择了16位同步burst方式的NOR接口,因为数据仅从FPGA流向ARM,因此设计时只考虑了读操作。读时序图展示了数据传输的基本流程,而寄存器配置主要包括设置接口时钟为GPMC_Fclk、中断触发方式为边缘触发以及定义接口类型。通过带宽估算,发现GPMC的104MHz速率和每次burst传输4个word16导致的带宽仅为约60Mbyte/s,这远低于AD实时采样所需的80Mbyte/s。 接下来,文档转向PCIe接口。FPGA作为endpoint (EP),ARM作为root port (RP),利用硬件PCIe IP核支持PCIe Gen1 x4标准,理论带宽可达1Gbyte/s,明显超过了AD采样的需求,确保了数据传输的高效性。然而,PCIe接口的硬件实现非常复杂,涉及众多信号处理和协议理解,这部分内容仍在规划中。 命令设计部分提到,考虑到UART速度较低,选择SPI作为ARM与FPGA之间的命令通道,以便于快速上电配置。在上电过程中,FPGA可以通过AS方式(主动读取)或PS方式(被动接收)加载网标,其中AS方式需要额外的配置芯片,如EPCS16。 总结来说,本文档深入解析了FPGA在AD采样应用中的GPMC和PCIe接口设计,突出了PCIe接口在满足高带宽需求方面的优势,并讨论了命令配置过程中的关键步骤。对于实际项目实施,理解和优化这些接口的配置对保证系统性能至关重要。