PCIe通信就是快,RK3576+FPGA解决方案

电子说

1.4w人已加入

描述

今天给大家带来基于PCIe的RK3576+FPGA高速通信方案,实现快速数据交互,解决工业采集“慢、卡、丢”难题,为工业自动化、能源电力等领域提供创新解决方案。
 

▍实测数据

RK3576+FPGA的PCIe通信测试结果,如下所示

通信

▍方案优势

PCIe总线速率更高:比起传统并口、SPI串口、网口,PCIe在工业场景里就是“降维打击”,它采用高速串行传输方式,抗干扰能力强,支持x1/x4/x16等多通道配置,数据传输效率大幅提升,广泛应用于工业控制、数据采集、高速图像处理等场景。

XDMA方式实时性更强:以前用非XDMA传输,数据要走“外设→CPU→内存”的弯路。CPU一会儿要搬数据,一会儿要跑控制逻辑,结果两边都慢。而这套方案使用XDMA直接访问内存,相当于给FPGA和ARM内存开了“直达通道”,数据可在FPGA与ARM内存之间进行数据交换,全程无需CPU参与,数据传输更流畅高效。

▍方案说明

ARM端(瑞芯微RK3576)通过PCIe XDMA将数据搬运至FPGA端(Xilinx Artix-7),然后再将数据从FPGA端搬运回来,并进行数据校验和速率打印。

通信



程序原理说明如下:
ARM端:

通过PCIe XDMA对FPGA的DDR进行读写测试。

支持通过参数设置数据包大小、数据传输的循环次数。

对读写的数据进行校验,并打印误码率和读写速率。


FPGA端:

实现PCIe Endpoint功能。

处理PCIe RC端发起的BAR0空间的读写事务,将数据缓存在FPGA DDR中。

通信方案通信框架

通信方案软件框架

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分