cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
goahead97
Adventurer
Adventurer
116 Views
Registered: ‎01-29-2021

Vitis v++ -c compile vs package_xo TCL command in Vivado

Hello

As far as I understood so far Xilinx object files .xo can be created as follows:

- with Vitis v++ -c command from an Open CL 1.2 source file that takes the particular target platform as argument to run this v++ -c command.

- with package_xo TCL command in Vivado from an RTL model as input for this command. Nonetheless according to the details provided on the following link, it seems the package_xo command does not need to know the target platform to b able to create the Xilinx object file. 

https://forums.xilinx.com/t5/Vitis-Acceleration-SDAccel-SDSoC/What-is-the-target-platform-of-Xilinx-object-files-compiled-with/m-p/1231358#M8981

Could anyone make clear why Vitis v++ -c needs to know the target platform to be able to create an .xo Xilinx object file while the package_xo TCL command in Vivado does not need it?

Thanks

0 Kudos
1 Reply
randyh
Xilinx Employee
Xilinx Employee
104 Views
Registered: ‎01-04-2013

The package_xo command is run in the context of the VIvado tool. The Vivado project requires a Xilinx board or part to create the IP. The board or part is the target device, and aligns with the platform specified in the v++ -c command. 

By the way, you can also use Vitis HLS to create an xo object, and this also requires a part or board. The v++ -c command is actually running Vitis HLS in the background.