uvm_domain¶
- class uvm.base.uvm_domain.UVMDomain(name)[source]¶
Bases:
UVMPhase
Class: UVMDomain
Phasing schedule node representing an independent branch of the schedule. Handle used to assign domains to components or hierarchies in the testbench. Domain is basically a container for the uvm phases, or custom phases if custom schedule is created.
- m_common_domain = <uvm.base.uvm_domain.UVMDomain object>¶
- m_uvm_domain = <uvm.base.uvm_domain.UVMDomain object>¶
- m_domains: Dict[str, UVMDomain] = {'common': <uvm.base.uvm_domain.UVMDomain object>, 'uvm': <uvm.base.uvm_domain.UVMDomain object>}¶
- m_uvm_schedule = <uvm.base.uvm_phase.UVMPhase object>¶
- classmethod get_uvm_schedule()[source]¶
Get the “UVM” schedule, which consists of the run-time phases that all components execute when participating in the “UVM” domain.
- Returns
Returns UVM schedule consisting of uvm phases.
- Return type
- classmethod get_common_domain()[source]¶
Function: 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. Returns:
- classmethod add_uvm_phases(schedule)[source]¶
Appends to the given
schedule
the built-in UVM phases.- Parameters
schedule (UVMPhase) – Phase to be added to the schedule.