Jump to content
Sign in to follow this  
qinhailiang

What's the meaning of this 'process' in uvm_root.svh?

Recommended Posts

process is a class and is part of the SystemVerilog language, not UVM/OVM, therefore you need to refer to the SV LRM for a definition.

For example, IEEE-1800-2007 section 11.9 Fine-Grain Process Control

A process is a built-in class that allows one process to access and control another process once it has started. Users can declare variables of type process and safely pass them through tasks or incorporate them into other objects. The prototype for the process class is as follows:

class process;
  enum state { FINISHED, RUNNING, WAITING, SUSPENDED, KILLED };
  static function process self();
  function state status();
  function void kill();
  task await();
  function void suspend();
  task resume();
endclass

Share this post


Link to post
Share on other sites

The process class is part of the SystemVerilog language. You're unlikely to find source code for the implementation. It's probably vendor-specific anyway. The SV LRM should provide enough description of the methods of the process class for you to use it.

Share this post


Link to post
Share on other sites

hi,

you cant give an SV implementation of that class as SV doesnt give you access to the information+functionality needed. also this is only an prototype showing the api its not something you may "extend" or use otherwise.

/uwe

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×