关于virtual seuqence的一些问题
时间:10-02
整理:3721RD
点击:
在virtual sequence里用`uvm_do_on();启动了3个sequence a, b ,c。 假设每个seuqence 都有与之配套的driver,sequencer,agent。那么我是不是还需要写一个virtual driver,把这个三个driver都包进来,new,build? 还是只需要新建一个virtual agent,将agent a,agent b, agent c 都包进来就行?
或者说, virtual sequence是在virtual seuqencer里启动? 如果是传输transaction的sequencer,会有对应的driver通过seq_item_port()来触发, 那不传输transaction的sequencer怎么启动呢?手动启动?
不需要virtual driver 和agent ,只要一个virtual sequencer 就行了
你有abc三个agent 那你就要三个squencer 你把这三个sqr放在virtual sqr里面
需要分别发abc包就分别用virtaul sqr下的abc sqr
是的,昨天我试了下,只需要写virtual sequencer和virtual seuqence就行了,然后virtual seuqence里用p_sequencer这个宏把virtual_sequencer包进来,用uvm_do_on启动。 然后在顶层的test,给virtual seuqencer里的seuqencer句柄赋值,用defualt_sequence启动virutal seuqence就行。