|
torc-master
|
Encapsulation the design wire usage. More...
#include <WireUsage.hpp>
Collaboration diagram for torc::architecture::WireUsage:Public Member Functions | |
| WireUsage (const Tiles &inTiles) | |
| Public constructor. More... | |
| ~WireUsage (void) | |
| Non-virtual destructor. More... | |
| void | autosize (void) |
| Size the wire usage according to the number of device tiles. More... | |
| void | use (const Tilewire &inTilewire) |
| Marks the specified tilewire as being used. More... | |
| void | release (const Tilewire &inTilewire) |
| Marks the specified tilewire as being unused. More... | |
| void | clear (void) |
| Marks all wires as being unused, without releasing the bitset objects. More... | |
| bool | isUsed (const Tilewire &inTilewire) |
| Determines whether the specified tilewire is in use. More... | |
| uint32_t | getWireUsageCount (void) const |
| Returns the number of wires in use. More... | |
| TileCount | getTileUsageCount (void) const |
| Returns the number of tiles that have been touched. More... | |
| uint32_t | getBitCount (void) const |
| Returns the number of bits allocated. More... | |
Protected Types | |
| typedef boost::dynamic_bitset | dynamic_bitset |
| Imported type name. More... | |
| typedef xilinx::TileIndex | TileIndex |
| Imported type name. More... | |
| typedef xilinx::TileCount | TileCount |
| Imported type name. More... | |
| typedef xilinx::TileTypeIndex | TileTypeIndex |
| Imported type name. More... | |
| typedef xilinx::WireIndex | WireIndex |
| Imported type name. More... | |
Protected Attributes | |
| const Tiles & | mTiles |
| Reference to the database Tiles object. More... | |
| TileCount | mTileUsageCount |
| The number of tiles for which bitsets are allocated. More... | |
| Array< dynamic_bitset * > | mBitsets |
| The wire usage bitset array. More... | |
| uint32_t | mBitCount |
| The number of bits allocated by the usage bitsets. More... | |
| dynamic_bitset | mTileDirty |
| The mask of tile bitsets that contain changes. More... | |
Encapsulation the design wire usage.
This class uses a compact bitset representation to very efficiently track the wire usage of a design in an entire device. Internal bitset objects are maintained on a per-tile basis, and are not allocated until at least one wire in the tile has been marked used.
Definition at line 35 of file WireUsage.hpp.
|
protected |
Imported type name.
Definition at line 38 of file WireUsage.hpp.
|
protected |
Imported type name.
Definition at line 40 of file WireUsage.hpp.
|
protected |
Imported type name.
Definition at line 39 of file WireUsage.hpp.
|
protected |
Imported type name.
Definition at line 41 of file WireUsage.hpp.
|
protected |
Imported type name.
Definition at line 42 of file WireUsage.hpp.
|
inline |
Public constructor.
Definition at line 57 of file WireUsage.hpp.
|
inline |
Non-virtual destructor.
Definition at line 60 of file WireUsage.hpp.
Here is the call graph for this function:
|
inline |
Size the wire usage according to the number of device tiles.
Definition at line 68 of file WireUsage.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Marks all wires as being unused, without releasing the bitset objects.
This capability allows the tracer to track the wires that it has visited while processing a particular net, and then to start again from scratch without incurring allocation and construction overheads.
Definition at line 121 of file WireUsage.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Returns the number of bits allocated.
Definition at line 171 of file WireUsage.hpp.
|
inline |
Returns the number of tiles that have been touched.
Definition at line 169 of file WireUsage.hpp.
|
inline |
Returns the number of wires in use.
Definition at line 151 of file WireUsage.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Determines whether the specified tilewire is in use.
Definition at line 138 of file WireUsage.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Marks the specified tilewire as being unused.
Definition at line 104 of file WireUsage.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Marks the specified tilewire as being used.
Definition at line 81 of file WireUsage.hpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
protected |
The number of bits allocated by the usage bitsets.
Definition at line 51 of file WireUsage.hpp.
|
protected |
The wire usage bitset array.
Definition at line 49 of file WireUsage.hpp.
|
protected |
The mask of tile bitsets that contain changes.
Definition at line 53 of file WireUsage.hpp.
|
protected |
Reference to the database Tiles object.
Definition at line 45 of file WireUsage.hpp.
|
protected |
The number of tiles for which bitsets are allocated.
Definition at line 47 of file WireUsage.hpp.