12-27-2017 12:39 PM
I have a running and quite complicated block design in Vivado. I am performing changes in the block design (like updating an IP block generated with HLS) but the changes seem to not be updated on SDK. The steps I do are these:
I have had this problem since the beginning when I was using 2014.x and now using 2017.2. So what I did previously was that even if SDK updates the application project with the modified bitstream, I created a new application project every time, and that worked.
I did similar in Vivado. if I had a working block design and I had to do some major changes, I created a complete new project rather than creating a new block design in the same project.
But recently I decided to give it a try because of the complexity of the project I am working on. So I created a new block design in the same Vivado project when I had to do a major change, copying the blocks from the working block design I already had. It seemed to work but only after creating the HDL wrapper, setting the design as top, generating the bitstream, exporting the hardware and creating a new software application (with a new BSP) from the newly created hw platform.
However, after doing some modifications to the block design, it seems that it is programming the old bitstream even though I have created a new application software using the new design HW platform, creating a new BSP as well and selecting the new hw platform. But it simply does not updates the changes made on the hardware.
Can someone write down all the intermediate steps so I see what I am doing wrong? Because I think I do all the steps properly. So either is me or Vivado who has bugs.
12-28-2017 12:32 AM
@cerilet From my experience, yes, the upgrade is not perfect.
What I do:
- disable automatic rebuild in SDK
- close SDK
- generate & export bitstream
- open SDK, wait for parsing to finish
- clean BSP & project
- right click BSP, regenerate sources
- rebuild BSP/project
Note that the SDK itself warns you it will NOT rebuild any link scripts, you will have to modify it by hand.
What I end up doing if a link script build is needed is to create a new Hello World project and then use a merge tool/emacs to copy/paste the relevant sections to the old project.
12-29-2017 10:15 AM - edited 12-29-2017 10:16 AM