qinhailiang Posted May 31, 2011 Report Share Posted May 31, 2011 in uvm_root.svh, there is a line code as follow: process phase_runner_proc; Please ask for where the 'process' is defined? Quote Link to comment Share on other sites More sharing options...
uwes Posted May 31, 2011 Report Share Posted May 31, 2011 hi, phase_runner_proc holds the process handle of the phaser (executing the phases via uvm_phase::m_run_phases()) Quote Link to comment Share on other sites More sharing options...
qinhailiang Posted May 31, 2011 Author Report Share Posted May 31, 2011 hi, uwes i know phase_runner_proc holds the process type handle, but what is the process's struct look like? is it a class? Quote Link to comment Share on other sites More sharing options...
Bart Posted May 31, 2011 Report Share Posted May 31, 2011 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 Quote Link to comment Share on other sites More sharing options...
qinhailiang Posted May 31, 2011 Author Report Share Posted May 31, 2011 thanks a lot! ps:could you give me a source code implementation of the process class??? Quote Link to comment Share on other sites More sharing options...
Bart Posted May 31, 2011 Report Share Posted May 31, 2011 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. Quote Link to comment Share on other sites More sharing options...
qinhailiang Posted May 31, 2011 Author Report Share Posted May 31, 2011 thanks for your reply! Quote Link to comment Share on other sites More sharing options...
uwes Posted June 1, 2011 Report Share Posted June 1, 2011 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 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.