Global placement decides roughly where every cell goes on a chip. Wires should be short, and no region should be overcrowded. ePlace and RePlAce are two well-known analytic placers built on one physical idea: treat cells as electric charges that push each other apart. This page uses a small 80-cell demo to show three mechanisms at work: the optimizer's step size, cell inflation for routability, and fixed macros.
- Step size. With adaptive α, wirelength (HPWL) is 4.2% shorter than with fixed α after 200 iterations and 14% shorter after 240, because the fixed-α run starts to lose stability late in the run.
- Cell inflation. On the standard-cell design, inflation with adaptive α cuts peak density by 35% for 16% more HPWL. With fixed α it cuts only 6%.
- Macros. With five fixed macros, inflation backfires: peak density rises 5–6% and HPWL 9–12%.
- Scope. One seed, 80 cells, stopped before convergence. This is a classroom demo, not a benchmark, and its “ePlace” and “RePlAce” are teaching labels, explained under Setup.
The problem · Setup · Step size · Cell inflation · Macros · Final numbers · Limits · Sources
Updated 3 November 2026. The original post of 25 April 2026 is kept at its own address.
1. The problem
Global placement minimizes total wirelength, usually measured as half-perimeter wirelength (HPWL), while limiting how densely cells pack. Analytic placers combine both goals in one smooth cost:
W is a smooth wirelength model, N is a density penalty, and the weight λ grows during the run. Cells first gather to shorten wires, then spread out as density starts to matter more.
ePlace's density model, eDensity, treats every cell as a positive charge and the density cost as the potential energy of the system. Poisson's equation is solved with the fast Fourier transform, and the resulting field pushes cells from crowded bins toward empty ones. Nesterov's method then drives the optimization [1]. The slides tell the same story for high-school readers with classroom seats, repelling magnets and a skier.
2. Setup
Four solvers run on two problems with the same seed and the same hyperparameters.
| Problem | Instance |
|---|---|
| P1 | 80 standard cells, no macros. Cells start clumped near the center. |
| P2 | 80 standard cells plus 5 fixed macros at the four corners and the center, each about 15% of the die width (cell_w = 0.15). All cells start on the center macro. |
| Step rule | No inflation | Cell inflation |
|---|---|---|
| Fixed α | ePlace | ePlace + R |
| Adaptive α | RePlAce | RePlAce + R |
Shared settings: α₀ = 0.02; λ starts at 1 and grows by a factor of 1.025 per iteration, up to 400; 200 iterations; seed 2. Inflation: starts at iteration 70, period 15, strength 1.1, cap 2.0. Fig. 1 runs the same schedule for 240 iterations.
| Metric | Meaning |
|---|---|
| HPWL | Total half-perimeter wirelength, in demo units. |
| Overflow | Share of cell area above the target density. ePlace stops at 0.10 [1]. |
| Peak/util | Density of the fullest bin divided by the target density. |
| Late HPWL std | Spread of HPWL over the final iterations. HPWL is still rising there, so this mixes ripple with the upward trend. |
| Cells inside macros | Cell centers inside a macro at the end of the run. |
3. Step size: fixed vs. adaptive α
The fixed α = 0.02 sits above the Lipschitz-predicted step for the whole run. The adaptive α stays mostly between 0.008 and 0.016 and drops to about 0.004 at the end. The early cost of the larger step is plain: at iteration 48, fixed α is at HPWL 12.5 while adaptive α has tightened to 4.2.
By iteration 150 the two runs are close again (HPWL 22.67 and 21.53). As λ grows, the cost gets stiffer and the largest stable step shrinks. The adaptive α follows that limit, but a fixed α cannot. After iteration 210 the fixed-α overflow turns back up, from 0.41 to 0.46, while the adaptive run falls to 0.37. The HPWL gap doubles in the last dozen iterations.
| Iter | λ | Fixed α HPWL | ov | Adaptive α HPWL | ov | Gap |
|---|---|---|---|---|---|---|
| 48 | 3.4 | 12.52 | 0.89 | 4.16 | 0.91 | −66.8% |
| 150 | 41.6 | 22.67 | 0.56 | 21.53 | 0.57 | −5.0% |
| 198 | 136.2 | 30.99 | 0.42 | 29.47 | 0.43 | −4.9% |
| 219 | 228.7 | 33.35 | 0.42 | 31.52 | 0.39 | −5.5% |
| 228 | 285.6 | 34.65 | 0.43 | 32.28 | 0.37 | −6.8% |
| 237 | 356.7 | 37.14 | 0.46 | 32.73 | 0.37 | −11.9% |
| 239 | 374.8 | 38.1 | 0.46 | 32.8 | 0.37 | −13.9% |
This reconciles two numbers that look like a conflict. The slides quote −14%, which is the iteration-239 value. The final runs in Table 2 give −4.2%, because they stop after 200 iterations, before the fixed step loses stability. Those are separate runs, so their values differ slightly from the iteration-198 row above.
4. Cell inflation: making room for wires
Short wires do not help if the router cannot fit them. RePlAce's routability mode calls a global router during placement, finds congested regions, and inflates the cells there so that the density force spreads them apart [3]. The demo keeps the idea in simple form. It inflates cells every 15 iterations from iteration 70 (strength 1.1, cap 2.0), and by iteration 198 the mean inflation on P1 is 1.51.
The effect depends on the step rule. With adaptive α, inflation lowers peak density by 35% (5.87 to 3.81) and adds 16% HPWL. With fixed α it lowers the peak by only 6%. A likely reason is that inflation makes the problem stiffer, which a fixed step handles poorly, but one run cannot prove that.
5. Macros: cells flow around obstacles
Real chips also contain macros such as memory blocks, far larger than standard cells. ePlace's density model needs no special handling for them: a macro is simply a large charge [2]. In P2, all 80 cells start on the center macro, and the density force drives them off the macros and around them.
Inflation does not help here. Against its own baseline it raises peak density by 5–6% and adds 9–12% HPWL (Table 4). Cells left inside macros go 0, 1, 2 across ePlace, RePlAce and RePlAce + R (Fig. 7). Counts this small on one seed call for a multi-seed rerun; they are not yet a trend.
Fig. 6 reports overlap = 5 for RePlAce + R and Fig. 7 reports 2, but the final layout is the same. Two cell centers lie inside a macro, and three more sit next to a macro edge.
Published ePlace-MS goes further: macros move during placement, a simulated annealer legalizes them, and a second placement pass re-optimizes the cells [2]. In this demo macros never move, and cells left inside them would fall to a later legalization step.
6. Final numbers
Eight runs, 200 iterations, seed 2. Lower is better in every column, and the best value in each column is in bold.
| Solver | HPWL | Overflow | Peak/util | Late HPWL std |
|---|---|---|---|---|
| ePlace | 30.83 | 0.421 | 5.47 | 1.84 |
| ePlace + R | 35.25 | 0.404 | 5.12 | 1.15 |
| RePlAce | 29.53 | 0.422 | 5.87 | 1.72 |
| RePlAce + R | 34.21 | 0.382 | 3.81 | 0.92 |
| Solver | HPWL | Overflow | Peak/util | Inside macros |
|---|---|---|---|---|
| ePlace | 44.20 | 0.271 | 4.06 | 0 |
| ePlace + R | 49.59 | 0.286 | 4.31 | 0 |
| RePlAce | 43.47 | 0.263 | 3.87 | 1 |
| RePlAce + R | 47.48 | 0.268 | 4.08 | 2 |
Each row of Table 4 changes one factor, so the effects stay separate.
| One change | P1 HPWL | P1 peak | P2 HPWL | P2 peak |
|---|---|---|---|---|
| Fixed to adaptive α, no inflation | −4.2% | +7.3% | −1.7% | −4.7% |
| Fixed to adaptive α, with inflation | −3.0% | −25.6% | −4.3% | −5.3% |
| Inflation on, fixed α | +14.3% | −6.4% | +12.2% | +6.2% |
| Inflation on, adaptive α | +15.8% | −35.1% | +9.2% | +5.4% |
On this instance, RePlAce + R suits the standard-cell design if peak density matters more than wirelength. Plain RePlAce is the best of the four on the macro design: it has the lowest HPWL, overflow and peak density, though one cell stays inside a macro.
7. What this demo does not show
- One seed, 80 cells. Gaps of a few percent, or of one or two cells, may not survive other seeds.
- Not converged. The runs stop at overflow 0.26–0.42, with peak density still 3.8–5.9 times the target. ePlace runs down to overflow 0.10 [1], the default target in OpenROAD as well [4]. HPWL here is a mid-run value, and the solvers stop at different overflow.
- Density is not routed congestion. Peak/util comes from the density map. RePlAce's routability results were assessed with a global router [3].
- Published margins measure something else. RePlAce reports an average 2.00% HPWL reduction over best-known ISPD-2005 and ISPD-2006 results, 2.73% over best-known MMS results, and 8.50% to 9.59% scaled HPWL over leading academic placers on DAC-2012 and ICCAD-2012 [3].
8. Materials and sources
- Results page: the final numbers and the four original findings.
- Slides: modern global placement (Traditional Chinese, high-school level). Some numbers in them, such as −14% HPWL, come from longer or earlier runs.
- Original post of 25 April 2026.
[1] J. Lu, P. Chen, C.-C. Chang, L. Sha, D. J.-H. Huang, C.-C. Teng and C.-K. Cheng, “ePlace: Electrostatics-based placement using fast Fourier transform and Nesterov's method,” ACM TODAES, vol. 20, no. 2, art. 17, 2015. doi:10.1145/2699873
[2] J. Lu, H. Zhuang, P. Chen, H. Chang, C.-C. Chang, Y.-C. Wong, L. Sha, D. Huang, Y. Luo, C.-C. Teng and C.-K. Cheng, “ePlace-MS: Electrostatics-based placement for mixed-size circuits,” IEEE TCAD, vol. 34, no. 5, pp. 685–698, 2015. doi:10.1109/TCAD.2015.2391263
[3] C.-K. Cheng, A. B. Kahng, I. Kang and L. Wang, “RePlAce: Advancing solution quality and routability validation in global placement,” IEEE TCAD, vol. 38, no. 9, pp. 1717–1730, 2019. doi:10.1109/TCAD.2018.2859220
[4] OpenROAD documentation: Global Placement (gpl is based on the open-source RePlAce) and Tcl usage (target overflow for termination, default 0.1).
沒有留言:
張貼留言