Orthogonal hypergraph routing for improved visibility

Visualization of circuits is an important research area in electronic design automation. One commonly accepted method to visualize a circuit aligns the gates to layers and uses orthogonal lines to connect the gates. In our model we assume that between two consecutive layers every net is allowed to occupy only one track. This avoids unnecessary bends in the wires and helps to improve the clarity of the drawing. Then a crossing reduction step is applied to further improve the readability of the circuit schematics. First we assume that the nodes have already been fixed on a layered hypergraph structure. We consider the problem of assigning the hyperedges between two layers to tracks. The idea is to minimize the total number of hyperedge crossings. We prove that finding the best solution is NP-hard. Then, in contrast to many other approaches which route all the wiring after placing all nodes we focus on a new approach which dynamically reorders the nodes within the layers to further reduce the number of hyperedge crossings. An efficient algorithm is presented that minimizes the hyperedge crossings. Experimental results are provided which show that the drawings can be improved significantly while the running time remains moderate.

[1]  Rolf Drechsler,et al.  Level assignment for displaying combinational logic , 2001, Proceedings Euromicro Symposium on Digital Systems Design.

[2]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[3]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[4]  Naveed A. Sherwani,et al.  Algorithms for VLSI Physical Design Automation , 1999, Springer US.

[5]  Michael Jünger,et al.  Journal of Graph Algorithms and Applications 2-layer Straightline Crossing Minimization: Performance of Exact and Heuristic Algorithms , 2022 .

[6]  Georg Sander,et al.  A Fast Heuristic for Hierarchical Manhattan Layout , 1995, GD.

[7]  Andreas Kuehlmann,et al.  Formal verification of a PowerPC microprocessor , 1995, Proceedings of ICCD '95 International Conference on Computer Design. VLSI in Computers and Processors.

[8]  David Bryan,et al.  Combinational profiles of sequential benchmark circuits , 1989, IEEE International Symposium on Circuits and Systems,.

[9]  Mitsuhiko Toda,et al.  Methods for Visual Understanding of Hierarchical System Structures , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[10]  Peter Eades,et al.  Edge crossings in drawings of bipartite graphs , 1994, Algorithmica.

[11]  Richard M. Karp,et al.  Reducibility among combinatorial problems" in complexity of computer computations , 1972 .

[12]  Bernd Becker,et al.  Orthogonal circuit visualization improved by merging the placement and routing phases , 2005, 18th International Conference on VLSI Design held jointly with 4th International Conference on Embedded Systems Design.

[13]  F. Somenzi,et al.  Using lower bounds during dynamic BDD minimization , 2001 .

[14]  Petra Mutzel,et al.  AGD - A Library of Algorithms for Graph Drawing , 1998, Graph Drawing Software.

[15]  Bernd Becker,et al.  k-Layer Straightline Crossing Minimization by Speeding Up Sifting , 2000, Graph Drawing.

[16]  Paul Molitor,et al.  Using Sifting for k -Layer Straightline Crossing Minimization , 1999, GD.

[17]  Thomas Lengauer,et al.  Combinatorial algorithms for integrated circuit layout , 1990, Applicable theory in computer science.

[18]  Richard Rudell Dynamic variable ordering for ordered binary decision diagrams , 1993, ICCAD.

[19]  Georg Sander,et al.  Layout of Directed Hypergraphs with Orthogonal Hyperedges , 2003, GD.

[20]  R. BurchJ.,et al.  Symbolic model checking , 1992 .

[21]  Bernd Becker,et al.  Cross Reduction for Orthogonal Circuit Visualization , 2003, VLSI.

[22]  David S. Johnson,et al.  Crossing Number is NP-Complete , 1983 .

[23]  Rolf Drechsler,et al.  Recursive bi-partitioning of netlists for large number of partitions , 2003, J. Syst. Archit..

[24]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[25]  Rolf Drechsler,et al.  Crossing Reduction by Windows Optimization , 2002, GD.

[26]  Erkki Mäkinen,et al.  How to draw a hypergraph , 1990, Int. J. Comput. Math..

[27]  Peter J. Ashenden,et al.  The Designer's Guide to VHDL , 1995 .