uvm_hdl_xxx系列在驗證環境中經常使用,hvm_hdl_force/deposit用來后門給信號賦值,uvm_hdl_read用于后門讀取信號值。
由于某些原因,導致后門讀寫失敗時,在仿真時會遇到如下的錯誤:
UVM_ERROR:set:unabletowritetohdlpath...
出現這種情況時,可以按如下步驟排查:
檢查信號的hierarchy路徑是否正確
打開verdi,選中信號后,copy信號的full path可以看到信號的完整路徑名。
檢查是否添加了debug選項
如果確定信號路徑沒有問題后,可檢查下編譯選項中是否添加了-debug_all或者+debug_access+all。
檢查信號所在的模塊是否為cell
當編譯選項沒有使用-debug_all,使用的是-debug_access+all或者-debug_access+r+w+f。而恰好信號所在的模塊為cell時,也無法正常進行后門訪問。
在verdi中,如果模塊為cell類型,可以看到undefined cell或者lib cell的標識:
解決辦法:
(1)編譯選項更換為-debug_all。debug_access+all并不能開啟cell和lib類型的訪問權限:
The-debug_access+all=-debug_access+line+class+wn+driver+r+w+cbk+f+fn+thread+cbkd. The-debug_access+alloptionenablesdebugcapabilitiesequalto-debug_all (exceptitdoesnotapplycapabilityinsidecellsandencryptedmodules).
(2)結合debug_region編譯選項使用:-debug+all -debug_region=cell+lib
編輯:黃飛
-
信號
+關注
關注
11文章
2804瀏覽量
77003 -
定位
+關注
關注
5文章
1347瀏覽量
35449
原文標題:后門操作失敗的定位思路
文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論