VCS/irun/verdi编译命令/.so联合编译/sv_lib/sv_liblist/sv_root

1.VCS的编译解析

下面是一个可以使用的vcs makefile用于编译

VCS 编译仿真方法总结

VCS编译命令

摘自:SYNOPSYS VCS常用命令使用详解,这篇文章里详细的给出了vcs的编译和运行

  VCS对verilog模型进行仿真包括两个步骤:
  1. 编译verilog文件成为一个可执行的二进制文件命令为:
    $> vcs source_files
  2. 运行该可执行文件
    $> ./simv  (simv是一个可执行文件,即可直接运行)
  类似于NC, 也有单命令行的方式:
    $> vcs source_files -R
    -R 命令表示, 编译后立即执行.
    下面讲述常用的命令选项:
  -cm line|cond|fsm|tgl|obc|path     设定coverage的方式
  
  +define+macro=value+       预编译宏定义

  -f filename             RTL文件列表

  +incdir+directory+           添加include 文件夹

1.1 VCS动态加载DPI shared lib (.so)

VCS动态加载DPI shared lib,在vcs compile之后,调用GCC执行C的编译,产生so文件。

  在vcs run的时候,手动加载so。包括以下2种种命令都行:

  1) -sv_liblist,指定一个so的list文件bootstrap file,其中的so不需要加后缀名。

  2) -sv_lib,加lib名,不需要加后缀。

-sv_root是指定DPI shared lib的根目录,可以识别环境变量$ENV,就很有用了。

VCS/irun/verdi编译命令/.so联合编译/sv_lib/sv_liblist/sv_root_第1张图片

以上先设置:

-sv_root /home/user

-sv_liblist Bootstrap.file

或者:

-sv_root /home/user

-sv_lib myclibs/lib1

-sv_lib myclibs/lib3

-sv_lib proj1/clibs/lib4

...

就可以调用

/home/user/myclibs/lib1.so

/home/user/myclibs/lib3.so

/home/user/proj1/clibs/lib4.so

sv_liblist如下:

所以这些 .so的全路径为:

$SIM/model/xxxxxxx/so/jdi.so

2.irun编译命令

irun增量编译

3.verdi也可以编译

你可能感兴趣的:(soc,Tools)