关于put_response和get_response的总结

Response总结,共三种情况

(1)每一笔都等response -> 直接get_response

注意put_response的前提是当前的seq的body没有直接结束,这个body一定是最底层发req的那个seq的body

(2)连续发送数据,其中有的是blocking,有的是non-blocking的,针对blocking的req,发出去之后必须等待cpl回来之后才能发下一笔 -> 在一个seq里面多次发送req,如果是blocking的req就执行get-response,否则不执行,但是需要注意的是这个seq结束body的时间一定是所有req的rsp都回来了才结束;

(3)连续发,但是需要拿到每一个req的rsp->采用response handler,同样需要注意body任务的结束时间

针对driver需要注意,id_info一定要保证正确,get_next_item之后使用item_done();注意一定是不带rsp的,把rsp放在put_response(rsp)去做。

此外除了可以使用seq_item_port的put_response之外还可以使用rsp_port,针对seq_item_port除了使用put_response以外应该还可以使用put(没实验过)。

关于put_response和get_response的总结_第1张图片

记录相关链接:

 UVM中使用put_response的一个注意点-CSDN博客

 https://www.cnblogs.com/Alfred-HOO/articles/16519230.html

https://blog.csdn.net/Kizuna_AI/article/details/133684332 


https://blog.csdn.net/tingtang13/article/details/46563031

https://www.cnblogs.com/csjt/p/15416039.html

https://blog.csdn.net/W1Z1Q/article/details/129966781

https://blog.csdn.net/W1Z1Q/article/details/129965689?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22129965689%22%2C%22source%22%3A%22W1Z1Q%22%7D

https://blog.csdn.net/gsjthxy/article/details/105276065

https://blog.csdn.net/gsjthxy/article/details/105276065

https://www.cnblogs.com/Alfred-HOO/articles/16519230.html

https://blog.csdn.net/lbt_dvshare/article/details/80633839

https://zhuanlan.zhihu.com/p/436911218
 

你可能感兴趣的:(杂谈,fpga开发)