UVM – not recognized ??

Compilation Errors

class my_env extends uvm_environment ;
|
ncvlog: *E,SVNOTY (my_env.svh,1|35): Syntactically this identifier appears to begin a datatype but it does not refer to a visible datatype in the current scope.

Problem : There’s no uvm_environment datatype in UVM.

Solution :

class my_env extends uvm_env;

 

PS : If you still get the same error, check if

1. You mentioned -sv or -sv uvm when compiling the code.

2. Check if your environment is setup.

% echo $UVM_HOME                                       // Is this pointing to the UVM class library ?

3. Check if you have the line below in your code

`include “uvm_macros.svh”

4. Check if you have imported uvm packages

import uvm_pkg::* ;

Note : Even if you have imported the package into one of your own, self-created packages, it is necessary to import it into the top TB module. I spent almost a week trying to compile a simple Hello World Env.