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

5.7. Congestion Interaction

A congested connection can impact overlapping connections. For example, a connection that uses a segment of Link 0 that is congested due to memory controller efficiency, can slow down other connections using the same segment. This slow down occurs because NoC packets of the congested connection may cue in the NoC, preventing forward progress of the packets of other connections in the same segment.

Example causes of congested connections include:

  • Exceeding the NoC link bandwidth limits, due to multiple connections attempting to share a segment of a link.
  • Exceeding the throughput capability of a target, due to multiple initiators issuing transactions simultaneously, or due to a slower target frequency than initiator frequency.
  • Issuing a large number of transactions, to a target that cannot handle them as quickly, due to memory controller efficiency.

Congested Connections Overlapping with other Connections Spread Congestion Across the NoC illustrates how congested connections overlapping with other connections can spread congestion across the NoC, reducing the performance of connections that might otherwise perform much better.

In this example:

  • The red connection is the source of congestion, because it has a memory access pattern that leads to low efficiency.
  • The orange connection overlaps with the red connection on Link 0, and its packets on the NoC cannot advance any faster than the packets of the red connection. Therefore, the orange connection becomes congested.
  • The yellow connection does not overlap with the red connection, but it does overlap with the orange connection, which has become congested. Therefore, the yellow connection is now also congested.
  • The green connection is not affected in the scenario in the illustration because the green connection is on a different link than the other connections.
Figure 29. Congested Connections Overlapping with other Connections Spread Congestion Across the NoC


Avoid using overlapping NoC paths between connections that are performance critical, and connections that may have degraded performance. You can avoid these by:

  • Carefully considering which link you place connections on. Refer to Horizontal Bandwidth Considerations in Intel Agilex 7 M-Series FPGA Network-on-Chip (NoC) User Guide.
  • Using the direct connections in the NoC, or placing performance critical connections in separate segments of the NoC from connections where you expect congestion.