Get_response

Hi All,

In my test case I am reading the data from memory using using apb_sequence.
apb_master_base_seq_0.start(env_0.apb_master_agent_0.apb_master_sequencer_0);

After driving the data to pins I am expecting the read data and the same is passed back to seq using the rsp port
rsp.data = this.vif.master_dcb.PRDATA;
seq_item_port.item_done(rsp);

in seqeunce i am getting this response using
get_response(rsp)

but this response is not coming to my seqeunce.

Can any one please help me in this.

Thanks & Regards,
Shriramvaraprasad B.

In reply to SHRI12326:

To send response back to sequence you need to use this in driver,

//To match sequence_id of running sequence
rsp.set_id_info(req);

//Then return the response through seq_item_port 
//to the sequence
seq_item_port.put_response(rsp);

In reply to SHRI12326:

That should work (unless I am missing something obvious) - do you get some error/warning? How do you say it is not getting responses? Is your seq::body() stuck?

Regards
Srini
www.verifworks.com

In reply to SHRI12326:

If fou do not say how you retrieve your sequence in the driver nobody can answer your question.
Are you using seq_item_port.get_next_item(req) or do you perform a get on the seq_item_port?

In reply to chr_sue:
Yes, I am using the get_next_item to get seq from seq_item_port.

In reply to SHRI12326:

Each get_next_item requires a seq_item_port.item_done(rsp). rsp is the response you are putting back to the sequence.