I am developing a coverage collector class with 2 analysis ports, one to collect data from slave interface and one to collect data from master interface.
I tried to implement them using `uvm_analysis_imp_decl in following way
//Define analysis imports using macro
//Declare analysis imports
uvm_analysis_imp_master#(master_sequence_item, coverage) master_imp;
uvm_analysis_imp_slave#(slave_sequence_item, coverage) slave_imp;
And write methods are defined as follows
virtual function void write_master(master_sequence_item obj);
virtual function void write_slave(slave_sequence_item obj);
But while compile I get following error message
Error-[SV-VMNI] Virtual method not implemented
Virtual method 'write' not implemented in class
'_vcs_unit__3386724743_cbc_coverage_11_0' (declared in
coverage_collector.sv, at line 1).
Is there any way to implement coverage from 2 different interface in same subscriber class or do I need seperate subscriber classes?