NoC and QoS Requirements - 2020.2 English

Versal ACAP Hardware, IP, and Platform Development Methodology Guide (UG1387)

Document ID
UG1387
Release Date
2021-03-26
Version
2020.2 English

Every connection through the NoC has an associated QoS requirement. You can set the QoS requirement for each connection through the NoC. The set of desired NoC connections together with their corresponding QoS requirements constitute a traffic specification. The traffic specification is used internally by the NoC compiler to compute an optimal configuration for the NoC.

A QoS requirement has the following components:

  • Traffic class defines how traffic on the connection is prioritized in the NoC compiler and in the hardware. The traffic class is associated with the ingress port (NoC master) of the connection. All connections originating from a given master must share the same traffic class.
  • Read and write bandwidth requirements describe how much communication bandwidth the connection is expected to consume in each direction. Bandwidth requirements are associated with the egress port (NoC slave). Each connection might have different read and write bandwidth requirements. Bandwidth is expressed in units of MB/s.
  • Read and write latency values specify the maximum structural latency in each direction the connection can tolerate, where the structural latency is defined as the minimum round trip time for a transaction to traverse the NoC. Latency values are associated with the egress port (NoC slave). Latency is expressed in units of cycles of the internal NoC clock.
    Note: You cannot specify the latency requirement.

The supported traffic classes are:

Low Latency
The NoC compiler minimizes the structural latency while satisfying the bandwidth requirement. Low latency traffic receives a high priority at all switch and memory controller arbitrations. The low latency traffic class only applies to read traffic.
Isochronous
The isochronous traffic class includes a mechanism to guarantee the maximum latency is not exceeded. In addition to the bandwidth requirement, an isochronous connection allows you to specify a latency timeout. Initially, an isochronous transaction receives medium priority through the NoC. The transaction tracks the number of cycles in transit as it progresses through the NoC. If the number of cycles exceeds the latency timeout, the transaction is upgraded to receive the highest priority.
Note: You cannot specify the isochronous timeout latency.
Best Effort
The NoC compiler works to satisfy the bandwidth and latency requirements after low latency and isochronous path requirements have been satisfied. Latency values are associated with the egress port (NoC slave). Best effort transactions receive the lowest arbitration priority throughout the NoC.