|
torc-master
|
Unroutes connected resources in a DDB instance. More...
#include <Unrouter.hpp>
Collaboration diagram for torc::router::Unrouter:Public Member Functions | |
| Unrouter (DDB &inDB) | |
| Public Constructor. More... | |
| ~Unrouter () | |
| Destructor. More... | |
| boost::int32_t | unrouteToSinks (const Tilewire inTilewire) |
| RouteTreeNode * | traceToSinks (Tilewire inTilewire) |
| Trace from given Tilewire in a sinkwards direction only. More... | |
| RouteTreeNode * | traceBranch (Tilewire inTilewire) |
| Trace from given Tilewire sinkwards and sourcewards to source or branch. More... | |
| RouteTreeNode * | traceToSource (Tilewire inTilewire) |
| Trace from given Tilewire sourcewards to the source of the net. More... | |
| RouteTreeNode * | traceFull (Tilewire inTilewire) |
| Trace from given Tilewire and recover the entire net. More... | |
Protected Types | |
| enum | { eTraceToSource = 0, eTraceToBranch = 1, eTraceFullNet = 2 } |
Protected Member Functions | |
| void | traceDownstream (RouteTreeNode *inNode) |
| Remove the dummy node if possible. More... | |
| void | traceUpstream (RouteTreeNode *inNode, boost::int32_t inMode) |
| Recursively traces from the specified RouteTreeNode in one of three modes. More... | |
Protected Attributes | |
| DDB & | mDB |
| Database reference. More... | |
| ArcUsage & | mArcUsage |
| ArcUsage reference. More... | |
| WireUsage & | mWireUsage |
| WireUsage reference. More... | |
| TilewireVector | mSegmentBuf |
| Scratch segment storage. More... | |
| TilewireVector | mSinksBuf |
| Scratch wire storage. More... | |
| TilewireVector | mSourcesBuf |
| Scratch wire storage. More... | |
| std::set< Tilewire > | mTracedWiresBuf |
| Traced wires collection. More... | |
| TilewireVector | mWireQueue |
Private Types | |
| typedef architecture::DDB | DDB |
| Imported type name. More... | |
| typedef architecture::ArcUsage | ArcUsage |
| typedef architecture::WireUsage | WireUsage |
| typedef architecture::Tilewire | Tilewire |
| typedef architecture::Arc | Arc |
| typedef architecture::TilewireVector | TilewireVector |
| typedef architecture::ArcVector | ArcVector |
Unroutes connected resources in a DDB instance.
The unrouter allows the user to deactivate pips and wires that are associated with one another as all or part of a net.
Definition at line 36 of file Unrouter.hpp.
|
private |
Definition at line 43 of file Unrouter.hpp.
|
private |
Definition at line 40 of file Unrouter.hpp.
|
private |
Definition at line 45 of file Unrouter.hpp.
|
private |
Imported type name.
Definition at line 39 of file Unrouter.hpp.
|
private |
Definition at line 42 of file Unrouter.hpp.
|
private |
Definition at line 44 of file Unrouter.hpp.
|
private |
Definition at line 41 of file Unrouter.hpp.
|
protected |
|
inline |
Public Constructor.
Definition at line 71 of file Unrouter.hpp.
|
inline |
|
inline |
Trace from given Tilewire sinkwards and sourcewards to source or branch.
Traces from the specified source Tilewire. All downstream sinks are found and the closest branch point in the net or source is found.
Definition at line 126 of file Unrouter.hpp.
Here is the call graph for this function:
|
inlineprotected |
Remove the dummy node if possible.
Removes the dummy node if it is at an end of the trace. If it is in the middle, it removes it if there is only one child. Otherwise no change is made. Find the source of net that owns the given Tilewire. Recursively traces from the specified RouteTreeNode.
Definition at line 241 of file Unrouter.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Trace from given Tilewire and recover the entire net.
Traces from the specified Tilewire. All net sinks and the source are recovered fully reconstructing the net to which the Tilewire belongs.
Definition at line 146 of file Unrouter.hpp.
Here is the call graph for this function:
|
inline |
Trace from given Tilewire in a sinkwards direction only.
Traces from the specified source Tilewire in a sinkwards direction. If the Tilewire is a logic site output, then the result will be a full net.
Definition at line 116 of file Unrouter.hpp.
Here is the call graph for this function:
|
inline |
Trace from given Tilewire sourcewards to the source of the net.
Traces from the specified source Tilewire. All downstream sinks are found and the source of the net is found. Branch points are ignored.
Definition at line 136 of file Unrouter.hpp.
Here is the call graph for this function:
|
inlineprotected |
Recursively traces from the specified RouteTreeNode in one of three modes.
Definition at line 275 of file Unrouter.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 77 of file Unrouter.hpp.
Here is the call graph for this function:
|
protected |
ArcUsage reference.
Definition at line 51 of file Unrouter.hpp.
|
protected |
Database reference.
Definition at line 49 of file Unrouter.hpp.
|
protected |
Scratch segment storage.
Definition at line 55 of file Unrouter.hpp.
|
protected |
Scratch wire storage.
Definition at line 57 of file Unrouter.hpp.
|
protected |
Scratch wire storage.
Definition at line 59 of file Unrouter.hpp.
|
protected |
Traced wires collection.
Definition at line 61 of file Unrouter.hpp.
|
protected |
Definition at line 64 of file Unrouter.hpp.
|
protected |
WireUsage reference.
Definition at line 53 of file Unrouter.hpp.