Debug
文章平均质量分 80
Alfred.HOO
专注于IP和SOC验证
展开
-
Verdi命令行调用选项用法
命令行调用Verdi平台如果没有指定manage.rc资源文件,则库设置从novas.rc资源文件里面load;支持load verilog的压缩文件gzipped(*.gz);如果编译的门级设计因为ECO修改使用了nECO模块,则不能使用-ssy,-ssz和-ssv选项。命令行使用方法:verdi [General Options] [nTrace Options] [Simulator Options] [Siloti Options] [Environment Option原创 2022-05-07 20:59:48 · 4956 阅读 · 0 评论 -
Verdi使用小技巧(四)
跳转到指定行号其实日常的频繁、快速地查看 Verilog 源代码,一般是在独立的文本编辑器中完成的。比如,VCS 编译产生的 log 文件中,对应的 Warning、Error 的后面会跟着相关源文件的路径、行号。如果用的编辑器是版本比较新的 Vim,那么简单的 gF 指令就可以迅速的从 log 文件跳转到对应源文件,而且光标会体贴的定位在出错行。如果是仍未默认支持的旧版 Vim,那么自己可以添加一个函数,可以参考这篇文章。这种方式在门级仿真的场景中会不太灵光。因为门级网表通常都非常巨大,用 Vim 类原创 2022-03-18 16:45:21 · 5420 阅读 · 1 评论 -
Verdi使用小技巧(三)
使用 Verdi 的过程中,难免会碰到表示某种变化量的多位宽数字信号,我们关心的是它的变化趋势。今天主要聊聊数字信号的模拟化呈现。数字信号的模拟化呈现Verdi 提供了既简单又直观的操作,去绘制数字信号的模拟变化趋势。尤其是在观察周期性计数的数字信号时,例如调制频率的变化,还有 FIFO 读写地址的变化,这种方式基本是可以做到一目了然的。操作方式:nWave 窗口菜单 - Waveform - Analog Waveform对于 Verdi 这个工具来说,它对于数字信号本身的含义目前还没有智能到可原创 2022-03-18 16:43:46 · 3187 阅读 · 0 评论 -
Verdi使用小技巧(二)
在学习和使用 Verilog 的过程中,难免会碰到需要深入理解仿真器调度的问题。今天这篇聊聊使用 Verdi 去分析 NBA Delay 的问题。NBA 就是 NonBlocking Assignment,非阻塞赋值的缩写。它通常用来描述一个用时钟沿触发的寄存器。在 Verilog普及早期,人们通常会在NBA的<=之后加个单位延时#1来解决早期仿真器行为不一致的问题。所谓习惯成自然,NBA Unit Delay 在某些设计中一直沿用下来。下面给出一些代码片断,同样感兴趣的朋友可以自己完善并用 VC原创 2022-03-18 15:20:46 · 3123 阅读 · 0 评论 -
Verdi使用小技巧(一)
对于做数字集成电路的工程师来说,Verdi可以说是最常用的代码和波形观察工具了。这里列几个使用中的小技巧,说不上高明,不过自己用着感觉还是蛮有效率的。1、总线拆分分析波形的时候有时候需要把一个多比特的bus拆分成几个位宽较小的bus,以方便观察数值。例如把一个20比特的bus拆成两个10比特的bus,可以右键点击这个bus,在弹出的菜单中点击Bus Operation,在弹出的对话框中的Every后面的输入框,输入10,意思是每10比特拆成一个bus,点击ok,就会看到出现了两个10比特的bus信号以及原创 2022-03-17 11:11:43 · 4443 阅读 · 0 评论