Abstract
VLSI placement optimizes locations of circuit components so as to reduce interconnect. Formulated in terms of (hyper) graphs, it is NP-hard, and yet must be solved for challenging million-node instances within several hours. We propose an algorithm for large-scale placement that outperforms prior art both in runtime and solution quality on standard benchmarks. The algorithm is more straightforward than existing placers and easier to integrate into timing-closure flows. Our C++ implementation is compact, self-contained and exploits instruction-level and thread-level parallelism. Due to its simplicity and superior performance, the algorithm has been adopted in the industry and was extended by several university groups to multi-objective optimization.
- Alpert, C.J., et al. Techniques for fast physical synthesis. Proc. IEEE 95, 3 (2007), 573--599.Google ScholarCross Ref
- Brenner, U., Struzyna, M., Vygen, J. BonnPlace: Placement of leading-edge chips by advanced combinatorial algorithms. IEEE TCAD 27, 9 (2008), 1607--1620. Google ScholarDigital Library
- Chan, T.F., et al. mPL6: Enhanced multilevel mixed-size placement. ISPD (2006), 212--214. Google ScholarDigital Library
- Chen, T.C., et al. NTUPlace3: An analytical placer for large-scale mixed-size designs with preplaced blocks and density constraints. IEEE TCAD 27, 7 (2008), 1228--1240. Google ScholarDigital Library
- Dagum, L., Menon, R. OpenMP: An industry standard API for shared-memory programming. IEEE Comput. Sci. Eng. (1998), 46--55. Google ScholarDigital Library
- He, X., Huang, T., Xiao, L., Tian, H., Cui, G., Young, E.F.Y. Ripple: An effective routability-driven placer by iterative cell movement. ICCAD (2011), 74--79. Google ScholarDigital Library
- Hu, B., Marek-Sadowska, M. FA R: Fixed-points addition & relaxation based placement. ISPD (2005), 161--166. Google ScholarDigital Library
- Kahng, A.B., Wang, Q. A faster implementation of APlace. ISPD (2006), 218--220. Google ScholarDigital Library
- Kim, M.C., Markov, I.L. ComPLx: A competitive primal-dual Lagrange optimization for global placement. DAC (2012), 747--752. Google ScholarDigital Library
- Kim, M.C., et al. MAPLE: Multilevel adaptive PLacEment for mixed-size designs. Proc. ISPD (2012). Google ScholarDigital Library
- Kim, M.C., Hu, J., Lee, D., Markov, I.L. A SimPLR method for routability-driven placement. ICCAD (2011), 67--73. Google ScholarDigital Library
- Kahng, A.B., Lienig, J., Markov, I.L., Hu, J. VLSI Physical Design: From Graph Partitioning to Timing Closure, Springer, 2011, 312. Google ScholarDigital Library
- Kennings, A.A., Vorwerk, K. Force-directed methods for generic placement. IEEE TCAD 25, 10 (2006), 2076--2087. Google ScholarDigital Library
- Kleinhans, J.J., et al. GORDIAN: VLSI placement by quadratic programming and slicing optimization. IEEE TCAD 10, 3 (1991), 356--365. Google ScholarDigital Library
- Nam, G.J., Cong, J. Modern Circuit Placement: Best Practices and Results, Springer, 2007. Google ScholarDigital Library
- Pan, M., Viswanathan, N., Chu, C. An efficient & effective detailed placement algorithm. ICCAD (2005), 48--55. Google ScholarDigital Library
- Raman, S.K., Pentkovski, V., Keshava, J. Implementing streaming SIMD extensions on the Pentium III processor. IEEE Micro 20, 4 (2000), 47--57. Google ScholarDigital Library
- Roy, J.A., et al. Capo: Robust and scalable open-source min-cut floorplacer. ISPD (2005), 224--226. Google ScholarDigital Library
- Saad, Y. Iterative methods for sparse linear systems. SIAM (2003). Google ScholarDigital Library
- Spindler, P., Schlichtmann, U., Johannes, F.M. Kraftwerk2 -- A fast force-directed quadratic placement approach using an accurate net model. IEEE TCAD 27, 8 (2008), 1398--1411. Google ScholarDigital Library
- Trefethen, L.N., Bau, D. Numerical linear algebra. SIAM (1997), 296--298.Google Scholar
- Viswanathan, N., Pan, M., Chu, C. FastPlace 3.0: A fast multilevel quadratic placement algorithm with placement congestion control. ASPDAC (2007), 135--140. Google ScholarDigital Library
- Viswanathan, N., et al. RQL: Global placement via relaxed quadratic spreading and linearization. DAC (2007), 453--458. Google ScholarDigital Library
Index Terms
- SimPL: an algorithm for placing VLSI circuits
Recommendations
SimPL: An Effective Placement Algorithm
We propose a self-contained, flat, quadratic global placer that is simpler than existing placers and easier to integrate into timing-closure flows. It maintains lower-bound and upper-bound placements that converge to a final solution. The upper-bound ...
SimPL: an effective placement algorithm
ICCAD '10: Proceedings of the International Conference on Computer-Aided DesignWe propose a self-contained, flat, force-directed algorithm for global placement that is simpler than existing placers and easier to integrate into timing-closure flows. It maintains lower-bound and upper-bound placements that converge to a final ...
MP-Trees: A Packing-Based Macro Placement Algorithm for Modern Mixed-Size Designs
In this paper, we present a new multipacking-tree (MP-tree) representation for macro placements to handle modern mixed-size designs with large macros and high chip utilization rates. Based on binary trees, the MP-tree is very efficient, effective, and ...
Comments