driver的seq_item_port是uvm_seq_item_pull_port#(REQ,RSP)类型,是一种双向端口。 sequencer的seq_item_export是uvm_seq_item_pull_imp #(REQ, RSP, this_type)类型。 seq_item_port其包含了以下的内建方法 task get_next_item(output REQ) task try_next_item(output REQ) function void item_done(inpu...
uvm_seq_item_pull_imp #(REQ,RSP,this_type) seq_item_export 其中接口的类型是uvm_sqr_if_base #(REQ,RSP)。它实现的方法有:get_next_item/try_next_item,先在该sequencer中选择优先级最高的sequence,然后该sequence wait_for_grant,然后uvm_sequence_base::pre_do,randomized,post_do。i...
原因很简单,就拿最简单的outstanding(DEPTH>1)功能来说,有可能DUT端在收到若干个driver发过来的req之后才会返回一个response,那么为了仿真真实的总线行为,driver在收到response前不能block住,需要通过fork...join_none基础通过get_next_item获取新的req,那么对于sequence而言就不能无法获取的req对应的返回信息在发了多...