# uvm_domain

Phasing schedule node representing an independent branch of the schedule. Handle used to assign domains to components or hierarchies in the testbench

Summary

uvm_domain
Phasing schedule node representing an independent branch of the schedule.
Class Hierarchy
uvm_void
uvm_object
uvm_phase
uvm_domain
Class Declaration
> class uvm_domain extends uvm_phase
Methods |
get_domains | Provides a list of all domains in the provided domains argument.
get_uvm_schedule | Get the “UVM” schedule, which consists of the run-time phases that all components execute when participating in the “UVM” domain.
get_common_domain | Get the “common” domain, which consists of the common phases that all components execute in sync with each other.
add_uvm_phases | Appends to the given schedule the built-in UVM phases.
get_uvm_domain | Get a handle to the singleton uvm domain
new | Create a new instance of a phase domain.
jump | jumps all active phases of this domain to to-phase if there is a path between active-phase and to-phase

### Methods

### get_domains

> static function void get_domains(
> | output | uvm_domain | domains[string]
> )

Provides a list of all domains in the provided domains argument.

### get_uvm_schedule

> static function uvm_phase get_uvm_schedule()

Get the “UVM” schedule, which consists of the run-time phases that all components execute when participating in the “UVM” domain.

### get_common_domain

> static function uvm_domain get_common_domain()

Get the “common” domain, which consists of the common phases that all components execute in sync with each other. Phases in the “common” domain are build, connect, end_of_elaboration, start_of_simulation, run, extract, check, report, and final.

### add_uvm_phases

> static function void add_uvm_phases(
> | uvm_phase | schedule
> )

Appends to the given schedule the built-in UVM phases.

### get_uvm_domain

> static function uvm_domain get_uvm_domain()

Get a handle to the singleton uvm domain

### new

> function new(
> | string | name
> )

Create a new instance of a phase domain.

### jump

> function void jump(
> | uvm_phase | phase
> )

jumps all active phases of this domain to to-phase if there is a path between active-phase and to-phase

> virtual class uvm_void

The uvm_void class is the base class for all UVM classes.

> virtual class uvm_object extends uvm_void

The uvm_object class is the base class for all UVM data and hierarchical classes.

> class uvm_phase extends uvm_object

This base class defines everything about a phase: behavior, state, and context.

> class uvm_domain extends uvm_phase

Phasing schedule node representing an independent branch of the schedule.

> static function void get_domains(
> | output | uvm_domain | domains[string]
> )

Provides a list of all domains in the provided domains argument.

> static function uvm_phase get_uvm_schedule()

Get the “UVM” schedule, which consists of the run-time phases that all components execute when participating in the “UVM” domain.

> static function uvm_domain get_common_domain()

Get the “common” domain, which consists of the common phases that all components execute in sync with each other.

> static function void add_uvm_phases(
> | uvm_phase | schedule
> )

Appends to the given schedule the built-in UVM phases.

> static function uvm_domain get_uvm_domain()

Get a handle to the singleton uvm domain

> function new(
> | string | name
> )

Create a new instance of a phase domain.

> function void jump(
> | uvm_phase | phase
> )

jumps all active phases of this domain to to-phase if there is a path between active-phase and to-phase