#include <NetRouterHeuristic.hpp>


Public Member Functions | |
| NetRouterHeuristic (DDB &inDB) | |
| Public Constructor. | |
| ~NetRouterHeuristic () | |
| Destructor. | |
| virtual void | setSink (const Tilewire &inSink) |
| Set the current routing target. | |
| virtual void | nodeCost (RouteNode &inNode) |
| Calculate the node cost based on distance to the sink and path length. | |
| virtual void | nodeCostInitial (RouteNode &inNode) |
| virtual void | reorderSinks (const Tilewire &inSource, TilewireVector &inSinks) |
| Reorder the Sinks based on this heuristic. | |
| virtual void | expandSegmentSinks (const Tilewire &inTilewire, ArcVector &outArcs) |
| Heuristic handling of expansion of a node. | |
Protected Member Functions | |
| virtual boost::int32_t | distanceToSink (const Tilewire &inTilewire) |
| virtual boost::int32_t | clkDistanceToSink (const Tilewire &inTilewire) |
| boost::int32_t | distanceFromParent (const Tilewire &inParent, const Tilewire &inCurrent) |
Protected Attributes | |
| ArcUsage & | mArcUsage |
| ArcUsage reference. | |
| const Tiles & | mTiles |
| Tiles reference. | |
| Tilewire | mTargetSink |
| Target sink tilewire. | |
| const TileInfo * | mSinkTileInfo |
| Target sink tile information. | |
| boost::int32_t | mRow |
| Target row coordinate. | |
| boost::int32_t | mCol |
| Target column coordinate. | |
| TilewireVector | mSegmentBuf |
| Segment tilewire buffer. | |
| ArcVector | mArcsBuf |
| Arc buffer. | |
Private Types | |
| typedef architecture::DDB | DDB |
| Imported type names. | |
| typedef architecture::Tiles | Tiles |
| typedef architecture::ArcUsage | ArcUsage |
| typedef architecture::WireUsage | WireUsage |
| typedef architecture::Tilewire | Tilewire |
| typedef architecture::TileInfo | TileInfo |
| typedef architecture::Arc | Arc |
|
typedef architecture::TilewireVector | TilewireVector |
| typedef architecture::ArcVector | ArcVector |
|
typedef architecture::xilinx::TileRow | TileRow |
|
typedef architecture::xilinx::TileCol | TileCol |
The router can either return a vector of nodes or directly populate DDB usage.
Definition at line 43 of file NetRouterHeuristic.hpp.
typedef architecture::DDB torc::router::NetRouterHeuristic::DDB [private] |
Imported type names.
Reimplemented from torc::router::NetRouterHeuristicBase.
Definition at line 46 of file NetRouterHeuristic.hpp.
| torc::router::NetRouterHeuristic::NetRouterHeuristic | ( | DDB & | inDB | ) | [inline] |
| torc::router::NetRouterHeuristic::~NetRouterHeuristic | ( | ) | [inline] |
| virtual void torc::router::NetRouterHeuristic::setSink | ( | const Tilewire & | inSink | ) | [inline, virtual] |
Set the current routing target.
Implements torc::router::NetRouterHeuristicBase.
Definition at line 89 of file NetRouterHeuristic.hpp.
| virtual void torc::router::NetRouterHeuristic::nodeCost | ( | RouteNode & | inNode | ) | [inline, virtual] |
Calculate the node cost based on distance to the sink and path length.
Implements torc::router::NetRouterHeuristicBase.
Definition at line 96 of file NetRouterHeuristic.hpp.
| virtual void torc::router::NetRouterHeuristic::reorderSinks | ( | const Tilewire & | inSource, | |
| TilewireVector & | inSinks | |||
| ) | [inline, virtual] |
Reorder the Sinks based on this heuristic.
Reimplemented from torc::router::NetRouterHeuristicBase.
Definition at line 170 of file NetRouterHeuristic.hpp.
| virtual void torc::router::NetRouterHeuristic::expandSegmentSinks | ( | const Tilewire & | inTilewire, | |
| ArcVector & | outArcs | |||
| ) | [inline, virtual] |
Heuristic handling of expansion of a node.
Reimplemented from torc::router::NetRouterHeuristicBase.
Definition at line 174 of file NetRouterHeuristic.hpp.
ArcUsage& torc::router::NetRouterHeuristic::mArcUsage [protected] |
const Tiles& torc::router::NetRouterHeuristic::mTiles [protected] |
const TileInfo* torc::router::NetRouterHeuristic::mSinkTileInfo [protected] |
boost::int32_t torc::router::NetRouterHeuristic::mRow [protected] |
boost::int32_t torc::router::NetRouterHeuristic::mCol [protected] |
TilewireVector torc::router::NetRouterHeuristic::mSegmentBuf [protected] |
ArcVector torc::router::NetRouterHeuristic::mArcsBuf [protected] |
1.5.6