*** tpb <[email protected]> has joined #symbiflow | 00:00 | |
*** theNick <[email protected]> has joined #symbiflow | 15:17 | |
theNick | Hi guys, I hope this is the right place for my question! First, awesome work! I have a question about project x-rays bit2fasm feature where I wasn't able to find an answer in the docs (or in the code). When I run bit2fasm on a Vivado encoded bitstream it will yield the correct FASM file. | 15:28 |
---|---|---|
theNick | But the LUT INIT values between the FASM representation and what Vivado shows in the GUI (or the HDL code, if one forces a full LUT6/5 with correct pin mapping and without optimizations) differ. Any idea what is happening there? Do you guys have any pointers on this / know what I am missing? First thing that comes to mind is that Xilinx obfuscates | 15:28 |
theNick | the LUT Init values and the FASM stays true to the bitstream values. Thanks in advance! | 15:28 |
tpb | <gatecat> theNick: are you sure you are accounting for the LUT permutation correctly? that's the most likely reason for shuffled init values | 18:58 |
theNick | tpb Thanks for the fast answer! :) I'm pretty sure I do not account for that at all. Do you have a link / resource to catch up on this topic? It sounds like it should be pretty obvious, but I am kind of stuck to my embarrassment | 19:30 |
tpb | <gatecat> Vivado will in general swap inputs around and it's important to make sure that you are following the hardware inputs correctly when determining the init values | 19:33 |
tpb | <gatecat> "correct pin mapping" sounds like you're trying to lock the pin mapping to prevent this; is this actually confirmed opening up the post-PnR design ? | 19:33 |
theNick | Ah, yes. I was assuming that the INIT value that is displayed in Vivado is already adjusted for eventually swapped pin assignments. And yes, I tried to exclude that case by locking the pin mapping - I'm gonna double check if that is really the case. | 19:36 |
theNick | But I gather from your answer that the INIT values in the FASM and in Vivado should match, once corrected for pin assignments? | 19:36 |
tpb | <gatecat> Yeah; they should - also note that for anything smaller than a LUT6 it will be duplicated up to a LUT6 (i.e. unmapped pins are treated as don't cares when calculating the 'physical' 64-bit init value) | 19:38 |
theNick | Great to hear! Then I'm gonna tinker away and see if I can find the culprit. Thanks a lot tpb! | 19:42 |
tpb | <gatecat> it's gatecat here, tpb is the name of the Slack-IRC bridge bot :D | 19:43 |
tpb | <gatecat> (I'm on the IRC side of the lake) | 19:43 |
theNick | I was already wondering why the nick doesn't match :D Have a good evening :) | 19:45 |
*** theNick <[email protected]> has quit IRC (Ping timeout: 90 seconds) | 21:37 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!