Experimental bitstream compression support#2060
Conversation
|
@kgugala - Could you take a look? |
|
@LAK132 thanks for the PR, It seems the CI is red. There is a lot compilation errors like: You mentioned that you had to change C++ standard. @LAK132 which standard did you use in your local build? |
|
I just moved the standard setting thing to the top of the script, it's still C++14. one of the dependencies didn't like that the standard wasn't being set before it was compiled, so I moved it. I'll take a look at those errors, must be coming from something I didn't try to build |
|
looks like all the databases (artix, zynq, kintex and spartan) builds failed with: in the Since all the DB builds fail with the same error, I suspect the changes in the tools trigger this. @LAK132 can you check this? |
|
I'm struggling to get the environment set up for running these tests on my local machine. if it wasn't the fasm2frames changes then I haven't the slightest clue what could be happening |
|
@LAK132 - If you are having issues getting the tool / testing environment setup, please log github issues and we will try and improve both the instructions and the process. |
|
fuzzers/005-tilegrid/bram_block/build_xc7a100tfgg676-1/segbits_tilegrid.tdb has no candidates entries: |
|
I narrowed down the problem to the |
|
@LAK132 This change in configuration.h looks suspicious to me, it possibly has different semantics than the original code: |
|
@LAK132 Here are two example bitstreams which show the difference: |
Technically true. Previously if that address had already been written to it would overwrite it, whereas with |
|
Also it looks like with that example data, it's the -good output that has the extra data, not the -bad output? Were these outputs made with or without compression enabled? |
|
@LAK132 Sorry, I was wrong, the original bitread has the extra bits (green parts above), the bitread of this branch does not have them. So you are right, the -good output has the extra data. |
|
@LAK132 I think all the vivado runs in the fuzzers have no bitstream compression. |
|
@LAK132 Here is a 'good' version of bitread for comparison |
|
@LAK132 So the way to go would be:
|
|
|
|
@LAK132 Did that fix the bitread results? |
|
It should have, the uncompressed codepath should be practically untouched now |
|
Can you test it? End of the day for me here... |
|
The bitread output appears to be the same as the known good version with my test core project. I still haven't managed to run any of the other tests myself. |
|
@LAK132 OK great let's wait for the CI then |
|
@LAK132 Good news, the changes work well here on my machine. I added a temporary PR (see below) to run the full CI on this build. @kgugala @mkurc-ant Can we run the CI on this? |
|
@LAK132 CI results look great! (Only the gtp-common-pips fuzzer is red, but that one is notoriously flickering) @mkurc-ant @kgugala Ready for review! |
|
@tmichalak Would it be possible to run the CI on this branch? |
|
I have kicked off the CI and invited LAK132 to be a contributor so that the CI should run automatically from now on. |
Signed-off-by: Lakira Ashley <lakridesagain@gmail.com>
Signed-off-by: Lakira Ashley <lakridesagain@gmail.com>
Signed-off-by: Lakira Ashley <lakridesagain@gmail.com>
Signed-off-by: Lakira Ashley <lakridesagain@gmail.com>
Signed-off-by: Lakira Ashley <lakridesagain@gmail.com>
|
Is there a reason the tests were cancelled? Did they just time out? |
they should not timeout. I've restarted them |
|
All green now, anything else I need to do? |
|
Any update on this? |


This PR adds an option to compress bitstreams. Tested with an XC7A200T(FBG484-2) (MEGA65 R3).
This is needed for using open tooling with the MEGA65 as the uncompressed bitstreams are too large to fit in the core slots.
With the cores I tested this with, the compression step didn't seem to have any noticeable impact on build times.