|
torc-master
|
Provides net routing based on the Nillson graphsearch algorithm. More...
#include <PathFinderNetRouterHeuristic.hpp>
Inheritance diagram for torc::router::PathFinderNetRouterHeuristic:
Collaboration diagram for torc::router::PathFinderNetRouterHeuristic:Public Member Functions | |
| PathFinderNetRouterHeuristic (DDB &inDB) | |
| Public Constructor. More... | |
| ~PathFinderNetRouterHeuristic () | |
| Destructor. More... | |
| void | processParameters () |
| void | setSink (const Tilewire &inSink) |
| Set the current routing target. More... | |
| void | nodeCost (RouteNode &inNode) |
| Calculate the node cost based on distance to the sink and path length. More... | |
| void | nodeCostInitial (RouteNode &inNode) |
| virtual void | reorderSinks (const Tilewire &inSource, TilewireVector &inSinks) |
| Reorder the Sinks based on this heuristic. More... | |
| void | expandSegmentSinks (const Tilewire &inTilewire, ArcVector &outArcs) |
| Heuristic handling of expansion of a node. More... | |
| boost::any | getParameter (boost::uint32_t index) |
| Get a parameter. More... | |
| void | setParameter (boost::uint32_t index, boost::any inParameter) |
| Set a parameter. More... | |
Protected Member Functions | |
| virtual boost::int32_t | distanceToSink (const Tilewire &inTilewire) |
| virtual boost::int32_t | clkDistanceToSink (const Tilewire &inTilewire) |
Protected Attributes | |
| ArcUsage & | mArcUsage |
| ArcUsage reference. More... | |
| const Tiles & | mTiles |
| Tiles reference. More... | |
| Tilewire | mTargetSink |
| Target sink tilewire. More... | |
| const TileInfo * | mSinkTileInfo |
| Target sink tile information. More... | |
| boost::int32_t | mRow |
| Target row coordinate. More... | |
| boost::int32_t | mCol |
| Target column coordinate. More... | |
| TilewireVector | mSegmentBuf |
| Segment tilewire buffer. More... | |
| ArcVector | mArcsBuf |
| Arc buffer. More... | |
| PathFinderSharingMap * | mConflictMap |
| PathFinder sharing information. More... | |
| DDB & | mDB |
| Database reference. More... | |
| ParameterMap | mParameters |
| Parameter map. More... | |
Private Types | |
| typedef architecture::DDB | DDB |
| Imported type names. More... | |
| 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 |
| typedef boost::unordered_map < Tilewire, TilewireData > | PathFinderSharingMap |
Provides net routing based on the Nillson graphsearch algorithm.
The router can either return a vector of nodes or directly populate DDB usage.
Definition at line 44 of file PathFinderNetRouterHeuristic.hpp.
|
private |
Definition at line 53 of file PathFinderNetRouterHeuristic.hpp.
Definition at line 49 of file PathFinderNetRouterHeuristic.hpp.
Definition at line 55 of file PathFinderNetRouterHeuristic.hpp.
|
private |
Imported type names.
Definition at line 47 of file PathFinderNetRouterHeuristic.hpp.
|
private |
Definition at line 59 of file PathFinderNetRouterHeuristic.hpp.
Definition at line 57 of file PathFinderNetRouterHeuristic.hpp.
Definition at line 52 of file PathFinderNetRouterHeuristic.hpp.
Definition at line 56 of file PathFinderNetRouterHeuristic.hpp.
|
private |
Definition at line 48 of file PathFinderNetRouterHeuristic.hpp.
Definition at line 51 of file PathFinderNetRouterHeuristic.hpp.
|
private |
Definition at line 54 of file PathFinderNetRouterHeuristic.hpp.
Definition at line 50 of file PathFinderNetRouterHeuristic.hpp.
|
inline |
Public Constructor.
Definition at line 88 of file PathFinderNetRouterHeuristic.hpp.
|
inline |
|
inlineprotectedvirtual |
Definition at line 223 of file PathFinderNetRouterHeuristic.hpp.
|
inlineprotectedvirtual |
Definition at line 213 of file PathFinderNetRouterHeuristic.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinevirtual |
Heuristic handling of expansion of a node.
Reimplemented from torc::router::NetRouterHeuristicBase.
Definition at line 190 of file PathFinderNetRouterHeuristic.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineinherited |
Get a parameter.
Definition at line 52 of file RouterHeuristicBase.hpp.
Here is the caller graph for this function:
|
inlinevirtual |
Calculate the node cost based on distance to the sink and path length.
Implements torc::router::NetRouterHeuristicBase.
Definition at line 107 of file PathFinderNetRouterHeuristic.hpp.
Here is the call graph for this function:
|
inline |
Definition at line 152 of file PathFinderNetRouterHeuristic.hpp.
Here is the call graph for this function:
|
inlinevirtual |
Reimplemented from torc::router::RouterHeuristicBase.
Definition at line 93 of file PathFinderNetRouterHeuristic.hpp.
Here is the call graph for this function:
|
inlinevirtual |
Reorder the Sinks based on this heuristic.
Reimplemented from torc::router::NetRouterHeuristicBase.
Definition at line 186 of file PathFinderNetRouterHeuristic.hpp.
|
inlineinherited |
Set a parameter.
Definition at line 60 of file RouterHeuristicBase.hpp.
Here is the caller graph for this function:
|
inlinevirtual |
Set the current routing target.
Implements torc::router::NetRouterHeuristicBase.
Definition at line 100 of file PathFinderNetRouterHeuristic.hpp.
Here is the call graph for this function:
|
protected |
Arc buffer.
Definition at line 79 of file PathFinderNetRouterHeuristic.hpp.
|
protected |
ArcUsage reference.
Definition at line 64 of file PathFinderNetRouterHeuristic.hpp.
|
protected |
Target column coordinate.
Definition at line 74 of file PathFinderNetRouterHeuristic.hpp.
|
protected |
PathFinder sharing information.
Definition at line 82 of file PathFinderNetRouterHeuristic.hpp.
|
protectedinherited |
Database reference.
Definition at line 40 of file RouterHeuristicBase.hpp.
|
protectedinherited |
Parameter map.
Definition at line 42 of file RouterHeuristicBase.hpp.
|
protected |
Target row coordinate.
Definition at line 72 of file PathFinderNetRouterHeuristic.hpp.
|
protected |
Segment tilewire buffer.
Definition at line 77 of file PathFinderNetRouterHeuristic.hpp.
|
protected |
Target sink tile information.
Definition at line 70 of file PathFinderNetRouterHeuristic.hpp.
|
protected |
Target sink tilewire.
Definition at line 68 of file PathFinderNetRouterHeuristic.hpp.
|
protected |
Tiles reference.
Definition at line 66 of file PathFinderNetRouterHeuristic.hpp.