public class RouteNodeGraph
extends Object
| Modifier and Type | Field and Description |
|---|---|
boolean[] |
intYToNorthboundLaguna
For one of the above leading-to-Laguna wires, indicate whether it leads to an SLL travelling northbound (else southbound)
|
int[] |
intYToSLRIndex
Array mapping an INT tile's Y coordinate to its SLR index
|
int[] |
nextLagunaColumn
Array mapping an INT tile's X coordinate to the X of the next/previous Laguna column (UltraScale/UltraScale+ only)
|
int[] |
prevLagunaColumn |
short |
SUPER_LONG_LINE_LENGTH_IN_TILES |
| Constructor and Description |
|---|
RouteNodeGraph(Design design,
RWRouteConfig config) |
| Modifier and Type | Method and Description |
|---|---|
int |
averageChildren() |
void |
awaitPreserve() |
RouteNode |
getNode(Node node) |
RouteNode |
getOrCreate(Node node) |
RouteNode |
getOrCreate(Node node,
RouteNodeType type) |
float |
getPresentCongestionCost(int occupancy) |
Net |
getPreservedNet(Node node) |
Iterable<RouteNode> |
getRnodes() |
void |
initialize() |
boolean |
isAccessible(RouteNode childRnode,
RouteNode parentRnode,
Connection connection) |
boolean |
isAllowedTile(Node child) |
static boolean |
isExcludedTile(Node child) |
boolean |
isPreserved(Node node) |
boolean |
isVersalLagOutRoutethru(Node parent,
Node child)
Determine if the given nodes represent a SLICE routethru from an input site pin dedicated for SLLs
to the [A-H]Q or [A-H]Q2 output.
|
int |
numNodes() |
void |
preserve(Net net) |
void |
preserve(Net net,
List<SitePinInst> pins) |
void |
preserveAsync(Net net) |
void |
preserveAsync(Net net,
List<SitePinInst> pins) |
boolean |
unpreserve(Node node) |
void |
updatePresentCongestionCosts(float presentCongestionFactor) |
public final short SUPER_LONG_LINE_LENGTH_IN_TILES
public final int[] intYToSLRIndex
public final int[] nextLagunaColumn
public final int[] prevLagunaColumn
public final boolean[] intYToNorthboundLaguna
public RouteNodeGraph(Design design, RWRouteConfig config)
public void initialize()
public void preserve(Net net, List<SitePinInst> pins)
public void preserveAsync(Net net, List<SitePinInst> pins)
public void preserve(Net net)
public void preserveAsync(Net net)
public void awaitPreserve()
public boolean unpreserve(Node node)
public boolean isPreserved(Node node)
public static boolean isExcludedTile(Node child)
public boolean isAllowedTile(Node child)
public Iterable<RouteNode> getRnodes()
public int numNodes()
public RouteNode getOrCreate(Node node, RouteNodeType type)
public int averageChildren()
public boolean isAccessible(RouteNode childRnode, RouteNode parentRnode, Connection connection)
public void updatePresentCongestionCosts(float presentCongestionFactor)
public float getPresentCongestionCost(int occupancy)
public boolean isVersalLagOutRoutethru(Node parent, Node child)
parent - Start node of PIPchild - End node of PIP