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

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

3天内不再提示

如何在自己的电脑上跑一个UVM_demo呢?

冬至子 来源:多读点书 作者:夕文x 2023-05-26 15:11 次阅读

1 运行前准备

1.1 系统要求

  • win10(理论上可以安装下方modelsim软件的window平台都可以)
  • modelsim 2019.2(本次展示使用的modelsim版本为2019.2,理论上所以支持UVM1.1.的modelsim都可以)

1.2 modelsim 2019.2软件的安装

modelsim软件的下载和安装,在网上很容易搜到,例如BING搜索“modelsim 2019.2”,很容易获得,依据相应教程安装即可

图片

1.3 验证modelsim 是否安装成功

  1. 确保添加了LECENSE,并设置好了环境变量
  2. 在cmd窗口中输入 vsim -c 命令,出现如下箭头指示的** ModelSim>** 输入提示符号时,说明安装成功。

图片

2 UVM demo源码的移植

2.1 获取书籍配套源码

图片

  • puvm中为书籍UVM案例源码,src目录下存储了《UVM实战》书籍各个章节对应的源码,这也是我们复现书籍内容真正需要的源码。
  • uvm-1.1d中为UVM库中的内容,用来支持UVM的使用,在安装modelsim后,在modelsim安装目录下也会包含这样一个目录,如下图所示,所以我们只是使用UVM的话,并不需要关心该内容。

2.2 以2.5.2节源码为例进行移植

注意:如果复现困难,文末提供了项目源码,可自取

  1. 将puvm\\src\\ch2\\section2.5\\2.5.2和puvm\\src\\ch2\\dut复制到同一个目录(这里是UVM_demo)下,如图

图片

  1. 修改UVM_demo\\2.5.2\\filelist.f文件内容为:
../dut/dut.sv
top_tb.sv
  1. 新建UVM_demo\\2.5.2\\run_gui.bat文件,并写入如下内容:
vlib work
vlog -f filelist.f
vsim top_tb +UVM_TESTNAME=base_test -do "run -all;exit" -l top_tb.log -voptargs=+acc
  1. 另:效率考虑,还提供了命令行运行的run_cmd.bat脚本,清理生成文件的clean.bat脚本。

3 UVM demo的运行

3.1 以gui方式运行demo

  1. 进入UVM_demo\\2.5.2\\目录,鼠标双击run_gui.bat,
  2. 然后在弹出的Finish Vsim窗口点击“否”
  3. 查看modelsim的transcript窗口,通过报告,可以看到,demo运行通过。
  4. 通过鼠标双击clean.bat,可以删除生成的文件。

图片

3.2 以命令行方式运行demo

  1. 进入UVM_demo\\2.5.2\\目录,鼠标双击run_cmd.bat,
  2. 通过cmd窗口显示的报告,可以看到,demo运行通过。
  3. 通过鼠标双击clean.bat,可以删除生成的文件。

图片

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

    关注

    0

    文章

    182

    浏览量

    19181
  • GUI系统
    +关注

    关注

    0

    文章

    3

    浏览量

    5912
  • MODELSIM仿真
    +关注

    关注

    0

    文章

    15

    浏览量

    7319
收藏 人收藏

    评论

    相关推荐

    RISC-V SoC + AI | 在全志 D1「哪吒」开发板 ncnn 神经网络推理框架的 demo

    的为 RISC-V 架构做过适配和优化的神经网络框架。 本文 是份教程,步骤骑着步骤 (step by step) 地展示了如何在块全新的全志 D1「哪吒」开发板
    发表于 02-26 10:51

    何在电脑安装RT系统?

    老板买了片FPGA,使用LabVIEW编程,一台电脑做上位机,一台电脑RT。请教哪里有教程在电脑安装RT系统
    发表于 10-20 16:06

    何在simv sim_opts中使用uvm_set_verbosity

    -uvm_set_verbosity本文只介绍如何在simv sim_opts中使用uvm_set_verbosity。
    发表于 12-18 06:42

    数字IC验证之“什么是UVM”“UVM的特点”“UVM提供哪些资源”(2)连载中...

    在搭建平台结构省去了不少时间,而且在使用其他工程师提供的uvm平台时显得得心应手。uvm为用户提供了标准的验证平台的模板,因此,所有基
    发表于 01-21 16:00

    代码是如何在单片机上

    浅谈:对于任何电子产品,硬件是软件运行的基础,而软件赋予了硬件灵魂,两者有机结合成为功能丰富、强大的系统。我们写的代码是如何在单片机上
    发表于 11-17 07:47

    何在STM32一个串口指令模式

    串口指令模式有何优势?如何在STM32一个串口指令模式
    发表于 12-07 06:48

    何在自己的Windows电脑中运行linux系统

    的简单命令3.vim4.vim的使用5.配置vim5.1基本配置5.2快捷编译执行5.3快捷保存退出1.嵌入式环境搭建如何在自己的Windows电脑中运行linux系统?你需要
    发表于 12-17 06:13

    何在块全新的全志D1开发板ncnn神经网络推理框架的demo

    本文是份教程,步骤骑着步骤 (step by step) 地展示了如何在块全新的全志 D1「哪吒」开发板
    发表于 12-28 07:29

    什么是uvmuvm的特点有哪些

    直观的印象,就是uvm验证平台,它是分层的结构。图中的每一个巨型框都代表着平台的构成元素。这些元素,我们称为平台组建,下面来简单的分析
    发表于 02-14 06:46

    LX110T的板子demo的时候遇到的些错误的解决办法总结

    .前段时间在玩xilinx送我在XUPV5-LX110T,首先跑xilinx给出的XUPV5-LX110T的demo设计,结果发现遇到了些错误但是
    发表于 02-11 15:30 1989次阅读

    何在鸿蒙系统ArkUI应用

          大家可以看到很明显这是 ArkUI 的应用,在远程模拟器目前还只可以在 P40 Pro 。    其实为了这个目的,只
    的头像 发表于 11-15 09:28 3003次阅读
    如<b class='flag-5'>何在</b>鸿蒙系统<b class='flag-5'>上</b>弄<b class='flag-5'>一</b><b class='flag-5'>个</b>ArkUI应用

    何在xWR1xxx芯片运行mmw demo

    何在xWR1xxx芯片运行mmw demo
    发表于 11-01 08:27 0次下载
    如<b class='flag-5'>何在</b>xWR1xxx芯片<b class='flag-5'>上</b>运行mmw <b class='flag-5'>demo</b>

    何在ATECLOUD平台中搭建简单的测试demo

    ATECLOUD平台搭建简单的测试项目demo。 我们以测试启动电压的demo搭建为例。 1. 在项目维护界面点击新增项目。 2. 在新增的项目页面的左侧可以自行添加测试名称以及各
    的头像 发表于 03-28 16:13 1006次阅读
    如<b class='flag-5'>何在</b>ATECLOUD平台中搭建<b class='flag-5'>一</b><b class='flag-5'>个</b>简单的测试<b class='flag-5'>demo</b>

    我的第二UVM代码—连接interface

    写testbench最最核心的部分就是发激励,今天用简单的示例来介绍如何在uvm里给RTL发激励。
    的头像 发表于 06-15 10:51 1585次阅读
    我的第二<b class='flag-5'>个</b><b class='flag-5'>UVM</b>代码—连接interface

    有没有办法像debug RTL代码样将UVM中变量拉到波形

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