3 ms·
I find vivado will often break my project (usually the axi bus config breaks, and I have not found any way to fix it). The best solution I have found is to use
by Ballas 6y ago
I find vivado will often break my project (usually the axi bus config breaks, and I have not found any way to fix it). The best solution I have found is to use TCL to regenerate the project. You can generate a TCL script of your existing project. I have not tried it, but you might be able to use normal version control tools like git with the TCL script - the usefulness will depend on if things stay in the same order after an update.
- gpanders 6y agoI have tried both versioning the entire "raw" block design files and it is a mess. Vivado creates a ton of files and it's not clear which ones you need in version control in order to regenerate the BD from a fresh clone, and many of the files that you do need get modified anytime the block design is used to build the design which causes git to report file modifications. All in all, I don't recommend it. However, managing a Tcl script is very doable, and this is my preferred method now. This has some drawbacks too of course -- you have to ensure that you use the same arguments to the `create_bd_tcl` command every time you update your script, and if you need to make any modifications to the script then you need to have a process for doing that. But it's much better than the alternative.
- jeffreyrogers 6y agoThis is pretty much what we settled on where I work as well after experiencing the problems you mentioned in your first paragraph.