cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
tgautier_mispo
Visitor
Visitor
832 Views
Registered: ‎03-15-2020

Choose IP name with tcl command in IP Packaging

Jump to solution

 

When I try to package an IP from a specified directory, I use this command (options from ipx::infer_core -help) :

ipx::infer_core -vendor my_compagny -library my_lib -name my_ip -taxonomy /UserIP ../src

I get the following result if I launch it in GUI :


Capture.PNG

 

The option -name is not respected, the IP name is always the inferred top. Moreover the packager choose the top alone and there is no option to choose top.

If I change the top of my IP with : set_property top my_top [current_fileset], the IP remains the same.

(I am on Vivado 2020.2)

Is the -name option functionnal ? Is there an other way to change name with a tcl command.

0 Kudos
1 Solution

Accepted Solutions
ashishd
Xilinx Employee
Xilinx Employee
786 Views
Registered: ‎02-14-2014

Hi @tgautier_mispo ,

I have reported the issue to development team through CR for -name switch not respected by ipx::infer_core command.

Regarding selection of top level, I am unable to reproduce this issue. I am observing correct behavior here. When I select top level using same command as you mentioned, packager correctly detects the new top. So if you can elaborate your steps, it would be helpful.

Meanwhile after selecting the top, can you try below command and then package the IP -

update_compile_order -fileset sources_1

Regards,
Ashish
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------

View solution in original post

4 Replies
ashishd
Xilinx Employee
Xilinx Employee
787 Views
Registered: ‎02-14-2014

Hi @tgautier_mispo ,

I have reported the issue to development team through CR for -name switch not respected by ipx::infer_core command.

Regarding selection of top level, I am unable to reproduce this issue. I am observing correct behavior here. When I select top level using same command as you mentioned, packager correctly detects the new top. So if you can elaborate your steps, it would be helpful.

Meanwhile after selecting the top, can you try below command and then package the IP -

update_compile_order -fileset sources_1

Regards,
Ashish
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------

View solution in original post

tgautier_mispo
Visitor
Visitor
774 Views
Registered: ‎03-15-2020

Hi @ashishd,

Thanks for the CR opening.

I was not very clear, I achieve to change top but it does'nt change IP name (It may be a correct behaviour, it was a try to change the IP name in tcl command).

I think a -top option could be relevant for the command ipx::infer_core

0 Kudos
pfuhrman
Visitor
Visitor
624 Views
Registered: ‎02-20-2014

The same can be said for the command ipx::package_project.  I may add, if this can also be raised as an issue, that these commands do not allow incorporation of a '-version'.  It seems the only way to set IP project version is in the GUI (or to edit the component.xml, see my workaround below).   

Package the current project

Syntax:
ipx::package_project [-root_dir <arg>] [-vendor <arg>] [-library <arg>]
-taxonomy <args> [-generated_files] [-import_files]
[-set_current <arg>] [-force]
[-force_update_compile_order]
[-archive_source_project <arg>] [-quiet] [-verbose]
[<component>]

I have worked around this by adding the following TCL after saving the core.  It should also work for name by substituting for version:

if {[file exists $XMLTOOL]} {exec "$XMLTOOL" "ed" "-L" "-u" "spirit:component/spirit:version" "-v" "$IP_VERSION" "$IP_REPO/component.xml" } else { puts "IP VERSION update skipped...install XMLStarlet" }

Here the variable $XMLTOOL points to the utility "xml", a handy-dandy XML editor, readily available for Windows and Linux in the XMLStarlet package. $IP_REPO is where the IP project was packaged, which is the argument -root_dir to the package command. 

-Phil

0 Kudos
ashishd
Xilinx Employee
Xilinx Employee
547 Views
Registered: ‎02-14-2014

Hi @pfuhrman ,

Reported this too as an enhancement for ipx::package_project command

Regards,
Ashish
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos