write_hw_platform - 2023.2 English

Vivado Design Suite Tcl Command Reference Guide (UG835)

Document ID
Release Date
2023.2 English

Write the Xilinx Shell Archive for the current design


write_hw_platform [‑fixed] [‑force] [‑include_bit] [‑include_sim_content]
    [‑minimal] [‑hw] [‑hw_emu] [‑rp <arg>] [‑rm <arg>] [‑static] [‑quiet]
    [‑verbose] [<file>]


The name of the Shell file.


Name Description
[-fixed] Write fixed Shell.
[-force] Overwrite existing Xilinx Shell Archive file
[-include_bit] Include bit file(s) in the Shell.
[-include_sim_content] Include simulaton files in the Shell.
[-minimal] Add only minimal files in the Shell.
[-hw] Write shell for use in hardware only.
[-hw_emu] Write shell for use in hardware emulation only.
[-rp] Write shell for the reconfigurable module at this instance path. The specific RM is selected by the active configuration or by '-rm'. This option is valid for Versal designs only.
[-rm] Specifies the name of a reconfigurable module for use with '-rp'. This option is valid for Versal designs only.
[-static] Write shell for the static portion of a DFX design. This option is valid for Versal designs only.
[-quiet] Ignore command errors
[-verbose] Suspend message limits during command execution
[<file>] Device Support Archive file Values: A filename with alphanumeric characters and .xsa extension.


Vitis, Platform, FileIO


Writes a Xilinx™ support archive (XSA) of the current design for use as a hardware platform.

All platforms are dynamically implemented during compilation, meaning that the accelerator logic coming is implemented along with some or all of the logic contained in the hardware platform design. The XSA represents the required portion of the hardware platform. The hardware platform design used to create a XSA consists of a Vivado™ IP integrator subsystem design with all the required board interface IP cores configured and connected to the device I/Os. The Vivado project must also include several required XSA and PFM properties needed to define the XSA.

This command reports the name of the XSA file written, or returns an error if it fails.


-fixed - (Optional) Overwrite a fixed shell XSA, which enables the platform for use in the software development flow, but not for use in acceleration.

-force - (Optional) Overwrite the XSA file if it already exists.

-include_bit - (Optional) Include the bitstream for the current design in the XSA. By default MCS files are created by write_hw_platform, and the bitstreams are discarded. When this options is specified, bitstream files are preserved for use in debugging the platform.

-include_sim_content - (Optional) Export data needed to support hardware emulation while creating the XSA. This option requires special features of the hardware platform, and is not generally recommended.

-minimal - (Optional) Include only those files in the XSA that are required to run the Vitis flow. Do not add anything extra. When this option is specified the write_hw_platform command ignores other options that add content to the XSA, such as the -include_bit and -include_emulation options.

-hw - (Optional) Writes out the XSA that can only be used in a hardware only platform.

-hw_emu - (Optional) Writes out the XSA that can only be used in a hardware emulation only platform.

-quiet - (Optional) Execute the command quietly, returning no messages from the command. The command also returns TCL_OK regardless of any errors encountered during execution.
Note: Any errors encountered on the command-line, while launching the command, will be returned. Only errors occurring inside the command will be trapped.
-verbose - (Optional) Temporarily override any message limits and return all messages from this command.
Note: Message limits can be defined with the set_msg_config command.

<file> - (Required) The name of the XSA file to write.

Note: If the path is not specified as part of the file name, the file will be written into the current working directory, or the directory from which the tool was launched.


Write the XSA for the current project, overwriting an XSA file of the same name if one exists.

write_hw_platform -force C:/Data/zc702.xsa

Write the XSA for a hardware emulation only platform.

write_hw_platform -hw_emu C:/Data/zc702.xsa