在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4475|回复: 7

[求助] uvm验证开始后一直运行在0时刻,没有继续run下去,sequence传不进去?

[复制链接]
发表于 2020-5-13 21:46:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
现写了一个spi模块的uvm验证环境,主要包含3个sequence,先发送寄存器配置数据(通过apb接口),然后同时发送apb接口的写数据,和spi_master_agent的传入数据,以此来验证spi_slavemode,但是在仿真开始后,注册和创建都正常完成,run_phase就一直卡在driver的get_next_item(req),好像一直没有get到sequence_item,求助大家是什么原因呢?没有get到sequence item,仿真就一直被block在0时刻,一直没有运行下去

截屏2020-05-13 下午9.40.43.png

截屏2020-05-13 下午9.41.07.png

第二张图中的打印信息,objection是我在spi_master_test的run_phase中phase.raise_objection(this)之后添加的displayspi_ctrl_driver是我在spi_ctrl_driver的get_next_item(req)之前添加的display
在get_next_item(req)之后也添加了display,没有打印,因此判断没有get到sequence item

求助各位!!谢谢

发表于 2020-5-14 07:47:41 来自手机 | 显示全部楼层
对于卡在0ns的情形,可以考虑一下几个步骤排查: 1,使用uvm phase调试功能,看卡在哪个phase的哪个组件; 2,查看各个组件中是否有零延时的无限循环,一般在driver或者monitor的无限循环体中。
发表于 2020-5-14 13:52:57 | 显示全部楼层
查查 task 里面有没有零延迟循环
 楼主| 发表于 2020-5-14 16:25:24 | 显示全部楼层
谢谢楼上两位!确实是卡在了monitor的0延时task中!
发表于 2020-11-19 18:27:17 | 显示全部楼层
请问是如何解决的呢
发表于 2021-3-18 17:31:52 | 显示全部楼层
醍醐灌顶   
发表于 2021-3-22 18:37:38 | 显示全部楼层
一般都是出现了死循环
发表于 2021-6-7 17:02:42 | 显示全部楼层
万分感谢楼主的提问和几位前辈的回答,今天刚好遇到这个问题,困扰了半天,最后搜了一下论坛看到此贴,果然在monitor里面有死循环的缘故!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-14 19:36 , Processed in 0.021468 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表