Take a look at the package_xo
command, which can be found in the last line of run_*.tcl
.
package_xo -kernel_name ${IP_NAME} -ctrl_protocol user_managed -ip_directory [pwd]/../${IP_REPO}/${IP_NAME} -xo_path [pwd]/../${IP_REPO}/${IP_NAME}.xo -force -output_kernel_xml [pwd]/kernel_${IP_NAME}_auto.xml
First, the IP is created. The steps can be seen in run_*.tcl
until update_ip_catalog
. The packaged IP is then taken from the IP directory and provided to the package_xo
command using the -kernel_name
keyword. When the package_xo
command kernelizes the IP, it outputs the ${IP_NAME}.xo
in the path provided by the -xo_path
. The -xo_path
cannot be the same as the -ip_directory
path. The argument -force
overwrites if there is a pre-existing XO file. The intermediate metadata file is generated by this command and is stored as kernel_${IP_NAME}_auto.xml
.
More information can be found in this tutorial.