(一)編譯
$vcs file_name 加各種開關選項
1.基本選項
-Mupdate :增量編譯 再次編譯時只編譯改變的文件
-R : 編譯后繼續進行仿真
-gui :打開DVE圖形界面
-l<filename>:set log file name,用於寫編譯信息 生成log文件 一般在仿真大型文件時用到
-sverilog :支持system verilog 語言
+v2k :支持verilog語言
2.工藝庫相關選項
-v lib_file :RTL代碼里涉及到這個工藝庫
-y dir_file :告訴vcs去哪里找這個工藝庫 工藝庫的路徑
+libext+lib_ext :當用到很多庫,代替-v
+incdir+inc_dir :代碼里如果有include,使用這個命令告訴vcs包含文件的位置。verilog代碼里面寫`include "filename.vh"
3.文件可選項
-f file : 有很多文件時把多個文件整合到這一個文件夾中
4.修改文件名
-o foo :修改可執行文件的名字 文件原名為simv文件
5.define 定義一個宏
+define +<macro_name>=<value> :macro_name 宏名;value 初始化值; 如+define+INCR_COUNTER
(二)仿真
$simv 加一些仿真開關選項
./sim -gui &(./指在當前文件,sim指編譯得到的可執行文件,gui指打開vcs的gui界面-dve,&指后台執行)將會得到執行的PID值
-s 結束仿真時間
$plusargs() 動態接收參數
-E echo
-l logfile 把仿真信息寫入logfile文件里
(三)VCS Debug的三種方法
1.系統任務法
system task calls
$display 打印變量賦值前值
$montor 打印變量賦值后值,變量值改變,打印值也變
$time 仿真時間
$readmemb 將文件里的內容讀入存儲器中,讀二進制binary
$readmemh 將文件里的內容讀入存儲器中,讀十六進制hexadmecimal
2.UCLI命令行法
$vcs filename +v2k -ucli -R
3.VCS DVE