|
AMF-Placer
2.0
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
A design pin on a design cell connected to a net. More...
#include <DesignInfo.h>


Public Member Functions | |
| DesignPin (std::string &name, std::string &refpinname, DesignPinType pinType, bool inputOrNot, DesignElement *parentPtr, int id) | |
| Construct a new Design Pin object. More... | |
| ~DesignPin () | |
| DesignPinType | getPinType () |
| Get the Pin Type of the pin. More... | |
| std::string & | getNetName () |
| Get the name of the net which the pin connects to. More... | |
| void | connectToNetName (std::string &_netName) |
| bind the pin to the net by the net name More... | |
| int | getAliasNetId () |
| void | setAliasNetId (int _aliasNetId) |
| void | connectToNetVariable (DesignNet *_netPtr) |
| bind the pin to the net's pointer for later processing More... | |
| bool | isOutputPort () |
| bool | isInputPort () |
| void | setDriverPinName (std::string &_driverPinName) |
| Set the driver Pin Name of the pin. More... | |
| void | setDriverPin (DesignPin *_driverPinPtr) |
| Set the Driver Pin object. More... | |
| DesignPin * | getDriverPin () |
| Get the driver pin of the pin (nullptr indicates that the pin connects to some global signal like VGG/GND) More... | |
| void | updateParentCellNetInfo () |
| let the parent cell know that one of its pin connects to a specific net More... | |
| DesignNet * | getNet () |
| DesignCell * | getCell () |
| Get the Cell object of the pin. More... | |
| std::string & | getRefPinName () |
| Get the reference pin name of the pin. More... | |
| void | setUnconnected () |
| Set the attribute unconnected to be true, indicating the pin connect to no net. More... | |
| bool | isUnconnected () |
| check if the attribute unconnected is true More... | |
| void | setOffsetInCell (float x, float y) |
| Set the Offset of the pin relative to the cell. More... | |
| float | getOffsetXInCell () |
| Get the offset X of the pin In the cell. More... | |
| float | getOffsetYInCell () |
| Get the offset Y of the pin In the cell. More... | |
| bool | isFixed () |
| void | setFixed () |
Public Member Functions inherited from DesignInfo::DesignElement | |
| DesignElement (const std::string &name, DesignElement *parentPtr, DesignElementType type, int id) | |
| DesignElement (const std::string &name, DesignElementType type, int id) | |
| DesignElement (bool isVirtual, DesignElementType type, int id) | |
| DesignElement (bool isVirtual, const std::string &_name, DesignElementType type, int id) | |
| virtual | ~DesignElement () |
| const std::string & | getName () const |
| DesignElement * | getParentPtr () |
| DesignElementType | getElementType () |
| int | getElementIdInType () |
Static Public Member Functions | |
| static DesignPinType | checkPinType (DesignCell *cell, std::string &refpinname, bool isInput) |
| get the pin type based on its reference name More... | |
Private Attributes | |
| DesignPinType | pinType |
| pin type could be: More... | |
| std::string | netName |
| std::string | refpinname |
| DesignNet * | netPtr = nullptr |
| bool | inputOrNot |
| bool | unconnected = false |
| bool | fixed = false |
| std::string | driverPinName |
| DesignPin * | driverPin = nullptr |
| float | offsetXInCell = 0.0 |
| float | offsetYInCell = 0.0 |
| int | aliasNetId = -1 |
A design pin on a design cell connected to a net.
Definition at line 276 of file DesignInfo.h.
|
inline |
Construct a new Design Pin object.
| name | the actual/unique name of design pin |
| refpinname | the reference name of the pin on the cell, indicating which device pin shoud be used on the device BEL |
| pinType | some pins can be classified into specific type (clk, reset...) |
| inputOrNot | |
| parentPtr | the cell of the pin |
| id | the id of the pin in the pin list |
Definition at line 290 of file DesignInfo.h.
|
inline |
Definition at line 297 of file DesignInfo.h.
|
static |
get the pin type based on its reference name
| cell | the cell of the pin |
| refpinname | the reference name of the pin on the cell, indicating which device pin shoud be used on the device BEL |
| isInput |
Definition at line 39 of file DesignInfo.cc.
Referenced by DesignInfo::DesignInfo().


|
inline |
bind the pin to the net by the net name
| _netName |
Definition at line 337 of file DesignInfo.h.
Referenced by DesignInfo::DesignInfo().

|
inline |
bind the pin to the net's pointer for later processing
| _netPtr |
Definition at line 357 of file DesignInfo.h.
Referenced by DesignInfo::DesignInfo().

|
inline |
Definition at line 342 of file DesignInfo.h.
|
inline |
Get the Cell object of the pin.
Definition at line 418 of file DesignInfo.h.
Referenced by operator<<(), and updateParentCellNetInfo().


|
inline |
Get the driver pin of the pin (nullptr indicates that the pin connects to some global signal like VGG/GND)
Definition at line 398 of file DesignInfo.h.
|
inline |
Definition at line 408 of file DesignInfo.h.
Referenced by DesignInfo::loadUserDefinedClusterNets().

|
inline |
Get the name of the net which the pin connects to.
Definition at line 327 of file DesignInfo.h.
Referenced by DesignInfo::addPinToNet().

|
inline |
|
inline |
|
inline |
|
inline |
Get the reference pin name of the pin.
Definition at line 431 of file DesignInfo.h.
Referenced by operator<<().

|
inline |
Definition at line 489 of file DesignInfo.h.
|
inline |
Definition at line 367 of file DesignInfo.h.
|
inline |
Definition at line 362 of file DesignInfo.h.
Referenced by DesignInfo::DesignCell::addNetForPin(), DesignInfo::DesignCell::addPin(), and DesignInfo::DesignNet::connectToPinVariable().

|
inline |
check if the attribute unconnected is true
Definition at line 452 of file DesignInfo.h.
|
inline |
Definition at line 347 of file DesignInfo.h.
Referenced by DesignInfo::DesignInfo().

|
inline |
|
inline |
Set the driver Pin Name of the pin.
| _driverPinName |
Definition at line 377 of file DesignInfo.h.
Referenced by DesignInfo::DesignInfo().

|
inline |
Definition at line 494 of file DesignInfo.h.
|
inline |
Set the Offset of the pin relative to the cell.
| x | |
| y |
Definition at line 463 of file DesignInfo.h.
|
inline |
Set the attribute unconnected to be true, indicating the pin connect to no net.
Definition at line 440 of file DesignInfo.h.
Referenced by DesignInfo::DesignInfo().

| void DesignInfo::DesignPin::updateParentCellNetInfo | ( | ) |
let the parent cell know that one of its pin connects to a specific net
Definition at line 33 of file DesignInfo.cc.
Referenced by DesignInfo::DesignInfo().


|
private |
Definition at line 517 of file DesignInfo.h.
Referenced by getAliasNetId(), and setAliasNetId().
|
private |
Definition at line 514 of file DesignInfo.h.
Referenced by getDriverPin(), and setDriverPin().
|
private |
Definition at line 513 of file DesignInfo.h.
Referenced by setDriverPinName().
|
private |
Definition at line 512 of file DesignInfo.h.
Referenced by isFixed(), and setFixed().
|
private |
Definition at line 510 of file DesignInfo.h.
Referenced by isInputPort(), and isOutputPort().
|
private |
Definition at line 507 of file DesignInfo.h.
Referenced by connectToNetName(), and getNetName().
|
private |
Definition at line 509 of file DesignInfo.h.
Referenced by connectToNetVariable(), getNet(), and updateParentCellNetInfo().
|
private |
Definition at line 515 of file DesignInfo.h.
Referenced by getOffsetXInCell(), and setOffsetInCell().
|
private |
Definition at line 516 of file DesignInfo.h.
Referenced by getOffsetYInCell(), and setOffsetInCell().
|
private |
pin type could be:
PinType_LUTInput, PinType_LUTOutput, PinType_CLK, PinType_Q,PinType_D, PinType_E, PinType_SR
Definition at line 506 of file DesignInfo.h.
Referenced by getPinType().
|
private |
Definition at line 508 of file DesignInfo.h.
Referenced by getRefPinName().
|
private |
Definition at line 511 of file DesignInfo.h.
Referenced by isUnconnected(), and setUnconnected().