Skip to content

Rules update related to DFF mapping for PDK 0.3#4150

Merged
maliberty merged 1 commit intoThe-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:dff-mapping-pdk-0.3
Apr 16, 2026
Merged

Rules update related to DFF mapping for PDK 0.3#4150
maliberty merged 1 commit intoThe-OpenROAD-Project:masterfrom
The-OpenROAD-Project-staging:dff-mapping-pdk-0.3

Conversation

@openroad-ci
Copy link
Copy Markdown
Collaborator

Metrics update related to disabling the dff mapping file for PDK 0.3, since yosys can automatically determine which flop masters to use.

cva6 base

Metric Old New Type
synth__design__instance__area__stdcell 16800.0 16200.0 Tighten
placeopt__design__instance__area 13856 12740 Tighten
placeopt__design__instance__count__stdcell 142196 121146 Tighten
cts__design__instance__count__setup_buffer 12365 10534 Tighten
cts__design__instance__count__hold_buffer 12365 10534 Tighten
globalroute__antenna_diodes_count 118 100 Tighten
globalroute__timing__setup__ws -0.0412 -0.0411 Tighten
globalroute__timing__setup__tns -0.381 -0.163 Tighten
finish__timing__setup__ws -0.0412 -0.0411 Tighten
finish__timing__setup__tns -0.381 -0.163 Tighten
finish__design__instance__area 14305 13238 Tighten

cva6 verific

Metric Old New Type
synth__design__instance__area__stdcell 17000.0 16200.0 Tighten
placeopt__design__instance__area 14025 12693 Tighten
placeopt__design__instance__count__stdcell 145376 120066 Tighten
cts__design__instance__count__setup_buffer 12641 10440 Tighten
cts__design__instance__count__hold_buffer 12641 10440 Tighten
globalroute__antenna_diodes_count 121 100 Tighten
finish__design__instance__area 14478 13183 Tighten

ethmac base

Metric Old New Type
synth__design__instance__area__stdcell 3290.0 2830.0 Tighten
placeopt__design__instance__area 4563 3153 Tighten
placeopt__design__instance__count__stdcell 88191 46009 Tighten
cts__design__instance__count__setup_buffer 5929 4001 Tighten
cts__design__instance__count__hold_buffer 5929 4001 Tighten
cts__timing__setup__ws -0.0725 -0.0557 Tighten
cts__timing__setup__tns -4.25 -1.81 Tighten
globalroute__timing__setup__ws -0.0981 -0.0716 Tighten
globalroute__timing__setup__tns -7.21 -3.08 Tighten
finish__timing__setup__ws -0.0981 -0.0716 Tighten
finish__timing__setup__tns -7.21 -3.08 Tighten
finish__design__instance__area 4731 3298 Tighten

ethmac verific

Metric Old New Type
synth__design__instance__area__stdcell 3780.0 2830.0 Tighten
placeopt__design__instance__area 4536 3154 Tighten
placeopt__design__instance__count__stdcell 86754 46106 Tighten
cts__design__instance__count__setup_buffer 6307 4009 Tighten
cts__design__instance__count__hold_buffer 6307 4009 Tighten
cts__timing__setup__ws -0.0705 -0.0536 Tighten
cts__timing__setup__tns -3.69 -1.7 Tighten
globalroute__timing__setup__ws -0.0933 -0.0731 Tighten
globalroute__timing__setup__tns -5.54 -2.19 Tighten
finish__timing__setup__ws -0.0933 -0.0731 Tighten
finish__timing__setup__tns -5.54 -2.19 Tighten
finish__design__instance__area 4707 3298 Tighten

gcd base

Metric Old New Type
synth__design__instance__area__stdcell 20.89 16.5 Tighten
placeopt__design__instance__area 36 29 Tighten
placeopt__design__instance__count__stdcell 692 503 Tighten
cts__design__instance__count__setup_buffer 54 44 Tighten
cts__design__instance__count__hold_buffer 54 44 Tighten
cts__timing__setup__ws -0.0564 -0.0326 Tighten
cts__timing__setup__tns -1.7 -0.479 Tighten
globalroute__timing__setup__ws -0.067 -0.0436 Tighten
globalroute__timing__setup__tns -2.07 -1.1 Tighten
finish__timing__setup__ws -0.067 -0.0436 Tighten
finish__timing__setup__tns -2.07 -1.1 Tighten
finish__design__instance__area 47 33 Tighten

gcd verific

Metric Old New Type
synth__design__instance__area__stdcell 20.2 17.7 Tighten
placeopt__design__instance__area 37 31 Tighten
placeopt__design__instance__count__stdcell 688 536 Tighten
cts__design__instance__count__setup_buffer 58 47 Tighten
cts__design__instance__count__hold_buffer 58 47 Tighten
cts__timing__setup__ws -0.0452 -0.0412 Tighten
cts__timing__setup__tns -1.03 -1.3 Failing
globalroute__timing__setup__ws -0.0511 -0.0502 Tighten
globalroute__timing__setup__tns -1.41 -1.72 Failing
finish__timing__setup__ws -0.0511 -0.0502 Tighten
finish__timing__setup__tns -1.41 -1.72 Failing
finish__design__instance__area 41 34 Tighten

hercules_idecode base

Metric Old New Type
synth__design__instance__area__stdcell 8720.0 8130.0 Tighten
placeopt__design__instance__area 10320 9732 Tighten
placeopt__design__instance__count__stdcell 230511 214023 Tighten
cts__design__instance__count__setup_buffer 20044 18611 Tighten
cts__design__instance__count__hold_buffer 20044 18611 Tighten
cts__timing__setup__ws -0.0676 -0.0575 Tighten
cts__timing__setup__tns -14.1 -0.279 Tighten
globalroute__timing__setup__ws -0.231 -0.0953 Tighten
globalroute__timing__setup__tns -89.0 -21.7 Tighten
finish__timing__setup__ws -0.231 -0.0953 Tighten
finish__timing__setup__tns -89.1 -21.7 Tighten
finish__design__instance__area 10628 10011 Tighten

hercules_idecode verific

Metric Old New Type
synth__design__instance__area__stdcell 8680.0 8070.0 Tighten
placeopt__design__instance__area 10358 9790 Tighten
placeopt__design__instance__count__stdcell 232846 214546 Tighten
cts__design__instance__count__setup_buffer 20248 18656 Tighten
cts__design__instance__count__hold_buffer 20248 18656 Tighten
cts__timing__setup__tns -0.407 -0.392 Tighten
globalroute__antenna_diodes_count 202 186 Tighten
globalroute__timing__setup__tns -120.0 -66.6 Tighten
finish__timing__setup__tns -120.0 -66.6 Tighten
finish__design__instance__area 10645 10039 Tighten

hercules_is_int base

Metric Old New Type
synth__design__instance__area__stdcell 26600.0 25400.0 Tighten
placeopt__design__instance__area 31739 27685 Tighten
placeopt__design__instance__count__stdcell 647436 533704 Tighten
cts__design__instance__count__setup_buffer 56299 46409 Tighten
cts__design__instance__count__hold_buffer 56299 46409 Tighten
cts__timing__setup__ws -0.218 -0.177 Tighten
cts__timing__setup__tns -591.0 -357.0 Tighten
globalroute__antenna_diodes_count 567 479 Tighten
globalroute__timing__setup__ws -0.498 -0.268 Tighten
globalroute__timing__setup__tns -1700.0 -1100.0 Tighten
globalroute__timing__hold__tns -0.153 -0.101 Tighten
finish__timing__setup__ws -0.498 -0.268 Tighten
finish__timing__setup__tns -1700.0 -1100.0 Tighten
finish__timing__hold__tns -0.153 -0.101 Tighten
finish__design__instance__area 33275 29989 Tighten

hercules_is_int verific

Metric Old New Type
synth__design__instance__area__stdcell 26600.0 25500.0 Tighten
placeopt__design__instance__area 31868 27715 Tighten
placeopt__design__instance__count__stdcell 646997 535434 Tighten
cts__design__instance__count__setup_buffer 56261 46560 Tighten
cts__design__instance__count__hold_buffer 56261 46560 Tighten
cts__timing__setup__ws -0.198 -0.164 Tighten
cts__timing__setup__tns -620.0 -309.0 Tighten
globalroute__antenna_diodes_count 567 477 Tighten
globalroute__timing__setup__ws -0.449 -0.212 Tighten
globalroute__timing__setup__tns -1530.0 -1180.0 Tighten
finish__timing__setup__ws -0.449 -0.212 Tighten
finish__timing__setup__tns -1530.0 -1180.0 Tighten
finish__design__instance__area 33377 29933 Tighten

ibex base

Metric Old New Type
synth__design__instance__area__stdcell 1010.0 903.0 Tighten
placeopt__design__instance__area 1216 979 Tighten
placeopt__design__instance__count__stdcell 20942 16667 Tighten
cts__design__instance__count__setup_buffer 1708 1449 Tighten
cts__design__instance__count__hold_buffer 1708 1449 Tighten
globalroute__timing__setup__tns -21.6 -12.9 Tighten
finish__timing__setup__tns -21.6 -12.9 Tighten
finish__design__instance__area 1266 1045 Tighten

ibex verific

Metric Old New Type
synth__design__instance__area__stdcell 1020.0 900.0 Tighten
placeopt__design__instance__area 1221 1034 Tighten
placeopt__design__instance__count__stdcell 21890 18292 Tighten
cts__design__instance__count__setup_buffer 1760 1591 Tighten
cts__design__instance__count__hold_buffer 1760 1591 Tighten
cts__timing__setup__tns -0.09 -1.82 Failing
globalroute__timing__setup__tns -21.8 -31.7 Failing
finish__timing__setup__tns -21.8 -31.7 Failing
finish__design__instance__area 1274 1099 Tighten

jpeg base

Metric Old New Type
placeopt__design__instance__area 4582 4136 Tighten
placeopt__design__instance__count__stdcell 109773 107315 Tighten
cts__timing__setup__ws -0.0366 -0.0113 Tighten
cts__timing__setup__tns -13.4 -0.045 Tighten
globalroute__timing__setup__ws -0.0931 -0.0564 Tighten
globalroute__timing__setup__tns -64.2 -29.6 Tighten
finish__timing__setup__ws -0.0931 -0.0564 Tighten
finish__timing__setup__tns -64.2 -29.6 Tighten
finish__design__instance__area 4687 4224 Tighten

jpeg verific

Metric Old New Type
placeopt__design__instance__area 4619 4091 Tighten
placeopt__design__instance__count__stdcell 115045 106104 Tighten
cts__timing__setup__ws -0.0412 -0.0112 Tighten
cts__timing__setup__tns -20.2 -0.045 Tighten
globalroute__timing__setup__ws -0.0946 -0.0593 Tighten
globalroute__timing__setup__tns -84.0 -28.8 Tighten
finish__timing__setup__ws -0.0946 -0.0593 Tighten
finish__timing__setup__tns -84.0 -28.8 Tighten
finish__design__instance__area 4720 4184 Tighten

Signed-off-by: Jeff Ng <jeffng@precisioninno.com>
Copy link
Copy Markdown

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

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 updates the performance and area threshold rules for several designs, including cva6, ethmac, gcd, hercules_idecode, hercules_is_int, ibex, and jpeg. The changes involve tightening constraints for standard cell area, instance counts, and timing metrics across various stages of the design flow. I have no feedback to provide.

@maliberty maliberty merged commit c1e62b4 into The-OpenROAD-Project:master Apr 16, 2026
8 checks passed
@maliberty maliberty deleted the dff-mapping-pdk-0.3 branch April 16, 2026 04:52
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.

3 participants