-
Q1。存儲信號後,我可以看到除庫單元格外的所有信號的值。爲什麼NF顯示庫單元格中的信號?
A.在運行VCS編譯之前,檢查是否設置了NOVAS_FSDB_SKIP_CELL_INSTANCE環境變量。如果是這種情況,則在此環境變量上使用unsetenv。 -
Q2。如何禁用FSDB並行轉儲?
A.使用命令setenv FSDB_NO_PARALLEL 1禁用並行轉儲方案。 -
Q3。有沒有辦法跳過某些代不被vericom / Verdi解析?
A.使用以下指令:`ifndef __VERDICOMP__ (在此處插入需要由vericom / Verdi跳過的代碼) `ENDIF
此代碼由其他工具解析,但不是vericom / Verdi,因爲在Verdi編譯期間默認設置__VERDICOMP__,而不是在其他工具編譯期間。請注意,它是一個“IF NOT DEFINED”結構。另請注意,宏由雙下劃線組成。
-
Q4。如何將MDA和Memories轉儲到FSDB文件中?
A.請參閱 fsdbDumpvars和$ fsdbDumpMDA的文檔
本文檔提供了轉儲信號和MDA的各種選項。 -
Q5。如何在純VHDL和VHDLtop MX設計中轉儲FSDB文件?
A.在您的頂級VHDL中添加以下代碼,…第1步:使用work.novas.all; - 在VHDL代碼中添加novas.vhdl庫
…
第2步:在VHDL代碼中添加以下過程
FSDB_DUMP:進程
開始
fsdbDumpfile( “simulation.fsdb”); fsdbDumpvars(0,“:”);
等待;
結束過程;
第3步:編譯$ VERDI_HOME / share / PLI / VCS / LINUX / novas.vhd以識別VHDL中的FSDB任務
vhdlan novas.vhd-工作
執行其餘的編譯步驟。
這會在VHDL top MX設計下存儲VHDL和Verilog的所有信號。
-
Q6。仿真器在時間t檢測到未知,但是當我在Verdi中打開FSDB時,我沒有看到未知值被丟棄 - t。爲什麼?
A.使用+ fsdb+glitch = 0運行時選項存儲未知數。
請參閱Verdi文檔,瞭解使用’+ fsdb + glitch’和’+ fsdb + region’進行毛刺/區域調試。
-
Q7。如何將任務/函數中的信號值轉儲到類中的FSDB並在Verdi波形中查看?
如果您使用的是VCS模擬器,那麼在debug_access + dmptf編譯時選項和+函數中需要+ dmptf將任務/函數轉儲到FSDB / VPD中
調試任務/功能必須使用+ dmptf和+函數。
從2017.12開始,VCS版本+所有選項以及-debug_access也包括dmptf選項。
-
Q8。如何將UVM事務和信號轉儲到同一個FSDB文件中?
A.如果在源代碼中調用$ fsdbDumpfile(“dut.fsdb”)函數來引導RTL信號,則事務將轉儲到默認的novas.fsdb文件中。
爲了將事務和信號都指向同一個FSDB文件,刪除源代碼中的$ fsdbDumpfile或在運行時使用+ fsdb + filename選項將信號和事務定向到單個FSDB文件。
-
Q9。如何阻止或禁用在FSDB存儲期間不影響轉儲文件或模擬的某些無害警告消息?
A.使用以下2個選項在FSDB轉儲期間禁用無害警告消息。
1. + fsdb + no_msg + 2. + fsdb + no_warning
有關這些內容的更多詳細信息,請參閱文檔。
-
Q10。如何將* Error * Module降級爲Warning?
A.在vericom解析或調用Verdi時使用-error = noMPD選項以禁用以下重新定義模塊警告。此選項從2014.12開始實施。Error 模塊mod重新定義
有關Verdi編譯和FSDB存儲的常見問題解答
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.