Scalable Scatter-Gather DMA Intel® FPGA IP User Guide

ID 823097
Date 1/27/2025
Public
Document Table of Contents

3.3. Device Port

The SSGDMA IP supports mixture of memory, streaming sink, and streaming source port up to 8 H2D/D2H device ports. The streaming interface supports both event and video synchronization.

Each device port is a standalone module within the SSGDMA controller that you can configure to support different application requirement.

The supported QoS/Arbitration scheme is round robin.

The H2D MM, H2D ST and D2H ST device port handles data source from host memory to user logic in FPGA or vice versa with Streaming Source/Sink/Memory-mapped interface port. You can select Avalon-ST or AXI-ST interface for H2D ST and D2H ST device ports. Upon receiving descriptor information from Prefetcher Engine, the Device Agent constructs an appropriate command packet in the AXI-ST format as a write/read request and sends it to the DMA Arbiter.
  • For H2D ST Agent, response data from host is buffered and adapted into parameterized width for next stage forwarding through AXI-ST/Avalon-ST port to user logic.

  • For D2H ST Agent, received data from user logic through AXI-ST/Avalon-ST interface port is buffered and adapted into parameterized width for next stage forwarding to subsequent module.

  • For H2D MM Agent:
    • For read operation, AXI-4 read transaction is expected to be issued and response is expected from the user logic subordinate. The data received can be buffered and adapted which eventually translated into AXI-ST format as write request.
    • For write operation, AXI-4 write transaction is expected to be issued to the user logic subordinate. Data from the host is buffered and adapted into parameterized width for next stage forwarding through AXI4 port to user logic subordinate.
    Note: H2D MM Agent does not support reordering. All AXI4 transactions to user logic must use fixed identification tag number to avoid out-of-order response.

Each completion of descriptor information triggers an indicator as response back to Prefetcher Engine module.

The Device Agent accepts hard reset as well as the soft reset request from software to properly drain off residual content of internal FIFO buffers, its receiving data path interface, and then apply default state to every registers. Completion of soft reset sequence is notified through Q_STATUS registers.

Both H2D ST and D2H ST device ports support unaligned (or byte-aligned) transfers with data widths of 64/128/256/512 bits. To enable it, turn on the Enable unaligned addressing access parameter. The H2D MM device port supports only aligned transfer sizes and addressing. For more information, refer to the Aligned and Unaligned Transfer Support chapter.

Note: The behavior of the IP may become undetermined in the event the connected downstream AXI-ST Subordinate/AXI-ST Manager/ AXI4 Subordinate did not respond to the read request issued.