Table of Contents
Fetching ...

Re$^{\text{2}}$MaP: Macro Placement by Recursively Prototyping and Packing Tree-based Relocating

Yunqi Shi, Xi Lin, Zhiang Wang, Siyuan Xu, Shixiong Kai, Yao Lai, Chengrui Gao, Ke Xue, Mingxuan Yuan, Chao Qian, Zhi-Hua Zhou

TL;DR

Macro placement under diverse constraints is challenging due to periphery placement, IO keepout, and dataflow considerations. Re$^{\text{2}}$MaP addresses this by fusing multi-level macro grouping and PPA-aware clustering to form a unified connection matrix $A$, a mixed-size prototyping stage via DREAMPlace, and ABPlace’s ellipse-based angle optimization, followed by packing-tree relocation with evolutionary search. The approach iteratively refines prototypes with adaptive target densities and defers some macros to future iterations to improve accuracy, achieving strong WNS/TNS improvements and competitive power and runtime across seven open designs. The method is open-sourced and demonstrates robust performance across varying utilizations and clock speeds, offering a practical path to expert-quality, scalable macro placement in real flows.

Abstract

This work introduces the Re$^{\text{2}}$MaP method, which generates expert-quality macro placements through recursively prototyping and packing tree-based relocating. We first perform multi-level macro grouping and PPA-aware cell clustering to produce a unified connection matrix that captures both wirelength and dataflow among macros and clusters. Next, we use DREAMPlace to build a mixed-size placement prototype and obtain reference positions for each macro and cluster. Based on this prototype, we introduce ABPlace, an angle-based analytical method that optimizes macro positions on an ellipse to distribute macros uniformly near chip periphery, while optimizing wirelength and dataflow. A packing tree-based relocating procedure is then designed to jointly adjust the locations of macro groups and the macros within each group, by optimizing an expertise-inspired cost function that captures various design constraints through evolutionary search. Re$^{\text{2}}$MaP repeats the above process: Only a subset of macro groups are positioned in each iteration, and the remaining macros are deferred to the next iteration to improve the prototype's accuracy. Using a well-established backend flow with sufficient timing optimizations, Re$^{\text{2}}$MaP achieves up to 22.22% (average 10.26%) improvement in worst negative slack (WNS) and up to 97.91% (average 33.97%) improvement in total negative slack (TNS) compared to the state-of-the-art academic placer Hier-RTLMP. It also ranks higher on WNS, TNS, power, design rule check (DRC) violations, and runtime than the conference version ReMaP, across seven tested cases. Our code is available at https://github.com/lamda-bbo/Re2MaP.

Re$^{\text{2}}$MaP: Macro Placement by Recursively Prototyping and Packing Tree-based Relocating

TL;DR

Macro placement under diverse constraints is challenging due to periphery placement, IO keepout, and dataflow considerations. ReMaP addresses this by fusing multi-level macro grouping and PPA-aware clustering to form a unified connection matrix , a mixed-size prototyping stage via DREAMPlace, and ABPlace’s ellipse-based angle optimization, followed by packing-tree relocation with evolutionary search. The approach iteratively refines prototypes with adaptive target densities and defers some macros to future iterations to improve accuracy, achieving strong WNS/TNS improvements and competitive power and runtime across seven open designs. The method is open-sourced and demonstrates robust performance across varying utilizations and clock speeds, offering a practical path to expert-quality, scalable macro placement in real flows.

Abstract

This work introduces the ReMaP method, which generates expert-quality macro placements through recursively prototyping and packing tree-based relocating. We first perform multi-level macro grouping and PPA-aware cell clustering to produce a unified connection matrix that captures both wirelength and dataflow among macros and clusters. Next, we use DREAMPlace to build a mixed-size placement prototype and obtain reference positions for each macro and cluster. Based on this prototype, we introduce ABPlace, an angle-based analytical method that optimizes macro positions on an ellipse to distribute macros uniformly near chip periphery, while optimizing wirelength and dataflow. A packing tree-based relocating procedure is then designed to jointly adjust the locations of macro groups and the macros within each group, by optimizing an expertise-inspired cost function that captures various design constraints through evolutionary search. ReMaP repeats the above process: Only a subset of macro groups are positioned in each iteration, and the remaining macros are deferred to the next iteration to improve the prototype's accuracy. Using a well-established backend flow with sufficient timing optimizations, ReMaP achieves up to 22.22% (average 10.26%) improvement in worst negative slack (WNS) and up to 97.91% (average 33.97%) improvement in total negative slack (TNS) compared to the state-of-the-art academic placer Hier-RTLMP. It also ranks higher on WNS, TNS, power, design rule check (DRC) violations, and runtime than the conference version ReMaP, across seven tested cases. Our code is available at https://github.com/lamda-bbo/Re2MaP.

Paper Structure

This paper contains 25 sections, 9 equations, 10 figures, 8 tables, 1 algorithm.

Figures (10)

  • Figure 1: (a) Prototype of mixed-size placement. (b) Placement result following the direct application of a packing-based heuristic that minimizes macro displacement. (c) Optimization of macros on an ellipse by ABPlace. (d) Placement result by packing tree-based relocating. The orange arrows represent wirelength and dataflow connections.
  • Figure 2: Overview of the proposed Re$^{\text{2}}$MaP method. Components in yellow are key steps of our method. Components bounded by red boxes are key improvements over ReMaP shi2025remap.
  • Figure 3: Illustration of multi-level macro grouping and PPA-aware clustering pipeline.
  • Figure 4: Case study on swerv_wrapper design demonstrates the effectiveness of the adaptive target density. Subfigures (a) and (b) show the impact of target density in the first iteration of mixed-size prototyping, where the placement of subfigure (b) diverges and its HPWL is shown in red. Subfigures (c), (d), and (e) illustrate the cell placement after all macros have been fixed.
  • Figure 5: Illustration of one Re$^\text{2}$MaP iteration. Subfigures (a)-(d) give the detailed steps from the ellipse construction to the result of ABPlace. Subfigures (e) and (f) give the illustration of macro relocating and the acquired results of the current iteration.
  • ...and 5 more figures