Characterizing latency involves analyzing how long masters must wait for their transaction requests to complete. Collecting latency statistics at the probe interface involves counting several different conditions associated with bus transactions:
- The number of transactions that match the configured filter criteria is collected in a match counter
- The number of transactions that matched the filter criteria and were also collected in a tracked counter
- The total time the initiator waited for tracked transactions to complete is collected in a total wait counter
- The total wait time in this counter can be divided by the number of tracked transactions in the tracked counter to obtain the average latency
- A watermark counter for individual latency is maintained in a max wait watermark
- Each transactions latency is compared against the previous max wait value and the greater of the two values is retained
- The total time an initiator was waiting for transaction credits is also collected in a credit wait counter
- This count is only needed for bus architectures that require the receipt of credit(s) before a transaction request can be presented
- The credit wait time cannot be associated with any particular bus transaction since they wait occurs before the transaction is presented to the filter
- The credit wait counter is a VBUSM.C feature only
If configured for trace export, a latency statistics trace packet is constructed and forwarded to the trace aggregator each time the statistics window expires.