-
Notifications
You must be signed in to change notification settings - Fork 768
CTS: fix the correct value of max fanout #9259
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CTS: fix the correct value of max fanout #9259
Conversation
…out for a buffer Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
There was a problem hiding this 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 correctly adds a check for the max fanout limit set on the top-level design, which was previously ignored. While this is a good fix, I've found a critical logic issue in how the fanout limit is handled when a buffer is considered invalid. The current implementation could lead to either ignoring the top-level fanout limit or using an incorrect maximum value. I've provided a suggestion to fix this, ensuring the fanout constraints are applied correctly and consistently.
|
clang-tidy review says "All clean, LGTM! 👍" |
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
|
clang-tidy review says "All clean, LGTM! 👍" |
|
Is there a metrics PR that goes with this? |
Signed-off-by: luis201420 <[email protected]>
Signed-off-by: luis201420 <[email protected]>
Yes, metric updates are needed in some designs. I created a PR with the updates. |
Signed-off-by: luis201420 <[email protected]>
|
clang-tidy review says "All clean, LGTM! 👍" |
|
I assume it is The-OpenROAD-Project/OpenROAD-flow-scripts#3823 |
Some designs define the max fanout using the
set_max_fanout VALUE [current_design]command (whereVALUEis the defined fanout value), which adds a fanout limit to the top instance rather than a specific buffer. The CTS only checked if the selected buffer had a defined fanout limit, ignoring whether the top instance had a defined fanout limit.This PR adds a check to consider whether the top instance has a defined fanout limit.
In the results, the following designs show a significant degradation in their metrics:
-sky130hd/microwatt: