Closed imphil closed 3 years ago
Should we consider this as a requirement for November? Requiring people to follow our documentation and use 2018.3 seems a little bit off to me.
I'd vote for trying it out and see what happens :)
On Fri, Aug 16, 2019 at 8:16 AM Tobias Woelfel notifications@github.com wrote:
Should we consider this as a requirement for November? Requiring people to follow our documentation and use 2018.3 seems a little bit off to me.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/lowRISC/stwg-base/issues/661?email_source=notifications&email_token=AAH2RSVCIROWTCLC76ISB7TQE3AEVA5CNFSM4H32XR3KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4O4TJQ#issuecomment-522045862, or mute the thread https://github.com/notifications/unsubscribe-auth/AAH2RSWMKCPMUQ2L7C3NVTTQE3AEVANCNFSM4H32XR3A .
I tried it and it crashes while synthesizing. But I am using Arch Linux and there are some known problems with Vivado. So it might be good if someone with Ubuntu could give it a try as well.
runme.log
INFO: [Synth 8-294] found qualifier unique on case statement: implementing as parallel_case [build/lowrisc_systems_top_earlgrey_nexysvideo_0.1/src/pulp-platform_riscv-dbg_0.1_0/pulp_riscv_dbg/src/dm_mem.sv:314] Abnormal program termination (11) Please check 'build/lowrisc_systems_top_earlgrey_nexysvideo_0.1/synth-vivado/lowrisc_systems_top_earlgrey_nexysvideo_0.1.runs/synth_1/hs_err_pid4983.log' for details Parent process (pid 4983) has died. This helper process will now exit
hs_err...log
An unexpected error has occurred (11) Stack: /usr/lib/libc.so.6(+0x3a7e0) [0x7f767b3c17e0] /opt/xilinx/Vivado/2019.1/lib/lnx64.o/librdi_synth.so(ElabSvlgScope::subprogramScope() const+0x2d) [0x7f76403f79dd] /opt/xilinx/Vivado/2019.1/lib/lnx64.o/librdi_synth.so(ElabSvlgScope::addRhsDecl(ElabSvlgDecl*)+0x17d) [0x7f76403f8a8d] /opt/xilinx/Vivado/2019.1/lib/lnx64.o/librdi_synth.so(ElabSvlgScope::cleanup()+0x72) [0x7f76403fbd22] /opt/xilinx/Vivado/2019.1/lib/lnx64.o/librdi_synth.so(ElabSvlgScope::~ElabSvlgScope()+0x1e) [0x7f76403fc68e]
@tomroberts-lowrisc experienced the same problems with Ubuntu 18.04. So clearly not usable yet. (Tom, did you use 2019.1.2?)
So to summarize: Vivado 2019.1 doesn't work at the moment. I googled and didn't find this bug reported on the Xilinx forums so far, so we should do that to increase the chances of it getting fixed in a subsequent release.
Next steps:
Ram, is this something you and Ohad have time to try out?
Tim, this should be possible
On Tue, Sep 17, 2019 at 2:31 PM tjaychen notifications@github.com wrote:
Ram, is this something you and Ohad have time to try out?
— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/lowRISC/opentitan/issues/89?email_source=notifications&email_token=ALULWCMY3W6ULJMRDC37WBDQKFEDVA5CNFSM4ISTSWYKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD657AOQ#issuecomment-532410426, or mute the thread https://github.com/notifications/unsubscribe-auth/ALULWCJNOIU4MNRW6VPUHNLQKFEDVANCNFSM4ISTSWYA .
With Vivado 2019.1.2
From this , it looks safe to upgrade...
@rpenugo do you want to go ahead and update the instructions?
Also, is the newer version more stable with the command line programming command? Or are we pretty constrained by the GUI still?
@tjshep will want to know this information...
With Vivado 2019.1.2
So they might have fixed something and not documented it? They still recommend using 2019.1: For customers using these devices, Xilinx recommends installing Vivado 2019.1.3. For other devices, please continue to use Vivado 2019.1.
I will try 2019.1.3 and also try the command line installation as I did not do this with 2019.1.
Building with Vivado 2019.1.3 was successful as well.
For reference the instructions I used to install Vivado after I downloaded the files from the website
$ chmod u+x Xilinx_Vivado_SDK_Web_2019.1_0524_1430_Lin64.bin
$ ./Xilinx_Vivado_SDK_Web_2019.1_0524_1430_Lin64.bin --keep --noexec --target vivado2019.1
$ cd vivado2019.1
$ ./xsetup -b AuthTokenGen
$ #Enter user name and password
$ ./xsetup --agree 3rdPartyEULA,WebTalkTerms,XilinxEULA --batch Install --edition "Vivado HL WebPACK" --location "/opt/xilinx"
$ tar -xf Xilinx_Vivado_SDx_Update_2019.1.3_0904_0930.tar.gz
$ cd Xilinx_Vivado_SDx_Update_2019.1.3_0904_0930
$ ./xsetup -b Update
2019.1.3 worked for me too (Ubuntu 18.04)
Sounds good, I will update the pointers in doc (to recommend using 2019.1.3) and we can close this
On Mon, Sep 23, 2019 at 5:06 AM Tom Roberts notifications@github.com wrote:
2019.1.3 worked for me too (Ubuntu 18.04)
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/lowRISC/opentitan/issues/89?email_source=notifications&email_token=ALULWCPVFMSKIOYEIWCGR4LQLCWL7A5CNFSM4ISTSWYKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7KUGRY#issuecomment-534070087, or mute the thread https://github.com/notifications/unsubscribe-auth/ALULWCI2PKLKXE573Y4N4XLQLCWL7ANCNFSM4ISTSWYA .
Please do file such a PR, but we should block merging it until we update the CI runner so it has this version of Vivado available. We will need to decide a more robust policy for when to bump the minimum recommended Vivado version post-launch, but I'm happy for us to take the opportunity to upgrade now while there are fewer stakeholders. Adding this Vivado version to the CI machine is a task I'll need to do.
Spoke too soon I guess ... noticing synthesis crashes on ToT builds with 2019.1.2
OK, the problem that @towoe is still present for me on 2019.1.3. Opened a Xilinx bug report at https://forums.xilinx.com/t5/Synthesis/2019-1-3-Abnormal-program-termination-11-in-ElabSvlgScope/m-p/1027048, let's see what happens there.
Following @imphil's latest test I wanted to make sure my previous reply was valid so I tested Vivado 2019.1.3 again on the latest master (25eb480) and it failed as well! So I checked building with the revision I used the last time (06cad69) and creating the bitstream was working. I would assume the problem exists in all Vivado 2019.1.x versions but occurs only in certain designs. Let's see what the result of the bug report is.
Some more debugging:
dm_mem
being processed.set_property elab_link_dcps false [current_fileset]
) does make the crash disappear:
. I can get down to a bitstream using this setting.So what to do next?
So I'm just going to wait until we go public and then report this to Xilinx again. If we run into issues with 2018.3 that force us to switch to 2019.1, we can use the workaround as shown above.
We have a PR with documentation on how to use Vivado 2019.1 at https://github.com/lowRISC/opentitan/pull/331. This can be re-opened once we have a confirmed working version of that tool.
@imphil thanks for investigating!
cc @rpenugo @gorusso in case you guys have other ideas.
Thanks @imphil for debugging. I guess we should put a note into the documentation marking Vivado 2019.1 not compatible and either with your description on how to circumvent the error or a link to the issue?
Good point. Let's just mark it as not compatible and link to this issue. Mind doing a PR for that?
I don't mind, will update the doc!
Seems like this issue can be marked as closed?
I think this issue should be kept open. We still should be able to use the latest Vivado version at some point in the future. And to keep track of the problem this issue is linked to from the documentation.
Ok, SG. Thanks for your input Tobias.
Has this issue (with 2019.1) been reproduced on 2019.2 (released recently) as well? Was just getting started and from the docs page it wasn't clear if I can start with the most recent version
@rajesh-s, thanks for bringing this up. 2019.2 has not been tested by us. We recommend to use 2018.3. But if you want to test 2019.2 we would be happy get feedback on that.
I did one successful build over the weekend with 2019.2 (because the Xilinx installer was unable to download 2018.3). But from the hit-and-miss with 2019.1 that probably isn't enough to tell.
@mdhayter I'm new to this project. Just started reading the docs yesterday. What FPGA board are you using?
He used the Nexys Video board
Vivado 2019.1 is out and the release notes seem pretty promising.