支持多字读/写的 Windows 驱动程序 API

问题描述 投票:0回答:1

下午好。 我正在为 Windows PCI 驱动程序苦苦挣扎。 我想做的是通过 PCI 写入和读取 Xilinx FPGA 板的 MMIO 空间。 为此,目前我正在使用 WRITE_REGISTER_BUFFER_ULONG 函数来传输数据。 每当我调用此函数时,板上的 ILA 调试显示一次仅传输 64 位,这似乎是预期的行为。 但是,我想要做的是在一次 TLP 事务中传输超过 64 位(可能是 512 位),这将在一个 TLP 数据包标头之后产生更多的 DWORDS。 Windows 内核驱动程序中是否有任何其他 API 可以将超过 64 位的数据发送到 MMIO 空间,而不是 DMA API?

谢谢!

xilinx pci
1个回答
0
投票

我怀疑您能否使用主机 CPU 的 MMIO 来做到这一点。您可能需要让您的 PCIe 设备成为总线主设备才能进行更高效的传输。

© www.soinside.com 2019 - 2024. All rights reserved.