AMD Vitis™
工具使用 AMD Vivado™
逻辑仿真器 (xsim
) 作为所有平台的默认仿真器,包括 AMD Alveo™
数据中心加速器卡、AMD Versal™
和 AMD Zynq™
UltraScale+™ MPSoC 嵌入式平台。但对于 Versal 嵌入式平台(如 xilinx_vck190_base
或与之相似的定制平台),Vitis 工具还支持使用第三方仿真器进行硬件仿真:Mentor Graphics Questa Advanced Simulator、Xcelium 和 VCS。受支持的仿真器的具体版本与 Vivado Design Suite 支持的版本相同。
启用第三方仿真器需在生成器件二进制文件 (.xclbin) 以及支持性的 Tcl 脚本期间实现额外配置选项。每个仿真器的具体要求如下所述。此外,针对第三方仿真器应首先运行 Vivado 设置,然后才能在 Vitis 中使用这些仿真器。具体来说,您必须使用 compile_sim_lib
Tcl 命令对仿真模型进行预编译。如需了解更多详情,请参阅
Vivado Design Suite 用户指南:逻辑仿真(UG900),以获取第三方仿真器的设置信息。
- Questa
- 将以下高级参数和 Vivado 属性添加到配置文件中以供在链接期间使用:
## Final set of additional options required for running simulation using Questa Simulator [advanced] param=hw_emu.simulator=QUESTA [vivado] prop=project.__CURRENT__.simulator.questa_install_dir=<Questa_install_dir> prop=project.__CURRENT__.compxlib.questa_pre-compiled_library_dir=<Questa_compiled_lib_path> prop=fileset.sim_1.questa.compile.sccom.cores={16}
生成配置文件后,您可在v++
命令行中按如下方式使用该文件:v++ -link --config questa_sim.cfg
- Xcelium
- 将以下高级参数和 Vivado 属性添加到配置文件中以供在链接期间使用:
## Final set of additional options required for running simulation using Xcelium Simulator [advanced] param=hw_emu.simulator=XCELIUM [vivado] prop=project.__CURRENT__.simulator.xcelium_install_dir=<Xcelium_install_dir> prop=project.__CURRENT__.compxlib.xcelium_compiled_library_dir=<Xcelium_pre-compiled_lib_path> prop=fileset.sim_1.xcelium.elaborate.xmelab.more_options={-timescale 1ns/1ps -STATUS}
生成配置文件后,您可在v++
命令行中按如下方式使用该文件:v++ -link --config xcelium.cfg
- VCS
- 将以下高级参数和 Vivado 属性添加到配置文件中以供在链接期间使用:
## Final set of additional options required for running simulation using VCS Simulator [advanced] param=hw_emu.simulator=VCS [vivado] prop=project.__CURRENT__.simulator.vcs_install_dir=<VCS_install_dir> prop=project.__CURRENT__.compxlib.vcs_compiled_library_dir=<Vcs_pre-compiled_lib_path> prop=project.__CURRENT__.simulator.vcs_gcc_install_dir=<VCS_gnu_pkg_install_dir> param=project.alignLibraryPathEnvForVCS=true prop=fileset.sim_1.vcs.compile.vlogan.more_options={-v2005}
生成配置文件后,您可在v++
命令行中按如下方式使用该文件:v++ -link --config vcs_sim.cfg
- Riviera
- 将以下高级参数和 Vivado 属性添加到配置文件中以供在链接期间使用:
## Final set of additional options required for running simulation using VCS Simulator [advanced] param=hw_emu.simulator=RIVIERA [vivado] prop=project.__CURRENT__.simulator.riviera_install_dir=<Riviera_install_dir> prop=project.__CURRENT__.compxlib.riviera_compiled_library_dir=<Riviera_pre-compiled_lib_path> prop=project.__CURRENT__.simulator.riviera_gcc_install_dir=<Riviera_gcc_path> prop=fileset.sim_1.riviera.simulate.asim.more_options={+access +r}
生成配置文件后,您可在v++
命令行中按如下方式使用该文件:v++ -link --config riviera.cfg
您可使用来自 launch_emulator.py
命令的 -user-pre-sim-script
和 -user-post-sim-script
选项来指定要在仿真开始前或者仿真完成后运行的 Tcl 脚本。例如,在这些脚本中,您可以使用 $cwd
命令来获取仿真器的运行目录,并在仿真前复制所需的任意文件,或者在仿真结束后复制生成的任意输出文件。
要启用硬件仿真,必须在 Vivado Design Suite 中设置仿真环境。此设置的关键步骤之一是对 RTL 和 SystemC 模型进行预编译以供搭配仿真器使用。为此,您必须在 Vivado 工具中运行 compile_sim_lib
命令。如需了解有关仿真模型预编译的更多信息,请参阅
Vivado Design Suite 用户指南:逻辑仿真(UG900)。
创建 Versal 平台以准备仿真时,Vivado 工具会生成仿真封装文件,您必须在自己的仿真测试激励文件中例化此封装文件。这样如果最顶层的设计模块为 <top>
,那么在 Vivado 工具中调用 launch_simulation
时,它将生成 <top>_sim_wrapper
模块,并生成 xlnoc.bd。这些生成的文件将作为仅限仿真的源文件;在 Vivado 工具中调用 launch_simulation
时,将覆盖这些文件。平台开发者需要在测试激励文件而不是自己的 <top>
模块中例化此模块。