cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
skoehler
Observer
Observer
2,797 Views
Registered: ‎05-25-2018

Vivado 2018.3: Clocking Wizard is broken

I just upgraded to Vivado 2018.3 a few minutes ago. Most of my projects don't work anymore, since the Clocking Wizard IP Core throws some errors. I believe the error is related to using commas instead of decimal points in some TCL code. When upgrading my block designed from 2018.2.2, the Clocking Wizard Block is destroyed.

Anyhow, the following minimal steps are required to reproduce the issue:

  1. Create a new project in Vivado 2018.3 for the Zynq 7010clg400-1 device
  2. Create a a new block design
  3. Add the Clocking Wizard IP Core to the block design (this will fail with some errors).

I'm using Linux and my system is configured to use the German language, i.e. I have LANG=de_DE.UTF-8.

If I switch to LANG=en_US.UTF-8 and restart Vivado with that setting, then I can actually add a clocking wizard to my design. But I have not tried to generate the bitstream. This issue did not exist with Vivado 2018.2.2.

This is not the first time I have seen locale-related issues in Vivado.

Please advise how to proceed. We want to switch to 2018.3 for our project since we need other import bug fixes.

0 Kudos
Reply
12 Replies
skoehler
Observer
Observer
2,768 Views
Registered: ‎05-25-2018

So I created a block design with LANG=en_US.UTF-8 and that worked.

However, when I restart Vivado 2018.3 with LANG=de_DE.UTF-8, everything seems alright -- until I try to edit the frequency of the output clocks. Then I get the following Tcl error:

Tcl error in validate procedure while setting value '80' on parameter 'CLKOUT1_REQUESTED_OUT_FREQ'. unexpected "," outside function argument list in expression "1000.000 / 2,155".

So I assume the second number is supposed to be 2.155, however, the Tcl code seems to use the German locale to generate the number string, and that back fires when the string is parsed again.

0 Kudos
Reply
vanmierlo
Mentor
Mentor
2,543 Views
Registered: ‎06-10-2008

Not only the Clocking Wizard, but also the Clock Configuration of the Zynq itself suffers from this. This used to work on older versions of Vivado irrespective of locale settings. Programming languages SHOULD NOT USE locale settings for calculations!

Btw. On Windows it works correct even though my locale settings use a , for decimals.

0 Kudos
Reply
vanmierlo
Mentor
Mentor
2,538 Views
Registered: ‎06-10-2008

Oh wait, if I open the Language Settings of my (Ubuntu 16.04) Linux installation it warns me that "the language support is not installed completely". If I then let it install the missing pieces, but change nothing! it starts to work correctly.

I wonder why Ubuntu didn't install the language support completely in the first place.

0 Kudos
Reply
skoehler
Observer
Observer
2,520 Views
Registered: ‎05-25-2018

i'm sorry, but when Ubuntu tells you that "the language support is not installed completely", it most likely referrs to the fact that some firefox language support packages were missing. The libc language files were installed properly already.

After I have been hit by the problem above, I have switched Vivado back and forth between German and English language settings (simply by override all language related environment variables in Vivado's start script) and it's **bleep**ing mind-boggling when this problem happens and when it doesn't. I certainly reset the projects, but I can't tell when the issue happens and when it doesn't. So as far as I can tell, the issue might reappear in your next project.

Also, since Xilinx chooses to pass strings around, this problem is what you get when you use locale-aware functions to generate strings in combination with locale-ignorant functions to parse them. And there seems to be no QA at Xilinx to avoid this issue.

The Windows version of their TCL runtime is probably not aware of the Windows language settings. So all Windows users can sleep tight while we Linux users have nightmares about the next language-related issue.

0 Kudos
Reply
vanmierlo
Mentor
Mentor
2,515 Views
Registered: ‎06-10-2008

No, it installed a lot more than just firefox packages, also some pretty generic looking ones. And it also triggered something to reconfigure the locale settings like dpkg-reconfigure would do.

I'm not saying it won't come back, but so far this fixed it for me instantly.

If it doesn't work for you and if it's any consolation, you have my sympathy.

0 Kudos
Reply
vanmierlo
Mentor
Mentor
2,464 Views
Registered: ‎06-10-2008

I have now tried with the Clocking Wizard and there the problem indeed persists. So only the Zynq Clock Configuration was fixed by those install steps.

0 Kudos
Reply
sya0
Visitor
Visitor
2,444 Views
Registered: ‎05-31-2018

I have the same issue. Can you fix it? Even though my language installations are already done the same error still occurs. Does anyone have any clue?

0 Kudos
Reply
michielm
Contributor
Contributor
2,154 Views
Registered: ‎10-10-2018

It has to do with the locale settings. When setting all locales environment variables (LC_TYPE, LC_NUMERIC etc) to en_US.UTF-8 I think I was able to solve the problem (Probably LC_NUMERIC is key to the problem) . I believe also running vivado like this should fix the problem:

LC_ALL=en_US.UTF-8 vivado&

skoehler
Observer
Observer
2,137 Views
Registered: ‎05-25-2018

There are many variables on Linux to set the locale. In my case, it would be LANG=en_US.UTF-8

Anyhow, setting the english locale fixed the problem for me as well. The question still is: why is Vivado sensitive to the locale? It shouldn't be! Certainly not in automated scripts.

gustoff
Participant
Participant
1,310 Views
Registered: ‎07-07-2016

I got this error on Vivado 2019.2. I used XUbuntu 16.4 with full english locale.

But your solution (launch Language Support and complete installed  the language packets) was work for me. Thanks!

angelo_
Newbie
Newbie
196 Views
Registered: ‎02-07-2021

Hi,

I had exactly the same Issue but on UBUNTU 18.04, VIVADO 2020.2, solved with the Language Support (and checking the use of "," and ".").

You can spot in my case a cue inside a pop-up message inside the Clockwizard...

Still this is annoying and not a good sign (I'm working on safety critical software and this kind of bugs can have disastrous consequences)

Best Regards

 

a.

drjohnsmith
Teacher
Teacher
194 Views
Registered: ‎07-09-2009

IMHO

AMD / Xilinx suffers from being an American company in this respect.

Now if the local problem had been say Chineese, then the outcone would in my opinnion be different,

   I'm nominally in the UK, that speak "the same language" as the US

       we still have localisation problems with Xilinx tools over the decades.

The only answer I have seen that continues to work is to do as it seems Xilinx test, set you machine to be in the US.

 

 

<== If this was helpful, please feel free to give Kudos, and close if it answers your question ==>
0 Kudos
Reply