【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

相关推荐
饺子大魔王的男人7 天前
3秒传输GB级文件:FastSend让P2P共享告别云存储依赖
网络·网络协议·p2p
FPGA_小田老师8 天前
《FPGA系统:总线接口及Xilinx IP核》专栏导览:从基础到架构的顿悟
fifo·pcie·ddr·通信接口·fpga系统架构·xilinx ip核·数据总线
学工科的皮皮志^_^9 天前
PCIE学习
经验分享·嵌入式硬件·学习·fpga开发·pcie
时光の尘10 天前
STM32外设面试速通:UART、I2C、SPI、DMA、RAM/FLASH与ADC/DAC
stm32·dma·iic·adc·flash·spi·ram
九江Mgx11 天前
自由通讯的魔法:Go从零实现UDP/P2P 聊天工具
golang·udp·p2p
胡耀超13 天前
5、服务器互连技术(小白入门版)
服务器·网络·ai·网络拓扑·gpu·pcie·1024程序员节
draracle18 天前
RP2040 I2S MAX98357音频驱动开发
dma·i2s·rp2040·max98357
tiantianuser23 天前
NVMe高速传输之摆脱XDMA设计52: 上板资源占用率分析
fpga开发·nvme·pcie·xdma·高性能nvme
切糕师学AI1 个月前
P2P技术
网络·网络协议·p2p
一枝小雨1 个月前
FreeRTOS下STM32双缓冲ADC数据采集与处理
stm32·单片机·dma·嵌入式·arm·freertos·adc