verdi uvm debug
前言
本篇文章基于verdi 2020版的官方UVM Debug User Guide文档,图片也来源于该文档。文档中部分内容与实际使用时不符,可能与verdi版本有关。
向Verdi中导入UVM testbench的方式
1.在runtime选项中加入 -uvmDebug
2.在runtime选项中加入 +UVM_VERDI_TRACE=UVM_AWARE
3.Tools -> Preferences -> Simulation -> 勾选 UVM Debug
以上三种方式效果相同,支持
Resource/Config View
Factory View
Phase View
Sequence View 但不能将seqeunce添加到transaction browser
其他选项
+UVM_TR_RECORD 使能 transacton 记录并打印到 console 和 log 文件中
+UVM_LOG_RECORD 使能 message 捕捉并打印到 console 和 log 文件中
+UVM_VERDI_TRACE=TLM 使能 TLM 端口级别的 transaction 记录, 并自动使能+UVM_TR_RECORD
+UVM_VERDI_TRACE=TLM2 使能 TLM2 端口级别的 transaction 记录, 并自动使能+UVM_TR_RECORD
+UVM_VERDI_TRACE=IMP 使能 IMP 端口记录, 要和 TLM 或 TLM2 参数一起使用
+UVM_VERDI_TRACE=HIER 使能 OVM/UVM Hierarchy tree
+UVM_VERDI_TRACE=RAL 使能 Register View
+UVM_VERDI_TRACE=MSG+PRINT 在 console 上显示 UVM messages
+UVM_VERDI_TRACE=COMPWAVE 使能 UVM 组件波形记录, 需在编译时加上 +define+UVM_VERDI_COMPWAVE。(我在实际使用中发现只要往Verdi中导入了UVM testbench,加不加这个选项都能将组件添加到波形。如果有朋友遇到不一样的情况,欢迎留言一起探讨。)