Transmitter Setup

UltraScale Architecture SelectIO Resources User Guide (UG571)

Document ID
UG571
Release Date
2022-08-31
Revision
1.14 English

The transmitter in the RXTX_BITSLICE has an 8-bit input parallel register. In 4-bit mode, only bits [3:0] are used to store the data from the logic. Capturing the parallel data and the clocking of registers in the RXTX_BITSLICE happens on internally generated clocks. To create these clocks, the transmitter side of the RXTX_BITSLICE uses the high-speed PLL generated master clock (PLL_CLK). Follow the Native Mode Bring-up and Reset procedure described for the BITSLICE_CONTROL primitive.

The 8-bit input register multiplexes down to a registered 4-bit and then to a registered 2-bit value. Those two bits of data pass through a multiplexer and register into the output delay line. The output delay line connects to an output buffer in the IOB (This Figure).

The RXTX_BITSLICE has a loopback attribute allowing the output of the transmitter at the output of the delay line to be looped back to the receiver at the input of the delay line.

Note:   This is a very useful option for debug and control applications.

Figure 2-40:      RXTX_BITSLICE Transmitter Block Diagram

X-Ref Target - Figure 2-40

X16348-rxtx_bitslice-transmitter-block-diagram.jpg

Both 3-state possibilities are passing through the transmitter (This Figure). The chosen 3-state option is set in the transmitter by the TBYTE_CTL attribute.

The transmitter operates on the high-speed clock supplied to the BITSLICE_CONTROL.PLL_CLK input. In the BITSLICE_CONTROL primitive, a clock generator ensures all clocks for the transmitter are generated.

The PLL_CLK is best generated by one of the two PLLs behind the I/O bank in the same clock area. When following the Native Mode Bring-up and Reset section of the BITSLICE_CONTROL section, the FPGA interconnect and internal RXTX_BITSLICE clocks are aligned.

Data presented to the RXTX_BITSLICE.D inputs is captured in the bit slice and serialized to the bit slice output by clocks generated in BITSLICE_CONTROL.

This data, 8-bit or 4-bit wide, is serialized and transmitted at the rate of the applied BITSLICE_CONTROL.PLL clock.

The transmitter part of the RXTX_BITSLICE or TX_BITSLICE is normally used to serially transmit data bits, but when the bit slice D-inputs are pulled to a static level, it is possible to generate and transmit any predicted signal format. A 50/50 clock pattern is generated when the D[7:0] or D[3:0] inputs are pulled to 10101010 or 1010.

The OUTPUT_PHASE_90 attributes in each transmitter provide help generating phase-aligned data and clocks or 90-degree shifted data or clock setups.

Latency through the transmitter:

With OUTPUT_PHASE_90 = FALSE, the latency from loading eight parallel bits to a first serial output bit is shown in This Equation for 8-bit (This Figure):

Equation 2-17      T + (13/16)T = latency

where T is the period of the parallel load or interconnect logic clock, and shown in This Equation for 4-bit (see This Figure):

Equation 2-18      T + (5/8)T = latency

With OUTPUT_PHASE_90 = TRUE, the latency from loading eight parallel bits to a first serial output bit is shown in This Equation for 8-bit (This Figure):

Equation 2-19      T + (14/16)T = latency

where T is the period of the parallel load or interconnect logic clock, and shown in This Equation for 4-bit (This Figure):

Equation 2-20      1T + (6/8)T = latency

where T is the period of the parallel load or FPGA logic clock.

Figure 2-41:      TX_BITSLICE Latency, DATA_WIDTH = 8

X-Ref Target - Figure 2-41

X19085-tSfB1ta2.jpg
Figure 2-42:      TX_BITSLICE Latency, DATA_WIDTH = 4

X-Ref Target - Figure 2-42

X20090-5irZq0if.jpg

For the TX_BITSLICE, the Fabric Clock does not directly connect to the TX_BITSLICE. The PLL and BITSLICE_CONTROL create a divided clock. When DATA_WIDTH=4, the divided clock is inverted. Transmitting clock and data are similar operations, so the same clocking rules must be followed:

°Transmitting a clock can be done from any of the RXTX_BITSLICEs in a nibble.

°The generated clock depends on the pattern applied at the D[7:0] pins of the transmitter.

°For example, when 01010101 is applied, a 50/50 clock with frequency equal to half the RXTX_BITSLICE.PLL_CLK is generated.

Assume an output data rate of 1250 Mb/s is required and a clock must be generated, too.

°1250 Mb/s requires a PLL generated high-speed clock of 1250 MHz connected at the BITSLICE_CONTROL.PLL_CLK.