手把手教你跑一个UVM_demo(含源码)(一键复现)

这篇具有很好参考价值的文章主要介绍了手把手教你跑一个UVM_demo(含源码)(一键复现)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

笔记内容对应张强所著的《UVM实战》。该书对UVM使用进行了比较详尽的介绍,并在前言中提供了书籍对应源码的下载网址,是一本带有实操性的书籍,对新手比较友好,推荐阅读。
学习完第二章后,我们对UVM已经有了一个基本概念,但如何在自己的电脑上跑一个UVM deme,让知识“活”起来呢?嘿嘿,别急,实操马上开始!

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”,很容易获得,依据相应教程安装即可

uvm源码放在哪里的,硬件开发,硬件工程,verilog,芯片,fpga开发

1.3 验证modelsim 是否安装成功

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

uvm源码放在哪里的,硬件开发,硬件工程,verilog,芯片,fpga开发

2 UVM demo源码的移植

2.1 获取书籍配套源码

uvm源码放在哪里的,硬件开发,硬件工程,verilog,芯片,fpga开发

通过《UVM实战》中源码链接(https://www.hzcourse.com/web/refbook/detail/5651/229),获取书籍对应源码,解压后其目录结构如图所示,其中

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

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

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

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

uvm源码放在哪里的,硬件开发,硬件工程,verilog,芯片,fpga开发

  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,可以删除生成的文件。

uvm源码放在哪里的,硬件开发,硬件工程,verilog,芯片,fpga开发

3.2 以命令行方式运行demo

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

uvm源码放在哪里的,硬件开发,硬件工程,verilog,芯片,fpga开发

参考资料

UVM实战(卷一) 张强 编著 机械工业出版社

附录

源码获取见原文底部文章来源地址https://www.toymoban.com/news/detail-703467.html

到了这里,关于手把手教你跑一个UVM_demo(含源码)(一键复现)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【手把手教你制作一个简易版的shell】

    为了简便,命令行中的提示符我们可以直接用printf打印,而具体执行命令可以交给子进程去做,现在的关键是如何将获得的命令行中的命令切割。我们在学习C语言时提到了strtok函数,正好这个函数可以用来作为切割。 基本框架: 不知道大家注意到了没有,我们从键盘中读取

    2023年04月16日
    浏览(44)
  • 手把手教你做一个多路灰度传感器

    市面上有的灰度传感器对于一些人来说可能不合适  于是呢不少人想自己做,比如我,当时也是走了一些弯路的,现在把自己的经验写上来,各位动手能力强的自己拿去用 原理: 左边发射红外光,地面反射到光敏三极管,改变A_OUTx处的电压值,不同颜色和材质对反射回来的

    2024年02月15日
    浏览(47)
  • 手把手教你搭建一个Minecraft 服务器

    这次,我们教大家如何搭建一个我的世界服务器 首先,我们来到这个网站 MCVersions.net - Minecraft Versions Download List MCVersions.net offers an archive of Minecraft Client and Server jars to download, for both current and old releases! https://mcversions.net/   在这里,我们点击对应的版本,从左到右依次是稳定版

    2024年02月09日
    浏览(41)
  • 手把手教你写出第一个C语言程序

    大家好,我是努力学习游泳的鱼。这篇文章将手把手带你写出人生中第一个C语言程序, Hello, World 。在阅读本文之前,建议先百度 visual studio ,在微软官网下载并安装VS的最新版本,安装时记得勾选“C++桌面开发”选项。 2.1 环境 工欲善其事必先利其器,我们需要写C语言代码

    2024年02月10日
    浏览(48)
  • 手把手教你新建一个winform项目(史上最全)

    最近有粉丝订阅了我的博客专栏《winform控件从入门到精通》,但是却来问我平时使用什么软件来开发winform程序,我本以为订阅我专栏的粉丝至少应该是掌握Microsoft Visual Studio的基本用法,也能够创建winform项目,看来是我大意了,我的错,粉丝们!对于不会创建winform项目但是

    2024年02月04日
    浏览(50)
  • 手把手教你开发第一个HarmonyOS (鸿蒙)移动应用

    移动应⽤开发: Android IOS HarmonyOS (鸿蒙) 文档概览-HarmonyOS应用开发官网 2.1 系统的定义 2.1.1 系统的定位 HarmonyOS有三⼤特征: 搭载该操作系统的设备在系统层⾯融为⼀体、形成超级终端,让设备的硬件能⼒可以弹性 扩展,实现设备之间 硬件互助,资源共享。 对消费者⽽⾔,

    2024年02月02日
    浏览(63)
  • 手把手教你在ARM板上写一个驱动程序!

    摘要:搞嵌入式有两个方向,一个是嵌入式软件开发(MCU方向),另一个是嵌入式软件开发(Linux方向)。其中MCU方向基本是裸机开发和RTOS开发。而Linux开发方向又分为驱动开发和应用开发。其中应用开发相比于驱动开发来说简单一些,因为搞驱动你要和Linux内核打交道。而我们普

    2024年02月01日
    浏览(76)
  • 小白指南:手把手教你用低代码开发一个应用页面

    原文链接: 小白指南:手把手教你用低代码开发一个应用页面,点击链接查看更多技术内容; 一、什么是低代码开发 在了解低代码开发之前,我们先看看使用低代码开发的效果。 低代码开发效果示例 低代码开发是DevEco Studio为HarmonyOS开发者提供的可视化页面的开发方式,具

    2024年02月09日
    浏览(36)
  • 用Python手把手教你实现一个爬虫(含前端界面)

    前言 爬虫基本原理 使用Python的requests库发送HTTP请求 使用BeautifulSoup库解析HTML页面 使用PyQt5构建前端界面 实现一个完整的爬虫程序 结语 随着互联网的飞速发展,再加上科技圈的技术翻天覆地的革新,互联网上每天都会产生海量的数据,这些数据对于企业和个人都具有重要的

    2024年04月28日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包