public class SitePinInst
extends Object
implements Serializable, Cloneable
Constructor and Description |
---|
SitePinInst()
Constructor setting things to null and false.
|
SitePinInst(boolean isOutputPin,
String pinName,
SiteInst instance)
Creates a pin from parameters
|
SitePinInst(PinType pinType,
String pinName,
SiteInst instance)
Creates a pin from parameters
|
SitePinInst(String pinName,
SiteInst instance)
Determines pin direction from site instance type.
|
Modifier and Type | Method and Description |
---|---|
void |
detachSiteInst()
Removes any reference to the site instance from this pin and
removes the pin from the pin map in the site instance.
|
boolean |
equals(Object obj)
Checks if obj is a pin and if equal to this pin by comparing instance, direction and pinName.
|
BELPin |
getBELPin()
Gets the corresponding BELPin for this site pin.
|
Node |
getConnectedNode()
Creates a new node connected to this site pin.
|
int |
getConnectedWireIndex()
Gets the index of the tile wire connected to this site pin.
|
String |
getModuleInstName()
Gets and returns the module instance name corresponding to the
instance of this pin.
|
String |
getName()
Gets and returns the pin name of the pin.
|
Net |
getNet() |
RouteNode |
getNodeFromPin()
This will creating a routing node from the pin given.
|
RouteNode |
getNodeFromPin(RouteNode parent,
int level)
This will creating a routing node from the pin given.
|
int |
getNumDownhillNodes()
Counts the number of downhill nodes from the node connected to
this pin.
|
PinType |
getPinType()
Gets the pin's type
|
Port |
getPort()
Gets the module port that references this pin.
|
RouteNode |
getRouteNode()
Creates and returns a new route node that connects to
this pin.
|
Site |
getSite()
Gets the site this pin is placed on.
|
Integer |
getSiteExternalWireIndex()
Gets the external wire on this pin.
|
SiteInst |
getSiteInst()
Gets and returns the instance where this pin resides.
|
String |
getSiteInstName()
Gets and returns the name of the instance where this pin resides.
|
String |
getSitePinName()
Get the concatenated siteName.PinName (ex.
|
SiteTypeEnum |
getSiteTypeEnum()
Gets the site type enum for this pin's site
|
List<BELPin> |
getSiteWireBELPins()
Gets the list of BEL pins connected to this site pin internally.
|
Integer |
getSiteWireIndex()
Gets the site wire index of the wire in the site attached to this site pin.
|
String |
getSiteWireName()
Gets the site wire name of the wire in the site attached to this site pin.
|
Tile |
getTile()
Gets and returns the tile where this pin resides.
|
int |
hashCode()
Generates a hashCode based on the instance, direction and pinName.
|
boolean |
isLUTInputPin()
Checks if this pin connects to a LUT input
|
static boolean |
isLUTInputPin(SiteInst siteInst,
String name)
Checks a given site and pin name to see if it is a LUT input pin.
|
boolean |
isOutPin() |
boolean |
isPinOnABuf()
Checks if the pin is on a BUF site
|
boolean |
isRouted()
Checks if a site pin flag is marked as routed
|
boolean |
movePin(String newName)
Updates the pin name to a new name within the site.
|
void |
setIsOutputPin(boolean dir)
Sets the direction of the pin.
|
void |
setNet(Net net) |
void |
setPinName(String name)
Sets the name of the pin.
|
void |
setPinType(PinType pinType)
Sets the pin's type
|
void |
setPort(Port port)
Sets the module port that references this pin.
|
void |
setRouted(boolean isRouted)
Sets a flag on this pin to mark it as routed
|
void |
setSiteInst(SiteInst instance)
Sets the instance to which this pin belongs.
|
void |
setSiteInst(SiteInst instance,
boolean keepRouting)
Sets the instance to which this pin belongs.
|
String |
toString()
Generates a string representation of the pin.
|
public SitePinInst()
public SitePinInst(boolean isOutputPin, String pinName, SiteInst instance)
isOutputPin
- Is the new pin an outpin?pinName
- The name of the pin on the instance (internal name)instance
- The instance where the pin residespublic SitePinInst(String pinName, SiteInst instance)
pinName
- Name of the new site pininstance
- The non-null site instance with a non-null site typepublic boolean isOutPin()
public String getName()
public SiteInst getSiteInst()
public String getSiteInstName()
public String getModuleInstName()
public Tile getTile()
public void setIsOutputPin(boolean dir)
dir
- The direction (true=outpin, false=inpin)public void setPinName(String name)
name
- The new name of this pin.public boolean movePin(String newName)
newName
- Name of the new pin location.public void setSiteInst(SiteInst instance)
instance
- The instance to which this pin belongs.public void setSiteInst(SiteInst instance, boolean keepRouting)
instance
- The new desired instance to associate with the pin.keepRouting
- True will keep the routing on this pin's net.public boolean isRouted()
public void setRouted(boolean isRouted)
isRouted
- The desired setting on this pin (true is routed, false is otherwise)public void detachSiteInst()
public void setPort(Port port)
port
- the port that references this pin.public Port getPort()
public void setNet(Net net)
net
- the net to setpublic Net getNet()
public Site getSite()
public String getSitePinName()
public String toString()
toString
in class Object
public int hashCode()
hashCode
in class Object
public boolean equals(Object obj)
equals
in class Object
public PinType getPinType()
public void setPinType(PinType pinType)
pinType
- Desired pin typepublic boolean isPinOnABuf()
public SiteTypeEnum getSiteTypeEnum()
public BELPin getBELPin()
BELClass
. This method retrieves the BELPin from the
PORT BEL object.public boolean isLUTInputPin()
public static boolean isLUTInputPin(SiteInst siteInst, String name)
siteInst
- The site inst placed on the site to queryname
- The pin name to querypublic int getConnectedWireIndex()
public Node getConnectedNode()
public RouteNode getRouteNode()
public int getNumDownhillNodes()
public Integer getSiteExternalWireIndex()
public RouteNode getNodeFromPin()
public RouteNode getNodeFromPin(RouteNode parent, int level)
parent
- The parent node of the created route nodelevel
- The depth level of the created route nodepublic Integer getSiteWireIndex()
public String getSiteWireName()
public List<BELPin> getSiteWireBELPins()