est: Add utility to query resistance between pins #8145
est: Add utility to query resistance between pins #8145openroad-ci wants to merge 3 commits intoThe-OpenROAD-Project:masterfrom
Conversation
Signed-off-by: Martin Povišer <povik@cutebit.org>
Signed-off-by: Martin Povišer <povik@cutebit.org>
Add `est::sum_point_to_point_resist` to sum the total parasitic
resistance between two connected pins. See below for sample output.
>>> est::report_net_parasitics [get_net _096_]
Net _096_ 0.493
Nodes:
[redacted]
Resistors:
1 _462_/Y _096_:8 0.045
2 _096_:8 _096_:10 0.041
3 _096_:10 _096_:14 0.024
4 _096_:14 _096_:18 0.040
5 _096_:18 _096_:22 0.040
6 _096_:22 _626_/A 0.031
7 _096_:14 _504_/B 0.017
Coupling Capacitors:
>>> est::sum_point_to_point_resist [get_pin _462_/Y] [get_pin _504_/B]
125.927605
Signed-off-by: Martin Povišer <povik@cutebit.org>
|
clang-tidy review says "All clean, LGTM! 👍" |
|
I've included some extra changes to move helpers from rsz which are est related and a small code tweak. FYI @eder-matheus |
|
In your example the res are all < 0.1 but the sum is 125? Is there a units issue? |
|
Yes, I think the report is user facing and might be using kohms while the query utility is internal and returns ohms. |
|
The path between the two pins is the sum of that is 0.045 + 0.041 + 0.024 + 0.017 = 0.127. The 0.127 ~ 0.126 discrepancy should be due to rounding in the net report. |
|
The CI failure is a test timing out: @maliberty Have you seen that elsewhere? I don't think I'm changing anything in use by that test. |
maliberty
left a comment
There was a problem hiding this comment.
I realize this is just a developer debug tool but it would be nice to have one simple test.
| ParasiticNode* upstream_node, | ||
| ParasiticNode* node, | ||
| ParasiticNode* target, | ||
| std::set<ParasiticNode*> on_stack) |
There was a problem hiding this comment.
Pass by reference to avoid copying
|
Seems to have gotten lost.... |
Add
est::sum_point_to_point_resistto sum the total parasiticresistance between two connected pins. See below for sample output.