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
758 Views
Registered: ‎02-19-2018

read_bd fails in Non-Project mode

I am trying to switch my workflow to the non-project mode for a variety of reasons, but I am having difficulty adding my block design. I have a block design in my project which I exported using the Export -> Export Block Design command. This created a .tcl script which I've called create_bd.tcl. The contents of that script are attached.

 

In my new, non-project mode directory, I source that script which creates a new project called project1 under a directory called "mpmc_bd_proj" where it then re-creates the block design. I then copy the whole block design directory to my source folder (cp -r mpmc_bd_proj/project1.srcs/sources_1/bd src/). My non-project mode tcl script then has the following:

 

set project_name "my_proj"
set_part ...

set output_dir ./build
file mkdir $output_dir

read_bd ./src/bd/MPMC/MPMC.bd

...

This results in the following error:

ERROR: [BD 41-1942] The design 'MPMC.bd' is set for Out-of-Context synthesis mode Hierarchical (Out of context per IP) but is not fully generated. Please ensure that design sources are fully generated before adding them to non-project flow. You an also try setting the mode to None (Global Synthesis), or use Save Project As to save your work in a project flow to use this mode.

And then the script quits, without giving me the chance to ever run generate_target

 

How do I solve this? Do I need to generate all the output products in the setup_bd.tcl script before I copy everything over to my source directory? If that's the case, why is that not included already as part of the Export Block Design feature?

0 Kudos
2 Replies
Highlighted
Xilinx Employee
Xilinx Employee
731 Views
Registered: ‎11-30-2007

Re: read_bd fails in Non-Project mode

Please reference the Vivado Design Suite Designing IP Subsystems Using IP Integrator User Guide (UG994; v2018.2) in Chapter 8: Using IP Integrator in Non-Project Mode.  I would suggest creating your Block Diagram and setting the "Synthesis Options" = "Global".

 

BD_non_project_2.png

 

BD_non_project.png

 

I hope this helps.

0 Kudos
Adventurer
Adventurer
711 Views
Registered: ‎02-19-2018

Re: read_bd fails in Non-Project mode

This is helpful, but it's still not clear to me what the correct/recommended flow is for using this in a non-project batch flow. The exported Tcl script does not contain the necessary commands to set the Synthesis mode to global, nor does it generate any output products. So do I have to modify the Export Block Design Tcl script to add those commands? Is there anyway to do this using the unmodified script (which would greatly simplify this flow)?

0 Kudos