Skip to content

flow: enable GPL_PLACE_IOS for designs where it helps - #4706

Open
minjukim55 wants to merge 1 commit into
The-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:secure-place-ios-design-enable
Open

minjukim55 wants to merge 1 commit into
The-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:secure-place-ios-design-enable

Conversation

@minjukim55

@minjukim55 minjukim55 commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Enable GPL_PLACE_IOS (#4685) in 20 public designs.

How it was measured:

  • GPL_PLACE_IOS off vs on, same OpenROAD binary
  • global placement seeds 1-10 (-random_seed), run through GRT
  • enabled when setup WS improves or stays within the flag-off seed spread, and placement runtime drops

Means over seeds 1-10, off → on, all at GRT (5_1). fmax = ORFS timing__fmax. GPL wirelength = 3_3 final HPWL, GRT wirelength = 5_1 routed, placement runtime = 3_1..3_5.

design fmax (GHz) setup WS setup TNS GPL WL GRT WL placement runtime
asap7/aes 2.583 → 2.592 (+0.38%) -7.2 → -5.7 ps -37.5 → -29.3 ps +4.4% +2.5% -6%
asap7/aes-block 2.193 → 2.214 (+0.96%) -6.2 → -1.7 ps -31.8 → -6.2 ps +0.6% +2.0% -16%
asap7/ethmac 3.311 → 3.293 (-0.56%) -88.0 → -77.7 ps -1489 → -1311 ps +0.1% +0.3% -5%
asap7/ethmac_lvt 3.567 → 3.559 (-0.21%) -23.6 → -21.4 ps -350.2 → -311.7 ps +4.9% +1.2% -12%
asap7/gcd 3.015 → 2.997 (-0.62%) -46.0 → -45.9 ps -135.6 → -139.0 ps +8.9% +0.9% -38%
asap7/gcd-ccs 2.976 → 2.957 (-0.63%) -48.5 → -47.6 ps -146.2 → -142.1 ps +8.1% +1.5% -37%
asap7/jpeg 1.582 → 1.581 (-0.03%) -87.2 → -87.4 ps -22454 → -22574 ps -1.0% -1.0% -5%
asap7/jpeg_lvt 1.696 → 1.692 (-0.25%) +10.5 → +9.0 ps 0 → 0 +1.5% +0.6% -9%
asap7/mock-alu 1.706 → 1.727 (+1.25%) -286.2 → -279.0 ps -18362 → -18119 ps -2.9% -2.1% -10%
asap7/picorv32 2.660 → 2.666 (+0.23%) -164.5 → -164.3 ps -27437 → -26684 ps +2.0% +1.2% -7%
asap7/tinyRocket 1.439 → 1.438 (-0.08%) -95.1 → -95.7 ps -27393 → -22035 ps +3.1% +2.2% -7%
asap7/uart 3.330 → 3.341 (+0.34%) -30.3 → -29.3 ps -1120 → -1119 ps -1.2% -1.1% -31%
nangate45/dynamic_node 0.784 → 0.784 (0.00%) -1.024 → -1.008 ns -789.5 → -802.4 ns -5.9% -4.4% -1%
nangate45/gcd 2.404 → 2.415 (+0.46%) -0.166 → -0.164 ns -7.32 → -7.14 ns +6.0% -5.8% <1 s
nangate45/ibex 0.542 → 0.542 (+0.08%) +0.002 → +0.002 ns 0 → 0 -5.9% -4.0% -8%
nangate45/jpeg 0.905 → 0.904 (-0.09%) -0.105 → -0.106 ns -37.2 → -38.1 ns +2.9% +2.0% -7%
nangate45/tpu 0.705 → 0.710 (+0.62%) -0.418 → -0.409 ns -345.4 → -342.9 ns -3.2% -1.5% -9%
sky130hs/aes 0.350 → 0.351 (+0.47%) -0.060 → -0.046 ns -0.21 → -0.17 ns +2.9% +0.5% -2%
sky130hs/ibex 0.161 → 0.166 (+3.41%) -0.510 → -0.387 ns -265.0 → -102.2 ns -1.1% +1.8% -6%
gf180/jpeg 0.166 → 0.166 (-0.16%) -0.048 → -0.025 ns -3.46 → -0.09 ns -0.5% -0.1% -4%

Disabled (19, worse with the flag on):

  • asap7: aes_lvt, aes-mbff, chi_async_bridge, ibex, riscv32i, tpu
  • nangate45: picorv32
  • sky130hd: aes, gcd, ibex, riscv32i
  • sky130hs: jpeg, riscv32i
  • gf180: aes
  • ihp-sg13g2: aes
  • dropped after CI: asap7/riscv32i-mock-sram (finish TNS), sky130hd/jpeg and gf180/aes-hybrid (GRT antenna diodes up on all 10 seeds), sky130hs/gcd (TNS worse on 8/10 seeds)

Not measured yet (25):

  • asap7: coralnpu, cva6, swerv_wrapper
  • nangate45: ariane133, ariane136, black_parrot, bp_be_top, bp_fe_top, bp_multi_top, bp_quad, cva6, mempool_group, swerv, swerv_wrapper, tinyRocket
  • sky130hd: chameleon, microwatt
  • gf180: ibex, riscv32i, uart-blocks
  • ihp-sg13g2: gcd, ibex, jpeg, riscv32i, spi

Not applicable (2, pins fixed by FLOORPLAN_DEF/FOOTPRINT): nangate45/aes, ihp-sg13g2/i2c-gpio-expander

@minjukim55 minjukim55 self-assigned this Oct 20, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request enables the GPL_PLACE_IOS option by setting export GPL_PLACE_IOS = 1 across various design configuration files (config.mk) for multiple platforms, including asap7, gf180, nangate45, sky130hd, and sky130hs. I have no feedback to provide.

@openroad-ci

openroad-ci commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

🔍 QoR check

Metrics reflect the PR merge build — i.e. what will land on the target branch.

Commit 7b71b93 · Jenkins build #2 · Baseline: build · View build on dashboard

62 design(s) checked — 2 with regression(s), 0 without a comparable baseline.

❌ asap7/ethmac_lvt base — 1 failing metric(s)
Metric target base delta limit band
globalroute__timing__setup__tns -307.720 -234.642 -31.144% -294.642 PeriodPadding 20.000%
❌ asap7/uart base — 1 failing metric(s)
Metric target base delta limit band
cts__timing__setup__tns -1163.650 -958.162 -21.446% -1149.794 PeriodPadding 20.000%

Turn on global_placement -place_ios for 20 public designs (19 config.mk
files; asap7/gcd-ccs picks it up through asap7/gcd). Each was run with
GPL_PLACE_IOS off and on for global placement seeds 1-10 through global
route on the same OpenROAD binary. In every enabled design, setup WS
improves or stays within the seed-to-seed spread of the flag-off runs,
and placement runtime drops because the separate skip-IO global
placement and place_pins steps go away.

asap7: aes, aes-block, ethmac, ethmac_lvt, gcd, gcd-ccs, jpeg, jpeg_lvt,
  mock-alu, picorv32, tinyRocket, uart
nangate45: dynamic_node, gcd, ibex, jpeg, tpu
sky130hs: aes, ibex
gf180: jpeg
Signed-off-by: Minju Kim <mkim@precisioninno.com>
@openroad-ci
openroad-ci force-pushed the secure-place-ios-design-enable branch from 1229832 to 728f75a Compare October 21, 2026 01:52
@oharboe

oharboe commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator

@minjukim55 Could you post minimum clock period impact? #4583

@minjukim55

Copy link
Copy Markdown
Contributor Author

@minjukim55 Could you post minimum clock period impact? #4583

Added fmax

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants