Virtual sequencer error

Hi,

I am getting this below error in virtual sequencer. Can any one help tell me what is wrong with the code?

neither the item’s sequencer nor dedicated sequencer has been supplied to start item in ch_seq.seq

In reply to rag123:

Hi rag123,

as per your code you don’t use read_seqr both agent use only bus_seqr and you also miss connection of your seqr present in virtual seq please look at modified code hear :-
(add connect_phase in test and comment one seq in vseq because of missing same seqr in agent)

In reply to dhaval_sanepara:

Dhaval,
the env has two agents and each of them has respective sequencers. so i am using a virtual sequence i dont think we need to explicitly set the connection.

In reply to rag123:

Hi,

Name Type Size Value

uvm_test_top bus_test_base - @341
m_agent bus_agent - @360
m_driver bus_driver - @385
rsp_port uvm_analysis_port - @404
seq_item_port uvm_seq_item_pull_port - @394
m_sequencer bus_sequencer - @414 >>>>>>>>>>>>>>>>>>>>>>>>>>>> //type is bus_seqr
rsp_export uvm_analysis_export - @423
seq_item_export uvm_seq_item_pull_imp - @541
arbitration_queue array 0 -
lock_queue array 0 -
num_last_reqs integral 32 'd1
num_last_rsps integral 32 'd1
m_agent2 read_agent - @369
m_driver read_driver - @557 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> // type is read
rsp_port uvm_analysis_port - @576
seq_item_port uvm_seq_item_pull_port - @566
m_sequencer bus_sequencer - @586 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> // type is bus_seqr
rsp_export uvm_analysis_export - @595
seq_item_export uvm_seq_item_pull_imp - @713
arbitration_queue array 0 -
lock_queue array 0 -
num_last_reqs integral 32 'd1
num_last_rsps integral 32 'd1

your bothe seqr extends from uvm_seqr … and you try to on seq on read_seqr that not present in any agent that’s why i comment one of the seq.start.

and second thing provide manual connection is good with vseq.

In reply to dhaval_sanepara:

Thanks Dhaval.I realized what the problem was, i was pointing to both the sequencer to be pointing to same bus_sequencer as u mentioned; I fixed that. Also there is no need to comment out one of that start method as both of them run in parallel, i did the connection in connect_phase of test.

ch_seq.bs_sqr = m_agent.m_sequencer;
ch_seq.rd_sqr = m_agent2.m_sequencer;