Unlike in UltraScale+™ and previous devices implementations where direct assignment of GTs are not possible in the user constraints, in Versal ACAP implementations the GTs are external to the PCIe® IP and hence the GT assignment can be done in the user constraints.
Versal ACAP GT location assignment can be done in the user constraints file, IO planner, or hard block planner. For more information on how to assign GT locations in IO planner or hard block planner, see Synthesizing and Implementing the Design section in Versal ACAP Transceivers Wizard LogiCORE IP Product Guide (PG331). The GT locations are assigned in Quad granularity and not per lane. The lane 0 location and lane ordering are predetermined by whether the GTs are on the left or right side of the device. For details of lane 0 placement and lane ordering, see GT Selection and Pin Planning. Changing the lane 0 location or lane ordering is not supported other than the default setting described in GT Selection and Pin Planning. Following is an example of assigning GTYP locations in a user constraint file.
set_property LOC GTY_QUAD_X0Y6 [get_cells $gt_quads -filter NAME=~*/gt_quad_3/*] set_property LOC GTY_QUAD_X0Y5 [get_cells $gt_quads -filter NAME=~*/gt_quad_2/*] set_property LOC GTY_QUAD_X0Y4 [get_cells $gt_quads -filter NAME=~*/gt_quad_1/*] set_property LOC GTY_QUAD_X0Y3 [get_cells $gt_quads -filter NAME=~*/gt_quad_0/*]