Enhancing Multi-Threaded Legalization Through $k$-d Tree Circuit Partitioning

In the physical synthesis of integrated circuits the legalization step may move all circuit cells to fix overlaps and misalignments. While doing so, it should cause the smallest perturbation possible to the solution found by previous optimization steps to preserve placement quality. Legalization techniques must handle circuits with millions of cells within acceptable runtimes, besides facing other issues such as mixed-cell-height and fence regions. In this work we propose a $\boldsymbol{k}$-d tree data structure to partition the circuit, thus removing data dependency. Then, legalization is sped up through both input size reduction and parallel execution. As a use case we employed a modified version of the classic legalization algorithm Abacus. Our solution achieved a maximum speedup of 35 times over a sequential version of Abacus for the circuits of the ICCAD2015 CAD contest. It also provided up to 10% reduction on the average cell displacement.

[1]  Hanan Samet,et al.  The Quadtree and Related Hierarchical Data Structures , 1984, CSUR.

[2]  Nadine Gottschalk,et al.  Vlsi Physical Design From Graph Partitioning To Timing Closure , 2016 .

[3]  Ismail Bustany,et al.  A Fast, Robust Network Flow-based Standard-Cell Legalization Method for Minimizing Maximum Movement , 2017, ISPD.

[4]  Ulf Schlichtmann,et al.  Abacus: fast legalization of standard cell circuits with minimal movement , 2008, ISPD '08.

[5]  Jon Louis Bentley,et al.  Multidimensional binary search trees used for associative searching , 1975, CACM.

[6]  Yu-Min Lee,et al.  A hierarchical bin-based legalizer for standard-cell designs with minimal disturbance , 2010, 2010 15th Asia and South Pacific Design Automation Conference (ASP-DAC).

[7]  Y. Mukaigawa,et al.  Large Deviations Estimates for Some Non-local Equations I. Fast Decaying Kernels and Explicit Bounds , 2022 .

[8]  Ulrich Brenner VLSI legalization with minimum perturbation by iterative augmentation , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[9]  Jin Hu,et al.  ICCAD-2015 CAD contest in incremental timing-driven placement and benchmark suite , 2015, 2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[10]  Gi-Joon Nam,et al.  Techniques for Fast Physical Synthesis , 2007, Proceedings of the IEEE.

[11]  P ? ? ? ? ? ? ? % ? ? ? ? , 1991 .

[12]  David Z. Pan,et al.  Diffusion-Based Placement Migration With Application on Legalization , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[13]  Natarajan Viswanathan,et al.  Placement: Hot or Not? , 2012, 2012 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[14]  Yih-Lang Li,et al.  Density-aware detailed placement with instant legalization , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[15]  L. Dagum,et al.  OpenMP: an industry standard API for shared-memory programming , 1998 .

[16]  Wai-Kei Mak,et al.  Mixed-Cell-Height Standard Cell Placement Legalization , 2017, ACM Great Lakes Symposium on VLSI.