As illustrated in Figure 1, data for transmission over an AVB network can be obtained from three types of sources.
The transmitter (TX) arbiter selects from these three sources in the following manner:
- If there is AV data available and the programmed AV bandwidth limitation is not exceeded, then the AV packet is transmitted
- otherwise, the TX arbiter checks to see if there are any PTP packets to be transmitted
- otherwise, if there is an available legacy packet, this is transmitted.
The Ethernet AVB Endpoint uses configuration registers to set up the percentage of available Ethernet bandwidth reserved for AV traffic. To comply with the IEEE802.1Q specification these should not be configured to exceed 75%. The arbiter then polices this bandwidth restriction for the AV traffic and ensures that on average, it is never exceeded. Consequently, despite the AV traffic having a higher priority than the legacy traffic, there is always remaining bandwidth available to schedule legacy traffic.
The relevant configuration registers for programming the bandwidth percentage dedicated to AV traffic are defined in Configuration and Status and are:
These registers default to values which dedicate up to 75% of the overall bandwidth to the AV traffic. This is the maximum legal percentage that is defined in the IEEE802.1 AVB standards.
In many implementations, it might be unnecessary to change
these register values. Correct use of the tx_axis_av_tvalid
signal, as
defined in TX AV Traffic Interface, allows the TX Arbiter to share the bandwidth
allocation efficiently between the AV and Legacy sources (even in the situations where the AV
traffic requires less than 75% of the overall bandwidth). However, for the cases that require
less than 75% of the overall bandwidth, a careful configuration can result in a smoother (less
bursty) transmission of the AV traffic, which should prevent frame bunching across the AVB
network.