Jump to content

Compiling UVM 1.1


Recommended Posts

Hi All,

I downloaded the uvm package (UVM 1.1 class library code and user guide) form http://www.accellera.org/activities/vip.

While trying to compile the uvm code + u_first.sv I see the following error.

Compile command used:

----------------------

vlog -timescale "1ns/1ns" -mfcu -suppress 2181 +define+UVM_NO_DPI +acc=rmb +incdir+uvm/src uvm/src/uvm.sv u_first.sv

ERROR:

------

QuestaSim-64 vlog 6.5d Compiler 2009.11 Nov 18 2009

-- Compiling package uvm_pkg

** Error: uvm/src/base/uvm_callback.svh(694): Failed to find name 'get' in specified scope

** Error: uvm/src/base/uvm_callback.svh(774): Failed to find name 'get' in specified scope

** Error: uvm/src/base/uvm_report_object.svh(273): Failed to find name 'get' in specified scope

** Error: uvm/src/base/uvm_phase.svh(649): Failed to find name 'get' in specified scope

** Error: uvm/src/base/uvm_phase.svh(659): Failed to find name 'get_inst' in specified scope

Could you please help.

------------------------------------------------------

While compiling ovm, the compile was very smooth.

Would like to understand for compiling uvm why the dpi stuff is needed why not for ovm.

Link to comment
Share on other sites

The UVM dpi code provides additional features including regression expression searching and command-line arguments. It's not "needed" for the core functionality which is why the define is available.

As for the error, looks like you have an older simulator version than that which supports UVM.

Link to comment
Share on other sites

Hi Jadec, Thanks for the reply about why dpi code is present in uvm.

Regarding the error I changed my simulator from questa 6.5d to 6.6d and it worked. Thanks again.

From the error message how could you decode that it is a tool version issue? Error Message "Failed to find name 'get' in specified scope" is specified scope the hint words?

Link to comment
Share on other sites

KumarSunilB,

The OVM developers policy was to make sure that the source code was strictly written in SystemVerilog without requiring any C code. The UVM developers changed that policy and now contains certain functionality that can not be implemented in pure SystemVerilog source code (command line switches and hierarchical references via string pathnames). The UVM also has functions for string matching regular expressions that would be very inefficient to implement in SystemVerilog and are readily available in existing C libraries.

UVM 1.1 can be run on Questa 6.6e or greater. The current version of Questa is 10.0c and contains a precompiled version of UVM 1.1.

Dave

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...