xelab、xvhdl 和 xvlog xsim 命令选项 - 2023.2 简体中文

Vivado Design Suite 用户指南: 逻辑仿真 (UG900)

Document ID
UG900
Release Date
2023-10-18
Version
2023.2 简体中文

下表列出了 xelabxvhdlxvlog xsim 命令的命令选项。

表 1. xelab、xvhd 和 xvlog 命令选项
命令选项 描述 适用命令
-d [define] <name>[=<val>] 定义 Verilog 宏。针对每个 Verilog 宏使用 -d|--define。宏的格式为 <name>[=<val>],其中,<name> 是宏名称,<value> 是宏的值(可选)。

xelab

解析设计文件 xvhdl 和 xvlog

-debug <kind> 开启指定调试功能的前提下执行编译。<kind> 选项包括:
  • typical:最常用的功能,包括:linewave
  • line:HDL 断点。
  • wave:波形生成、条件执行、强制值。
  • xlibs:可查看 AMD 预编译库。该选项仅在命令行上可用。
  • off:关闭所有调试功能(默认)。
  • all:使用所有调试选项。
xelab
-encryptdumps 对当前正在编译的设计单元的已解析转储进行加密。

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-f [-file] <filename> 从指定文件读取其他选项。

xelab

xsim 可执行文件选项

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-generic_top <value> 以指定值覆盖顶层设计单元的泛型或参数。例如,-generic_top "P1=10" xelab
-h [-help] 打印此帮助消息。

xelab

xsim 可执行文件选项

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-i [include] <directory_name> 为使用 Verilog `include 包含的文件指定要搜索的目录。针对每个指定的搜索目录使用 -i|--include

xelab

解析设计文件 xvhdl 和 xvlog

-initfile <init_filename> 用户定义的仿真器初始化文件,用于添加到或者覆盖默认 xsim.ini 文件所提供的设置。

xelab

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-L [-lib] <library_name> [=<library_dir>]

为已例化的非 VHDL 设计单元指定搜索库。例如,Verilog 设计单元。

针对每个搜索库使用 -L|--lib。该实参的格式为 <name>[=<dir>],其中,<name> 是库的逻辑名称,<library_dir> 是库的物理目录(可选)。

xelab

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-log <filename> 指定 log 日志文件名。默认值:<xvlog|xvhdl|xelab|xsim>.log

xelab

xsim 可执行文件选项

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-maxarraysize <arg> 将 VHDL 阵列大小最大值设为 2**n(默认值:n = 28,即 2**28)。 xelab
-maxdelay 以最大延迟来编译 Verilog 设计单元。 xelab
-maxdesigndepth <arg> 覆盖细化器允许的设计层级最大深度(默认值:5000)。 xelab
-maxlogsize <arg> 设置 log 日志文件可达到的最大大小 (MB)。默认设置为无限制。 xsim 可执行文件选项
-mindelay 以最小延迟来编译 Verilog 设计单元。 xelab
-mt <arg>

指定可并行运行的子编译作业数量。可能的值包括 autooff 或大于 1 的 integer

如果指定 auto,那么 xelab 会基于主机上的 CPU 数量来选择并行作业数量。(默认值:auto。)

高级用法:要进一步控制 -mt 选项,可按如下方式设置 Tcl 属性:

set_property XELAB.MT_LEVEL off|N 
[get_filesets sim_1]
xelab
-nolog 禁止 log 日志文件生成。

xelab

xsim 可执行文件语法

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-noieeewarnings 禁用来自 VHDL IEEE 函数的警告。 xelab
-noname_unnamed_generate 不给未命名的生成块生成名称。

xelab

解析设计文件 xvhdl 和 xvlog

-notimingchecks 忽略 Verilog 指定块中的时序检查构造。 xelab
-nosdfinterconnectdelays 忽略 SDF 端口和 SDF 中的互连延迟构造。 xelab
-nospecify 忽略 Verilog 路径延迟和时序检查。 xelab
-O <arg> 启用或禁用最优化。
  • -O 0 = 禁用最优化
  • -O 1 = 启用基本最优化
  • -O 2 = 启用最常用的最优化(默认)
  • -O 3 = 启用高级最优化
注释: 值越低,编译速度越快,但代价是仿真越慢:值越高,编译越慢,但仿真运行速度更快。
xelab
-override_timeunit 使用 -timescale 选项中指定的时间单位覆盖所有 Verilog 模块的时间单位。 xelab
-override_timeprecision 使用 -timescale 选项中指定的时间精度覆盖所有 Verilog 模块的时间精度。 xelab
-pulse_e <arg> 路径脉冲错误限制占路径延迟的百分比值。允许的值为 0 到 100(默认值为 100)。 xelab
-pulse_r <arg> 路径脉冲拒绝限制占路径延迟的百分比值。允许的值为 0 到 100(默认值为 100)。 xelab
-pulse_int_e arg 互连脉冲拒绝限制占延迟的百分比值。允许的值为 0 到 100(默认值为 100)。 xelab
-pulse_int_r <arg> 互连脉冲拒绝限制占延迟的百分比值。允许的值为 0 到 100(默认值为 100)。 xelab
-pulse_e_style <arg> 指定脉冲相关错误比模块路径延迟短时,何时应对错误进行处理。选项包括:
  • ondetect:检测到违例后立即报告错误。
  • onevent:在模块路径延迟过后报告错误。
默认值:onevent
xelab
-prj <filename> 指定包含一个或多个 vhdl|verilog <work lib> <HDL file name> 条目的 Vivado 仿真器工程文件。

xelab

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-r [-run] 以命令行交互模式来运行生成的可执行快照。 xelab
-rangecheck 为 VHDL 启用运行时值范围检查。 xelab
-R [-runall] 运行生成的可执行快照直至仿真结束。

xelab

xsim 可执行文件语法

-relax 放宽严格的语言规则。

xelab

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-s [-snapshot] <arg> 指定输出仿真快照的名称。默认值为 <worklib>.<unit>;例如:work.top。其他单元名称使用 # 来串联;例如:work.t1#work.t2 xelab
-sdfnowarn 不发出 SDF 警告。 xelab
-sdfnoerror 将 SDF 文件中发现的错误作为警告来处理。 xelab
-sdfmin <arg> <root>=<file> SDF 以最小延迟来给位于 <root><file> 添加注解。 xelab
-sdftyp <arg> <root>=<file> SDF 以典型延迟来给位于 <root><file> 添加注解。 xelab
-sdfmax <arg> <root>=<file> SDF 以最大延迟来给位于 <root><file> 添加注解。 xelab
-sdfroot <root_path> 应用 SDF 注解的默认设计层级。 xelab
-sourcelibdir <sourcelib_dirname>

未编译的模块的 Verilog 源文件所在目录。

为每个源目录使用 -sourcelibdir <sourcelib_dirname>

xelab

解析设计文件 xvhdl 和 xvlog

-sourcelibext <file_extension>

未编译的模块的 Verilog 源文件的文件扩展名。

为源文件扩展名使用 -sourcelibext <file extension>

xelab

解析设计文件 xvhdl 和 xvlog

-sourcelibfile <filename> 含未编译的模块的 Verilog 源文件的文件名。

xelab

解析设计文件 xvhdl 和 xvlog

-stat 打印工具 CPU 和存储器使用情况以及设计统计数据。 xelab
-sv 以 SystemVerilog 模式编译输入文件。 解析设计文件 xvhdl 和 xvlog
-timescale 为 Verilog 模块指定默认时间刻度。默认值:1ns/1ps xelab
-timeprecision_vhdl <arg> 为 VHDL 设计指定时间精度。默认值:1ps xelab
-transport_int_delays 为互连延迟使用传输模型。 xelab
-typdelay 以典型延迟来编译 Verilog 设计单元(默认)。 xelab
-v [verbose] [0|1|2] 指定打印消息的详细程度。默认值为 0。

xelab

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-version 在屏幕上打印编译器版本。

xelab

xsim 可执行文件选项

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-work <library_name> [=<library_dir>]

指定工作库。该实参的格式为:<name>[=<dir>],其中:

  • <name> 是库的逻辑名称。
  • <library_dir> 是库的物理目录(可选)。

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

-sv_root <arg>

要在其中查找 DPI 库的根目录。

默认值:<current_directory/xsim.dir/xsc>

xelab
--sc_lib arg SystemC 函数共享库的名称;(.dll/.so),不含文件扩展名 xelab
--sc_root <arg> 要在其中查找 SystemC 库的根目录。默认值:<current_directory>/xsim.dir/work/xsc xelab
-sv_lib <arg> DPI 导入的函数共享库的名称;(.dll/.so),不含文件扩展名。 xelab
-sv_liblist <arg> 指向 DPI 共享库的启动文件。 xelab
-dpiheader <arg> 导出和导入函数的头文件名。 xelab
-driver_display_limit <arg> 为具有最大大小的信号启用驱动程序调试(默认值:n = 65536)。 xelab
-dpi_absolute 在 Linux 上为 DPI 库使用绝对路径代替 LD_LIBRARY_PATH,此类库的格式为 lib<libname>.so xelab
-incr 在仿真中启用增量分析/细化。

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

xelab

-93_mode 以纯 93 模式编译 VHDL。

解析设计文件 xvhdl 和 xvlog

xelab

-2008 以 2008 模式编译 VHDL。 解析设计文件 xvhdl 和 xvlog
-nosignalhandlers 不允许编译器捕获防病毒软件、防火墙信号。

解析设计文件 xvhdl 和 xvlog

解析设计文件 xvhdl 和 xvlog

xelab

-dpi_stacksize <arg> 用户为 DPI 任务定义的栈大小。 xelab
-transform_timing_checkers 将时序检查器变换为 Verilog 进程。 xelab
-a

生成独立非交互仿真可执行文件,用于执行 run-all。

始终搭配 -R 一起使用。

要在不含任何调试功能的情况下加速运行仿真,请将 -standalone-R 搭配使用。它会单独调用仿真,而不调用 Vivado IDE。该选项能节省许可证加载时间。

xelab
-ignore_assertions 忽略 SystemVerilog 并发断言有效。 xelab
-ignore_coverage 忽略 SystemVerilog 功能覆盖。 xelab
-cov_db_dir <arg> 功能覆盖数据库转储目录。覆盖数据存在于 <arg>/xsim.covdb/<cov_db_name> 目录下。默认设为 ./ xelab
-cov_db_name <arg> 功能覆盖数据库名称。覆盖数据存在于 <cov_db_dir>/xsim.covdb/<arg> 目录下。默认值为快照名称。 xelab
-uvm_version <arg> 指定 UVM 版本(默认值 1.2)。 解析设计文件 xvhdl 和 xvlog xelab
-report_assertion_pass 报告 SystemVerilog 并发断言有效成功通过,即使存在禁止通过的操作块也是如此。 xelab
-dup_entity_as_module 在混合语言设计的 Verilog 层级内启用对分层引用的支持。
警告:
这可能导致编译速度显著下降。
xelab
-cc_celldefines 指定是否需要为已设置单元定义属性的库/模块捕获代码覆盖信息。默认设为 OFF(关)。 xelab
-cc_libs 指定是否需要为指定的所有库捕获代码覆盖信息。默认设为 OFF(关)。 xelab
-cc_type arg 指定用于生成代码覆盖统计数据 -bcesfxt 的选项。支持:(s)Statement Coverage(语句覆盖)、(b)Branch Coverage(分支覆盖)和 (c)Condition Coverage(条件覆盖)。 xelab
-cc_db arg 代码覆盖数据库会保存在 <cc_dir_argvalue>/xsim.codecov/<cc_db_argvalue> 内。默认值为 SnapshotName。 xelab
-cc_dir arg 代码覆盖数据库会保存在 dir <cc_dir_argvalue>/xsim.codeCov/<cc_db_argvalue> 下。默认值为 ./xsim.codecov/。 xelab
-ignore_localparam_override 忽略 localparam override xelab