PCIe - DMA Sequence

目录

  • 1. Initiation
  • 2. H2C(Host to Card)
    • 2.1. MWr
    • 2.2. MRd
    • 2.3. CfgWr
    • 2.4. CfgRd
  • 3. C2H(Card to Host)
    • 3.1. MWr
    • 3.2. MRd


介绍PCIe拓扑结构下的DMA流程,实际上RC充当的就是DMA Controller的角色

1. Initiation

上电初始化,在设备枚举阶段,在内存空间中为每个PCIe设备分配BAR空间(包括MSI-X中断向量表)和4KB的配置空间。

初始化完成后即可进行DMA操作。

2. H2C(Host to Card)

CPU到EP的路径

2.1. MWr

  1. CPU将要写入的数据放入DDR中
  2. 告知RC,数据在DDR中的起始地址(内存空间)、长度、目标设备在内存空间中的地址(必须在BAR空间内)
  3. RC根据目标地址命中该EP的BAR空间,产生MWr TLP,包括Address、Length、Payload,注意Length不要超过Max_Payload_Size
  4. MWr TLP通过Address Route的方式路由
  5. TLP路由到EP,EP解析命中BAR空间,将数据写入Address起始、长度为Length的内部

2.2. MRd

过程与上述过

你可能感兴趣的:(标准总线接口协议,数字IC,fpga开发,express,网络)