导言:
今天给大家带来的是经典电子书籍资料分享。
本资料来源于网络,主要是学习分享,请勿进行商业盈利。
书籍名字:《Verdi基础》 ,来源于网络
Part.01、基础概念
1. 波形依赖
Verdi本身无法生成波形,需配合VCS等仿真工具生成`.fsdb`文件。
2. 核心功能模块
• nTrace:代码调试与追踪
• nSchema:原理图分析
• nState:状态机调试
• nWave:波形分析
Part.02、环境配置
1. `.bashrc`设置
```bash
export Verdi_HOME=/opt/Synopsys/Verdi2015
export PATH=$Verdi_HOME/bin:$PATH
export LD_LIBRARY_PATH="/opt/Synopsys/Verdi2015/share/PLI/lib/linux64"
```
2. VCS编译选项
• 添加PLI库路径:
```makefile
VERDI_SW = -P$(Verdi_HOME)/share/PLI/VCS/linux64/novas.tab $(Verdi_HOME)/share/PLI/VCS/linux64/pli.a
```
Part.03、生成波形文件
1. 测试台(TB)配置
```verilog
initial begin
$fsdbDumpfile("fifo.fsdb");
$fsdbDumpvars(0); // 0表示转储所有层次信号
end
```
2. Makefile编译命令
```makefile
versim:
$(NOR_VCS) $(VERDI_SW) $(RUN_VER)
verdi -sv -f $(src_list).f -ssf *.fsdb -nologo
```
Part.04、nTrace代码调试
1. 核心操作
• 调用Verdi:`verdi -nologo`
• 查找实例化位置:双击模块名 → 高亮后再次双击跳转上层调用位置。
• 信号追踪:
◦ 驱动信号:双击信号 → 按`N/P`查看前/后驱动位置。
◦ 被驱动信号:选中信号 → 点击 ![驱动图标] → `N/P`切换。
• 字符串查找:快捷键 `/` 或文本搜索。
Part.05、nSchema原理图分析
1. 操作技巧
• 跳转源代码:双击原理图符号。
• 显示信号名:通过菜单显示RTL级端口/模块名。
• Fan-In Cone追踪:选中信号 → 点击 ![Fan-In图标] 查看驱动逻辑。
• 部分层次原理图:多选信号 → 生成关联逻辑视图。
• 元件移动:左键选中 → 右键拖拽。
Part.06、nState状态机调试
1. 状态机视图
• 打开方法:双击状态机模块 → 自动生成状态转移图。
• 状态转移条件:点击转移箭头查看触发条件(需导入波形)。
• 执行次数统计:需配合测试用例,分析覆盖率。
• 关联源代码:中键拖拽状态到nTrace窗口。
Part.07、nWave波形分析
1. 波形操作
• 添加信号:快捷键 `G` 或右键菜单。
• 信号查找:`Get Signal` 或从nTrace拖入。
• 信号分组:
◦ 重命名组:右键编辑
◦ 调整顺序:中键拖拽
• 显示优化:
◦ 颜色修改:`Tools → Preferences → Waveform → View Options` → 启用颜色后按 `C`。
◦ 进制转换:右键信号 → 选择二进制/十六进制/状态名。
2. 高级功能
• 逻辑操作生成新信号:`Tools → Signal Calculator`。
• 波形对比:导入两个`.fsdb`文件 → 差异分析。
2408