1、在搭建UVM环境的时候出现这个错误,发现seq0里面 调用了`uvm_declare_p_sequencer(my_vsqr) 和seq0.start(p_sequencer.p_sqr0);不一致导致的,应该传入的sequencer是env.vsqr(其中vsqr是my_vsqr使用factor机制注册的新句柄)
例如sequence里面用的是
`uvm_do_on_with(trans, p_sequencer.sqr, {xxx});
也就是说用了p_sequencer中的sqr来发sequence,所以在外面使用sequencer来发包的时候,需要指定env中的v_sqr(v_sqr在env中声明例化),这个时候,sequence就能自动找到v_sqr中对应的sequencer了
在搭建UVM验证环境时遇到错误,原因是sequence中的`uvm_do_on_with`调用了p_sequencer.sqr,但在外部启动sequence时应指定env中的v_sqr。修正方法是确保seq0使用env.vsqr中的sequencer,这样sequence才能正确找到对应的sequencer进行操作。问题解决关键在于理解并正确使用UVM中的sequencer实例和句柄。

3287

被折叠的 条评论
为什么被折叠?



