基于vcs+uvm+xilinx ip的仿真平台的半自动化搭建

这篇具有很好参考价值的文章主要介绍了基于vcs+uvm+xilinx ip的仿真平台的半自动化搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 总体概述

1.1软件环境

系 统:ubuntu 18.04

仿真平台:vcs_2018.09-SP2

开发平台:vivado 2019.2

本文的主要目的是自动化搭建基于vcs+uvm+xilinx ip的仿真平台,节省平台搭建的时间与精力。

1.2 概述

拿到一个项目,一般的平台搭建的步骤:去网上找一个makefile脚本(或者使用原项目脚本),修改相应的软件路径,添加rtl与tb顶层,如果工程中包含xilinx ip核就比较麻烦,需要添加相应的库文件,这里面最麻烦的就是对xilinx ip核的独立编译。有经验的工程师很快可以搞定,对于小白来说就要花一些时间。

vivado关联vcs仿真可以导出shell脚本,天然支持xilinx ip核,解决了上述的麻烦。将生成的脚本转换成makefile脚本,添加uvm编译仿真配置以及uvm开发代码,支持vcs+uvm+xilinx ip核的平台就搭建好了。

除了自动化的部分以外,我们需要准备的东西包括

  1. xilinx的工程(项目工程)

  2. makefile脚本(后面会给出模板,替换相应的位置即可)

  3. uvm代码(如果不需要uvm,用sv即可)

2. vivado关联vcs仿真

这一步骤需要安装好vcs,能够正常启动,然后在vivado 2019.2中做如下配置:

2.1编译仿真库

点击Tools->Compile Simulation Libraries
ubuntu搭建uvm,VCS仿真平台,fpga

Compiled library location会默认选择 *.cache下

在Simulator executable path中添加vcs 仿真器可执行文件的位置,点击compile等待仿真库编译完成。

编译完仿真库,打开仿真库所在文件夹,找到synopsys_sim.setup,先记住它,后面会用到。

ubuntu搭建uvm,VCS仿真平台,fpga

2.2修改仿真配置

点击打开Settings->Simulation->

1.修改Target simulator为Veriolog Compiler Simulator(VCS)

2.在以下位置添加配置

Elaboration->vcs.elaborate.vcs.more_options中添加以下配置

   -cpp g++-4.8 -cc gcc-4.8 -LDFLAGS -Wl,--no-as-needed

保证系统当前使用的gcc g++版本是4.8

2.3启动仿真

3. 导出仿真脚本3.1导出仿真脚本

打开File->Export->Export Simulation,如下图Exoprt directoty路径

选择好以后,点击OK会生成相应的仿真脚本

ubuntu搭建uvm,VCS仿真平台,fpga

3.2 将shell改写为makefile

在导出路径下面会生成一个顶层命名的shell,将其改写成Makefile,这里已经将Makefile准备好模板,完成“填空”后直接添加即可。如下图,修改以下”##”标示的4处即可。

ubuntu搭建uvm,VCS仿真平台,fpga

3.3 关联xilinx ip库

创建synopsys_sim.setup文件,将路径指向2.1小节中的synopsys_sim.setup位置,内容如下:
ubuntu搭建uvm,VCS仿真平台,fpga

4. 添加UVM

添加文件夹uvm与uvm-1.2,其中uvm文件夹内是uvm开发代码,uvm-1.2是uvm库文件,将目录放到与vcs(导出仿真脚本路径)同级路径下,这样修改工程后再次导出的时候文件夹就不会被覆盖。uvm相关的配置已添加在Makefile脚本中,不需要再添加。
ubuntu搭建uvm,VCS仿真平台,fpga

5. 启动仿真

打开终端,输入make,启动仿真。

ubuntu搭建uvm,VCS仿真平台,fpga文章来源地址https://www.toymoban.com/news/detail-802107.html

到了这里,关于基于vcs+uvm+xilinx ip的仿真平台的半自动化搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • jenkins的安装和配置(flask结合jenkins半自动化部署流程)

    Jenkins 是一款流行的开源持续集成(Continuous Integration)工具,广泛用于项目开发,具有自动化构建、测试和部署等功能。 Jenkins官网: http://jenkins-ci.org/ Jenkins 特征 开源的Java语言开发持续集成工具,支持持续集成,持续部署。 易于安装部署配置:可通过yum安装,或下载war包以

    2024年02月03日
    浏览(37)
  • (Windows)半自动化标注-Label-Studio的安装和简单使用

    Label Studio 是一款优秀的标注软件,覆盖图像分类、目标检测、分割等领域数据集标注的功能。 SAM (Segment Anything) 是 Meta AI 推出的分割一切的模型。 报错的py文件里内容改为 import ruamel_yaml as yaml

    2024年02月15日
    浏览(29)
  • 69、Spring Data JPA 的 @Query查询 和 命名查询(半自动:提供 SQL 或 JPQL 查询)

    1、方法名查询(全自动,既不需要提供sql语句,也不需要提供方法体) 2、@Query查询(半自动:提供 SQL 或 JPQL 查询) 3、自定义查询(全手动) @Query查询 和 命名查询的区别: 命名查询与直接用@Query来定义查询的本质是一样,只不过它们定义SQL或JPQL语句的位置不同。

    2024年02月07日
    浏览(29)
  • 【数字IC设计】VCS仿真DesignWare IP

    DesignWare是SoC/ASIC设计者最钟爱的设计IP库和验证IP库。它包括一个独立于工艺的、经验证的、可综合的虚拟微架构的元件集合,包括逻辑、算术、存储和专用元件系列,超过140个模块。DesignWare和 Design Compiler的结合可以极大地改进综合的结果,并缩短设计周期。Synopsys在DesignW

    2024年02月14日
    浏览(37)
  • linux VCS+verdi运行UVM实战(第二章)中的例子

    目录 前言 介绍 建立工程 运行代码 查看波形 总结 前言 用VCS+verdi运行了下UVM实战中的例子(第二章)。 在某宝上花了几十块,买了个虚拟机(已经安装好VCS+verdi)。直接用UVM实战中,现成的uvm代码跑了下。 UVM实战源码下载地址:UVM实战源码下载 书中DUT的功能:通过rxd接收

    2023年04月08日
    浏览(36)
  • 使用VCS的ralgen命令产生UVM的寄存器模型的操作步骤

    1.根据reg.csv(寄存器的SPEC)文件生成一个reg.ralf文件,这个文件有特定的脚本生成(我目前不会),当然也可以自己手写(如果寄存器比较小)   寄存器的SPEC reg.ralf文件  2.\\\".ralf\\\"文件的格式  3.有reg.ralf文件之后,编写一个生成寄存器模型的Makefile文件 4.直接在terminal上 make genreg 便可产

    2024年02月03日
    浏览(30)
  • Xilinx关于Aurora IP核仿真和使用

    平台:vivado2017.4 芯片:xc7k325tfbg676-2 (active) 关于Aurora的开发学习。使用xilinx官方提供的IP核。 官方资料,pg046-aurora-8b10b.pdf和pg074-aurora-64b66b-en-us-12.0.pdf。 首先在IP Catalog中搜索Aurora IP核关于此IP有两种不同的IP,分别对应两种不同的编码方式和两份文档(PG046和PG074)。 这里先选

    2024年02月02日
    浏览(27)
  • Modelsim仿真Xilinx工程时IP核不生效

            在做Xilinx的仿真时一直被IP核无法在Modelsim中生效的问题所困扰,即使在modelsim的do脚本中vlog了IP核的*_netlist.v仍然无效,导致很长一段时间做Xilinx的仿真一直使用Vivado自带的simulation工具。         Vivado自带的工具在进行仿真时,有些低级错误无法给出有效提示,最简

    2024年02月15日
    浏览(29)
  • 【Xilinx FPGA】DDR3 MIG IP 仿真

    Memory Interface Generator (MIG 7 Series)是 Xilinx 为 7 系列器件提供的 Memory 控制器 IP,使用该 IP 可以很方便地进行 DDR3 的读写操作。本文主要记录 Xilinx DDR3 MIG IP 的仿真过程,包括 IP 配置和 DDR3 读写仿真两部分内容。 目录 1 MIG IP 配置 2 DDR3 读写仿真         在 Vivado 开发平台 IP C

    2024年02月09日
    浏览(36)
  • Xilinx关于GTX的IP核serdes仿真和使用

    平台:vivado2017.4 芯片:xc7k325tfbg676-2 (active) 关于GTX的开发学习。使用xilinx官方提供的IP核。 最近在学习完PCIE协议,使用逻辑解析PCIE协议代码各种包头。那么数据在外传输用的什么方式呢?这里就是使用了GTX高速串行总线。那么GTX高速串行总线是什么呢? 我们知道一般的数据

    2024年02月03日
    浏览(39)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包