FPGA AI Suite Handbook

ID 863373
Date 11/21/2025
Public
Document Table of Contents

10.3.3. AXI Streaming Interface

The FPGA AI Suite can be configured to accept AXI-streaming (AXI4-Stream) input features, produce AXI-streaming (AXI4-Stream) output features, or both. When input streaming is enabled, graph inputs must fit entirely in the stream buffer. This section describes the interfaces and operation of the input and output streaming modes. The available modes of operation for DDR-free (discussed in Using FPGA AI Suite in Hostless DDR-Free Mode) and DDR-enabled designs are summarized in the following table:
Table 39.  Summary of Streaming Operation Modes
Input Mode Output Mode Description
DDR-free supported configurations
Streaming Streaming The only supported mode of operation when external memory is not available. Useful for data processing pipelines where pre- and post- processing stages are on the FPGA device and have AXI-streaming interfaces. Does not support CPU subgraphs or sliced inputs (that is, the stream buffer must be large enough to stage the entire input).
DDR-enabled supported configurations
Streaming Streaming For data processing pipelines where pre- and post- processing stages are on the FPGA device and have AXI-streaming interfaces. Does not support sliced inputs.
DDR-memory Streaming For pipelines where the host CPU is typically the data source, and post-processing stages are on the FPGA device with an AXI-streaming interface. Supports CPU subgraphs and sliced inputs.
Streaming DDR-memory For pipelines where the data source or preprocessing stage is an AXI-streaming IP, and the output should go typically to the CPU host for post-processing. Does not support sliced inputs.
DDR-memory DDR-memory For applications where the host CPU is the typically the data source and the sink. Supports CPU subgraphs and sliced inputs.

Either the streaming or the non-streaming modes can be used to connect other system components. The DDR-memory input (output) are typically used when the CPU host is the input (output), although a small soft-logic state machine or controller can instead be used to co-ordinate data transfer to/from the DDR memory.

If one of the layers in the graph is not supported by the FPGA, then a CPU host is normally required to execute the unsupported layer. However, you can build custom soft logic on the FPGA to implement the unsupported layer. The output from the IP (either streaming-out or DDR-based) can be sent to the custom soft logic.

After the custom soft logic has finished computation, the output data from the custom soft logic can be sent (via streaming or via DDR) to another instance of the FPGA AI Suite IP to execute the remainder of the graph. Alternately, you can send the output of the custom soft logic back to the same, original, instance of the FPGA AI Suite IP but with the FPGA AI Suite IP configured to use a different instruction stream. For details, refer to " DMA Descriptor Queue " in CSR Map and Descriptor Queue.

When input and output streaming is enabled, the system architecture can be described as shown in the following diagram:
Figure 28.  FPGA AI Suite IP with Input and Output Streaming


For more information about the configuration and operation of these streaming interfaces, refer to the following sections: