As with all software, Vivado has a number of “features” which you will sometimes have to deal with. This page is to help with a number of commonly encountered issues you may need to understand.
Sometimes your design will not compile and gives elaboration errors. How to debug this case?
Elaboration errors occur when the syntax of all your files are correct (no missing semicolons or keywords) but when the simulator tries to wire all your modules together into a complete design it had a problem. Typical errors are wrong numbers of ports when you instance something, referencing a module not in your project, …
If there is an elaboration error, it will give a filename. Go open that file (File→Text Editor→Open File) and see what the error message is.
Before implementing anything in this section remember that anytime you make a change to your verilog code the simulation needs to be rerun. Your code describes your circuit and if you change it you change the circuit you are simulating.
It sounds cliche, but it often works. Sometimes relaunching the simulation isn't sufficient and the old simulation needs to be closed by exiting out of the simulator completely. To do this, what we mean is this:
- When you are simulating, a blue bar appears near the top of the window that is labelled “Simulation”. - There is an 'X at the right end of that bar. - Click that 'X'. - Now, run the simulation again.
Or, you may need to completely exit Vivado and restart it.
This is a common problem. Make sure there is only one copy of Vivado running. Sometimes the GUI will be gone but there is a Vivado process running. You can run “Task Manager” in Windows and look for a Vivado process if nothing else works. If you find any Vivado processes running, kill them. If you don't have permissions to kill them (they are left from some other user - should never happen), power cycle your entire machine.
Note: This should have already been done if you followed all of the instructions in the Creating a new Vivado Project tutorial.
Run the following command in the tcl console:
set_property INCREMENTAL true [get_filesets sim_1]
OR do the following steps:
This entails deleting everything in your project EXCEPT the project file (.xpr extension), your design sources (the .sv files), and your TCL files.
This is DANGEROUS in that every semester a few students mistakenly delete all their source files when they do this. Before doing so, make a copy of them somewhere safe (emailing them to yourself is a good option).
Sometimes you will get errors about not being able to delete some files - this can be a sign that multiple Vivado processes are running. See above to fix.
We have seen cases where the only thing that fixes it is to create a new project with the same files. Here are the steps to do so:
At this point you have a clean project with just the files you need.