Verdi 2017.12实战:UVM寄存器模型调试避坑指南与Transaction波形分析
在芯片验证领域,UVM验证方法学已成为行业标准,而Verdi作为Synopsys推出的调试利器,其与UVM的深度集成能力让验证工程师能够更高效地定位问题。本文将聚焦Verdi 2017.12版本在实际项目中的应用痛点,特别是针对寄存器模型调试和Transaction波形分析这两个关键场景,提供一套经过实战检验的解决方案。
1. Verdi 2017.12环境配置与基础调试准备
1.1 环境变量与编译选项精要
不同于常规RTL调试,UVM验证环境需要特殊配置才能充分发挥Verdi的调试能力。以下是必须检查的环境变量设置:
export VERDI_HOME=/path/to/verdi2017.12
export LD_LIBRARY_PATH=$VERDI_HOME/share/PLI/lib/LINUX64:$LD_LIBRARY_PATH
编译选项方面,以下组合可确保获取完整的调试信息:
VCS_OPTS = -debug_access+class -debug_region+tb +vcs+dumpvars+on
VERDI_OPTS = -gui=verdi UVM_VERDI_TR_RECORD=1 UVM_VERDI_COMPWAVE=1
注意:
-debug_access+class选项对查看class内部堆栈至关重要,缺少该选项将无法跟踪sequence和transaction的完整执行路径。
1.2 波形dump策略优化
传统RTL波形dump方式在UVM环境中效率低下,推荐采用分层dump策略:
- 基础波形:在top_tb中添加
$fsdbDumpvars(


381

被折叠的 条评论
为什么被折叠?



