【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

相关推荐
youcans_9 小时前
【动手学STM32G4】(8)STM32G431之 DAC进阶
stm32·单片机·嵌入式硬件·dma·定时器
BMS小旭13 小时前
CubeMx-DMA
单片机·学习·cubemx·dma
code_li5 天前
P2P加速 vs. CDN加速
网络·网络协议·p2p
漫游嵌入式5 天前
《PCI EXPRESS体系结构导读》---(5)PCI总线Device号的分配
express·pcie·pci
漫游嵌入式5 天前
《PCI EXPRESS体系结构导读》---(4)PCI总线Bus号初始化
express·pcie·pci
chao1898446 天前
基于 C# 实现 P2P 视频聊天工具
c#·音视频·p2p
咖丨喱6 天前
【解析并缓存 P2P_ATTR_DEVICE_INFO】
缓存·asp.net·p2p
漫游嵌入式7 天前
《PCI EXPRESS体系结构导读》---(3)PCI总线配置请求的转换原则
pcie
zfj3219 天前
计算机中的 DMA是什么技术
linux·服务器·网络·操作系统·dma
墨辰JC9 天前
STM32串口通信DMA接收 + 空闲中断IDLE详解
stm32·单片机·嵌入式硬件·蓝桥杯·idle·dma