VCS 常用编译选项
- 在学习VCS(Verilog Compile Simulator)过程中遇到不知道的编译命令可以使用 vcs -full64 -help 来查看帮助!
- VCS学习过程中可能需要查看对应的 User Guide,一般情况下在vcs的安装目录下的doc文件夹里面会有PDF文件,或者查看这里。
- VCS就是编译用户输入的源文件生成对应的可执行文件(默认是二进制的simv文件),在之后的仿真中运行这个可执行文件。
VCS语法如下:
$ vcs [options] source_files
常用编译选项及其含义
-help:vcs帮助,有各编译选项意义;
-full64:以64位模式编译设计并创建64位可执行文件用于64位模式下的模拟;
-vpi:允许使用vpi PLI访问例程;
-sverilog:允许在Accellera systemVerilog规范中使用Verilog语言扩展;
-v2k:使用Verilog 1364-2001标准;
-cpp:使用c++编译器;
-debug_pp:允许转储到VPD并使用UCLI命令和DVE;
-debug:启用UCLI命令和DVE;
-debug_all:启用UCLI命令和DVE,也使线路步进;
-notice:启用详细的诊断消息;
+lint=[no]ID|none|all,... 使能或者禁用verilog的lint消息;
+rad:对设计进行辐射技术优化;
+vcs+lic+wait:如果没有可用的通知,则告诉VCS等待网络许可证;
-f <filename>: 指定一个文件,其中包含源文件和编译时选项的路径名列表;
-o <name>:指定输出可执行文件的文件名,默认为 simv;
-R:该选项告诉VCS在编译完后直接运行可执行程序,若没有该选项,那么vcs在编译后直接退出;
-l <filename>:(小写字母L)如果包含-R,-RI或-RIG选项,则指定VCS记录编译消息和运行时消息的日志文件;
-Mupdate[=0]:默认情况下,VCS会在编译之间覆盖Makefile。 如果希望在编译之间保存Makefile,请输入此内容选项与0参数。输入不带0参数的参数,指定默认情况下,增量编译和更新Makefile文件;
-CFLAGS <options>:将选项传递给C编译器,允许多个-CFLAGS,允许传递C编译器优化级别。
-timescale=<time_unit>/<time_precision>:指明时间精度;
-ucli:在运行时指定UCLI模式;
+incdir+<directory>:指定包含使用`include 编译器指令指定的文件的目录,可以指定多个目录,用+字符分隔每个路径名称;
+libext+<extension>:指定VCS仅在具有指定扩展名的Verilog库目录中搜索源文件,可以指定多个扩展名,用+字符分隔每个扩展名。例如+libext++.v指定搜索没有扩展名和库扩展名为.v的库文件。 输入-y选项时输入此选项。
+systemverilogext+<ext>:指定包含SystemVerilog源代码的源文件的文件扩展名;
-gui[=<dve|verdi>]:启动用户指定的图形用户界面,如果未提供参数,则在检测到有效的VCS_HOME环境变量时,VCS将启动Verdi。 否则DVE将默认启动;
-vcd <filename>:将输出VCD文件名设置为指定文件。默认文件名为verilog.dump。Verilog源代码中的$dumpfile系统任务将覆盖此选项;
-verdi:使用verdi图形界面;
+vcdfile+<filename>:指定想要用于后期处理的VCD文件;
-vpd_file <filename>:在运行时,定义VCS写入的VPD文件的替代名称,而不是缺省名称vcdplus.vpd;
+define+VCS:定义全局的VCS,编译器在编译时如果源文件有类似`ifdef VCS等字样,那么会执行定义之后的代码。
+vcs+vcdpluson:编译选项,加入后会使能产生vpd文件,默认文件名vcdplus.vpd
注:本文持续更新,遇到问题再查看相应的help文档。