linux系统搭建UVM平台

1 篇文章 0 订阅
1 篇文章 0 订阅

linux系统搭建UVM平台

最近在学UVM验证,要在linux系统上搭建UVM平台,关于linux上VCS和verdi的安装,大家可以看芯王国的博客(https://blog.csdn.net/weixin_40377195/article/details/109301426?spm=1001.2014.3001.5501),我主要介绍一下我的UVM搭建的过程。

下载UVM-1.1d

http://www.hzcourse.com/web/refbook/detail/5651/229
下载源代码即可,直接拖拽到虚拟机即可,记住存放的位置。

环境变量的设置

我的UVM-1.1d文件存放位置:
/home/ic_eda/synopsys/uvm-1.1d
设置环境变量:UVM_HOME
设置UVM_HOME
在这里插入图片描述
配置完记得source .bashrc
完成之后可以看一下/home/ic_eda/synopsys/uvm-1.1d/examples/Makefile.vcs文件,这个文件是对UVM库文件的编译,由于我的虚拟机为linux64,所以要将该文件的这个代码修改为:(加上-full64)

VCS= vcs -full64 -sverilog -timescale=1ns/1ns \
	+acc +vpi \
	+define+UVM_OBJECT_MUST_HAVE_CONSTRUCTOR \
	+incdir+$(UVM_HOME)/src $(UVM_HOME)/src/uvm.sv \
	$(UVM_HOME)/src/dpi/uvm_dpi.cc -CFLAGS -DVCS

保存退出。
下面就可以运行书上的例子了,以书中第一个例子为例:

最简单的验证平台

我主要介绍一下top_tb.sv文件和Makefile.vcs的编写。
进入/home/ic_eda/synopsys/example_and_uvm_source_code/puvm/src文件夹下,这个文件夹里是书中的例子。
打开ch2,将dut.sv文件复制到2.2.1文件夹中
top_tb.sv

//`timescale 1ns/1ps
`include "uvm_macros.svh"

import uvm_pkg::*;
`include "my_driver.sv"
`include "dut.sv"

module top_tb;

reg clk;
reg rst_n;
reg[7:0] rxd;
reg rx_dv;
wire[7:0] txd;
wire tx_en;

dut my_dut(.clk(clk),
           .rst_n(rst_n),
           .rxd(rxd),
           .rx_dv(rx_dv),
           .txd(txd),
           .tx_en(tx_en));

initial begin
   my_driver drv;
   drv = new("drv", null);
   drv.main_phase(null);
   $finish();
end

initial begin
   clk = 0;
   forever begin
      #100 clk = ~clk;
   end
end

initial begin
   rst_n = 1'b0;
   #1000;
   rst_n = 1'b1;
end

endmodule

Makefile.vcs

UVM_HOME	= /home/ic_eda/synopsys/uvm-1.1d

include /home/ic_eda/synopsys/uvm-1.1d/examples/Makefile.vcs

all: comp run

comp:
	$(VCS) +incdir+../sv \
		top_tb.sv

run:
	$(SIMV) +UVM_TESTNAME=test_2m_4s
	$(CHECK)

接下来运行该文件即可

make -f Makefile.vcs

接着

./simv

可以看到在这里插入图片描述
data is drived被输出了256次

  • 4
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值