|
TraceMaker
C++ API of the engine
|
#include <route/global_router.hpp>
Public Member Functions | |
| int | tile_of_x (Coord x) const |
| int | tile_of_y (Coord y) const |
Public Attributes | |
| int | tiles_x = 0 |
| int | tiles_y = 0 |
| int | layers = 0 |
| Coord | tile = 0 |
| geom::Point | origin |
| std::vector< std::vector< std::uint8_t > > | corridor |
| corridor[k][(l * tiles_y + ty) * tiles_x + tx] != 0: tile on layer l is in connection k's corridor. | |
| std::vector< std::array< int, 4 > > | corridor_box |
| Bounding box of each corridor in tiles (x0, y0, x1, y1, inclusive); the detailed router's confined window. | |
| std::vector< int > | vias |
| global vias per connection | |
| std::vector< std::uint8_t > | util |
| util[(l * tiles_y + ty) * tiles_x + tx]: planned tracks through the tile's four boundaries on layer l, in eighths of their capacity (8 = full, capped at 255). | |
| int | overflow_edges = 0 |
| edges still over capacity after negotiation | |
| long | total_overflow = 0 |
| int | overflow_via_tiles = 0 |
| tiles with more planned vias than free via sites | |
| std::vector< CutLine > | over_cuts |
| lines with demand > capacity, tightest line of each over-full tile boundary | |
| CutLine | tightest |
| the line with the highest demand / capacity (capacity 0 counts as over-full) | |
| double | seconds_capacity = 0 |
| double | seconds_route = 0 |
| set-up (obstacle sampling) and routing + negotiation | |
Definition at line 59 of file global_router.hpp.
|
inline |
Definition at line 77 of file global_router.hpp.
|
inline |
Definition at line 78 of file global_router.hpp.
| std::vector<std::vector<std::uint8_t> > tmk::route::GlobalResult::corridor |
corridor[k][(l * tiles_y + ty) * tiles_x + tx] != 0: tile on layer l is in connection k's corridor.
Definition at line 64 of file global_router.hpp.
| std::vector<std::array<int, 4> > tmk::route::GlobalResult::corridor_box |
Bounding box of each corridor in tiles (x0, y0, x1, y1, inclusive); the detailed router's confined window.
Definition at line 66 of file global_router.hpp.
| int tmk::route::GlobalResult::layers = 0 |
Definition at line 60 of file global_router.hpp.
| geom::Point tmk::route::GlobalResult::origin |
Definition at line 62 of file global_router.hpp.
| std::vector<CutLine> tmk::route::GlobalResult::over_cuts |
lines with demand > capacity, tightest line of each over-full tile boundary
Definition at line 74 of file global_router.hpp.
| int tmk::route::GlobalResult::overflow_edges = 0 |
edges still over capacity after negotiation
Definition at line 71 of file global_router.hpp.
| int tmk::route::GlobalResult::overflow_via_tiles = 0 |
tiles with more planned vias than free via sites
Definition at line 73 of file global_router.hpp.
| double tmk::route::GlobalResult::seconds_capacity = 0 |
Definition at line 76 of file global_router.hpp.
| double tmk::route::GlobalResult::seconds_route = 0 |
set-up (obstacle sampling) and routing + negotiation
Definition at line 76 of file global_router.hpp.
| CutLine tmk::route::GlobalResult::tightest |
the line with the highest demand / capacity (capacity 0 counts as over-full)
Definition at line 75 of file global_router.hpp.
| Coord tmk::route::GlobalResult::tile = 0 |
Definition at line 61 of file global_router.hpp.
| int tmk::route::GlobalResult::tiles_x = 0 |
Definition at line 60 of file global_router.hpp.
| int tmk::route::GlobalResult::tiles_y = 0 |
Definition at line 60 of file global_router.hpp.
| long tmk::route::GlobalResult::total_overflow = 0 |
Definition at line 72 of file global_router.hpp.
| std::vector<std::uint8_t> tmk::route::GlobalResult::util |
util[(l * tiles_y + ty) * tiles_x + tx]: planned tracks through the tile's four boundaries on layer l, in eighths of their capacity (8 = full, capped at 255).
The detailed router's congestion map.
Definition at line 70 of file global_router.hpp.
| std::vector<int> tmk::route::GlobalResult::vias |
global vias per connection
Definition at line 67 of file global_router.hpp.