Reference Clock Selection and Distribution

Versal Adaptive SoC GTY and GTYP Transceivers Architecture Manual (AM002)

Document ID
AM002
Release Date
2023-10-26
Revision
1.3 English

The Versal adaptive SoC transceivers provide different reference clock input options. Clock selection supports two LCPLLs and two RPLLs.

From an architecture perspective, a Quad (or Q) contains four channels, two HSCLK blocks, two dedicated external reference clock pin pairs, and dedicated reference clock routing. The following list provides additional constraints on the above resources within a Quad.

  • There is one RPLL and one LCPLL within each of the HSCLK0/1 blocks.
  • PLLs from HSCLK0 can only provide clocking to Channel 0 and 1.
  • PLLs from HSCLK1 can only provide clocking to Channel 2 and 3.

The GTYE5_QUAD or GTYP_QUAD primitives must be instantiated when any PLL or transceiver channel inside the Quad is used. In general, the reference clock for a Quad (Q(n)) can also be sourced from up to two Quads below (Q(n–1) or Q(n–2)) or from up to two Quads above (Q(n+1) or Q(n+2)). For devices that support stacked silicon interconnect (SSI) technology, the reference clock sharing is limited within its own super logic region (SLR).

See the Versal device data sheets for more information about SSI technology.

For Versal devices, sourcing of the reference clock is limited to two Quads above and below. Reference clock sharing is supported for all line rates.

Reference clock features include:

  • Clock routing for northbound and southbound clocks.
  • Flexible clock inputs available for the LCPLL or RPLL.
  • Static or dynamic selection of the reference clock for the LCPLL or RPLL.

The Quad architecture has four GTY/GTYP transceivers, two dedicated reference clock pin pairs, and dedicated north or south reference clock routing. Each GTY/GTYP transceiver channel in a Quad has six clock inputs available according to the corresponding PLL resource assignments shown in the following table.

Table 1. Reference Clock Sharing for Versal Adaptive SoC GTY/GTYP Transceivers
Clock Source PLL Used GTY and GTYP Transceivers Channel 0/1 GTY and GTYP Transceivers Channel 2/3
Two local reference clock pin pairs RPLL

HSCLK0_RPLLGTREFCLK0

HSCLK0_RPLLGTREFCLK1

HSCLK1_RPLLGTREFCLK0

HSCLK1_RPLLGTREFCLK1

LCPLL

HSCLK0_LCPLLGTREFCLK0

HSCLK0_LCPLLGTREFCLK1

HSCLK1_LCPLLGTREFCLK0

HSCLK1_LCPLLGTREFCLK1

Two reference clock pin pairs from Quads above RPLL

HSCLK0_RPLLSOUTHREFCLK0

HSCLK0_RPLLSOUTHREFCLK1

HSCLK1_RPLLSOUTHREFCLK0

HSCLK1_RPLLSOUTHREFCLK1

LCPLL

HSCLK0_LCPLLSOUTHREFCLK0

HSCLK0_LCPLLSOUTHREFCLK1

HSCLK1_LCPLLSOUTHREFCLK0

HSCLK1_LCPLLSOUTHREFCLK1

Two reference clock pin pairs from Quads below RPLL

HSCLK0_RPLLNORTHREFCLK0

HSCLK0_RPLLNORTHREFCLK1

HSCLK1_RPLLNORTHREFCLK0

HSCLK1_RPLLNORTHREFCLK1

LCPLL

HSCLK0_LCPLLNORTHREFCLK0

HSCLK0_LCPLLNORTHREFCLK1

HSCLK1_LCPLLNORTHREFCLK0

HSCLK1_LCPLLNORTHREFCLK1

Because there are only two south clock inputs and four potential clock sources from the two Quads above (Q(n+1)) and Q(n+2)), only a maximum of two of the four potential reference clock pin pairs from above can be physically connected up to Q(n) at any given moment. The four potential reference clock pin pairs from above are reduced to two or three if the Quad above (Q(n+1)) is itself sourcing reference clock pin pairs from two above (Q(n+3)). This is because there are a total of two south reference clock routing tracks connecting the Quads. Similar rules apply when sourcing a reference clock from Quads below. Because there are two north clock inputs and four potential clock sources from the two Quads below (Q(n–1) and Q(n–2)), only a maximum of two of the four potential reference clock pin pairs from below can be physically connected up to Q(n) at any given moment. The four potential reference clock pin pairs from below is reduced to two or three if the Quad below (Q(n–1)) is itself sourcing reference clock pin pairs from two below Q(n–3). Again, this is because there are a total of two north reference clock routing tracks connecting the Quads. For example, Q(n–1) is sourcing both reference clocks from Q(n–3). In this example, Q(n) would only be able to source reference clock pins below from Q(n–1). Q(n) would not be able to access the reference clock pins in Q(n–2) because the two routing tracks have already been used to bring the two reference clocks from Q(n–3) to Q(n–1).

The following figure shows the detailed view of the reference clock multiplexer structure within a single HSCLK block, using LCPLL inside block HSCLK0 as an example. The same structure applies to LCPLL inside HSCLK1. When single or multiple reference clock sources are connected, the designer first needs to make sure that the connections are made to the correct PLLs using the reference clock ports assigned to the each intended PLL. The enhanced intelligent pin selection (IPS) automatically analyzes the design and maps reference clock selection during design implementation to guarantee that clocks are properly connected. For additional details on IPS, see Intelligent Pin Selection.

Figure 1. LCPLL Reference Clock Selection Multiplexer

Similarly, the following figure shows the detailed view of the reference clock multiplexer structure within a single HSCLK block, but with RPLL being used inside HSCLK1 as another example. The connections for the two local GTREFCLKs are connected differently inside HSCLK1 compared to HSCLK0. HSCLK1_RPLL/LCPLLGTREFCLK1 is connected to input 1 on the input multiplexer while HSCLK1_RPLL/LCPLLGTREFCLK0 is connected to input 2 on the input multiplexer.

Figure 2. RPLL Reference Clock Selection Multiplexer

The following tables list the corresponding reference clock selection multiplexer settings.

Table 2. LCPLL Reference Clock Selection Multiplexer Settings
HSCLK[0/1]_LCPLLREFCLKSEL HS[0/1]_LCPLL_IPS_REFCLK_SEL Selected Input to LCPLL
3'b001 1

HSCLK0_LCPLLGTREFCLK0

HSCLK1_LCPLLGTREFCLK1

3'b010 2

HSCLK0_LCPLLGTREFCLK1

HSCLK1_LCPLLGTREFCLK0

3'b011 3 HSCLK[0/1]_LCPLLNORTHREFCLK0
3'b100 4 HSCLK[0/1]_LCPLLNORTHREFCLK1
3'b101 5 HSCLK[0/1]_LCPLLSOUTHREFCLK0
3'b110 6 HSCLK[0/1]_LCPLLSOUTHREFCLK1
3'b111 7 HSCLK[0/1]_LCPLLGTGREFCLK
  1. When HS[0/1]_LCPLL_IPS_PIN_EN = 0, HS[0/1]_LCPLL_IPS_REFCLK_SEL control the multiplexer inputs.
  2. When HS[0/1]_LCPLL_IPS_PIN_EN = 1, HSCLK[0/1]_LCPLLREFCLKSEL controls the multiplexer inputs.
  3. The HSCLK[0/1]_LCPLLGTGREFCLK input is reserved and should not be used.
Table 3. RPLL Reference Clock Selection Multiplexer Settings
HSCLK[0/1]_RPLLREFCLK HS[0/1]_RPLL_IPS_REFCLK_SEL Selected Input to RPLL
3'b001 1

HSCLK0_RPLLGTREFCLK0

HSCLK1_RPLLGTREFCLK1

3'b010 2

HSCLK0_RPLLGTREFCLK1

HSCLK1_RPLLGTREFCLK0

3'b011 3 HSCLK[0/1]_RPLLNORTHREFCLK0
3'b100 4 HSCLK[0/1]_RPLLNORTHREFCLK1
3'b101 5 HSCLK[0/1]_RPLLSOUTHREFCLK0
3'b110 6 HSCLK[0/1]_RPLLSOUTHREFCLK1
3'b111 7 HSCLK[0/1]_RPLLGTGREFCLK
  1. When HS[0/1]_RPLL_IPS_PIN_EN = 0, HS[0/1]_RPLL_IPS_REFCLK_SEL controls the multiplexer inputs.
  2. When HS[0/1]_RPLL_IPS_PIN_EN = 1, HSCLK[0/1]_RPLLREFCLK controls the multiplexer inputs.
  3. The HSCLK[0/1]_RPLLGTGREFCLK input is reserved and should not be used.

As shown in Figure 1 and Figure 2, the GTY/ GTYP transceivers in Versal adaptive SoCs contain multiple dedicated reference clock input ports for each PLL. The user need to set the muxing of the reference clock input by using the selector port or the selector attribute. The following table lists the reference clock multiplexer selector control signals per PLL.

Table 4. Reference Clock Input Multiplexer Selection Control
PLL Selector Control Attribute Multiplexer Selector Port/Attribute
RPLL (HSCLK0) HS0_RPLL_IPS_PIN_EN = 1'b1 HSCLK0_RPLLREFCLKSEL[2:0]
HS0_RPLL_IPS_PIN_EN = 1'b0 HS0_RPLL_IPS_REFCLK_SEL
RPLL (HSCLK1) HS1_RPLL_IPS_PIN_EN = 1'b1 HSCLK1_RPLLREFCLKSEL[2:0]
HS1_RPLL_IPS_PIN_EN = 1'b0 HS1_RPLL_IPS_REFCLK_SEL
LCPLL (HSCLK0) HS0_LCPLL_IPS_PIN_EN = 1'b1 HSCLK0_LCPLLREFCLKSEL[2:0]
HS0_LCPLL_IPS_PIN_EN = 1'b0 HS0_LCPLL_IPS_REFCLK_SEL
LCPLL (HSCLK1) HS1_LCPLL_IPS_PIN_EN = 1'b1 HSCLK1_LCPLLREFCLKSEL[2:0]
HS1_LCPLL_IPS_PIN_EN = 1'b0 HS1_LCPLL_IPS_REFCLK_SEL
  1. When HS[0/1]_RPLL_IPS_PIN_EN = 0, HS[0/1]_RPLL_IPS_REFCLK_SEL controls the multiplexer inputs.
  2. When HS[0/1]_RPLL_IPS_PIN_EN = 1, HSCLK[0/1]_RPLLREFCLK controls the multiplexer inputs.
  3. The HSCLK[0/1]_RPLLGTGREFCLK and HSCLK[0/1]_LCPLLGTGREFCLK inputs are reserved and should not be used.