UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Adventurer
Adventurer
473 Views
Registered: ‎05-09-2018

Re: Vivado 2018.3 write_bitstream hangs

@marcb After multiple tries I was able yo upload the report. If you prefer I can do the comparison. Not 100% sure what to look for but something might stand out.

0 Kudos
Xilinx Employee
Xilinx Employee
454 Views
Registered: ‎05-08-2012

Re: Vivado 2018.3 write_bitstream hangs

Hi @stfarley.

Thanks for the additional file. So far, I do not see any difference from comparing the environment report with my CentOS 7.4 machine. I also took the Journal file (vivado.jou), and created a script from this, which completed successfully. 

 

Does write_bitstream hang if you open the implemented design, and enter write_bitstream into the Tcl console?

Does the -verbose option provide any more information?

Also, do you notice the OOC IP being refreshed after starting implementation? This does not appear to be the correct behavior, and there are IP messages around the hang point, so this might be related.

I did find one warning past the hang point.

WARNING: [DRC ZPS7-1] PS7 block required: The PS7 cell must be used in this Zynq design in order to enable correct default configuration.

Can you try disabling this DRC?

set_property IS_ENABLED FALSE [get_drc_checks ZPS7-1]


-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

---------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
---------------------------------------------------------------------------------------------
Adventurer
Adventurer
439 Views
Registered: ‎05-09-2018

Re: Vivado 2018.3 write_bitstream hangs

Thanks for checking that.

Yes it hangs if I run it from the tcl console as well. If I select cancel on the popup window I get this message.

INFO: [Common 17-41] Interrupt caught. Command should exit soon.

But The cancel never completes. I need to exit Vivado to kill it.

- verbose 

I do see it running the the OOC refresh on the test project every time I run implimentation. There is something strange going on there. If I reset the implimentation and re-run it, the OOC is refreshed but the synth goes out of date, implimentation runs without re-runing synth. (Perhaps this is an unrelated tool bug). Run impl a second time and everything gets run. It as soon as I run any process everything goues out of date.

@marcb are you seeing this behavior?

The set property suggestion had no effect.

 

 

 

 

0 Kudos
Adventurer
Adventurer
417 Views
Registered: ‎05-09-2018

Re: Vivado 2018.3 write_bitstream hangs

@marcb

Thanks so much for spending time looking at this.

So we got to the point where we are both running 2018.3 on centos 7.4 with an equalent environment and the same project and getting different results. So something else must be different.

I am running Centos 7.4 in a parallels desktop VM on an Imac.

(My main build machine is native centos 7.6 and exhibits the same behavior)

My tools are launched from an NFS share so that I can get the same tool install everywhere.

I did do a fresh re-install of the tools.

One issue here is the the installer fails to set the file permisions correctly. (The Top install directory and the setup scripts get set to root only access). This has been an issue for years. I just fix the permisions after installing. Perhaps something is still wrong there, I don't see anything though and I tried running it as root?

 I have been running with the -verbose flag, that doesn't seem to show anything new.

BTW when I try and build with a real project I am not seeing the OOC and synth out of date issues, so that may be limited to the test case.

Thanks again,

 

 

0 Kudos
Adventurer
Adventurer
402 Views
Registered: ‎05-09-2018

Re: Vivado 2018.3 write_bitstream hangs

Finally got something working using the same Vivado install and project but running it on a new ubuntu 18.04 install.

So it is defintately something in the Centos 7 environment.

0 Kudos
Xilinx Employee
Xilinx Employee
391 Views
Registered: ‎05-08-2012

Re: Vivado 2018.3 write_bitstream hangs

Hi @stfarley.

Is there a steps to reproduce file (.str) in the project directory that could also be sent? This might have more information on the last process that Vivado is trying to complete when the hang occurs.

Does any Vivado example design exhibit this behavior, or is this design specific?

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------

---------------------------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
---------------------------------------------------------------------------------------------
0 Kudos
294 Views
Registered: ‎07-19-2018

Re: Vivado 2018.3 write_bitstream hangs

I apologise if this turns out to be spurious, but I'm finding something similar in Vivado 2018.2, on Ubuntu 16.04.5. The write_bitstream process hangs after the message

INFO: [IP_Flow 19-2313] Loaded Vivado IP repository '/opt/Xilinx/Vivado/2018.2/data/ip'.

In my case, the process does continue after some minutes and the bitstream is successfully generated.

I did a bit of exploring and found, using netstat, that a Vivado process is trying to establish a TCP connection to 169.254.169.254 which doesn't exist on my network (it's a link-local IPv4 address). Further exploring with gdb showed that one of the Vivado threads is blocked in a call to poll(). The top part of the stack trace looks like this:

(gdb) bt
#0 0x00007fb159a5374d in poll () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007fb1557d7944 in Curl_poll () from /opt/Xilinx/Vivado/2018.2/lib/lnx64.o/librdi_commonxillic.so
#2 0x00007fb1557d11cc in curl_multi_wait () from /opt/Xilinx/Vivado/2018.2/lib/lnx64.o/librdi_commonxillic.so
#3 0x00007fb1557cbe2f in curl_easy_perform () from /opt/Xilinx/Vivado/2018.2/lib/lnx64.o/librdi_commonxillic.so
#4 0x00007fb1557c5146 in XilCharSetTools::isLatin() () from /opt/Xilinx/Vivado/2018.2/lib/lnx64.o/librdi_commonxillic.so
#5 0x00007fb1557c8f12 in XilCharSetTools::isChinese() () from /opt/Xilinx/Vivado/2018.2/lib/lnx64.o/librdi_commonxillic.so

Examining /opt/Xilinx/Vivado/2018.2/lib/lnx64.o/librdi_commonxillic.so, I found that there's a hard-coded URL referring to the IP address in question:

0023ff00 68 74 74 70 3a 2f 2f 31 36 39 2e 32 35 34 2e 31 |http://169.254.1|
0023ff10 36 39 2e 32 35 34 2f 6c 61 74 65 73 74 2f 64 79 |69.254/latest/dy|
0023ff20 6e 61 6d 69 63 2f 69 6e 73 74 61 6e 63 65 2d 69 |namic/instance-i|
0023ff30 64 65 6e 74 69 74 79 2f 64 6f 63 75 6d 65 6e 74 |dentity/document|

Maybe trying to get this URL is what triggers the connection attempt. Once the attempt to connect 169.254.169.254 has timed-out, the write_bitstream process continues normally.

I'm not sure what leads Vivado to trying to make this connection in the first place - maybe something in the environment or some setting I can't guess at - but it seems very odd that there should be a hard-coded URL referring to a link-local address in the code at all.

 

0 Kudos