cosim_design - 2023.2 简体中文

Vitis 高层次综合用户指南 (UG1399)

Document ID
UG1399
Release Date
2023-12-18
Version
2023.2 简体中文

描述

利用原先基于 C/C++ 的测试激励文件来为已综合的 RTL 执行综合后协同仿真。

提示: 要指定测试激励文件的文件,请运行以下命令:
add_files -tb

根据 -rtl 选项,仿真结果将写入处于活动状态的解决方案的 sim/Verilogsim/VHDL 文件夹。

语法

cosim_design [OPTIONS]

选项

-O
启用 C/C++ 测试激励文件和 RTL 封装文件的最优化编译。这样会增加编译时间,但是能提供更好的运行时性能。
-argv <string>
<string> 传递到 C/C++ 主函数。

指定行为测试激励文件的实参列表。

-compiled_library_dir <string>
指定使用第三方仿真器进行仿真期间已编译的库目录。<string> 是已编译的库目录的路径名称。此库必须事先使用 compile_simlib 命令完成编译,如 Vivado Design Suite Tcl 命令参考指南(UG835) 中所述。
-coverage
启用使用 VCS 仿真器进行仿真期间的覆盖率功能。
-disable_binary_tv
使用纯文本测试矢量文件代替压缩二进制格式。
-disable_deadlock_detection
禁用协同仿真中的死锁检测功能。
-disable_dependency_check
运行协同仿真时禁用依赖关系检查。
-enable_dataflow_profiling
该选项会开启数据流通道剖析以跟踪协同仿真期间的通道大小。
-enable_fifo_sizing
在协同仿真期间,该选项可开启自动 FIFO 通道大小调整,以便进行数据流剖析。
-enable_tasks_with_m_axi
该选项用于启用 hls::taskap_ctrl_none 的仿真,并具有稳定的顶层指针。
-hwemu_trace_dir <kernel_name>/<instance_name>
指定测试矢量的位置,这些矢量是在硬件仿真期间生成的,将在协同仿真期间使用。这些测试矢量是由 config_export -cosim_trace_generation 命令生成的。该实参允许您在硬件仿真的仿真结果中指定 Vitis 内核的内核和实例名称,以便定位这些测试矢量。
-ldflags <string>
指定传递到连接器用于协同仿真的选项。

该选项通常用于为 C/C++ 语言测试激励文件传递 include 路径信息或库信息。

-mflags <string>
指定仿真所需的选项。
-random_stall
在协同仿真期间启用顶层接口的随机停滞。
-rtl [verilog | vhdl]
指定用于 C/RTL 协同仿真的 RTL 语言。默认为 Verilog。
-setup
创建仿真文件,包括在处于活动状态的解决方案的 sim/<HDL> 目录中创建的所有仿真文件。不执行仿真,但稍后可从命令外壳运行仿真。
-stable_axilite_update
启用 s_axilite 以配置寄存器,这些寄存器与传输事务前相比均保持稳定状态。
-trace_level [*none* | all | port | port_hier]
判定 C/RTL 协同仿真期间,要保存的波形追踪数据级别。
  • none 表示不保存追踪数据。这是默认方式。
  • all 表示生成要保存到追踪文件的所有端口和信号波形。
  • port 表示仅为顶层端口保存波形追踪数据。
  • port_hier 表示保存设计层级内的所有端口的追踪信息。

根据 -rtl 选项中使用的选择,执行仿真时,追踪文件将保存在当前解决方案的 sim/Verilogsim/VHDL 文件夹内。

-user_stall <string>
指定协同仿真期间要使用的 JSON 停滞文件。此停滞文件可使用 cosim_stall 命令来生成。
-wave_debug
打开 Vivado 仿真器 GUI 以查看波形和仿真结果。在生成的 RTL 中启用查看所有进程的波形的功能,就像在数据流进程和顺序进程中一样。仅当通过设置 -tool xsim 使用 Vivado 仿真器来执行系统仿真时,才支持该选项。如需了解更多信息,请参阅 查看仿真波形

示例

使用 Vivado 仿真器执行验证:

cosim_design

使用 VCS 仿真器验证 Verilog RTL,并启用波形追踪文件保存功能:

cosim_design -tool VCS -rtl verilog -coverage -trace_level all

使用 ModelSim 验证 VHDL RTL。值 5 和 1 会传递到测试激励文件函数,以供在 RTL 验证中使用:

cosim_design -tool modelsim -rtl vhdl -argv "5 1"