AN 1003: Multi Memory IP System Resource Planning: for Intel Agilex® 7 M-Series FPGAs

ID 788295
Date 11/22/2023
Public
Document Table of Contents

6.1. Debugging NoC AXI Transaction Issues

If you experience AXI interface failures, such as transactions not completing, or incorrect data being returned, review the following AXI debug recommendations. Logical errors in the RTL typically cause these types of errors.
  1. Capture the interface signals with the Intel® Quartus® Prime software Signal Tap logic analyzer or replicate the issue in simulation.
  2. For a detailed description of the AXI signaling, refer to the High Bandwidth Memory (HBM2E) Interface Intel Agilex® 7 M-Series FPGA IP User Guide.
  3. Use the Signal Tap logic analyzer to verify that the design correctly implements the ready-to-valid valid handshake, as the AXI requirements describe. A common error is incorrect use of the AXI ready-to-valid handshake on all AXI sub-channels.
  4. Ensure that your design correctly specifies addresses for each transaction, per your application requirements and the address map configuration of the NoC initiator. You can verify this transaction in simulation, as Contents of Simulation Registration Include File describes in the Intel Agilex 7 M-Series FPGA Network-on-Chip (NoC) User Guide. If the design issues a transaction address that does not fall into the range of targets mapped by the connections from the initiator, the initiator returns the AXI response DECERR in either BRESP or RRESP.
  5. If using the fabric NoC, the M20Ks implement FIFOs for the read data and you must ensure that they do not overflow. Ensure that RVALID does not remain active without issuing RREADY promptly. Also, the design must meet the read clock frequency requirement of greater than half of the initiator clock frequency.
    Figure 40. Significantly Delayed RREADY Relative to the Assertion of RVALID Risks Overflowing the Read Data FIFOs


  6. In any scenario where you rely on transaction order across different initiators or AxIDs, you must add and validate the synchronization mechanisms for your design. Incorrect data can result if there are transaction sequencing hazards inherent in your design. The AXI specification only requires in-order evaluation of transactions when they are issued by a single initiator and when using a single AxID.