Skip to content

Conversation

@gudeh
Copy link
Contributor

@gudeh gudeh commented May 30, 2025

This PR introduces a significant change to how filler cells are handled within the global placement (GPL) routability mode. Previously, when area increased due to routability mode inflations, we compensated by increasing density. This approach was counter-intuitive and hindered the routability mode's ability to spread instances effectively. Now, filler cells are removed to directly compensate for inflated area. The previous density modification approach is only utilized when no more fillers can be removed.

A special situation arises when routing congestion doesn't reduce for three consecutive routability iterations. In such cases, instead of reverting to the conventional snapshot (0.6 overflow), we revert to the inflation values that yielded the minimum observed routing congestion (i.e., the best solution found). When this occurs, previously removed fillers are restored using NesterovBase::restoreRemovedFillers().

Currently, this filler removal modification is exclusive to the routability mode. It has not been extended to the timing-driven mode due to consistent divergences observed on three Nangate45 designs when attempting to remove fillers after non-virtual timing-driven iterations.

This PR also includes the following modifications:

-Some renaming of functions (including 'get' prefix on getter functions). 
-New reports providing delta area information after modifications made by both routability and timing-driven modes.
-New functions have been added to write a CSV file containing all GCell information, including all parallel vector values and internal GCell attributes.

EDIT: Here are some examples, master on top and new version on bottom images:
sky130hd/aes
image

nangate45/swerv
image

All public designs images are available in this link.

gudeh added 25 commits April 30, 2025 17:33
this allows for removing filler gcells instead of increasing density for area modifications

Signed-off-by: Augusto Berndt <[email protected]>
include more reports
remove unecessary function

Signed-off-by: Augusto Berndt <[email protected]>
… congestion observed during routability iterations

Signed-off-by: Augusto Berndt <[email protected]>
the issue was that multiple filler gcells were restored to the origin and moving together as a cluster, making a whole of empty space

Signed-off-by: Augusto Berndt <[email protected]>
@gudeh
Copy link
Contributor Author

gudeh commented May 30, 2025

@osamahammad21 FYI

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

github-actions bot commented Jun 2, 2025

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

github-actions bot commented Jul 2, 2025

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

github-actions bot commented Jul 2, 2025

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

github-actions bot commented Jul 3, 2025

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

github-actions bot commented Jul 8, 2025

clang-tidy review says "All clean, LGTM! 👍"

Signed-off-by: Augusto Berndt <[email protected]>
@github-actions
Copy link
Contributor

github-actions bot commented Jul 8, 2025

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

github-actions bot commented Jul 8, 2025

clang-tidy review says "All clean, LGTM! 👍"

@gudeh
Copy link
Contributor Author

gudeh commented Jul 8, 2025

@maliberty secure-CI is passing for public designs, I just triggered the updateRules in The-OpenROAD-Project/OpenROAD-flow-scripts#3220

@github-actions
Copy link
Contributor

github-actions bot commented Jul 8, 2025

clang-tidy review says "All clean, LGTM! 👍"

@github-actions
Copy link
Contributor

github-actions bot commented Jul 9, 2025

clang-tidy review says "All clean, LGTM! 👍"

@gudeh gudeh requested a review from maliberty July 10, 2025 09:42
@maliberty maliberty merged commit b0236ae into The-OpenROAD-Project:master Jul 10, 2025
11 checks passed
@gudeh gudeh deleted the gpl-filler-gcell-removal branch July 10, 2025 22:55
@gudeh gudeh mentioned this pull request Jul 11, 2025
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