一 VCS 仿真
VCS支持两种工作的流程:Two-step Flow和Three-step Flow
类型 | 步骤 | 语言 |
---|---|---|
两步 | 编译—>仿真 | Verilig、SystemVerilog |
三步 | 分析—>执行(制作)—>仿真 | Verilog、VHDL、混合HDL |
相同点:仿真的前一步得到simv可执行文件,作为仿真阶段的输入。
-
两步方式的基本使用:
vcs [compile_options] Verilog_files
simv [run_options]
-
三步方式的基本使用:
vlogan [vlogan_options] file1.v file2.v
vcs [elaboration_options] design_unit
simv [run_options]
VCS 普遍被业界所使用,很多公司都对该EDA软件进行各自的封装设计和验证人员只要遵从公司的特定用法,便能很好的达到自己的设计和验证需求。适用于命令中为compile_options或者elaboration_options的位置。compile_options与elaboration_options基本是一样的,稍有个别的标志是不同的,没必要严格区分,此处均以编译标志概括。这里给出一些常用的编译标志
本文对常见的“VCS编译选项”进行总结说明,欢迎大家踊跃批评指正!!!
《VCS 编译选项》说明:compile-time
选项 | 代表含义 | 特殊用法 |
-help or -h | vcs帮助选项,运行列出所有编译选项的含义 | $ vcs -help |
-full64 | 当系统是64位时候,需要添加此项,否则编译有可能报错 | |
-comp64 |
在64-bit模式下对设计进行编译,并生成32-bit格式的可执行文件用于32-bit模式仿真 |
|
-sverilog | 表示vcs 编译,支持 systemverilog 语法 | |
-vpi | 允许使用vpi PLI 访问例程 | |
-v2k | 使用verilog 1364-2001标准 | |
-kdb | 可以整合vcs的DB到verdi的db,直接通过verdi -ssf novas.fsdb打开verdi的工程 | |
-lca | 表示使用vcs的用户限制的功能 | |
-cpp | 使用使用c++编译器 | |
-top | 指定snapshot的顶层,对于不在指定层次下面的文件,及时遇到编译报错,编译也不会teminate | 注意:可以指定多个top 顶层,便于更好的管理。-top top1+top2+top3 |
-l <filename> |
指定记录VCS编译和运行信息的log文件名 |
|
-debug_pp | 允许转储到VPD并使用UCLI命令和DVE | |
-debug | 启用UCLI命令和DVE | |
-debug_all | 启用UCLI命令和DVE,也使线路步进 | |
-debug_report | 记录调试日志debug.report | ??? |
-notice | 启用详细的诊断消息 |