@@ -41,7 +41,7 @@ void CUGR::init(const int min_routing_layer, const int max_routing_layer)
4141{
4242 design_ = std::make_unique<Design>(
4343 db_, logger_, constants_, min_routing_layer, max_routing_layer);
44- grid_graph_ = std::make_unique<GridGraph>(design_.get (), constants_);
44+ grid_graph_ = std::make_unique<GridGraph>(design_.get (), constants_, logger_ );
4545 // Instantiate the global routing netlist
4646 const std::vector<CUGRNet>& baseNets = design_->getAllNets ();
4747 gr_nets_.reserve (baseNets.size ());
@@ -67,8 +67,11 @@ void CUGR::patternRoute(std::vector<int>& netIndices)
6767 logger_->report (" stage 1: pattern routing" );
6868 sortNetIndices (netIndices);
6969 for (const int netIndex : netIndices) {
70- PatternRoute patternRoute (
71- gr_nets_[netIndex].get (), grid_graph_.get (), stt_builder_, constants_);
70+ PatternRoute patternRoute (gr_nets_[netIndex].get (),
71+ grid_graph_.get (),
72+ stt_builder_,
73+ constants_,
74+ logger_);
7275 patternRoute.constructSteinerTree ();
7376 patternRoute.constructRoutingDAG ();
7477 patternRoute.run ();
@@ -90,8 +93,9 @@ void CUGR::patternRouteWithDetours(std::vector<int>& netIndices)
9093 sortNetIndices (netIndices);
9194 for (const int netIndex : netIndices) {
9295 GRNet* net = gr_nets_[netIndex].get ();
93- grid_graph_->commitTree (net->getRoutingTree (), true );
94- PatternRoute patternRoute (net, grid_graph_.get (), stt_builder_, constants_);
96+ grid_graph_->commitTree (net->getRoutingTree (), /* ripup*/ true );
97+ PatternRoute patternRoute (
98+ net, grid_graph_.get (), stt_builder_, constants_, logger_);
9599 patternRoute.constructSteinerTree ();
96100 patternRoute.constructRoutingDAG ();
97101 // KEY DIFFERENCE compared to stage 1 (patternRoute)
@@ -110,21 +114,23 @@ void CUGR::mazeRoute(std::vector<int>& netIndices)
110114 }
111115 logger_->report (" stage 3: maze routing on sparsified routing graph" );
112116 for (const int netIndex : netIndices) {
113- grid_graph_->commitTree (gr_nets_[netIndex]->getRoutingTree (), true );
117+ grid_graph_->commitTree (gr_nets_[netIndex]->getRoutingTree (),
118+ /* ripup*/ true );
114119 }
115120 GridGraphView<CostT> wireCostView;
116121 grid_graph_->extractWireCostView (wireCostView);
117122 sortNetIndices (netIndices);
118123 SparseGrid grid (10 , 10 , 0 , 0 );
119124 for (const int netIndex : netIndices) {
120125 GRNet* net = gr_nets_[netIndex].get ();
121- MazeRoute mazeRoute (net, grid_graph_.get ());
126+ MazeRoute mazeRoute (net, grid_graph_.get (), logger_ );
122127 mazeRoute.constructSparsifiedGraph (wireCostView, grid);
123128 mazeRoute.run ();
124129 std::shared_ptr<SteinerTreeNode> tree = mazeRoute.getSteinerTree ();
125130 assert (tree != nullptr );
126131
127- PatternRoute patternRoute (net, grid_graph_.get (), stt_builder_, constants_);
132+ PatternRoute patternRoute (
133+ net, grid_graph_.get (), stt_builder_, constants_, logger_);
128134 patternRoute.setSteinerTree (tree);
129135 patternRoute.constructRoutingDAG ();
130136 patternRoute.run ();
@@ -169,10 +175,10 @@ void CUGR::write(const std::string& guide_file)
169175 ss << net->getName () << ' \n ' ;
170176 ss << " (\n " ;
171177 for (const auto & guide : guides) {
172- ss << grid_graph_->getGridline (0 , guide.second .x . low ()) << " "
173- << grid_graph_->getGridline (1 , guide.second .y . low ()) << " "
174- << grid_graph_->getGridline (0 , guide.second .x . high () + 1 ) << " "
175- << grid_graph_->getGridline (1 , guide.second .y . high () + 1 ) << " "
178+ ss << grid_graph_->getGridline (0 , guide.second .lx ()) << " "
179+ << grid_graph_->getGridline (1 , guide.second .ly ()) << " "
180+ << grid_graph_->getGridline (0 , guide.second .hx () + 1 ) << " "
181+ << grid_graph_->getGridline (1 , guide.second .hy () + 1 ) << " "
176182 << grid_graph_->getLayerName (guide.first ) << " \n " ;
177183 }
178184 ss << " )\n " ;
@@ -325,8 +331,8 @@ void CUGR::getGuides(const GRNet* net,
325331 (int ) grid_graph_->getSize (0 ) - 1 ),
326332 std::min (gpt.y () + padding,
327333 (int ) grid_graph_->getSize (1 ) - 1 )));
328- area_of_pin_patches_ += (guides.back ().second .x .range () + 1 )
329- * (guides.back ().second .y .range () + 1 );
334+ area_of_pin_patches_ += (guides.back ().second .x () .range () + 1 )
335+ * (guides.back ().second .y () .range () + 1 );
330336 }
331337 }
332338 }
0 commit comments