-
Notifications
You must be signed in to change notification settings - Fork 121
Fix DesignTools.getConnectionPips for sinks driven by lut constant generators #1231
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
base: master
Are you sure you want to change the base?
Conversation
Signed-off-by: ReillyMcK <[email protected]>
4ff83d1 to
a342b95
Compare
|
Thanks @reillymck, will take a look next week. |
|
Hi @reillymck. Thanks for your contribution! Can you build a test or share a testcase which exhibits the problem that you are solving here please? As an example, the test for bidir PIPs here: RapidWright/test/src/com/xilinx/rapidwright/design/TestDesignTools.java Lines 1416 to 1450 in 4e804cf
Also, wouldn't this affect all nets that don't have bidir PIPs, rather than just static nets? |
|
Hey @eddieh-xlnx, thanks for the feedback. Also, sorry for the delayed response. |
|
@eddieh-xlnx I was wondering what I needed to do to get this merged in. Do I need to add a full test case in TestDesignTools? |
|
Sorry that I haven't gotten to this. A test would certainly help me understand what the problem you're trying to solve is. It would be good to extract the relevant subtree from the relevant net of the DCP using https://github.com/Xilinx/RapidWright/blob/master/src/com/xilinx/rapidwright/util/CodeGenerator.java |
Related to my issue #1228, I was tracing backwards from the sinks of the LUT constant generator in the static site. I wanted to use DesignTools.getConnectionPips() as a way to trace back to the SitePinInst of the driving site. This function failed as the biDir list is null and the current pip in the iteraction does not equal the source node of the global constant net. I assume in general this function will fail for SitePinInsts that are driven by LUT constant generators. I added some code to fix this.