127.XIlinx fpga端的pcie(XDMA)与驱动是如何交换数据的

特性 DMA 写(主机到FPGA) DMA 读(FPGA到主机) 直接寄存器访问
数据流向 Host Memory → FPGA FPGA → Host Memory CPU寄存器 ↔ FPGA寄存器
PCIe事务 Mem Read (主机是 Completer) Mem Write (主机是 Completer) Mem Read/Write
AXI事务 AXI4 Write AXI4 Read AXI4-Lite Read/Write
驱动主要动作 准备源(主机)和目标(FPGA)描述符 准备源(FPGA)和目标(主机)描述符 ioremap, iowrite/read
性能 高带宽 高带宽 低延迟,低带宽
用途 传输大量数据(如图像、数据流) 读取大量结果数据 配置、控制、状态查询
特性 模式一:与存储器交互 模式二:与用户逻辑交互
连接方式 XDMA <-> AXI Interconnect <-> DDR控制器 XDMA <-> 你的自定义逻辑(AXI Slave)
FPGA逻辑角色 被动/旁观者 主动参与者
DMA写过程 数据自动写入DDR,逻辑无需关心 逻辑必须通过AXI-Stream接口实时接收数据,并管理背压
DMA读过程 数据自动从DDR读出,逻辑无需关心 逻辑必须通过AXI-Stream接口实时提供数据
优点 简单,易于实现,适合大数据块缓存 延迟低,适合流式处理,数据可直接送入处理单元
缺点 延迟较高(需要经过DDR) 逻辑设计复杂,需要正确处理AXI协议
相关推荐
张人玉10 分钟前
VisionPro 定位与卡尺测量学习笔记
笔记·学习·计算机视觉·vsionprp
songyuc14 分钟前
【BiFormer】BiFormer: Vision Transformer with Bi-Level Routing Attention 译读笔记
笔记·transformer
觉醒大王37 分钟前
强女思维:着急,是贪欲外显的相。
java·论文阅读·笔记·深度学习·学习·自然语言处理·学习方法
嵌入式-老费41 分钟前
Linux Camera驱动开发(fpga + csi rx/csi tx)
fpga开发
三水不滴1 小时前
计网:输入网址到网页显示
经验分享·笔记·计算机网络
JustDI-CM2 小时前
AI学习笔记-提示词工程
人工智能·笔记·学习
爱写bug的野原新之助2 小时前
加密摘要算法MD5、SHA、HMAC:学习笔记
笔记·学习
小乔的编程内容分享站3 小时前
C语言笔记之函数
c语言·笔记
四谎真好看4 小时前
JavaWeb学习笔记(Day13)
笔记·学习·学习笔记·javaweb
承渊政道4 小时前
Linux系统学习【Linux基础开发工具】
linux·运维·笔记·学习·centos·编辑器