RX Bit Rate Detection

Implementing SMPTE SDI Interfaces with UltraScale GTH Transceivers Application Note (XAPP1248)

Document ID
XAPP1248
Release Date
2023-11-08
Revision
v1.6 English

The UHD-SDI core can automatically determine the SDI mode (SD-SDI, HD-SDI, 3G-SDI, 6G-SDI, and 12G-SDI) of the SDI signal received by the GTH RX. When it is not locked to the current SDI input signal, the UHD-SDI core sequences the GTH RX through five different SDI modes until it detects recognizably valid SDI data on the gtwiz_userdata_rx_out output port of the GTH Wizard IP. At that point, the UHD-SDI core indicates that it is locked to the SDI signal by asserting its rx_mode_locked output. It also indicates which SDI mode the RX is locked to on its rx_mode output port. In HD-SDI, 3G-SDI, and 6G-SDI modes, the GTX RX gives no indication of whether it is receiving an integer frame rate or a fractional frame rate SDI signal.

This means it cannot differentiate between 1.485 Gbps and 1.485/1.001 Gbps in HD-SDI mode, for example. However, when the UHD-SDI core is in HD-SDI, 3G-SDI, 6G-SDI, and 12G-SDI mode, it has no way of determining if the bit rate of the input SDI signal is bitrate/1 or bitrate/1.001 (for example, for 6G-SDI; 5.94 Gbps or 5.94/1.001 Gbps). However, the control module supplied with this application note contains a bit rate detector that can distinguish between 1.485 Gbps and 1.485/1.001 Gbps; between 2.97 Gbps and 2.97/1.001 Gbps; between 5.94 Gbps and 5.94/1.001 Gbps and between 11.88 Gbps and 11.88/1.001 Gbps. The SDI wrapper output port rx_m_out is Low when the input SDI signal's bit rate is bitrate/1. And, rx_m_out is High when the input SDI signal's bit rate is bitrate/1.001.

For the bit rate detection feature to work, the SDI wrapper must be supplied with a fixed-frequency clock on its rx_fxdclk_in input port. It is recommended that the frequency of this clock be at least 10 MHz. If the frequency is over 150 MHz, it might be difficult to meet timing in the bit rate detection logic. The SDI wrapper has a parameter called FXDCLK_FREQ that must be used to specify the frequency of the clock connected to the rx_fxdclk_in port. The value of FXDCLK_FREQ must be set equal to the frequency of the fixed frequency clock in Hz.