Skip to content

Comments

rsz: design area include tap#9452

Open
gudeh wants to merge 11 commits intoThe-OpenROAD-Project:masterfrom
gudeh:rsz-design-area-include-tap
Open

rsz: design area include tap#9452
gudeh wants to merge 11 commits intoThe-OpenROAD-Project:masterfrom
gudeh:rsz-design-area-include-tap

Conversation

@gudeh
Copy link
Contributor

@gudeh gudeh commented Feb 10, 2026

We are currently not accounting for end caps and tap cells when reporting the area and utilization for the user.

The modified rsz function is used for the command used multiple times in ORFS: report_design_area.

The report_design_area is called by report_metrics, and has the following format:

image

I triggered a secure-CI and this seems to be no-op.

gudeh added 3 commits February 9, 2026 20:10
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
@gudeh gudeh requested review from maliberty and povik February 10, 2026 22:21
Copy link
Contributor

@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 aims to include end cap and tap cells in the design area calculation, which is used for reporting utilization. The change in Resizer.cc correctly achieves this by removing the conditions that excluded these cell types.

My review includes a suggestion to make the filler cell exclusion logic more robust. The current implementation relies on isFiller(), which appears to be incomplete. A more comprehensive check would improve the accuracy of the design area report.

if (!master->isFiller()
&& master->getType() != odb::dbMasterType::CORE_WELLTAP
&& !master->isEndCap()) {
if (!master->isFiller()) {
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

While this change correctly includes welltap and endcap cells in the design area calculation, it now relies solely on isFiller(), which seems to have an incomplete definition as it only identifies CORE_SPACER as a filler. Other filler-like cells such as PAD_SPACER and COVER cells will still be counted in the design area, which may not be desirable for an accurate utilization report.

For a more robust implementation that correctly excludes all filler types, consider this more comprehensive check.

    if (!master->isFiller() && !master->isCover() && master->getType() != odb::dbMasterType::PAD_SPACER) {

@github-actions
Copy link
Contributor

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

@github-actions
Copy link
Contributor

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

Signed-off-by: Augusto Berndt <augusto.berndt@precisioninno.com>
@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

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

@gudeh gudeh requested review from maliberty and removed request for maliberty February 19, 2026 22:21
@maliberty
Copy link
Member

The change is trivial but will need a secure CI check

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.

2 participants