0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何用Verdi查看UVM环境中的变量?

sanyue7758 来源:处芯积律 2023-06-25 16:01 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

我们常用的debug UVM的方法是通过打印log实现。有没有办法像 debug RTL代码一样将 UVM 中变量拉到波形上看呢?答案是有的,下面让我们看看是怎么做到的。

第一步在UVM compile 的选项里面加入-debug_access+all

da5d8fe4-132d-11ee-962d-dac502259ad0.png

第二步在 simulation 选项中加入下面三个选项-gui=verdi+UVM_VERDI_TRACE="UVM_AWARE+RAL+HIER+COMPWAVE"+UVM_TR_RECORD这里 -gui=verdi是启动verdi 和vcs联合仿真。+UVM_VERDI_TRACE这里是记录 UVM中 register,component 的波形。+UVM_TR_RECORD记录 transaction的信息。

da77a6d6-132d-11ee-962d-dac502259ad0.png

我们 编译完之后,然后开始跑仿真。跑仿真的时候会跳出下面verdi的界面。

da871eea-132d-11ee-962d-dac502259ad0.png

接下来点击绿色的箭头就可以跑仿真

dab06386-132d-11ee-962d-dac502259ad0.png

跑完仿真之后,我们点击Verdi 里面 UVM这个地方,会出现UVM的环境。

dabe181e-132d-11ee-962d-dac502259ad0.png

下面我们看下 uvm component里面的信息,通过指定一个 component 然后右击 add to waveform 就可以看 component的信息。

dad70130-132d-11ee-962d-dac502259ad0.png

Sequence里面的信息怎么看呢?下面点击sequence view 就可以看 sequnce的信息。

dafa4cda-132d-11ee-962d-dac502259ad0.png

我们要看sequence里面的一个变量变化,可以这么做。

先将一个object或者一个sequence添加到watch中。

db10b72c-132d-11ee-962d-dac502259ad0.png

从这个watch中的object或者sequence里面选择一个变量到 waveform上。重跑simulation,就可以看到对应添加变量的值值。

db2f3512-132d-11ee-962d-dac502259ad0.png

下面是我们在波形上看到sequence里面变量的信息

db421182-132d-11ee-962d-dac502259ad0.png

看register model里面的值也是类似的做法,找到 register view,然后找到 register model 添加 register 到 waveform里面。

db5665d8-132d-11ee-962d-dac502259ad0.png

重跑simulation,就可以看到register值。

db673e8a-132d-11ee-962d-dac502259ad0.png

用verdi debug UVM总体感觉比较麻烦,个人还是喜欢打印log的方式debug。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    53

    文章

    4407

    浏览量

    137671
  • UVM
    UVM
    +关注

    关注

    0

    文章

    183

    浏览量

    19943
  • Verdi
    +关注

    关注

    0

    文章

    22

    浏览量

    9130
  • 变量
    +关注

    关注

    0

    文章

    615

    浏览量

    29371

原文标题:如何用Verdi查看UVM环境中的变量?

文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何构建UVM寄存器模型并将寄存器模型集成到验证环境

    ),通常也叫寄存器模型,顾名思义就是对寄存器这个部件的建模。本文要介绍的内容,包括对UVM寄存器模型的概述,如何构建寄存器模型,以及如何将寄存器模型集成到验证环境。篇幅原因,将在下一篇文章再给出寄存器
    发表于 09-23 14:29

    谈谈UVMuvm_info打印

    \_file, \`uvm\_line)。当uvm\_report\_enabled(xxx)函数返回为1时,才会执行uvm\_report\_info(xxx)。  参数和变量分析:
    发表于 03-17 16:41

    关于如何用示波器查看串口数据资料下载

    关于如何用示波器查看串口数据
    发表于 04-10 11:16 17次下载

    Modelsim uvm库编译及执行

    第一句话是设置uvm环境变量,指定uvm的dpi位置。 第二句话是创建work工作目录。 第三句话是编译源文件,并且通过-L指定几个编译库。 第三句是执行仿真,调用uvm
    的头像 发表于 12-01 11:25 4638次阅读
    Modelsim <b class='flag-5'>uvm</b>库编译及执行

    如何通过自动化脚本实现Questasim和Verdi的联合仿真

    : 《VERDI_HOME》/share/PLI/MODELSIM/${PLATFORM}。 首先需要把上面的库文件路径添加到系统的环境变量LD_LIBRARY_PATH ,如下:
    的头像 发表于 06-13 17:00 5968次阅读
    如何通过自动化脚本实现Questasim和<b class='flag-5'>Verdi</b>的联合仿真

    通过env命令来查看Linux系统当前的环境变量

    在 Linux 系统环境变量是用来定义系统运行环境的一些参数,常见的环境变量有HOME,SHELL,PATH等等。
    的头像 发表于 01-18 16:10 3095次阅读

    全网最实用的Verdi教程1

    过程,常常用来调试(debug)一些错误的情况。Verdi既可以阅读调试代码,又可以查看波形,包括数字设计的波形和模拟设计的波形。
    的头像 发表于 05-05 14:49 2.1w次阅读
    全网最实用的<b class='flag-5'>Verdi</b>教程1

    全网最实用的Verdi教程2

    过程,常常用来调试(debug)一些错误的情况。Verdi既可以阅读调试代码,又可以查看波形,包括数字设计的波形和模拟设计的波形。
    的头像 发表于 05-05 14:53 1.3w次阅读
    全网最实用的<b class='flag-5'>Verdi</b>教程2

    全网最实用的Verdi教程3

    过程,常常用来调试(debug)一些错误的情况。Verdi既可以阅读调试代码,又可以查看波形,包括数字设计的波形和模拟设计的波形。
    的头像 发表于 05-05 14:53 7850次阅读
    全网最实用的<b class='flag-5'>Verdi</b>教程3

    何用vcs+verdi仿真Verilog文件并查看波形呢?

    我们以一个简单的加法器为例,来看下如何用vcs+verdi仿真Verilog文件并查看波形。
    的头像 发表于 05-08 16:00 7807次阅读
    如<b class='flag-5'>何用</b>vcs+<b class='flag-5'>verdi</b>仿真Verilog文件并<b class='flag-5'>查看</b>波形呢?

    何用vcs+verdi仿真Verilog文件

    我们以一个简单的加法器为例,来看下如何用vcs+verdi仿真Verilog文件并查看波形。 源文件内容如下:
    的头像 发表于 05-11 17:03 2722次阅读
    如<b class='flag-5'>何用</b>vcs+<b class='flag-5'>verdi</b>仿真Verilog文件

    Verdi环境配置、生成波形的方法

    Verdi是一个功能强大的debug工具,可以配合不同的仿真软件进行debug,很多企业常用的就是VCS+Verdi或或者Xcelium(xrun)+Verdi的方式进行代码的仿真与检查
    的头像 发表于 05-29 09:48 8628次阅读
    <b class='flag-5'>Verdi</b><b class='flag-5'>环境</b>配置、生成波形的方法

    有没有办法像debug RTL代码一样将UVM变量拉到波形上看呢?

    我们常用的debug UVM的方法是通过打印log实现。有没有办法像 debug RTL代码一样将 UVM 变量拉到波形上看呢?答案是有的,下面让我们看看是怎么做到的。
    的头像 发表于 06-29 15:14 3003次阅读
    有没有办法像debug RTL代码一样将<b class='flag-5'>UVM</b><b class='flag-5'>中</b><b class='flag-5'>变量</b>拉到波形上看呢?

    一文详解UVM设计模式

    本篇是对UVM设计模式 ( 二 ) 参数化类、静态变量/方法/类、单例模式、UVM_ROOT、工厂模式、UVM_FACTORY[1]单例模
    的头像 发表于 08-06 10:38 4220次阅读
    一文详解<b class='flag-5'>UVM</b>设计模式

    GDB调试如何进行变量查看

    变量查看 变量查看: 最常见的使用便是使用print(可简写为p)打印变量内容。 以上述程序为例: gdb helloworld break
    的头像 发表于 09-26 16:17 3032次阅读