Title: NeuralSteiner: Learning Steiner Tree for Overflow-avoiding Global Routing in Chip Design
Venue: NeurIPS 2024
Accepted: yes
Keywords: Global routing

chip design

neural network

Steiner tree

deep learning

congestion
Abstract: Global routing plays a critical role in modern chip design. The routing paths generated by global routers often form a rectilinear Steiner tree (RST). Recent advances from the machine learning community have shown the power of learning-based route generation; however, the yielded routing paths by the existing approaches often suffer from considerable overflow, thus greatly hindering their application in practice.
We propose NeuralSteiner, an accurate approach to overflow-avoiding global routing in chip design. The key idea of NeuralSteiner approach is to learn Steiner trees: we first predict the locations of highly likely Steiner points by adopting a neural network considering full-net spatial and overflow information, then select appropriate points by running a graph-based post-processing algorithm, and finally connect these points with the input pins to yield overflow-avoiding RSTs. NeuralSteiner offers two advantages over previous learning-based models. First, by using the learning scheme, NeuralSteiner ensures the connectivity of generated routes while significantly reducing congestion. Second, NeuralSteiner can effectively scale to large nets and transfer to unseen chip designs without any modifications or fine-tuning.  Extensive experiments over public large-scale benchmarks reveal that, compared with the state-of-the-art deep generative methods, NeuralSteiner achieves up to a 99.8\% reduction in overflow while speeding up the generation and maintaining a slight wirelength loss within only 1.8\%.


Peer reviews:
{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThis paper proposes NeuralSteiner, a two-phase global routing scheme to optimize both wirelength and overflow. It also demonstrate capability of generalization on unseen large-scale circuits. Experiments on public benchmarks show NeuralSteiner reduces 99.6 \\% in overflow with a wirelength increase of 1.8 \\%.\n\nSTRENGTHS:\n1. NeuralSteiner proposes a scheme to realize partial parallel routing tasks by group nets whose bounding boxes share no common area or overlap.\n2. NeuralSteiner is able to optimize the overflow in global routing. It utilizes SOTA global router CUGR to perform global routing stage and construct expert datasets. These routing results are congestion-avoided, assisting the candidate prediction model to learn the position of Steiner points and corner points.\n3. Besides, it also proposes NAG representation and a RST construction algorithm to reduce the overflow in global routing.\n\nWEAKNESSES:\n1. Typos in line 282: \"enven arger than 2000\".\n2. NeuralSteiner is not an end-to-end approach, still relying on the post-processing/greedy algorithm to construct the final routing results. But this greedy algorithm is simple and efficient, and utilizing deep learning for RST construction is leaved for future work.\n\nQUESTIONS:\n1. Where is the edge weight in NAG used?\n2. How to calculate the \"distance\" mentioned in line 222 to select the two nearest connected components?\n3. In line 154, the authors mention they use CUGR to perform global routing to construct the congestion-avoid datasets. And they also propose some algorithms such as NAG, overflow-avoided RST construction algorithm. Between the datasets and algorithms, which one is the key to the overflow reduction of NeuralSteiner?\n\nLIMITATIONS:\nRST construction still relys on heuristics post-processing algorithm, but this could be leave for future work.", "TITLE": "Official Review", "RECOMMENDATION": 7, "REVIEWER_CONFIDENCE": 4, "SOUNDNESS_CORRECTNESS": 3, "DATE": "2024-07-08"}

{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThis paper tackles the challenging task of global routing in VLSI design, with the aim of addressing the overflow limitation inherent in current learning-based methodologies. The authors introduce NeuralSteiner, a novel approach that builds upon a previous method known as HubRouter. Like HubRouter, NeuralSteiner divides the global routing process into two stages: the first predicts the locations of probable candidate points, and the second connects these points and pins with a focus on minimizing overflow. In the first stage, NeuralSteiner introduces a new concept – the Candidate point, and generates an expert routing dataset using CUGR and ISPD07. This dataset is then used to train a neural network for the point prediction task. In the second stage, NeuralSteiner employs a straightforward and heuristic construction method that avoids overflow while ensuring connectivity.\nThe paper is well-structured, with clear motivations and easy-to-follow content. NeuralSteiner effectively addresses the significant overflow issue in learning-based global routing, making it applicable. Experimental results show that NeuralSteiner significantly reduces overflow, while maintaining comparable wirelength.\n\nSTRENGTHS:\n+ NeuralSteiner is empirically proven to be effective in reducing overflow in the global routing task. Equipped with the CNN structure, NeuralSteiner is capable of recognizing the candidate points, and the RST construction further reduces overflow significantly.\n+ A parallel technique is proposed to route the non-conflicting nets simultaneously, which can relieve the time-consuming plight.\n+ The experiments show a significant improvement in overflow. In particular, for the case of newblue01, the wirelength and overflow both surpass most traditional global routing approaches.\n\nWEAKNESSES:\n- The paper lacks an analysis of time complexity in the construction stage, leaving uncertainty about the scalability of the second stage.\n- In the last paragraph of Section 3, a simple post-processing algorithm is proposed to shorten the wirelength, but it lacks detail and also misses the analysis of time complexity.\n- I note that the performance of wirelength and overflow in Table 2 is pretty good for the case ‘newblue3’. This could be potentially confusing as ‘newblue03’ is part of the training dataset.\n- Typo: Line 282, enven arger. \n- Suggestion: figure 2 could be moved to the next page to better correspond with Section 3.\n\nQUESTIONS:\n- Given that the training set is within HPWL <= 128 or the scale of 64x64, how are NeuralSteiner and HubRouter applied to ISPD07 cases with much larger scales?\n- Besides the case newblue03 which is already included in the training dataset, I note that the performance of wirelength and overflow in Table 2 is also pretty good for the case ‘newblue1’, outperforming most traditional approaches. However, the overflow for the case ‘ibm01’ is 2033 in Table 3, which is much higher than traditional methods. What are the inherent reasons for this? For instance, the overflow for ‘ibm01’ and ‘newblue1’ are 0 and 400 respectively, while the corresponding results for NeuralSteiner are 2033 and 5.\n- Based on the above question, I am curious about what the WL and overflow are for newblue01 and newblue03 when using CUGR, the approach used to generate the expert routing dataset. \n- Is the RST construction conducted by Python or C++? \n- Will the code be made available upon acceptance of the paper?\n\nLIMITATIONS:\nYes.", "TITLE": "Official Review", "RECOMMENDATION": 6, "REVIEWER_CONFIDENCE": 5, "SOUNDNESS_CORRECTNESS": 3, "DATE": "2024-07-12"}

comments: SUMMARY:
The paper presents NeuralSteiner, a method to improve chip design routing by minimizing overflow. Using a neural network to predict Steiner points and a graph-based algorithm for selection, ensures connectivity and reduces congestion. NeuralSteiner outperforms existing methods, achieving up to a 99.8% reduction in overflow with only a 1.8% increase in wire length, and scales effectively to large nets without needing modifications for new designs.

STRENGTHS:
1. This paper is well-written and the figures are very easy to understand.
2. The experiment was very thorough, comparing the routing results of different routers, and verifying the effectiveness of the method in optimizing overlap.
3. The Overflow-avoiding RST Construction proposed by the author is novel and effective. Meanwhile, NeuralSteiner is the first learning-based approach capable of optimizing both wirelength and overflow.

WEAKNESSES:
1. Typo: line 282: “enven arger”->”even larger”
2. It is recommended that the paper should be extended to a full 9 pages.
3. According to the results, this method still faces challenges when optimizing the wire length and running time.

QUESTIONS:
1. In Table 2, do you compare the Boxrouter’s routing results?
2. In Table S2, why the correctness rate is 100%. Is it due to the small problem size?

LIMITATIONS:
Yes
TITLE: Official Review
SOUNDNESS_CORRECTNESS: 2
DATE: 2024-07-12

{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThis paper presents a learning-driven approach for overflow avoiding Steiner tree construction. The authors propose a two-stage framework that initially predicts the locations of potential Steiner points, followed by a post-processing algorithm that constructs the Steiner tree based on these predicted points. The effectiveness of the proposed method is then evaluated through a series of experiments.\n\nSTRENGTHS:\n1. The paper is well organized.\n2. Detailed background introduction is included.\n\nWEAKNESSES:\n1. The idea lacks novelty.\n2. Many important experimental settings are not disclosed.\n3. The experimental results are not convincing.\n4. The writing can be difficult to follow and occasionally confusing.\n\nQUESTIONS:\n1. The methodology presented in this work appears to align closely with prior works, such as Hubrouter, and employs trivial techniques. Could you please elaborate on the unique technical contributions of your study?\n\n2. The primary aim of this paper is to optimize overflow during the construction of the Steiner tree, a process that occurs prior to routing. However, there tends to be a significant difference between pre-routing and post-routing overflow. Additionally, most routing tools will also take overflow reduction into account. Hence, optimizing pre-routing overflow may not yield significant benefits. Could you please shed some light on this?\n\n3. In Section 3.4, could you clarify how the congestion value O(x,y) in Eq. (8) is calculated? From which stage are the O(x,y) values extracted? How are points that do not satisfy the two conditions handled? How are the values of the weights w_d and w_o in Eq. (8) determined?\n\n4. The paper lacks clarity regarding the evaluation metrics used. Could you specify the stage from which the overflow values are extracted, for instance, is it immediately after RST construction or after global placement? Could you also share the tool used for global routing during testing and whether it considers congestion?\n\n5. It would be beneficial if the authors could provide a comprehensive description of the test flow, including the source of the inputs, how the proposed framework integrates with the routing tool, and the stage from which the evaluation metrics are extracted.\n\n6. The results in Table 3 seems wield. The data suggests that overflow loss reduces both overflow and wirelength, which is unusual as these two metrics typically have a trade-off. If overflow loss is designed to reduce overflow, it should result in an increase in wirelength. Could you provide some clarification on this?\n\n7. I'm interested to know the number of Steiner points inserted by the proposed method. This is crucial as simple methods can also reduce overflow by adding more Steiner points to circumvent congested regions. However, an increase in Steiner points could significantly limit the optimization space of the subsequent routing process. Could you please include the number of Steiner points in the results tables?\n\n8. To enhance reader comprehension, could you provide an example of an actual solution?\n\nLIMITATIONS:\nListed in questions.", "TITLE": "Official Review", "RECOMMENDATION": 5, "REVIEWER_CONFIDENCE": 4, "SOUNDNESS_CORRECTNESS": 1, "DATE": "2024-07-16"}