Skip to content

dpl: exclude macros from one_site_gap check - #11036

Open
gudeh wants to merge 2 commits into
The-OpenROAD-Project:masterfrom
gudeh:dpl-exclude-macro
Open

dpl: exclude macros from one_site_gap check#11036
gudeh wants to merge 2 commits into
The-OpenROAD-Project:masterfrom
gudeh:dpl-exclude-macro

Conversation

@gudeh

@gudeh gudeh commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Summary

Currently when we instantiate cells at Opendp::createNetwork() macros are considered Node::CELL, so cell->isStdCell() guarantees we don't attempt to check for one_site_gaps at macros. I understand it does not make sense to do so.

Macros are still considered for pixel painting.

Type of Change

  • Bug fix

Impact

Excludes macros from checking one_site_gaps, and avoids a false positive error on a private design.

Verification

  • I have verified that the local build succeeds (./etc/Build.sh).
  • I have run the relevant tests and they pass.
  • My code follows the repository's formatting guidelines.
  • I have included tests to prevent regressions.
  • I have signed my commits (DCO).

Related Issues

@gudeh
gudeh requested a review from a team as a code owner July 30, 2026 22:31
@gudeh
gudeh requested a review from osamahammad21 July 30, 2026 22:31
@gudeh

gudeh commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

Secure-CI ensures no-op.

@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 updates the placement check logic in CheckPlacement.cpp to use cell->isStdCell() instead of checking cell->getType() == Node::CELL during the one-site gap check. I have no feedback to provide as there are no review comments.

@gudeh
gudeh requested a review from maliberty July 30, 2026 22:32
@osamahammad21

Copy link
Copy Markdown
Member

@gudeh I think this would work if you want to allow a one-site gap between two macros, but not between a macro and a standard cell. In that case, the check would traverse the standard-cell node and detect the one-site gap next to the macro. My question: is there a real design where you want to do that?

@gudeh

gudeh commented Aug 3, 2026

Copy link
Copy Markdown
Contributor Author

We discussed this and I think it makes sense to dive a little deeper and understand why the bug happens anyway.

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants