vcs 普遍被業界所使用,很多公司都對該eda軟體進行各自的封裝,設計和驗證人員只要遵從公司的特定用法,便能很好的達到自己的設計和驗證需求。本文對常見的vcs編譯選型進行總結。
選項代表含義
-help
vcs幫助選項,執行列出所有編譯選項的含義
-full64
當系統是64位時候,需要新增此項,否則編譯有可能報錯
-sverilog
表示vcs 編譯,支援 systemverilog 語法
-vpi
允許使用vpi pli 訪問例程
-v2k
使用verilog 1364-2001標準
-cpp
使用使用c++編譯器
-debug_pp
允許轉儲到vpd並使用ucli命令和dve
-debug
啟用ucli命令和dve
-debug_all
啟用ucli命令和dve,也使線路步進
-notice
啟用詳細的診斷訊息
-f指定編譯的檔案列表
+include./+
將當前目錄加入到`include的搜尋路徑列表之中
-y ./
將前目錄加入到搜尋路徑
-f指定編譯的檔案列表
+lint=[no]id
none
+rad
對設計進行輻射技術優化
+vcs+lic+wait
如果沒有可用的通知,則告訴vcs等待網路許可證
-f 指定乙個檔案,其中包含原始檔和編譯時選項的路徑名列表
-o 指定輸出可執行檔案的檔名,預設為 simv
-r該選項告訴vcs在編譯完後直接執行可執行程式,若沒有該選項,那麼vcs在編譯後直接退出
-l (小寫字母l)如果包含-r,-ri或-rig選項,則指定vcs記錄編譯訊息和執行時訊息的日誌檔案
-mupdate[=0]
預設情況下,vcs會在編譯之間覆蓋makefile。 如果希望在編譯之間儲存makefile,請輸入此內容選項與0引數。輸入不帶0引數的引數,指定預設情況下,增量編譯和更新makefile檔案
-cflags
將選項傳遞給c編譯器,允許多個-cflags,允許傳遞c編譯器優化級別。
-timescale=/
指明時間精度
-ucli
在執行時指定ucli模式
+incdir+
指定包含使用`include 編譯器指令指定的檔案的目錄,可以指定多個目錄,用+字元分隔每個路徑名稱
+libext+
指定vcs僅在具有指定副檔名的verilog庫目錄中搜尋原始檔,可以指定多個副檔名,用+字元分隔每個副檔名。例如+libext++.v指定搜尋沒有副檔名和庫擴充套件名為.v的庫檔案。 輸入-y選項時輸入此選項。
+systemverilogext+
指定包含systemverilog源**的原始檔的副檔名
-gui[=verdi>]
-vcd
:將輸出vcd檔名設定為指定檔案。預設檔名為verilog.dump。verilog源**中的$dumpfile系統任務將覆蓋此選項
-verdi
使用verdi圖形介面
+vcdfile+
指定想要用於後期處理的vcd檔案
-vpd_file
在執行時,定義vcs寫入的vpd檔案的替代名稱,而不是預設名稱vcdplus.vpd
+define+vcs
定義全域性的vcs,編譯器在編譯時如果原始檔有類似`ifdef vcs等字樣,那麼會執行定義之後的**。
+vcs+vcdpluson
編譯選項,加入後會使能產生vpd檔案,預設檔名vcdplus.vpd
+vcs+lic+wait
等待license
verdi-sv-ffilelist–ssftest.fsdb
其中:-sv :表示verdi軟體要支援systemverilog
-f filelist : 源**的檔案列表
-ssf test.fsdb : 指定fsdb檔案
VCS基本選項命令介紹
vcs source file compile time options 例如 vcs v2k filename.v debug all 2k指2001版本 compile time options 可選項 a 基本可選項 mupdate 增量編譯,再次編譯時只編譯改變的檔案,提高速率 r run ...
VCS中coverage常用的選項
在ic驗證的過程中,使用vcs來統計覆蓋率,下面簡單介紹一下 compile option vcs cm code coverage option run option simv cm code coverage option cm name name cm dir cov dir 其中 1 cm的...
verdi與vcs結合編譯驗證
1 首先編寫makefile檔案 run vcs f filelist.f r fsdb full64 l analyze.log verdi verdi f filelist.f ssf mc1 manage tb.fsdb topmc1 manage tb clean rm rf csrc no...