DMA Accelerator Functional Unit User Guide: Intel® FPGA Programmable Acceleration Card D5005

ID 683270
Date 8/03/2020
Give Feedback

2.3. The DMA AFU Hardware Components

The DMA AFU interfaces with the FPGA Interface Unit (FIU) and FPGA memory.

Refer to the FPGA Interface Manager Data Sheet for Intel FPGA Programmable Acceleration Card D5005 for detailed specifications of the FPGA memory.

Note: The currently available hardware dictates this memory configuration. Future hardware may support different memory configurations.

You can use the DMA AFU to copy data between the following source and destination locations:

  • The host to device FPGA memory
  • Device FPGA memory to the host

A Platform Designer system, $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/hw/rtl/TEST_dma/<device>/dma_test_system.qsys implements most of the DMA AFU.

Part of the DMA AFU implemented in the Platform Designer system can be found in the following location:
You can find the DMA BBB in the following location:

Figure 1. DMA AFU Hardware Block Diagram

The DMA AFU includes the following internal modules to interface with the FPGA Interface Unit (FIU):

  • Memory-Mapped IO (MMIO) Decoder Logic: detects MMIO read and write transactions and separates them from the CCI-P RX channel 0 that they arrive from. This ensures that MMIO traffic never reaches the MPF BBB and is serviced by an independent MMIO command channel.
  • Memory Properties Factory (MPF): This module ensures that read responses from the DMA return in the order that they were issued. The Avalon® -MM protocol requires read responses to return in the correct order.
  • CCI-P to Avalon® -MM Adapter: This module translates between CCI-P and Avalon® -MM transactions, as follows:
    • CCI-P to Avalon® -MMIO Adapter: This path translates CCI-P MMIO transactions into Avalon® -MM transactions.
    • Avalon® to CCI-P Host Adapter: These paths create separate read-only and write-only paths for the DMA to access host memory.
  • DMA Test System: This module serves as a wrapper around the DMA BBB to expose the DMA masters to the rest of the logic in the AFU. It provides the interface between the DMA BBB and the CCI-P to Avalon® Adapter. It also provides the interface between the DMA BBB and the local FPGA SDRAM banks.