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

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

3天内不再提示

VCS/XRUN如何创建一个非UVM的简单仿真环境?

sanyue7758 来源:芯片设计验证 2023-05-12 12:37 次阅读

设计码完代码后,有时候想简单调试一下基本的通路,此时还没有验证资源进来,可以仿照modesim仿真的方法,创建一个.v/.sv的顶层,里面例化DUT,里面加预期激励;

下面是VCS/XRUN两种仿真工具最简单的demo,spi_slv.v是待测dut,tb_top.sv为顶层top,例化dut, 里面添加对应的激励;

1.VCSdemo

步骤一:c bash下设置工具对应的环境变量(如果已经设置好,则忽略)

setenvNOVAS_HOME $ENVDIR/apps/synopsys/verdi/2017.03
setenvVERDI_HOME $ENVDIR/apps/synopsys/verdi/2017.03
setenvLD_LIBRARY_PATH$VERDI_HOME/share/PLI/lib/LINUX64:$VERDI_HOME/share/PLI/IUS/LINUX64/boot:$LD_LIBRARY_PATH

步骤二:编译运行对应的.v/.sv 文件 + dumpfsdb所需要的pli

vcs -full64 -R spi_master.v tb_top.sv +time_scale=1ns -debug_pp -LDFLAGS -rdynamic-P ${NOVAS_HOME}/share/PLI/VCS/LINUX64/novas.tab

步骤三:例化顶层,添加fsdb dump 的系统函数, 添加激励

moduletb_top;
wire SDO;
wire SDI;
wireSCLK;
wireCS;
spi_slv m_spi(
.CS(CS),
.SDO(SDI),
.SDI(SDO),
.SCLK(SCLK)
);
initial begin
#10000;// simulation time
//TODO ADD code here
$finish();
end
initial begin
$fsdbDumpfile("test.fsdb");
$fsdbDumpvars(0,tb_top);
end
endmodule

步骤四:打开波形: verdi -f filelist.f -ssf test.fsdb

波形效果如下

daa16068-f076-11ed-90ce-dac502259ad0.png

2.XRUN demo:

步骤一:设置运行XRUN工具对应的环境变量

步骤二:编译运行对应的.v/.sv 文件 + dump shm 波形

xrun-sv-c-elaboratespi_master.vtb_top.sv-accessrwc&&xrun-R-inputwave_dump.tcl

wave_dump.tcl 文件:

database-open waves -into test.shm -default -event
probetb_top -all -dynamic -depth all -tasks -functions -all -memories -variablestb_top
run
exit

步骤三:例化顶层,添加激励

moduletb_top;
wireSDO;
wireSDI;
wire SCLK;
wireCS;
spi_slv m_spi(
.CS(CS),
.SDO(SDI),
.SDI(SDO),
.SCLK(SCLK)
);
initial begin
#10000;
//TODO ADD code here
$finish();
end
endmodule

步骤四:打开波形:simvision test.shm

波形效果如下:

dacc6eb6-f076-11ed-90ce-dac502259ad0.png

审核编辑:汤梓红

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

    关注

    50

    文章

    3872

    浏览量

    132163
  • UVM
    UVM
    +关注

    关注

    0

    文章

    181

    浏览量

    18965
  • VCS
    VCS
    +关注

    关注

    0

    文章

    78

    浏览量

    9497
  • 编译
    +关注

    关注

    0

    文章

    615

    浏览量

    32397
  • 仿真环境
    +关注

    关注

    0

    文章

    4

    浏览量

    5216

原文标题:VCS/XRUN如何创建一个非UVM的简单仿真环境?

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

收藏 人收藏

    评论

    相关推荐

    vcsxrun搭配uvm1.1/uvm1.2版本库的使用情况

    我们在项目中有时候需要使用不同的UVM版本库进行仿真,有时候还会在不同的仿真器之间进行切换,本文简单总结了一下vcs
    的头像 发表于 10-27 09:41 1611次阅读

    VCS仿真指南(第二版).pdf

    包括两种调试界面:Text-based:Command Line Interface(CLI) 和 GUI-based(VirSim);仿真主要的两步骤是编译,运行: VCS仿真指南
    发表于 12-15 10:27

    VCS DVE 仿真工具讲解

    VCS是Synopsys公司的数字逻辑仿真工具,DVE是图形界面,便于调试RTL代码,查看波形。本视频简要介绍VCS的常用概念。 欢迎大
    发表于 10-04 13:07

    IC验证之UVM常用宏汇总分析(四)

    OVM中过时的用法,使用纯净的UVM环境:`define UVM_NO_DEPRECATED除了上述通用的宏外,针对不同的仿真工具需要定义不同的宏:QUESTA、
    发表于 12-02 15:24

    IC验证"简单UVM验证平台"是如何搭建的(六)

    连载....小编考虑到好的连续剧不能没有结尾,所以后期会持续更新ic验证的UVM相关内容.......今天更新
    发表于 12-04 15:48

    数字IC验证之“搭建可以运行的uvm测试平台”(5)连载中...

    的transaction,以及创建用于产生事物的事物发生器sequence。  在uvm验证平台中穿梭各个组件之间的基本信息单元是被称为transaction的数据对象,也就是我们
    发表于 01-26 10:05

    什么是uvmuvm的特点有哪些呢

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

    请问下在UVM中的UVMsequences是什么意思啊

    uvm_object基类扩展得到。UVM sequences不是在仿真的开始,而是在仿真的过程中生成并分配内存的,也没有类似uvm_comp
    发表于 04-11 16:43

    基于linux系统的VCS使用及仿真说明

    最近在学习VCS,现将VCS些使用心得记录下来。VCS是synopsys的仿真verilog的仿真
    发表于 07-18 16:18

    基于linux系统实现的vivado调用VCS仿真教程

    在linux系统上实现vivado调用VCS仿真教程 作用:vivado调用VCS仿真可以加快工程的仿真和调试,提高效率。 前期准备:确认安
    的头像 发表于 07-05 03:30 1.1w次阅读
    基于linux系统实现的vivado调用<b class='flag-5'>VCS</b><b class='flag-5'>仿真</b>教程

    使用VCS仿真Vivado IP核时遇到的问题及解决方案

    前年,发表了一篇文章《VCS独立仿真Vivado IP核的一些方法总结》(链接在参考资料1),里面简单讲述了使用VCS仿真Vivado IP
    的头像 发表于 08-29 14:41 1618次阅读

    浅谈VCS的两种仿真flow

    几乎所有的芯片设计、芯片验证工程师,每天都在和VCS打交道,但是由于验证环境的统一化管理,一般将不同的编译仿真选项集成在一个文件里,只需要一两个人维护即可。所以大部分人比较少有机会去深入地学习
    的头像 发表于 01-10 11:20 2455次阅读

    如何用vcs+verdi仿真Verilog文件

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

    vcs工作环境

    vcs工作环境
    发表于 05-15 09:38 0次下载

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

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