VCS练习:VCS Debugging Basics

前言

虽然之前一直在用vcs,但是有一些边边角角的内容都比较模糊,特地从头看一下vcs的官方lab,对应的资料如下!
下图所示的资料,点击下载
在这里插入图片描述

学习目标

通过使用 插入verilog任务 和 UCLI 完成debug

Part A:Debugging with Verilog System Task Calls

Task 1 学会一个有用的vcs选项:-h(help)

  • 输入下面的指令,可以查看vcs的选项,以达到查询命令的目的!
vcs -h //h就是help,好理解吧!

在这里插入图片描述

在这里插入图片描述

Task2 编译和运行第一次验证

  • 使用下面命令,报错!
vcs -f adder.f -R

在这里插入图片描述

  • 如下图所示,应该是02?
    在这里插入图片描述

Task 3 Debugging 这个错误

  • 通过调用verilog函数来帮助!
    在这里插入图片描述
  • 添加了上述文档,再重新编译仿真
    在这里插入图片描述
  • 发现sum[1]=0,那么我们再来查看add4.v 中的sum值!
    在这里插入图片描述
  • 发现sum[1]=0,那么我们再来查看add4.v 中的sum值!
  • 再在下面的基础上调用查看下一层的值,并且用$stop来暂停仿真!
    在这里插入图片描述
  • 再编译仿真!
vcs -f adder.f -R
  • 将之前的finish改成stop,就是为了在这里设置断点,不直接退出!输入run继续执行,如下图所示!
    在这里插入图片描述
    在这里插入图片描述
  • 随着run的输入,就会发现是addr4模块存在问题,接下来,我们使用quit或者exit退出断点测试
    在这里插入图片描述
  • 打开fa.v文件,发现表达式错误,没有加进位输入!
    在这里插入图片描述

在这里插入图片描述

  • 修改过后,继续编译仿真,顺利通过!
    在这里插入图片描述
  • 使用下面的命令继续仿真一下
./simv +monitoroff

在这里插入图片描述

  • 如上图显示,这次并没有打印其中的过程,是因为我们将仿真文件中的监控能力给关闭了!
    在这里插入图片描述
  • 关闭了这些打印消息,是不是加大了仿真速度?

Part B:Debugging with VCS UCLI Debugger

Task 1 编译和运行第一次验证

  • 进入part b,编译仿真
    在这里插入图片描述
  • 出现如下图的错误
    在这里插入图片描述

Task 2 用UCLI Debugger进行

  • 在addertb.v中,将 f i n i s h 改 为 finish改为 finishstop,如下图所示:
    在这里插入图片描述

  • 使用下面的命令编译仿真

vcs -f adder.f -R -debug_all -ucli

Task 3 用UCLI Debugger进行debugging

  • 如果你忘了ucli的命令,可以输入help查询,如下图所示:
    在这里插入图片描述
  • 然后输入scope,show
    在这里插入图片描述
  • 再输入scope u1等,如图所示:
    在这里插入图片描述
  • 你发现了吗?二选一多路选择器的sum_0应该选择0,而不是1!

在这里插入图片描述

  • 用ctrl+shift+T新建一个terminal,查看add8.v,不要退出UCLI模式!
    在这里插入图片描述
    在这里插入图片描述
  • 发现二选一多路选择器,刚好反了,但是不要修改,我们回到ucli继续进行!
    在这里插入图片描述
  • 再使用下面命令,如图在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 上面这不是修复,只是在不离开ucli模式进行模拟!(是不是很复杂,所以公司中很少有人用!)
  • 之前的那么多命令,记得住吗?下面命令可以帮助你生成ucli模式中用了那些命令(ucli.key)!
./simv -ucli -i test.s

在这里插入图片描述

Part C: Getting Help

Task 1 Submitting Files for Help

如果您需要从VCS支持团队获得帮助,有两个开关可以使您与支持人员的工作更加顺利。分别是-ID和-Xman =4。让我们看看这些开关会产生什么。
不需要更改目录

  • 使用下面命令将vcs等信息记录到id.txt中!
vcs-ID > id.txt;more id.txt

在这里插入图片描述

  • 使用下面命令,效果如下:(将adder.f中的文件全部写入了tokens.v文件中!)
vcs -f adder.f -Xman=4;ls

在这里插入图片描述

  • 使用上面的命令生成了tokens.v文件,文件如下:
    在这里插入图片描述

后记

你看到这里了吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杰之行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值