【PCIe】P2P DMA

PCIe P2P (peer-to-peer communication)是PCIe的一种特性,它使两个PCIe设备之间可以直接传输数据,而不需要使用主机RAM作为临时存储。如下图3的走向

比如EP1要发送和数据给EP2,操作流程如下:

  1. 打开EP1的dma控制器;--client侧

2.src=EP1的内存地址,dst=EP2的BAR地址空间(provider),EP2的BAR地址一般会与自己的某段内存空间有一个映射关系,也就是将EP2的bar暴漏给了EP1去操作。

3.开启dma传输,将EP1的ddr数据搬运到EP2 bar空间

思考:

Why would you want peer to peer DMA?

没有CPU开销或同步的处理管道;

节省数据流行程

附:

Providers -- Expose P2P resources to other drivers

◢ Clients -- Make use of P2P resources via DMA

◢ Orchestrators -- Enables data flow between clients and providers

◢ Memory is allocated on the client side

接口参考:

PCI Peer-to-Peer DMA Support --- The Linux Kernel documentation

相关推荐
xinyu_Jina3 天前
局域网文件传输:P2P应用层协议——元数据握手与数据通道的生命周期管理
数据库·asp.net·p2p
Biteagle6 天前
P2PK:比特币的「原始密码锁」与比特鹰的技术考古
网络·网络协议·p2p
CinzWS9 天前
车规级高可靠性DMA控制器(G-DMA)架构设计--第一章 设计需求与规格定义 1.1 核心驱动力与应用场景
架构·dma
CinzWS9 天前
车规级高可靠性DMA控制器(G-DMA)架构设计--第二章 IP核心架构设计 2.1 顶层系统架构
架构·系统架构·dma
search710 天前
前端学习12:概念QOS、MSI
芯片设计·pcie
嘻哈baby11 天前
WebRTC实时通信原理与P2P连接实战
网络协议·webrtc·p2p
一个平凡而乐于分享的小比特16 天前
DMA详解:让数据传输“甩掉”CPU的搬运工
嵌入式硬件·dma
juma900216 天前
CST-Matlab联合仿真:建模排布与相位计算,Excel辅助编码,超材料卷积便捷处理
p2p
kkk_皮蛋19 天前
WebRTC 核心技术:P2P 打洞原理
网络·网络协议·p2p
jinxinyuuuus19 天前
局域网文件传输:WebSockets信令、ICE协议栈与P2P连接的生命周期管理
服务器·网络协议·p2p