File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -3743,10 +3743,27 @@ std::vector<Net*> GlobalRouter::findNets(bool init_clock_nets)
37433743 db_nets = nets_to_route_;
37443744 }
37453745 std::vector<Net*> clk_nets;
3746+ const int large_fanout_threshold = 1000 ;
37463747 for (odb::dbNet* db_net : db_nets) {
3747- if (db_net->getTermCount () > skip_large_fanout_) {
3748+ const bool is_special = db_net->getSigType ().isSupply () && db_net->isSpecial ();
3749+ if (!is_special && db_net->getTermCount () > skip_large_fanout_) {
3750+ logger_->info (GRT,
3751+ 280 ,
3752+ " Skipping net {} with {} terminals." ,
3753+ db_net->getConstName (),
3754+ db_net->getTermCount (),
3755+ skip_large_fanout_);
37483756 continue ;
37493757 }
3758+
3759+ if (!is_special && db_net->getTermCount () > large_fanout_threshold) {
3760+ logger_->warn (GRT,
3761+ 281 ,
3762+ " Net {} has a large fanout of {} terminals." ,
3763+ db_net->getConstName (),
3764+ db_net->getTermCount ());
3765+ }
3766+
37503767 Net* net = addNet (db_net);
37513768 // add clock nets not connected to a leaf first
37523769 if (net) {
Original file line number Diff line number Diff line change 2121[INFO GRT-0003] Macros: 0
2222[INFO GRT-0004] Blockages: 2874
2323[INFO GRT-0019] Found 0 clock nets.
24+ [INFO GRT-0280] Skipping net clk with 36 terminals.
2425[INFO GRT-0001] Minimum degree: 2
2526[INFO GRT-0002] Maximum degree: 11
2627
You can’t perform that action at this time.
0 commit comments