The Multichannel DMA IP for PCI Express provides high efficiency, speed, and configuration flexibility to support various applications from HPC, cloud, networking, to embedded. With support for up to 2048 channels and Linux-based PCIe drivers provided, this low latency, low resource utilization solution is essential in handling movements of large volumes of data to optimize system performance.
The Multichannel DMA IPs not only offer a variety of user logic interfaces as noted above, but in conjunction with our PCI-SIG* compliant PCI Express Hard IP, simplifies overall integration and speeds up design cycles.
The DMA is made up of channels that consist of Host to Device (H2D) and Device to Host (D2H) queue pairs. As shown in the figure, the Multichannel DMA can be used in a server’s hardware infrastructure to allow communication between various Virtual Machine (VM) based clients and their FPGA-device based counterparts. The DMA operates on descriptor-based queues set up by a Linux driver to transfer data between the FPGA and host. As the queues are filled, the control logic will read the queue descriptors and execute them. Once executed, the DMA will provide an interrupt to note completion of the transaction.
In building out PCI Express system-level solutions, the Multichannel DMA IP with the PCIe Hard IP both support Root Port (RP) and Endpoint (EP) topologies. This type of configuration compatibility and flexibility enables seamless integration into various platforms ranging from embedded to enterprise.