PCIe卡如何将数据存入CPU内存?

时间:2015-04-22 15:18:59

标签: dma pci pci-e

这是针对类似dma / pci问题的this回答。我从这个答案中得知,PC没有能够向/从PCI卡传输数据的dma,并且PCI卡必须提供dma功能。我从同事那里得到了类似的答案,"双向dma需要在FPGA上(指PCI卡)才能启用到cpu内存的突发传输。"

我的理解是,当PC收到读取请求时,它需要通过创建包含所请求数据的返回数据包来满足读取请求。因此,如果卡请求一页数据(4096字节),PC需要返回一个4096字节的数据包。卡片的dma如何通过总线到达并使用它的dma填充所需的数据包,如this回答所示?

1 个答案:

答案 0 :(得分:1)

我认为这里可能存在误解。该卡不会“到达”总线以在PC中使用DMA功能。

卡本身就是公交车主人。它可以直接读写PC的整个内存,就像CPU一样。 从PC内存系统的角度来看,PC中的卡或主CPU没有区别。两者都是公交车主人。两者都可以对内存执行读写操作。

不支持4096字节的突发。您将不得不将其拆分为多个较小的突发。

相关问题