• 0
Jan Kok

Errors trying to build Arty-Z7-20-xadc project

Question

I tried to build the XADC example project using Arty-Z7-20-xadc-2016.4-2.zip , https://reference.digilentinc.com/learn/programmable-logic/tutorials/arty-z7-xadc-demo/start , and https://reference.digilentinc.com/learn/programmable-logic/tutorials/github-demos/start .

Using Vivado 2016.4, after entering the tcl command "source ./create_project.tcl" I get

...# update_ip_catalog -rebuild
INFO: [IP_Flow 19-234] Refreshing IP repositories
WARNING: [IP_Flow 19-2406] Cannot identify part xc7a200tsbg484-1
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'
WARNING: [IP_Flow 19-2406] Cannot identify part xc7a15ticsg324-1L
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'

(etc.)

Using Vivado 2017.4, I get a lot farther. I clicked Generate Bitstream. While launching implementation run, I got a critical warning:

[IP_Flow 19-4739] Writing uncustomized BOM file 'c:/Users/janko/Xilinx/Arty-Z7-20-xadc/src/ip/xadc_wiz_0/xadc_wiz_0.xml'

The build subsequently failed.

I found an answer (AR# 69645) on the Xilinx site related to the IP_Flow 19-4739 warning, but it wasn't helpful. There is indeed a file C:\Users\janko\Xilinx6\Arty-Z7-20-xadc\src\ip\xadc_wiz_0\xadc_wiz_0.xci (and nothing else) in that directory, but removing that file (as the AR suggests) doesn't help.

How can I build this example project?

Share this post


Link to post
Share on other sites

10 answers to this question

Recommended Posts

  • 0

Hi @Jan Kok,

This tutorial requires that you have gone through the Using Digilent Github Demo Projects. Did you install the board files described here?  Did you download the zip or the github? If you downloaded the github you need to make sure the vivado library in the repo folder here: Arty-Z7-20-xadc/repo/ gets downloaded as well.  Did you make sure that it is the project for the Arty-Z7-20 and not the Arty-Z7-10?

thank you,

Jon

Share this post


Link to post
Share on other sites
  • 0

Hi @jpeyron, thanks for reply.

In the case of Vivado 2017.4, I did install the arty-z7-20 board files only - not the other board files in the zip file. (Do I need to install the others?)

In the case of Vivado 2016.4, I forgot to install the board files. When I looked for them (after writing the note that begins this thread), I was surprised that there was no C:\Xilinx\Vivado\2016.4 directory at all! Though there was a C:\Xilinx\Vivado\2017.4 directory. It was surprising, because there was a Vivado 2016.4 icon in my Start menu (as a result of installing SDSoC 2016.4), and clicking that icon actually started Vivado 2016.4 and let me get as far as I did. Very confusing, how could that work?! Anyway, since the Vivado\2016.4 directory was missing, I installed Vivado 2016.4, which created the Vivado\2016.4 directory and lots of stuff under it, and installed the arty-z7-20 board files, then tried to build the xadc demo again. I got similar results as before,

# update_ip_catalog -rebuild
INFO: [IP_Flow 19-234] Refreshing IP repositories
WARNING: [IP_Flow 19-2406] Cannot identify part xc7k325tffg900-2
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'

(etc.)

I got the XADC demo from a zip file. It does contain repo\vivado-library and a bunch of stuff under that.

And yes, I've been careful to select Arty-Z7-20 (not -10) where appropriate. 

So I'm still stuck. Any ideas on how to proceed with either Vivado 2016.4 or 2017.4?

Edited by Jan Kok
still stuck

Share this post


Link to post
Share on other sites
  • 0

Any further help with this? As mentioned in my previous post in this thread, I'm still stuck, with both 2016.4 and 2017.4 versions of Vivado.

Thanks.

Share this post


Link to post
Share on other sites
  • 0

Hi @Jan Kok,

Sorry i missed responding to this post yesterday. The xadc project was made for Vivado 2016.4. Unfortunately, the version does matter. I compiled this project without an issue in Vivado 2016.4. First go to the proj folder and double click cleanup.  Make sure that the board files are installed in vivado 2016.4 here: C:\Xilinx\Vivado\2016.4\data\boards\board_files.  I do not see a reason that you have to install the other boards but all of the board files is only 1.34 MB. Try running the project again and let us know what happens.

cheers,

Jon

Share this post


Link to post
Share on other sites
  • 0

Thanks for getting back!

"First go to the proj folder and double click cleanup." Um... what file browser should I use to go to the proj folder? I'm asking because I don't see a cleanup button anywhere that I can double click on. Meanwhile, I'll try deleting and reinstalling the xadc demo.

I just noticed that I have two identical-looking Vivado 2016.4 icons in my start menu. When I click one of them, I see "Vivado 2016.4" in the title bar. When I click the other one, I see "Vivado 2016.4_sdx" in the title bar. I had been using the sdx one. I'm guessing that was supplied when I installed SDSoC 2016.4, and the non-sdx one was installed when I later installed Vivado 2016.4. I guess that explains why I didn't see C:\Xilinx\Vivado\2016.4 folder until I installed Vivado 2016.4 directly.

 

Share this post


Link to post
Share on other sites
  • 0

"I was describing the window command file cleanup as shown" Yeah, I figured that out eventually :-)

So I just created a new work folder c:/Users/janko/Vivado6 and copied Arty-Z7-20-xadc in there, copied all the "new" board files to c:\Xilinx\Vivado\2016.4\data\boards\board_files, then started Vivado 2016.4 and tried to create the project. This is what I got:

start_gui
cd c:/Users/janko/Vivado6/Arty-Z7-20-xadc/proj/
source ./create_project.tcl
# set proj_name "XADC"
# if {[info exists ::create_path]} {
#  set dest_dir $::create_path
# } else {
#  set dest_dir [file normalize [file dirname [info script]]]
# }
# puts "INFO: Creating new project in $dest_dir"
INFO: Creating new project in C:/Users/janko/Vivado6/Arty-Z7-20-xadc/proj
# cd $dest_dir
# set part "xc7z020clg400-1"
# set brd_part "digilentinc.com:arty-z7-20:part0:1.0"
# set origin_dir ".."
# set orig_proj_dir "[file normalize "$origin_dir/proj"]"
# set src_dir $origin_dir/src
# set repo_dir $origin_dir/repo
# create_project $proj_name $dest_dir
INFO: [IP_Flow 19-234] Refreshing IP repositories
INFO: [IP_Flow 19-1704] No user IP repositories specified
INFO: [IP_Flow 19-2313] Loaded Vivado IP repository 'C:/Xilinx/Vivado/2016.4/data/ip'.
# set proj_dir [get_property directory [current_project]]
# set obj [get_projects $proj_name]
# set_property "default_lib" "xil_defaultlib" $obj
# set_property "part" $part $obj
# set_property "board_part" $brd_part $obj
# set_property "simulator_language" "Mixed" $obj
# set_property "target_language" "VHDL" $obj
# set_property "corecontainer.enable" "0" $obj
# set_property "ip_cache_permissions" "read write" $obj
# set_property "ip_output_repo" "[file normalize "$origin_dir/repo/cache"]" $obj
# if {[string equal [get_filesets -quiet sources_1] ""]} {
#   create_fileset -srcset sources_1
# }
# if {[string equal [get_filesets -quiet constrs_1] ""]} {
#   create_fileset -constrset constrs_1
# }
# set obj [get_filesets sources_1]
# set_property "ip_repo_paths" "[file normalize $repo_dir]" $obj
# update_ip_catalog -rebuild
INFO: [IP_Flow 19-234] Refreshing IP repositories
WARNING: [IP_Flow 19-2406] Cannot identify part xc7k325tffg900-2
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'
WARNING: [IP_Flow 19-2406] Cannot identify part xc7k325tffg900-2
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'
WARNING: [IP_Flow 19-2406] Cannot identify part xc7k325tffg900-2
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'
WARNING: [IP_Flow 19-2406] Cannot identify part xc7k325tffg900-2
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'
WARNING: [IP_Flow 19-2406] Cannot identify part xc7k325tffg900-2
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'
WARNING: [IP_Flow 19-2406] Cannot identify part xc7k325tffg900-2
ERROR: [IP_Flow 19-2232] Current project options are not valid, cannot get 'PROJECT_PARAM.PART'
INFO: [IP_Flow 19-1700] Loaded user IP repository 'c:/Users/janko/Vivado6/Arty-Z7-20-xadc/repo'.
ERROR: [Common 17-39] 'update_ip_catalog' failed due to earlier errors.
    while executing
"update_ip_catalog -rebuild"
    (file "./create_project.tcl" line 69)
 
It's complaining about parts, not boards. Why can't it identify those parts?
Should I try uninstalling Vivado and/or SDSoC and then install Vivado 2016.4 once more? That would take me about 1 1/2 hours.
Thanks!
Edited by Jan Kok
corrected to show errors running non-sdx Vivado

Share this post


Link to post
Share on other sites
  • 0

Hi @Jan Kok,

I compared my tcl script vs yours and on line 44 it does not find to vivado library in the repo folder.  I have taken a screen shot of what the contents of the vivado_library folder in the repo folder looks like.  Did you download the zip from here and put the contents into the vivado-library folder? Please attach a screen shot.

cheers,

Jon

tcl_console.txt

vivado_library_contents.jpg

Share this post


Link to post
Share on other sites
  • 0

Hallelujah!!! The XADC demo built and is now running on my Arty Z7-20 board. Thank you, thank you, thank you, @jpeyron !!!

The problem was, in the Arty-Z7-20-xadc-2016.4-2.zip (239 KB) file I was using, the repo/Vivado-library folder contained the ip folder only, and that ip folder only had 1.3MB of stuff, when unzipped. The vivado-library-c78277642564934f23b19a086bc575d49653558d that Jon pointed me to (https://github.com/digilent/vivado-library/tree/c78277642564934f23b19a086bc575d49653558d ) is about 170 MB - so a few things were apparently missing from the Arty-Z7-20-xadc-2016.4-2.zip I originally used!

I probably got the too-small zip file by clicking the download zip file link in https://reference.digilentinc.com/learn/programmable-logic/tutorials/github-demos/start (under Projects Supported by this Tutorial) or https://reference.digilentinc.com/learn/programmable-logic/tutorials/arty-z7-xadc-demo/start (under Downloads). The GitHub links download even smaller XADC demo folders, with nothing at all in their vivado-library folders.

Digilent folks: please fix the documentation or the downloads so that the next newbie doesn't fall into the same man-trap I fell into.

Also... I haven't tried building again with Vivado 2017.4, but if there are substantial problems with using the later versions, then there should be stronger and more prominent warnings in the documentation about which Vivado versions to use. Earlier this year when I was getting started with my Arty 35T, I started by installing the latest Vivado release. I wasted a day or two trying to get a demo working with the latest Vivado. Finally gave up and installed an older Vivado, which worked. Now I've had the same experience again (downloading multiple versions of Vivado) with my Arty Z7. Please make your documentation more newbie-friendly! Save time for your users, and for yourselves (fewer questions to answer on this forum).

Thanks.

Share this post


Link to post
Share on other sites
  • 0

Hi @Jan Kok,

We updated and tested the zip file so all of the vivado library content is in the folder and generates a bitstream with out an issue in Vivado 2016.4. We are very sorry about the frustration this caused. Your suggestions have been forwarded to the content team.

thank you,

Jon

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now