The USER_SLL_GUIDANCE is an advanced DFX property that lets
users control which configurable logic element (CLE) exit sites are used by static net
for super logic region (SLR) crossings. This property is intended for designs where the
standard methodology of leaving one clock region at SLR boundaries for minimum static
net crossing is not feasible.
To use the USER_SLL_GUIDANCE property, you must understand the
static netlist placement across various SLRs and the number of static nets requiring SLR
crossing. The number of static nets that can cross an SLR depends on the number of UBUMP
nodes available in that super long lines (SLL) tile. You must remove the programmable
unit (PU) of the CLE from the reconfigurable partition (RP) Pblock so that it becomes
part of the static region and can be used for SLR exit.
USER_SLL_GUIDANCE is a hard
constraint. If the router cannot honor the provided guidance, it errors out and stops
routing.Use the following methodology to apply USER_SLL_GUIDANCE:
- Analyze static net placement. Identify the static nets that need to cross SLR boundaries and determine the SLRs they traverse.
- Identify valid SLL tiles. Based on the placement of static logic, get the valid SLL tiles that can cross the SLR.
- Identify exit slice sites. Determine the slice sites adjacent to the identified SLL tile that serve as exit points for the SLL nodes.
- Resize the RP Pblock. Remove the PU of the identified slice site(s) from the RP Pblock so they become part of the static region.
- Apply the
USER_SLL_GUIDANCEproperty to the static net.
Syntax
-
resize_pblock <rp_pblock> -remove "[get_sites -of_objects [get_dfx_footprint -pu -of_objects [get_tiles -of_objects [get_sites <SLICE_site>]]]" -
set_property USER_SLL_GUIDANCE "<SLICE_site>" [get_nets <static_slrcross_net>]
Examples
The following examples show how to apply
USER_SLL_GUIDANCE:
- Single SLR crossing (static-to-static net):
set_property USER_SLL_GUIDANCE SLICE_X145Y333 [get_nets net_1] - Multi-SLR crossing net: For nets that cross multiple SLR boundaries, the
guidance must include exit sites in each SLR along the path:
set_property USER_SLL_GUIDANCE "<SLICE_site_SLRm> <SLICE_site_SLRn>" [get_nets <static_slrcross_net>]
SLICE_X145Y333 and SLR2 through
SLICE_X144Y621:set_property USER_SLL_GUIDANCE
"SLICE_X145Y333 SLICE_X144Y621"
[get_nets net_2]