Hi,
Trying to connect the APM monitor port to QSPI scoreboard export port through the TOP_ENV connect_phase(). Facing the following error and Not able to figure out the mistake in the below code. Please help me to check.
Thank you in advance.
UVM_ERROR @ 0: uvm_test_top.demo_tb0.qspi.m_qspi_sb.sb_apb_tr_monitor_port [Connection Error] connection count of 0 does not meet required minimum of 1
UVM_FATAL @ 0: reporter [BUILDERR] stopping due to build errors
//APB_MONITOR
//Analysis port declaraion.
uvm_analysis_port #(apb_transfer) item_collected_port;
function void apb_monitor::build_phase(uvm_phase phase);
super.build_phase(phase);
item_collected_port = new("item_collected_port", this);
endfunction : build_phase
//APB_ENV
apb_monitor bus_monitor;
function void apb_env::build_phase(uvm_phase phase);
super.build_phase(phase);
bus_monitor = apb_monitor::type_id::create("bus_monitor",this);
endfunction : build_phase
//QSPI_SCOREBOARD
//Export declaration.
uvm_analysis_export #(apb_pkg::apb_transfer) sb_apb_tr_monitor_port;
function void build_phase(uvm_phase phase);
super.build_phase(phase);
sb_apb_tr_monitor_port = new("sb_apb_tr_monitor_port", this);
endfunction: build_phase
//QSPI_ENV
qspi_sb m_qspi_sb;
function void qspi_env::build_phase(uvm_phase phase);
super.build_phase(phase);
m_qspi_sb = qspi_sb::type_id::create("m_qspi_sb",this);
endfunction: build_phase
//TOP_ENV
apb_pkg::apb_env apb0; // APB UVC
qspi_pkg::qspi_env qspi; // QSPI UVC
function automatic void build_phase(uvm_phase phase);
super.build_phase(phase);
apb0 = apb_pkg::apb_env::type_id::create("apb0",this);
qspi = qspi_pkg::qspi_env::type_id::create("qspi",this);
endfunction
function void connect_phase(uvm_phase phase);
super.connect_phase(phase);
//Connected APB analysis port to QSPI SB export.
apb0.bus_monitor.item_collected_port.connect(qspi.m_qspi_sb.sb_apb_tr_monitor_port);
endfunction: connect_phase