M_sequencer giving an error when i used in sequence for multiple instance agents configuration

Hi,

in My project environment i am using VIP and iam writing a user defined sequence extended from vip_seq i.e vip_sequence.

in My body task of sequence iam doing get_config(m_sequencer) which results in FATAL error. In this case i have 3 instances of spi agents. like spi_agent #(3) spi_agent_t; and all other interfaces and config as 3.

================================================================
[b]"UVM_FATAL ::config id has an vip_config_base, but it is not of type spi_vip_config

I am not getting any UVM error when i use only one agent i.e spi_agent #(1) spi_agent

Sample sequence code:

class user_sequence extends from vip_sequence;
config_t cfg; // config_t is the object type defined in vip_sequence.
task body()

cfg = config_t::get_config(m_sequencer); // This results in Error


endtask

My question is does m_sequencer gives an error when we have multiple sequencer derived from uvm_sequencer?
How can i resolve this here as iam using VIP, iam not able to declare p_sequencer and use it in my sequence to overcome this limit?
Is there any other way to

In reply to murali405:

You would need 3 m_sequencers, but you don’t have. You should use a virtual sequence with handles to your local sequencers in your agents.