Performance Monitoring - 1.0 English

Performance AXI Traffic Generator LogiCORE IP Product Guide (PG381)

Document ID
PG381
Release Date
2023-10-18
Version
1.0 English

To get the bandwidth and latency values, connect the NoC AXI Performance Monitor (axi_pmon) IP to the TG in Vivado IP integrator. The NoC AXI Performance Monitor(axi-pmon) included in the Vivado IP integrator is a non-synthesizable IP connected to a Master (M_AXI) and a Slave (S00_AXI) interface, and monitors bandwidth and latency on the interface. This is similar to performance monitoring counters in the Synthesizable Performance AXI Traffic Generator.

Minimum and maximum latency values are calculated in the same way as in the Synthesizable TG. The average latency, however, is calculated as the sum of the latency values of all transactions divided by the number of transactions. In Synthesizable TG, only the summation of latency values are provided and it is a user's responsibility to divide it by the number of transactions to get the actual average latency.

The Read bandwidth measurement starts when the first Read request is issued and stops when the response to the last Read request is received. The Write bandwidth measurement starts when the first Write request is issued and stops when the response to the last Write request is received.

For AXI3/AXI4
Bandwidth (in MB/s) = (Total_Number_of_Bytes_Transferred*1000_000)/(Last_Response_Received_Time_in_ps - First_Request_Sent_Time_in_ps)
For AXI4-Stream
Bandwidth (in MB/s) = (Total_Number_of_Beats_Transferred*Data_Width_in_Bytes*1000_000)/(Last_Beat_Sent_Time_in_ps-First_Beat_Sent_Time_in_ps)

The dummy_out output port helps the synthesis tool. The axi_arst_n input signal drives the dummy_out signal.

Note: The Sent_Time and Received_Time are captured when the corresponding AXI channels' valid and ready handshake is done.

The bandwidth figures are printed in the log at end of the simulation, as given below.

For AXI3/AXI4:

# =========================================================
# >>>>>> SRC_ID 0 :: AXI_PMON :: BW ANALYSIS >>>>>>
# =========================================================
# AXI Clock Period = 3332 ps
# Min Write Latency = 60 axi clock cycles
# Max Write Latency = 66 axi clock cycles
# Avg Write Latency = 62 axi clock cycles
# Actual Achieved Write Bandwidth = 560.590030 MBps
# ***************************************************
# Min Read Latency = 26 axi clock cycles
# Max Read Latency = 32 axi clock cycles
# Avg Read Latency = 29 axi clock cycles
# Actual Achieved Read Bandwidth = 605.347717 MBps
# =========================================================

For AXI4-Stream:

# =========================================================
# >>>>>> SRC_ID 0 :: AXIS_PMON :: BW ANALYSIS >>>>>>
# =========================================================
# AXI Clock Period = 3332 ps
# Actual Achieved Stream Bandwidth = 560.590030 MBps
# =========================================================