数字IC设计随笔之二(VCS、DVE|Verdi单步调试)
VCS、DVE|Verdi单步调试
使用VCS+Verdi进行仿真时,需要在仿真文件中添加如下代码:
initial begin$fsdbDumpfile("test.fsdb");$fsdbDumpvars("+all");
end
编译仿真的基本方式是在命令行中输入:
vcs -full64 -P $VERDI_LIB/novas.tab $VERDI_LIB/pli.a test.v
./simv
在上述命令中,编译的文件为test.v。当对一个包含文件较多的工程进行编译仿真时,VCS -f 选项支持从文件读取,在该文件flist中指定编译选项,下述为简单的示例:
//===================verilog library extension===========
+libext+.v+.sv+.vlib
//===================Top level file =====================
./rtl_sim/tb.v
+incdir+./src
//===================Search path========================
-y ./src
-y ./rtl_sim
当使用VCS+Verdi进行单步调试时,需要在VCS编译时增加-debug_all -lca -kdb选项予以支持,并且需要指定Verdi。
vcs -full64 -f flist -debug_all -lca -kdb \-P $VERDI_LIB/novas.tab $VERDI_LIB/pli.a
./simv -gui=verdi
将上述命令写为bash或者makefile文件,运行后,将会在Verdi中打开,呈现如下界面,左下角为命令输入窗口,右上角为加载的代码,可以在其中加断点,在命令行输入run将按照断点处执行,同时可以进行单步运行,输入命令next。相关命令操作都可以在菜单simulation里面找到。
此外,进行调试时也可以选择vcs自带的工具dve。采用DVE进行单步调试时,与Verdi的主要区别在于波形文件格式不同,DVE产生波形文件为VPD,因此,在进行仿真时需要产生VPD波形而非FSDB。产生vpd文件的方式可以通过在仿真文件中添加:
initial begin
$vcdpluson;
end
或者添加编译指令+vcs+vcdpluson,并设定vpd文件名:VPD_NAME = +vpdfile+top_test.vpd。
执行仿真后,可以设置断点,在命令行输入run即可执行,在断点处停下来,其它相关调试选项在DVE菜单Simulator中可见。
数字IC设计随笔之二(VCS、DVE|Verdi单步调试)相关推荐
- 数字IC设计随笔之六(DVE中波形数据alias显示)
DVE中波形信号alias的定义 在使用VCS做仿真时,将波形中状态值显示为容易理解的具有实际有意义的字符串,将会大大提高debug的效率. 在DVE窗口中选择需要别名替换的信号,然后点击菜单sign ...
- 数字IC设计随笔之一(Verdi自动添加波形脚本应用)
Verdi自动添加波形脚本应用 在刚接触verdi时,每次查看波形都需要重新加载一遍,写了简单的脚本用于实现波形加载,没想到下载需求挺多,也有私信问如何使用,在这里将做简单的说明. 脚本有三个文件,分 ...
- 数字IC设计随笔之七(TCL脚本编程入门)
TCL简介 TCL是Tool Command Language的缩写,主要应用在芯片设计领域中.TCL脚本程序是一系列命令构成的集合,在芯片设计工具中,便于流程化执行,提高效率. TCL语言与其它脚本 ...
- 数字IC设计入门方法与资料大全
0. 前言 正准备入行数字芯片设计的同志们可以看看以下几篇行业入门介绍的文章,因水平有限,文中难免存在疏漏.错误之处,与最新技术脱节之处必定不少,敬请细心的读者不吝指教.有用的您带走,没用的就当笑话看 ...
- 数字ic设计|如何设计低功耗SoC
一.综述 常见的低功耗技术 常见的技术可以总结为7种,其中前4种需要设计者重点关注,后面三种其实都集成到工具里了,不专门做这方面研究的知道原理即可. (1)power gating, 关电压.手动设计 ...
- 数字IC设计工具教程——VCS常用命令
数字IC设计工具教程--VCS常用命令 文章目录 数字IC设计工具教程--VCS常用命令 编译开关(静态开关) 仿真开关(动态开关) 后处理打开DVE testbench中后处理系统函 覆盖率统计 门 ...
- 数字IC设计笔试题汇总(二)
数字IC设计笔试题汇总(二) 快秋招了,这篇博客记录了一些最近看见的数字IC设计相关的笔试题,仅供参考 1. 在边沿敏感的时序逻辑代码中使用(A)赋值,会导致综合前与综合后仿真结果不一致. A . 阻 ...
- 数字IC设计的第一步——Synopsys EDA Tools的安装
目录 简述 安装环境和文件 1. 环境 2. 文件 安装包链接 1. 环境 2. 文件 安装前踩坑 安装步骤 1. 安装前的准备工作 2. 用Synopsys Installer安装 3. 在wind ...
- 数字IC设计前端必读书籍
数字IC设计前端推荐书籍 本文将从简单到复杂的顺序依次列出数字IC设计需要阅读的书籍. 1.数字电路基础 数字IC设计最基础的书籍了,相关书籍比较多,可以随意挑选:主要是为了弄清楚与或门电路,触发器. ...
最新文章
- 一起做激光SLAM:ICP匹配用于闭环检测
- https://www.adminsub.net/tcp-udp-port-finder/14000 ——查找tcp端口对应的服务 可以看某些端口是否让恶意软件开启...
- 如何在 SAP 电商云 Spartacus UI 首页的产品展示里显示视频
- 重燃你的PHP安全之火.pdf,读《重燃你的php之火》总结笔记
- const与define之间的区别?
- word表格转换成html,delphi将word表格转换成html_取得Word 表格中的数据
- android 资料
- TensorFlow2.0:维度变换
- 扫描识别工具Dynamic Web TWAIN使用教程:单独添加/删除对象
- 如何下载乌龟svn中文版
- Adobe完全卸载工具
- E8.Net工作流开发架构
- Java实现手机号邮箱号登录_手机号、邮箱或者用户名登录的实现方法
- php 瀑布流 分页,waterfall瀑布流布局+动态渲染的实现
- 如何学习linux系统
- Mathematica三维画图一些技巧
- 计算机开机白屏怎么处理,电脑开机白屏怎么办如何解决开机白屏的问题
- 也许通过社群找工作,是未来的趋势。
- 谈谈区块链的常用架构
- Kali无线渗透获取宿舍WiFi密码(WPA)