pico
pico

Reputation: 1910

vivado block designer not updating RTL interface in block design after modifying verilog or vhdl RTL files

I would swear that vivado has a bug in that it never refreshes any interface changes made to an RTL file, verilog or vhdl, after it has been pasted into the "block design" with "add module"....

What the secret to get Vivado block designer to see file changes made to the interface of verilog or vhdl files imported into a "block design"?

Then you try to brute force it by deleting the "rtl module" from the block design, but somehow its still cached and doens't see it, so then you end up destroying your project and setting it up again because vivado is such POS tool...

So my question is where is the secrete reset button in the software to get it to see rtl interface changes in the "block design" without out obliterating your vivado project and starting over again?

is it some tool command or menu item you need to select?

Upvotes: 3

Views: 3672

Answers (2)

pico
pico

Reputation: 1910

To Refresh RTL after updating it in IP integrator:

Select RTL block in IP Integrator, right click on it and select "Refresh Module".

Refresh RTL Block from IP integrator

Upvotes: 1

Oldfart
Oldfart

Reputation: 6269

Without working my way through all your settings I can't see what is wrong so the best I can do is suggest. (And yes, I use Vivado on a daily basis)

I have not seen what you describe. In fact as soon as I save a file Vivado picks up that there are changes and tells me that everything is out of date. It then wants me to re-run all synthesis, P&R etc.

Check you settings:
In settings, Tool settings, Source code there is a tick box for "Copy source files into project" and "Add sources from subdirectories" Those should be off.

I must admit that on rare occasions Vivado gets "confused." This is with a source file open in a window. If the file has changed and it has syntax error(s) it keep showing the old file on the screen and re-using the (correct) old file. Closing the window often helps.

As a last resort you can clear your Vivado work space. Keep the project (xpr) file!, waveform and constraint files, but delete all directories. You will lose all IP it has made and all synthesis has to be re-run. But I rarely do that.
Do NOT do this if you have an SDK project as your sources file are in a subdirectory there too! But as a good programmer you make backup of those of course....

Upvotes: 2

Related Questions