5.2vseq&vsqr-vseq&vsqr的作用
注:api_seq,work seq的详细解释可以查看uvm cookbook;
1. 什么情况下使用virtual sequencer?

(1) 只有一个驱动agent,不存在激励协调的需求,不需要virtual sequencer;
(2) 存在多个驱动agent,但多个激励之间没有协调关系, 不需要virtual sequencer;
(3) 存在多个驱动agent,而且多个激励之间存在协调关系,需要virtual sequencer.


2. virtual sequencer与virtual sequence的作用
2.1 virtual sequencer的三个属性:
(1) virtual sequencer包含指向其他真实sequencer的指针;
(2) virtual sequencer不与任何driver相连,和driver相连的是virtual sequencer的成员变量-真实的sequencer;
(3) virtual sequencer本身不处理item,在定义时无需指明要发送的transaction数据类型.
2.2 virtual sequence的作用
(1) 协调subsequence的执行.它本身不发送transaction,只是控制其他sequence,起统一调度的作用(所以 virtual sequence在定义时也不需要指明要发送的数据类型).
(2) 为了使用virtual sequence,一般需要一个virtual sequencer; virtual sequencer里面包含指向其它真实sequencer的指针;
注:sequence之间的简单同步可以通过全局事件实现(不推荐);实现sequence之间同步的最好的方式是virtual sequence.



浙公网安备 33010602011771号